
:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#172036;background:#f4f6fa}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}header{background:#172036;color:white;padding:14px max(16px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:12px}header strong{font-size:1.15rem}main{max-width:1100px;margin:auto;padding:16px}.tag{color:#b5c3dc;font-size:.8rem}.layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panel{background:#fff;border:1px solid #e1e5ed;border-radius:15px;overflow:hidden;box-shadow:0 4px 14px #17203608}.teamhead{padding:14px 16px;color:#fff;background:#324769}.teamhead.away{background:#8e3f55}.teamhead input{width:100%;max-width:250px;background:transparent;color:white;border:none;border-bottom:1px solid #ffffff55;font-weight:700;outline-offset:3px}.teamhead input::placeholder{color:#ffffffaa}.score{font-size:3.2rem;font-weight:800;line-height:1.1;margin:8px 0 4px}.teamhead label{display:inline-flex;align-items:center;gap:7px;font-size:.85rem;margin-top:7px}.inner{padding:14px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.stat{padding:11px 5px;border:1px solid #dce3ef;border-radius:9px;background:#f6f8fc;min-height:58px;font-weight:650;font-size:.84rem;line-height:1.15}.stat:hover{background:#e9effb}.stat.made{background:#ecf6f0;border-color:#b6d9c2}.stat.miss{background:#fff6ed;border-color:#efd7c1}.stat:active{transform:scale(.98)}.sectiontitle{font-weight:750;margin:0 0 10px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted{color:#67738a;font-size:.85rem}.bar{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:14px}.btn{background:white;border:1px solid #cbd3e1;padding:9px 13px;border-radius:9px;color:#172036;font-weight:650}.btn.primary{background:#264f93;color:white;border-color:#264f93}.btn.danger{color:#a53c4f;border-color:#edcad0}.status{font-size:.84rem;color:#5e6a80}.tables{margin-top:14px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:.82rem}th,td{padding:10px 8px;text-align:right;border-bottom:1px solid #e8ebf1}th:first-child,td:first-child{text-align:left;position:sticky;left:0;background:#fff}th{background:#f3f6fb;color:#53617b;font-size:.74rem}tr.total td{background:#edf2fa;font-weight:800}tr.total td:first-child{background:#edf2fa}.tabs{display:flex;gap:6px;margin:12px 0}.tab{border:none;border-radius:8px;padding:9px 12px;background:#e9edf4;font-weight:700}.tab[aria-selected=true]{background:#243e6b;color:white}.event{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee;font-size:.84rem}.event small{color:#6c7890}.empty{color:#738096;padding:12px 0;font-size:.88rem}.veil{position:fixed;inset:0;background:#11182799;display:none;align-items:center;justify-content:center;padding:16px;z-index:10}.veil.open{display:flex}.modal{width:min(510px,100%);max-height:90vh;overflow:auto;background:white;border-radius:15px;padding:20px;box-shadow:0 22px 80px #0004}.modal h2{margin:0 0 7px;font-size:1.3rem}.players{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.player{min-height:52px;background:#f2f5fa;border:1px solid #dce3ed;border-radius:8px;font-weight:650;padding:7px}.full{width:100%}textarea{width:100%;min-height:135px;resize:vertical;border:1px solid #ced5e2;border-radius:8px;padding:10px}.gridform{display:grid;grid-template-columns:1fr 1fr;gap:12px}.help{font-size:.84rem;color:#58667c;line-height:1.5}.key{font-size:.74rem;color:#7b8495}footer{padding:20px 16px;text-align:center;font-size:.75rem;color:#78839a}@media(max-width:680px){.layout{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.score{font-size:2.65rem}.players{grid-template-columns:repeat(2,1fr)}.gridform{grid-template-columns:1fr}main{padding:10px}.stat{min-height:58px}.bar{gap:7px}} 
/* Phone-first game-day controls */
.mobileScoreboard{display:none}.mobileHint{display:none}
button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,textarea{font-size:16px}
@media(max-width:680px){
 body{background:#eef1f6}header{position:relative;padding:10px 14px;min-height:58px}header strong{font-size:1.03rem}header .tag{font-size:.7rem}header .btn{padding:9px 11px;font-size:.85rem}
 main{padding:0 9px 22px}.bar{margin:8px 0 10px;gap:7px}.bar .status{order:2;width:100%;font-size:.72rem}.bar .row{order:1;display:grid;grid-template-columns:1fr 1fr 1fr;width:100%;gap:6px}.bar .btn{font-size:.76rem;padding:11px 3px;min-height:44px}
 .mobileScoreboard{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:sticky;top:0;z-index:4;padding:8px 0;background:#eef1f6}
 .mobileTeam{border:2px solid transparent;border-radius:13px;background:#e3eaf4;color:#16263d;min-height:82px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:5px;text-align:left;box-shadow:0 2px 8px #11182718}
 .mobileTeam.away{background:#f2e5e9}.mobileTeam.active{border-color:#2654ae;background:#d5e2fa}.mobileTeam.away.active{border-color:#a83d62;background:#f6dbe5}
 .mobileTeam .name{font-size:.77rem;font-weight:800;line-height:1.15;overflow-wrap:anywhere}.mobileTeam .value{font-size:2.2rem;font-weight:850;line-height:1;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.mobileTeam .micro{display:block;color:#475569;font-size:.63rem;margin-top:6px}
 .mobileHint{display:block;text-align:center;font-size:.7rem;color:#586479;margin:0 0 8px}
 .layout{display:block}.layout>.panel{display:none}.layout>.panel.mobileActive{display:block}.panel{border-radius:12px}.teamhead{padding:9px 13px}.teamhead .score{display:none}.teamhead>div:first-child{font-size:.98rem}.teamhead .muted{font-size:.75rem;margin-top:4px}.teamhead label{margin-top:8px;font-size:.83rem;min-height:28px}.teamhead input[type=checkbox]{width:21px;height:21px;accent-color:#fff}
 .inner{padding:10px}.sectiontitle{font-size:.88rem;margin-bottom:8px}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat{min-height:71px;padding:10px 4px;font-size:.89rem;border-radius:11px;box-shadow:0 2px 0 #1118270a}.stat:active{transform:scale(.965);filter:brightness(.95)}
 .tables{margin-top:12px}.tabs{overflow:auto;white-space:nowrap}.tab{min-height:44px}.tablewrap{max-width:100%;-webkit-overflow-scrolling:touch}th,td{padding:11px 9px}footer{font-size:.71rem;padding:14px}
 .veil{align-items:flex-end;padding:0}.modal{max-height:92dvh;width:100%;border-radius:22px 22px 0 0;padding:18px 15px max(22px,env(safe-area-inset-bottom));overscroll-behavior:contain}.modal h2{font-size:1.22rem}.players{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:55dvh;overflow-y:auto;padding-bottom:5px}.player{min-height:67px;padding:7px 3px;font-size:.86rem;overflow-wrap:anywhere}.modal .row{position:sticky;bottom:0;background:white;padding-top:9px}.modal .row .btn{min-height:47px;flex:1}.gridform{grid-template-columns:1fr}.gridform input{min-height:42px;padding:7px;border:1px solid #cbd3e1;border-radius:7px}
}
@media(max-width:370px){.stat{font-size:.79rem;min-height:68px}.mobileTeam .value{font-size:1.9rem}.players{grid-template-columns:repeat(2,1fr)}}

/* Game clock, lineup management and help */
.header-actions{display:flex;align-items:center;gap:7px}.header-actions .btn{min-height:43px}
.clockbox{background:#172036;color:#fff;border-radius:14px;margin:10px 0;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.clockbox[hidden],.lineup-action[hidden],.clock-actions[hidden]{display:none!important}
.clockleft{display:flex;align-items:center;gap:12px}.clockface{font-size:2.05rem;font-weight:850;font-variant-numeric:tabular-nums;letter-spacing:-.045em;line-height:1.2}.periodlabel{font-size:.77rem;color:#c6d5eb;font-weight:750}.clock-actions{display:flex;gap:7px;flex-wrap:wrap}.clock-actions .btn{min-height:44px;border-color:#7183a6}.clock-actions .btn.primary{background:#4baf75;border-color:#4baf75;color:#091e15}
.clockbox.ended{background:#703343;animation:pulseonce .7s ease-in-out 2}@keyframes pulseonce{50%{box-shadow:0 0 0 5px #efb0b1}}
.lineup-action{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;background:#e6edf8;padding:9px 11px;border-radius:11px}
.lineup-action .btn{min-height:44px}.lineup-action .small{font-size:.76rem;color:#52617a}
.lineup-tabs{display:flex;gap:8px;margin:10px 0}.lineup-tabs .btn{flex:1;min-height:45px}.lineup-tabs .selected{background:#243e6b;color:#fff}
.lineup-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.lineup-col{border:1px solid #dbe1ec;border-radius:12px;padding:9px;background:#f7f9fc;min-height:160px}.lineup-col h3{font-size:.87rem;margin:2px 0 9px}.lineup-col small{color:#607086}.lineup-player{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:51px;gap:5px;padding:7px;border:1px solid #d1dae8;border-radius:10px;margin-bottom:7px;text-align:left;background:white;font-size:.82rem;touch-action:pan-y;user-select:none}.lineup-player:active{background:#d9e6ff}.lineup-player b{font-size:.8rem}.lineup-player span{min-width:0;overflow-wrap:anywhere}.lineup-col.court{background:#e8f3e8;border-color:#b9daba}.lineup-col.bench{background:#f3f4f8}.lineup-note{font-size:.79rem;color:#56657a;margin:9px 0}
.settings-card{border-top:1px solid #e4e8f0;padding-top:14px;margin-top:13px}.settings-card label.toggle{display:flex;align-items:center;gap:10px;font-weight:700;min-height:42px}.settings-card input[type=checkbox]{width:22px;height:22px;accent-color:#2454a0}.settings-card select,.settings-card input[type=text]{padding:10px;border:1px solid #cbd3e1;border-radius:8px;background:white;min-height:46px;width:100%}.settings-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}.min-cell{font-variant-numeric:tabular-nums}.helper-content h3{font-size:.98rem;margin:17px 0 5px}.helper-content p{font-size:.88rem;line-height:1.55;color:#46556c;margin:0 0 8px}.help-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);background:#293951;color:white;border-radius:12px;padding:12px 18px;z-index:20;box-shadow:0 8px 30px #0006;max-width:calc(100% - 24px);font-weight:700;text-align:center;display:none}.toast.on{display:block}
@media(max-width:680px){header{gap:7px}.header-actions{gap:5px}.header-actions .btn{padding:9px 10px;min-height:44px}.clockbox{position:sticky;top:0;z-index:4;margin:4px 0 8px;padding:9px 11px;gap:7px;flex-wrap:nowrap}.clockface{font-size:1.55rem}.periodlabel{font-size:.66rem}.clock-actions{flex-wrap:nowrap;gap:5px}.clock-actions .btn{padding:8px 7px;font-size:.71rem;min-height:45px}.mobileScoreboard{top:0}.clockOn .mobileScoreboard{top:69px}.lineup-action{margin:8px 0}.lineup-action .btn{padding:8px 12px}.lineup-cols{gap:7px}.lineup-col{padding:7px}.lineup-player{padding:7px 5px;min-height:56px;font-size:.78rem}.settings-row{grid-template-columns:1fr 1fr}}
@media(max-width:375px){.clockface{font-size:1.35rem}.clock-actions .btn{font-size:.65rem;padding:7px 5px}.header-actions .btn{font-size:.78rem}}
/* Scoreboard view */
.scoreboardView{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}
.scoreboardView[hidden],.detailedArea[hidden],.tables[hidden],.mobileScoreboard[hidden],.mobileHint[hidden],.layout[hidden]{display:none!important}
.scorecard{border:1px solid #cbd5e1;border-radius:14px;background:#fff;padding:13px;min-width:0;box-shadow:0 4px 14px #17203612}
.scorecard.away{border-top:6px solid #a04462}.scorecard.home{border-top:6px solid #254b87}
.scorecard h2{font-size:1.02rem;margin:0 0 4px;overflow-wrap:anywhere}
.scorebig{font-weight:900;font-size:clamp(3rem,9vw,5rem);font-variant-numeric:tabular-nums;line-height:1.1;text-align:center;padding:12px 2px 6px}
.foulbig{text-align:center;font-size:1rem;font-weight:800;margin:3px 0 12px}
.quickcols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.quickBtn{border-radius:10px;min-height:55px;border:1px solid #b9cae3;background:#e8f0ff;font-size:1.1rem;font-weight:800;color:#1b4075}
.quickBtn.minus{background:#fff0ee;color:#963e46;border-color:#edc4c4}.quickBtn.foul{background:#fff5df;color:#785321;border-color:#eddbaf;font-size:.88rem}
.quickBtn:active{transform:scale(.96)}.quickCaption{text-align:center;color:#64748b;font-size:.72rem;margin:9px 0 4px}.quickTrack{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:.8rem;min-height:37px}.quickTrack input{width:21px;height:21px}
.featureSettings{border:1px solid #d5deed;border-radius:12px;padding:12px;background:#f8faff}.featureSettings .toggle{font-weight:500!important;margin-top:3px}.modeSelect{width:100%;min-height:48px;padding:9px;border:1px solid #cbd3e1;border-radius:9px;background:white;font-size:1rem}.settingsSubhead{font-size:.85rem;font-weight:800;margin:11px 0 4px}
@media(max-width:680px){.scoreboardView{gap:7px;margin:5px 0 10px}.scorecard{padding:10px 7px}.scorecard h2{font-size:.87rem}.scorebig{font-size:clamp(3rem,15vw,4.6rem);padding:9px 1px 5px}.quickcols{gap:5px}.quickBtn{min-height:57px;font-size:.97rem;padding:6px 1px}.quickBtn.foul{font-size:.75rem}.quickCaption{font-size:.67rem}.foulbig{font-size:.87rem}.quickTrack{font-size:.72rem}}

/* iPhone Safari refinements: scroll, notches, focus visibility and minimum tap size */
html{-webkit-text-size-adjust:100%;scroll-padding-top:140px}body{min-width:280px;padding-bottom:env(safe-area-inset-bottom,0px)}
button,select,input[type=checkbox]{touch-action:manipulation}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #548de4;outline-offset:2px}
button{min-width:0}header{padding-top:max(12px,env(safe-area-inset-top,0px))}
@media(max-width:680px){.bar{position:relative}.scoreboardView,.layout,.tables{min-width:0}.scorecard{min-width:0}.scorecard h2{overflow-wrap:anywhere}.quickcols{min-width:0}.quickBtn{min-width:0}.mobileScoreboard{position:relative}.clockOn .mobileScoreboard{top:auto}.clockbox{position:relative}.modal{max-height:90vh;max-height:90dvh}.settings-card{min-width:0}.modal textarea{max-width:100%}.tablewrap{overscroll-behavior-x:contain}.lineup-player{touch-action:pan-y}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* v5: game archive, touch-first selection, shot chart and report */
.gamebar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;padding:9px 12px;background:white;border-radius:12px;border:1px solid #dbe3f0}
.gameinfo{font-size:.81rem;min-width:0}.gameinfo b{display:block;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gameinfo span{color:#66738b}.gamebar .btn{min-height:44px;white-space:nowrap}
.shotView{margin-top:12px}.shotActions{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.shotActions select{border:1px solid #cbd5e1;border-radius:8px;padding:8px;background:white;min-height:43px;max-width:100%;font-size:14px}
.courtWrap{max-width:550px;margin:auto;position:relative}.courtWrap svg{display:block;width:100%;height:auto;border:1px solid #cbd5e1;border-radius:12px;background:#f2d2a4;user-select:none;-webkit-user-select:none}
.courtTap{touch-action:manipulation;cursor:crosshair}.shotlegend{display:flex;gap:12px;justify-content:center;margin:9px 0;color:#506078;font-size:.81rem;flex-wrap:wrap}.shotlegend b{font-size:1rem}
.shotStats{font-size:.85rem;margin:9px 0;color:#34405b;text-align:center}.zoneTable{max-width:550px;margin:12px auto;overflow-x:auto}.zoneTable table{width:100%}.courtFeedback{text-align:center;font-size:.83rem;color:#536179;padding:8px}
.gameList{max-height:50dvh;overflow:auto}.savedGame{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #dce3ef;border-radius:11px;padding:10px;margin:7px 0}.savedGame b{display:block;font-size:.9rem}.savedGame small{color:#64748b}.savedGame button{min-height:42px}
.reportArea{white-space:pre-wrap;background:#f5f7fb;border:1px solid #dbe2ee;border-radius:10px;padding:12px;max-height:45dvh;overflow:auto;font-size:.77rem;font-family:ui-monospace,monospace;line-height:1.5}
.quickPlayerBar{display:flex;align-items:center;gap:8px;background:#eef4fd;padding:8px 10px;border-radius:10px;margin:6px 0;font-size:.81rem;flex-wrap:wrap}.quickPlayerBar button{min-height:40px}
.modal .player{min-height:68px}.modal .player.recent{background:#dcecff;border-color:#6a92d2}.pickerHint{background:#edf3fc;padding:8px;border-radius:8px;font-size:.83rem;color:#3d5274}
.fileInput{max-width:100%;font-size:.82rem}.smallAction{font-size:.75rem!important}
@media(max-width:680px){.gamebar{padding:8px 9px}.gamebar .btn{padding:9px;font-size:.79rem}.shotActions{display:grid;grid-template-columns:1fr 1fr}.shotActions select{min-width:0}.shotActions label{font-size:.76rem}.courtWrap{width:100%}.gamebar .gameinfo{font-size:.72rem}.savedGame{align-items:flex-start}.savedGame .btn{font-size:.75rem}.header-actions .btn{font-size:.74rem}}

/* PWA beta controls: iPhone touch targets and unobtrusive onboarding */
.betaToolbar{display:flex;gap:7px;flex-wrap:wrap;padding:6px 0 10px;align-items:center}
.betaToolbar .btn{min-height:44px;font-size:.83rem}
.betaNotice{border:1px solid #aebfd8;border-radius:11px;background:#eef4ff;padding:11px 12px;margin:5px 0 11px;color:#263b59;font-size:.84rem;line-height:1.4}
.betaNotice[hidden]{display:none!important}.betaNotice button{margin-top:8px}
.betaGuide h3{margin:13px 0 6px;font-size:.98rem}.betaGuide p{line-height:1.55;color:#38465e;font-size:.89rem}
.betaGuide ol{padding-left:22px;line-height:1.8;color:#38465e;font-size:.88rem}
.feedbackInput{width:100%;min-height:145px;padding:11px;border:1px solid #cbd5e1;border-radius:10px;resize:vertical}
.storageState{font-size:.75rem;color:#53627a;margin-left:auto;max-width:100%}
@media(max-width:680px){.betaToolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.betaToolbar .btn{padding:10px 5px;font-size:.75rem;min-height:45px}.storageState{grid-column:1/-1}.betaNotice{font-size:.79rem}}

/* Stataru v7 identity and responsive game console */
:root{--navy:#0B1F44;--teal:#00E5C2;--orange:#FF6A00;--gray:#8A94A6;--canvas:#F5F7FB;--ink:#101D33}
body{background:var(--canvas);color:var(--ink)}header{background:var(--navy)}header strong{font-size:1.35rem;letter-spacing:-.04em}.brandword{display:flex;align-items:center;gap:10px}.brandmark{width:31px;height:31px;border-radius:9px;display:inline-flex;justify-content:center;align-items:center;position:relative;background:linear-gradient(150deg,#15325f,#071831);font-size:1.25rem;color:white;box-shadow:inset -5px -5px 0 #0b294b}.branddots{color:var(--teal);font-size:1rem;position:absolute;top:-8px;right:3px}
.btn.primary,.tab[aria-selected=true],.lineup-tabs .selected{background:var(--navy);color:white;border-color:var(--navy)}.clock-actions .btn.primary{background:#36d5ae;color:#062136;border-color:#36d5ae}.teamhead{background:var(--navy)}.teamhead.away{background:#225078}.scorecard.home{border-top-color:var(--orange)}.scorecard.away{border-top-color:var(--teal)}.quickBtn{background:#ebf5ff;color:var(--navy)}.quickBtn:not(.minus):not(.foul):active{background:var(--teal)}.quickBtn.foul{background:#fff0e5;color:#753900;border-color:#ffb87f}
.appNav{display:flex;gap:6px;border-radius:15px;margin:12px 0 8px;padding:5px;background:#e6ebf3}.navBtn{flex:1;border:0;border-radius:11px;background:transparent;color:#54627a;min-height:45px;font-size:.9rem;font-weight:750}.navBtn.selected{background:white;color:var(--navy);box-shadow:0 2px 8px #14254c19}.navBtn:disabled{opacity:.5}.premDot{font-size:.58rem;background:var(--orange);color:white;border-radius:5px;padding:2px 4px;vertical-align:middle}.planStrip{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:5px 0 8px;font-size:.78rem;color:#48566f}.planStrip .btn{min-height:38px;padding:6px 10px}.focusControls{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.79rem;color:#52617b;margin-bottom:7px}.focusControls .btn{min-height:40px}.tierGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.tierCard{border:1px solid #dbe4f0;border-radius:12px;padding:14px;background:#fff}.tierCard.premium{border-color:#00baaa;background:#eefcf9}.tierCard h3{margin:0 0 8px;color:var(--navy)}.tierCard p{min-height:90px;font-size:.85rem;color:#46546a;line-height:1.5}.tierCard .btn{width:100%;min-height:45px}.pageLive[hidden],.pageGames[hidden],.pageAnalysis[hidden],.quickCourtPlayers[hidden]{display:none!important}
.quickCourtPlayers{border:1px solid #cbd9e9;background:#fff;border-radius:12px;margin:9px 0;padding:9px}.quickPlayersHead{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.83rem}.quickPlayersHead span{font-size:.71rem;color:#627389}.playerChips{display:flex;gap:7px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:9px 0 2px;scrollbar-width:none}.playerChip{white-space:nowrap;border-radius:11px;background:#eef3f9;border:1px solid #d1dded;color:#102d53;padding:11px;min-height:43px;font-weight:650}.playerChip.active{background:var(--navy);border-color:var(--navy);color:white}.shotEditBar{display:flex;align-items:center;gap:12px;margin:12px 0;flex-wrap:wrap}.shotEditBar .btn{min-height:45px}
@media(max-width:680px){.appNav{margin:7px 8px}.navBtn{font-size:.76rem;padding:6px 2px;min-height:43px}.planStrip{margin:4px 9px;font-size:.72rem}.planStrip .btn{font-size:.72rem}.focusControls{margin:5px 10px}.tierGrid{grid-template-columns:1fr}.tierCard p{min-height:0}.quickCourtPlayers{margin:7px 0}.quickPlayersHead{font-size:.76rem}.quickPlayersHead span{font-size:.68rem}
 body.focusMode .betaToolbar,body.focusMode .betaNotice,body.focusMode .gamebar .gameinfo,body.focusMode footer{display:none!important}
 body.focusMode .bar{margin:5px 0}.bar .row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.bar .btn{font-size:.74rem}
 body.focusMode .teamhead{padding:6px 10px}body.focusMode .teamhead .muted{display:none}body.focusMode .stats{gap:6px}body.focusMode .stat{min-height:57px;padding:7px 2px;font-size:.78rem}
 body.densityComfort .stat{min-height:78px;font-size:.96rem}body.densityComfort .quickBtn{min-height:70px}
}
@media(min-width:700px){main{max-width:1200px}.pageLive .layout{grid-template-columns:1fr 1fr}.pageLive .layout>.panel{display:block}.pageLive .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.pageLive .stat{min-height:54px}.pageLive .scoreboardView{grid-template-columns:1fr 1fr}.pageLive .scorecard{padding:12px}.pageLive .scorebig{font-size:3.2rem}.pageLive .quickBtn{min-height:43px}.pageLive .clockbox{padding:8px 14px}.pageLive .clockface{font-size:1.65rem}}
@media(min-width:900px) and (orientation:landscape){body.focusMode .betaToolbar,body.focusMode .betaNotice,body.focusMode .gamebar,body.focusMode footer{display:none!important}body.focusMode .pageLive .layout{gap:9px}body.focusMode .pageLive .inner{padding:9px}body.focusMode .stats{gap:5px}body.focusMode .stat{min-height:43px;padding:6px 2px;font-size:.79rem}body.focusMode .teamhead{padding:6px 10px}body.focusMode .teamhead .score{font-size:1.85rem;margin:0}body.focusMode .clockbox{margin:4px 0;padding:7px}body.focusMode .clockface{font-size:1.55rem}body.focusMode .scoreboardView{margin:3px 0}body.focusMode .scorecard{padding:6px 8px}body.focusMode .scorebig{font-size:2.3rem;padding:2px}body.focusMode .quickBtn{min-height:35px;font-size:.82rem}body.focusMode .quickCaption{margin:3px 0 2px}body.focusMode .foulbig{margin:1px 0 4px}body.focusMode .quickTrack{min-height:27px;margin-top:3px}body.focusMode .lineup-action{padding:4px 9px;margin:4px 0}body.focusMode .appNav{margin:5px 0}body.focusMode .planStrip,body.focusMode .focusControls{margin:3px 0}body.focusMode main{padding-top:0}}
@media(min-width:900px){body.layoutPhone main{max-width:420px}body.layoutPhone .pageLive .layout{display:block}body.layoutPhone .pageLive .layout>.panel{display:none}body.layoutPhone .pageLive .layout>.panel.mobileActive{display:block}body.layoutTablet main{max-width:1380px}}
@media(max-width:680px){body.layoutTablet main{max-width:100%}}
body[data-tier=free] #quickCourtPlayers{display:none!important}body[data-tier=free] #lineupAction{display:none!important}body[data-tier=free] #shotSection{display:none!important}body[data-tier=free] .premiumOnly{display:none!important}
@media print{header,.appNav,.planStrip,.focusControls,.gamebar,.betaToolbar,.bar,footer{display:none!important}}

/* Stataru lineup visibility: high-contrast on-court and bench states. */
.player.onCourt,.playerChip.onCourt{background:#d4f4dc;border:2px solid #21884c;color:#124828}
.player.onBench,.playerChip.onBench{background:#ffe1e1;border:2px solid #b93c49;color:#77202c}
.player.onCourt.recent,.player.onBench.recent{outline:2px solid #0B1F44;outline-offset:1px}
.playerChip.onCourt.active,.playerChip.onBench.active{outline:3px solid #0B1F44;outline-offset:1px;box-shadow:inset 0 0 0 1px #fff}
.player .lineupBadge{display:block;margin-top:4px;font-size:.66rem;letter-spacing:.035em;font-weight:800}
.playerChip .lineupBadge{font-size:.69rem;font-weight:800;margin-left:4px}
.lineupKey{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:9px 0 3px;font-size:.78rem;font-weight:700}
.lineupKey .keyOn{color:#16643a}.lineupKey .keyOff{color:#992c36}
.playerChips .playerChip{flex:0 0 auto}
@media(prefers-contrast:more){.player.onCourt,.playerChip.onCourt{border-color:#0c572a}.player.onBench,.playerChip.onBench{border-color:#8c1d2c}}
/* v7.2: both-team player selectors, stat popup and direct bench-to-court drag */
.quickTeamRosterGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:9px}
.quickRosterTeam{border:1px solid #cad9e6;background:#f7f9fc;border-radius:11px;padding:8px;min-width:0}
.quickRosterTeam.current{box-shadow:inset 0 0 0 2px var(--teal)}
.quickRosterHead{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:5px;flex-wrap:wrap;font-size:.83rem}
.quickRosterHead strong{color:var(--navy)}
.quickRosterHead .btn{min-height:34px;padding:5px 9px;font-size:.74rem}
.quickRosterPlayers{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px}
.quickRosterPlayers .playerChip{white-space:normal;text-align:left;min-height:45px;padding:8px 10px;touch-action:pan-y}
.quickRosterPlayers .playerChip.benchDraggable,.lineup-player.benchDraggable{touch-action:none;cursor:grab}
.quickRosterPlayers .playerChip.dragTarget,.lineup-player.dragTarget{outline:3px dashed #006a56;outline-offset:2px}
.quickRosterPlayers .playerChip.dragSource,.lineup-player.dragSource{opacity:.55}
.quickRosterPlayers .playerChip.teamOnly{background:#e2e9f6}
.dragHelp{font-size:.73rem;color:#55647a;line-height:1.3;margin:7px 1px 0}
.statChoiceGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}
.statChoiceGrid .stat{min-height:62px;font-size:.83rem}
.statChoiceModal{max-width:650px}
@media(max-width:700px){.quickTeamRosterGrid{grid-template-columns:1fr}.quickRosterTeam:not(.current){display:none}.statChoiceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.statChoiceGrid .stat{min-height:55px;padding:6px 3px;font-size:.75rem}}
@media(min-width:701px){.quickCourtPlayers{margin:7px 0}.quickRosterPlayers .playerChip{flex:0 0 auto}}

/* v7.3 — Always-visible scoreboard, independent quick-score controls. */
.scoreDock{position:sticky;top:0;z-index:5;background:var(--canvas);padding:2px 0 3px;box-shadow:0 5px 10px -12px #111}
.scoreDock .clockbox{position:relative;top:auto;margin:2px 0 5px;z-index:auto}
.scoreDock .scoreboardView{position:relative;top:auto;z-index:auto}

.scoreboardView{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;position:sticky;top:0;z-index:3;background:var(--canvas);padding:5px 0;margin:5px 0 8px}
.scoreboardView .scorecard{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:88px;padding:8px 6px}
.scoreboardView .scorebig{font-size:clamp(2.2rem,6vw,3.7rem);padding:0;line-height:1}
.scoreboardView .scorecard h2{margin:0 0 4px;font-size:.83rem;text-align:center}
.scoreboardView .foulbig{margin-top:5px;font-size:.8rem}
.quickScoringPanel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:6px 0 10px}
.quickScoringPanel[hidden]{display:none!important}
.quickScoringPanel .quickTeam{padding:8px;min-width:0}
.quickScoringPanel h3{font-size:.88rem;margin:1px 0 6px;color:var(--navy)}
.quickScoringPanel .quickBtn{min-height:42px}
.quickScoringPanel .quickCaption{margin:6px 0 3px}
@media(max-width:680px){.scoreboardView{top:0}.scoreboardView .scorecard{min-height:78px}.quickScoringPanel{gap:6px}.quickScoringPanel .quickTeam{padding:6px}.quickScoringPanel .quickBtn{min-height:48px}.quickScoringPanel h3{font-size:.75rem}.quickScoringPanel .quickTrack{font-size:.71rem}.scoreboardView .scorebig{font-size:2.65rem}}
@media(min-width:900px) and (orientation:landscape){body.focusMode .scoreboardView .scorecard{min-height:70px}body.focusMode .quickScoringPanel .quickBtn{min-height:34px}body.focusMode .quickScoringPanel .quickCaption{margin:2px 0}}
.lineup-add-form{margin:12px 0;padding:12px;border:1px solid #cad9e6;background:#f5f9ff;border-radius:12px}
.lineup-add-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px;color:#0b1f44;font-size:.88rem;margin-bottom:8px}
.lineup-add-heading span{font-size:.75rem;color:#4a5870}
.lineup-add-fields{display:grid;grid-template-columns:minmax(75px,.5fr) minmax(120px,1.6fr) auto;gap:8px;align-items:end}
.lineup-add-fields label{font-size:.78rem;font-weight:700;color:#102d55}
.lineup-add-fields input{display:block;width:100%;margin-top:4px;min-height:40px;padding:8px;border:1px solid #8a94a6;border-radius:8px;font-size:16px;background:white;color:#102d55}
.lineup-add-fields .btn{min-height:40px}
@media(max-width:510px){.lineup-add-fields{grid-template-columns:1fr 2fr}.lineup-add-fields .btn{grid-column:1/-1}}

/* v7.5: two-field team roster editor and lineup entry */
.roster-editor{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.roster-edit-row{display:grid;grid-template-columns:minmax(72px,.5fr) minmax(110px,1.5fr) auto;align-items:end;gap:7px;padding:8px;border:1px solid #d4dce8;border-radius:10px;background:#f9fbff}
.roster-edit-row label{display:block;font-size:.77rem;color:#18335a;font-weight:700}
.roster-edit-row input{width:100%;min-height:41px;margin-top:4px;padding:8px;border:1px solid #8a94a6;border-radius:8px;background:white;color:#132745;font-size:16px}
.roster-edit-row .roster-remove{min-height:41px;color:#9d202b}
.roster-editor-empty{font-size:.82rem;color:#64748b;padding:10px 0}
@media(max-width:430px){.roster-edit-row{grid-template-columns:80px minmax(0,1fr)}.roster-edit-row .roster-remove{grid-column:1/-1;min-height:32px}}

/* v7.5.1: responsive Settings roster editor; field groups never overflow. */
#settingsVeil .modal{width:min(940px,calc(100vw - 24px));max-width:100%;}
#settingsVeil .gridform{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
#settingsVeil .gridform>div{min-width:0;}
#settingsVeil .roster-edit-row{min-width:0;grid-template-columns:minmax(66px,0.65fr) minmax(0,1.65fr) auto;gap:8px;}
#settingsVeil .roster-edit-row label{min-width:0;}
#settingsVeil .roster-edit-row input{min-width:0;max-width:100%;}
#settingsVeil .roster-remove{white-space:nowrap;padding:9px 10px;font-size:.82rem;}
@media(max-width:820px){
 #settingsVeil .gridform{grid-template-columns:minmax(0,1fr);gap:16px;}
 #settingsVeil .roster-edit-row{grid-template-columns:minmax(74px,100px) minmax(0,1fr) auto;}
}
@media(max-width:420px){
 #settingsVeil .modal{width:100%;}
 #settingsVeil .roster-edit-row{grid-template-columns:minmax(67px,85px) minmax(0,1fr);}
 #settingsVeil .roster-remove{grid-column:1/-1;width:100%;min-height:36px;}
}
.v9board{border:1px solid #dae4ef;background:#fff;padding:15px;border-radius:14px;margin:12px 0}.v9row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}.v9row h2{margin:0;color:#0B1F44}.v9row select{min-height:44px;border:1px solid #cad7e5;border-radius:9px;padding:8px;max-width:100%;background:white}.v9tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v9tile{background:#edf3f8;text-align:center;padding:9px 4px;border-radius:10px}.v9tile b{font-size:1.55rem;display:block;color:#0B1F44}.v9tile small{font-size:.73rem}.v9table{overflow:auto}.v9table table{border-collapse:collapse;min-width:640px;width:100%;font-size:.78rem}.v9table td,.v9table th{border-bottom:1px solid #dce4ef;padding:8px;text-align:right}.v9table td:first-child,.v9table th:first-child{text-align:left}.v9game{border:1px solid #dce5ef;padding:9px;border-radius:10px;margin:6px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px}.v9game small{display:block;color:#65748b}.v9chart{max-width:560px;margin:auto}.v9chart svg{width:100%}.v9filters{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.v9filters select{min-height:43px;border:1px solid #cad7e5;border-radius:8px;padding:7px;background:white}@media(max-width:630px){.v9tiles{grid-template-columns:repeat(2,1fr)}.v9board{padding:10px}}

/* Fire tablet: keep Save Settings visible and large enough for touch. */
#settingsVeil .settings-save-actions{position:sticky;bottom:-1px;background:#fff;border-top:1px solid #d8dfeb;padding:12px 4px max(12px,env(safe-area-inset-bottom));z-index:6;justify-content:flex-end;box-shadow:0 -8px 20px #fff9}
#settingsVeil .settings-save-actions .btn{min-height:48px;touch-action:manipulation;}
#settingsVeil .settings-save-message{margin:10px 0;padding:10px 12px;border:1px solid #c65d5d;background:#fff0f0;color:#812c2c;border-radius:8px;overflow-wrap:anywhere;font-weight:600}
@media(max-width:700px){#settingsVeil .settings-save-actions .btn{flex:1;}}

/* Stataru v11 — setup and event organizer */
#v11veil{z-index:2600} #v11veil .modal{width:min(970px,96vw);max-width:970px;max-height:94dvh;overflow:auto;padding:18px 22px}#v11veil .v11top{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-18px;background:var(--panel,#fff);padding:12px 0;z-index:3;border-bottom:1px solid #cbd5df}#v11veil .v11tabs{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}#v11veil .v11tabs button{flex:1;min-width:110px}#v11veil .v11grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#v11veil label{display:block;font-weight:650;font-size:.89rem;margin:9px 0 4px}#v11veil input:not([type=checkbox]):not([type=color]),#v11veil select{display:block;width:100%;max-width:100%;padding:12px;border:1px solid #98a8b8;border-radius:10px;font:inherit;min-height:44px;background:#fff;color:#14243a}#v11veil button{min-height:42px}#v11veil .v11card{border:1px solid #bac8d5;border-radius:13px;padding:12px;margin:10px 0;background:#fff;color:#14243a}#v11veil .v11muted{font-size:.87rem;color:#526378}#v11veil .v11actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}#v11veil .v11option{display:block;border:2px solid #c4d0db;border-radius:12px;padding:14px;margin:9px 0;cursor:pointer}#v11veil .v11option:has(input:checked){border-color:#008f80;background:#e6f9f5}#v11veil .v11option input{margin-right:8px}#v11veil .v11roster{display:grid;grid-template-columns:minmax(64px,85px) minmax(0,1fr) 43px;gap:8px;align-items:center;margin:8px 0}#v11veil .v11jersey{display:inline-flex;align-items:center;justify-content:center;min-width:37px;height:40px;padding:5px 8px;color:#fff;background:var(--jersey-color,#0B1F44);border:2px solid #fff;outline:1px solid #798a9a;clip-path:polygon(20% 2%,36% 0%,41% 13%,59% 13%,64% 0%,80% 2%,100% 24%,85% 43%,85% 100%,15% 100%,15% 43%,0% 24%);font-weight:850;font-variant-numeric:tabular-nums;font-size:.88rem;flex-shrink:0}#v11veil .v11progress{height:6px;background:#dce3e9;border-radius:8px;overflow:hidden}#v11veil .v11progress>span{height:100%;background:#00a991;display:block}#v11veil .v11colorgrid{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}#v11veil .v11colorpick{min-height:44px;width:44px;border-radius:12px;border:3px solid white;outline:1px solid #7a8999;cursor:pointer}#v11veil .v11colorpick.selected{outline:3px solid #00a991}#v11veil .v11review{display:grid;grid-template-columns:1fr 1fr;gap:10px}#v11veil .v11review div{background:#f1f5f8;border-radius:9px;padding:12px}#v11veil .v11error{color:#ad1d2a;font-weight:650}#v11veil .v11schedule{display:flex;align-items:center;gap:8px;justify-content:space-between;border-bottom:1px solid #e2e8f0;padding:10px 0}#v11veil .v11smallbutton{font-size:.78rem;min-height:34px}.v11teamTag{display:inline-flex;align-items:center;gap:4px;white-space:normal}.v11teamDot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #7d8390;margin-right:5px}.v11PlayerJersey{display:inline-flex;align-items:center;justify-content:center;padding:4px 6px;min-width:29px;height:32px;line-height:1;font-size:.81rem;color:#fff;background:var(--jersey-color,#0B1F44);clip-path:polygon(20% 0,37% 0,42% 14%,58% 14%,63% 0,80% 0,100% 25%,85% 43%,85% 100%,15% 100%,15% 43%,0 25%);font-weight:900;margin-right:7px}.scorecard{border-top:5px solid var(--team-color,#0B1F44)}.quickTeam{border-top:5px solid var(--team-color,#0B1F44)}#v11veil .btn{cursor:pointer}@media(max-width:680px){#v11veil .modal{width:100vw;max-height:96dvh;padding:12px}#v11veil .v11grid,#v11veil .v11review{grid-template-columns:1fr}#v11veil .v11tabs button{min-width:75px;font-size:.85rem}}

/* v12 visual court tracker – never overlays Classic mode unless selected */
.v12ModeSwitch{display:inline-flex;gap:5px;background:#e9eff7;border-radius:12px;padding:4px;flex-wrap:wrap}
.v12ModeSwitch .btn{padding:9px 12px;font-size:.88rem}.v12ModeSwitch .v12chosen{background:#0B1F44!important;color:white!important;border-color:#0B1F44!important}
#v12CourtWrap[hidden],#v12ShotVeil[hidden]{display:none!important}
#v12CourtWrap{margin:12px auto 14px;max-width:1550px;background:#0B1F44;border-radius:16px;padding:12px;color:#fff;box-shadow:0 5px 23px #121d3266}
.v12CourtHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;flex-wrap:wrap}.v12CourtHeading .btn{background:#fff;color:#0B1F44}
.v12CourtFrame{position:relative;width:100%;aspect-ratio:2.02 / 1;background:#edcd96;border-radius:9px;overflow:hidden;border:3px solid #c69156;isolation:isolate;touch-action:manipulation}
.v12CourtDrawing{position:absolute;width:100%;height:100%;inset:0;pointer-events:none}
.v12CourtHud{position:absolute;top:3%;left:34%;width:32%;height:29%;background:#0B1F44f2;border:2px solid #00E5C2;border-radius:12px;color:#fff;z-index:2;padding:5px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center}
.v12HudScores{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px}.v12HudScores strong{font-size:clamp(16px,2.7vw,43px);line-height:1;font-variant-numeric:tabular-nums}.v12HudScores small{display:block;font-size:clamp(8px,.9vw,12px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v12HudTime{font-size:clamp(10px,1.5vw,21px);font-variant-numeric:tabular-nums;color:#00E5C2;font-weight:850}
.v12HudBottom{display:flex;justify-content:space-around;align-items:center;width:100%;gap:5px;font-size:clamp(9px,1vw,13px)}
.v12TimerControls{display:flex;gap:5px}.v12ClockBtn{min-height:30px;min-width:36px;border:1px solid #acbcd0;background:#194f41;color:#fff;border-radius:6px;font-size:14px;font-weight:800}.v12ClockBtn.stop{background:#872e3b}
.v12StatZone{position:absolute;top:65%;left:32%;width:36%;height:33%;z-index:3;background:#0B1F44f2;border:2px solid #00E5C2;border-radius:11px;padding:4px 7px;display:flex;flex-direction:column;justify-content:center;gap:4px}
.v12SelectedText{font-size:clamp(9px,1vw,14px);color:#fff;text-align:center;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v12StatGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.v12StatBtn{background:#fff;color:#102347;border:none;border-radius:5px;font-weight:750;font-size:clamp(8px,.95vw,13px);min-height:clamp(23px,3.5vw,43px);padding:2px;white-space:normal;line-height:1.05}.v12StatBtn.made{background:#d8f6e9}.v12StatBtn.miss{background:#ffe5df}.v12StatBtn:disabled{opacity:.55}
.v12Jersey{position:absolute;z-index:4;width:9%;height:19%;padding:0;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;border:2px solid transparent;border-radius:8px;background:transparent;color:#102347;touch-action:none;user-select:none;-webkit-user-select:none}
.v12Jersey .v12Shirt{width:clamp(24px,4.2vw,58px);height:70%;max-height:61px;display:flex;align-items:center;justify-content:center;clip-path:polygon(23% 0%,39% 10%,61% 10%,77% 0%,100% 23%,84% 44%,77% 37%,77% 100%,23% 100%,23% 37%,16% 44%,0% 23%);background:var(--jcolor,#0B1F44);color:var(--jtext,#fff);font-size:clamp(12px,2vw,25px);font-weight:900;filter:drop-shadow(0 1px 2px #333)}
.v12Jersey .v12Name{display:block;max-width:100%;background:#fffef0f0;font-size:clamp(8px,.92vw,12px);font-weight:800;border-radius:5px;padding:1px 3px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v12Jersey.selected{border:3px solid #00E5C2;background:#008e7a33;box-shadow:0 0 0 3px #0B1F44;border-radius:8px}.v12Jersey.onCourt:focus-visible{outline:4px solid #00e5c2}.v12CourtBadge{position:absolute;right:-5px;top:-5px;color:#fff;background:#177b48;border:1px solid #fff;border-radius:10px;font-size:9px;padding:0 3px}.v12BenchBadge{background:#af344c}
.v12CourtBench{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.v12BenchTeam{min-width:0;border:1px solid #8393ab;border-radius:10px;padding:8px}.v12BenchTitle{font-size:.8rem;font-weight:800;margin-bottom:5px}.v12BenchList{display:flex;flex-wrap:wrap;gap:6px;min-height:52px;align-items:center}.v12BenchPlayer{touch-action:none;user-select:none;border:2px solid #ae344b;border-radius:9px;background:#fff5f5;color:#152137;display:flex;gap:5px;align-items:center;padding:4px 6px;font-weight:750;font-size:.75rem;min-height:43px}.v12BenchPlayer .v12Shirt{clip-path:polygon(23% 0%,39% 10%,61% 10%,77% 0%,100% 23%,84% 44%,77% 37%,77% 100%,23% 100%,23% 37%,16% 44%,0% 23%);background:var(--jcolor);color:var(--jtext);width:31px;height:35px;display:flex;align-items:center;justify-content:center;font-weight:900}.v12BenchEmpty{color:#d0d8e5;font-size:.78rem}
.v12CourtTools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:9px}.v12CourtTools .btn{background:#fff;color:#0B1F44}.v12CourtHelp{color:#dde5f2;font-size:.79rem;margin:6px 0}
body.v12CourtActive #livePage>.bar,body.v12CourtActive #livePage>.clockbox,body.v12CourtActive #livePage>.lineup-action,body.v12CourtActive #livePage>.scoreboardView,body.v12CourtActive #livePage>.quickScoringPanel,body.v12CourtActive #livePage>.mobileScoreboard,body.v12CourtActive #livePage>.mobileHint,body.v12CourtActive #livePage>.quickCourtPlayers,body.v12CourtActive #livePage>.layout,body.v12CourtActive #livePage>#boxSection,body.v12CourtActive #livePage>#shotsSection,body.v12CourtActive #livePage>#historySection{display:none!important}
body.v12CourtActive main{max-width:1590px}
#v12ShotVeil{position:fixed;inset:0;background:#07162cf0;z-index:40;display:flex;align-items:center;justify-content:center;padding:12px;color:#fff}
.v12ShotPanel{width:min(1300px,100%);max-height:98dvh;display:flex;flex-direction:column;gap:8px}.v12ShotTitle{font-size:clamp(16px,2.4vw,27px);font-weight:800}.v12ShotCanvas{width:100%;aspect-ratio:2 / 1;border:4px solid #fff;border-radius:10px;max-height:75dvh;background:#f2d8ab;touch-action:manipulation}
.v12ShotActions{display:flex;gap:9px;flex-wrap:wrap}.v12ShotActions .btn{min-height:45px}
.v12DragGhost{position:fixed;z-index:90;pointer-events:none;opacity:.85;transform:translate(-50%,-50%);background:#fff;color:#0B1F44;border:2px solid #00E5C2;padding:9px 14px;border-radius:9px;font-weight:800}
@media(max-width:820px) and (orientation:landscape){#v12CourtWrap{padding:5px;margin-top:4px}.v12CourtHud{height:32%;padding:2px}.v12StatZone{height:35%;top:63%;padding:2px}.v12StatGrid{gap:2px}.v12Jersey .v12Shirt{height:60%}.v12CourtBench{gap:4px}.v12BenchTeam{padding:4px}.v12BenchList{gap:3px}.v12BenchPlayer{padding:2px;min-height:36px}.v12StatBtn{min-height:22px;font-size:8px}}
@media(orientation:portrait) and (max-width:700px){#v12CourtWrap{overflow:hidden}.v12CourtFrame{min-width:700px}#v12CourtWrap .v12Viewport{overflow:auto}.v12CourtHelp:after{content:' For the full layout, rotate to landscape.'}.v12CourtBench{grid-template-columns:1fr}}


/* Hide Classic-only sections by ID in court mode, regardless of their nesting. */
body.v12CourtActive #livePage .bar,body.v12CourtActive #clockBox,body.v12CourtActive #lineupAction,body.v12CourtActive #scoreboardView,body.v12CourtActive #quickScoringPanel,body.v12CourtActive #mobileScoreboard,body.v12CourtActive #quickCourtPlayers,body.v12CourtActive #teamPanels,body.v12CourtActive #boxSection,body.v12CourtActive #shotsSection,body.v12CourtActive #historySection{display:none!important}
body.v12CourtActive #livePage .mobileHint{display:none!important}
@media(min-width:850px) and (orientation:landscape){body.v12CourtActive #v12CourtWrap{max-width:min(1550px,calc((100dvh - 265px)*2));margin-left:auto;margin-right:auto}.v12CourtFrame{max-height:calc(100dvh - 265px)} }

/* Stataru v13: reliability, court stability, and accessible support */
body.v12CourtActive .appNav,body.v12CourtActive .planStrip,body.v12CourtActive #focusControls,body.v12CourtActive .betaToolbar{display:none!important}
body.v12CourtActive header{padding-top:7px;padding-bottom:7px;min-height:50px}
body.v12CourtActive main{padding-top:1px}

#v13SaveWarning[hidden]{display:none!important}
#v13SaveWarning{position:fixed;top:0;left:0;right:0;z-index:2100;background:#8b1c25;color:white;padding:12px 18px;font-weight:750;border-bottom:4px solid #ffbf68;box-shadow:0 4px 15px #0003}
#v13SaveWarning button{background:white;color:#651722;border:0;border-radius:7px;padding:8px 12px;margin-left:8px;font-weight:800}
#v13HelpSearch{width:100%;min-height:46px;padding:12px;font-size:16px;border:1px solid #b4c2d6;border-radius:9px;margin:10px 0}
#helpVeil .modal{width:min(800px,96vw);max-width:800px}
.v13Help section{border-bottom:1px solid #d8e1e9;padding:10px 0 17px}.v13Help section h3{color:#0b1f44;margin-bottom:8px}
.v13Help section p,.v13Help section li{line-height:1.55;font-size:.92rem;color:#344054}
.v13Help section details{margin:9px 0;border:1px solid #d5dfeb;border-radius:9px;padding:10px 12px}.v13Help section summary{font-weight:750;cursor:pointer}
.v12StatBtn:focus-visible,.v12Jersey:focus-visible,.v12BenchPlayer:focus-visible{outline:3px solid #00E5C2;outline-offset:2px}
@media (min-width:900px) and (orientation:landscape){body.v12CourtActive #v12CourtWrap{max-width:min(1500px,calc((100dvh - 410px)*2));margin-top:3px;padding:8px}body.v12CourtActive .v12CourtFrame{max-height:calc(100dvh - 340px)}body.v12CourtActive .v12CourtBench{margin-top:4px}body.v12CourtActive .v12BenchTeam{padding:4px}body.v12CourtActive .v12BenchPlayer{min-height:37px}body.v12CourtActive .v12CourtHeading{margin-bottom:3px}body.v12CourtActive .v12CourtHelp{margin:3px 0}body.v12CourtActive .v12CourtTools{margin-top:4px}}
@media(max-width:900px) and (orientation:landscape){body.v12CourtActive #v12CourtWrap{padding:5px}body.v12CourtActive .v12CourtFrame{max-height:calc(100dvh - 260px)}body.v12CourtActive .v12BenchPlayer{min-height:33px}}

/* Refinement: use the same vector identity in both the header and installed icon. */
.brandmark{background:none;box-shadow:none;overflow:hidden}

/* v17.0: clear, deliberate end-of-game and game-switch controls */
.v170Veil[hidden]{display:none!important}.v170Veil.open{display:flex!important}.v170Modal{max-width:520px;width:min(94vw,520px);max-height:91dvh;overflow:auto}.v170Choices{display:grid;gap:11px;margin:16px 0}.v170Choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;gap:6px;padding:17px 18px;border-radius:14px;border:1.5px solid #abc5d0;background:#f5f9fb;color:#112e44;min-height:78px;cursor:pointer;box-shadow:0 3px 9px rgba(12,43,67,.08)}.v170Choice strong{font-size:1rem;line-height:1.25}.v170Choice small{font-size:.83rem;line-height:1.4;color:#365b6a}.v170Choice:focus-visible,.v170Choice:hover{outline:3px solid #1b98ac;outline-offset:1px}.v170Preferred{border-color:#17878c;background:#e9f7f5}.v170Danger{border-color:#c6a2a2;background:#fff7f5}.v170Guard{background:#fff2ed;border:1px solid #cf8d79;border-radius:12px;padding:12px;display:grid;gap:12px}.v170Guard[hidden]{display:none!important}.v170Guard label{display:flex;align-items:center;gap:8px}.v170FinishAction{white-space:nowrap;border-color:#14847f!important}.v170EndVeil .v170Choice{width:100%}@media(max-width:600px){.v170FinishAction{font-size:.81rem;padding:10px 9px}.gamebar{flex-wrap:wrap}.v170Modal{max-height:87dvh}}

/* v17.1 — intentionally small, glanceable game-day control surface. */
.v171GameDay{border:1px solid #9ebcc9;border-radius:18px;background:linear-gradient(160deg,#f5fafc,#e7f3f6);box-shadow:0 7px 20px #123d5220;padding:13px;margin:12px 0;color:#103149}
.v171Top{display:flex;gap:9px;flex-wrap:wrap;align-items:center;justify-content:space-between}.v171Title{font-weight:900;letter-spacing:.01em}.v171Stage{font-weight:800;background:#143a54;color:white;border-radius:40px;padding:6px 12px;font-size:.79rem}.v171Stage.break{background:#985a19}.v171Status{font-size:.76rem;color:#39596c;margin:5px 0 9px}
.v171ButtonRow{display:flex;gap:7px;flex-wrap:wrap}.v171GameDay button{border-radius:11px;border:1px solid #91adbf;background:white;color:#11344c;min-height:45px;padding:9px 12px;font:inherit;font-weight:760;cursor:pointer;touch-action:manipulation}.v171GameDay button:focus-visible{outline:3px solid #0a8894;outline-offset:2px}.v171GameDay button:disabled{opacity:.44;cursor:not-allowed}.v171GameDay .v171Main{background:linear-gradient(140deg,#087e8e,#005b7b);border-color:#087e8e;color:white;box-shadow:0 3px 8px #07556a44}.v171GameDay .v171Break{background:#fff2df;border-color:#bd9460}.v171GameDay .v171ScoreBtn{font-size:1.02rem;font-variant-numeric:tabular-nums;min-width:56px}.v171Quick{display:grid;gap:9px}.v171TeamRow{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.v171TeamRow strong{min-width:65px;font-size:.83rem}.v171TeamRow button{flex:1 1 auto}.v171GameDay details{border-top:1px solid #bdced7;padding-top:9px;margin-top:9px}.v171GameDay summary{cursor:pointer;font-weight:800;min-height:33px}.v171Last{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:9px 0;border-top:1px solid #c5d8df;margin-top:10px;font-size:.88rem}.v171LastText{min-width:0;flex:1}.v171LastControls{display:flex;gap:5px}.v171LastControls button{min-height:38px;padding:7px;font-size:.83rem}.v171Favorite{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.v171Favorite select{min-height:43px;min-width:125px;max-width:100%;border:1px solid #91adbf;border-radius:9px;padding:8px;font:inherit}.v171Favorite button{min-height:43px}
.v171Shade{position:fixed;inset:0;z-index:190000;background:#061e32c9;display:flex;align-items:center;justify-content:center;padding:12px}.v171Shade[hidden]{display:none!important}.v171Dialog{width:min(96vw,610px);max-height:91dvh;overflow:auto;background:#f8fbfd;color:#132f45;border-radius:19px;border:1px solid #7faab8;padding:18px;box-shadow:0 20px 60px #0006}.v171DialogTop{display:flex;align-items:center;justify-content:space-between;gap:8px}.v171Dialog h2{margin:0 0 12px;font-size:1.25rem}.v171Dialog label{display:grid;gap:6px;font-weight:780;margin:10px 0}.v171Dialog select,.v171Dialog input,.v171Dialog textarea{padding:11px;border:1px solid #90adbc;border-radius:9px;font:inherit;max-width:100%;background:white;color:#112e43}.v171Dialog textarea{width:100%;min-height:100px}.v171Dialog .btn{min-height:45px;margin:4px}.v171Dialog .v171Danger{background:#fff0ec;color:#8a2515;border:1px solid #dcb5ac}.v171Dialog hr{border:0;border-top:1px solid #d0e0e6;margin:14px 0}.v171Dialog .v171Panel{border:1px solid #d0e1e8;border-radius:12px;padding:12px;background:#eff7f9;margin:8px 0}.v171Dialog .v171Muted{color:#4a6472;font-size:.85rem}.v171LineupCourtArt{position:absolute;inset:0;pointer-events:none;overflow:hidden}.v171LineupCourtArt svg{width:100%;height:100%;display:block}.v167Court .v171LineupCourtArt svg{preserveAspectRatio:xMidYMid meet}
@media(max-width:600px){.v171GameDay{padding:10px;margin:8px 0}.v171GameDay button{padding:8px 9px;min-height:47px}.v171TeamRow strong{min-width:47px}.v171Last{flex-wrap:wrap}.v171LastControls{margin-left:auto}.v171ButtonRow{display:grid;grid-template-columns:1fr 1fr}.v171ButtonRow button{min-width:0}.v171GameDay .v171ScoreBtn{min-width:52px}.v171Dialog{padding:13px}}

/* v17.7.1: Active-game transition must always be above Game Setup (z-index 2600).
   The previous z-index 10 made Start Game appear unresponsive while it awaited a hidden choice. */
#v170NewGameVeil.open{z-index:6000!important;align-items:center;isolation:isolate;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));background:rgba(10,23,43,.76)}
#v170NewGameVeil .v170Modal{max-height:calc(100dvh - 34px);overflow-y:auto;overscroll-behavior:contain;position:relative;z-index:1}
#v170NewGameVeil .v170Choice{min-height:65px}
@media(max-width:600px){#v170NewGameVeil.open{align-items:center}#v170NewGameVeil .v170Modal{width:min(98vw,520px);max-height:calc(100dvh - 30px);border-radius:16px;padding:16px 14px max(16px,env(safe-area-inset-bottom))}}


/* v17.8: clarity on game and competition deletion */
#v178DiscardHome{display:block;margin:12px auto 0;background:transparent;color:#9b3030;border:1px solid #af6262;border-radius:9px;padding:11px 18px;font-weight:700;cursor:pointer;min-height:45px}
#v178DiscardHome[hidden]{display:none!important}
#v178DiscardVeil{position:fixed;inset:0;z-index:7100;background:#091224bd;display:none;align-items:center;justify-content:center;padding:16px;overflow-y:auto}
#v178DiscardVeil.open:not([hidden]){display:flex}
#v178DiscardBox{background:#fff;color:#1a2640;max-width:520px;width:100%;border-radius:18px;padding:22px;box-shadow:0 18px 45px #0006}
#v178DiscardBox h2{margin:0 0 10px}#v178DiscardBox .v178Choice{display:block;margin:14px 0;padding:14px;background:#fff4f2;border:1px solid #c89891;border-radius:12px}
#v178DiscardBox label{display:flex;gap:10px;align-items:start;line-height:1.5}#v178DiscardBox input{width:19px;height:19px;flex:none}
#v178Status:not(:empty){font-weight:700;color:#9b3030;margin:12px 0}
.v178ManageSetups{border:2px solid #b8c9dd!important}.v178SetupRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 4px;border-bottom:1px solid #d9e3ef}.v178SetupInfo{min-width:0;flex:1}.v178SetupRow small{display:block;color:#566681;margin-top:4px;line-height:1.45}.v178SetupActions{display:flex;gap:6px;flex-wrap:wrap}.v178Type{font-size:11px;font-weight:700;background:#e8eff7;border-radius:10px;padding:3px 7px}#v178Removed{margin-top:16px;padding:12px;background:#f5f7fa;border-radius:10px}#v178Removed summary{font-weight:700;cursor:pointer}.v178TrashHeader{margin:12px 0;display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}
@media(max-width:560px){.v178SetupRow{align-items:stretch;flex-direction:column}.v178SetupActions{width:100%}.v178SetupActions .btn{flex:1}#v178DiscardBox{padding:17px}}

/* v18.7 visual-brand refresh: layout, scoring, data and behavior unchanged */
:root { --navy:#0B2545; --teal:#14B8A6; --orange:#FF7A00; }
.brandword { letter-spacing:-.035em; }
.brandmark { width:36px; height:36px; border-radius:9px; }
.brandmark img { width:100%;height:100%; }

/* v18.17: Home-screen refresh, improved game-entry choices, and responsive visual polish. */
:root{--navy:#0B2545;--teal:#14B8A6;--orange:#FF7A00;--canvas:#F3F7FB;--ink:#14273B}
body{background:var(--canvas)}
header{background:linear-gradient(110deg,#081F39,#12385B);border-bottom:2px solid #14B8A675;box-shadow:0 2px 13px rgba(11,37,69,.12);min-height:65px}
header>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}
header .brandword{display:inline-flex;align-items:center;flex:0 0 auto}
header .stataruHeaderLogo{width:46px;height:46px;display:block;object-fit:contain;border-radius:12px;box-shadow:0 3px 12px #0003;background:none;padding:0}
header .tag{font-size:.8rem;color:#CFDDE9;letter-spacing:.02em;max-width:230px;line-height:1.3}
header .header-actions{flex-wrap:nowrap}
header .header-actions .btn{background:#ffffff10;color:#fff;border-color:#ffffff40;border-radius:10px}
header .header-actions .btn:hover{background:#ffffff24}
#appHome{background:linear-gradient(155deg,#F2F9FB 0%,#F4F7FC 56%,#F9FBFD 100%);padding-top:max(20px,env(safe-area-inset-top));}
#appHome .home-container{max-width:1040px}
#appHome .home-top{margin-bottom:20px;align-items:center;gap:14px}
#appHome .home-badge{min-width:0;gap:15px;align-items:center}
#appHome .home-badge .stataruHomeLogo{width:clamp(205px,32vw,345px);height:auto;max-height:128px;display:block;object-fit:contain;object-position:left center;border:0;box-shadow:none;border-radius:0;background:none}
#appHome .home-badge small{font-size:.78rem;line-height:1.35;letter-spacing:.02em;color:#567085;white-space:normal}
#appHome .home-card{background:linear-gradient(115deg,#092440,#123d5d);border:1px solid #1f5772;border-radius:20px;box-shadow:0 12px 28px rgba(11,37,69,.14);padding:clamp(18px,3vw,28px);margin-bottom:17px}
#appHome .home-card::before{border-color:#14B8A64F;right:-85px;top:-125px}
#appHome .home-eyebrow{color:#80F1D9;letter-spacing:.075em}
#appHome .home-main-btn{background:linear-gradient(120deg,#F97817,#F2600B);box-shadow:0 5px 0 #9e370d44;color:#fff;border-radius:12px;min-height:54px}
#appHome .home-main-btn:hover{filter:brightness(1.04)}
#appHome .home-actions{gap:12px;align-items:stretch}
#appHome .home-tile{background:#fff;border:1px solid #D5E3EA;box-shadow:0 3px 11px #102A4610;border-radius:15px;padding:16px;min-height:125px;line-height:1.3;transition:background .12s,border-color .12s,box-shadow .12s;overflow-wrap:anywhere}
#appHome .home-tile:hover{border-color:#14B8A6;background:#F9FEFD;box-shadow:0 5px 16px #0B254519}
#appHome .home-tile:focus-visible{outline:3px solid #008F87;outline-offset:3px}
#appHome .homeGlyph{display:grid;place-items:center;width:38px;height:38px;border:1px solid #B8E5DF;border-radius:11px;background:#E7F8F5;color:#0D6B6B;margin:0 0 10px}
#appHome .homeGlyph svg{width:23px;height:23px;display:block}
#appHome .home-tile .v189TileDesc{font-size:.81rem;line-height:1.42;color:#4A6375;margin-top:5px;font-weight:480}
#homeNew{order:1}#v11homeTeams{order:2}#v11homeEvents{order:3}#homeArchive{order:4}#homeAnalysis{order:5}#homeSettings{order:6}
#appHome .home-hint{background:#E8F3F5;color:#37556A;border-radius:11px;border:1px solid #CEDFE8;padding:12px 14px;margin-top:17px;font-size:.81rem}
.btn{transition:background-color .12s,border-color .12s}
.btn.primary{background:#0B4568;border-color:#0B4568}
.panel{border-radius:14px;border-color:#D7E3ED;box-shadow:0 3px 12px #102A460B}
.appNav{background:#E5ECF3;gap:5px}
.navBtn.selected{color:#0B2545;box-shadow:0 2px 8px #0B254521}
@media(max-width:700px){
 header{padding-left:11px;padding-right:11px;min-height:60px;gap:8px}
 header>div:first-child{gap:7px}
 header .stataruHeaderLogo{width:42px;height:42px}
 header .tag{display:none}
 header .header-actions{gap:5px}
 header .header-actions .btn{min-height:43px;padding:8px 9px;font-size:.78rem}
 #appHome .home-badge{flex-wrap:wrap;gap:4px}
 #appHome .home-badge .stataruHomeLogo{width:min(250px,69vw);max-height:110px}
 #appHome .home-badge small{display:none}
 #appHome .home-top{margin-bottom:14px}
 #appHome .home-tile{min-height:117px;padding:13px 11px;font-size:.88rem}
 #appHome .homeGlyph{width:34px;height:34px;margin-bottom:8px}
 #appHome .homeGlyph svg{width:21px;height:21px}
 #appHome .home-tile .v189TileDesc{font-size:.76rem}
}
@media(max-width:350px){header .header-actions .btn{font-size:.7rem;padding:7px 6px}#appHome .home-actions{gap:8px}#appHome .home-tile{padding:11px 9px}}
@media(prefers-reduced-motion:reduce){#appHome .home-tile,.btn{transition:none}}




#stataru-writer-warning{position:fixed;inset:0;z-index:2147483647;background:rgba(4,21,43,.88);display:grid;place-items:center;padding:20px;color:#10294e}
#stataru-writer-warning[hidden]{display:none!important}
.stataru-writer-card{max-width:540px;width:100%;background:#fff;border-radius:15px;padding:25px;box-shadow:0 20px 80px #0009}
.stataru-writer-card h2{margin:0 0 10px}.stataru-writer-card p{line-height:1.55}
.stataru-writer-card button{padding:12px 18px;border:0;background:#105b9d;color:white;font-weight:bold;border-radius:9px;min-height:46px}



/* v8 branded launch, home, first-time setup */
#bootSplash{position:fixed;inset:0;z-index:1200;background:radial-gradient(circle at 82% 20%,#214d72 0%,#0B1F44 56%,#06152f 100%);display:flex;align-items:center;justify-content:center;color:#fff;padding:24px;transition:opacity .34s ease,visibility .34s ease}
#bootSplash.done{opacity:0;visibility:hidden;pointer-events:none}
.boot-art{width:min(100%,480px);text-align:center;display:grid;place-items:center;gap:13px}
.boot-icon{width:124px;height:124px;border-radius:30px;box-shadow:0 28px 70px #0006,0 0 0 1px #ffffff25;background:#091c3a;display:grid;place-items:center}
.boot-icon img{height:110px;width:110px;object-fit:contain}
.boot-name{font-size:clamp(2.6rem,9vw,4.3rem);font-weight:900;letter-spacing:-.055em;font-style:italic;line-height:1.1}
.boot-tag{color:#00E5C2;font-weight:750;letter-spacing:.09em;font-size:clamp(.9rem,3vw,1.14rem)}
.boot-track{height:5px;width:170px;border-radius:12px;overflow:hidden;background:#ffffff24;margin-top:24px}
.boot-track i{display:block;background:linear-gradient(90deg,#00E5C2,#FF6A00);height:100%;width:38%;border-radius:12px;animation:bootMove 1.1s ease-in-out infinite alternate}
@keyframes bootMove{from{transform:translateX(-120%)}to{transform:translateX(330%)}}
@media(prefers-reduced-motion:reduce){#bootSplash{transition:none}.boot-track i{animation:none;width:100%}}
#appHome{position:fixed;inset:0;z-index:80;background:#f2f5fb;overflow:auto;overscroll-behavior:contain;display:none;color:#172036;padding:clamp(14px,3vw,35px) 16px calc(28px + env(safe-area-inset-bottom))}
#appHome.show{display:block}
.home-container{max-width:900px;margin:0 auto}
.home-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}
.home-badge{display:flex;align-items:center;gap:12px}.home-badge img{width:59px;height:59px;border-radius:15px;box-shadow:0 7px 22px #17203628}
.home-badge b{display:block;font-size:1.55rem;letter-spacing:-.04em;color:#0B1F44}.home-badge small{display:block;color:#546783}
.home-card{background:#0B1F44;border-radius:23px;padding:clamp(18px,3vw,28px);color:white;box-shadow:0 15px 42px #0b1f4429;margin-bottom:18px;position:relative;overflow:hidden}
.home-card:before{content:'';pointer-events:none;position:absolute;right:-70px;top:-115px;width:280px;height:280px;border:3px solid #00E5C235;border-radius:50%}
.home-eyebrow{color:#00E5C2;font-size:.8rem;letter-spacing:.11em;font-weight:800;text-transform:uppercase}
.home-score-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin:23px 0}
.home-team{text-align:center;min-width:0;overflow-wrap:anywhere}.home-team .home-num{font-size:clamp(2.8rem,10vw,4.8rem);font-weight:900;color:#fff;line-height:1.15}.home-vs{color:#adc2da;font-size:.8rem;text-align:center}
.home-main-btn{background:#FF6A00;color:white;border:0;border-radius:12px;padding:15px 18px;min-height:51px;font-size:1.04rem;font-weight:800;width:100%;cursor:pointer}
.home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.home-tile{background:#fff;border:1px solid #dbe2ed;border-radius:16px;padding:20px 14px;min-height:91px;text-align:left;font-size:.98rem;font-weight:750;color:#0B1F44;cursor:pointer}
.home-tile span{display:block;font-size:1.5rem;margin-bottom:7px}
.home-hint{color:#5c6b7d;font-size:.84rem;margin-top:19px;line-height:1.5}
#onboardVeil{z-index:1100}.onboardModal{max-width:610px}.onboardIntro{background:#0B1F44;color:white;margin:-20px -20px 18px;padding:23px 20px;border-radius:15px 15px 0 0}
.onboardIntro h2{color:white;margin:6px 0;font-size:1.6rem}.onboardIntro p{margin:4px 0;color:#cfdae9}
.onboard-fields{display:grid;gap:12px;margin-bottom:16px}.onboard-fields label{font-weight:750;font-size:.88rem;display:block;margin-bottom:5px}.onboard-fields input,.onboard-fields select{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:11px;min-height:45px;background:white}
.onboard-actions{display:flex;gap:8px;flex-wrap:wrap}.onboard-actions button{flex:1;min-height:48px}
.startup-setting{display:block;margin:10px 0;font-weight:650}.startup-setting input{margin-right:8px}
@media(max-width:500px){.home-actions{gap:8px}.home-tile{padding:13px 10px;font-size:.85rem;min-height:80px}.home-top{margin-bottom:16px}.home-badge img{width:46px;height:46px}.home-badge b{font-size:1.25rem}.home-score-row{margin:15px 0}.onboardIntro{margin:-18px -15px 15px}}

/* Stataru v14: obvious, one-correction-at-a-time correction mode */
.v14CorrectionToggle{min-height:43px!important;font-weight:800!important;border:2px solid #b12635!important;color:#911c2c!important;background:#fff6f5!important}
body.v14Correcting .v14CorrectionToggle{background:#9e1b32!important;color:#fff!important;border-color:#9e1b32!important}
#v14CorrectionBanner{display:none;align-items:center;justify-content:space-between;gap:10px;margin:8px 0;padding:12px 14px;border:3px solid #b3263b;border-radius:12px;background:#fff0f1;color:#82192b;font-weight:800;box-shadow:0 2px 5px #3b000015}
body.v14Correcting #v14CorrectionBanner{display:flex}
#v14CorrectionBanner small{display:block;font-weight:600;color:#733440;font-size:.77rem;margin-top:4px}
body.v14Correcting #teamPanels .stat,body.v14Correcting .quickBtn:not(.minus),body.v14Correcting .v12StatBtn{border:2px solid #b12635!important;background:#fff0f1!important;color:#7c182a!important}
body.v14Correcting #v12CourtFrame::after{content:'CORRECTION MODE';position:absolute;top:49%;left:50%;transform:translate(-50%,-50%) rotate(-12deg);pointer-events:none;color:#98172f44;border:7px solid #98172f33;padding:5px 15px;border-radius:12px;font-size:clamp(16px,4vw,43px);font-weight:1000;letter-spacing:.07em;white-space:nowrap;z-index:1}
body.v14Correcting #v12CourtFrame{outline:5px solid #b3263b;outline-offset:-5px;background:#f5c8bc}
body.v14Correcting #v12CourtWrap .v12CourtHeading{background:#fff0f1;color:#82192b}
body.v14Correcting #v12Selected{color:#8d1c33!important;font-weight:900}
.v14CorrectionNote{display:block;font-size:.75rem;color:#82192b;font-weight:800}
@media(max-width:680px){#v14CorrectionBanner{padding:8px 10px;gap:7px;font-size:.81rem}#v14CorrectionBanner .btn{min-height:42px;font-size:.74rem}}



.v15ScoreTools{border:1px solid var(--line,#aaa6);border-radius:12px;margin:10px 0;padding:10px;background:var(--panel,#ffffff0d)}
.v15ToolsTop{display:flex;gap:9px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.v15ScoreTools button,.v15ScoreTools select{min-height:42px;border-radius:8px;padding:7px 10px;cursor:pointer}
.v15PeriodTable{width:100%;border-collapse:collapse;margin:8px 0}.v15PeriodTable td,.v15PeriodTable th{padding:6px;border-bottom:1px solid #8884;text-align:center}.v15PeriodTable td:first-child{text-align:left}
.v15TeamActions{display:flex;gap:9px;flex-wrap:wrap;margin:8px 0}.v15TeamActions button{font-weight:600}
.v15Warn{color:#a34416;font-weight:700}.v15Ok{color:#187a55;font-weight:700}.v15Muted{opacity:.8;font-size:.86rem}
.v15Assist{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;padding:8px;border-top:1px solid #8884}



.v11colorpick[style*="#FFFFFF"],.v11colorpick[style*="#ffffff"]{outline:2px solid #64748b!important;box-shadow:inset 0 0 0 1px #b6c0cc}
.v11colorpick.selected{box-shadow:0 0 0 3px #00a991, inset 0 0 0 1px #b6c0cc}
.v11jersey[style*="#FFFFFF"],.v11PlayerJersey[style*="#FFFFFF"],.v11jersey[style*="#E5E7EB"],.v11PlayerJersey[style*="#E5E7EB"],.v11jersey[style*="#F5E8CB"],.v11PlayerJersey[style*="#F5E8CB"],.v11jersey[style*="#F0AE27"],.v11PlayerJersey[style*="#F0AE27"]{color:#10213e!important;text-shadow:none!important}
.v153RuleCard{margin:13px 0;padding:12px;border-radius:12px;border:1px solid #b9cfe0;background:#f1f7fb;color:#102347}
.v153RuleCard select,.v153RuleCard input{max-width:100%;min-height:43px;padding:8px;border:1px solid #91a4b9;border-radius:8px;background:#fff;color:#102347}
.v153RuleCard label{display:block;margin:8px 0 5px;font-weight:800}
.v153RuleCard .v153custom{display:flex;gap:12px;flex-wrap:wrap}
.v153RuleCard .v153custom label{flex:1;min-width:160px}
.v153RuleBadge{display:inline-flex;align-items:center;background:#edf8f5;color:#084d43;border-radius:8px;border:1px solid #a2d2c6;font-weight:800;font-size:.78rem;padding:5px 8px;margin-left:5px}



:root{--v166Navy:#102b46;--v166Teal:#087f85;--v166Copper:#de8b49;--v166Ink:#152b40;--v166Shadow:0 16px 38px rgba(7,31,53,.14)}
.pg-shell,.v165Body{background:linear-gradient(148deg,#fff 0%,#f8fbff 100%)!important;box-shadow:0 24px 70px rgba(5,20,40,.32)!important;border:1px solid #d8e6f0}
.pg-shell h2,.v165Body h2{letter-spacing:-.025em;color:var(--v166Ink)}
.pg-score{background:linear-gradient(125deg,#081e39,#14526a 70%,#167879)!important;box-shadow:var(--v166Shadow);border:1px solid #4b899d!important;padding:24px 14px!important}
.pg-score b{font-size:clamp(22px,5.4vw,34px)!important;letter-spacing:-.035em;line-height:1.2}
.pg-tile{background:linear-gradient(160deg,#fff,#eaf4f8)!important;box-shadow:0 3px 12px rgba(15,54,75,.075);border:1px solid #d6e6ec;min-width:0}
.pg-tile strong{color:#103e58;letter-spacing:-.025em;overflow-wrap:anywhere}.pg-panel{background:#fff;border-color:#dce7ef;box-shadow:0 3px 12px rgba(7,28,50,.04)}
.pg-actions .btn,.v165Actions .btn{border-radius:11px!important;min-height:48px!important;box-shadow:0 2px 7px #061b3216}
.pg-actions .btn.primary{background:linear-gradient(120deg,#007e85,#0a637e)!important;color:white!important}
.pg-privacy{background:#f0f8fa!important}.pg-privacy label{font-size:13px;font-weight:650}.pg-privacy select{width:100%}
.v165Slots button:focus-visible,.v165Bench button:focus-visible,.pg-shell button:focus-visible{outline:3px solid #ed994a!important;outline-offset:2px}
.v165Slot{box-shadow:0 2px 6px #112b4214}.v165Slot.chosen{background:linear-gradient(150deg,#ddf4f2,#a9d8e6)!important;border-color:#177780}
@media(max-width:600px){.pg-modal,.v165Lineup{padding:env(safe-area-inset-top,6px) 6px env(safe-area-inset-bottom,6px)!important}.pg-shell,.v165Body{max-height:calc(100dvh - 12px)!important;padding:12px!important}.pg-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.pg-tile{padding:9px 4px}.pg-tile strong{font-size:clamp(15px,4.5vw,22px)!important}.pg-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.pg-actions .btn{white-space:normal!important;min-width:0!important;line-height:1.15}.v165Bench{grid-template-columns:repeat(3,minmax(0,1fr))}.pg-shell{overscroll-behavior:contain}}
@media print{body>*:not(#pgModal){display:none!important}#pgModal.pg-modal{display:block!important;position:static!important;background:white!important;padding:0!important}.pg-shell{max-height:none!important;width:100%!important;box-shadow:none!important;overflow:visible!important;border:0!important}.pg-shell button,.pg-shell textarea,.pg-privacy,.pg-shell select,.pg-shell .pg-actions{display:none!important}.pg-score{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:none!important}.pg-panel{break-inside:avoid} }



/* v16.7 roster clarity and direct on-court tipoff */
#v11teamPlayers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:12px;margin:12px 0}
#v11teamPlayers .v167PlayerCard{display:grid;grid-template-columns:minmax(0,110px) minmax(0,1fr);align-items:end;gap:9px 12px;margin:0;background:linear-gradient(160deg,#fff,#f2f7fb);padding:14px;border:1px solid #b8cddb;border-left:4px solid #087f8c;border-radius:13px;box-shadow:0 2px 8px #0b254019}
.v167CardHeader{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px solid #d0dfe8;color:#153450;font-size:.88rem}
.v167CardHeader span{font-size:.72rem;color:#557184;font-weight:650}
.v167PlayerCard label,.v167WizardCard label{margin:0!important;font-weight:750!important;font-size:.77rem!important;min-width:0}
.v167PlayerCard label small,.v167WizardCard label small{font-weight:500;color:#596d7d}
.v167PlayerCard .v167Remove{grid-column:1/-1;justify-self:end;min-height:36px!important;color:#96323a;background:transparent;border:1px solid #e4c8cd}
.v155rosterCard #v155Rows-home,.v155rosterCard #v155Rows-away{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:9px}
.v155rosterCard .v167WizardCard{display:grid;grid-template-columns:minmax(0,76px) minmax(0,1fr);align-items:end;gap:9px;background:linear-gradient(160deg,#fff,#f3f8fb);border:1px solid #c1d4df;border-left:4px solid #087f8c;border-radius:12px;padding:11px;margin:0}
.v167WizardCard .v167CardHeader{font-size:.8rem;padding-bottom:6px}
.v167WizardCard .v155Remove{grid-column:1/-1;justify-self:end;padding:4px 12px;min-height:34px!important;font-size:.77rem}
.v165Body .v167Court{position:relative;width:min(100%,410px);height:clamp(250px,45dvh,355px);margin:12px auto 8px;background:linear-gradient(135deg,#18536a,#0b314f);border:2px solid #75a5b4;border-radius:15px;box-shadow:inset 0 3px 25px #051a3277,0 7px 18px #0c30402a;overflow:hidden}
.v167Court .v167Lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.v167Court .v165Slots{position:absolute;inset:0;display:block;margin:0;pointer-events:none}
.v167Court .v165Slot{position:absolute;width:clamp(53px,15%,66px);height:clamp(53px,15%,66px);min-height:0!important;border:2px dashed #a9dce2;border-radius:50%;background:#0c4259e8;color:white;pointer-events:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px;line-height:1.07;box-shadow:0 2px 8px #061b32b0;touch-action:manipulation}
.v167Court .v165Slot.chosen{background:linear-gradient(155deg,#14a99e,#086b83);border:2px solid #f9eee1}
.v167Court .v165Slot b{font-size:clamp(15px,4vw,21px);font-variant-numeric:tabular-nums}
.v167Court .v165Slot small{font-size:9px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v167Court [data-slot="0"]{left:50%;top:30%;transform:translate(-50%,-50%)}
.v167Court [data-slot="1"]{left:20%;top:68%;transform:translate(-50%,-50%)}
.v167Court [data-slot="2"]{left:80%;top:68%;transform:translate(-50%,-50%)}
.v167Court [data-slot="3"]{left:30%;top:35%;transform:translate(-50%,-50%)}
.v167Court [data-slot="4"]{left:70%;top:35%;transform:translate(-50%,-50%)}
.v165Lineup .v165Bench{grid-template-columns:repeat(auto-fit,minmax(75px,1fr));gap:7px;max-height:21dvh}
.v165Bench button{touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.v167DragGhost{position:fixed;z-index:120001;transform:translate(-50%,-50%);pointer-events:none;background:#075e70;color:#fff;border:2px solid #fff;border-radius:25px;box-shadow:0 5px 20px #0007;padding:12px;font-weight:850;font-size:13px;max-width:130px}
@media(max-width:430px){.v165Body .v167Court{height:290px}.v165Lineup .v165Body{padding:12px}.v165Body h2{font-size:1.2rem;margin:0}.v165Body h3{font-size:1rem}.v165Bench button{min-height:48px}#v11teamPlayers{grid-template-columns:1fr}.v155rosterCard #v155Rows-home,.v155rosterCard #v155Rows-away{grid-template-columns:1fr}}

<style>
#v172HomeHub{margin:14px 0;padding:14px;background:linear-gradient(140deg,#f5fafb,#eaf4f7);color:#123047;border:1px solid #bad5e1;border-radius:17px;box-shadow:0 6px 20px #06283c14}
.v172HomeHead,.v172Upcoming,.v172Fixture,.v172HomeLinks{display:flex;justify-content:space-between;align-items:center;gap:10px}.v172HomeHead{padding-bottom:10px}.v172HomeHead span,.v172Upcoming small{font-size:12px;color:#436071}.v172Upcoming{padding:12px 0;border-top:1px solid #c8dce2}.v172Upcoming>div:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}.v172Upcoming b{color:#123047}.v172HomeLinks{padding-top:12px;flex-wrap:wrap}.v172Empty{font-size:13px;color:#38596a}.v172Collections{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px;margin:12px 0}.v172Collection{background:#f4fafc;color:#123047;text-align:left;border:1px solid #bed5e0;border-radius:13px;padding:14px;display:flex;flex-direction:column;gap:5px;cursor:pointer}.v172Collection small{color:#56717e}.v172Fixture{border-bottom:1px solid #c6d4da;padding:13px 0;flex-wrap:wrap}.v172Fixture>div:first-child{display:flex;flex-direction:column;gap:5px}.v172Fixture small{color:#476473}.v172FixtureActions{display:flex;gap:5px;flex-wrap:wrap}.v172Match{font-size:12px;color:#3a5969;margin:5px 0}.v172HistoryRow{border-bottom:1px solid #cadbe2;padding:9px 0;display:flex;gap:7px;flex-wrap:wrap}.v172HistoryRow small{color:#4a6977}.v172Header h3{margin-bottom:4px}#v172Bulk{width:100%;min-height:92px;border-radius:8px;padding:8px}#v11content input{max-width:100%}
@media(max-width:460px){.v172HomeLinks button{flex:1 1 100%}.v172FixtureActions{width:100%}.v172Upcoming{align-items:flex-start}.v172Upcoming .btn{white-space:nowrap}}



/* Court marker fill uses actual game-day team jersey selections. Selection uses ring, not recoloring. */
#v161PhoneCourt .v162CourtPlayer{background:var(--v185-player-color,#102b53)!important;color:var(--v185-player-text,#fff)!important;border:2px solid #ffffff;box-shadow:0 2px 5px #0b183a88,0 0 0 1px #354259}
#v161PhoneCourt .v162CourtPlayer[aria-pressed="true"]{border:3px solid #ffe36e!important;box-shadow:0 0 0 3px #006359,0 2px 6px #08152c!important}
#v161PhoneCourt #v161Bench button{border:2px solid var(--v185-player-color,#102b53);background:var(--v185-player-color,#102b53);color:var(--v185-player-text,#fff)}
#v161PhoneCourt #v161Bench button[aria-pressed="true"],#v12CourtWrap .v12BenchPlayer[aria-pressed="true"]{outline:3px solid #ffe36e;outline-offset:2px;box-shadow:0 0 0 2px #102747}
#v12CourtWrap .v12Jersey.v185SwapTarget{outline:3px dashed #ffe36e;outline-offset:2px}


#planSwitch,#plansVeil{display:none!important}#v16TrackBar{display:none!important}#v189Tracking{display:block!important}#v189ShotBtn:focus-visible{outline:3px solid #00bca9;outline-offset:2px}


/* v18.20 — Exact approved artwork, reference-matched Home composition. */
#appHome{background:#eaf3fb!important;padding:0!important;overscroll-behavior:contain}
#appHome .home-container{max-width:1450px!important;min-height:100%;padding:0 0 95px!important;position:relative}
#appHome .v1817Topbar{height:47px;box-sizing:border-box;padding:3px 24px;display:flex;align-items:center;background:linear-gradient(100deg,#062649,#15365a 56%,#081b34);border-bottom:1px solid #8dabc4;box-shadow:none}
#appHome .v1817Topmark{gap:15px}
#appHome .v1817TopIcon{width:85px;height:46px;max-height:43px;object-fit:contain;object-position:left center}
#appHome .v1817TopDivider{height:28px;background:#9eb3c4}
#appHome .v1817TopActions{gap:10px;align-items:center}
#appHome .v1817IconBtn{width:34px;height:34px;background:transparent;border:0;position:relative;border-radius:8px}
#appHome .v1817IconBtn svg{width:25px;height:25px}
#appHome .v1820BellDot{position:absolute;right:2px;top:2px;width:7px;height:7px;background:#ff850c;border-radius:50%;display:none}
#appHome .v1817HeroWrap{padding:0!important;background:#0a2d55!important}
#appHome .v1817HeroInner{max-width:none;min-height:0!important;height:auto;aspect-ratio:1094/161;border-radius:0!important;padding:0!important;background:url('../branding/approved-banner-desktop.png') center / cover no-repeat!important;box-shadow:none;display:block}
#appHome .v1817HeroInner::before,#appHome .v1817HeroInner::after{display:none!important}
#appHome .v1817HeroCopy,#appHome .v1817HeroBall{display:none!important}
#appHome .v1817Tiles{padding:20px 20px 0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:14px;row-gap:15px;align-items:stretch}
#appHome .v1817Tile{order:initial!important;min-height:99px!important;padding:17px 22px!important;gap:18px;border-radius:15px!important;box-shadow:0 5px 12px #18395727;border:1px solid #cadbeb;background:linear-gradient(145deg,#ffffff,#f7faff);display:flex;align-items:center;text-align:left;overflow:hidden}
#appHome .v1817TilePrimary{background:linear-gradient(135deg,#1164ad 0%,#043562 84%)!important;border:1px solid #0e548c!important;color:#fff;box-shadow:0 5px 15px #082e5155}
#appHome .v1817TileIcon{flex:0 0 60px;width:60px;height:60px;background:transparent;border:0;border-radius:0;color:#103e75}
#appHome .v1817TileIcon svg{width:49px;height:49px;stroke-width:1.65}
#appHome .v1817TilePrimary .v1817TileIcon{background:transparent;color:#fff}
#appHome .v1817TileText{display:block;min-width:0}
#appHome .v1817TileText strong{display:block;color:#0a2348;font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.15;letter-spacing:-.012em}
#appHome .v1817TilePrimary .v1817TileText strong{color:white}
#appHome .v1817TileText small{display:block;color:#152747;font-size:clamp(.83rem,1.1vw,1rem);margin-top:5px;font-weight:450;line-height:1.2}
#appHome .v1817TilePrimary .v1817TileText small{color:#edf6ff}
#appHome .v1817LowerGrid{padding:19px 20px 0!important;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:19px;align-items:stretch}
#appHome .v1817Panel{border-radius:15px!important;box-shadow:0 5px 13px #19385c2b;border:1px solid #c6d9e7;overflow:hidden;background:linear-gradient(155deg,#fff,#f5f9fd)}
#appHome .v1817PanelHead{padding:12px 16px 10px;gap:7px}
#appHome .v1817PanelHead h3{font-size:clamp(1.1rem,1.6vw,1.45rem);font-weight:800;letter-spacing:-.015em;color:#0c274a}
#appHome .v1817LinkBtn{color:#102744;font-size:.93rem}
#appHome #v1817RecentGames{padding:0 13px 13px}
#appHome .v1817RecentRow{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) auto minmax(0,.55fr) 16px!important;grid-template-areas:'meta date badge score arrow'!important;gap:9px;align-items:center;min-height:37px;padding:7px 8px;border-top:1px solid #d9e5f0;width:100%;background:transparent;border-left:0;border-right:0;border-bottom:0;text-align:left;cursor:pointer;font:inherit}
#appHome .v1817RecentMeta{grid-area:meta;min-width:0}
#appHome .v1817RecentMeta b{font-size:clamp(.88rem,1.25vw,1.09rem);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#appHome .v1817RecentDate{grid-area:date;font-size:clamp(.76rem,1.05vw,.92rem);white-space:nowrap;color:#173154}
#appHome .v1817RecentBadge{grid-area:badge;border-radius:6px;font-size:.81rem;padding:3px 9px;line-height:1.2;justify-self:center}
#appHome .v1817RecentScore{grid-area:score;font-size:clamp(.94rem,1.45vw,1.16rem);justify-self:end;color:#10274a}
#appHome .v1817Chevron{grid-area:arrow;font-size:1.28rem;justify-self:end}
#appHome .v1817TipPanel{padding:0!important;background:#ffedd4!important;min-height:0!important}
#appHome .v1817TipPanel .v1817PanelHead,#appHome .v1817TipPanel>p,#appHome .v1817TipPanel .v1817Kangaroo{display:none!important}
#appHome .v1820TipArtwork{width:100%;height:100%;max-height:230px;min-height:155px;object-fit:fill;display:block}
#appHome .v1820BottomNav{position:fixed;bottom:0;left:0;right:0;z-index:90;background:linear-gradient(110deg,#082e55,#18375c 60%,#092346);height:73px;box-sizing:border-box;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:4px;padding:7px max(14px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border-top:1px solid #078bcb;box-shadow:0 -4px 16px #1536572a}
#appHome .v1820BottomNav button{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;color:#fff;background:transparent;border:0;border-radius:12px;font:inherit;font-size:clamp(.79rem,1.35vw,1rem);cursor:pointer}
#appHome .v1820BottomNav button span{font-size:clamp(1.25rem,2.5vw,2rem);font-weight:650;line-height:1}
#appHome .v1820BottomNav button b{font-weight:500;white-space:nowrap}
#appHome .v1820BottomNav .v1820NavActive{background:linear-gradient(130deg,#ffa227,#ed6a02);border:1px solid #ffb255;box-shadow:0 2px 6px #081b2e55}
#appHome #v172HomeHub{margin:16px 20px 0!important;box-shadow:none;display:none}
#appHome #v172HomeHub.v1820HasSchedule{display:block}
#appHome .home-hint{margin:14px 20px 0;font-size:.75rem;padding:9px 12px}
#appHome .v1820MoreMenu{position:fixed;bottom:81px;right:12px;z-index:105;background:white;border:1px solid #bdcfdf;border-radius:14px;box-shadow:0 15px 34px #071f3b55;padding:8px;min-width:205px;display:grid;gap:4px}
#appHome .v1820MoreMenu[hidden]{display:none!important}
#appHome .v1820MoreMenu button{border:0;border-radius:9px;background:transparent;color:#0b2c4c;padding:13px;text-align:left;font-weight:700;cursor:pointer}
#appHome .v1820MoreMenu button:hover{background:#edf6fc}
@media(max-width:900px){
 #appHome .v1817Tiles{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px 13px 0!important;gap:11px}
 #appHome .v1817Tile{min-height:102px!important}
 #appHome .v1817LowerGrid{grid-template-columns:1fr;padding:13px 13px 0!important;gap:11px}
 #appHome .v1817TipPanel{max-width:100%}
 #appHome .v1820TipArtwork{object-fit:contain;height:auto;min-height:0;max-height:none}
 #appHome .v1820BottomNav{height:68px}
 #appHome #v172HomeHub{margin:13px!important}
}
@media(max-width:560px){
 #appHome .v1817Topbar{height:48px;padding:4px 12px}
 #appHome .v1817TopIcon{height:40px;width:74px}
 #appHome .v1817HeroInner{height:156px;aspect-ratio:auto;background-image:url('../branding/approved-banner-mobile.png')!important;background-size:cover!important;background-position:center!important}
 #appHome .v1817Tiles{grid-template-columns:1fr!important;gap:8px;padding:12px 12px 0!important}
 #appHome .v1817Tile{min-height:71px!important;padding:11px 15px!important;border-radius:13px!important;gap:14px}
 #appHome .v1817TileIcon{width:42px;height:42px;flex-basis:42px}
 #appHome .v1817TileIcon svg{width:36px;height:36px}
 #appHome .v1817TileText strong{font-size:1rem}
 #appHome .v1817TileText small{font-size:.79rem;margin-top:3px}
 #appHome .v1817LowerGrid{padding:12px 12px 0!important;gap:12px}
 #appHome .v1817PanelHead{padding:12px}
 #appHome #v1817RecentGames{padding:0 8px 9px}
 #appHome .v1817RecentRow{grid-template-columns:minmax(0,1fr) 1fr auto!important;grid-template-areas:'meta badge score' 'date date arrow'!important;row-gap:3px;min-height:61px;padding:7px 5px}
 #appHome .v1817RecentMeta b{font-size:.88rem}
 #appHome .v1817RecentDate{font-size:.73rem}
 #appHome .v1817RecentScore{font-size:1rem}
 #appHome .v1817RecentBadge{font-size:.69rem;padding:4px 7px}
 #appHome .v1820BottomNav{height:61px;padding:5px 3px max(6px,env(safe-area-inset-bottom));grid-template-columns:repeat(6,minmax(0,1fr));gap:0}
 #appHome .v1820BottomNav button{flex-direction:column;gap:0;font-size:.55rem;border-radius:8px;padding:4px 1px}
 #appHome .v1820BottomNav button span{font-size:1.18rem}
 #appHome .v1820BottomNav button b{font-size:.57rem;overflow:hidden;text-overflow:ellipsis;max-width:100%}
 #appHome .home-container{padding-bottom:92px!important}
 #appHome .home-hint{margin:12px;font-size:.72rem}
}
@media(min-width:1200px){#appHome .v1817Topbar{padding-left:max(20px,calc((100vw - 1450px)/2 + 20px));padding-right:max(20px,calc((100vw - 1450px)/2 + 20px))}}



#appHome #v1821LegacyInitial,#appHome #v1818LegacyHost{display:none!important}
#appHome .v1817TopIcon{object-fit:contain;object-position:left center}
#appHome .v1820MoreMenu{max-height:min(70vh,480px);overflow:auto}
#appHome .v1817ModalShade .v1817Modal{max-height:calc(100dvh - 32px);overflow-y:auto}
@media(max-width:560px){#appHome .v1817HeroInner{background-size:cover!important;background-position:center!important}}



#v11veil .v1829SummaryGroups{display:grid;gap:12px}
#v11veil .v1829SummaryGroup{background:#fff;border-radius:10px;border:1px solid #b8d1e5;padding:12px}
#v11veil .v1829SummaryGroup>b{display:block;margin:0 0 7px;font-size:.91rem}
#v11veil .v1829SummaryItems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}
#v11veil .v1829SummaryItem{display:flex;gap:8px;align-items:center;font-size:.91rem;min-height:29px;color:#53677b}
#v11veil .v1829SummaryItem.is-on{color:#0c415d;font-weight:700}
#v11veil .v1829SummaryItem.is-on>span:first-child{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:5px;background:#116da2;color:#fff}
#v11veil .v1829SummaryItem.is-off>span:first-child{display:inline-grid;place-items:center;width:22px;height:22px;color:#7890a2}
.pbPresetSummary{background:#eaf6fc;border:2px solid #0a6d98;border-radius:11px;padding:12px;margin:10px 0}
.pbPresetSummary>strong{display:block;margin-bottom:10px}.pbPresetList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.pbPresetList label{display:flex;gap:6px;align-items:center;font-size:.84rem}.pbPresetList input{accent-color:#116da2;opacity:1;flex:none}
.pbPresetSummary small{display:block;margin-top:8px;color:#3a5870}
@media(max-width:680px){#v11veil .v1829SummaryItems,.pbPresetList{grid-template-columns:1fr}}


.stataruBackupActions{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}.stataruBackupActions>#v9backup,.stataruBackupActions>label[for="importGames"]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;flex:1 1 185px;box-sizing:border-box;cursor:pointer;text-align:center}.stataruBackupActions>input[hidden]{display:none}.stataruBackupActions>button:not(#v9backup){flex:0 1 auto}@media(max-width:440px){.stataruBackupActions>#v9backup,.stataruBackupActions>label[for="importGames"]{flex-basis:calc(50% - 5px);min-width:0;font-size:.84rem;padding:9px 5px}}


/* The standalone iOS PWA uses a translucent status bar. Keep the Home controls
   *below* the notch/status area without moving the tappable buttons offscreen. */
#appHome .v1817Topbar {
  height: calc(47px + env(safe-area-inset-top, 0px)) !important;
  min-height: calc(47px + env(safe-area-inset-top, 0px)) !important;
  padding-top: calc(3px + env(safe-area-inset-top, 0px)) !important;
  padding-bottom: 3px !important;
  flex-shrink: 0;
}
#appHome .v1817TopActions .v1817IconBtn {
  min-width: 44px; min-height: 44px; touch-action: manipulation;
}
@media (max-width: 560px) {
  #appHome .v1817Topbar {
    height: calc(48px + env(safe-area-inset-top, 0px)) !important;
    min-height: calc(48px + env(safe-area-inset-top, 0px)) !important;
    padding-top: calc(4px + env(safe-area-inset-top, 0px)) !important;
    padding-bottom: 4px !important;
  }
  #appHome .v1817TopActions .v1817IconBtn {
    min-width: 40px; min-height: 40px;
  }
}



/* v18.29.20 — Standalone iOS: reserve touchable status-bar clearance for every
   popup system. Do not alter non-installed browser layouts or game-state logic. */
@media (display-mode: standalone) and (max-width: 700px) {
  :root { --stataru-dialog-top: max(58px, env(safe-area-inset-top, 0px)); }
  .veil.open, #v11veil.open, #settingsVeil.open, #helpVeil.open,
  #v170NewGameVeil.open, #v12ShotVeil.open,
  .pb24SettingsOverlay:not([hidden]), .v18296Overlay:not([hidden]),
  .v1817ModalShade:not([hidden]), .pb22Sheet:not([hidden]) {
    padding-top: var(--stataru-dialog-top) !important;
    padding-bottom: max(12px, env(safe-area-inset-bottom, 0px)) !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
  }
  .veil.open .modal, #v11veil.open .modal, #settingsVeil.open .modal,
  #helpVeil.open .modal, #v170NewGameVeil.open .v170Modal,
  .pb24SettingsOverlay:not([hidden]) .pb24SettingsDialog,
  .v18296Overlay:not([hidden]) .v18296Dialog,
  .v1817ModalShade:not([hidden]) > *, .pb22Sheet:not([hidden]) > * {
    max-height: calc(100dvh - 74px - env(safe-area-inset-bottom, 0px)) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
  /* Separate player/lineup sheets and score overlays retain full usable scroll. */
  .v163Overlay:not([hidden]) {padding-top:var(--stataru-dialog-top) !important;}
  .v163Overlay:not([hidden]) .v163Sheet {
    max-height:calc(100dvh - 65px - env(safe-area-inset-bottom, 0px)) !important;
  }
  .v169TeamVeil:not([hidden]), .pg-modal:not([hidden]), .v165Lineup:not([hidden]) {
    padding-top:var(--stataru-dialog-top) !important;
    box-sizing:border-box !important;
  }
  .v169TeamVeil:not([hidden]) .v169TeamSheet,
  .pg-modal:not([hidden]) .pg-shell, .v165Lineup:not([hidden]) .v165Body {
    max-height:calc(100dvh - 72px - env(safe-area-inset-bottom, 0px)) !important;
    overflow-y:auto !important;
  }
  #stataruBetaDialog[open] {
    max-height:calc(100dvh - 76px - env(safe-area-inset-bottom, 0px)) !important;
    margin-top:var(--stataru-dialog-top) !important;
    margin-bottom:12px !important;
    overflow-y:auto !important;
  }
}



.advanced-stats-veil[hidden]{display:none!important}.advanced-stats-veil{position:fixed;inset:0;z-index:30000;background:#071b30b8;display:flex;align-items:center;justify-content:center;padding:14px}.advanced-stats-dialog{width:min(560px,100%);max-height:min(92dvh,850px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#102c46;border-radius:17px;padding:20px;box-shadow:0 10px 40px #001a3770}.advanced-stats-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.advanced-stats-top h2{margin:0 0 12px;font-size:1.32rem}.advanced-stats-top button{font-size:26px;background:#eef3f9;border:0;border-radius:10px;min-width:44px;min-height:44px}.advanced-stats-dialog p{font-size:.92rem;line-height:1.45;color:#385267}.advanced-stats-dialog fieldset{border:1px solid #d9e3ed;border-radius:11px;margin:12px 0;padding:10px}.advanced-stats-dialog legend{font-weight:800;padding:0 5px}.advanced-stats-dialog label:not(.adv-check){display:block;margin:14px 0;font-weight:700}.advanced-stats-dialog select{display:block;width:100%;min-height:44px;border:1px solid #bdcad9;border-radius:9px;background:white;padding:8px;margin-top:5px}.adv-check{display:flex;align-items:flex-start;gap:12px;margin:9px 0;padding:8px;border-radius:8px;background:#f4f7fb}.adv-check input{width:20px;height:20px;margin-top:3px;flex-shrink:0}.adv-check span{display:grid;gap:3px}.adv-check small{font-size:.8rem;color:#56718b}.adv-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}.adv-actions button{padding:10px 14px;border:1px solid #ccd6e2;border-radius:9px;min-height:44px;background:#f5f7fa;color:#0b2545;font-weight:700}.adv-actions .adv-primary{background:#0b2545;color:white;border-color:#0b2545}.adv-note{padding:10px;background:#fff5e9;border-left:3px solid #e99721}.adv-live-actions{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 13px);right:13px;z-index:85;display:flex;gap:7px;align-items:center}.adv-live-button{background:#0b2545;color:#fff;border:2px solid #f4a13a;padding:10px 14px;border-radius:20px;font-weight:800;box-shadow:0 3px 15px #0004}.adv-live-button:focus-visible{outline:3px solid #ed9820}body:has(#appHome.show) .adv-live-actions,body:has(.advanced-stats-veil:not([hidden])) .adv-live-actions,body:has(#v11veil.open) .adv-live-actions,body:has(#assignVeil.open) .adv-live-actions,body:has(#statChoiceVeil.open) .adv-live-actions,body:has(#shotVeil.open) .adv-live-actions,body:has(#v12ShotVeil:not([hidden])) .adv-live-actions{display:none!important}@media(max-width:560px){.advanced-stats-dialog{padding:14px;max-height:92dvh}.adv-live-actions{bottom:calc(env(safe-area-inset-bottom) + 17px)}.adv-live-button{font-size:.82rem;padding:9px 11px}}
/* Prior home recovery styles are retained; prevent the fixed home pane from trapping scrolling. */
#appHome.show{overflow-y:auto!important;overscroll-behavior-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important}#appHome.show .home-container{height:auto!important;min-height:100%;overflow:visible!important}
#appHome .v1817TipPanel:not(.v18297RecentArt){display:none!important}#appHome .v18297RecentArt{min-height:120px}#appHome .v18297DefaultInner{flex-wrap:wrap!important}#appHome .v18297DefaultInner .pb24Shortcut{flex:1 1 190px;min-width:0}#appHome .v18297DefaultInner .v18297DefaultTitle{flex:0 0 100%}
