@import "https://fonts.googleapis.com/css2?family=Alfa+Slab+One&display=swap";
.score-panel,.side-panel{min-width:0}.voice-launch{background:#fff;width:100%;min-height:48px;margin-bottom:18px}.voice-record{justify-content:center;align-items:center;gap:8px;display:flex}.voice-label{margin:18px 0;font-size:13px;display:block}.voice-label textarea{width:100%;font:inherit;border:1px solid #b6c0af;border-radius:8px;min-height:90px;margin-top:8px;padding:12px;font-size:16px;display:block}.voice-dialog .voice-hint{margin:13px 0;font-size:12px;line-height:1.6}.voice-dialog .voice-error{color:#922727;font-size:13px}.voice-review{background:#f0f4e9;border-radius:10px;margin-top:16px;padding:16px}.voice-review .secondary{width:100%;margin-top:8px}.sharing-bar{align-items:center;gap:12px;margin-bottom:15px;display:flex}.sharing-bar>span{color:var(--muted);font-size:11px}.sync-error{background:#fff4ef;border:1px solid #dca99c;border-radius:10px;margin-bottom:16px;padding:16px}.sync-error button{margin:10px 8px 0 0;display:inline-flex}.sync-error p{line-height:1.5}@media (max-width:480px){.sharing-bar{flex-direction:column;align-items:flex-start;gap:7px}}.photo-launch{background:var(--gold-surface);text-align:left;border:1px solid #d8c797;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:64px;margin:0 0 18px;padding:16px 19px;font-weight:600;display:flex}.photo-launch>span:last-child{margin-left:auto;font-size:23px}.photo-launch small{color:#4e6046;margin-top:4px;font-size:11px;font-weight:400;display:block}.photo-actions{gap:10px;display:flex}.photo-actions button{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.photo-dialog .photo-privacy{margin:12px 0 16px;font-size:11px}.photo-preview{object-fit:contain;background:#f0f1eb;border-radius:9px;width:100%;max-height:220px;margin-bottom:18px;display:block}.photo-loading{align-items:center;gap:10px;padding:20px 0;display:flex}.photo-dialog .photo-error{color:#9f2828;background:#fff0ee;border-radius:8px;padding:12px;font-size:13px}.photo-dialog .photo-warning{color:#765416;background:#fff8e6;border-radius:7px;padding:10px;font-size:12px}.photo-dialog .review-hint{font-size:12px}.photo-row{border-top:1px solid var(--line);padding:16px 0}.photo-row label{margin-bottom:12px;font-size:12px;display:block}.photo-row select,.photo-row textarea{width:100%;min-height:44px;font:inherit;color:var(--ink);background:#fff;border:1px solid #bac5b3;border-radius:7px;margin-top:7px;padding:10px;display:block}.photo-row textarea{resize:vertical;font-size:16px}.photo-dialog .review-score{margin:8px 0;font-size:12px}.photo-success{color:var(--green);margin-bottom:12px;font-size:12px}.photo-undo{margin-bottom:12px}@media (max-width:480px){.photo-dialog{padding:22px}.photo-actions{flex-direction:column}}:root{--paper:#f7f7f2;--ink:#202d25;--muted:#727b72;--line:#e0e4dc;--green:#2d5139;--lime:#ddf29a;--white:#fff;--display:ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--display);margin:0;font-size:14px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:3px solid #628836}button{transition:background .15s,transform .15s}button:active:not(:disabled){transform:translateY(1px)}main{max-width:1320px;margin:auto;padding:0 48px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:98px;display:flex}.brand{font-family:var(--display);letter-spacing:-.6px;color:var(--ink);align-items:center;gap:7px;font-size:17px;font-weight:700;text-decoration:none;display:flex}.brand-icon{background:var(--green);color:var(--lime);border-radius:50%;place-items:center;width:36px;height:36px;margin-right:5px;display:grid}.league-tag{letter-spacing:1.6px;align-items:center;gap:9px;font-size:10px;display:flex}.league-tag>span,.live-dot{background:#4d7747;border-radius:100%;width:6px;height:6px;display:inline-block}.intro{justify-content:space-between;align-items:end;gap:20px;padding:43px 0 35px;display:flex}.eyebrow{letter-spacing:1.7px;color:var(--muted);align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}h1{letter-spacing:-2px;margin:12px 0;font-size:clamp(32px,4vw,49px);font-weight:500}h1 em{color:#58723e;font-style:normal}.intro p{color:var(--muted);font-size:14px}.secondary{border:1px solid var(--line);background:0 0;border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:12px 17px;font-size:12px;font-weight:600;display:flex}.secondary:hover{background:#e9eddf}.session-bar{letter-spacing:1.2px;justify-content:space-between;align-items:center;padding:17px 0;font-size:10px;display:flex}.session-bar>div{align-items:center;gap:10px;font-weight:700;display:flex}.muted{color:#bec5b7}.save-status{color:var(--muted);letter-spacing:0;align-items:center;gap:5px;font-size:11px;display:flex}.team-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:27px;display:grid}.bowler-card{background:var(--white);border:1px solid var(--line);text-align:left;border-radius:13px;padding:18px 18px 0;overflow:hidden}.bowler-card.selected{border:1.5px solid var(--green);box-shadow:0 0 0 1px var(--green);background:#f0f4e9}.bowler-card:hover{background:#edf1e7}.card-top{align-items:center;gap:9px;display:flex}.avatar{border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:grid}.avatar-0{color:#365237;background:#dfe8d3}.avatar-1{color:#84633b;background:#f1e5d8}.avatar-2{color:#52737a;background:#dce6e9}.avatar-3{color:#775984;background:#e8dfef}.bowler-name{font-size:14px;font-weight:600}.active-label{letter-spacing:.8px;color:var(--green);margin-left:auto;font-size:8px}.card-scores{align-items:center;gap:22px;margin:21px 0 17px;display:flex}.small-label{letter-spacing:1.1px;color:var(--muted);font-size:9px;font-weight:600;display:block}.card-scores strong{font-family:var(--display);letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:31px;font-weight:500;line-height:1.25;display:block}.possible{color:#5b743f}.score-divider{background:var(--line);width:1px;height:34px}.card-footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;font-size:10px;display:flex}.workspace{grid-template-columns:minmax(0,1fr) 287px;gap:25px;display:grid}.score-panel{border:1px solid var(--line);background:#fff;border-radius:16px;padding:27px}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.panel-heading h2{letter-spacing:-.8px;flex-wrap:wrap;align-items:center;gap:13px;margin-top:8px;font-size:22px;font-weight:500;display:flex}.game-chip{font-family:var(--display);border:1px solid var(--line);letter-spacing:0;color:var(--muted);border-radius:5px;padding:4px 7px;font-size:9px}.ceiling-hero{background:var(--green);color:#fff;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;padding:25px 27px;display:flex;overflow:hidden}.ceiling-hero .small-label{color:#d6e2d0;font-size:9px}.hero-number{font-family:var(--display);letter-spacing:-5px;font-variant-numeric:tabular-nums;color:var(--gold);align-items:center;gap:18px;font-size:76px;font-weight:500;line-height:1.15;display:flex}.hero-number svg{stroke-width:1.4px;align-self:start;width:31px;height:31px;margin-top:12px}.ceiling-hero p{color:#d1ddce;font-size:11px;line-height:1.7}.pin-art{color:#92ad75;opacity:.55;white-space:pre;letter-spacing:8px;flex-direction:column;align-items:center;gap:7px;font-family:monospace;font-size:17px;display:flex;transform:rotate(-12deg)}.scorecard-scroll{margin-top:26px;overflow-x:auto}table{border-collapse:collapse;table-layout:fixed;text-align:center;width:100%;min-width:460px}th{color:var(--muted);border:1px solid var(--line);background:#f5f6f0;padding:9px;font-size:10px;font-weight:500}td{border:1px solid var(--line);vertical-align:top;height:75px;padding:0 0 9px}.frame-rolls{justify-content:end;align-items:start;min-height:30px;font-size:12px;display:flex}.frame-rolls span{border-left:1px solid var(--line);border-bottom:1px solid var(--line);min-width:18px;padding:4px 2px}td strong{min-height:23px;font-family:var(--display);font-size:17px;font-weight:500;display:block}.current{background:#f0f5df}.score-note{color:var(--muted);margin-top:10px;font-size:10px;line-height:1.6}.entry-heading{justify-content:space-between;align-items:center;margin:25px 0 16px;display:flex}.entry-heading h3{letter-spacing:-.4px;font-size:17px;font-weight:500}.entry-heading p{color:var(--muted);margin-top:5px;font-size:11px}.text-button{background:0 0;border:0;align-items:center;gap:6px;min-height:44px;padding:8px;font-size:11px;display:flex}.pin-buttons{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.pin-buttons button{border:1px solid var(--line);background:#fafbf7;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:66px;display:flex}.pin-buttons button:hover{background:#edf2df;border-color:#819b5c}.pin-buttons strong{font-size:23px;font-family:var(--display);font-weight:500}.pin-buttons span{letter-spacing:1px;color:var(--muted);font-size:7px}.pin-buttons .clear-pins{background:var(--gold);border-color:#c9e286}.team-summary{border:1px solid var(--line);background:#eeefe6;border-radius:13px;padding:25px}.team-summary h3{margin:22px 0 7px;font-size:18px;font-weight:500}.team-total{font-size:51px;font-family:var(--display);letter-spacing:-2px;font-weight:500}.team-summary p{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.8}.potential-track{background:#d8decf;border-radius:10px;height:5px;margin-top:24px;overflow:hidden}.potential-track span{background:#67814b;height:100%;display:block}.range-labels{color:var(--muted);justify-content:space-between;margin-top:8px;font-size:8px;display:flex}.summary-divider{background:#dce0d1;height:1px;margin:24px 0 20px}.summary-row{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:13px;font-size:11px;display:flex}.summary-row strong{color:var(--ink);font-family:var(--display);font-size:15px}.tip{gap:13px;margin:26px 6px;display:flex}.tip-icon{color:#73924d;font-size:25px;line-height:1}.tip h3{font-size:13px;font-weight:500}.tip p{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.8}.next-game{background:#fff;justify-content:space-between;width:100%}.device-note{color:var(--muted);text-align:center;margin:13px 12px;font-size:10px;line-height:1.7}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;margin-top:40px;padding:25px 0;font-size:9px;display:flex}footer span:first-child{font-family:var(--display);letter-spacing:1px}dialog{border:1px solid var(--line);width:calc(100% - 32px);max-width:460px;color:var(--ink);border-radius:18px;max-height:85dvh;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14281fb3}.dialog-inner{padding:30px}.dialog-inner h2{margin:14px 0;font-size:26px}.dialog-inner p{color:var(--muted);margin:15px 0 24px;font-size:14px;line-height:1.7}.close-button{float:right;background:0 0;border:0;place-items:center;width:44px;height:44px;margin:-18px -17px 0 0;display:grid}.primary{background:var(--green);color:#fff;border:0;border-radius:9px;width:100%;min-height:48px;padding:15px;font-weight:600}.dialog-inner>.secondary{width:100%;margin-top:10px}.history-game{border-top:1px solid var(--line);padding:18px 0}.history-game h3{font-size:16px}.history-game .summary-row{font-size:14px}@media (min-width:1400px){main{padding:0 55px}.intro{padding-top:52px}}@media (max-width:1000px){main{padding:0 25px}.workspace{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.score-panel{padding:20px}.card-scores{gap:15px}.bowler-card{padding:15px 13px 0}.active-label{font-size:7px}.team-summary{padding:20px}}@media (max-width:760px){main{padding:0 18px}.topbar{height:75px}.brand{font-size:14px}.league-tag{letter-spacing:1px;font-size:8px}.intro{padding:29px 0 19px}.intro h1{letter-spacing:-1.6px}.intro p{max-width:260px;font-size:12px;line-height:1.7}.history-button{min-width:44px;padding:10px;font-size:0}.history-button svg{width:19px;height:19px}.team-grid{grid-template-columns:repeat(2,1fr);gap:11px;margin-bottom:20px}.workspace{grid-template-columns:1fr}.card-scores{gap:22px;margin:15px 0}.bowler-card{padding:14px 15px 0}.active-label{font-size:7px}.score-panel{border-radius:13px;padding:18px}.panel-heading h2{gap:8px;font-size:21px}.ceiling-hero{padding:23px 20px}.hero-number{font-size:73px}.pin-art{letter-spacing:5px;font-size:13px}.pin-buttons{grid-template-columns:repeat(4,1fr)}.pin-buttons button{min-height:68px}.side-panel{grid-template-columns:1fr;display:grid}.team-summary{padding:22px}.team-summary h3{margin-top:16px}.team-total{font-size:43px}.tip{margin:22px 5px}.save-status{font-size:9px}.session-bar{letter-spacing:.7px;font-size:9px}.scorecard-scroll{margin-top:22px}footer{gap:10px;margin-top:26px;font-size:8px}.ceiling-hero p{font-size:10px}.small-label{font-size:8px}.card-scores strong{font-size:29px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.league-section{margin-bottom:34px}.league-section>.eyebrow{margin-bottom:14px}.league-scroll{border:1px solid var(--line);background:#fff;border-radius:13px;overflow-x:auto}.league-table{table-layout:auto;text-align:center;min-width:560px}.league-table th{border:0;border-bottom:1px solid var(--line);padding:11px 10px}.league-table td{border:0;border-bottom:1px solid var(--line);vertical-align:middle;font-variant-numeric:tabular-nums;height:auto;padding:13px 10px;font-size:13px}.league-table tr:last-child td{border-bottom:0}.league-table .left{text-align:left}.league-table tr.ours td{background:#f0f4e9}.league-table tr.ours td.left strong:after{content:" ●";color:var(--green);font-size:10px}.muted-cell{color:var(--muted)}.roster-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.roster-card{cursor:default;padding-bottom:6px}.roster-card:hover{background:#fff}.roster-rows{border-top:1px solid var(--line);padding:4px 0 12px}.roster-rows .summary-row{margin-top:10px}.league-columns{grid-template-columns:minmax(0,1fr) 340px;gap:25px;display:grid}.leaderboard{border:1px solid var(--line);background:#fff;border-radius:13px;margin:0;padding:0;list-style:none}.leaderboard li{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:10px 16px;font-size:13px;display:flex}.leaderboard li:last-child{border-bottom:0}.leaderboard li.ours{background:#f0f4e9}.leaderboard .rank{width:22px;color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.leaderboard .who{flex-direction:column;flex:1;display:flex}.leaderboard .who small{color:var(--muted);margin-top:2px;font-size:10px}.leaderboard .pts{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:17px}.week-bars{border:1px solid var(--line);background:#fff;border-radius:13px;align-items:flex-end;gap:6px;height:140px;padding:14px 14px 4px;display:flex;overflow-x:auto}.week-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:14px;height:100%;display:flex;position:relative}.week-bar span{background:#c9d3bd;border-radius:3px 3px 0 0;width:100%;display:block}.week-bar span.win{background:var(--green)}.week-bar small{color:var(--muted);margin-top:4px;font-size:8px}.week-bars:before{content:"";pointer-events:none;border-top:1px dashed #b9c4ad;position:absolute;top:calc(50% + 2px);left:0;right:0}.week-bars{position:relative}@media (max-width:1000px){.roster-grid{grid-template-columns:repeat(2,1fr)}.league-columns{grid-template-columns:1fr}}@media (max-width:480px){.roster-grid{grid-template-columns:1fr}}a.league-tag{color:inherit;text-decoration:none}.season-nav{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.season-nav a{border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:6px 11px;font-size:11px;font-weight:600;text-decoration:none}.season-nav a.active{background:var(--green);color:#fff;border-color:var(--green)}.match-panel{border:1px solid var(--line);background:#fff;border-radius:13px;margin-bottom:18px;padding:20px}.match-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.match-head .text-button{min-height:36px;padding:6px 8px}.points-strip{text-align:center;grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;margin:16px 0 6px;display:grid}.points-strip strong{font-family:var(--display);letter-spacing:-1.5px;font-variant-numeric:tabular-nums;font-size:40px;font-weight:500;line-height:1.1;display:block}.points-strip>div:first-child strong{color:var(--green)}.points-remaining strong{color:var(--muted);font-size:22px}.points-breakdown{border-top:1px solid var(--line);margin-top:12px;padding-top:4px}.points-breakdown .summary-row{margin-top:9px}.opponent-grid-scroll{margin-top:16px;overflow-x:auto}.opponent-grid{table-layout:auto;min-width:0;font-size:12px}.opponent-grid th,.opponent-grid td{border:0;border-bottom:1px solid var(--line);vertical-align:middle;background:0 0;height:auto;padding:7px 4px}.opponent-grid th.left{text-align:left;color:var(--ink);font-size:12px;font-weight:600}.opponent-grid th.left small{color:var(--muted);font-size:9px;font-weight:400;display:block}.opponent-grid input{width:54px;min-height:40px;font:inherit;text-align:center;color:var(--ink);background:#fafbf7;border:1px solid #bac5b3;border-radius:7px;font-size:16px}.opponent-grid input:focus-visible{outline-offset:1px;outline:2px solid #628836}.opponent-grid .ours-row th,.opponent-grid .ours-row td{background:#f0f4e9;font-weight:600}.chalkboard{border-top:1px solid var(--line);color:#6b5a3e;align-items:center;gap:10px;margin-top:16px;padding-top:14px;display:flex}.chalkboard>div{flex:1}.chalkboard strong{font-family:var(--display);color:var(--ink);font-size:15px;display:block}.field{margin:14px 0;font-size:12px;display:block}.field input,.field select{width:100%;min-height:44px;font:inherit;color:var(--ink);background:#fff;border:1px solid #bac5b3;border-radius:7px;margin-top:6px;padding:10px;font-size:16px;display:block}.lineup-pick{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:8px 12px 12px}.lineup-pick legend{color:var(--muted);padding:0 4px;font-size:11px;font-weight:600}.lineup-pick label{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.lineup-pick label:last-child{border-bottom:0}.lineup-pick label.on span{color:var(--green);font-weight:600}.lineup-pick label small{color:var(--muted);text-align:right;margin-left:auto;font-size:11px}.lineup-pick input[type=checkbox]{width:20px;height:20px;accent-color:var(--green)}.lineup-pick.ours label span{flex:1}.lineup-pick.ours input{width:70px;min-height:40px;font:inherit;text-align:center;border:1px solid #bac5b3;border-radius:7px;font-size:16px}.reconcile-card{background:#fff8e6;border:1px solid #ecd9a3;border-radius:12px;margin-bottom:10px;padding:14px 16px}.reconcile-card .score-note{margin:0 0 6px}.reconcile-list{margin:8px 0;padding-left:18px;font-size:13px;line-height:1.7}.reconcile-list em{font-style:normal;font-family:var(--display);font-weight:600}.reconcile-card a{color:var(--green)}.targets-panel{border:1px solid var(--line);background:#fff;border-radius:13px;margin-bottom:18px;padding:18px 20px}.targets-panel>.eyebrow{margin-bottom:8px}.target-row{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr;align-items:baseline;gap:4px 10px;padding:9px 0;font-size:12px;display:grid}.target-row:last-of-type{border-bottom:0}.target-row span{color:var(--muted);line-height:1.5}.target-row em{color:#6b5a3e;grid-column:2;align-items:center;gap:5px;font-style:normal;font-weight:600;display:flex}.recap-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:20px}.recap-text{white-space:pre-wrap;margin-bottom:16px;font-size:14px;line-height:1.75}.recap-button{width:auto;margin-top:10px;padding:12px 18px}.topbar-right{align-items:center;gap:14px;display:flex}.account-link,.topbar-right .secondary{min-height:38px;padding:8px 12px;font-size:11px}.account-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:11px;overflow:hidden}.topbar-right .text-button{min-height:38px;font-size:11px}.login-card{border:1px solid var(--line);background:#fff;border-radius:16px;max-width:440px;margin:48px auto;padding:30px}.login-card h1{margin:14px 0 8px;font-size:32px}.login-card p{color:var(--muted);margin-bottom:8px;line-height:1.7}.login-card .primary{margin-top:6px}.login-card .text-button{margin:8px auto 0}.code-input{font-family:var(--display);letter-spacing:8px;text-align:center;font-size:28px!important}.member-list{border:1px solid var(--line);border-radius:10px;margin:12px 0;padding:0;list-style:none}.member-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:10px 14px;font-size:13px;display:flex}.member-list li:last-child{border-bottom:0}.member-list strong{color:var(--muted);font-size:12px;font-weight:500}@media (max-width:760px){.account-email{display:none}.topbar-right{gap:8px}}.week-list{gap:16px;margin-bottom:34px;display:grid}.week-card{border:1px solid var(--line);color:inherit;background:#fff;border-radius:14px;padding:18px 20px;text-decoration:none;display:block}.week-card:hover{background:#fbfcf7;border-color:#9db38a}.week-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.week-head h2{letter-spacing:-.5px;margin-top:6px;font-size:20px;font-weight:500}.week-team{text-align:right}.week-team strong{font-family:var(--display);letter-spacing:-1px;font-size:30px;font-weight:500;line-height:1.1;display:block}.week-team small{color:var(--muted);font-size:11px}.week-card .league-scroll{border:0;border-radius:0}.week-table{table-layout:auto;min-width:0}.week-table td,.week-table th{padding:8px 10px}.week-foot{color:var(--muted);justify-content:space-between;align-items:center;margin-top:10px;font-size:11px;display:flex}.week-open{color:var(--green);align-items:center;gap:4px;font-weight:600;display:flex}.game-section{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px 20px}.game-row{border-top:1px solid var(--line);padding:10px 0}.game-row:first-of-type{border-top:0}.game-row-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.game-score{font-family:var(--display);font-size:20px;font-weight:500}.mini-card{min-width:420px}.mini-card td{height:auto;padding:0 0 6px}.mini-card strong{min-height:18px;font-size:14px}.game-row .scorecard-scroll{margin-top:0}.crumbs{color:var(--muted);align-items:center;gap:6px;padding:14px 0 0;font-size:12px;display:flex}.crumbs a{color:var(--green);font-weight:600;text-decoration:none}.crumbs strong{color:var(--ink)}.crumb{align-items:center;gap:6px;display:flex}.crumb-sep{color:#bec5b7}.crumb-back{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:32px;height:32px;margin-right:2px;display:grid}.match-hero{background:var(--green);color:#fff;border-radius:16px;margin-top:14px;padding:20px 22px 18px}.eyebrow.light{color:#c9d8c3}.match-hero-top{justify-content:space-between;align-items:center;display:flex}.match-state{letter-spacing:1.2px;color:#ddf29a;font-size:10px;font-weight:700}.match-state.final{color:#ddf29a}.match-score{grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;margin-top:12px;display:grid}.match-score .who{color:#d6e2d0;font-size:12px;display:block}.match-score strong{font-family:var(--display);letter-spacing:-3px;font-variant-numeric:tabular-nums;font-size:64px;font-weight:600;line-height:1;display:block}.match-score strong.dim{color:#9fb79a}.match-score .them{text-align:right}.match-score .mid{text-align:center;padding-bottom:10px}.match-score .open{font-family:var(--display);color:#d6e2d0;margin-top:2px;font-size:16px;display:block}.split-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:16px;display:grid}.split-chip{text-align:center;background:#254531;border-radius:9px;padding:9px 6px}.split-chip strong{font-family:var(--display);font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px;display:block}.split-chip.won strong{color:var(--gold)}.split-chip.lost strong{color:#f1b9b0}.split-chip small{color:#9fb79a;margin-top:2px;font-size:9px;display:block}.match-lines{color:#d6e2d0;justify-content:space-between;margin-top:12px;font-size:12px;display:flex}.hero-link{color:var(--gold);font-weight:600;text-decoration:none}.game-card{margin-top:12px;padding:0 16px}.game-rows{flex-direction:column;display:flex}.game-row-link{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:14px 0;text-decoration:none;display:flex}.game-row-link:last-child{border-bottom:0}.game-row-link>div:first-child{flex-direction:column;gap:3px;display:flex}.game-row-link span{color:var(--muted);font-size:11px}.game-row-right{align-items:center;gap:12px;display:flex}.game-row-right b{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.game-row-right span{color:var(--muted);font-size:18px}.game-row-link.static{cursor:default}.won{color:var(--green)}.lost{color:#922727}.split{color:#7a6a2a}.dim{color:var(--muted)}td.won,td.lost,td.split{font-weight:700}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.mini-card-link{color:inherit;justify-content:space-between;align-items:center;min-height:56px;padding:14px 16px;text-decoration:none;display:flex}.mini-card-link>div{flex-direction:column;gap:4px;display:flex}.mini-card-link strong.d{font-family:var(--display);letter-spacing:-.3px;font-size:18px;font-weight:500}.mini-card-link span{color:var(--muted);font-size:11px}.mini-card-link>span{font-size:18px}.center-link{justify-content:center;margin:12px auto 0}.entry-bar{background:var(--paper);border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:24px;padding:12px 0 16px;display:grid;position:sticky;bottom:0}.entry-tile{border:1px solid var(--line);min-height:52px;color:inherit;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.entry-tile.accent{background:var(--gold-surface);border-color:#d8c797}.start-button{align-items:center;width:auto;text-decoration:none;display:inline-flex}.game-hero{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:14px;display:flex}.game-hero-score{align-items:baseline;gap:8px;margin-top:4px;display:flex}.game-hero-score strong{font-family:var(--display);letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:40px;font-weight:600;line-height:1.1}.game-hero-score strong.ours{color:var(--green)}.game-hero-score span{color:var(--muted)}.game-hero-side{text-align:right;color:var(--muted);font-size:11px;line-height:1.6}.game-nav{gap:6px;margin:14px 0 12px;display:flex}.chip{border:1px solid var(--line);color:inherit;background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:8px 12px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.chip.disabled{opacity:.4}.game-section{margin-bottom:10px;padding:14px 16px}.game-row-meta{color:var(--muted);font-size:11px}.game-row-meta b{font-weight:700}.hth td.left{white-space:nowrap}@media (max-width:760px){.match-hero{border-radius:14px;padding:18px 16px 16px}.match-score strong{font-size:52px}.split-chips{gap:5px}.split-chip strong{font-size:14px}.home-grid{gap:10px}.topbar-right .secondary{padding:8px;font-size:0}.topbar-right .secondary svg{width:16px;height:16px}}.card{border:1px solid var(--line);background:#fff;border-radius:14px}.home-layout{grid-template-columns:minmax(0,1fr) 420px;align-items:start;gap:20px;margin-top:14px;display:grid}.home-main{min-width:0}.home-side{flex-direction:column;gap:10px;display:flex}.home-side .league-section{margin-bottom:6px}.home-side .league-scroll{overflow-x:hidden}.home-side .week-table{table-layout:fixed;width:100%;min-width:0}.home-side .week-table th,.home-side .week-table td{padding-left:5px;padding-right:5px;font-size:12px}.home-side .week-table th:first-child,.home-side .week-table td:first-child{width:29%}.home-side .week-table th:last-child,.home-side .week-table td:last-child{width:16%}.match-hero{margin-top:0;padding:22px 24px 20px}.match-body{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 28px;margin-top:12px;display:grid}.match-score{grid-template-columns:auto auto auto;justify-content:start;gap:22px;margin-top:0}.match-score.solo{grid-template-columns:auto}.match-score .sub{color:#c9d8c3;margin-top:6px;font-size:12px;display:block}.match-score strong{font-size:72px}.split-chips{grid-template-columns:repeat(4,104px);margin-top:0}.split-chip{padding:10px 8px 9px}.split-chip strong{font-size:17px}.match-lines{border-top:1px solid #3f6449;align-items:center;margin-top:16px;padding-top:14px}.hero-cta{background:var(--gold);min-height:38px;color:var(--ink);border-radius:999px;align-items:center;padding:8px 14px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.hero-cta:hover{background:#e8f7b0}.game-card{padding:4px 8px}.game-row-link{border-radius:10px;gap:14px;padding:14px 10px}.game-row-link:hover{background:#f4f6ee}.game-row-link:focus-visible{outline-offset:-3px;outline:3px solid #628836}.game-index{width:34px;height:34px;color:var(--green);font-family:var(--display);background:#eef2e6;border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.game-row-link>div:first-of-type{flex:1}.game-row-right b{font-size:20px}.game-row-right span{font-size:16px}.mini-card-link{padding:16px 18px}.mini-card-link:hover{background:#fbfcf7;border-color:#c9d5be}.mini-card-link strong.d{font-size:20px}@media (max-width:1000px){.home-layout{grid-template-columns:1fr}.home-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-side .center-link,.home-side .league-section{grid-column:span 2}}@media (max-width:760px){.match-hero{padding:18px 16px 16px}.match-body{grid-template-columns:1fr;gap:14px}.match-score{gap:14px}.match-score strong{font-size:56px}.split-chips{grid-template-columns:repeat(4,minmax(0,1fr))}.split-chips.three{grid-template-columns:repeat(3,minmax(0,1fr))}.home-side{grid-template-columns:1fr}.home-side .center-link,.home-side .league-section{grid-column:auto}.game-row-link{padding:12px 6px}}.game-row-link>div:first-of-type{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.game-row-link>div:first-of-type strong{font-size:15px}.game-section .game-row-head{align-items:center}.game-section .game-row-meta{font-family:var(--display);color:var(--ink);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.game-section .game-row-meta .muted-cell{font-family:var(--display);font-size:12px;font-weight:400}.game-section .game-row-meta b{font-size:12px;font-family:var(--display);margin:0 4px}.game-hero{margin-top:18px}.game-nav{margin:16px 0 14px}@media (max-width:480px){.match-lines{flex-direction:column;align-items:stretch;gap:10px}.hero-cta{justify-content:center;min-height:44px}.game-nav{gap:6px}.game-nav .chip{flex:1;justify-content:center}}.game-section{min-width:0;overflow:hidden}.game-section .scorecard-scroll{max-width:100%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.records-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-note{background:#fff7e8;border:1px solid #e6d4ad;border-radius:11px;margin:0 0 26px;padding:12px 15px}.leaderboard .who a{color:inherit;text-decoration:none}.leaderboard .who a:hover strong{text-decoration:underline}.league-table td.left a{color:inherit;text-decoration:none}.league-table td.left a:hover strong{text-decoration:underline}.league-table td a{color:var(--muted);display:inline-flex}.record-cell{color:var(--green);font-weight:700}.record-marks{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.record-mark{border:1px solid var(--line);background:#fff;border-radius:13px;flex-direction:column;gap:5px;padding:20px;display:flex}.record-mark strong{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:44px;line-height:1}.record-mark small{color:var(--muted);font-size:11px;line-height:1.5}.trend{border:1px solid var(--line);background:#fff;border-radius:13px;margin:0;padding:16px 16px 12px}.trend svg{width:100%;height:150px;display:block}.trend-line{fill:none;stroke:var(--green);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.trend-fill{fill:var(--gold-surface);opacity:.7}.trend-break{stroke:#b9c4ad;stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.trend-dot{fill:var(--green)}.trend figcaption{color:var(--muted);justify-content:space-between;gap:12px;margin-top:10px;font-size:11px;display:flex}.trend figcaption strong{color:var(--ink);font-variant-numeric:tabular-nums}.trend figcaption em{font-style:normal;font-weight:600}.trend figcaption em.up{color:var(--green)}.trend figcaption em.down{color:#922727}@media (max-width:760px){.records-columns,.record-marks{grid-template-columns:1fr}.record-mark{flex-flow:wrap;align-items:baseline;gap:10px;padding:15px 17px}.record-mark strong{order:2;margin-left:auto;font-size:32px}.record-mark .small-label{order:1}.record-mark small{flex-basis:100%;order:3}}.chip-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.chip-row .chip{cursor:pointer}.field>span{font-size:12px;font-weight:600;display:block}.bowler-card.sitting{opacity:.45}.bowler-card.sitting .card-footer span:after{content:" · not bowling"}.bro-lockup{align-items:center;gap:8px;margin-bottom:10px;display:inline-flex}.bro-lockup-name{font-family:"Alfa Slab One",var(--display);color:var(--green);letter-spacing:.3px;font-size:15px}.bro-lockup-tag{letter-spacing:2px;color:var(--muted);border-left:1px solid var(--line);padding-left:8px;font-size:8px;font-weight:700}.review-intro{align-items:flex-start;gap:16px}.bowler-switch{flex-wrap:wrap;gap:6px;display:flex}.review-hero{margin-top:0}.review-series{align-items:baseline;gap:10px;margin:10px 0 12px;display:flex}.review-series strong{font-family:var(--display);letter-spacing:-2px;color:var(--gold);font-size:52px;font-weight:600;line-height:1}.review-series span{color:#c9d8c3;font-size:11px}.review-cards{flex-direction:column;gap:12px;margin-top:16px;display:flex}.review-row{text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:56px;padding:16px;display:flex}.review-row.inner{border:0;border-radius:0;padding:14px 16px}.review-row>div{flex-direction:column;gap:3px;display:flex}.review-row span{color:var(--muted);font-size:11px}.review-row:hover{border-color:#9db38a}.review-game{flex-direction:column;gap:14px;padding:16px;display:flex}.review-game-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.review-game-head .muted-cell{font-size:10px}.review-field{flex-direction:column;gap:6px;display:flex}.review-field .small-label{font-size:10px}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.chip.dashed{color:var(--muted);border-style:dashed}.chip-row .chip{min-height:44px;padding:10px 14px;font-size:12px}.chip-add{flex:1;align-items:stretch;gap:6px;min-width:180px;display:flex}.chip-add input{min-width:0;font:inherit;border:1px solid var(--line);border-radius:999px;flex:1;min-height:44px;padding:8px 12px;font-size:16px}.note-field{align-items:stretch;gap:8px;display:flex}.note-field textarea{font:inherit;resize:vertical;border:1px solid #b6c0af;border-radius:8px;flex:1;min-height:64px;padding:12px;font-size:16px;line-height:1.5}.note-field .mic{border:1px solid var(--line);width:48px;color:var(--green);background:#f0f4e9;border-radius:8px;justify-content:center;align-items:center;min-height:48px;display:flex}.note-field .mic.on{background:var(--green);color:#fff;border-color:var(--green)}.review-context{padding:0}.review-context-body{flex-direction:column;gap:4px;padding:0 16px 16px;display:flex}.review-context-body .field{margin:8px 0}.review-context-body .field input{width:100%;font:inherit;border:1px solid var(--line);border-radius:8px;min-height:44px;margin-top:6px;padding:10px 12px;font-size:16px;display:block}.review-debrief{flex-direction:column;gap:12px;margin-top:18px;display:flex}.review-talk{cursor:default;display:block}.review-talk p{margin:8px 0 12px;font-size:13px;font-weight:400;line-height:1.55}.review-talk-actions{gap:8px;display:flex}.review-talk-actions .primary,.review-talk-actions .secondary{min-height:48px;color:inherit;flex:1;margin:0;text-decoration:none}.review-talk-actions .primary{color:#fff}.coach-turn{flex-direction:column;gap:12px;padding:18px 16px;display:flex}.coach-head{align-items:center;gap:8px;display:flex}.coach-avatar{background:var(--green);border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.coach-turn>p{white-space:pre-line;font-size:14px;line-height:1.6}.coach-question{background:var(--gold-surface);border:1px solid #d8c797;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.55}.idea-list{flex-direction:column;gap:8px;display:flex}.idea{border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.idea-n{background:var(--gold-surface);width:28px;height:28px;color:var(--green);font-family:var(--display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.idea p{font-size:13px;line-height:1.55}.idea a{color:var(--muted);align-items:center;gap:3px;margin-top:5px;font-size:10px;text-decoration:none;display:inline-flex}.idea a:hover{color:var(--green)}.bowler-turn{flex-direction:column;gap:4px;padding:4px 16px;display:flex}.bowler-turn p{color:var(--ink);font-size:13px;line-height:1.55}.review-status{min-height:16px}.league-tag.bro{gap:6px}.league-tag.bro>span{display:none}@media (max-width:760px){.review-series strong{font-size:44px}.review-talk-actions{flex-direction:column}}.review-link{color:var(--green);white-space:nowrap;font-size:10px;font-weight:700;text-decoration:none}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.league-upload{background:#eef3e7;border:1px solid #d3dfc9;border-radius:13px;padding:18px 20px}.league-upload>.eyebrow{color:var(--green)}.league-upload-copy{justify-content:space-between;align-items:flex-start;gap:18px;margin:8px 0 16px;display:flex}.league-upload-copy h2{letter-spacing:-.5px;font-size:20px;font-weight:500}.league-upload-copy p{color:var(--muted);max-width:640px;margin-top:5px;font-size:12px;line-height:1.6}.league-upload-copy>svg{color:var(--green);flex-shrink:0}.league-upload .primary{width:auto;padding-left:20px;padding-right:20px}.league-upload .score-note{margin-bottom:0}.lineup-pick.lane{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lineup-pick.lane label small{display:block}.lineup-draft{border:1px solid var(--line);background:#fbfcf7;border-radius:13px;flex-direction:column;gap:10px;margin:14px 0;padding:16px;display:flex}.lineup-draft>.eyebrow{margin-bottom:2px}.draft-grid{flex-direction:column;gap:6px;display:flex}.draft-row{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.draft-row.won{background:#f0f4e9;border-color:#9db38a}.draft-row.lost{background:#fff4ef;border-color:#dca99c}.draft-controls{flex-direction:column;gap:0;display:flex}.draft-controls .text-button{min-height:22px;padding:0 6px;font-size:10px}.draft-us strong,.draft-them strong{font-size:13px;display:block}.draft-us small,.draft-them small{color:var(--muted);font-size:10px}.draft-them{text-align:right}.draft-vs{text-align:center;min-width:54px}.draft-vs b{font-family:var(--display);font-size:18px;font-weight:600;display:block}.draft-vs small{color:var(--muted);font-size:9px}.draft-total{color:var(--muted);justify-content:space-between;align-items:center;padding-top:6px;font-size:12px;display:flex}.draft-total strong{color:var(--ink)}.draft-suggest{background:var(--gold-surface);border:1px solid #d8c797;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.draft-suggest strong{margin:3px 0;font-size:13px;display:block}.draft-suggest small{color:#4e6046;font-size:10px}.draft-suggest .secondary{width:auto;min-height:40px;margin:0;padding:8px 14px}.draft-coach p{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:6px;padding:12px 14px;font-size:13px;line-height:1.6}.draft-coach .text-button{padding-left:0}@media (max-width:480px){.draft-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"c us vs""c them vs"}.draft-controls{grid-area:c}.draft-us{grid-area:us}.draft-vs{grid-area:vs}.draft-them{text-align:left;grid-area:them}}:root{--muted:#626d62}html{scroll-padding-top:20px}body{overflow-wrap:break-word}main{min-width:0;padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}h1{letter-spacing:-.04em;text-wrap:balance}input,select,textarea{min-width:0;max-width:100%}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #628836}input::placeholder,textarea::placeholder{color:#6e776c;opacity:1}.topbar{flex-wrap:wrap;gap:16px;height:auto;min-height:98px;padding:18px 0}.brand{flex-shrink:0;min-height:44px}.topbar-right{flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;min-width:0}.topbar-right .league-tag,.topbar-right .secondary,.topbar-right .text-button{min-height:44px}.nav-toggle{border:1px solid var(--line);background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:13px;font-weight:600;display:none}.crumbs{flex-wrap:wrap;gap:4px 8px}.crumb{flex-wrap:wrap;min-width:0}.crumb a{align-items:center;min-height:44px;display:inline-flex}.crumb-back{flex-shrink:0;width:44px;height:44px}.intro>div,.home-side,.league-columns>*,.home-layout>*,.team-grid>*,.roster-grid>*,.review-field,.review-context-body,.review-row>div,.idea>div{min-width:0}.intro p{line-height:1.7}.intro{flex-wrap:wrap}.league-scroll,.scorecard-scroll,.opponent-grid-scroll{overscroll-behavior-x:contain;max-width:100%}.league-scroll:focus-visible,.scorecard-scroll:focus-visible,.opponent-grid-scroll:focus-visible{outline-offset:3px;outline:3px solid #628836}.match-body{grid-template-columns:minmax(0,1fr)}.split-chips{grid-template-columns:repeat(4,minmax(0,1fr))}.split-chips.three{grid-template-columns:repeat(3,minmax(0,1fr))}.match-score .who{white-space:normal}.match-hero-top{align-items:flex-start;gap:12px}.match-hero-top .eyebrow{line-height:1.6}.match-state{flex-shrink:0;line-height:1.6}.split-chip{min-width:0}.split-chip small{line-height:1.5}.match-lines{flex-wrap:wrap;gap:12px}.chip,.season-nav a{justify-content:center;min-height:44px}.season-nav a{align-items:center;display:inline-flex}.note-field textarea{min-width:0}.note-field .mic{flex-shrink:0}.review-page>.intro,.review-page>.review-hero,.review-page>.review-cards,.review-page>.review-debrief,.review-page>.review-status{max-width:800px;margin-left:auto;margin-right:auto}.review-page .intro p{max-width:58ch;font-size:15px}.review-intro{align-items:flex-start}.review-intro .bowler-switch{flex-basis:100%}.review-game-head{flex-wrap:wrap}.review-game-head .muted-cell{font-size:12px;line-height:1.5}.review-context{overflow:hidden}.review-context .review-row{min-height:72px}.review-row>svg{flex-shrink:0}.review-game,.review-context-body{gap:16px}.review-context-body .field{font-size:14px}.review-talk p,.coach-turn>p,.bowler-turn p,.idea p{font-size:15px;line-height:1.7}.review-talk-actions .primary{justify-content:center;align-items:center;display:flex}.idea a{flex-wrap:wrap;min-height:44px;font-size:12px}.coach-question{font-size:15px;line-height:1.6}.entry-bar{padding-bottom:max(16px,env(safe-area-inset-bottom))}.dialog-inner{overflow-wrap:anywhere}dialog{overscroll-behavior:contain;max-height:calc(100dvh - 32px)}.member-list li{flex-wrap:wrap}.member-list li span{overflow-wrap:anywhere;min-width:0}.draft-controls .text-button{min-width:44px;min-height:44px}.draft-suggest{flex-wrap:wrap}.lineup-pick.lane{gap:0 12px}.lineup-pick label{min-width:0}footer{padding-bottom:max(25px,env(safe-area-inset-bottom));flex-wrap:wrap}@media (min-width:761px){main{padding-left:max(32px,env(safe-area-inset-left));padding-right:max(32px,env(safe-area-inset-right))}}@media (min-width:1200px){main{padding-left:48px;padding-right:48px}}@media (max-width:1100px){.topbar{gap:10px;min-height:76px;padding:14px 0}.nav-toggle{display:inline-flex}.topbar-right{border-top:1px solid var(--line);flex-basis:100%;justify-content:flex-start;align-items:stretch;gap:8px;padding:12px 0 4px;display:none}.topbar-right[data-open=true]{display:flex}.topbar-right:has(dialog[open]){display:flex}.topbar-right .league-tag{letter-spacing:1px;background:#edf1e7;border-radius:8px;flex:calc(50% - 8px);padding:10px 12px;font-size:11px}.topbar-right .account-email{white-space:normal;overflow-wrap:anywhere;flex-basis:100%;max-width:none;padding:8px 4px;font-size:12px;display:block}.topbar-right .secondary,.topbar-right .text-button{flex:auto;padding:10px 12px;font-size:13px}}@media (max-width:760px){.brand{font-size:17px}.intro{gap:14px;padding-top:25px}.intro p{max-width:65ch;font-size:14px}.review-intro h1{letter-spacing:-.04em;font-size:clamp(30px,7vw,42px);line-height:1.15}.review-page .intro p{font-size:15px}.bro-lockup{flex-wrap:wrap;gap:8px}.review-page .review-hero{padding:20px}.review-series{flex-wrap:wrap;margin-top:16px}.review-series span{font-size:13px}.review-context-body{padding:0 16px 20px}.review-game{padding:20px 16px}.game-row-head,.week-head,.week-foot,.session-bar{flex-wrap:wrap;gap:8px}.session-bar>div{flex-wrap:wrap}.session-bar{font-size:10px}.save-status{font-size:11px}.entry-heading{gap:12px}.entry-heading>div{min-width:0}.entry-heading .text-button{flex-shrink:0}.panel-heading{flex-wrap:wrap;gap:12px}.game-nav{flex-wrap:wrap}.login-card{margin:28px auto;padding:24px}.dialog-inner{padding:24px}.close-button{margin:-12px -10px 0 0}}@media (max-width:380px){.team-grid{gap:8px}.bowler-card{padding:14px 10px 0}.card-top{flex-wrap:wrap;gap:6px}.active-label{margin-left:0}.card-scores{gap:12px}.bowler-name{font-size:13px}.score-panel{padding:14px}.ceiling-hero{padding:20px 16px}.hero-number{letter-spacing:-.04em;font-size:60px}.pin-art{display:none}.match-score{gap:10px}.match-score strong{font-size:48px}.split-chip{padding:10px 4px}.split-chip strong{font-size:14px}.lineup-pick.lane{grid-template-columns:1fr}.draft-row{gap:6px;padding:8px 6px}.home-grid{grid-template-columns:1fr}.chip-add{flex-basis:100%;min-width:0}}.week-list{grid-template-columns:minmax(0,1fr)}.week-card,.league-section,.home-side>*{min-width:0}.eyebrow{line-height:1.6}.intro h1,.hero-number,.match-score strong,.game-hero-score strong,.review-series strong{letter-spacing:-.04em}@media (pointer:coarse){.league-table td a{align-items:center;min-height:44px}.review-link{font-size:12px}}.note-field textarea{min-height:96px}@media (max-width:380px){.note-field textarea{min-height:120px}}.league-scroll,.scorecard-scroll,.opponent-grid-scroll{position:relative}:root{--paper:#f4f1e8;--ink:#203b2f;--green:#203b2f;--line:#d8dcd1;--muted:#586557;--lime:#ddf29a;--display:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{font-family:var(--display)}h1,h2,h3{font-weight:700}.primary{background:var(--green)}.brand{font-family:Alfa Slab One,serif}.brand-icon{--brand-mark-accent:#e5b95e;border-radius:10px;width:44px;height:44px}.brand>span:last-child{font-weight:400}.night-home-title{padding:24px 0}.night-home-title h1{margin:0 0 8px;font-size:clamp(28px,4vw,44px);font-weight:750}.night-home-title p{color:var(--muted);font-size:15px}.team-night .home-layout{margin-top:0}.night-primary{border-radius:12px;justify-content:space-between;align-items:center;width:100%;min-height:54px;margin:14px 0;padding:14px 20px;font-size:16px;text-decoration:none;display:flex}.match-score{grid-template-columns:1fr auto 1fr;justify-content:stretch}.match-score strong{color:var(--paper);font-size:clamp(52px,6vw,80px);font-weight:750}.match-score strong.ours{color:var(--gold)}.match-score .mid .eyebrow{letter-spacing:.04em;font-size:10px}.match-score .open{font-size:13px}.match-score .who{font-size:14px}.split-chip{background:#2e493b;border-radius:12px;padding:12px 8px}.split-chip .eyebrow{letter-spacing:0;justify-content:center;font-size:12px}.split-chip strong{font-size:22px;font-weight:700}.split-chip small{color:#d4dfce;font-size:11px}.match-lines{font-size:13px;line-height:1.5}.match-team-total{color:#d4dfce;border-top:1px solid #627567;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;font-size:13px;display:flex}.match-team-total strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:26px}.game-row-right{flex-wrap:wrap;justify-content:flex-end}.game-row-right small{color:var(--muted);font-size:11px}.standings-date{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.6;display:block}.mini-card-link>div>span{font-size:13px;line-height:1.5}.score-title{justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0 16px;display:flex}.score-title h1{margin:0;font-size:30px}.score-title>span{color:var(--muted);font-size:14px}.score-layout{grid-template-columns:150px minmax(0,1fr);align-items:start;gap:20px;display:grid}.bowler-rail{flex-direction:column;gap:8px;display:flex;position:sticky;top:20px}.bowler-tab{border:1px solid var(--line);text-align:left;background:#fcfbf7;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:6px;min-height:60px;padding:14px;display:grid}.bowler-tab.selected{background:var(--green);color:var(--paper);border-color:var(--green)}.bowler-tab.selected strong{color:var(--gold)}.bowler-tab span{font-size:14px;font-weight:650}.bowler-tab strong{font-variant-numeric:tabular-nums;font-size:22px}.bowler-tab small{grid-column:1/-1;font-size:12px}.rail-total{border-top:1px solid var(--line);justify-content:space-between;padding:16px 8px;font-size:13px;display:flex}.rail-total strong{font-variant-numeric:tabular-nums}.score-first .workspace{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.score-first .score-panel{padding:24px}.actual-score{background:var(--green);color:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.actual-score h2{font-size:20px}.actual-score>div>strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:88px;line-height:1.05}.score-context{color:#e0e8d7;text-align:right;font-size:14px}.score-context p{margin-top:10px}.score-context b{color:var(--gold);font-variant-numeric:tabular-nums;font-size:30px;display:block}.score-first .scorecard-scroll{margin-top:16px}.score-first .scorecard-scroll table{min-width:0}.score-first .scorecard-scroll th{padding:5px 0}.score-first .scorecard-scroll td{height:53px;padding-bottom:4px}.score-first .frame-rolls{min-height:24px;font-size:11px}.score-first .frame-rolls span{flex:1;min-width:0;padding:3px 0}.score-first td strong{font-size:14px}.score-first .entry-heading{margin:10px 0}.score-first .entry-heading h3,.score-first .entry-heading .text-button{font-size:14px}.score-keypad{grid-template-columns:3fr 1fr;gap:8px;display:grid}.number-keys{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.number-keys .zero{grid-column:1/-1}.score-keypad button{background:var(--green);min-height:54px;color:var(--paper);font-variant-numeric:tabular-nums;border:1px solid #526b59;border-radius:10px;font-size:25px;font-weight:700}.score-keypad button:hover:not(:disabled){background:#34533f}.score-keypad button:disabled{color:#687466;opacity:1;background:#e1e4da;border-color:#d8dcd1}.mark-keys{grid-template-rows:1fr 1fr;gap:8px;display:grid}.mark-keys button{background:var(--gold);color:var(--green);border-color:#c5d88c;flex-direction:column;justify-content:center;align-items:center;display:flex}.mark-keys button:hover:not(:disabled){background:#e4c778}.mark-keys strong{font-size:34px}.mark-keys span{font-size:12px;font-weight:600}.entry-tools{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.entry-tools .photo-launch,.entry-tools .voice-launch{border-radius:10px;justify-content:center;min-height:48px;margin:0;padding:10px;font-size:13px}.entry-tools .photo-launch small,.entry-tools .photo-launch>span:last-child{display:none}.entry-tools .photo-success,.entry-tools .photo-undo{grid-column:1/-1}.entry-save{background:var(--gold);border-radius:10px;align-items:center;gap:8px;margin-top:12px;padding:12px 14px;font-size:13px;display:flex}.score-first .score-note{font-size:12px}.score-details{flex-direction:column;gap:12px;display:flex}.score-details .team-summary{background:0 0;padding:20px}.score-details .team-summary h3{margin:0 0 8px;font-size:16px}.score-details .next-game{margin:0}.score-details a{text-decoration:none}.night-setup{border-top:1px solid var(--line);padding-top:6px}.night-setup summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:14px;font-weight:650}.night-setup .sharing-bar{flex-direction:column;align-items:stretch}.night-setup .sharing-bar>span{font-size:12px}@media (max-width:1100px){.score-first .workspace{grid-template-columns:minmax(0,1fr)}.score-details{grid-template-columns:1fr 1fr;display:grid}.score-details .team-summary,.score-details .night-setup{grid-column:1/-1}}@media (max-width:760px){.score-layout{display:block}.bowler-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:10px;display:grid;position:static}.bowler-tab{border-radius:8px;justify-content:center;min-height:44px;padding:10px 4px;display:flex}.bowler-tab strong,.bowler-tab small,.rail-total{display:none}.bowler-tab span{font-size:13px}.score-first .score-panel{background:0 0;border:0;padding:0}.actual-score{padding:14px 18px}.actual-score>div>strong{font-size:72px}.actual-score h2{font-size:17px}.score-context{font-size:13px}.score-context b{font-size:26px}.score-first .scorecard-scroll{margin-top:10px}.score-first .crumbs{padding-top:4px;padding-bottom:0}.score-title{padding:4px 0 12px}.score-title h1{font-size:26px}.score-title>span{font-size:12px}.score-keypad button{min-height:48px}.entry-tools{margin-top:10px}.score-details{margin-top:24px}.night-home-title{padding:16px 0}.night-home-title h1{font-size:29px}.split-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.split-chips.three{grid-template-columns:repeat(3,minmax(0,1fr))}.split-chip strong{font-size:21px}.game-row-right small{text-align:right;flex-basis:100%}.match-score .who{font-size:12px}.match-score .mid{padding-bottom:6px}.match-score .mid .eyebrow{font-size:9px}.match-score strong{font-size:54px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.profile-menu{border-left:1px solid var(--line);z-index:20;align-items:center;margin-left:auto;padding-left:12px;display:flex;position:relative}.profile-trigger{min-height:38px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:5px 9px 5px 5px;font-size:11px;font-weight:700;display:flex}.profile-trigger:hover,.profile-trigger[aria-expanded=true]{border-color:var(--line);background:#edf1e7}.profile-avatar{background:var(--lime);width:29px;height:29px;color:var(--green);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.profile-popover{background:var(--white);border:1px solid var(--line);border-radius:13px;width:244px;padding:8px;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 16px 36px #1f463825}.profile-identity{border-bottom:1px solid var(--line);margin-bottom:4px;padding:10px 11px 12px}.profile-identity strong,.profile-identity span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-identity span{color:var(--muted);margin-top:3px;font-size:11px;font-weight:400}.profile-popover button{width:100%;min-height:42px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:9px 11px;font-size:12px;display:flex}.profile-popover button:hover{background:#edf1e7}.profile-popover .profile-danger{color:#9d4b40}.command-account>.account-email,.command-account>.secondary,.command-account>.text-button{display:none}@media (max-width:760px){.profile-menu{border-left:0;border-top:1px solid var(--line);flex:100%;margin:0;padding:8px 0 0}.profile-trigger{justify-content:flex-start;width:100%;min-height:44px;padding:5px 10px}.profile-trigger .profile-name{text-align:left;flex:1;max-width:none}.profile-popover{width:min(280px,100vw - 36px);top:calc(100% + 5px);left:0;right:auto}}.hero-cta{border-radius:12px}.hero-cta.quiet{color:var(--gold);background:0 0;justify-content:flex-start;min-height:44px;padding:8px 0;text-decoration:underline}.score-details .history-button{color:var(--ink);padding:12px;font-size:13px;line-height:1.4}:root{--gold:#d8b86a;--gold-ink:#795b24;--gold-surface:#f4e8c8}.mark-keys button{border-color:#b49754}.entry-save{background:var(--gold-surface)}.match-state,.match-state.final{color:var(--gold)}.entry-tools .photo-launch{background:var(--gold-surface);border-color:#d8c797}a.center-link{color:var(--gold-ink)}.secondary{color:var(--ink);text-decoration:none}.avatar-1{color:#78582f}.avatar-2{color:#46646c}.command-shell{flex-wrap:nowrap;align-items:center;gap:14px}.command-links{background:#edf1e7;border-radius:11px;align-items:center;gap:2px;padding:5px;display:flex}.command-links a{min-height:38px;color:var(--green);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:8px;align-items:center;padding:8px 14px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.command-links a:hover{background:#e3eadb}.command-links a.active{color:var(--ink);background:#f4e4bb}.command-live{min-height:38px;color:var(--green);white-space:nowrap;border:1px solid #8aa66e;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.command-live>span{background:#6f9b4a;border-radius:50%;width:7px;height:7px;display:block}.command-live.active{background:var(--green);color:#f4e4bb;border-color:var(--green)}.command-live.active>span{background:#ddf29a}.command-account{border-left:1px solid var(--line);align-items:center;gap:8px;min-width:0;margin-left:auto;padding-left:12px;display:flex}.command-account .account-email{max-width:150px}.command-account .secondary,.command-account .text-button{min-height:38px;padding:8px 10px}.command-account .text-button{font-size:11px}.command-account dialog{position:fixed}@media (max-width:1000px){.command-shell{gap:8px}.command-links a,.command-live{padding-inline:10px}.command-account{padding-left:8px}.command-account .account-email{display:none}}@media (max-width:760px){.command-shell{border-top:1px solid var(--line);flex-wrap:wrap;flex-basis:100%;justify-content:flex-start;align-items:stretch;gap:8px;padding:12px 0 4px;display:none}.command-shell[data-open=true]{display:flex}.command-shell:has(dialog[open]){display:flex}.command-links{flex:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.command-links a{letter-spacing:.04em;justify-content:center;min-height:44px;padding:8px 4px;font-size:10px}.command-live{flex:100%;justify-content:center;min-height:44px}.command-account{border-left:0;border-top:1px solid var(--line);flex-wrap:wrap;flex:100%;justify-content:flex-start;padding:8px 0 0}.command-account .account-email{flex:100%;max-width:none;padding:4px 0;font-size:12px;display:block}.command-account .secondary,.command-account .text-button{flex:auto;min-height:44px;padding:10px 12px;font-size:13px}.topbar{flex-wrap:wrap;height:auto;min-height:75px;padding-bottom:0}.brand,.nav-toggle{margin:15px 0}}.login-layout{grid-template-columns:minmax(260px,.82fr) minmax(420px,1fr);align-items:stretch;gap:18px;max-width:960px;margin:54px auto 0;display:grid}.login-brand-panel{background:var(--green);min-height:548px;color:var(--paper);border-radius:20px;flex-direction:column;justify-content:space-between;padding:36px;display:flex;position:relative;overflow:hidden}.login-brand-panel:after{content:"";border:1px solid #d6e3c155;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-100px;right:-110px;box-shadow:0 0 0 28px #d6e3c11a,0 0 0 56px #d6e3c10d}.login-panel-mark{width:84px;height:84px;color:var(--lime);--brand-mark-accent:var(--gold);background:#294837;border-radius:22px;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #dce9cf55}.login-panel-kicker{letter-spacing:2px;color:#d8e5ce;margin-top:48px;font-size:10px;font-weight:800}.login-brand-panel h2{letter-spacing:-.055em;max-width:9ch;margin-top:14px;font-size:clamp(32px,4vw,48px);line-height:1.02}.login-panel-copy{color:#d5e0d2;max-width:29ch;margin-top:18px;font-size:15px;line-height:1.65}.login-panel-footer{color:#d5e0d2;letter-spacing:.03em;align-items:center;gap:9px;font-size:12px;display:flex}.login-panel-footer span{background:var(--lime);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #ddf29a1c}.login-card{border-radius:20px;max-width:none;margin:0;padding:42px 44px;box-shadow:0 18px 45px #203b2f12}.topbar .brand{letter-spacing:-.8px;font-size:22px}.login-card .eyebrow{color:#687769}.login-card h1{letter-spacing:-.055em;margin:19px 0 10px;font-size:clamp(34px,4vw,48px);font-weight:750}.login-card>p{max-width:40ch;font-size:15px;line-height:1.6}.login-card form{margin-top:26px}.login-card .field{color:var(--ink);margin:0 0 17px;font-size:12px;font-weight:700}.login-card .field input{height:54px;color:var(--ink);background:#fff;border:1px solid #c7d0c2;border-radius:11px;margin-top:8px;padding:13px 15px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px #203b2f0a}.login-card .field input:focus{border-color:#6f9259;outline:0;box-shadow:0 0 0 4px #ddefc966}.login-card .field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:inset 0 0 0 1000px #fff}.login-card .primary{border-radius:11px;height:54px;margin-top:3px;font-size:15px;box-shadow:0 5px #152d23}.login-card .primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #152d23}.login-card .text-button{color:#396047;justify-content:center;width:100%;min-height:42px;font-size:13px}.login-card .text-button:hover{text-decoration:underline}.login-card .photo-error{color:#9d4b40;background:#fff0ed;border-radius:10px;margin-top:18px;padding:13px 15px;font-size:13px;line-height:1.5}.brand-icon{border-radius:13px;width:48px;height:48px}@media (max-width:760px){.login-layout{margin:26px auto 0;display:block}.login-brand-panel{border-radius:16px;min-height:0;padding:24px}.login-panel-mark{border-radius:17px;width:62px;height:62px}.login-panel-kicker{margin-top:28px}.login-brand-panel h2{max-width:none;font-size:32px}.login-panel-copy{margin-top:10px;font-size:14px}.login-panel-footer{margin-top:28px}.login-brand-panel:after{width:180px;height:180px;bottom:-95px;right:-90px}.login-card{border-radius:16px;margin-top:12px;padding:28px 22px}.login-card h1{font-size:36px}.login-card form{margin-top:22px}}@media (min-width:761px) and (max-width:900px){.login-layout{grid-template-columns:minmax(230px,.7fr) minmax(380px,1fr);gap:12px}.login-brand-panel{padding:28px}.login-card{padding:34px 30px}}.between-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.between-actions .secondary{color:inherit;text-decoration:none}.tonight-card{margin-top:14px;padding:18px 20px}.tonight-card .eyebrow{color:#795b24}.tonight-card h2{letter-spacing:-.8px;margin:8px 0 4px;font-size:26px;font-weight:600}.tonight-card h2 em{color:var(--green);font-style:normal}.tonight-card p{color:#4e6046;font-size:13px;line-height:1.6}.tonight-card .tonight-roster{color:var(--muted);margin-top:2px;font-size:12px}.tonight-card .start-button{justify-content:center;align-items:center;gap:8px;margin-top:14px;display:flex}.tonight-card .photo-error{color:#9f2828;margin-top:8px;font-size:12px}.team-night .live-discovery{margin:12px 0 0}.team-night .live-discovery-heading{margin-bottom:6px}.team-night .live-discovery-status{padding:8px 0;font-size:13px}.team-night .night-home-title{padding:28px 0 14px}.team-night .night-home-title h1{margin-bottom:4px}
