*{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}.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}body{color:var(--ink);background:#f3f5f1}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}.fieldWrap svg{background:var(--field)}.route{stroke-width:4.2px;filter:drop-shadow(0 1px #ffffffd9);opacity:.94}.motion{stroke-width:3px;stroke-dasharray:7 7}.yard{stroke:#8e9c8e;opacity:.28}.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{background:#eef1ee;border-radius:999px;padding:5px 9px;font-size:11px}.simStatus.touchdown{color:#1f5830;background:#dfeee2}.simStatus.tackled{color:#67451f;background:#eee7df}.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}}
