:root{color-scheme:dark;--bg:#0b0d11;--panel:#16191f;--line:#30343e;--muted:#a5acba;--red:#d83c4b;--text:#f1f3f7}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 45% 5%,#25202a 0,transparent 65%),var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid #454a57;border-radius:8px;background:#252932;color:#fff;padding:10px 14px;min-height:44px;font-weight:600;transition:background .15s}button:hover{background:#363c49}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f9c066;outline-offset:3px}a{color:#ff9da7}h1,h2,h3,p{margin:0 0 12px}h2{font-size:21px}h3{font-size:17px}input,select{background:#0f1117;color:#fff;border:1px solid #4d5360;border-radius:7px;padding:10px;min-height:46px;min-width:0;width:100%}label{display:grid;gap:5px;font-size:14px;color:#cbd0da}label.check{display:flex;align-items:center;margin:12px 0;gap:10px}.check input{width:21px;min-height:21px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px max(20px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:#0c0e13;font-size:13px}.masthead>span{letter-spacing:1px}.masthead a{text-decoration:none}.quiet{background:none}.primary{background:#bd283a;border-color:#f35c6b}.primary:hover{background:#de384b}.wide{width:100%;margin-top:10px}main{max-width:1490px;margin:auto;padding:24px 30px}.titlebar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:6px 0 24px}.titlebar h1{font-size:clamp(28px,3.3vw,45px);line-height:1.12;letter-spacing:-1.5px;margin-bottom:9px}.titlebar h1 em{font-style:normal;color:#ee5b6a}.titlebar p:not(.eyebrow){color:var(--muted)}.eyebrow,.section-label{font-size:11px;font-weight:800;letter-spacing:2px;color:#b3bac8}.eyebrow{color:#e77985;margin-bottom:9px}.toolbar{display:flex;flex-wrap:wrap;gap:8px}.toolbar button{font-size:13px}.arena{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:22px}.ice-column,.coach-column{min-width:0}.scoreboard{display:grid;grid-template-columns:1fr 126px 1fr;background:#16191f;border:1px solid #393d47;border-radius:14px 14px 0 0;padding:15px 18px;gap:12px;align-items:center}.team-score{display:flex;gap:12px;align-items:center;min-width:0}.team-score.home{flex-direction:row-reverse;text-align:right}.team-score img{width:55px;height:55px}.team-score strong{font-size:18px;display:block;line-height:1.2}.team-score small{color:var(--muted);font-size:12px}.bigscore{font-size:35px;font-weight:800;line-height:1.1}.clock{text-align:center;border-left:1px solid var(--line);border-right:1px solid var(--line)}.clock strong{display:block;font-size:29px;font-variant-numeric:tabular-nums;letter-spacing:2px}.clock small{font-size:10px;letter-spacing:1px;color:#e98994}.rink-shell{position:relative;background:#20242c;padding:13px 7px 5px;border:1px solid #393d47;border-top:0;border-radius:0 0 12px 12px;overflow:hidden}#rink{display:block;width:100%;height:auto}#puck{transition:transform .45s ease-in-out}.rink-banner{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:2px;background:#131c2ad9;color:#fff;border-radius:20px;padding:5px 12px;white-space:nowrap;pointer-events:none}.situation{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;color:#d8dde7;font-size:12px}.tag{border:1px solid #414752;background:#1a2029;border-radius:5px;padding:5px 9px}.tag.red{border-color:#b14453;color:#ffabb6}.result-card,.panel,.detail-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:19px;margin-bottom:16px}.result-card{border-left:3px solid var(--red);min-height:130px}.result-card p{font-size:18px;margin:10px 0 14px;line-height:1.5}.section-label{margin-bottom:10px}.coach-column h2{margin-bottom:12px}.tactic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tactic{min-height:79px;text-align:left;padding:11px;border-color:#464450;background:linear-gradient(135deg,#2b2931,#20232b)}.tactic strong{display:block;font-size:14px;text-transform:capitalize}.tactic small{display:block;font-size:11px;font-weight:400;line-height:1.4;color:#bcc3cf;margin-top:4px}.tactic.selected{border-color:#e57985;background:#512431}.fine{font-size:12px;color:var(--muted)}.dice-row{display:flex;align-items:center;gap:10px;margin:14px 0}.dice-label{flex:1;min-width:0;font-size:12px}.dice-label strong{display:block;color:#fff}.die{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;background:#f0eee6;border-radius:8px;color:#191c24;font-size:25px;font-weight:800;border-bottom:4px solid #adadb0}.die.defense{background:#b5283f;color:white;border-color:#752136}.die.pending{color:#687180;background:#303640;border-color:#20252e}details{border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-size:13px;color:#d2d6df;min-height:35px}details p{margin-top:8px}.bench-row{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.bench-row button{font-size:12px;padding:9px}.tabs{display:flex;gap:8px;margin:18px 0 9px}.tabs button{font-size:13px;flex:1}.detail-panel h2{font-size:17px}.log{padding:0 0 0 24px;max-height:310px;overflow:auto;font-size:13px}.log li{padding:8px 0;border-bottom:1px solid #2b303a}.log time{display:inline-block;color:#f18e9a;font-size:11px;margin-right:7px}.log li:first-child{color:white}.log li{color:#b5bdcc}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:right;padding:7px 5px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}th:first-child,td:first-child{text-align:left}th{color:#a7b2c4}.tablewrap{overflow-x:auto;max-width:100%}.badge{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.connection{font-size:12px;background:#252c36;border:1px solid #50576a;border-radius:7px;padding:9px;margin-bottom:12px}.notice{background:#40202b;border:1px solid #d35366;border-radius:7px;padding:10px;margin-bottom:14px}dialog{width:min(740px,calc(100% - 28px));max-height:90dvh;background:#171a21;color:var(--text);border:1px solid #585160;border-radius:17px;padding:25px;box-shadow:0 25px 90px #000c}dialog::backdrop{background:#020308cc;backdrop-filter:blur(5px)}.dialoghead{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.dialoghead h2{font-size:27px}.dialoghead button{min-width:44px;padding:5px;font-size:24px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:15px}.teamcards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.teamcard{border:1px solid var(--line);border-top:3px solid var(--team);background:#101319;padding:14px;border-radius:10px}.teamcard img{width:60px;height:60px;float:right;margin-left:5px}.teamcard h3{font-size:17px}.ratingbar{height:4px;background:#303540;position:relative;margin:4px 0 9px}.ratingbar span{display:block;height:100%;background:var(--team)}.ratingline{font-size:11px;color:#b9c1cf;display:flex;justify-content:space-between}.buttonrow{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.tutorialstep{font-size:18px;line-height:1.65;min-height:150px}.tutorialstep strong{color:#fa9ca6}.textbutton{padding:0;min-height:auto;border:0;background:none;color:#ff9da7;font-size:inherit}footer{text-align:center;font-size:12px;color:#969fae;padding:24px 0 12px}.savebar{display:flex;justify-content:space-between;gap:10px}.bench-selects{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bench-selects label{font-size:11px}.roster{margin:12px 0}.roster h3{font-size:14px}#linePanel details{margin:15px 0}.flash{animation:flash .6s 2}@keyframes flash{50%{filter:brightness(1.45)}}.simprogress{color:#ffad75}.option{padding:10px 0;border-bottom:1px solid var(--line)}[hidden]{display:none!important}
@media(min-width:1400px){.arena{grid-template-columns:minmax(0,1fr) 385px}.panel{padding:22px}}
@media(max-width:1000px){main{padding:18px}.arena{grid-template-columns:minmax(0,1fr) 310px;gap:14px}.scoreboard{grid-template-columns:1fr 100px 1fr;padding:12px}.team-score img{width:42px}.team-score{gap:6px}.team-score strong{font-size:14px}.clock strong{font-size:23px}.bigscore{font-size:28px}}
@media(max-width:760px){body{font-size:14px}.masthead{padding:8px 10px;font-size:10px;gap:6px}.masthead>span{letter-spacing:0}.masthead button{padding:7px 10px;font-size:11px}.titlebar{margin:10px 0 12px;gap:9px}.titlebar h1{font-size:25px;letter-spacing:-.9px;margin-bottom:5px}.titlebar .eyebrow{display:none}.titlebar p{font-size:10px;margin:0}.toolbar{max-width:135px;gap:5px;justify-content:flex-end}.toolbar button{font-size:10px;padding:5px 8px;min-height:34px}.arena{display:flex;flex-direction:column;gap:0}.ice-column{display:contents}.coach-column{display:contents}.scoreboard{order:0;grid-template-columns:1fr 86px 1fr;padding:8px 7px;gap:4px;border-radius:10px 10px 0 0}.team-score{gap:5px}.team-score strong{font-size:12px}.team-score img{width:34px;height:34px}.team-score small{font-size:10px}.bigscore{font-size:25px}.clock strong{font-size:22px;letter-spacing:1px}.clock small{font-size:9px}.rink-shell{order:1;padding:5px 2px 2px}.rink-banner{font-size:8px;padding:3px 9px;bottom:10%}.situation{order:2;margin:8px 0;gap:4px;font-size:10px}.tag{padding:4px 6px}.result-card{order:3;padding:12px;margin-bottom:10px;min-height:unset}.result-card .section-label{font-size:9px;margin-bottom:3px}.result-card p{font-size:16px;margin:5px 0 10px}.panel{padding:14px;margin-bottom:10px}.coach-column>.panel:first-child{order:4}.dice-panel{order:5}.coach-column>.panel:last-child{order:6}.tabs{order:7;margin-top:4px}.detail-panel{order:8;margin:0 0 10px}.tactic{min-height:68px;padding:9px}.tactic small{font-size:11px}.tactic-grid{grid-template-columns:1fr 1fr}.panel h2{font-size:18px}.section-label{font-size:10px}main{padding:0 10px max(14px,env(safe-area-inset-bottom))}.die{width:38px;height:38px;font-size:23px}.dice-row{margin:9px 0}.tabs button{padding:7px;font-size:11px}.formgrid{gap:10px}dialog{padding:17px;max-height:93dvh}.dialoghead h2{font-size:24px}.teamcards{gap:8px}.teamcard{padding:10px}.teamcard img{width:42px;height:42px}.teamcard h3{font-size:14px}.bench-selects{grid-template-columns:1fr 1fr}.tablewrap{font-size:11px}footer{font-size:10px;padding:16px 0}}
@media(prefers-reduced-motion:reduce){*,#puck{transition:none!important;animation:none!important}}

#detailedGuide{max-width:780px;font-size:17px;line-height:1.75}#detailedGuide p{font-size:17px}#detailedGuide select{width:100%;font:inherit;min-height:44px}#detailedGuide nav button{min-height:44px}#guideRules{margin-bottom:16px}.titlebar .toolbar{flex-wrap:wrap}
