*{box-sizing:border-box}body{color:#172019;background:#f5f5f2;margin:0;font-family:system-ui,-apple-system,sans-serif}button,input,select{font:inherit;color:#172019;background:#fff;border:1px solid #c7cdc7;border-radius:10px;min-height:44px;padding:8px}button{font-weight:650}main{max-width:1200px;margin:auto;padding:12px}header,.top,.sectionHead{justify-content:space-between;align-items:center;gap:10px;display:flex}header{padding-bottom:12px}header>div{display:grid}header small{color:#667067}nav,.undo,.actions{gap:6px;display:flex}.active,.primary{background:#dce8dd}.top{margin-bottom:12px}.top input:nth-child(2){flex:1}.layout{grid-template-columns:200px minmax(0,1fr) 210px;gap:14px;display:grid}aside{flex-direction:column;gap:10px;display:flex}label{gap:5px;font-size:12px;font-weight:750;display:grid}.fieldWrap{background:#fff;border:1px solid #c7cdc7;border-radius:14px;position:relative;overflow:hidden}.fieldWrap svg{touch-action:none;width:100%;display:block}.yard{stroke:#9ba29a;opacity:.45;fill:none}.losGroup text{font-size:13px;font-weight:800}.route{fill:none;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.route.dash{stroke-dasharray:13 9}.route.dot{stroke-dasharray:2 9}.motion{fill:none;stroke-width:3px;stroke-dasharray:8 7;opacity:.72}.player circle{stroke:#fff;stroke-width:3px}.player circle.selected{stroke:#111;stroke-width:5px}.player text{text-anchor:middle;fill:#fff;pointer-events:none;font-size:11px;font-weight:900}.badge{z-index:2;background:#fffffff0;border-radius:6px;padding:5px 8px;font-weight:900;position:absolute;top:10px}.badge.left{left:10px}.badge.right{right:10px}.swatches{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.swatches button{padding:0}.tip{color:#5c655d;border:1px solid #d6dbd6;border-radius:10px;gap:4px;padding:10px;font-size:12px;display:grid}.library{gap:12px;display:grid}.cards{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.cards article{background:#fff;border:1px solid #d0d5d0;border-radius:12px;padding:12px}.cards h3{margin:5px 0}.cards small{color:#667067}.cards .actions{flex-wrap:wrap;margin-top:12px}.drawHint{color:#fff;background:#172019e8;border-radius:8px;padding:7px 10px;font-size:12px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}@media (width<=800px){.layout{grid-template-columns:1fr}.fieldWrap{order:-1}.controls,.right{grid-template-columns:1fr 1fr;display:grid}header{align-items:flex-start}.drawHint{text-align:center;width:90%}}@media (width<=430px){header{display:grid}nav button{flex:1}.top{grid-template-columns:105px 1fr;display:grid}.undo{grid-column:1/-1}.undo button{flex:1}.controls,.right{grid-template-columns:1fr 1fr}}.reads{color:#556057;margin-top:8px;font-size:12px}.gameGrid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.gameCard{cursor:pointer;background:#fff;border:1px solid #ccd3cc;border-radius:16px;gap:8px;padding:16px;display:grid}.gameCard h2{margin:0}.gameCard span{font-size:13px}.gameDayBoard{gap:20px;padding-bottom:28px}.gameDayHead{border-bottom:1px solid #d8ded8;align-items:flex-end;padding:4px 2px 10px}.gameDayHead>div:first-child{gap:3px;display:grid}.gameDayHead h2{margin:0}.gameDayHead small{color:#667067}.gameDayFilters{align-items:end;gap:8px;display:flex}.gameDayFilters label{min-width:150px}.gameDayFavorites,.gameDayAll{gap:12px;display:grid}.gameDayFavorites{background:#fffdf4;border:1px solid #e8deb5;border-radius:16px;padding:13px}.gameDayAll{padding:2px}.gameDaySectionTitle{justify-content:space-between;align-items:center;gap:12px;display:flex}.gameDaySectionTitle>div{align-items:baseline;gap:9px;display:flex}.gameDaySectionTitle h2{margin:0;font-size:18px}.gameDaySectionTitle span{color:#68736a;font-size:12px;font-weight:750}.gameDaySectionTitle strong{color:#fff;background:#172019;border-radius:999px;padding:6px 9px;font-size:11px}.gameDayColorGroup{gap:7px;display:grid}.gameDayColorHead{align-items:center;gap:7px;padding:2px 1px;display:flex}.gameDayColorHead i{border-radius:999px;width:9px;height:24px}.gameDayColorHead h3{margin:0;font-size:14px}.gameDayColorHead span{color:#748076;font-size:10px;font-weight:750}.gameDayGrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;display:grid}.gameDayPlayCard{--series-color:#60a5fa;border:1px solid #d4d9d4;border-top:4px solid var(--series-color);background:#fff;border-radius:12px;gap:6px;min-width:0;padding:8px;display:grid;position:relative;box-shadow:0 2px 7px #1e2d220f}.gameDayPlayCard.favorite{box-shadow:0 2px 8px #1e2d2214,inset 0 0 0 1px #d8b03024}.gameDayPlayCard.animating{outline:3px solid color-mix(in srgb,var(--series-color) 65%,#fff);outline-offset:1px}.gameDayCardHead{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:36px;display:grid}.gameDayCardHead>div{min-width:0;display:grid}.gameDayCardHead b{font-size:12px;line-height:1.1}.gameDayCardHead span{white-space:nowrap;text-overflow:ellipsis;color:#3f4b42;font-size:10px;font-weight:700;overflow:hidden}.gameDayCardHead small{color:#7a847c;white-space:nowrap;text-overflow:ellipsis;max-width:66px;font-size:9px;overflow:hidden}.gameFavorite{color:#7b857d;background:#fff;border-color:#d7ddd7;border-radius:50%;width:28px;height:28px;min-height:28px;padding:0;font-size:18px;line-height:1}.gameFavorite.active{color:#9b7100;background:#fff5bf;border-color:#d6ad2d}.gameMiniButton{color:#172019;background:#fff;border:1px solid #d2d8d2;border-radius:8px;width:100%;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.gameMiniButton:hover{background:#fff;border-color:#9da99f}.gameMiniSvg{aspect-ratio:600/650;background:#fff;width:100%;display:block}.gameMiniYards{stroke:#d9ded9;stroke-width:2px;fill:none}.gameMiniLos{stroke:#606860;stroke-width:4px}.gameMiniRoute{fill:none;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.gameMiniMotion{fill:none;stroke-width:3.5px;stroke-dasharray:10 8;stroke-linecap:round;stroke-linejoin:round}.gameMiniPlayer circle{stroke:#fff;stroke-width:3px}.gameMiniPlayer text,.gameMiniDefender text{text-anchor:middle;pointer-events:none;font-size:11px;font-weight:900}.gameMiniPlayer text{fill:#fff;paint-order:stroke;stroke:#172019;stroke-width:2.3px}.gameMiniDefender circle{fill:#172231;stroke:#fff;stroke-width:3px}.gameMiniDefender text{fill:#fff}.gameMiniBall ellipse{fill:#b66b25;stroke:#fff;stroke-width:2px}.gameMiniBall text{fill:#273128;paint-order:stroke;stroke:#fff;stroke-width:3px;font-size:10px;font-weight:850}.gameMiniStatus{color:#fff;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#111b26db;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800;position:absolute;bottom:6px;left:6px;right:6px;overflow:hidden}.gameDayEmpty{color:#687269;text-align:center;background:#fff;border:1px dashed #cbd3cc;border-radius:11px;padding:18px;font-size:12px}.headerUtilities{flex-wrap:wrap}.rosterPage{gap:16px}.rosterPageHead>div{gap:3px;display:grid}.rosterPageHead h2{margin:0}.rosterPageHead small{color:#687269}.rosterColumns{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.rosterUnit{background:#fff;border:1px solid #d1d7d1;border-radius:14px;gap:10px;min-width:0;padding:12px;display:grid}.rosterUnit.offense{border-top:4px solid #3767a6}.rosterUnit.defense{border-top:4px solid #b33a3a}.rosterUnitHead{justify-content:space-between;align-items:center;gap:10px;display:flex}.rosterUnitHead>div{align-items:baseline;gap:8px;display:flex}.rosterUnitHead h2{margin:0;font-size:18px}.rosterUnitHead span{color:#6c766e;font-size:11px;font-weight:750}.rosterUnitHead button{min-height:38px;padding:6px 10px;font-size:12px}.rosterTable{gap:6px;display:grid}.rosterRow{grid-template-columns:54px minmax(135px,1.5fr) minmax(82px,.7fr) minmax(92px,.8fr) 38px;align-items:center;gap:6px;display:grid}.rosterRow input,.rosterRow select{width:100%;min-width:0;min-height:40px;padding:7px 8px}.rosterHeader{color:#69746b;text-transform:uppercase;letter-spacing:.04em;padding:0 4px;font-size:10px;font-weight:850}.rosterHeader span:last-child{visibility:hidden}.rosterRemove{color:#8b2424;background:#fff7f7;border-color:#decaca;width:38px;min-height:38px;padding:0;font-size:19px}.rosterEmpty{color:#6f786f;text-align:center;background:#fafbfa;border:1px dashed #ccd4cd;border-radius:10px;padding:22px 12px;font-size:12px}@media (width<=900px){.rosterColumns{grid-template-columns:1fr}.rosterUnitHead{align-items:stretch}.rosterUnitHead button{min-width:150px}}@media (width<=560px){.rosterPageHead{flex-direction:column;align-items:stretch}.rosterUnit{padding:9px}.rosterUnitHead{grid-template-columns:1fr auto;display:grid}.rosterRow{grid-template-columns:48px minmax(0,1fr) 76px 36px}.rosterRow select{grid-column:2/4}.rosterHeader span:nth-child(4){display:none}.rosterHeader span:nth-child(3){grid-column:3}.rosterHeader span:nth-child(5){grid-column:4}.rosterRow input,.rosterRow select{font-size:16px}.rosterUnitHead button{min-width:0}}@media (width<=800px){.gameDayHead{flex-direction:column;align-items:stretch}.gameDayFilters{grid-template-columns:1fr 1fr;display:grid}.gameDayFilters label{min-width:0}.gameDayGrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}@media (width<=430px){.gameDayFavorites{padding:9px}.gameDayGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.gameDayCardHead{grid-template-columns:26px minmax(0,1fr)}.gameDayCardHead small{display:none}.gameFavorite{width:26px;height:26px;min-height:26px}.gameMiniStatus{padding:4px 5px;font-size:8px}.gameDaySectionTitle>div{gap:1px;display:grid}.gameDayFilters{grid-template-columns:1fr}}.callCode{font-size:22px;font-weight:950}.callGrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;display:grid}.callGrid article{background:#fff;border:2px solid #263126;border-radius:10px;gap:4px;padding:10px;display:grid}.callGrid article>b{font-size:18px}.callGrid small,.callGrid span{font-size:11px}.coverageLab{background:#fff;border:1px solid #ccd3cc;border-radius:12px;margin-top:12px;padding:12px}.coverageLab h3{margin:0 0 8px}.coverageRows{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.coverageRows button{text-align:left;gap:3px;height:auto;display:grid}.coverageRows span{font-size:10px;font-weight:500}@media (width<=650px){.coverageRows{grid-template-columns:1fr 1fr}nav{flex-wrap:wrap}}@media print{header,.printSheet .sectionHead button{display:none}.printSheet{padding:0}.callGrid{grid-template-columns:repeat(3,1fr)}body{background:#fff}main{max-width:none}}.analysisNote{color:#59645b;font-size:12px}.analysisGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.analysisCard,.analysisGrid button{text-align:left;gap:4px;height:auto;padding:10px;display:grid}.analysisGrid span{font-size:11px;font-weight:500}.analysisGrid strong{margin-top:3px}@media (width<=650px){.analysisGrid{grid-template-columns:1fr}}.buttonLike{cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #b9c1ba;border-radius:9px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.buttonLike:hover{background:#f3f5f1}.ball text{fill:#5b351b;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;font-size:10px;font-weight:800}.ball ellipse{stroke:#fff;stroke-width:1.5px}.controlGroup{background:#fff;border:1px solid #d3d9d3;border-radius:12px;gap:9px;padding:11px;display:grid}.controlGroup>b{font-size:13px}.compactActions,.groupHead{align-items:center;gap:6px;display:flex}.compactActions>*{flex:1}.groupHead{justify-content:space-between}.groupHead button{min-height:34px;padding:4px 9px;font-size:12px}.ballSequence{margin-top:2px}.ballSequence>small{color:#667067;line-height:1.35}.emptyAction{color:#667067;border:1px dashed #ccd3cc;border-radius:8px;padding:7px;font-size:12px}.actionRow{border-top:1px solid #e4e8e4;grid-template-columns:1fr .75fr auto .75fr 58px 36px;align-items:end;gap:4px;padding-top:8px;display:grid}.actionRow select,.actionRow input,.actionRow button{min-width:0;min-height:38px;padding:5px;font-size:12px}.actionRow>span{align-self:center}.actionRow label{font-size:9px}.dangerLite{padding:0;font-size:18px}.right{min-width:0}.right>.primary{width:100%}@media (width<=800px){.controls,.right{grid-template-columns:1fr;display:grid}.actionRow{grid-template-columns:1fr 1fr auto 1fr 58px 36px}}@media (width<=430px){.controls,.right{grid-template-columns:1fr}.actionRow{grid-template-columns:1fr 1fr auto 1fr}.actionRow label{grid-column:1/3}.actionRow .dangerLite{grid-column:4}}.simDecision{background:#fff;border:1px solid #ccd3cc;border-radius:12px;gap:7px;margin-bottom:10px;padding:10px;display:grid}.simDecision>span{color:#667067;font-size:11px}.choiceButtons{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.choiceButtons button{height:auto;min-height:48px;padding:6px;font-size:12px}.choiceButtons button.active{background:#dce8dd;border:2px solid #536a56}@media (width<=650px){.choiceButtons{grid-template-columns:repeat(2,1fr)}.choiceButtons button:last-child{grid-column:1/-1}}.inlineCheck{grid-template-columns:auto auto;align-items:center;gap:5px;display:flex}.inlineCheck input{width:18px;min-height:18px}.rpoRead{background:#fff;border:2px solid #aebcae;border-radius:12px;gap:6px;margin-bottom:10px;padding:11px;display:grid}.rpoRead>b{font-size:16px}.rpoRead span{color:#59645b;font-size:12px}.rpoRead>div{gap:6px;display:flex}.rpoRead button{flex:1}:root{--ink:#172019;--muted:#657067;--line:#d9dfd9;--panel:#fff;--soft:#f1f4ef;--field:#eef2e8;--accent:#315f43}main{max-width:1320px;padding:18px}header{border:1px solid var(--line);z-index:20;background:#fffffff0;border-radius:16px;margin-bottom:14px;padding:10px 12px;position:sticky;top:6px}header b{letter-spacing:-.02em;font-size:18px}nav{flex-wrap:wrap}nav button{background:0 0;border-color:#0000;padding:8px 12px}nav button.active{background:#e4ece5;border-color:#cbd8cd}button{cursor:pointer;transition:background .15s,border-color .15s,transform 80ms}button:active{transform:translateY(1px)}input,select,button{border-color:#cfd6cf}input:focus,select:focus,button:focus-visible{outline-offset:1px;outline:2px solid #71917a}.layout{grid-template-columns:220px minmax(420px,1fr) 270px;align-items:start;gap:16px}.controls,.right{gap:12px}.controlGroup{border-color:var(--line);padding:12px;box-shadow:0 1px 2px #1423180a}.controlGroup>b,.groupHead>b{letter-spacing:.01em}.fieldWrap{border-color:#cbd3ca;border-radius:18px;box-shadow:0 8px 28px #1c2b1f14}.route{stroke-width:4.2px;filter:drop-shadow(0 1px #ffffffd9);opacity:.94}.motion{stroke-width:3px;stroke-dasharray:7 7}.los{stroke:#29372d;stroke-width:3px}.player circle{filter:drop-shadow(0 2px 2px #00000029)}.badge{border:1px solid #d9dfd9;box-shadow:0 2px 8px #0000000f}.library{gap:16px}.cards,.gameGrid{gap:14px}.cards article,.gameCard,.coverageLab{border-color:var(--line);box-shadow:0 2px 10px #19281c0b}.simDecision,.rpoRead{border-color:#ccd7cd;box-shadow:0 2px 10px #19281c0a}.readStrip{flex-wrap:wrap;gap:6px;display:flex}.readStrip span{background:#f7f8f6;border:1px solid #d5dcd5;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:750}.readStrip .openRead{color:#204e2e;background:#e3efe5;border-color:#a8c3ad}.simStatus{color:#243229;background:#eef1ee;border:1px solid #cbd4cc;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:850}.simStatus.touchdown{color:#fff;background:#176b36;border-color:#0f5429}.simStatus.flag-pulled{color:#fff;background:#7d2020;border-color:#5f1717}.simStatus.tackled{color:#fff;background:#6a4324;border-color:#51321a}.runLane path{stroke:#6c8d72;stroke-width:18px;opacity:.12;stroke-linecap:round}.runLane circle{fill:none;stroke:#6c8d72;stroke-width:2px;stroke-dasharray:5 5;opacity:.45}.analysisGrid button{background:#fafbf9;border-radius:12px}.analysisGrid button.active{background:#edf3ed}.tip{background:#f8faf7;border-color:#dce2dc;line-height:1.45}@media (width<=980px){.layout{grid-template-columns:190px minmax(0,1fr)}.right{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.right>.primary,.right>.tip{grid-column:1/-1}}@media (width<=760px){main{padding:10px}header{position:static}.layout{grid-template-columns:1fr}.fieldWrap{order:-1}.controls,.right{grid-template-columns:1fr}.choiceButtons{grid-template-columns:repeat(2,1fr)}.top{flex-wrap:wrap;align-items:stretch}.top>label{flex:1;min-width:145px}.route{stroke-width:4.6px}}@media (width<=430px){nav{grid-template-columns:repeat(2,1fr);width:100%;display:grid}.actionRow{gap:5px}.sectionHead{flex-wrap:wrap;align-items:flex-start}.analysisCard{padding:9px}}.liveReadsSvg text{fill:#26352a;paint-order:stroke;stroke:#f3f6ef;stroke-width:3px;stroke-linejoin:round;font-size:11px;font-weight:800}.ballTrail{fill:none;stroke:#8a5a31;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;opacity:.38;stroke-dasharray:2 7;pointer-events:none}.ball ellipse{filter:drop-shadow(0 1px 2px #00000059)}.scrubberBar{background:#fff;border:1px solid #d5ddd5;border-radius:12px;gap:6px;margin-top:6px;padding:8px 10px;display:grid;box-shadow:0 1px 6px #19281c0a}.scrubberBar>div{color:#5e685f;justify-content:space-between;align-items:center;font-size:12px;display:flex}.scrubberBar>div b{color:#243229}.scrubberBar input[type=range]{width:100%;margin:0}.actionRow.disabledAction{opacity:.48}.actionUse{align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.actionUse input{width:16px;min-height:16px}.actionTiming{white-space:nowrap;align-items:center;gap:4px;display:flex}.actionTiming input{width:64px;min-width:64px}@media (width<=760px){.actionRow{grid-template-columns:1fr 1fr}.actionUse,.actionTiming{grid-column:1/-1}.scrubberBar{margin-top:4px}}.simField{overflow:hidden}.simField .scrubberTop{box-shadow:none;background:#fff;border:0;border-bottom:1px solid #d5ddd5;border-radius:0;margin:0;padding:8px 12px}.simField .scrubberTop+svg{display:block}@media (width>=1100px){main{max-width:1560px;padding:18px 24px 32px}header{margin-bottom:16px;padding:10px 16px}header>div{min-width:180px}nav{justify-content:flex-end;gap:4px}nav button{min-height:38px;padding:7px 11px}.top{border:1px solid var(--line);z-index:14;background:#fff;border-radius:14px;padding:10px 12px;position:sticky;top:76px;box-shadow:0 3px 12px #19281c0b}.top label{grid-template-columns:auto minmax(90px,1fr);align-items:center;gap:8px}.top label input,.top label select{min-height:38px}.layout{grid-template-columns:230px minmax(600px,1fr) 300px;gap:18px}.controls,.right{overscroll-behavior:contain;scrollbar-width:thin;max-height:calc(100vh - 150px);padding-right:3px;position:sticky;top:140px;overflow:auto}.fieldWrap{background:#e8ece5;justify-content:center;align-items:center;min-height:620px;max-height:calc(100vh - 160px);display:flex}.fieldWrap>svg{width:auto;max-width:100%;height:min(76vh,780px)}.simField{background:#fff;min-height:0;max-height:none;display:block}.simField>svg{width:100%;height:auto;max-height:calc(100vh - 205px);margin:auto;display:block}.simField .scrubberTop{z-index:8;position:sticky;top:0}.controlGroup{gap:8px;padding:12px 13px}.controlGroup input,.controlGroup select,.controlGroup button{min-height:38px}.sectionHead{margin-bottom:12px}.sectionHead h2,.sectionHead h3{margin:0}.coverageLab{margin-top:16px;padding:16px}.analysisGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.analysisCard,.analysisGrid button{padding:12px}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.gameGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.callGrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.tip{padding:12px}}@media (width>=1450px){main{max-width:1720px}.layout{grid-template-columns:250px minmax(680px,1fr) 330px;gap:22px}.fieldWrap>svg{height:min(79vh,830px)}.simField>svg{max-height:calc(100vh - 190px)}}.autoTargets{grid-column:1/-1;grid-template-columns:1fr auto 1fr;align-items:center;gap:5px;display:grid}.autoTargets span{color:#657067;font-size:11px}.autoTargets select{min-width:0}.passSuccess{color:#245a35;background:#e7f2e9;border:1px solid #bfd4c3;border-radius:8px;padding:5px 7px;display:inline-block}@media (width>=1100px){.layout{grid-template-rows:auto auto;grid-template-columns:330px minmax(650px,1fr);align-items:start}.layout>.controls{grid-area:1/1;max-height:calc(48vh - 40px);position:sticky;top:140px;overflow:auto}.layout>.fieldWrap{grid-area:1/2/span 2;align-self:start}.layout>.right{grid-area:2/1;max-height:calc(48vh - 70px);position:sticky;top:calc(140px + 48vh);overflow:auto}.layout>.right>.primary,.layout>.right>.tip{grid-column:auto}.actionRow{grid-template-columns:68px 1.1fr .8fr 18px .9fr 62px 34px}.autoTargets{grid-column:1/-1}}@media (width>=1450px){.layout{grid-template-columns:360px minmax(760px,1fr)}}.cloudSync{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:auto minmax(260px,1fr) auto auto;align-items:center;gap:8px;padding:10px 12px;display:grid;box-shadow:0 1px 6px #19281c0a}.cloudSync>div{min-width:145px;display:grid}.cloudSync>div span{color:var(--muted);font-size:11px}.cloudSync input{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.cloudSync small{color:var(--muted);grid-column:1/-1}@media (width<=760px){.cloudSync{grid-template-columns:1fr 1fr}.cloudSync>div,.cloudSync input,.cloudSync small{grid-column:1/-1}}:root{--dash-bg:#08111a;--dash-panel:#101b26;--dash-panel2:#152231;--dash-line:#2a3949;--dash-text:#eef6ff;--dash-muted:#93a3b5;--dash-blue:#2387ff;--dash-green:#24572c;--dash-gold:#f0a52b}body{color:var(--dash-text);background:radial-gradient(circle at 50% -20%,#152535 0,#08111a 48%,#060b10 100%)}.appShell{max-width:1900px;margin:auto;padding:10px 14px 24px}.appHeader{z-index:30;border:1px solid var(--dash-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d1721f2;border-radius:14px;grid-template-columns:minmax(220px,.7fr) minmax(360px,.95fr) minmax(500px,1.35fr) auto;align-items:center;gap:16px;margin-bottom:10px;padding:9px 12px;display:grid;position:sticky;top:6px;box-shadow:0 12px 34px #0007}.brandBlock{display:grid}.brandBlock b{color:#fff;font-size:22px}.brandBlock small{color:var(--dash-muted)}.teamSwitcher{grid-template-columns:minmax(120px,.85fr) minmax(130px,1fr) auto auto;align-items:center;gap:5px;min-width:0;display:grid}.teamSwitcher select,.teamSwitcher input,.teamSwitcher button{color:#eef6ff;background:#111c27;border-color:#33475a;min-height:38px;padding:6px 8px}.teamSwitcher input{min-width:0}.teamSwitcher button{white-space:nowrap}.teamSwitcher .dangerLite:disabled{opacity:.35}.mainNav{border:1px solid var(--dash-line);background:#111e2a;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:2px;padding:3px;display:grid}.mainNav button,.headerUtilities button{color:#dbe7f2;background:0 0;border-color:#0000;min-height:38px}.mainNav button.active,.headerUtilities button.active{background:var(--team-primary,#2387ff);color:#fff;border-color:var(--team-accent,#3796ff)}.headerUtilities{justify-content:flex-end;gap:5px;display:flex}.headerUtilities button{border:1px solid var(--dash-line);background:#111c27}.teamHeaderIdentity{align-items:center;gap:8px;min-width:0;display:flex}.teamHeaderIdentity>span{border:2px solid var(--team-accent,#f0a52b);color:#fff;letter-spacing:.04em;border-radius:12px;place-items:center;width:42px;height:42px;font-size:12px;font-weight:950;display:grid;box-shadow:inset 0 0 0 1px #ffffff28}.teamHeaderIdentity>div{min-width:0;display:grid}.teamHeaderIdentity b{white-space:nowrap;text-overflow:ellipsis;color:#fff;overflow:hidden}.teamHeaderIdentity small{color:var(--dash-muted);font-size:10px}.teamLaunchShell{color:#f3f8fc;background:radial-gradient(circle at 50% -10%,#1a2d40 0,#08111a 48%,#05090d 100%);max-width:none;min-height:100vh;padding:32px clamp(16px,5vw,72px)}.teamLaunchHero{align-items:center;gap:16px;max-width:1180px;margin:0 auto 28px;display:flex}.teamLaunchHero h1{margin:0;font-size:clamp(28px,5vw,46px)}.teamLaunchHero p{color:#a9b8c6;margin:5px 0 0}.launchBall{color:#111827;background:#f0a52b;border-radius:20px;place-items:center;width:68px;height:68px;font-size:20px;font-weight:950;display:grid;box-shadow:0 15px 40px #0006}.teamChooser,.teamLaunchLoading{background:#0e1924;border:1px solid #2a3949;border-radius:20px;max-width:1180px;margin:auto;padding:clamp(14px,3vw,24px);box-shadow:0 24px 70px #0007}.teamLaunchLoading{color:#c9d7e4;place-items:center;min-height:180px;display:grid}.teamChooserHead{justify-content:space-between;align-items:end;gap:14px;margin-bottom:16px;display:flex}.teamChooserHead h2{margin:0}.teamChooserHead span{color:#94a6b8;margin-top:4px;font-size:12px;display:block}.teamLaunchGrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.teamLaunchCard{--card-primary:#2387ff;--card-accent:#f0a52b;text-align:left;background:linear-gradient(145deg,color-mix(in srgb,var(--card-primary) 18%,#101b26),#101b26 60%);border:1px solid color-mix(in srgb,var(--card-primary) 55%,#334155);border-top:4px solid var(--card-primary);color:#eef6ff;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:94px;padding:14px;display:grid;box-shadow:0 8px 24px #0003}.teamLaunchCard:hover{border-color:var(--card-accent);transform:translateY(-1px);box-shadow:0 12px 30px #0005}.teamLaunchMark{background:var(--card-primary,#2387ff);border:2px solid var(--card-accent,#f0a52b);color:#fff;letter-spacing:.04em;border-radius:14px;place-items:center;min-width:52px;height:52px;font-size:14px;font-weight:950;display:grid}.teamLaunchText{min-width:0;display:grid}.teamLaunchText b{white-space:nowrap;text-overflow:ellipsis;font-size:16px;overflow:hidden}.teamLaunchText small{color:#a9b8c6;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.teamLaunchCard em{color:#d2dde7;white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff18;border-radius:999px;padding:5px 7px;font-size:10px;font-style:normal}.teamAccessError{color:#ffdede;background:#3a1717;border:1px solid #a84646;border-radius:10px;margin:8px 0 12px;padding:9px 11px;font-size:12px}.teamLaunchEmpty{text-align:center;color:#9aacbb;border:1px dashed #3a4c5d;border-radius:14px;padding:34px}.teamLoginBackdrop{z-index:2000;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#02060bd9;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.teamLoginModal{--card-primary:#2387ff;--card-accent:#f0a52b;color:#eef6ff;border:1px solid #34485c;border-top:5px solid var(--card-primary);background:#111d29;border-radius:18px;gap:12px;width:min(420px,100%);padding:22px;display:grid;box-shadow:0 30px 90px #000a}.teamLoginModal .teamLaunchMark{margin:auto}.teamLoginModal h2,.teamLoginModal p{text-align:center;margin:0}.teamLoginModal p{color:#9fb0bf}.teamLoginModal label{color:#dce7f0}.teamLoginModal input{color:#fff;background:#0a131c;border-color:#40546a}.teamLoginModal .actions{justify-content:flex-end}.createTeamPanel{--card-primary:#2387ff;--card-accent:#f0a52b;background:#0a141e;border:1px solid #33475a;border-radius:14px;grid-template-columns:minmax(190px,.7fr) minmax(360px,1.3fr);gap:16px;margin-bottom:16px;padding:14px;display:grid}.createTeamPreview{background:linear-gradient(145deg,var(--card-primary),color-mix(in srgb,var(--card-primary) 40%,#0a121b));border:3px solid var(--card-accent);text-align:center;border-radius:14px;align-content:center;place-items:center;gap:7px;min-height:220px;display:grid}.createTeamPreview i{border:2px solid var(--card-accent);background:#0b1118aa;border-radius:20px;place-items:center;width:72px;height:72px;font-style:normal;font-weight:950;display:grid}.createTeamPreview b{font-size:20px}.createTeamPreview span{opacity:.85;font-size:11px}.createTeamFields{grid-template-columns:1fr 1fr;align-content:start;gap:9px;display:grid}.createTeamFields .wide{grid-column:1/-1}.createTeamFields input{color:#fff;background:#101b26;border-color:#3a4c60}.createTeamFields input[type=color]{width:100%;padding:4px}.createTeamFields small{color:#91a2b3;font-weight:500}.teamSettingsPage{gap:16px}.teamLockBadge{border-radius:999px;padding:7px 10px;font-size:11px}.teamLockBadge.locked{color:#d8ffe6;background:#2a5d3c;border:1px solid #3b8053}.teamLockBadge.unlocked{color:#ffefb4;background:#453c20;border:1px solid #78672e}.teamSettingsLayout{grid-template-columns:minmax(260px,.8fr) minmax(420px,1.2fr);align-items:start;gap:14px;display:grid}.teamPagePreview{--card-primary:#2387ff;--card-accent:#f0a52b;text-align:center;background:linear-gradient(145deg,var(--card-primary),color-mix(in srgb,var(--card-primary) 35%,#08111a));border:4px solid var(--card-accent);border-radius:20px;align-content:center;place-items:center;gap:12px;min-height:330px;padding:24px;display:grid;box-shadow:0 18px 50px #0004}.teamPagePreview .teamLaunchMark{background:#0c1420aa;width:88px;height:88px;font-size:20px}.teamPagePreview h1{margin:0;font-size:32px}.teamPagePreview p{color:#edf5fa;margin:5px 0}.teamPagePreview small{color:#d4e0e8}.teamSettingsForm{gap:12px;display:grid}.teamSettingsGrid,.teamSecurityCard{color:#172019;background:#fff;border:1px solid #d1d8d2;border-radius:14px;padding:13px}.teamSettingsGrid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.teamSettingsGrid .wide{grid-column:1/-1}.colorField{grid-template-columns:58px 1fr;align-items:center;gap:8px;display:grid}.colorField input{width:58px;padding:3px}.colorField span{color:#677269;font-family:ui-monospace,monospace;font-size:11px}.teamSecurityCard{border-left:5px solid var(--team-accent,#f0a52b);gap:11px;display:grid}.teamSecurityCard>div:first-child{gap:3px;display:grid}.teamSecurityCard>div:first-child span{color:#687269;font-size:11px}.teamSecurityCard label small{color:#6d766e;font-weight:500}.teamSettingsStatus{color:#385a42;font-size:11px}.teamSettingsPage .sectionHead h2{margin:0}.coachDashboard{grid-template-rows:minmax(0,1fr);grid-template-columns:300px minmax(640px,1fr) 340px;gap:10px;min-height:calc(100vh - 100px);display:grid}.playBrowser,.dashboardSide,.dashboardCenter{background:var(--dash-panel);border:1px solid var(--dash-line);border-radius:13px;min-width:0;overflow:hidden}.playBrowser{grid-template-rows:auto auto 1fr auto;min-height:0;display:grid}.browserTabs{border-bottom:1px solid var(--dash-line);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.browserTabs button{color:#aebdca;background:#101b26;border:0;border-radius:0;min-height:42px}.browserTabs button.active{background:var(--team-primary,#1680ef);color:#fff}.playSearch{color:#fff;background:#0a131c;border-color:#2a3949;margin:8px}.playList{padding:0 7px 8px;overflow:auto}.playListItem{text-align:left;color:#eaf2fa;background:0 0;border:0;border-bottom:1px solid #233140;border-radius:7px;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;width:100%;min-height:50px;padding:7px 8px;display:grid}.playListItem:hover{background:#142231}.playListItem.active{background:#163c64;box-shadow:inset 0 0 0 1px #2c8ef0}.playListItem span:nth-child(2){display:grid}.playListItem small{color:#8293a5;font-size:10px;font-weight:500}.playListItem em{color:#9fb0bf;font-size:11px;font-style:normal}.seriesDot{background:var(--dash-blue);border-radius:4px;width:7px;height:25px}.browserFooter{border-top:1px solid var(--dash-line);grid-template-columns:1fr 1fr;gap:6px;padding:8px;display:grid}.browserFooter button,.browserFooter .buttonLike{color:#eaf2fa;background:#111c27;border-color:#334456;min-height:38px}.dashboardCenter{background:#0a141e;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid}.playTitleBar{border-bottom:1px solid var(--dash-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.playTitleBar h2{color:#fff;margin:0;font-size:19px}.playTitleBar span{color:var(--dash-muted);font-size:11px}.playTitleBar button{color:#eef6ff;background:#142230;border-color:#33475a}.playTitleBar .primary{background:#167de9;border-color:#2893ff}.fieldLegend{color:#c8d5df;background:#0e1a24;gap:18px;padding:7px 12px;font-size:11px;display:flex}.fieldLegend span{align-items:center;gap:6px;display:flex}.fieldLegend i{border-top:3px solid #fff;width:32px;height:0}.fieldLegend .dashLine{border-top-style:dashed}.fieldLegend .ballLine{border-color:var(--dash-gold)}.dashboardField{background:#183d20;border-color:#4c6853;border-radius:9px;justify-content:center;align-items:center;min-height:0;margin:0 8px 8px;display:flex}.dashboardField svg{background:#24572c;width:auto;max-width:100%;height:min(68vh,760px)}.dashboardField .yard{stroke:#edf5ec;opacity:.48;stroke-width:2px}.dashboardField .los{stroke:#fff;opacity:.85}.dashboardField .route{filter:none}.dashboardField .motion{opacity:.95}.thumbnailRail{border-top:1px solid var(--dash-line);background:#0c1721;gap:8px;padding:8px;display:flex;overflow-x:auto}.thumbnailRail button{color:#d9e5ef;background:#101d29;border-color:#304152;flex:0 0 128px;grid-template-rows:1fr auto;gap:2px;height:112px;padding:5px;display:grid}.thumbnailRail button.active{border:2px solid var(--dash-blue);background:#132a41}.thumbnailRail svg{background:#0a131b;border-radius:5px;width:100%;height:72px}.miniRoute{fill:none;stroke:#dbe8f3;stroke-width:1.2px}.miniMotion{fill:none;stroke:#9fb3c5;stroke-width:1px;stroke-dasharray:2.2 1.8;opacity:.8}.thumbnailRail span{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.dashboardSide{align-content:start;gap:8px;padding:8px;display:grid;overflow:auto}.sideCard{color:#dce7f0;background:#111e2a;border:1px solid #2a3b4b;border-radius:10px;padding:10px}.sideCard h3{color:#fff;margin:0 0 8px;font-size:14px}.sideCard dl{gap:6px;margin:0;display:grid}.sideCard dl div{grid-template-columns:90px 1fr;gap:6px;display:grid}.sideCard dt{color:#8597a9;font-size:11px}.sideCard dd{margin:0;font-size:11px}.sequenceLine{border-top:1px solid #263848;grid-template-columns:24px 1fr auto;align-items:center;gap:7px;padding:6px 0;font-size:11px;display:grid}.sequenceLine b{background:#1d7fe4;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.sequenceLine em{color:#91a3b5;font-style:normal}.githubCard input{color:#fff;background:#09131c;border-color:#35485a;width:100%;margin:6px 0}.githubCard .actions{grid-template-columns:1fr 1fr;display:grid}.githubCard button{color:#fff;background:#132231;border-color:#34495c}.githubCard .primary{background:#147be4}.githubCard small{color:#8294a5;margin-top:7px;line-height:1.35;display:block}body input,body select,body button{color:#e7f0f8;background:#111c27;border-color:#344555}body input::placeholder{color:#718294}body .controlGroup,body .coverageLab,body .simDecision,body .rpoRead,body .cards article,body .gameCard,body .callGrid article,body .cloudSync{color:#e7f0f8;background:#101b26;border-color:#2a3949}body .tip{color:#aebdcc;background:#0d1721;border-color:#2a3949}body .analysisNote,body .cards small,body .reads,body .callGrid small,body .callGrid span{color:#91a1b2}body .active,body .primary{color:#fff;background:#167de9;border-color:#2893ff}.fieldWrap{background:#102018;border-color:#31483a}.fieldWrap svg{background:#24572c}.yard{stroke:#e9f1e9;opacity:.4}.los{stroke:#f5f7f5}.badge{color:#fff;background:#0c1620e8;border-color:#334657}.ball text{stroke:#0b131b;fill:#ffca78}.liveReadsSvg text{fill:#fff;stroke:#0a1118}.coverageLab,.library{color:#e7f0f8}@media (width<=1450px){.appHeader{grid-template-columns:1fr 1.2fr}.brandBlock,.teamSwitcher,.mainNav,.headerUtilities{min-width:0}.mainNav{grid-column:1/2}.headerUtilities{grid-column:2/3;justify-content:flex-start}}@media (width<=1250px){.coachDashboard{grid-template-columns:260px minmax(520px,1fr)}.dashboardSide{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.appHeader{grid-template-columns:1fr}.teamSwitcher,.mainNav,.headerUtilities{grid-column:auto}.headerUtilities{justify-content:flex-start}.mainNav{min-width:0}}@media (width<=820px){.appShell{padding:7px}.appHeader{position:static}.teamSwitcher{grid-template-columns:1fr 1fr}.teamSwitcher button{min-width:0}.mainNav{grid-template-columns:1fr 1fr}.headerUtilities{flex-wrap:wrap}.coachDashboard{grid-template-columns:1fr}.playBrowser{max-height:420px}.dashboardSide{grid-template-columns:1fr;display:grid}.dashboardField svg{width:100%;height:auto}.fieldLegend{flex-wrap:wrap}.playTitleBar{flex-direction:column;align-items:flex-start}.playTitleBar .actions{width:100%}.playTitleBar .actions>*{flex:1}}.simDashboard{grid-template-columns:300px minmax(660px,1fr) 350px}.simCenter{min-height:0}.simControls{max-height:calc(100vh - 108px);overflow:auto}.simControls .sideCard{gap:9px;display:grid}.simControls label{color:#d7e2ec}.simControls label>span{color:#8fa2b5;font-weight:600}.simRunButtons{grid-template-columns:1fr 1fr;gap:7px;display:grid}.fakeBiteControl{border-left:3px solid #d39a24;padding-left:8px}.fakeBiteControl small{color:#7f91a4}.compactChoices{grid-template-columns:repeat(3,1fr)}.compactChoices button{background:#101b26;min-height:36px}.compactChoices button.active{background:#177fe9;border-color:#3198ff}.compactRpo{background:#102238;border-color:#31516e;margin:8px}.timelineCard{gap:0!important}.timelineRow{border-top:1px solid #263746;grid-template-columns:44px 12px 1fr;align-items:center;gap:8px;min-height:32px;font-size:11px;display:grid}.timelineRow time{color:#9eb0c0;font-variant-numeric:tabular-nums}.timelineRow i{border:2px solid #c6d4df;border-radius:50%;width:9px;height:9px;position:relative}.timelineRow:not(:last-child) i:after{content:"";background:#34495b;width:1px;height:24px;position:absolute;top:9px;left:2px}.timelineRow.handoff i,.timelineRow.pitch i{background:#2d8cf0;border-color:#2d8cf0}.timelineRow.fake i{background:#f0a52b;border-color:#f0a52b}.timelineRow.pass i,.timelineRow.runpass i{background:#e34845;border-color:#e34845}.timelineRow.catch i{background:#45b96b;border-color:#45b96b}.timelineRow.motion i{border-style:dashed}.ballLocation rect{fill:#0b151ee8;stroke:#40576a}.ballLocation text{text-anchor:middle;fill:#fff;stroke:none;font-size:12px;font-weight:800}.simField.dashboardField{max-height:none;margin:0 8px 8px;display:block}.simField.dashboardField>svg{width:auto;max-width:100%;height:min(66vh,735px);margin:auto}.simField .scrubberTop{color:#eaf2fa;background:#0d1822;border-color:#2a3b4c}.scrubberBar input[type=range]{accent-color:#2589f3}.emptyState{background:#101b26;border:1px solid #2b3a49;border-radius:14px;place-items:center;gap:10px;min-height:60vh;display:grid}.analysisDashboard{grid-template-columns:290px minmax(0,1fr);gap:10px;min-height:calc(100vh - 100px);display:grid}.analysisMain{border:1px solid var(--dash-line);background:#0c1620;border-radius:13px;overflow:hidden}.analysisHero{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;display:grid}.analysisMetricCard{background:linear-gradient(#122130,#0d1822);border:1px solid #2c4053;border-radius:12px;gap:8px;padding:14px;display:grid}.metricHead{justify-content:space-between;align-items:center;display:flex}.metricHead h3{margin:0}.metricHead strong{color:#7abaff;font-size:21px}.analysisMetricCard>span,.analysisMetricCard>small{color:#8fa2b5;font-size:11px}.metricBig{border-top:1px solid #26394b;border-bottom:1px solid #26394b;align-items:flex-end;gap:9px;padding:9px 0;display:flex}.metricBig b{color:#58c77a;font-size:40px;line-height:.9}.metricBig small{color:#95a8b8}.metricGrid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.metricGrid span{color:#8ea0b2;background:#0a141e;border:1px solid #253849;border-radius:8px;padding:8px;font-size:10px;display:grid}.metricGrid b{color:#f2f7fb;font-size:14px}.analysisMetricCard p{color:#b7c5d0;margin:0;font-size:11px;line-height:1.45}.progressionLabel{color:#8ebcf0}.analysisFoot{color:#a5b5c3;border-top:1px solid #26394b;flex-wrap:wrap;gap:14px;padding:10px 12px;font-size:11px;display:flex}@media (width<=1320px){.simDashboard{grid-template-columns:260px minmax(540px,1fr)}.simDashboard>.dashboardSide{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;display:grid}.timelineCard{grid-column:1/-1}.analysisHero{grid-template-columns:1fr}}@media (width<=820px){.simDashboard,.analysisDashboard{grid-template-columns:1fr}.simDashboard>.dashboardSide{grid-template-columns:1fr;display:grid}.analysisMain{min-width:0}.analysisHero{padding:7px}.metricGrid{grid-template-columns:1fr 1fr}.simField.dashboardField>svg{width:100%;height:auto}}.builderActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.builderTimeline{background:#0f172a38;border:1px solid #94a3b847;border-radius:10px;gap:7px;margin-top:10px;padding:10px;display:grid}.timelineScale{color:var(--dash-muted,#94a3b8);border-bottom:1px solid #94a3b833;grid-template-columns:repeat(5,1fr);padding-bottom:5px;font-size:10px;display:grid}.timelineScale span:not(:first-child){text-align:right}.timelineEvent{grid-template-columns:minmax(110px,1fr) minmax(120px,2fr) 48px;align-items:center;gap:8px;font-size:10px;display:grid}.timelineEvent>span{text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;overflow:hidden}.timelineEvent input[type=range]{background:0 0;width:100%;min-height:28px;padding:0}.timelineEvent b{text-align:right;font-size:10px}.editorField text{-webkit-user-select:none;user-select:none}.editorField .motion{pointer-events:none}@media (width<=800px){.builderActions{grid-template-columns:1fr}.builderActions .primary{grid-column:auto}.timelineEvent{grid-template-columns:1fr}.timelineEvent b{text-align:left}}.builderTop{grid-template-columns:130px minmax(220px,1fr) auto;align-items:center;gap:8px;display:grid}.builderTopActions{flex-wrap:wrap;gap:6px;display:flex}.builderTopActions button{min-height:38px;padding:6px 9px}.builderToolbar{border:1px solid var(--dash-border,#334155);background:#0f172a7a;border-radius:12px;grid-template-columns:repeat(7,minmax(74px,1fr));gap:6px;margin:-2px 0 12px;padding:7px;display:grid}.builderToolbar button{min-height:38px;color:inherit;background:#ffffff0a;border-color:#94a3b840}.builderToolbar button.active{background:var(--dash-blue,#2563eb);color:#fff;border-color:#0000}.assignmentActions,.quickBallGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.assignmentActions button:last-child{grid-column:1/-1}.quickBall{gap:8px;display:grid}.quickBall>span,.drawTools>small{color:var(--dash-muted,#94a3b8);font-size:11px;line-height:1.35}.quickBallGrid button{min-height:38px;padding:5px;font-size:11px}.quickBallGrid button.active{outline:2px solid var(--dash-gold,#f3c969);background:#f3c96929}.drawTools{gap:8px;display:grid}.layerPanel{grid-template-columns:1fr 1fr}.layerPanel .groupHead{grid-column:1/-1}.layerPanel .inlineCheck{font-size:11px;font-weight:650}.editNode{fill:#fff;stroke:#172019;stroke-width:2px;cursor:grab;filter:drop-shadow(0 1px 2px #00000059)}.editNode:active{cursor:grabbing}.blockNode{stroke:#f5b942}.blockPath{fill:none;stroke:#f5b942;stroke-width:5px;stroke-dasharray:11 7;stroke-linecap:round;stroke-linejoin:round}.defenderBlock{stroke-dasharray:4 6;opacity:.9}.builderBallPath{stroke:#f0a52b;stroke-width:3.5px;fill:none;opacity:.84;stroke-dasharray:8 6}.builderBallPath.handoff{stroke-dasharray:none}.builderBallPath.pitch,.builderBallPath.lateral{stroke-dasharray:2 7}.builderBallPath.fake,.builderBallPath.fakepass{opacity:.42;stroke-dasharray:10 9}.ballEventLabel{fill:#fff;paint-order:stroke;stroke:#1f2937;stroke-width:3px;font-size:10px;font-weight:850}.coachAnnotation{fill:none;stroke:#fff6c7;stroke-width:3px;stroke-dasharray:7 5;pointer-events:none}.coachAnnotationText{fill:#fff6c7;paint-order:stroke;stroke:#172019;stroke-width:4px;pointer-events:none;font-size:16px;font-weight:850}.builderPreviewBar{color:#e8eef5;background:#09121cf0;border-top:1px solid #ffffff1f;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 10px;display:grid}.builderPreviewBar button{min-height:34px;padding:4px 9px}.builderPreviewBar input{width:100%;min-height:28px;padding:0}.builderPreviewBar span{min-width:34px;font-size:11px;font-weight:800}.builderContextMenu{z-index:1000;color:#f8fafc;background:#111827;border:1px solid #475569;border-radius:10px;gap:5px;width:195px;padding:8px;display:grid;position:fixed;box-shadow:0 18px 45px #00000059}.builderContextMenu b{padding:5px 7px;font-size:12px}.builderContextMenu button{text-align:left;color:#f8fafc;background:#1f2937;border-color:#374151;min-height:34px;padding:5px 8px}.playContextMenu{z-index:1200;color:#f8fafc;background:#111827;border:1px solid #475569;border-radius:10px;gap:5px;width:220px;padding:8px;display:grid;position:fixed;box-shadow:0 18px 45px #00000061}.playContextMenu b{white-space:nowrap;text-overflow:ellipsis;padding:5px 7px;font-size:12px;overflow:hidden}.playContextMenu button{text-align:left;color:#f8fafc;background:#1f2937;border-color:#374151;min-height:36px;padding:6px 9px}.playContextMenu button:hover{background:#293548;border-color:#4b5f78}.playContextMenu small{color:#9fb0bf;padding:4px 7px 2px;font-size:10px;line-height:1.35}.playListItem{-webkit-user-select:none;user-select:none}.timelineLandmarks{flex-wrap:wrap;gap:5px;padding:2px 0 4px;display:flex}.timelineLandmarks span{color:var(--dash-muted,#94a3b8);border:1px solid #94a3b840;border-radius:999px;padding:3px 6px;font-size:9px}.editorField{position:relative}.editorField .player{cursor:grab}.editorField .player:active{cursor:grabbing}@media (width<=1050px){.builderToolbar{grid-template-columns:repeat(4,1fr)}.builderTop{grid-template-columns:110px minmax(0,1fr)}.builderTopActions{grid-column:1/-1}}@media (width<=650px){.builderToolbar{grid-template-columns:repeat(3,1fr)}.builderTop{grid-template-columns:1fr}.builderTopActions{grid-column:auto}.layerPanel{grid-template-columns:1fr 1fr}.builderPreviewBar{grid-template-columns:auto auto 1fr}.builderPreviewBar span{grid-column:1/-1}}.annotationList{gap:5px;max-height:150px;display:grid;overflow:auto}.annotationList>div{border:1px solid #94a3b838;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:5px 7px;font-size:10px;display:flex}.annotationList button{width:30px;min-height:28px;padding:0}.builderPreviewBall ellipse{fill:#f0a52b;stroke:#fff;stroke-width:1.5px;filter:drop-shadow(0 1px 2px #00000059)}.builderPreviewBall text{fill:#fff;paint-order:stroke;stroke:#172019;stroke-width:3px;stroke-linejoin:round;font-size:10px;font-weight:800}.defenseDraggable{cursor:grab;touch-action:none}.defenseDraggable:active{cursor:grabbing}@media (width<=1000px){.teamSettingsLayout,.createTeamPanel{grid-template-columns:1fr}.createTeamPreview{min-height:160px}.appHeader{grid-template-columns:1fr 1fr}.mainNav,.headerUtilities{grid-column:1/-1}}@media (width<=650px){.teamLaunchShell{padding:18px 10px}.teamLaunchHero{align-items:flex-start}.launchBall{border-radius:16px;width:54px;height:54px}.teamChooserHead{flex-direction:column;align-items:stretch}.teamLaunchGrid{grid-template-columns:1fr}.teamLaunchCard{grid-template-columns:52px minmax(0,1fr)}.teamLaunchCard em{grid-column:2}.createTeamFields,.teamSettingsGrid{grid-template-columns:1fr}.createTeamFields .wide,.teamSettingsGrid .wide{grid-column:auto}.teamHeaderIdentity{order:-1}.teamPagePreview{min-height:250px}.appHeader{grid-template-columns:1fr}.mainNav,.headerUtilities{grid-column:auto}}.appShell{--dash-blue:var(--team-primary,#2387ff);--dash-gold:var(--team-accent,#f0a52b);--dash-panel:color-mix(in srgb,var(--team-primary,#2387ff) 9%,#101b26);--dash-panel2:color-mix(in srgb,var(--team-primary,#2387ff) 13%,#152231);--dash-line:color-mix(in srgb,var(--team-primary,#2387ff) 24%,#2a3949);background:radial-gradient(circle at 18% -5%,color-mix(in srgb,var(--team-primary,#2387ff) 18%,transparent),transparent 34%), radial-gradient(circle at 82% 0%,color-mix(in srgb,var(--team-accent,#f0a52b) 10%,transparent),transparent 26%);min-height:100vh}.appHeader{background:color-mix(in srgb,var(--team-primary,#2387ff) 9%,#0d1721 91%);border-color:color-mix(in srgb,var(--team-primary,#2387ff) 28%,#2a3949);grid-template-columns:minmax(250px,.9fr) minmax(520px,1.45fr) auto;gap:12px}.teamHeaderBrand{align-items:center;gap:10px;min-width:0;display:flex}.teamHeaderBrand>div{min-width:0;display:grid}.teamHeaderBrand b{white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:18px;overflow:hidden}.teamHeaderBrand small{color:#a9b8c6;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.teamHeaderLogo{border:2px solid var(--team-accent,#f0a52b);width:46px;height:46px;color:var(--team-on-primary,#fff);letter-spacing:.04em;border-radius:13px;flex:0 0 46px;place-items:center;font-size:12px;font-weight:950;display:grid;overflow:hidden}.teamLogoImage{object-fit:contain;width:100%;height:100%;display:block}.mainNav{background:color-mix(in srgb,var(--team-primary,#2387ff) 8%,#111e2a);grid-template-columns:repeat(5,minmax(78px,1fr))}.mainNav button.active,.headerUtilities button.active,.appShell .primary{background:var(--team-primary,#2387ff);color:var(--team-on-primary,#fff);border-color:var(--team-accent,#f0a52b)}.headerUtilities{grid-template-columns:repeat(4,auto);gap:4px;display:grid}.headerUtilities button{min-height:36px;padding:6px 9px;font-size:11px}.headerUtilities .switchTeamButton{border-color:color-mix(in srgb,var(--team-accent,#f0a52b) 45%,#344555)}.appShell input:focus,.appShell select:focus,.appShell button:focus-visible{outline-color:var(--team-accent,#f0a52b)}.appShell .controlGroup,.appShell .coverageLab,.appShell .simDecision,.appShell .rpoRead,.appShell .sideCard{background:color-mix(in srgb,var(--team-primary,#2387ff) 7%,#101b26);border-color:color-mix(in srgb,var(--team-primary,#2387ff) 22%,#2a3949)}.appShell .builderToolbar{background:color-mix(in srgb,var(--team-primary,#2387ff) 10%,#0f172a);border-color:color-mix(in srgb,var(--team-primary,#2387ff) 30%,#334155)}.appShell .builderToolbar button.active{background:var(--team-primary,#2387ff);color:var(--team-on-primary,#fff);box-shadow:inset 0 -2px 0 var(--team-accent,#f0a52b)}.appShell .builderTop{border:1px solid color-mix(in srgb,var(--team-primary,#2387ff) 23%,#334155);background:color-mix(in srgb,var(--team-primary,#2387ff) 6%,#101922);border-radius:12px;padding:8px}.appShell .builderActions .primary,.appShell .playTitleBar .primary,.appShell .githubCard .primary{background:var(--team-primary,#2387ff);color:var(--team-on-primary,#fff);border-color:var(--team-accent,#f0a52b)}.appShell .playBrowser,.appShell .dashboardSide,.appShell .dashboardCenter,.appShell .analysisMain{border-color:color-mix(in srgb,var(--team-primary,#2387ff) 23%,#2a3949)}.appShell .playListItem:hover{background:color-mix(in srgb,var(--team-primary,#2387ff) 10%,#142231)}.appShell .playListItem.active{background:color-mix(in srgb,var(--team-primary,#2387ff) 34%,#101b26);box-shadow:inset 0 0 0 1px var(--team-accent,#f0a52b)}.appShell .thumbnailRail button.active{border-color:var(--team-primary,#2387ff);background:color-mix(in srgb,var(--team-primary,#2387ff) 20%,#132a41)}.appShell .compactChoices button.active{background:var(--team-primary,#2387ff);color:var(--team-on-primary,#fff);border-color:var(--team-accent,#f0a52b)}.appShell input[type=range]{accent-color:var(--team-primary,#2387ff)}.appShell .builderBallPath,.appShell .blockNode,.appShell .blockPath{stroke:var(--team-accent,#f0a52b)}.appShell .badge{border-color:color-mix(in srgb,var(--team-accent,#f0a52b) 45%,#334657)}.appShell .fieldWrap{border-color:color-mix(in srgb,var(--team-primary,#2387ff) 32%,#31483a)}.appShell .teamSettingsPage .sectionHead{border-bottom:1px solid color-mix(in srgb,var(--team-primary,#2387ff) 24%,transparent);padding-bottom:10px}.logoUpload{align-content:start}.logoUpload input[type=file]{padding:7px}.logoRemove{width:max-content;min-height:32px;padding:4px 9px;font-size:11px}.teamLaunchMark{overflow:hidden}.teamLaunchMark .teamLogoImage,.createTeamPreview .teamLogoImage{object-fit:contain}.createTeamPreview .teamLogoImage{border:2px solid var(--card-accent);background:#ffffff18;border-radius:18px;width:78px;height:78px;padding:5px}.teamPagePreview .teamLogoImage{object-fit:contain}.builderToolbar button{font-size:12px}.builderActions{grid-template-columns:1.35fr 1fr 1fr 1fr}.builderActions .primary{grid-column:auto}.controlGroup>small,.tip span{line-height:1.35}.sectionHead h2{letter-spacing:-.01em}.teamSecurityCard{border-left-color:var(--team-accent,#f0a52b)}.teamSettingsStatus{background:color-mix(in srgb,var(--team-primary,#2387ff) 9%,#eef5ef);color:#24432e;border-radius:9px;padding:8px 10px}@media (width<=1450px){.appHeader{grid-template-columns:1fr 1.4fr}.teamHeaderBrand{grid-column:1}.mainNav{grid-column:2}.headerUtilities{grid-column:1/-1;justify-content:start}}@media (width<=950px){.appHeader{grid-template-columns:1fr}.teamHeaderBrand,.mainNav,.headerUtilities{grid-column:auto}.mainNav{grid-template-columns:repeat(5,1fr)}.headerUtilities{grid-template-columns:repeat(4,1fr)}.builderActions{grid-template-columns:1fr 1fr}}@media (width<=620px){.mainNav,.headerUtilities{grid-template-columns:repeat(3,1fr)}.teamHeaderBrand small{white-space:normal}.builderActions{grid-template-columns:1fr}}.teamPageHeadActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.teamPageHeadActions .switchTeamButton{border-color:color-mix(in srgb,var(--team-accent,#f0a52b) 45%,#344555);min-height:36px;padding:6px 10px}@media (width<=620px){.teamSettingsPage>.sectionHead{align-items:flex-start}.teamPageHeadActions{justify-content:space-between;width:100%}}.simField>svg{touch-action:pan-y pinch-zoom;overscroll-behavior:auto}.firstDownMarker line{stroke:#f6d84a;stroke-width:5px;stroke-dasharray:14 10;filter:drop-shadow(0 1px 1px #00000073)}.firstDownMarker rect{fill:#161d24d9;stroke:#f6d84a;stroke-width:1.5px}.firstDownMarker text{text-anchor:middle;fill:#fff7b0;stroke:none;letter-spacing:.06em;font-size:10px;font-weight:900}
