/* SIM OPEN tab, scorecard length toggle and side games. Same palette and glass as the rest of the app. */
:root{--board:#f4f1e6}

/* scorecard: 9 / 18 toggle */
.seg{display:grid;grid-template-columns:1fr 1.6fr;gap:4px;padding:4px;margin:0 0 12px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid var(--glass-line)}
.seg button{height:36px;border:0;border-radius:9px;background:transparent;color:rgba(255,255,255,.65);font:700 14px/1 var(--f-num);letter-spacing:.08em;cursor:pointer}
.seg button.on{background:var(--masters);color:#fff}
.sc tr.tot + tr.tot td{border-top:1px solid rgba(255,255,255,.12)}

/* side games */
.sg-title{display:flex;align-items:baseline;justify-content:space-between;margin:22px 2px 10px}
.sg-title b{font-size:26px;letter-spacing:.04em}
.sg{border-radius:16px;padding:14px;margin-bottom:12px;border-left:4px solid var(--masters)}
.sg-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.sg-h b{font-size:22px;letter-spacing:.06em}
.sg-h em{font:700 14px/1 var(--f-num);font-style:normal;letter-spacing:.08em;color:#9fe0bf}
.sg-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.sg-chips span{border-radius:10px;background:rgba(255,255,255,.06);padding:8px 4px 6px;text-align:center}
.sg-chips span.lead{background:var(--masters)}
.sg-chips span.out{opacity:.45}
.sg-chips b{display:block;font-size:30px;line-height:1;margin-top:3px}
.sg-line{margin:10px 0 8px;font-size:14px;color:var(--muted)}
.sg-line .carry{color:#ffd6d7;font-family:var(--f-body);font-weight:600}
.sg-strip{display:grid;grid-template-columns:repeat(9,1fr);gap:4px}
.sg-strip i{font:700 14px/1 var(--f-num);font-style:normal;text-align:center;height:40px;border-radius:7px;background:rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;position:relative}
.sg-strip i small{font-size:9px;letter-spacing:.04em}
.sg-strip i sup{position:absolute;top:2px;right:3px;font-size:10px;color:#ffe08a}
.sg-strip.skins i.w{background:rgba(0,103,71,.85)}
.sg-strip.skins i.c{background:rgba(164,22,26,.35);color:#ffd6d7}
.sg-strip i.a{background:rgba(0,103,71,.85)}
.sg-strip i.b{background:rgba(164,22,26,.75)}
.sg-strip i.h{background:rgba(255,255,255,.16)}
.sg-key{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;color:var(--muted)}
.sg-key i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-left:6px}
.sg-key i:first-child{margin-left:0}
.sg-key i.a{background:var(--masters)}.sg-key i.b{background:var(--cardinal)}.sg-key i.h{background:rgba(255,255,255,.35)}
.sg-pick{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-bottom:10px}
.sg-pick span{font:700 13px/1 var(--f-num);color:var(--muted);letter-spacing:.1em}
.sg-pick select{height:40px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(255,255,255,.08);color:#fff;font:700 17px/1 var(--f-num);letter-spacing:.04em;padding:0 10px;-webkit-appearance:none;appearance:none}
.sg-pick select option{color:#000}
.sg-rows{display:grid;gap:6px}
.sg-row{display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:8px;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.05)}
.sg-row b{font-size:21px;line-height:1}
.sg-row span{font-size:12px;color:var(--muted);text-align:right}
.sg-row.a,.sg-big.a{box-shadow:inset 3px 0 0 #3fbf86}
.sg-row.b,.sg-big.b{box-shadow:inset 3px 0 0 #ff6b6b}
.sg-row.done b,.sg-big.done b{color:#ffe08a}
.sg-row.off{opacity:.55}.sg-row.off b{font-size:15px}
.sg-big{border-radius:12px;background:rgba(255,255,255,.05);padding:12px;margin-bottom:10px;text-align:center}
.sg-big b{display:block;font-size:34px;line-height:1}
.sg-big span{display:block;margin-top:4px;font-size:13px;color:var(--muted)}

/* SIM OPEN */
.so{padding-top:calc(10px + var(--safe-t))}
.demo-banner{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:8px 10px;border-radius:10px;background:var(--cardinal);font-size:12px;line-height:1.25}
.demo-banner b{font-size:15px;letter-spacing:.08em;flex:none}
.demo-banner button{margin-left:auto;flex:none;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:7px;padding:5px 8px;font:700 12px/1 var(--f-num);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.so-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.so-head h1{margin:4px 0 0;font:800 40px/1 var(--f-num);letter-spacing:.02em}
.so-head .back{border:0;background:transparent;color:#fff;font:700 20px/1 var(--f-num);letter-spacing:.06em;padding:10px 0;cursor:pointer}
.acct{display:flex;gap:6px;align-items:center}
.acct button{height:34px;border-radius:999px;padding:0 12px;font:700 14px/1 var(--f-num);letter-spacing:.08em;cursor:pointer;color:#fff;border:1px solid var(--glass-line);background:rgba(255,255,255,.08)}
.acct .admin-btn{background:var(--cardinal);border-color:var(--cardinal)}
.so-title{margin:0 0 4px;font:800 34px/1 var(--f-num);letter-spacing:.02em}
.so-sub{margin:0 0 12px;color:var(--muted);font-size:14px}
.so-card{border-radius:16px;padding:16px;margin-bottom:12px}
.so-card p{margin:0 0 12px}
.smp{display:inline-block;margin-left:6px;vertical-align:middle;background:var(--cardinal);color:#fff;font:700 9px/1 var(--f-num);font-style:normal;letter-spacing:.12em;padding:3px 5px;border-radius:4px}

.so-week{border-radius:18px;padding:16px;margin-bottom:14px;border-top:4px solid var(--masters);background:linear-gradient(180deg,rgba(0,103,71,.35),rgba(8,18,13,.7))}
.wk-top{display:flex;align-items:center;gap:8px}
.wk-no{background:var(--masters);font:800 15px/1 var(--f-num);letter-spacing:.1em;padding:6px 9px;border-radius:7px}
.wk-status{font:700 13px/1 var(--f-num);letter-spacing:.12em;color:var(--muted)}
.wk-status.on{color:#9fe0bf}
.wk-status.on::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#3fbf86;margin-right:6px;box-shadow:0 0 0 3px rgba(63,191,134,.25)}
.so-week h2{margin:12px 0 10px;font:800 36px/.95 var(--f-num);text-transform:uppercase;letter-spacing:.01em}
.wk-course b{display:block;font-size:26px;line-height:1.05;margin-top:4px}
.wk-course span{font-size:14px;color:var(--muted)}
.wk-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:10px;margin:12px 0}
.wk-grid>div{background:rgba(0,0,0,.25);border-radius:12px;padding:10px}
.wk-grid b{display:block;font-size:18px;line-height:1.1;margin-top:5px}
.wk-grid span{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.rules{margin:0 0 14px;padding:0;list-style:none;counter-reset:r;display:grid;gap:6px}
.rules li{counter-increment:r;display:flex;gap:10px;align-items:baseline;font-size:14px;line-height:1.3}
.rules li::before{content:counter(r);flex:none;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.12);font:700 13px/20px var(--f-num);text-align:center}

.cta{display:block;width:100%;height:54px;border:0;border-radius:14px;background:var(--masters);color:#fff;font:700 20px/1 var(--f-num);letter-spacing:.08em;cursor:pointer;box-shadow:0 6px 18px rgba(0,103,71,.4),inset 0 -3px 0 rgba(0,0,0,.2)}
.cta:disabled{opacity:.4;box-shadow:none}
.cta.ghost{background:rgba(255,255,255,.08);border:1px solid var(--glass-line);box-shadow:none}
.cta.reject{background:var(--cardinal);box-shadow:0 6px 18px rgba(164,22,26,.35),inset 0 -3px 0 rgba(0,0,0,.2)}
.cta.small{height:46px;font-size:17px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}

.so-lb,.so-past{border-radius:16px;padding:14px 12px;margin-bottom:14px}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;margin:0 2px 10px}
.sec-h b{font-size:22px;letter-spacing:.06em}
.sec-h.out{margin-top:6px}
.so-lb table{width:100%;border-collapse:collapse}
.so-lb th{font:700 11px/1 var(--f-num);letter-spacing:.1em;color:var(--muted);padding:0 4px 8px;text-align:center}
.so-lb th.pl{text-align:left}
.so-lb td{padding:8px 4px;border-top:1px solid rgba(255,255,255,.08);text-align:center;vertical-align:middle}
.so-lb td.rk{font:700 20px/1 var(--f-num);width:36px}
.so-lb td.pl{text-align:left}
.so-lb td.pl b{font-size:20px}
.so-lb td.sc{white-space:nowrap}
.so-lb td.sc small{display:inline-block;margin-left:6px;font:600 14px/1 var(--f-num);color:var(--muted);letter-spacing:0;vertical-align:middle}
.so-lb td.sim{font-size:12px;color:rgba(255,255,255,.8)}
.so-lb td.vf{width:30px}
.so-lb tr.mine td{background:rgba(0,103,71,.25)}
.ck{width:22px;height:22px;vertical-align:middle}
.pt{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 6px;border-radius:5px;background:var(--board);font:800 22px/1 var(--f-num);vertical-align:middle;box-shadow:inset 0 -2px 0 rgba(0,0,0,.15)}
.pt.u{color:var(--cardinal)}.pt.o{color:var(--masters)}.pt.e{color:#1b1b1b}
.st{font:700 11px/1 var(--f-num);font-style:normal;letter-spacing:.08em;padding:3px 5px;border-radius:4px;background:rgba(255,255,255,.14)}
.st.rejected{background:var(--cardinal)}
.lb-key{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 2px 0;font-size:12px;color:var(--muted)}
.lb-key .pt{min-width:24px;height:22px;font-size:16px}
.lb-key .ck{width:18px;height:18px;margin-left:6px}
.lb-lock{color:var(--muted);margin:4px 2px 12px}
.pw{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:9px 2px;border-top:1px solid rgba(255,255,255,.08)}
.pw:first-of-type{border-top:0}
.pw .wk{font:700 13px/1 var(--f-num);letter-spacing:.08em;background:rgba(255,255,255,.1);padding:5px 7px;border-radius:6px}
.pw b{font-size:20px}
.pw small{margin-top:3px;letter-spacing:.02em}
.pw .g{font:700 22px/1 var(--f-num)}

/* submit */
.so-step{border-radius:16px;padding:14px;margin-bottom:12px}
.step-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.step-h i{font:800 15px/26px var(--f-num);font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--masters);text-align:center}
.step-h b{font-size:18px;letter-spacing:.06em}
.gross{display:grid;grid-template-columns:64px 1fr 64px;gap:10px;align-items:center}
.gross button{height:64px;border-radius:14px;border:1px solid var(--glass-line);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.gross button svg{width:26px;height:26px}
.gross input{height:72px;width:100%;border-radius:14px;border:2px solid var(--masters);background:rgba(0,0,0,.3);color:#fff;text-align:center;font:800 56px/1 var(--f-num);-moz-appearance:textfield;appearance:textfield}
.gross input::-webkit-inner-spin-button,.gross input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.gross-vs{display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 0;color:var(--muted);font-size:14px}
.sims{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.sims button{height:44px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(255,255,255,.06);color:#fff;font:700 15px/1 var(--f-num);letter-spacing:.03em;cursor:pointer}
.sims button.on{background:var(--masters);border-color:#3fbf86}
.photo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:120px;border-radius:14px;border:2px dashed rgba(255,255,255,.3);color:var(--muted);cursor:pointer;overflow:hidden;font-size:14px}
.photo svg{width:34px;height:34px;color:#fff}
.photo.has{border-style:solid;border-color:var(--masters);padding:6px}
.photo img{width:100%;max-height:220px;object-fit:contain;border-radius:10px}
.so-err{color:#ffd6d7;background:rgba(164,22,26,.35);border-radius:10px;padding:8px 10px;font-size:14px;margin:0 0 10px}
.so-note{color:var(--muted);font-size:13px;text-align:center;margin:10px 0}

/* confirmation */
.so-done{border-radius:18px;padding:22px 16px 16px;text-align:center}
.big-check{width:78px;height:78px;border-radius:50%;margin:0 auto 10px;background:var(--masters);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 8px rgba(0,103,71,.25)}
.big-check.rejected{background:var(--cardinal);box-shadow:0 0 0 8px rgba(164,22,26,.25)}
.big-check svg{width:44px;height:44px}
.so-done h2{margin:6px 0 4px;font:800 36px/1 var(--f-num);letter-spacing:.03em}
.so-done .st{display:inline-block;font-size:14px;padding:5px 9px;margin:4px 0 0}
.so-done .st.pending{background:#b8860b}
.so-done .st.approved{background:var(--masters)}
.done-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;margin:14px 0}
.done-grid>div{background:rgba(0,0,0,.25);border-radius:12px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:6px}
.done-grid b{font-size:34px;line-height:1}
.done-grid b.sm{font-size:22px;line-height:34px}
.done-photo{width:100%;border-radius:12px;margin:2px 0 10px;border:1px solid var(--glass-line)}

/* admin */
.fields{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.fields label,.fld{display:block}
.fields .w25{flex:0 0 calc(28% - 4px)}.fields .w75{flex:1 1 calc(72% - 4px)}.fields .w50{flex:1 1 calc(50% - 4px)}
.fields small,.fld small{margin:0 0 5px 2px}
.fields input,.fld input{width:100%;height:44px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(0,0,0,.3);color:#fff;padding:0 10px;font:600 17px/1 var(--f-body);color-scheme:dark}
.fld{margin-bottom:10px}
.so-review .rv{border-radius:16px;padding:10px;margin-bottom:12px;border-left:4px solid #b8860b}
.rv img{width:100%;border-radius:10px;display:block;cursor:zoom-in}
.nophoto{height:90px;border-radius:10px;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.rv-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 2px}
.rv-row b{font-size:24px}
.rv-row small{margin-top:4px;letter-spacing:.02em}
.rv-score{display:flex;align-items:center;gap:8px}
.rv-score b{font-size:36px}

/* sheets */
.so-sheet{max-height:86vh;overflow:auto}
.so-sheet .cta{margin-top:8px}
.quick{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.quick button{height:42px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(255,255,255,.06);color:#fff;font:700 15px/1 var(--f-num);letter-spacing:.04em;cursor:pointer}
.zoom{width:100%;border-radius:12px}

/* LEAGUE + SIM OPEN tournament (scores from SGT) */
.sgt-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-2px 2px 14px}
.sgt-line p{margin:0;font-size:13px;color:#9fe0bf}
.sgt-line .cta.sgt{width:auto;height:38px;padding:0 14px;font-size:15px;flex:none;display:flex;align-items:center;text-decoration:none;background:#1b1b1b;border:1px solid rgba(255,255,255,.3);box-shadow:none}
.so-lb tr.in td.rk:first-child{color:#9fe0bf}
.so-lb td.pts{font-size:22px;color:#fff}
.sim-lb th,.sim-lb td{padding-left:2px;padding-right:2px}
.sim-lb td.rd{font:600 16px/1 var(--f-num);color:rgba(255,255,255,.9);width:30px}
.sim-lb td.pl b{font-size:18px}
.sim-lb tr.mc td{opacity:.55}
.sim-lb .mcflag{display:inline-block;margin-left:6px;font:700 10px/1 var(--f-num);font-style:normal;letter-spacing:.1em;background:var(--cardinal);color:#fff;padding:3px 5px;border-radius:4px;vertical-align:middle}
.sim-lb tr.cutrow td{padding:6px 4px;font:700 12px/1 var(--f-num);letter-spacing:.12em;color:#ffd6d7;text-align:center;border-top:2px dashed rgba(164,22,26,.8)}
.cut-b{font-size:16px!important}
.wr{padding:10px 2px;border-top:1px solid rgba(255,255,255,.08)}
.wr:first-of-type{border-top:0}
.wr-h{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}
.wr-h .wk{font:700 13px/1 var(--f-num);letter-spacing:.08em;background:rgba(255,255,255,.1);padding:5px 7px;border-radius:6px}
.wr-h b{font-size:18px;flex:1}
.wr-top{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.wr-top li{display:grid;grid-template-columns:30px 1fr auto auto 48px;align-items:center;gap:8px}
.wr-top li span{font:700 15px/1 var(--f-num);color:var(--muted)}
.wr-top li b{font-size:17px}
.wr-top li em{font:600 15px/1 var(--f-num);font-style:normal;color:var(--muted)}
.wr-top li i{font:700 14px/1 var(--f-num);font-style:normal;color:#9fe0bf;text-align:right}
.wr-top .pt{min-width:28px;height:24px;font-size:17px}
.seeds{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.seeds li{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:6px;background:rgba(0,0,0,.25);border-radius:10px;padding:8px}
.seeds .seed{grid-row:span 2;font:800 20px/1 var(--f-num);color:var(--gold, #e7c27a);align-self:center}
.seeds b{font-size:17px;line-height:1.1}
.seeds em{font:600 13px/1.2 var(--f-num);font-style:normal;color:var(--muted)}
.seeds .smp{display:none}
.pw .del{border:1px solid rgba(255,255,255,.25);background:transparent;color:#ffd6d7;font:700 11px/1 var(--f-num);letter-spacing:.08em;padding:6px 7px;border-radius:6px;cursor:pointer}
.fields select.sel{width:100%;height:44px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(0,0,0,.3);color:#fff;padding:0 8px;font:600 15px/1 var(--f-body);color-scheme:dark}
.so-sheet .fld select{width:100%;height:46px;border-radius:10px;border:1px solid var(--glass-line);background:rgba(0,0,0,.3);color:#fff;padding:0 10px;font:600 16px/1 var(--f-body);color-scheme:dark}
.legacy-h{margin-top:22px;opacity:.8}
.sim-lb table{table-layout:fixed}
.sim-lb th.c-pos{width:36px}.sim-lb th.c-rd{width:28px}.sim-lb th.c-tot{width:48px}
.sim-lb td.pl{overflow:hidden}
.sim-lb td.pl .smp{display:block;width:max-content;margin:3px 0 0}
.sim-lb td.pl .mcflag{margin:3px 0 0 0}
.wr-top li b .smp{margin-left:6px}
.wr-top li b .smp{font:700 9px/1 var(--f-num);letter-spacing:.12em;color:#fff;padding:3px 5px;vertical-align:middle}
