@import url("https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@600;700;800&family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap");:root{--bg:#fff;--surface:#fff;--surface-soft:#f6f8fc;--surface-card:#f2f5fb;--border:#e6eaf2;--border-strong:#d5dbe8;--ink:#222;--ink-dim:#5b5f6b;--ink-faint:#71757f;--brand:#386fe5;--brand-strong:#2a53ac;--brand-soft:#eff3fd;--brand-on:#fff;--teal:#1ea495;--teal-strong:#157567;--teal-soft:#e1f7f3;--teal-on:#fff;--rose:#c43d74;--rose-strong:#a13463;--rose-soft:#fbeaf1;--rose-on:#fff;--chrome-bg:#1c2236;--chrome-bg-hover:#262d47;--chrome-border:#2a3150;--chrome-text:#eef0fa;--chrome-text-dim:#97a0c4;--chrome-active-bg:var(--brand);--chrome-active-text:#fff;--fs-2xs:11px;--fs-xs:12.5px;--fs-sm:14px;--fs-md:16px;--fs-lg:19px;--fs-xl:26px}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Source Sans\ 3,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Big Shoulders Display,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.025em;margin:0}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button,input{font-family:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}a{color:var(--brand-strong)}.shell{max-width:780px;margin:0 auto;padding:22px 20px 72px;display:flex;flex-direction:column;gap:20px}.pv-lockup{display:flex;align-items:center;gap:9px}.pv-mark{height:21px;width:auto;flex:none;display:block}.card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:26px 24px;gap:16px}.card,.field{display:flex;flex-direction:column}.field{gap:6px}.field label{font-size:var(--fs-2xs);color:var(--ink-dim);letter-spacing:.07em}.code-input,.field label{font-family:IBM Plex Mono,monospace;text-transform:uppercase}.code-input{width:100%;font-size:20px;letter-spacing:.14em;text-align:center;padding:13px 10px;border:1.5px solid var(--border-strong);border-radius:12px;background:var(--surface-soft);color:var(--ink)}.code-input:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.code-input.err{border-color:var(--rose-strong)}.field-error{font-size:var(--fs-xs);color:var(--rose-strong)}.btn{font-size:var(--fs-sm);font-weight:600;border-radius:11px;padding:12px 16px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--ink);width:100%;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-on)}.btn.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.btn.primary:disabled{background:var(--border-strong);border-color:var(--border-strong);color:var(--ink-faint);cursor:not-allowed}.callout{border:1px solid var(--border);border-radius:12px;padding:13px 14px;font-size:var(--fs-xs);color:var(--ink-dim);line-height:1.55;background:var(--surface-soft)}.callout.warn{background:var(--rose-soft);border-color:transparent;color:var(--rose-strong)}.crumb-row{display:flex;align-items:center;justify-content:space-between;margin:-22px -20px 0;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.crumb-btn{font-size:var(--fs-xs);font-weight:600;color:var(--ink-dim);background:none;border:none;cursor:pointer;padding:5px 6px;border-radius:7px;text-decoration:none;display:inline-block}.crumb-btn:hover{color:var(--ink);background:var(--surface-card)}.roster-list{display:flex;flex-direction:column;gap:8px}.roster-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:13px;background:var(--surface);transition:border-color .15s,background .15s}.roster-row:hover{border-color:var(--border-strong);background:var(--surface-soft)}.roster-row-link{display:flex;align-items:center;gap:12px;flex:1 1;min-width:0;text-decoration:none;color:inherit}.roster-row .rank{font-size:11px;color:var(--ink-faint);width:16px;flex:none;text-align:center}.avatar-tile{width:40px;height:40px;border-radius:12px;flex:none;background:var(--brand-soft);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:15px;color:var(--brand-strong)}.roster-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.roster-info .rname{font-size:14.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rmeta{display:flex;gap:6px;flex-wrap:wrap}.chip-sm{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-dim);border:1px solid var(--border);border-radius:6px;padding:2px 7px;background:var(--surface-card)}.chip-sm.jersey{color:var(--rose-strong);background:var(--rose-soft);border-color:transparent;font-weight:600}.roster-score{display:flex;flex-direction:column;align-items:flex-end;flex:none}.roster-score .rval{font-family:Big Shoulders Display,sans-serif;font-weight:800;font-size:18px;color:var(--brand-strong);line-height:1}.roster-score .rlbl,.roster-score.unrated .rval{color:var(--ink-faint)}.roster-score .rlbl{font-family:IBM Plex Mono,monospace;font-size:8.5px;text-transform:uppercase;letter-spacing:.06em}.roster-chev{color:var(--ink-faint);font-size:15px;flex:none}.player-head{padding:4px 0 16px;gap:14px}.avatar-lg,.player-head{display:flex;align-items:center}.avatar-lg{width:58px;height:58px;border-radius:16px;flex:none;background:var(--brand-soft);border:1px solid var(--border);justify-content:center;font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:22px;color:var(--brand-strong)}.player-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.player-info .pname{font-size:21px;line-height:1;color:var(--ink)}.player-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.overall{display:flex;flex-direction:column;align-items:flex-end;flex:none}.overall .val{font-family:Big Shoulders Display,sans-serif;font-weight:800;font-size:30px;color:var(--brand-strong);line-height:1}.overall .lbl{font-family:IBM Plex Mono,monospace;font-size:9.5px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em}.pillars{display:flex;gap:6px;padding-bottom:4px}.pillar-btn{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--surface-card);border:1px solid var(--border);border-radius:11px;padding:8px 4px 7px;cursor:pointer;color:var(--ink-dim);font-size:10.5px;letter-spacing:.03em;text-transform:uppercase;font-weight:600;transition:background .15s,border-color .15s,color .15s}.pillar-btn .pv{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--ink)}.pillar-btn.active{background:var(--brand-soft);border-color:var(--brand)}.pillar-btn.active,.pillar-btn.active .pv{color:var(--brand-strong)}.skills{display:flex;flex-direction:column}.skill-row{padding:12px 0;border-top:1px solid var(--border)}.skill-row:first-child{border-top:none}.skill-row .sk-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px}.skill-row .sk-name{font-size:14.5px;font-weight:600;color:var(--ink)}.skill-row .sk-desc{font-size:12px;color:var(--ink-dim);display:block;margin-top:1px;font-weight:400}.sk-label{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-faint);flex:none;min-width:62px;text-align:right}.sk-label.set{color:var(--brand-strong)}.segmented{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:5px;gap:5px}.seg{height:34px;border-radius:9px;border:1px solid var(--border);background:var(--surface-soft);display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--ink-faint);cursor:pointer;transition:background .1s,border-color .1s,color .1s}.seg:hover{border-color:var(--border-strong)}.seg.on{background:var(--brand);border-color:var(--brand);color:var(--brand-on);font-weight:600}.seg.on.adv{background:var(--teal);border-color:var(--teal);color:var(--teal-on)}.seg.readonly,.seg:disabled{cursor:default}.notes-wrap{display:flex;flex-direction:column;gap:8px;padding-top:6px}.notes-wrap .lbl-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.notes-wrap .lbl{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-dim);text-transform:uppercase;letter-spacing:.08em}.notes-wrap .lbl-hint{font-size:11px;color:var(--ink-faint)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip-tog{font-size:12px;padding:6px 11px;border-radius:999px;border:1px solid var(--border);background:var(--surface-card);color:var(--ink-dim);cursor:pointer}.chip-tog.active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-strong)}.notes-wrap textarea{width:100%;min-height:84px;padding:10px 12px;border:1.5px solid var(--border-strong);border-radius:11px;background:var(--surface-soft);color:var(--ink);font-size:13.5px;font-family:inherit;resize:vertical}.save-status{font-size:11.5px;color:var(--ink-faint);min-height:14px}.save-status.ok{color:var(--teal-strong)}.save-status.err{color:var(--rose-strong)}.eval-actions{display:flex;gap:10px;padding-top:4px}.eval-actions .btn{width:auto;flex:1 1}.shell.wide{max-width:960px}.shell.report-wide{max-width:1040px}.eyebrow{font-family:IBM Plex Mono,monospace;font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-title{font-size:var(--fs-xl);line-height:1.05}.page-subtitle{font-size:var(--fs-xs);color:var(--ink-faint);margin-top:4px}.page-subtitle,.section-title{font-family:Source Sans\ 3,ui-sans-serif,system-ui,sans-serif}.section-title{font-weight:600;text-transform:none;letter-spacing:normal;font-size:var(--fs-md);color:var(--ink)}.btn.secondary{background:var(--surface);border-color:var(--border-strong);color:var(--ink)}.btn.secondary:hover{background:var(--surface-soft);border-color:var(--ink-faint)}.btn.secondary:disabled{color:var(--ink-faint);border-color:var(--border);cursor:not-allowed}.btn.danger{background:var(--surface);border-color:var(--rose-strong);color:var(--rose-strong)}.btn.danger:hover{background:var(--rose-soft)}.btn.sm{width:auto;padding:7px 12px;border-radius:9px}.btn.sm,.link-btn{font-size:var(--fs-xs)}.link-btn{border:none;background:none;cursor:pointer;padding:0;font-weight:600;color:var(--ink-dim)}.link-btn:hover{color:var(--ink)}.link-btn.danger{color:var(--rose-strong)}.link-btn.danger:hover{color:var(--rose)}.link-btn:disabled{color:var(--ink-faint);cursor:not-allowed}.icon-btn{border:none;background:none;cursor:pointer;padding:0;width:16px;height:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-faint);border-radius:50%}.icon-btn:hover{color:var(--ink);background:var(--surface-card)}.icon-btn:disabled{color:var(--border-strong);cursor:not-allowed}.icon-btn.danger{color:var(--rose-strong)}.icon-btn.danger:hover{color:var(--rose);background:var(--rose-soft)}.icon-btn.danger:disabled{color:var(--ink-faint);background:none}.input,.select{font-size:var(--fs-sm);font-family:inherit}.input,.select,.textarea{width:100%;padding:10px 12px;border:1.5px solid var(--border-strong);border-radius:10px;background:var(--surface-soft);color:var(--ink)}.textarea{font-size:var(--fs-xs);font-family:IBM Plex Mono,monospace;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--ink-faint)}.form-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.form-row .field{flex:1 1;min-width:160px}.panel{border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface);gap:12px}.panel,.panel-list{display:flex;flex-direction:column}.panel-list{gap:10px}.panel-row{border:1px solid var(--border);border-radius:13px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.panel-row-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.badge{display:inline-flex;align-items:center;font-family:IBM Plex Mono,monospace;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand-strong)}.loading-state{padding:22px 4px;text-align:center;color:var(--ink-faint);font-size:var(--fs-xs)}.skeleton{background:linear-gradient(90deg,var(--surface-card) 25%,var(--border) 37%,var(--surface-card) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none;background:var(--surface-card)}}.app-header{border-bottom:1px solid var(--border);background:var(--surface)}.app-header-inner{max-width:1040px;margin:0 auto;padding:12px 20px;gap:18px}.app-header-inner,.app-nav{display:flex;align-items:center}.app-nav{gap:4px}.app-nav a{font-size:var(--fs-xs);font-weight:600;color:var(--ink-dim);text-decoration:none;padding:7px 10px;border-radius:8px}.app-nav a:hover{color:var(--ink);background:var(--surface-card)}.app-nav a.active{color:var(--brand-strong);background:var(--brand-soft)}.app-topbar{background:var(--surface-card);border-bottom:1px solid var(--border)}.app-topbar-inner{max-width:960px;margin:0 auto;padding:7px 20px;display:flex;align-items:center;gap:12px}.app-topbar-inner .pv-mark-wrap{display:flex;opacity:.82}.app-clubbar{background:var(--chrome-bg);border-bottom:1px solid var(--chrome-border)}.app-clubbar-inner{max-width:960px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px}.app-club-identity{display:flex;align-items:center;gap:11px;margin-right:auto;text-decoration:none}.app-club-identity .club-name{font-size:var(--fs-md);font-weight:700;color:var(--chrome-text);line-height:1.2}.app-clubbar .app-nav a{color:var(--chrome-text-dim)}.app-clubbar .app-nav a:hover{color:var(--chrome-text);background:var(--chrome-bg-hover)}.app-clubbar .app-nav a.active{color:var(--chrome-active-text);background:var(--chrome-active-bg)}@media (max-width:640px){.app-clubbar-inner,.app-nav{flex-wrap:wrap}.app-nav{width:100%;justify-content:flex-start}}.confirm-dialog{border:none;border-radius:16px;padding:0;max-width:420px;width:calc(100% - 40px);box-shadow:0 20px 50px rgba(20,24,40,.28)}.confirm-dialog::-webkit-backdrop{background:rgba(15,18,30,.5)}.confirm-dialog::backdrop{background:rgba(15,18,30,.5)}.confirm-dialog-body{padding:22px 22px 18px;display:flex;flex-direction:column;gap:10px}.confirm-dialog-title{font-size:var(--fs-lg)}.confirm-dialog-message{font-size:var(--fs-sm);line-height:1.55;color:var(--ink-dim);margin:0}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.toast-stack{position:fixed;bottom:20px;right:20px;z-index:1000;flex-direction:column;max-width:min(380px,calc(100vw - 32px));pointer-events:none}.toast,.toast-stack{display:flex;gap:10px}.toast{align-items:flex-start;padding:13px 14px;border-radius:12px;font-size:var(--fs-xs);line-height:1.5;box-shadow:0 12px 28px rgba(20,24,40,.18);border:1px solid transparent;border-left-width:4px;animation:toast-in .18s ease-out;pointer-events:auto}.toast-success{background:var(--teal-soft);border-left-color:var(--teal-strong);color:var(--teal-strong)}.toast-error{background:var(--rose-soft);border-left-color:var(--rose-strong);color:var(--rose-strong)}.toast-info{background:var(--brand-soft);border-left-color:var(--brand-strong);color:var(--brand-strong)}.toast-message{flex:1 1}.toast-close{border:none;background:none;cursor:pointer;font-size:var(--fs-md);line-height:1;color:inherit;opacity:.6;padding:0}.toast-close:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.account-menu{position:relative}.account-menu-trigger{display:flex;align-items:center;gap:6px;border:none;background:none;cursor:pointer;font-size:var(--fs-xs);font-weight:600;color:var(--ink-faint);padding:7px 8px;border-radius:8px}.account-menu-trigger:hover,.account-menu-trigger[aria-expanded=true]{color:var(--ink);background:var(--surface-soft)}.account-menu-caret{font-size:9px}.account-menu-panel{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 28px rgba(20,24,40,.18);padding:6px;z-index:100}.account-menu-panel-header{padding:8px 10px 10px;border-bottom:1px solid var(--border);margin-bottom:6px}.account-menu-panel-name{font-size:var(--fs-sm);font-weight:600;color:var(--ink)}.account-menu-panel-role{font-size:var(--fs-2xs);color:var(--ink-dim);margin-top:2px}.account-menu-item{display:block;width:100%;text-align:left;border:none;background:none;cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--ink);padding:8px 10px;border-radius:8px}.account-menu-item:hover{background:var(--rose-soft);color:var(--rose-strong)}.skip-link{position:absolute;top:-48px;left:12px;z-index:2000;background:var(--ink);color:#fff;padding:10px 16px;border-radius:0 0 10px 10px;font-size:var(--fs-xs);font-weight:600;text-decoration:none;transition:top .15s ease-out}.skip-link:focus-visible{top:0;outline:2px solid var(--brand);outline-offset:2px}main:focus-visible{outline:none}@media (max-width:480px){.shell{padding:18px 14px 56px}.toast-stack{right:12px;bottom:12px;left:12px;max-width:none}}