/* ===== v13 mock CSS (on top of the real m18 CSS). Mocks only; nothing here is deployed. ===== */

/* ---------- Item 3: shadow tokens (the standing rule; see NOTES.md "Shadow rule") ----------
   A shadow means "this is a card" or "you can tap this".
   --sh-card  top-level cards, panels, tables (rule 1)
   --sh-btn   tappable buttons and whole toggle groups (rules 2, 3); gone when pressed
   --sh-room  space a shadow needs; every gap next to a shadowed thing is at least gap + this (rule 6) */
:root{--sh-card:4px 4px 0 var(--g);--sh-btn:3px 3px 0 var(--ink);--sh-none:none;--sh-room:4px;
  --rh-sec:32px;--rh-head:14px;--rh-stack:16px}
@media(max-width:760px){:root{--rh-sec:24px;--rh-head:12px}}
body,body.page-setup,body.page-live,body.page-score{--card-shadow:var(--sh-card)}

/* rule 1: top-level cards, panels, tables. Same 4px green offset on every page type (was 5px on public pages, 6px yellow on the VS box) */
.card,.vc,.k-isec,.tbl,.sgc,.lb .mt,.vsbox,.roster,.k-sheet .card{box-shadow:var(--sh-card)}
.k-land .k-isec.hero{box-shadow:var(--sh-card)}
/* rule 2: tappable buttons, one 3px ink offset, gone when pressed. Ghost and small buttons were flat or 2px */
.btn,.btn.sm,.btn.ghost,.btn.ghost.sm,.btn.ghost-d,.btn.red,.btn.green,.hdr-r .btn,.card-chip,a.card-chip{box-shadow:var(--sh-btn)}
.btn:active,.card-chip:active{box-shadow:none;transform:translate(3px,3px)}
.btn[disabled],.btn[aria-disabled="true"],button[disabled].btn{box-shadow:none;transform:none}
/* buttons on the dark green bands keep a visible offset */
.vband .btn,.lhero .btn,.v13-dark .btn{box-shadow:3px 3px 0 #0e2a1f}
/* rule 3: one shadow on the whole toggle group; segments flat, the selected one shows by fill */
.seg{box-shadow:var(--sh-btn)}
.seg label,.seg a,.seg button,.seg span{box-shadow:none}
.k-evr .seg,.k-meal .seg{box-shadow:none}
.k-evr .seg label,.k-meal .seg label{box-shadow:var(--sh-btn)}
.k-basis{display:inline-flex;gap:3px;padding:3px;border:2px solid var(--ink);border-radius:999px;overflow:hidden;box-shadow:var(--sh-btn);background:#fffdf7}
.k-basis .chip{border:0;border-radius:999px;min-height:32px;padding:0 14px;opacity:1;font-size:12px}

.k-basis .chip.ok{background:var(--g);color:var(--r)}
/* rule 4: labels and badges stay flat */
.live,.chip:not(a),.hint,.k-count,.mlabel,.eyebrow,.k-up,.tag{box-shadow:none}
/* rule 5: anything inside a card is flat with a border only */
:is(.card,.vc,.k-isec,.panel) :is(.card,.k-isec,.ann,.k-post,.k-code,.k-hcp,.k-allg,.k-meal,.k-tally>div,.now,.k-saverow,.k-who,.k-share,.k-rsum a,.k-rsum a.on){box-shadow:none}
:is(.card,.vc,.k-isec,.panel,.tbl,.sgc) :is(.tbl,.sgc){box-shadow:none}

/* ---------- Item 1: one board section rhythm ---------- */
.v13-rh .lmain{display:flex;flex-direction:column;gap:var(--rh-sec);padding-top:var(--rh-sec);padding-bottom:var(--rh-sec)}
.v13-rh .lmain>[data-tabs]{margin:0}
.v13-rh .lmain .vs{padding:0}
.v13-rh .lmain .vs .bar{margin-top:calc(var(--rh-head) + var(--sh-room))}
.v13-rh .lmain h2,.v13-rh .sgh h2,.v13-rh .ind h2{margin:0}
.v13-rh .lmain>div>h2,.v13-rh .sgh,.v13-rh .ind>.lrow{margin:0 0 var(--rh-head);min-height:40px;display:flex;align-items:center}
.v13-rh .ind>.lrow{justify-content:space-between;gap:12px;flex-wrap:wrap}
.v13-rh .matches{margin-top:0;gap:calc(12px + var(--sh-room))}
.v13-rh .sg{margin-top:0}
.v13-rh .roster+.roster{margin-top:calc(var(--rh-stack) + var(--sh-room))}
@media(max-width:760px){.v13-rh .lmain{padding-top:16px}.v13-rh .lmain>div:empty{display:none}}

/* ---------- Item 10 / 11: info page grid that uses the width ---------- */
/* root cause: .pg .wrap{display:flex} (v11.css:27) out-specifies .k-land{display:grid}; the 900px rule's align-items:start then shrink-wraps each card */
.pg .wrap.k-land{display:grid;grid-template-columns:minmax(0,1fr);gap:calc(16px + var(--sh-room));align-items:stretch}
@media(min-width:768px){.pg .wrap.k-land{grid-template-columns:repeat(2,minmax(0,1fr))}.pg .wrap.k-land .span2{grid-column:1/-1}}
.k-land .k-isec{min-width:0}
.k-land .k-isec h3{min-height:32px}
.v13-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:0;font-size:14px}
.v13-dl dt{font:500 11px 'DM Mono',monospace;letter-spacing:1px;color:#5f5a4f;padding-top:2px}
.v13-dl dd{margin:0;overflow-wrap:anywhere}
.v13-dl a{color:var(--g);font-weight:700}
.k-isec.hero.v13-live{background:var(--g);color:var(--r)}
.k-isec.hero.v13-live .mlabel{color:var(--y)}
.k-isec.hero.v13-live .big{color:var(--r)}
.k-isec.hero.v13-done{background:#fffdf7}
.v13-score{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:800 16px Inter,sans-serif}
.v13-score b{font:900 30px/1 Fraunces,Georgia,serif}
.v13-score .dot{flex:none}
.k-cta{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px 16px}
@media(max-width:560px){.k-cta .btn{flex:1 1 100%}}

/* ---------- Item 12: Who's playing ---------- */
.v13-who{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media(min-width:768px){.v13-who{grid-template-columns:repeat(3,minmax(0,1fr))}}
.v13-wg{border:2px solid var(--ink);border-radius:12px;background:#fff;overflow:hidden}
.v13-wg h4{margin:0;padding:8px 12px;background:var(--g);color:var(--r);font:500 11px 'DM Mono',monospace;letter-spacing:1.2px;display:flex;justify-content:space-between;gap:8px}
.v13-wp{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:0 12px;min-height:44px;border-top:1.5px solid var(--line)}
.v13-wp:first-of-type{border-top:0}
.v13-wp b{font:700 14px Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v13-wp small{font:500 11px 'DM Mono',monospace;color:#5f5a4f;white-space:nowrap}
.v13-wp .rs{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;border:1.5px solid var(--ink);font:600 10px 'DM Mono',monospace;margin-left:6px}
.v13-wp .rs.y{background:var(--m)}.v13-wp .rs.n{background:#f3d2cb;color:#7a2318;border-color:#7a2318}.v13-wp .rs.q{background:#fff}
.v13-ihead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}

/* ---------- Item 4: Check Hole rows, score first in a fixed column ---------- */
#confirm-list.v13-ck li.pick{display:grid !important;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;text-align:left}
#confirm-list.v13-ck li.pick .v{order:-1;width:48px;min-width:48px;text-align:center;font:800 20px 'DM Mono',monospace;font-variant-numeric:tabular-nums;justify-self:center}
#confirm-list.v13-ck li.pick .v .sc{margin:0 auto}
#confirm-list.v13-ck li.pick .n{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
#confirm-list.v13-ck li.pick .n b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-width:100%;white-space:normal;overflow:hidden;overflow-wrap:anywhere;line-height:1.2}

/* ---------- Item 5: event balance options + slim group rows ---------- */
.v13-opt{font:800 11px 'DM Mono',monospace;letter-spacing:1.4px;color:var(--red);margin:0 0 8px}
.v13-ta{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:#fffdf7}
.v13-ta .v13-tl{padding:12px;color:#fff;min-width:0;display:flex;flex-direction:column;gap:4px}
.v13-ta .v13-tl.a:not([class*=" c-"]){background:var(--soju)}.v13-ta .v13-tl.b{text-align:right;align-items:flex-end}.v13-ta .v13-tl.b:not([class*=" c-"]){background:var(--mak)}
.v13-ta .v13-tl b{font:800 14px/1.2 Inter,sans-serif;overflow-wrap:anywhere}
.v13-ta .v13-tl small{font:500 10px 'DM Mono',monospace;letter-spacing:1px;opacity:.92}
.v13-ta .v13-tl .n{font:900 30px/1 Fraunces,Georgia,serif}
.v13-ta .v13-md{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px;border-left:2px solid var(--ink);border-right:2px solid var(--ink);min-width:78px;text-align:center}
.v13-ta .v13-md .l{font:500 10px 'DM Mono',monospace;letter-spacing:1px}
.v13-ta .v13-md .v{font:900 22px/1 Fraunces,Georgia,serif}
.v13-ta .v13-md .s{font:600 9.5px/1.2 'DM Mono',monospace;max-width:72px}
.v13-ta .v13-md.warn{background:var(--amber-bg);color:var(--amber-ink)}
.v13-bb{border:2px solid var(--ink);border-radius:14px;background:#fffdf7;padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.v13-bb .ends{display:flex;justify-content:space-between;gap:12px;font:700 13px Inter,sans-serif}
.v13-bb .ends>span{display:flex;align-items:center;gap:6px;min-width:0}
.v13-bb .ends>span:last-child{justify-content:flex-end;text-align:right}
.v13-bb .ends b{font:900 20px Fraunces,Georgia,serif}
.v13-bb .ends em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v13-bb .bar{position:relative;display:flex;height:18px;border:2px solid var(--ink);border-radius:999px;overflow:hidden}
.v13-bb .bar i{display:block;height:100%}
.v13-bb .bar i.a{background:var(--soju);border-right:2px solid var(--ink)}.v13-bb .bar i.b{background:var(--mak);flex:1}
.v13-bb .bar:after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#fffdf7}
.v13-bb .gl{display:flex;justify-content:center}
.v13-w47{width:47%}.v13-w46{width:46%}.v13-w49{width:49%}.v13-w50{width:50%}.v13-w51{width:51%}.v13-w52{width:52%}.v13-w54{width:54%}
.v13-gap{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 10px;border-radius:999px;border:1.5px solid var(--ink);background:#fff;font:600 11px 'DM Mono',monospace;letter-spacing:.6px;white-space:nowrap}
.v13-gap.warn{background:var(--amber-bg);color:var(--amber-ink);border-color:var(--amber-line)}
.v13-ban{background:var(--g);color:var(--r);border-radius:14px;padding:12px 16px;display:flex;flex-direction:column;gap:8px}
.v13-ban .l{font:500 11px 'DM Mono',monospace;letter-spacing:1.4px;color:var(--y)}
.v13-ban .row{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}
.v13-ban .v13-tm{display:flex;align-items:center;gap:8px;min-width:0;font:700 14px Inter,sans-serif}
.v13-ban .v13-tm b{font:900 24px Fraunces,Georgia,serif}
.v13-ban .v13-tm em{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}
.v13-ban .v13-gap{margin-left:auto;background:var(--r);color:var(--ink)}
.v13-ban .v13-gap.warn{background:var(--y);color:var(--ink);border-color:var(--ink)}
.v13-ban .dot{border-color:var(--r)}
.v13-gsum{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:8px 12px;margin-top:10px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font:600 12px 'DM Mono',monospace}
.v13-gsum span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.v13-gsum .g{margin-left:auto}
.v13-gsum.warn{background:var(--amber-bg);border-color:var(--amber-line);color:var(--amber-ink)}
.v13-optgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:calc(24px + var(--sh-room))}
@media(min-width:1024px){.v13-optgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- Items 6 / 7: host scorecard marks ---------- */
.k-sg thead tr.si th{height:26px;background:#fffdf7;font-size:10.5px;color:#6b6457}
.k-sg thead th .v13-tag{display:block;margin:2px auto 0;width:max-content;padding:0 4px;border-radius:4px;background:var(--y);color:var(--ink);border:1px solid var(--ink);font:700 8.5px/13px 'DM Mono',monospace;letter-spacing:.4px}
.k-sg thead th .v13-tag.ld{background:var(--m)}
.k-sg thead th.v13-sp{height:44px;vertical-align:middle}
.k-sg td .c i.nm{font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font:700 14px 'DM Mono',monospace;font-variant-numeric:tabular-nums;color:var(--ink)}
.k-sg td .c i.nm.b{border-radius:50%;box-shadow:inset 0 0 0 2px var(--red);color:var(--red)}
.k-sg td .c i.nm.e{border-radius:50%;box-shadow:inset 0 0 0 2px var(--red),inset 0 0 0 4px #fffdf7,inset 0 0 0 6px var(--red);color:var(--red)}
.k-sg td .c i.nm.o{border-radius:3px;box-shadow:inset 0 0 0 2px var(--g);color:var(--g)}
.k-sg td .c i.nm.d{border-radius:3px;box-shadow:inset 0 0 0 2px var(--g),inset 0 0 0 4px #fffdf7,inset 0 0 0 6px var(--g);color:var(--g)}
.k-sg td .c.mk:after{content:attr(data-m);top:2px;right:2px;min-width:12px;height:12px;padding:0 2px;border-radius:3px;background:var(--y);color:var(--ink);border:1px solid var(--ink);font:700 8px/12px 'DM Mono',monospace;text-align:center}
.k-sg td .c.mk.bb:after{background:var(--m)}
.k-sg td .c.mk2:after{content:attr(data-m)}
.v13-key{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 16px;border:2px solid var(--ink);border-radius:12px;margin-top:calc(12px + var(--sh-room));background:#fffdf7;font:600 12px Inter,sans-serif}
.v13-key span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.v13-key i.nm{font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font:700 12px 'DM Mono',monospace}
.v13-key i.nm.b{border-radius:50%;box-shadow:inset 0 0 0 2px var(--red);color:var(--red)}
.v13-key i.nm.e{border-radius:50%;box-shadow:inset 0 0 0 2px var(--red),inset 0 0 0 4px #fffdf7,inset 0 0 0 6px var(--red);color:var(--red)}
.v13-key i.nm.o{border-radius:3px;box-shadow:inset 0 0 0 2px var(--g);color:var(--g)}
.v13-key i.nm.d{border-radius:3px;box-shadow:inset 0 0 0 2px var(--g),inset 0 0 0 4px #fffdf7,inset 0 0 0 6px var(--g);color:var(--g)}
.v13-key .v13-mt{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 2px;border-radius:3px;background:var(--y);border:1px solid var(--ink);font:700 9px/14px 'DM Mono',monospace}
.v13-key .v13-mt.bb{background:var(--m)}
.v13-key .fxd{width:8px;height:8px;border-radius:50%;background:#a8660b}
.v13-key .hd{width:6px;height:6px;border-radius:50%;background:var(--ink)}
.v13-key .v13-kt{font:700 9px/14px 'DM Mono',monospace;padding:0 4px;border-radius:4px;border:1px solid var(--ink);background:var(--y)}
.v13-key .v13-kt.ld{background:var(--m)}
.v13-key .sep{flex-basis:100%;height:0}
.v13-wins{display:flex;flex-wrap:wrap;gap:8px 16px;font:600 12px 'DM Mono',monospace}
.k-sg tr.k-gh th{border-right:0}
/* board / player card: same marks + key */
.hbh .sc .v13-m{position:absolute;top:0;right:0;min-width:11px;height:11px;padding:0 1px;border-radius:3px;background:var(--y);border:1px solid var(--ink);font:700 7.5px/11px 'DM Mono',monospace;color:var(--ink);text-align:center}
.hbh .sc .v13-m.bb{background:var(--m)}
.hbh .sc{overflow:visible}
.hbh th .v13-tag{display:block;margin:1px auto 0;width:max-content;padding:0 3px;border-radius:3px;background:var(--y);border:1px solid var(--ink);font:700 7.5px/11px 'DM Mono',monospace}
.hbh th .v13-tag.ld{background:var(--m)}
.k-cardft.v13-key{border-top:1.5px solid var(--line)}

/* ---------- Item 8: Round card ---------- */
.v13-rc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(12px + var(--sh-room)) calc(12px + var(--sh-room))}
.v13-rc form{display:flex;margin:0}
.v13-rc .btn{width:100%;min-height:52px;height:52px;padding:0 14px;white-space:normal;line-height:1.15;text-align:center}
@media(max-width:359px){.v13-rc .btn{font-size:13.5px;padding:0 8px}}
.v13-ntc{border:2px solid var(--ink);border-radius:14px;background:#fffdf7;padding:14px;display:flex;flex-direction:column;gap:12px;margin-top:calc(14px + var(--sh-room))}
.v13-ntc .lbl{margin:0}
.v13-ntc .in{width:100%}
.v13-ntc .acts{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.v13-ntc .now{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;padding:10px 12px;border:1.5px dashed var(--g);border-radius:10px;background:#f1f7f2;font-size:13px}
.v13-ntc .now a{color:var(--g);font-weight:700}
.v13-ntc .now.exp{border-color:var(--amber-line);background:var(--amber-bg);color:var(--amber-ink)}
.v13-ntc .now.exp b{display:block}
.v13-ntc .where{font-size:12.5px;color:#5f5a4f;margin:0}
.v13-rc+.ann{margin-top:calc(14px + var(--sh-room))}
.ann.v13-flat{box-shadow:none}

/* ---------- Item 9: flash names the destination ---------- */
.flash.v13-fl{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap}
.flash.v13-fl a{color:var(--ink);font-weight:800}
.flash.v13-fl span{min-width:0}

/* ---------- Items 15 / 16 / 17: mulligan desk ---------- */
.v13-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:8px 8px 8px 16px;border-radius:14px;background:var(--g);color:var(--r);font:600 14px/1.3 Inter,sans-serif;margin:0 0 calc(14px + var(--sh-room))}
.v13-toast span{min-width:0}
.v13-undo{flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;border:2px solid var(--ink);background:var(--y);color:var(--ink);font:800 14px Inter,sans-serif;box-shadow:var(--sh-btn);cursor:pointer;text-decoration:none}
.v13-undo:active{box-shadow:none;transform:translate(3px,3px)}
.v13-toast.v13-float{position:static}
.v13-bulk{display:flex;flex-direction:column;gap:12px;margin:0 0 calc(14px + var(--sh-room))}
.v13-bulk .k-sortsel{align-self:flex-start}
.v13-splits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(12px + var(--sh-room))}
@media(max-width:560px){.v13-splits{grid-template-columns:minmax(0,1fr)}}
.v13-split{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:stretch;padding:3px;border:2px solid var(--ink);border-radius:999px;box-shadow:var(--sh-btn);background:var(--y);min-height:58px}
.v13-split.bb{background:#fffdf7}
.v13-split button{appearance:none;border:0;background:transparent;font:900 18px Inter,sans-serif;color:var(--ink);min-height:48px;cursor:pointer;border-radius:999px 0 0 999px}
.v13-split button:last-of-type{border-radius:0 999px 999px 0}
.v13-split button:active{background:rgba(0,0,0,.08)}
.v13-split button[disabled]{color:#a39b8a;cursor:not-allowed;background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(0,0,0,.05) 6px 12px)}
.v13-split .lb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;padding:6px 8px;border-left:2px solid var(--ink);border-right:2px solid var(--ink);font:800 15px/1.15 Inter,sans-serif;min-width:0}
.v13-split .lb small{display:block;font:500 10px/1.25 'DM Mono',monospace;letter-spacing:.6px}
.v13-hint{font-size:12.5px;color:#5f5a4f;margin:0}
.v13-hint.warn{color:var(--amber-ink)}
.v13-mp{container:mull/inline-size}
.v13-mhd{display:grid;grid-template-columns:minmax(0,1fr) 168px 168px;gap:12px;padding:0 0 8px;border-bottom:2px solid var(--ink);font:500 11px 'DM Mono',monospace;letter-spacing:1px}
.v13-mr{display:grid;grid-template-columns:minmax(0,1fr) 168px 168px;gap:12px;align-items:center;padding:10px 0;border-bottom:1.5px solid var(--line)}
.v13-mr .who{min-width:0;display:block}
.v13-mr .who b{display:flex;align-items:center;gap:8px;font:700 15px Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v13-mr .who small{display:block;font:500 11px 'DM Mono',monospace;color:#5f5a4f;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v13-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0}
.v13-cell .ct{display:flex;flex-direction:column;min-width:0}
.v13-cell .ct b{font:900 24px/1 Fraunces,Georgia,serif;font-variant-numeric:tabular-nums}
.v13-cell .ct small{font:500 10.5px/1.3 'DM Mono',monospace;color:#5f5a4f;white-space:nowrap}
.v13-cell .ct small.ex{color:var(--g);font-weight:700}
.v13-cell .cl{display:none}
.v13-cell.zero .ct b{color:#a39b8a}
.v13-step{display:grid;grid-template-columns:44px 44px;gap:3px;padding:3px;border:2px solid var(--ink);border-radius:999px;box-shadow:var(--sh-btn);background:var(--ink)}
.v13-step button{appearance:none;border:0;background:#fffdf7;min-height:40px;font:800 14px Inter,sans-serif;color:var(--ink);cursor:pointer;border-radius:999px 4px 4px 999px}
.v13-step button+button{border-radius:4px 999px 999px 4px;background:var(--y)}
.v13-step button[disabled]{color:#b3aa95;background:#ece5d4;cursor:not-allowed}
.v13-mr .v13-cell.chg .ct b{color:var(--g)}
@container mull (max-width:540px){
  .v13-mhd{display:none}
  .v13-mr{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;padding:12px 0}
  .v13-mr .who{grid-column:1/-1}
  .v13-cell{grid-template-columns:minmax(0,1fr);gap:6px;padding:8px;border:1.5px solid var(--line);border-radius:10px;background:#fff}
  .v13-cell .cl{display:block;font:500 10px 'DM Mono',monospace;letter-spacing:1px}
  .v13-cell .ct{flex-direction:column;align-items:flex-start;gap:2px}
  .v13-cell .ct small{white-space:normal}
  .v13-step{grid-template-columns:1fr 1fr;width:100%}
}
/* the m18 hook-class collision (form.k-mull also matches the wizard's .k-mull box, v11.css:318) is fixed by renaming the hook; mocks use .k-mform */
form.k-mform{display:contents}

/* ---------- Items 13 / 14: Edit setup wizard + clickable steps ---------- */
.v13-edit{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding:12px 16px;border:2px solid var(--ink);border-radius:14px;background:var(--m);margin-bottom:calc(16px + var(--sh-room))}
.v13-edit b{font:800 15px Inter,sans-serif}
.v13-edit span{font-size:13px}
.v13-warn{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:2px solid var(--amber-line);border-radius:12px;background:var(--amber-bg);color:var(--amber-ink);font-size:13.5px;line-height:1.4}
.v13-warn b{display:block;font-size:14px;color:#4a2b00}
.v13-warn .ic{flex:none;width:28px;height:28px;border-radius:50%;border:2px solid var(--amber-ink);display:inline-flex;align-items:center;justify-content:center;font:900 15px Inter,sans-serif}
.v13-chk{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;font-weight:600;min-height:44px;padding-top:10px}
.v13-chk input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--g)}
.v13-rvh{display:flex;justify-content:space-between;align-items:center;gap:10px}
.v13-rvh a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--g);font-weight:800;font-size:14px}
.v13-chg{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;border:1.5px solid var(--amber-line);background:var(--amber-bg);color:var(--amber-ink);font:600 10px 'DM Mono',monospace;letter-spacing:.6px}
/* laptop rail: each step is a link; future steps disabled with a reason */
.rail ol li a.v13-dis{opacity:.5;cursor:not-allowed;pointer-events:none}
.rail ol li .v13-why{display:block;font:500 10.5px/1.3 'DM Mono',monospace;color:#7a2318;margin-top:2px;padding-left:38px}
.rail ol li a[aria-current="step"]{outline:none}
/* phone: "Step 3 of 7" menu */
.v13-sm{display:none;margin:0 0 calc(14px + var(--sh-room));border:2px solid var(--ink);border-radius:14px;background:#fffdf7;box-shadow:var(--sh-btn);overflow:hidden}
.v13-sm summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:0 14px;cursor:pointer;font:800 15px Inter,sans-serif}
.v13-sm summary::-webkit-details-marker{display:none}
.v13-sm summary small{display:block;font:500 11px 'DM Mono',monospace;letter-spacing:1px;color:#5f5a4f}
.v13-sm summary .cv{flex:none;width:32px;height:32px;border-radius:50%;border:2px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:13px;background:var(--y)}
.v13-sm ol{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.v13-sm li a,.v13-sm li span.v13-x{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:0 14px;border-top:1.5px solid var(--line);color:var(--ink);text-decoration:none;font:700 14px Inter,sans-serif}
.v13-sm li:first-child a,.v13-sm li:first-child span.v13-x{border-top:0}
.v13-sm li i{font-style:normal;width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font:800 12px Inter,sans-serif;background:#fff}
.v13-sm li.done i{background:var(--g);color:var(--r)}
.v13-sm li.cur a{background:var(--y)}
.v13-sm li.cur i{background:var(--ink);color:var(--y)}
.v13-sm li span.v13-x{color:#8a8374;cursor:not-allowed}
.v13-sm li small{font:500 10.5px 'DM Mono',monospace;color:#5f5a4f;text-align:right}
.v13-sm li span.v13-x small{color:#7a2318}
@media(max-width:899px){.v13-sm{display:block}.v13-hidepills .pills{display:none}}

/* ---------- Item 18: mulligan basis ---------- */
.v13-basis-note{font-size:12.5px;color:#5f5a4f}
.v13-left{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;border:1.5px solid var(--ink);background:var(--y);font:700 12px Inter,sans-serif;white-space:nowrap}
.v13-left.bb{background:var(--m)}
.v13-lefts{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.v13-nine{display:grid;grid-template-columns:auto auto;gap:2px 8px;font:500 10.5px 'DM Mono',monospace;color:#5f5a4f}

/* ---------- review helpers ---------- */
.v13-cap{font:500 11px 'DM Mono',monospace;letter-spacing:1px;color:#5f5a4f;margin:0 0 10px}

/* item 5 helpers: bar shares + option page */
.v13-w47{width:47%}.v13-w53{width:53%}
.v13-optpage{padding:24px 32px 40px;max-width:1440px;margin:0 auto}
.v13-optpage>h2{font:900 26px Fraunces,Georgia,serif;margin:0 0 6px}
.v13-optpage>p{margin:0 0 calc(20px + var(--sh-room));color:#5f5a4f}
.v13-optpage .card.panel{margin:0}
.k-dg .v13-gsum{margin-top:10px}
.k-cardft.v13-key .sc.v13-ks{width:24px;height:24px;min-width:24px;max-width:24px;font-size:11px}
.k-cardft.v13-key{padding:10px 12px;gap:8px 14px;font-size:11.5px}

/* item 4: minmax(0,1fr) so a long name ellipsizes instead of widening its card */
#confirm-list.v13-ck{grid-template-columns:repeat(2,minmax(0,1fr))}
/* item 5 narrow containers */
.v13-allg{container:bal/inline-size}
.v13-bb .ends>span{flex:1 1 0}
.v13-bb .ends em{min-width:0}
@container bal (max-width:250px){
  .v13-ta{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .v13-ta .v13-md{grid-column:1/-1;grid-row:2;flex-direction:row;flex-wrap:wrap;gap:4px 8px;border:0;border-top:2px solid var(--ink);min-width:0}
  .v13-ta .v13-md .s{max-width:none}
}
@container bal (max-width:360px){
  .v13-ta .v13-tl{padding:10px}
  .v13-ta .v13-tl .n{font-size:26px}
  .v13-ta .v13-tl small{font-size:9px;letter-spacing:.6px}
  .v13-ta .v13-md{min-width:64px;padding:6px}
  .v13-ta .v13-md .s{max-width:58px}
  .v13-bb .ends{flex-direction:column;gap:6px}
  .v13-bb .ends>span:last-child{flex-direction:row-reverse;justify-content:flex-end;text-align:left}
}

.k-cardft.v13-key{border:0;border-top:1.5px solid var(--line);border-radius:0;margin-top:0}
.k-cardft.v13-key{justify-content:flex-start;background:transparent}

/* item 12: who's playing header */
.v13-tms{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin:0 0 12px;font:700 14px Inter,sans-serif}
.v13-tms>span:not(.dot){font:500 11px 'DM Mono',monospace;color:#5f5a4f;padding:0 4px}
.v13-ihead .v13-cap{margin:0}
#who{scroll-margin-top:80px}
/* item 13: review save block */
.v13-ready{display:flex;flex-direction:column;align-items:stretch;gap:14px}
.v13-ready>div:first-child{display:flex;flex-direction:column;gap:12px}
.v13-rbtn{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}
@media(max-width:560px){.v13-rbtn .btn{flex:1 1 0}}
.v13-rvh h2{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kv s{color:#8a8374}
/* item 18: scorer pill says which nine */
.k-mp small{font:700 8.5px 'DM Mono',monospace;letter-spacing:.4px;margin-left:4px;opacity:.85}
.v13-mnote{margin:0;padding:0 16px}
.v13-mnote{font-size:12.5px;line-height:16px;color:#5f5a4f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 2px}.v13-mnote b{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:15px;border-radius:999px;background:var(--y);border:1.5px solid var(--ink);font:800 10px Inter,sans-serif;margin-right:2px}
/* team dots on public pages (mockup.css has no .dot) */
.v13-who .dot,.v13-tms .dot,.v13-score .dot,.v13-dl .dot{display:inline-block;width:10px;height:10px;border-radius:50%;border:1.5px solid var(--ink);flex:none}
.v13-who .dot.soju,.v13-tms .dot.soju,.v13-score .dot.soju{background:#3E7CB1}
.v13-who .dot.mak,.v13-tms .dot.mak,.v13-score .dot.mak{background:#D9822B}

/* desk split buttons: the hook class must not cancel the grid */
form.k-mform.v13-split,form.k-mform.v13-step{display:grid}
form.v13-split>input,form.v13-step>input{display:none}
.v13-key{max-width:100%;min-width:0}
.v13-key .v13-wins{white-space:normal;overflow-wrap:anywhere;max-width:100%}
.k-all .k-fix,.k-all .k-fixdesk,.k-all .k-gridwrap{max-width:100%;min-width:0}
#strip-legend{flex-wrap:wrap;white-space:normal;row-gap:4px;max-width:100%}
#strip-legend .sp{flex:1 1 12px;min-width:0}
/* m19 QA: roster table scrolls inside its card when the rail leaves too little room (768-1199px) */
@media (max-width:1199px){body.page-setup .top5>.card,body.page-setup .top5{min-width:0}body.page-setup table.ro{display:block;width:100%;max-width:100%;overflow-x:auto}}

/* m19 QA-b item 6: changed-after-entry marker on the board player card (same amber dot as the host grid) */
.hbh .sc .v13-fx{position:absolute;left:1px;bottom:1px;width:6px;height:6px;border-radius:50%;background:#a8660b}
/* m19 QA-b item 4: rows on ordinary holes share the score-first layout but are not tappable */
#confirm-list.v13-ck li.pick.v13-ro{cursor:default}
/* m19 QA-b item 2: the last 5px public surfaces move to the 4px card offset (rule 1); each keeps its colour */
.chat{box-shadow:var(--sh-card)}
.evc{box-shadow:var(--sh-card)}.evc.livec{box-shadow:4px 4px 0 var(--red)}
.savep{box-shadow:4px 4px 0 var(--ink)}
.inv{box-shadow:4px 4px 0 var(--y)}
/* m19 QA-b section 2: desk summary score line overflowed 10px at 320 with long team names ("Original Gangsters 2 – 1 Young Bloods"); one line at 360-1440 by stepping the size down under 420/380 (wrap is only the safety net, 2 lines at 320) */
.sumbar .sc{white-space:normal;text-align:center;min-width:0}
@media (max-width:419px){.sumbar .sc{font-size:15px}}
@media (max-width:379px){.sumbar .sc{font-size:14px;gap:8px}}
