@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#08151f;--sidebar:#0b1c28;--card:#102631;--elevated:#173440;--teal:#14b8a6;--bright:#2dd4bf;--text:#f8fafc;--muted:#94a3b8;--line:#25414b;--green:#35d49c;--red:#f17078;--amber:#f7bf61;--ink:var(--text);--paper:var(--bg);--white:var(--card);--dark:var(--sidebar)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;font-size:13px}button,select,input{font-family:inherit}button{transition:background .15s,border-color .15s,transform .15s}button:hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.45;transform:none}h1,h2,h3,h4{color:var(--text)}.app-shell{background:var(--bg)}.rail{width:210px;background:linear-gradient(180deg,#0b1c28,#0a1822);border-right:1px solid var(--line);padding:25px 13px;z-index:20}.brand{padding:3px 7px 32px;gap:9px}.brand-mark{width:43px;height:43px;color:var(--bright);border:2px solid var(--bright);font-size:25px;background:#10323b;box-shadow:0 0 25px #14b8a626}.brand strong{font:800 18px/1 'Barlow Condensed',sans-serif;letter-spacing:.04em;font-style:italic}.brand small{color:var(--bright);font-size:9px;letter-spacing:.27em}.rail-label{font-size:9px;color:#62818b;margin:0 12px 13px}.rail nav{display:grid;gap:4px}.rail-link{color:#9db2be;font-size:12px;font-weight:600;border-radius:8px;padding:12px 12px;margin:0}.rail-link span{font-size:20px;color:#8ca4af}.rail-link:hover,.rail-link.active{background:#0e3a43;color:#fff}.rail-link.active{box-shadow:inset 3px 0 var(--bright),0 0 20px #14b8a611}.rail-link.active span{color:var(--bright)}.rail-bottom{display:block;border-color:var(--line);padding:18px 7px 0}.rail-bottom label{display:grid;gap:9px;color:#8aa8b2;font-size:9px;letter-spacing:.14em;font-weight:800}.rail-bottom select,.rail-bottom small{display:block;width:100%;margin-top:8px}.rail-bottom small{font-size:10px;color:#69838e}.main{min-height:100vh;background:radial-gradient(circle at 72% 0%,#0e2935 0,transparent 32%),var(--bg)}.topbar{height:70px;background:#0a1a25e8;color:var(--text);border-color:var(--line);padding:0 30px;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.topbar-title{display:flex;align-items:center;gap:14px}.topbar-title strong{font:700 20px 'Barlow Condensed',sans-serif;letter-spacing:.04em;text-transform:uppercase}.eyebrow{color:#7696a0;font-size:10px;letter-spacing:.16em}.eyebrow.mint{color:var(--bright)}.season-pill{border-color:var(--line);border-radius:6px;color:#d7e7e9;background:#112834;font-size:10px}.avatar{background:#103940;color:var(--bright);border:1px solid var(--teal);width:34px;height:34px}.theme-toggle{height:34px;width:34px;border:1px solid var(--line);border-radius:8px;color:var(--bright);background:#102b35;font-size:19px}.view{max-width:1660px;padding:26px 28px 38px}.section-heading h2{font:800 32px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em}.section-note{color:#8299a7}.primary-button,.hero-action{background:linear-gradient(135deg,var(--bright),#0aa897);color:#06252b;border:1px solid #42e8d2;border-radius:8px;font-size:12px;font-weight:800;box-shadow:0 6px 20px #10b8a622}.primary-button:hover,.hero-action:hover{background:#53e7d7;color:#06252b}.outline-button{background:#122b38;border:1px solid #37606d;color:#e7f4f3;border-radius:7px;font-size:11px}.outline-button:hover{background:#1b4250}.text-button,.text-button.light{color:var(--bright)}.text-button:hover{text-decoration:none;color:#98fff0}.view .notice{background:#342c1f;color:#e7c994;border-color:#69512d}.view .notice:empty{display:none}.panel,.side-card,.detail-panel,.filter-panel,.event-group,.stat-group,.definition-card,.goals-table-wrap,.goals-intro,.summary-card,.metric-card,.profile-head,.team-head,.scorer-entry,.live-summary-panel,.scorer-start,.scorer-top,.scorer-done{background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:12px;box-shadow:0 8px 24px #00000012}.panel{padding:18px}.panel-heading,.panel-heading>div{display:flex;align-items:center;gap:9px}.panel-heading{justify-content:space-between;margin-bottom:17px}.panel-heading h3{font:700 19px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0;letter-spacing:.03em}.panel-icon{color:var(--bright);font-size:21px}.panel p{color:var(--muted);line-height:1.6}.home-hero{min-height:270px;padding:32px 36px;border:1px solid #1e5360;border-radius:14px;background:linear-gradient(90deg,#071720 0%,#0b202bdd 44%,#0b1e2a22 100%),radial-gradient(circle at 70% 30%,#1c555d,#0a1925 62%);background-size:cover;background-position:center;display:flex;align-items:end;justify-content:space-between;position:relative;overflow:hidden}.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#06131a88,transparent 70%);pointer-events:none}.hero-copy,.hero-record{position:relative;z-index:1}.home-hero h1,.player-banner h1{font:900 clamp(48px,5.5vw,82px)/.83 'Barlow Condensed',sans-serif;font-style:italic;letter-spacing:.02em;margin:11px 0 17px;text-shadow:0 4px 12px #0006}.home-hero h1 em{color:var(--bright);font-style:inherit}.home-hero p{color:#d2e4e6;font-size:13px;margin:0 0 16px}.hero-cta{min-width:188px;display:flex;justify-content:space-between;align-items:center}.hero-record{text-align:right;display:grid;gap:3px;max-width:230px}.hero-record span{font-size:10px;letter-spacing:.16em;color:#c7e4e2;font-weight:800}.hero-record strong{font:800 53px 'Barlow Condensed',sans-serif}.hero-record small{color:#b8ccd0;font-size:9px}.home-content{padding-top:22px}.home-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:15px}.home-kpis .kpi-card,.player-highlight-grid .kpi-card{background:linear-gradient(150deg,#142e3a,#0d222e);border:1px solid var(--line);border-radius:10px;padding:15px;min-height:116px;overflow:hidden;position:relative}.kpi-card:after{content:'⌁';color:#14b8a622;position:absolute;right:-2px;bottom:-27px;font-size:100px}.kpi-card span{font-size:10px;color:#a9b9c5;display:block}.kpi-card strong{font:800 31px 'Barlow Condensed',sans-serif;display:block;margin:6px 0 4px;line-height:1}.kpi-card small{color:var(--green);font-size:10px;font-weight:700}.home-main-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:14px}.home-main-grid .panel{min-height:264px}.match-row,.improvement-row,.goal-row{display:flex;align-items:center;gap:10px;padding:11px 3px;border-top:1px solid var(--line);font-size:11px}.match-row>span:first-child{color:#8ca4ae;width:52px;flex:none}.match-row strong,.improvement-row strong,.goal-row strong{color:var(--text);font-weight:700}.match-row .match-opponent{flex:1}.match-row .score{color:#c8dbdf}.result-pill{font-size:10px;border-radius:5px;padding:3px 7px;font-weight:800;background:#0e5a4e;color:#6ee7bf}.result-pill.loss{background:#643038;color:#ffc4c7}.improvement-row .num,.goal-row .num{border:1px solid #365663;border-radius:6px;padding:6px;min-width:38px;text-align:center;color:var(--bright);font-weight:800}.improvement-row .label,.goal-row .label{flex:1}.improvement-row .gain{color:var(--green);font-weight:800}.mini-track{height:7px;border-radius:10px;background:#29424e;overflow:hidden;width:27%;min-width:60px}.mini-track i{display:block;height:100%;background:var(--bright);border-radius:10px}.goal-row .mini-track{width:35%}.chart-tabs{display:flex;gap:7px;flex-wrap:wrap}.chart-tabs button{background:#112936;border:1px solid var(--line);color:#acbdc6;border-radius:7px;padding:8px 12px;font-size:10px;font-weight:700}.chart-tabs button.active{background:var(--bright);border-color:var(--bright);color:#05272d}.trend-chart{height:195px;margin-top:12px;overflow:hidden}.trend-chart svg{display:block;width:100%;height:100%}.player-banner{min-height:182px;padding:26px 30px;border:1px solid #265665;border-radius:13px;margin-bottom:20px;background:linear-gradient(90deg,#091924 0%,#0a2331dd 60%,#102d3977),radial-gradient(circle at 80% 30%,#285e68,#0b1f2b 65%);background-size:cover;background-position:center;position:relative;overflow:hidden}.player-banner:after{content:'✦';position:absolute;right:9%;top:-54px;color:#2dd4bf18;font-size:260px;pointer-events:none}.player-banner-main{display:flex;align-items:center;gap:18px;position:relative;z-index:1}.player-banner-main>strong{font:900 80px 'Barlow Condensed',sans-serif;font-style:italic;color:var(--bright);line-height:1}.player-banner h1{font-size:46px;margin:0 0 7px}.player-banner-main span,.player-banner p{color:#b4cad1}.player-banner p{margin:12px 0 0;position:relative;z-index:1}.player-highlight-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:15px 0}.insights-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:12px;margin:16px 0}.insights-grid .panel{min-height:260px}.attack-donut{height:146px;width:146px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:conic-gradient(var(--bright) 0 var(--spike),#31a7d2 var(--spike) var(--push),#8a74e6 var(--push) 100%)}.attack-donut>div{width:104px;height:104px;border-radius:50%;background:var(--card);display:grid;place-items:center;font:800 25px 'Barlow Condensed',sans-serif}.attack-legend{display:grid;gap:8px}.attack-legend div{display:flex;justify-content:space-between;color:#acbfc6;font-size:11px}.attack-legend b{color:var(--text)}.goal-preview{display:grid;gap:13px}.goal-preview-row{display:grid;gap:5px}.goal-preview-row>div:first-child{display:flex;justify-content:space-between;font-size:11px}.goal-preview-row b{color:var(--bright)}.goal-preview-row .mini-track{width:100%}.filter-panel{box-shadow:none}.filter-panel label,.goal-player label{color:#9bb2bd}.filter-panel select,.goal-player select,.rail-bottom select,#settingsSeason,.setup-form input{background:#0a1d28;color:var(--text);border:1px solid #355260;border-radius:7px;height:38px}.filter-panel select option,.goal-player select option{background:#0b1e29;color:var(--text)}.summary-card{background:linear-gradient(120deg,#0f313c,#123e47);min-height:138px}.summary-card:after{border-color:#25626a;box-shadow:0 0 0 35px #1b4f5644,0 0 0 70px #1b4f5622}.summary-card p,.summary-stamp{color:#b7d2d4}.metric-grid{gap:11px}.metric-card{box-shadow:none}.metric-card.personal{border-color:#21b8ab;background:linear-gradient(160deg,#123a41,#0e2834)}.metric-label,.metric-detail,.target-caption,.detail-item,.side-card p,.legend-row,.stat-group>div,.definition-card p{color:#a2b7c0}.metric-value,.target-caption b,.detail-item b,.stat-group b{color:var(--text)}.metric-card .fill,.swatch.standard{background:var(--bright)}.metric-card.personal .fill,.swatch.personal{background:#35d5c4}.goal-badge{background:#0d514c;color:#82f7e3}.target-caption .gold,.profile-goals,.profile-kpis .goal-tile strong{color:var(--bright)}.marker{background:#ecf7f4}.personal-marker{background:var(--bright)}.track{background:#25424a}.side-card.dark{background:#132f3b;border-color:var(--line)}.side-card.dark p{color:#a2b7c0}.detail-head,.detail-item,.stat-group>div{border-color:var(--line)}.detail-group h4,.stat-group h4{color:var(--bright)}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-item{font-size:10px}.scorer-start{background:linear-gradient(120deg,#103640,#0c222e);padding:28px}.scorer-intro h3{font:800 32px 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.02em}.scorer-intro p,.scorer-done p{color:#b5cad0}.setup-form{background:#0b222d;color:var(--text);border:1px solid var(--line)}.setup-form label{color:#a9c3c9}.scorer-top{background:linear-gradient(120deg,#102c39,#0d2631)}.scorer-top h3{font:800 31px 'Barlow Condensed',sans-serif;text-transform:uppercase}.scorer-top p{color:#a5bfc8}.scorer-actions .outline-button{margin:0}.scorer-feedback{background:#483724;border-color:#8f6c34;color:#f7dba0}.scoreboard{background:#0b1d29;border:1px solid #267477;border-radius:11px;padding:18px 20px;gap:35px;margin-top:11px;box-shadow:inset 0 0 32px #0cb4a611}.score-side small{color:#bed1d6}.score-side strong{font:800 68px 'Barlow Condensed',sans-serif;color:var(--text)}.score-middle span{background:#173e46;color:var(--bright);font-size:12px}.score-middle small{color:var(--bright)}.score-buttons button{background:#193542;color:var(--bright);border-color:#3c6b70}.score-buttons button:hover{background:#215f5c}.set-history span,.finished-scores span{background:#163741;color:#c9e8e6}.scorer-body{grid-template-columns:minmax(0,1fr) 270px;gap:12px}.scorer-entry{padding:17px}.scorer-block-head h3{font:800 22px 'Barlow Condensed',sans-serif;text-transform:uppercase}.player-chip{background:#0a4a47;color:var(--bright)}.roster-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:6px}.roster-grid button{min-height:64px;border:1px solid #31505e;background:#0c202c;color:#d9e7eb;border-radius:8px;font:800 23px 'Barlow Condensed',sans-serif}.roster-grid button.selected,.roster-grid button:hover{background:#0d5754;border-color:var(--bright);color:var(--text);box-shadow:0 0 0 1px var(--bright),0 0 15px #14b8a636}.participation-button{background:#112d36;border-color:#34545c;color:#8fd9cf;margin:9px 0 0}.event-groups{gap:10px;margin-top:15px}.event-group{padding:13px}.event-group h4{font:800 18px 'Barlow Condensed',sans-serif;color:var(--text);letter-spacing:.04em}.event-group p,.attack-explainer{color:#91aab4;line-height:1.4}.event-buttons button,.blocker-options button{min-height:42px;padding:8px 10px;background:#123946;color:#e8f7f5;border:1px solid #2d6470;font-size:11px;border-radius:7px;flex:1}.event-buttons button:hover,.blocker-options button:hover,.blocker-options button.selected{background:#0e7c72;border-color:var(--bright);color:#fff}.event-buttons button.negative{background:#43262f;color:#ffc9ce;border-color:#a34654}.event-buttons button.negative:hover{background:#973a47}.event-buttons button[data-event=serveAce],.event-buttons button[data-attack-result=kill],.event-buttons button[data-event=setPlayable],.event-buttons button[data-event=blockSolo]{background:#075e50;color:#b4ffeb;border-color:#18a992}.event-buttons button[data-event=serveAce]:hover,.event-buttons button[data-attack-result=kill]:hover{background:#0e997f}.attack-group{background:#112f3b;border-color:#2d676a}.attack-step>span{color:var(--bright)}.attack-step .event-buttons button{min-width:104px}.scorer-sidebar .side-card h3{color:var(--text)}.live-player-stats div,.event-log div{border-color:var(--line);color:#a8bec5}.live-player-stats b{color:#eff9f7}.event-log .empty{color:#78919b}.scorer-note{color:#7f99a3}.live-summary-panel{background:var(--card)}.kpi-strip>div,.profile-kpis>div,.stat-group{background:#0d212c;border-color:var(--line)}.kpi-strip span,.profile-kpis span{color:#9ab0bb}.kpi-strip strong,.profile-kpis strong{color:var(--text)}.profile-kpis .goal-tile{background:#0e3b40;border-color:var(--teal)}.all-stats summary{color:var(--bright)}.summary-table th,.summary-table td{border-color:var(--line);color:#cbdae0}.summary-table thead th{background:#0a202c;color:#87a2ae}.summary-table tbody th{color:var(--bright)}.profile-head,.team-head{background:linear-gradient(130deg,#123f49,#0d2a36)}.profile-head p,.team-head p{color:#b3c9d0}.goals-intro{background:linear-gradient(120deg,#113f46,#102630)}.goals-intro p{color:#b5cbd0}.goals-table-wrap{overflow:auto}.goals-table th{background:#0d2a35;color:#91adb6}.goals-table td{border-color:var(--line);color:#b5c7ce}.goals-table td:first-child{color:var(--text)}.goals-table input[type=number]{background:#0c1e29;color:var(--text);border-color:#365966}.goals-table input[type=checkbox]{accent-color:var(--bright)}.goals-foot,.definition-intro{color:#90a9b2}.definition-card code{background:#0a3840;color:var(--bright)}.audit-card{background:#332b20;border-color:#5f4f34}.audit-card ul{color:#d6c3a6}.audit-card a{color:#f5c574}.roster-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.roster-card{padding:17px;display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:11px}.roster-card>strong{font:900 40px 'Barlow Condensed',sans-serif;color:var(--bright);width:62px}.roster-card h3{margin:0 0 4px;font:700 19px 'Barlow Condensed',sans-serif}.roster-card p{color:var(--muted);font-size:11px;margin:0}.roster-card button{margin-left:auto;background:#123f46;border:1px solid #22666a;color:var(--bright);border-radius:7px;padding:8px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.settings-grid .panel{min-height:174px}.settings-grid h3{font:700 22px 'Barlow Condensed',sans-serif;margin:0}.settings-grid select{padding:8px 12px}.settings-grid .outline-button{margin:0}footer{color:#557785}footer span{color:#71909a}
body.light{--bg:#eef4f3;--sidebar:#dcebea;--card:#fff;--elevated:#e7f2f0;--text:#10313b;--muted:#5e7983;--line:#bfd3d4;color:var(--text)}body.light .rail{background:#e0eeee}body.light .brand strong,body.light .rail-link.active,body.light .topbar-title strong,body.light .section-heading h2{color:#10313b}body.light .rail-link{color:#355560}body.light .rail-link.active{background:#bce7df}body.light .topbar{background:#edf5f3e8}body.light .home-hero,body.light .player-banner{color:#fff}body.light .home-hero h1,body.light .player-banner h1{color:#fff}body.light .kpi-card,body.light .metric-card,body.light .stat-group,body.light .profile-kpis>div{background:#fff}body.light .kpi-card strong,body.light .metric-value,body.light .target-caption b,body.light .stat-group b,body.light .profile-kpis strong{color:#10313b}body.light .summary-table td{color:#2c4b55}body.light .event-buttons button{color:#e8f7f5}body.light .scorer-entry,body.light .scorer-sidebar .side-card{background:#fff}body.light .scorer-entry h3,body.light .scorer-sidebar h3,body.light .event-group h4{color:#10313b}body.light .event-group{background:#f6fbfa}body.light .detail-item b,body.light .detail-group h4{color:#164b51}body.light .filter-panel select,body.light .goal-player select,body.light #settingsSeason{background:#fff;color:#12343b}body.light .topbar .eyebrow{color:#147f77}
@media(max-width:1250px){.home-kpis,.player-highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.insights-grid{grid-template-columns:1fr 1fr}.insights-grid .panel:first-child{grid-column:span 2}.roster-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.rail{width:74px;padding:15px 8px}.brand{justify-content:center;padding:8px 0 26px}.brand div,.rail-label,.rail-link:not(.active){font-size:0}.rail nav{gap:7px}.rail-link{justify-content:center;font-size:0;padding:11px}.rail-link span{font-size:23px;width:auto}.rail-bottom{display:none}.topbar{padding:0 20px}.view{padding:20px}.home-main-grid{grid-template-columns:1fr}.roster-list{grid-template-columns:repeat(2,1fr)}.scorer-body{grid-template-columns:1fr}.scorer-sidebar{display:grid;grid-template-columns:1fr 1fr}.scoreboard{gap:12px}}
@media(max-width:700px){.app-shell{display:block}.rail{position:sticky;top:0;width:100%;height:auto;padding:7px 9px;display:flex;gap:9px;overflow:auto}.brand{padding:0;min-width:38px}.brand-mark{height:32px;width:32px;font-size:20px}.rail nav{display:flex;gap:3px}.rail-link,.rail-link:not(.active){font-size:0;min-width:42px;padding:8px}.rail-link span{font-size:19px}.topbar{height:54px;position:relative}.topbar-title .eyebrow{display:none}.season-pill{display:block;font-size:8px;padding:7px}.view{padding:15px 12px 28px}.home-hero{min-height:250px;padding:21px;background-position:center}.home-hero h1{font-size:54px}.hero-record{display:none}.home-kpis,.player-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-main-grid{grid-template-columns:1fr}.home-main-grid .panel{min-height:0}.insights-grid{grid-template-columns:1fr}.insights-grid .panel:first-child{grid-column:auto}.player-banner-main>strong{font-size:55px}.player-banner h1{font-size:35px}.report-layout{grid-template-columns:1fr}.filter-panel{grid-template-columns:1fr 1fr}.filter-panel .outline-button{grid-column:auto}.metric-grid{grid-template-columns:1fr 1fr}.metric-card.wide{grid-column:auto}.detail-grid{grid-template-columns:repeat(2,1fr)}.scorer-start{grid-template-columns:1fr}.scorer-top{display:block}.scorer-actions{display:flex}.scoreboard{gap:6px}.score-side{min-width:72px}.score-side strong{font-size:52px}.scorer-sidebar{grid-template-columns:1fr}.roster-grid{grid-template-columns:repeat(3,1fr)}.event-groups{grid-template-columns:1fr}.roster-list,.settings-grid{grid-template-columns:1fr}.panel-heading h3{font-size:18px}.topbar-right{gap:8px}}
@media print{body{background:#fff;color:#102b38}.rail,.topbar,#home,.home-content,.player-banner,.insights-grid,.player-highlight-grid,.filter-panel,.detail-panel,.view:not(#overview),footer{display:none!important}#overview{display:block!important}.metric-grid{grid-template-columns:1fr 1fr}}
.home-hero{background-image:linear-gradient(90deg,#071720 0%,#0b202bee 38%,#0b1e2a33 100%),url('flight-crew-hero.png')}.player-banner{background-image:linear-gradient(90deg,#091924 0%,#0a2331df 62%,#102d3944),url('flight-crew-hero.png')}
.roster-grid button strong,.roster-grid button small{display:block}.roster-grid button small{font:600 9px Inter,sans-serif;color:#9cb3be;margin-top:3px}.roster-grid button.selected small{color:#d2fffa}.sets-won{display:block;color:#83b7bc;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:700;margin-bottom:7px}.sets-won b{color:var(--bright);font-size:13px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--bright);box-shadow:0 0 10px var(--bright)}.event-log .event-entry{display:flex;align-items:center;justify-content:space-between;gap:8px}.event-entry span{flex:1}.event-entry button{border:1px solid #37616b;color:var(--bright);background:#123640;border-radius:5px;padding:3px 6px}.card-config{margin-top:14px}.card-config p{color:var(--muted);font-size:11px}.card-stat-options{display:flex;flex-wrap:wrap;gap:8px}.card-stat-options label{padding:6px 9px;border:1px solid var(--line);border-radius:6px;font-size:10px;color:#b8cad1}.card-stat-options input{accent-color:var(--bright)}.card-config textarea{width:100%;min-height:68px;margin-top:10px;background:#0a1e29;border:1px solid #365b63;border-radius:7px;color:var(--text);padding:9px;font:11px Inter,sans-serif}.inline-edit{display:flex;gap:8px;margin-top:10px}.inline-edit input{flex:1;min-width:0;background:#0b222d;border:1px solid #365a64;color:var(--text);padding:8px;border-radius:6px}
.roster-list{display:block}.roster-toolbar{display:flex;align-items:center;gap:15px;margin:0 0 15px}.roster-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.roster-card>strong{flex:none}.roster-card div{flex:1;min-width:0}.roster-card button{flex:none;margin-left:0}.archive-list{margin-top:15px;padding:16px;border:1px solid var(--line);border-radius:10px;color:#a9c1c9}.roster-edit{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:14px}.roster-edit label{display:grid;gap:6px;font-size:10px;color:#a9bdc5}.roster-edit input,.plan-fields input,.plan-fields select,.plan-fields textarea{background:#0b202b;border:1px solid #365a65;color:var(--text);border-radius:6px;padding:8px}.development-plans{margin:0 0 28px}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plan-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px}.plan-head{display:flex;justify-content:space-between;gap:10px}.plan-head strong{font:700 20px 'Barlow Condensed',sans-serif;text-transform:uppercase}.plan-head span{color:var(--amber);font-size:10px;font-weight:700}.plan-head span.achieved{color:var(--green)}.plan-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.plan-values small{display:block;color:#839da7;font-size:9px}.plan-values b{font:800 22px 'Barlow Condensed',sans-serif}.plan-card .mini-track{width:100%}.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.plan-fields label{display:grid;gap:5px;color:#a5bbc3;font-size:10px}.plan-fields .plan-action{grid-column:1/-1}.plan-fields textarea{min-height:55px;font:11px Inter,sans-serif}body.light .plan-card{background:#fff}body.light .plan-values b{color:#12333c}@media(max-width:1150px){.roster-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.roster-cards,.plan-grid{grid-template-columns:1fr}.inline-edit{flex-wrap:wrap}.inline-edit input{flex-basis:100%}}
body.light .main{background:#eef4f3}body.light .rail-bottom select,body.light .season-pill,body.light .theme-toggle{background:#fff;color:#153843;border-color:#b9d0d0}body.light .rail-bottom label{color:#4e737b}body.light .panel p{color:#607e85}body.light .notice{color:#654c21}.season-preview-note{margin:12px 0;padding:15px;border:1px solid #39626a;border-radius:9px;color:#d2e6e6;background:#102e38}body.light .season-preview-note{background:#fff;color:#2a5960}
@media(max-width:900px){.rail .brand div{display:none}.rail .brand-mark{flex:none}}@media(max-width:700px){.rail{scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.topbar-title strong{font-size:17px}.scorer-block-head{gap:8px}.player-chip{font-size:14px}.scoreboard{padding:13px 8px}}
.video-intro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;background:linear-gradient(120deg,#103b43,#102733)}.video-intro h3{font:800 28px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:5px 0}.video-intro p{font-size:11px;color:#aac5ca;max-width:680px;margin:0}.video-step{white-space:nowrap;color:var(--bright);font-weight:800;font-size:11px}.video-step span{color:#e4f3f0}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:13px}.review-main,.review-side{display:grid;align-content:start;gap:13px}.review-fields{display:grid;grid-template-columns:1fr 110px minmax(220px,2fr) auto 120px;gap:8px;align-items:end}.review-fields label,.film-filters label,.clip-fields label{display:grid;gap:6px;color:#9bb2bd;font-size:9px;font-weight:800;letter-spacing:.08em}.review-fields input,.review-fields select,.film-filters select,.video-controls select,.clip-fields input{height:39px;min-width:0;background:#0a1e29;border:1px solid #345763;color:var(--text);border-radius:7px;padding:6px 9px}.review-fields .outline-button{height:39px;margin:0}.source-status{margin-top:11px;color:#7f9ba4;font-size:11px}.source-status b{color:var(--amber)}.mock-video{padding:10px}.mock-video-screen{height:290px;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(90deg,#061820aa,#091f29cc),url('flight-crew-hero.png') center/cover;color:#fff;position:relative;gap:5px}.mock-play-icon{width:54px;height:54px;border-radius:50%;background:#12a796bb;display:grid;place-items:center;font-size:20px;padding-left:3px}.mock-video-screen span{font:800 23px 'Barlow Condensed',sans-serif;letter-spacing:.08em}.mock-video-screen strong{font:800 40px 'Barlow Condensed',sans-serif}.mock-video-screen small{color:#a4c0c5}.video-controls{display:flex;align-items:center;gap:8px;margin-top:10px}.video-controls button{height:36px;background:#113944;border:1px solid #31636b;border-radius:6px;color:var(--bright);font-weight:700;white-space:nowrap}.video-controls input{flex:1;min-width:80px;accent-color:var(--bright)}.video-controls select{width:83px}.review-entry .event-groups{margin-top:17px}.review-entry .roster-grid button{min-height:55px}.review-side .outline-button{margin:12px 0 0}.film-event-list{display:grid;gap:7px;max-height:720px;overflow:auto}.film-event{width:100%;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:#0b202b;color:#dcebea;padding:10px;text-align:left}.film-event:hover,.film-event.active{border-color:var(--bright);background:#103a40}.film-event .time{color:var(--bright);font:800 15px 'Barlow Condensed',sans-serif;min-width:48px}.film-event .description{flex:1;font-size:11px}.film-event small{display:block;color:#8daab3;font-size:9px;margin-top:3px}.film-event .film-actions{display:flex;gap:5px}.film-event .film-actions button{background:#143845;border:1px solid #34606c;color:var(--bright);border-radius:5px;padding:5px 7px}.film-banner{min-height:172px}.film-banner h1{font-size:48px;line-height:.9;margin:10px 0}.film-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.film-filters select{width:100%}.film-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:13px}.film-preview{align-self:start}.film-preview-screen{height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #296369;border-radius:9px;background:linear-gradient(#071d27bb,#071d27dd),url('flight-crew-hero.png') center/cover}.film-preview-screen span{font:800 30px 'Barlow Condensed',sans-serif}.film-preview-screen small{color:#adced0}.film-preview .primary-button{margin-top:10px}.film-preview .outline-button{display:inline-block;text-decoration:none;margin-right:7px}.clip-panel{margin-top:13px}.clip-fields{display:flex;align-items:end;gap:12px}.clip-fields label{width:150px}.clip-fields span{color:var(--bright);font-weight:800}.clip-track{height:14px;border-radius:15px;background:#1d4250;margin:20px 0;overflow:hidden}.clip-track i{display:block;height:100%;width:20%;background:var(--bright);margin-left:40%}.clip-panel[hidden]{display:none}.review-feedback:empty{display:none}body.light .video-intro{background:#e1f1ef}body.light .video-intro h3,body.light .video-intro p{color:#153a42}body.light .film-event{background:#f3faf8;color:#193a42}body.light .source-status{color:#4c737a}@media(max-width:1250px){.review-fields{grid-template-columns:1fr 100px minmax(200px,2fr)}.review-layout{grid-template-columns:1fr}.review-side{grid-template-columns:1fr 1fr}.film-layout{grid-template-columns:1fr 310px}}@media(max-width:900px){.video-step{display:none}.film-layout{grid-template-columns:1fr}.film-filters{grid-template-columns:1fr 1fr}.review-fields{grid-template-columns:1fr 1fr}.review-fields label:nth-child(3){grid-column:1/-1}.review-side{grid-template-columns:1fr 1fr}}@media(max-width:700px){.video-intro{display:block}.review-fields,.film-filters{grid-template-columns:1fr 1fr}.review-fields label:nth-child(3){grid-column:1/-1}.review-layout,.review-side{grid-template-columns:1fr}.mock-video-screen{height:200px}.video-controls{flex-wrap:wrap}.video-controls input{order:5;flex-basis:100%}.film-banner h1{font-size:39px}.film-event{flex-wrap:wrap}.clip-fields{flex-wrap:wrap}}
/* Video review extension */
[hidden]{display:none!important}
.review-youtube-embed{display:block;width:100%;aspect-ratio:16/9;min-height:290px;border:0;border-radius:9px;background:#061820}
.player-events-panel{margin:0 0 16px}
.player-events-panel>p{font-size:11px;margin:-5px 0 13px}
.player-event-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.player-event-tabs button{background:#112936;border:1px solid var(--line);color:#acbdc6;border-radius:7px;padding:8px 14px;font-size:11px;font-weight:700}
.player-event-tabs button.active{background:var(--bright);color:#05272d;border-color:var(--bright)}
.player-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.player-event-row{display:flex;align-items:center;gap:10px;min-width:0;text-align:left;background:#0b202b;border:1px solid var(--line);border-radius:8px;color:var(--text);padding:10px}
.player-event-row:not(:disabled):hover{border-color:var(--bright);background:#103a40}
.player-event-row .time{font:800 16px 'Barlow Condensed',sans-serif;color:var(--bright);min-width:40px}
.player-event-row span:nth-child(2){flex:1;min-width:0}
.player-event-row b,.player-event-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-event-row small{color:#839fa8;font-size:10px;margin-top:3px}
.player-event-row span:last-child{color:var(--bright);font-size:10px;white-space:nowrap}
.player-event-row:disabled span:last-child{color:#6f8790}
.film-filters .favorite-filter{display:flex;align-items:center;gap:6px;align-self:end;height:39px;padding:0 8px;color:var(--bright);letter-spacing:0;white-space:nowrap}
.film-filters .favorite-filter input{accent-color:var(--bright)}
@media(max-width:750px){.player-event-list{grid-template-columns:1fr}.review-youtube-embed{min-height:180px}}
.film-youtube-embed{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:8px;background:#061820;margin-bottom:12px}
.film-filters .favorite-filter{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;grid-column:1/-1;height:auto;padding:2px 0 0}
.review-match-fields{display:grid;grid-template-columns:minmax(155px,1fr) minmax(180px,1.2fr) 150px auto;gap:9px;align-items:end}
.review-match-fields label{display:grid;gap:6px;color:#9bb2bd;font-size:9px;font-weight:800;letter-spacing:.08em}
.review-match-fields input,.review-match-fields select{width:100%;height:39px;min-width:0;background:#0a1e29;border:1px solid #345763;color:var(--text);border-radius:7px;padding:6px 9px}
.review-match-fields button{height:39px;white-space:nowrap;padding:0 14px}
.review-setup #reviewMatchStatus{min-height:18px;margin:10px 0 14px;color:#a5c4c8}
.review-fields{grid-template-columns:110px 100px minmax(210px,1fr) auto 120px}
.review-new .review-layout{grid-template-columns:1fr}
.review-new .review-fields,.review-new .mock-video,.review-new .review-entry,.review-new .review-side{display:none}
.review-new .review-setup{max-width:940px;margin:0 auto;padding:25px}
.review-new .review-match-fields{grid-template-columns:minmax(160px,1fr) minmax(200px,1.4fr) 165px auto}
@media(max-width:1100px){.review-match-fields,.review-new .review-match-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.review-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.review-fields label:nth-of-type(2){grid-column:1/-1}}
@media(max-width:650px){.review-match-fields,.review-new .review-match-fields,.review-fields{grid-template-columns:1fr}.review-fields label:nth-of-type(2){grid-column:auto}.review-match-fields button,.review-fields button{width:100%}}
.storage-status{position:fixed;right:20px;bottom:18px;z-index:1000;padding:9px 14px;border:1px solid #1e716b;border-radius:9px;background:#123934;color:#d9fff9;font:600 12px Inter,Arial,sans-serif;box-shadow:0 12px 28px #0007}.storage-status.error{border-color:#c44b57;background:#4d2229;color:#fff}.storage-status[hidden]{display:none}
.review-result-fields{display:grid;grid-template-columns:1fr 1fr auto 1fr;gap:9px;align-items:end;margin-top:12px}.review-result-fields label{display:grid;gap:6px;color:#9bb2bd;font-size:9px;font-weight:800;letter-spacing:.08em}.review-result-fields input,.review-result-fields select{height:39px;min-width:0;background:#0a1e29;border:1px solid #345763;color:var(--text);border-radius:7px;padding:6px 9px}.review-result-fields button{height:39px;margin:0}.review-new .review-result-fields{display:none}@media(max-width:700px){.review-result-fields{grid-template-columns:1fr 1fr}.review-result-fields button{width:100%}}
.season-form{display:grid;gap:12px;margin-top:15px}.season-form label{display:grid;gap:7px;color:var(--muted);font-size:12px}.season-form label:has([type=checkbox]){display:flex;align-items:center}.season-form input:not([type=checkbox]){height:40px;border-radius:7px;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:8px 11px}.season-form button{justify-self:start}
.review-new .lineup-panel{display:none}.lineup-panel{border-color:#27736f}.lineup-panel .lineup-explain{margin:-4px 0 17px;font-size:11px}.lineup-section-title{margin:16px 0 9px;color:var(--bright);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.lineup-six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lineup-six label,.lineup-setup-actions label,.lineup-sub label{display:grid;gap:5px;min-width:0;color:#98b3bb;font-size:9px;font-weight:800}.lineup-panel select{width:100%;height:38px;border:1px solid #345763;border-radius:7px;background:#0a1e29;color:var(--text);padding:6px}.lineup-setup-actions{display:flex;align-items:end;gap:9px;margin-top:10px}.lineup-setup-actions label{width:180px}.lineup-setup-actions button,.lineup-sub button{height:38px}.lineup-court{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.lineup-court>div{display:grid;gap:3px;padding:10px;border:1px solid #365966;border-radius:8px;background:#0b2230}.lineup-court>div.back{border-color:#159d91;background:#0d353d}.lineup-court small{color:#89aab2;font-size:9px;font-weight:700}.lineup-court strong{font:800 21px 'Barlow Condensed',sans-serif;color:var(--bright)}.lineup-court span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lineup-action-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.lineup-sub{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:end}.lineup-rally{display:flex;gap:7px}.lineup-rally button{height:38px;flex:1;border:1px solid #357167;border-radius:7px;background:#10493f;color:#defff5;font-weight:800}.lineup-rally button:last-child{border-color:#86505a;background:#462730;color:#ffe0e0}.lineup-totals{display:flex;gap:18px;color:#92aeb7;font-size:10px}.lineup-totals b{color:var(--text);font-size:17px}.lineup-trios{margin-top:10px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.lineup-table-head,.lineup-table-row{display:grid;grid-template-columns:1.4fr .65fr .65fr 1.3fr .7fr;gap:6px;align-items:center;padding:8px 10px}.lineup-table-head{background:#0b202b;color:#8ba9b1;font-size:9px;font-weight:800;text-transform:uppercase}.lineup-table-row{border-top:1px solid var(--line);font-size:10px}.lineup-table-row strong{color:#e3f7f2}.lineup-table-row small{color:#83a6ab}.lineup-low{color:var(--red);font-weight:800}.lineup-note{font-size:10px}.lineup-timeline{display:grid;gap:5px}.lineup-timeline>div{display:flex;align-items:center;gap:9px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:#0b202b;font-size:10px}.lineup-timeline span{color:var(--bright)}.lineup-timeline strong{flex:1}.lineup-timeline button{background:#153844;border:1px solid #32616c;border-radius:5px;color:var(--bright)}.lineup-report{margin-top:15px}.lineup-player-chips{display:flex;flex-wrap:wrap;gap:7px}.lineup-player-chips span{border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:#0b202b;color:#c9dfdf;font-size:10px}.lineup-player-chips b{color:var(--bright)}body.light .lineup-panel select{background:#fff;color:#18343d}body.light .lineup-court>div,body.light .lineup-player-chips span{background:#e7f4f1;color:#18343d}
@media(max-width:900px){.lineup-six{grid-template-columns:repeat(2,minmax(0,1fr))}.lineup-action-grid{grid-template-columns:1fr}}@media(max-width:550px){.lineup-six,.lineup-court{grid-template-columns:repeat(2,minmax(0,1fr))}.lineup-sub{grid-template-columns:1fr 1fr}.lineup-sub button{grid-column:1/-1}.lineup-table-head,.lineup-table-row{grid-template-columns:1fr .5fr .5fr 1fr}.lineup-table-head span:last-child,.lineup-table-row span:last-child{display:none}}
.lineup-table-head,.lineup-table-row{grid-template-columns:1.4fr .65fr .65fr 1fr}
.lineup-player-panel{margin:0 0 14px}
@media(max-width:550px){.lineup-table-head,.lineup-table-row{grid-template-columns:1fr .5fr .5fr 1fr}.lineup-table-head span:last-child,.lineup-table-row span:last-child{display:block}}
/* Role preview surfaces. Server authorization is required before public access. */
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-grid .panel{min-height:260px}.account-grid p{font-size:12px;color:var(--muted);line-height:1.55}.account-form{display:grid;gap:12px;margin:18px 0}.account-form label{display:grid;gap:7px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em}.account-form input,.account-form select{width:100%;height:42px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:8px 11px}.account-form button{justify-self:start}.account-grid .notice{margin-top:12px}
body[data-access-role="player"] .rail-link[hidden],body[data-access-role="parent"] .rail-link[hidden]{display:none!important}
body[data-access-role="player"] #matches>.section-heading [data-view="review"],body[data-access-role="parent"] #matches>.section-heading [data-view="review"],body[data-access-role="player"] #matchesContent [data-edit-match],body[data-access-role="parent"] #matchesContent [data-edit-match]{display:none!important}
body[data-access-role="player"] #playerSelect,body[data-access-role="parent"] #playerSelect,body[data-access-role="player"] #goalPlayerSelect,body[data-access-role="parent"] #goalPlayerSelect,body[data-access-role="player"] #filmPlayer,body[data-access-role="parent"] #filmPlayer,body[data-access-role="player"] #profilePlayerSelect,body[data-access-role="parent"] #profilePlayerSelect{display:none}
body[data-access-role="player"] label:has(>#playerSelect),body[data-access-role="parent"] label:has(>#playerSelect),body[data-access-role="player"] label:has(>#goalPlayerSelect),body[data-access-role="parent"] label:has(>#goalPlayerSelect),body[data-access-role="player"] label:has(>#filmPlayer),body[data-access-role="parent"] label:has(>#filmPlayer),body[data-access-role="player"] label:has(>#profilePlayerSelect),body[data-access-role="parent"] label:has(>#profilePlayerSelect){display:none}
body[data-access-role="player"] #goals .goals-table-wrap,body[data-access-role="parent"] #goals .goals-table-wrap,body[data-access-role="player"] #goals .goals-foot,body[data-access-role="parent"] #goals .goals-foot,body[data-access-role="player"] #goals>.section-heading:not(:first-child),body[data-access-role="parent"] #goals>.section-heading:not(:first-child),body[data-access-role="player"] #overview .card-config textarea,body[data-access-role="parent"] #overview .card-config textarea{display:none}
body[data-access-role="player"] #developmentPlans .plan-fields,body[data-access-role="parent"] #developmentPlans .plan-fields{display:none}
@media(max-width:760px){.account-grid{grid-template-columns:1fr}}
