:root{--bg:#eef1f4;--panel:#fff;--paper:#fbf8ef;--paper-line:#d9d1bd;--ink:#1b2430;--muted:#69707b;--line:#d5dae1;--accent:#1f5fbf;--accent-soft:#e3ecfa;--hit:#0f7a3d;--run:#c2410c;--ball:#1f9d55;--strike:#d97706;--out:#dc2626;--grass:#cfe8c6;--grass-dark:#b9dcae;--infield:#e9d3b0;--chalk:#fff;--base:#fff;--base-on:#f2b705;--danger-bg:#fdecec;--danger:#a61b1b;--mono:ui-monospace, "Cascadia Mono", Consolas, "SF Mono", monospace;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#11151b;--panel:#1a2029;--paper:#1f2630;--paper-line:#39424f;--ink:#e7ebf0;--muted:#98a1ad;--line:#2f3742;--accent:#6ea8ff;--accent-soft:#1d2d47;--hit:#4ade80;--run:#fb923c;--grass:#233a26;--grass-dark:#1d3120;--infield:#4a3d2a;--chalk:#c9cfd6;--base:#d9dee5;--danger-bg:#3a1c1c;--danger:#ffb4b4}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font:14px/1.4 var(--sans);margin:0}button{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:6px 10px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.quiet{color:var(--muted);border-color:#0000}kbd{font:11px var(--mono);border:1px solid var(--line);color:var(--muted);border-bottom-width:2px;border-radius:4px;margin-left:4px;padding:1px 5px}.muted{color:var(--muted)}.app{flex-direction:column;height:100%;display:flex}.header{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:24px;padding:10px 16px;display:flex}.linescore{border-collapse:collapse;font-family:var(--mono);font-size:13px}.linescore th,.linescore td{text-align:center;min-width:22px;padding:2px 7px}.linescore thead th{color:var(--muted);font-weight:400}.linescore .team{text-align:left;font-family:var(--sans);padding-right:14px;font-weight:600}.linescore .total{border-left:1px solid var(--line);font-weight:700}.status{text-align:right;margin-left:auto}.status-main{font-size:18px;font-weight:700}.decisions{color:var(--muted);font-size:13px}.columns{flex:1;grid-template-columns:minmax(0,1fr) clamp(320px,100vw - 940px,39vw);gap:14px;min-height:0;padding:14px 16px;display:grid}.book-column,.field-column{flex-direction:column;gap:10px;min-height:0;display:flex}.field-column{overflow-y:auto}.field-column>*{flex:none}.team-away{--team:var(--away);--team2:var(--away2,transparent);--team-ink:var(--away-ink,#fff)}.team-home{--team:var(--home);--team2:var(--home2,transparent);--team-ink:var(--home-ink,#fff)}.team-chip{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.team-chip.away{background:var(--away)}.team-chip.home{background:var(--home)}.tabs{gap:4px;display:flex}.tab{color:var(--muted);border-bottom:none;border-top:3px solid var(--team);border-radius:6px 6px 0 0}.tab.active{color:var(--ink);background:var(--paper);border-color:var(--team);border-width:3px 1px 0;font-weight:700}.book-column .book-scroll{background:0 0;border:none;border-radius:0;align-content:start;display:grid}.book-batters,.book-pitchers{background:var(--paper);border:2px solid var(--team)}.book-batters{border-top-width:6px;border-radius:0 8px 0 0}.book-pitchers{border-radius:0 0 8px 8px}.book-column .scorebook thead th.name-col{color:color-mix(in srgb, var(--team) 65%, var(--ink));font-size:15px;font-weight:700}.batting-banner{background:var(--team);color:var(--team-ink,#fff);border-bottom:4px solid var(--team2,transparent);letter-spacing:.3px;border-radius:8px;padding:6px 12px;font-weight:700}.half-over{border-top:8px solid var(--team);text-align:left;max-width:520px}.half-over .half-line{font-size:15px}.half-over .half-next{margin:10px 0 0}.half-over .modal-buttons{justify-content:flex-end}.book-scroll{background:var(--paper);border:1px solid var(--paper-line);border-radius:0 8px 8px;overflow:auto}.scorebook{border-collapse:collapse;width:100%;font-size:13px}.scorebook th,.scorebook td{border:1px solid var(--paper-line)}.scorebook thead th{color:var(--muted);background:var(--paper);padding:4px;font-weight:600;position:sticky;top:0}.scorebook .slot-col{text-align:center;width:28px;color:var(--muted)}.scorebook .name-col{text-align:left;min-width:clamp(110px,12vw,150px);padding:4px 8px}.scorebook td.name-col{font-weight:600}.scorebook .tag{color:var(--accent);font-size:11px;font-weight:400;display:block}.scorebook tr.up td{background:var(--accent-soft)}.scorebook .box.sub-line{border-left:3px solid var(--ink)}.scorebook .box{vertical-align:top;min-width:clamp(62px,11.1111vw - 58.8889px,76px);height:clamp(41px,11.1111vh - 32.7778px,54px);padding:2px 3px}.ab{font:600 12px var(--mono);align-items:center;gap:2px;display:flex}.ab+.ab{border-top:1px dotted var(--paper-line)}.ab.hit .ab-text{color:var(--hit)}.ab-text{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.mini{flex:none;width:44px;height:36px;overflow:visible}.mini-diamond{fill:none;stroke:var(--paper-line);stroke-width:1.2px}.mini-diamond.scored{fill:var(--team);stroke:var(--team);fill-opacity:.9}.mini-path{fill:none;stroke:var(--ink);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.mini-label{font:600 7px var(--mono);fill:var(--accent)}.mini-out-x{font:700 8px var(--sans);fill:var(--out)}.looking{display:inline-block;transform:scaleX(-1)}.out-num{text-align:center;border:1px solid var(--muted);width:16px;height:16px;color:var(--muted);border-radius:50%;font-size:10px;font-weight:400;line-height:14px}.run{color:var(--run);font-size:12px}.pitchers{border-collapse:collapse;width:100%;font-size:13px}.pitchers th,.pitchers td{text-align:center;border-bottom:1px solid var(--paper-line);padding:4px 8px}.pitchers th{color:var(--muted);font-weight:600}.pitchers .name-col{text-align:left}.pitchers td{font-family:var(--mono)}.pitchers td.name-col{font-family:var(--sans);font-weight:600}.pitchers tr.up td{background:var(--accent-soft)}.pbp{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex:none;max-height:max(64px,min(clamp(89px,100vh - 692px,160px),100vh - 575px));margin:0;padding:8px 10px;font-size:13px;list-style:none;overflow-y:auto}.pbp li{border-bottom:1px dotted var(--line);padding:2px 0}.pbp li:first-child{font-weight:600}.pbp-inning{width:34px;color:var(--muted);font-family:var(--mono);display:inline-block}.diamond-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px}.diamond{width:100%;max-height:clamp(170px,100vh - 490px,380px);display:block}.grass{fill:var(--grass)}.warning-track{fill:none;stroke:var(--infield);stroke-width:7px}.infield{fill:var(--infield)}.infield-grass{fill:var(--grass-dark)}.foul-line{stroke:var(--chalk);stroke-width:1.2px}.mound{fill:var(--infield)}.base{fill:var(--base);stroke:#8a8f98;stroke-width:1px}.base.on{fill:var(--base-on);stroke:#9a7400}.plate{fill:var(--base);stroke:#8a8f98}.runner-name,.batter-name{font:600 12px var(--sans);fill:var(--ink);paint-order:stroke;stroke:var(--panel);stroke-width:3px}.batter-name{fill:var(--muted);font-weight:400}.preview-arrow{fill:none;stroke:var(--accent);stroke-width:3px;stroke-dasharray:6 4;stroke-linejoin:round}.arrow-head{fill:var(--accent)}.out-mark{fill:var(--out);font:700 16px var(--sans)}.situation{justify-content:center;gap:18px;margin:6px 0;display:flex}.lights{align-items:center;gap:5px;display:flex}.disengagements{font:700 12px var(--mono);color:var(--muted);align-self:center}.lights-label{font:700 12px var(--mono);color:var(--muted);margin-right:2px}.light{border:1px solid var(--line);background:0 0;border-radius:50%;width:13px;height:13px}.light.lit.ball{background:var(--ball);border-color:var(--ball)}.light.lit.strike{background:var(--strike);border-color:var(--strike)}.light.lit.out{background:var(--out);border-color:var(--out)}.matchup{text-align:center;flex-direction:column;gap:2px;font-size:13px;display:flex}.pitch-strip{flex-wrap:wrap;align-items:center;gap:4px;min-height:26px;display:flex}.pitch-chip{font:700 12px var(--mono);background:var(--accent-soft);border-radius:4px;padding:3px 7px}.pitch-chip.ball,.pitch-chip.pitcher_violation,.pitch-chip.intentional_walk{color:var(--ball)}.pitch-chip.called_strike,.pitch-chip.swinging_strike,.pitch-chip.foul,.pitch-chip.foul_tip,.pitch-chip.foul_bunt,.pitch-chip.batter_violation{color:var(--strike)}.play-box{background:var(--panel);border:2px solid var(--accent);border-radius:8px;padding:8px}.play-box input{width:100%;font:600 22px var(--mono);text-transform:uppercase;letter-spacing:1px;color:var(--ink);background:0 0;border:none;outline:none}.play-box input[type=checkbox]{flex:none;width:auto}.reading{color:var(--muted);min-height:19px;margin-top:4px;font-size:13px}.reading.ready strong{color:var(--ink)}.open-box{text-align:left;width:100%;padding:10px;font-weight:600}.book-column{position:relative}.hit-field{z-index:5;background:var(--panel);border:2px solid var(--accent);border-radius:10px;flex-direction:column;padding:8px 10px;display:flex;position:absolute;inset:0}.hit-field-head{margin-bottom:4px;font-size:14px}.hit-field-svg{cursor:crosshair;flex:1;width:100%;min-height:0}.fielder-guide{font:600 14px var(--mono);fill:var(--muted);opacity:.55;pointer-events:none}.hit-dot{fill:var(--run);stroke:#fff;stroke-width:2px}.hit-dot.default{fill:var(--muted);stroke-dasharray:3 2}.preview-arrow{pointer-events:none}.token circle{fill:var(--accent);stroke:#fff;stroke-width:2px}.token text{font:700 10px var(--sans);fill:#fff;pointer-events:none}.token.out circle{fill:var(--out)}.token.draggable{cursor:grab}.token-name{font:600 11px var(--sans);fill:var(--ink);paint-order:stroke;stroke:var(--panel);stroke-width:3px;pointer-events:none}.preview-arrow.out{stroke:var(--out)}.diamond.editing{touch-action:none}.runner-menu{background:var(--panel);border:2px solid var(--accent);border-radius:8px;flex-direction:column;gap:8px;padding:10px;display:flex}.runner-menu-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.runner-menu-buttons button{justify-content:space-between;display:flex}.made-the-play{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.made-the-play input{width:70px;font:600 15px var(--mono);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:4px;padding:3px 6px}.defense-warning{text-align:left;width:100%;color:var(--strike);border-color:var(--strike);font-weight:600}.modal.defense-check{border-top:8px solid var(--team);text-align:left;width:100%;max-width:560px}.defense-row{align-items:flex-start;gap:10px;margin:8px 0;display:flex}.defense-pos{width:30px;font-family:var(--mono);padding-top:7px}.pick-list button.waiting{border-color:var(--team);font-weight:600}.sub-button{text-align:left;width:100%;font-weight:600}.sub-row{gap:6px;display:flex}.sub-row .sub-button{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.eject-button{white-space:nowrap;flex:none}.ejection{text-align:left;flex-direction:column;gap:10px;width:100%;max-width:460px;display:flex}.ejection h2{margin:0}.ejection label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}.ejection input{font:14px var(--sans);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:4px;padding:5px 7px}.modal.subs{text-align:left;width:100%;max-width:560px}.sub-tabs,.team-toggle{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.sub-tabs button.selected,.team-toggle button.selected,.position-grid button.selected,.pick-list button.selected{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.pick-list{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.position-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.position-grid button{justify-content:space-between;gap:6px;display:flex}.pick-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.small{font-size:12px}.slot-entry{color:var(--muted);font-size:12px;font-weight:400}.slot-entry.now{color:var(--ink);font-size:13px;font-weight:600}.scorebook tr.up .slot-entry.now{color:color-mix(in srgb, var(--team) 65%, var(--ink));font-size:15px;font-weight:700}.slot-entry .pos{font:400 11px var(--mono);color:var(--muted);margin-left:3px}.modal.at-bat-fix{border-top:8px solid var(--team);text-align:left;flex-direction:column;gap:8px;width:100%;max-width:560px;display:flex}.modal.at-bat-fix h2,.modal.at-bat-fix p{margin:0}.fix-pitches{flex-wrap:wrap;align-items:center;gap:5px;min-height:30px;display:flex}.fix-pitches .pitch-chip{border:1px solid #0000;padding:4px 9px}.fix-pitches .pitch-chip.picked{border-color:var(--accent);outline:2px solid var(--accent)}.fix-play{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.fix-play input{width:110px;font:600 15px var(--mono);text-transform:uppercase;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:4px;padding:4px 8px}.fix-status{font-size:13px;font-weight:600}.fix-status.problem{color:var(--strike)}button.link{color:var(--accent);font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.type-picker{align-items:center;gap:4px;margin-top:4px;display:flex}.type-picker button{width:30px;font:700 13px var(--mono);padding:3px 0}.type-picker button.selected{background:var(--accent);border-color:var(--accent);color:#fff}.type-picker .small{margin-left:6px}.runner-details{border-top:1px solid var(--line);flex-direction:column;gap:5px;margin-top:6px;padding-top:6px;display:flex}.runner-detail{flex-wrap:wrap;align-items:center;gap:5px;font-size:13px;display:flex}.runner-detail label{align-items:center;gap:4px;display:inline-flex}.runner-detail input:not([type=checkbox]){width:52px;font:600 13px var(--mono);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:4px;padding:2px 5px}.mini-choice{padding:1px 6px;font-size:12px}.mini-choice.selected{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.scorer-calls,.on-pitch{flex-direction:column;gap:5px;display:flex}.scorer-calls{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}.call-row{flex-wrap:wrap;align-items:center;gap:5px;font-size:13px;display:flex}.call-name{min-width:110px;font-weight:600}.call-value{text-align:center;min-width:16px;font-family:var(--mono)}.box-buttons{gap:8px;display:flex}.box-buttons .open-box{flex:1;min-width:0}.rare-button{white-space:nowrap}.rare-list{text-align:left;flex-direction:column;gap:6px;margin-top:8px;display:flex}.rare-list button{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.order-list{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:5px;margin:6px 0;display:grid}.order-list button{text-align:left;padding:4px 8px}.order-list button.selected{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.rare-plays h3{margin:14px 0 2px;font-size:14px}.spot-choice{flex-wrap:wrap;align-items:center;gap:4px;margin-top:10px;display:flex}.fixing{color:var(--strike);margin-top:2px;font-size:12px;font-weight:600}.notes{color:var(--muted);margin:4px 0 0;padding-left:18px;font-size:12px}.ab-button{text-align:left;background:0 0;border:none;border-radius:4px;width:100%;padding:0;display:block}.ab-button:hover{background:var(--accent-soft)}.message{background:var(--danger-bg);color:var(--danger);border-radius:6px;padding:8px 10px;font-size:13px}.buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.buttons button{justify-content:space-between;align-items:center;font-size:13px;display:flex}.footer-actions{justify-content:space-between;display:flex}.modal-backdrop{background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--panel);text-align:center;border-radius:12px;max-width:420px;max-height:calc(100vh - 16px);padding:24px 28px;overflow-y:auto}.modal h2{margin:0 0 6px}.modal-buttons{justify-content:center;gap:10px;margin-top:16px;display:flex}@media (height<=1000px) and (width>=901px){.field-column{gap:6px}.batting-banner{border-bottom-width:3px;padding:2px 10px;font-size:13px}.diamond-card{padding:4px 8px}.situation{margin:2px 0}.matchup{flex-flow:wrap;justify-content:center;gap:0 10px;font-size:12px}.pitch-strip{min-height:22px}.open-box{padding:6px 10px}.sub-button{white-space:nowrap;text-overflow:ellipsis;padding:4px 10px;font-size:12px;overflow:hidden}.buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.buttons button{padding:3px 6px;font-size:12px}.footer-actions button{padding:3px 8px;font-size:12px}.footer-actions kbd{display:none}}.sync-badge{color:var(--muted);font-size:12px}.sync-badge.offline{color:var(--strike);font-weight:600}.sync-badge.refused{color:var(--danger);font-weight:600}.columns[hidden]{display:none}.box-score{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px 16px;display:flex;overflow-y:auto}.box-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.box-teams{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.box-team{flex-direction:column;gap:6px;min-width:0;display:flex}.box-team h3{margin:0;font-size:15px}.box-table{border-collapse:collapse;background:var(--panel);width:100%;font-size:13px}.box-table th,.box-table td{text-align:right;border-bottom:1px solid var(--line);font-family:var(--mono);padding:2px 6px}.box-table th{color:var(--muted);font-size:12px;font-weight:600}.box-table .name-col{text-align:left;font-family:var(--sans);white-space:nowrap}.box-table tfoot td{border-top:2px solid var(--line);font-weight:700}.box-table .box-sub .name-col{padding-left:18px}.box-notes{color:var(--muted);margin:0;font-size:12px}.box-notes strong{color:var(--ink)}.end-game{text-align:left;max-width:480px}.end-game .made-the-play input{width:200px;font:inherit}.end-choices{flex-direction:column;gap:8px;margin-top:14px;display:flex}.delay-screen{max-width:460px}.delay-clock{font-size:18px}.delay-screen .made-the-play{justify-content:center}.delay-screen .made-the-play input{width:auto;font:inherit}.finish-game{text-align:left;flex-direction:column;gap:10px;width:100%;max-width:720px;display:flex}.finish-game h2,.finish-game h3,.finish-game p{margin:0}.finish-game h3{margin-bottom:6px;font-size:13px}.finish-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 12px;display:grid}.finish-game label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}.finish-game input,.finish-game select,.finish-game textarea{font:13px var(--sans);border:1px solid var(--line);background:var(--bg);color:var(--ink);box-sizing:border-box;border-radius:4px;width:100%;padding:4px 6px}.finish-attendance input{border-color:var(--accent);font-size:16px;font-weight:700}.finish-missing{color:var(--strike)}.finish-delay{grid-template-columns:1fr 1.3fr 1.3fr 44px;align-items:center;gap:8px;margin-bottom:4px;display:grid}.finish-holds{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;font-size:12px;display:flex}.finish-holds span{margin-right:6px}.finish-summary{font-size:13px}.ask-pitchers{max-width:560px}.your-call{border-left:3px solid var(--accent);padding-left:10px;font-size:13px}.pitcher-lines{font-size:12px}.box-game-notes{margin:8px 0 0}.footer-actions{flex-wrap:wrap;gap:4px}.league-page{height:100%;overflow-y:auto}.league-page input:not([type=color]),.league-page select,.league-page textarea{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:5px 8px}.league-page textarea{width:100%;font:13px var(--mono)}.league-head{background:var(--panel);border-bottom:1px solid var(--line);align-items:flex-end;gap:24px;padding:12px 16px 0;display:flex}.league-head h1{margin:0 0 8px;font-size:18px}.league-badge{margin:0 0 10px auto}.league-user{margin:0 0 10px 12px}.league-head:not(:has(.league-badge)) .league-user{margin-left:auto}.sign-in-page{box-sizing:border-box;place-items:center;height:100%;padding:16px;display:grid}.sign-in-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;max-width:380px;padding:24px 28px}.sign-in-card h1{margin:0 0 16px;font-size:20px}.sign-in-card form{flex-direction:column;gap:12px;display:flex}.sign-in-card label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.sign-in-card input,.account-page input,.account-page select{font:14px var(--sans);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:5px;padding:6px 8px}.sign-in-card p{margin:0}.sign-in-problem{color:var(--strike);font-size:13px}.account-page{gap:22px}.account-section{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.account-section h3,.account-section h4,.account-section p{margin:0}.people-table{border-collapse:collapse;font-size:13px}.people-table th,.people-table td{text-align:left;border-bottom:1px solid var(--line);padding:5px 10px 5px 0}.people-table th{color:var(--muted);font-weight:600}.people-actions{gap:6px;display:flex}.invite-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.invite-form h4{width:100%}.invite-link{border:2px solid var(--accent);border-radius:8px;max-width:640px;padding:10px 12px}.invite-link-row{gap:8px;margin-top:6px;display:flex}.invite-link-row input{min-width:0;font:12px var(--mono);flex:1}.password-form{max-width:360px}.password-form input{box-sizing:border-box;width:100%}.league-head .tab{--team:var(--accent)}.league-body{flex-direction:column;gap:14px;max-width:1100px;padding:16px;display:flex}.games-table{border-collapse:collapse;background:var(--panel);border-radius:8px;width:100%}.games-table td{border-bottom:1px solid var(--line);padding:8px 12px}.game-date{white-space:nowrap;width:120px}.game-actions{text-align:right;white-space:nowrap;width:190px}.add-games{flex-direction:column;gap:8px;display:flex}.add-games h3{margin:8px 0 0}.add-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.paste-label{margin-top:6px}.teams-page{flex-direction:row;align-items:flex-start}.team-list{flex-direction:column;flex:0 0 220px;gap:6px;display:flex}.team-pick{text-align:left}.team-pick.selected{border-color:var(--accent);font-weight:700}.team-pick .team-chip{margin-right:8px}.team-roster{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.roster-head{align-items:center;gap:10px;display:flex}.league-page .team-name{flex:1;min-width:0;font-size:18px;font-weight:700}.league-page .add-player{width:100%;font-family:var(--mono)}.roster-table{border-collapse:collapse;width:100%}.roster-table th{text-align:left;color:var(--muted);padding:2px 6px;font-size:12px;font-weight:600}.roster-table td{padding:2px 6px}.roster-table td input{width:100%}.league-page .player-number{width:60px}.roster-table td:first-child{width:72px}.roster-table td:nth-child(3){width:130px}.roster-table td:last-child{width:40px}.starters{flex-direction:column;gap:12px;padding:12px 16px;display:flex}.page-head{align-items:center;gap:14px;display:flex}.page-head h2{margin:0;font-size:18px}.starters-teams{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.team-starters{flex-direction:column;gap:8px;min-width:0;display:flex}.team-starters h3{justify-content:space-between;align-items:center;margin:0;font-size:15px;display:flex}.team-starters .color-flip{color:inherit;background:0 0;border:none;padding:0;font-size:12px;font-weight:400;text-decoration:underline}.lineup-table{border-collapse:collapse;width:100%}.lineup-table td{padding:2px 4px}.lineup-table td:first-child{text-align:center;width:22px}.lineup-table td:nth-child(2){width:110px}.lineup-table input{width:100%}.lineup-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.player-picker{position:relative}.player-list{z-index:20;background:var(--panel);border:1px solid var(--line);border-radius:6px;width:240px;max-height:260px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 6px 18px #00000059}.player-list li{cursor:pointer;white-space:nowrap;border-radius:4px;gap:8px;padding:4px 8px;display:flex}.player-list li .number{text-align:right;min-width:22px}.player-list li .where{margin-left:auto}.player-list li.active{background:var(--accent-soft)}.lineup-pitcher td{border-top:2px solid var(--line);padding-top:6px}.starters-foot{align-items:flex-start;gap:14px;display:flex}.starters-foot .notes{margin:0}@media (width<=900px){.app{height:auto}.columns{grid-template-columns:minmax(0,1fr)}.book-scroll{overflow:auto visible}.header{flex-wrap:wrap}.starters-teams,.box-teams{grid-template-columns:minmax(0,1fr)}.teams-page{flex-direction:column}.team-list{flex:none;width:100%}}button.primary kbd{color:#fff;border-color:#ffffff8c}
