.transfer input[type=file]{max-width:100%;font-size:.9rem}.transfer textarea{min-height:220px;font-family:ui-monospace,monospace;font-size:.85rem}.transfer>button{margin:.5rem 0}.records-screen{max-width:760px;margin-inline:auto;padding-bottom:16px}.record-heading,.record-list>li{display:flex;align-items:center;gap:12px}.record-heading{justify-content:space-between}.record-heading h2{overflow-wrap:anywhere;min-width:0}.team-name{display:flex;align-items:end;gap:12px;margin-bottom:12px}.team-name label{display:grid;gap:4px;flex:1;min-width:0}.record-value{display:grid;align-content:start;gap:12px;color:var(--muted)}.game-team-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-context>span:first-child{min-width:0}.game-context>span:last-child{flex-shrink:0}.record-list{list-style:none;padding:0}.record-list>li{border-bottom:1px solid var(--line);padding:12px 0}.record-list>li>div{flex:1;min-width:0;overflow-wrap:anywhere}.record-list p{margin:4px 0}.record-list .player-bubble{flex:0 0 16px;width:16px;height:16px}.roster-ratings{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.75rem}.record-editor,.record-import{padding:12px;border:1px solid var(--line);border-radius:12px;margin-block:12px;display:grid;gap:12px}.record-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-editor label,.record-import label,.record-form-grid label{display:grid;gap:4px;min-width:0}.records-screen input,.records-screen select,.records-screen textarea{max-width:100%}.record-editor input[type=checkbox]{width:auto}.record-editor fieldset{min-width:0}.import-rows{padding-left:24px}.import-rows li{border-bottom:1px solid var(--line);padding:8px}.import-rows dl>div{display:flex;gap:8px;overflow-wrap:anywhere}.import-rows dd{margin:0}.informational,.minimum-building{color:var(--muted, #5d6563)}.is-building .player-problems li:has(.informational){color:var(--muted, #5d6563)}.player-credit small{font-size:.6rem}.not-added{color:var(--muted, #5d6563);background:transparent}.game-context{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 8px;font-size:.75rem}.game-context button{min-height:30px;padding:4px 8px}@media(max-width:360px){.record-form-grid{grid-template-columns:1fr}}.player-problems .informational button{color:var(--muted, #5d6563)}.player-credit.minimum-building{line-height:14px}.player-credit.minimum-building small{display:block}.player-view{min-width:0}.player-view-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;font-size:13px;gap:0 10px}.game-problems{display:contents}.game-problems summary{min-height:44px;padding:12px 0}.game-problems>ul{flex-basis:100%}.player-row-grid{display:grid;grid-template-columns:minmax(min(84px,28%),1fr) repeat(6,minmax(0,29px)) repeat(2,20px) 36px;gap:3px;align-items:center}.player-column-headings{height:24px;text-align:center;font-size:11px;color:var(--muted)}.player-column-headings>:first-child{text-align:left}.player-row{border-bottom:1px solid var(--line)}.player-summary{width:100%;min-height:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;font-size:12px;text-align:left}.player-summary[aria-expanded=true]{background:var(--surface)}.player-identity{display:flex;min-width:0;align-items:center;gap:5px}.player-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.player-lane{position:relative;display:grid;place-items:center;height:27px;border:1px solid transparent;border-radius:4px;background:var(--position-color);font-size:11px}.player-lane.role-absent{border-color:var(--muted);background:repeating-linear-gradient(135deg,var(--surface),var(--surface) 3px,var(--reserve) 3px,var(--reserve) 5px)}.player-lane.has-error{box-shadow:inset 0 0 0 2px var(--error);border-color:var(--error)}.sitting-marker{position:absolute;top:4px;bottom:4px;left:-3px;width:2px;background:#876000}.player-count,.player-credit{text-align:center;font-variant-numeric:tabular-nums}.player-credit{border:2px solid transparent;border-radius:14px;line-height:24px}.player-credit.below-minimum{border-color:var(--error);color:var(--error)}.player-controls{padding:0 5px 10px;background:var(--surface);font-size:13px}.player-controls .toggle{margin:0}.player-controls fieldset{border:0;padding:0;margin:8px 0 0;min-width:0}.player-controls legend{padding:0}.player-shift-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.player-shift-controls label{display:flex;align-items:center;justify-content:center;gap:3px;min-height:44px;margin:0;padding:4px 0}.player-problems{list-style:none;padding:0;margin:4px 0}.player-problems li{margin:0}.player-problems button{width:100%;text-align:left;min-height:40px;padding:7px 4px;border:0;background:transparent;font-size:13px;color:var(--error)}@media(max-width:359px){.player-row-grid{gap:2px}}.composer textarea{min-height:100px}.composer-text{margin:.6rem 0}.composer-text label{margin:0 0 .3rem}.composer-field{display:block;position:relative}.composer-field textarea{display:block}.dictation-interim{display:block;padding:.1rem .6rem 0;color:var(--muted);white-space:pre-wrap;overflow-wrap:break-word}.dictation-error{color:var(--muted);font-size:.8rem;margin:-.3rem 0 .6rem}.transcribing,.transcription-note,.needs-text{color:var(--muted);font-size:.8rem}.transcript-choice{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:.8rem}.transcript-choice button{padding:.25rem;font-size:inherit}.composer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mic-unavailable{flex:1 0 100%;color:var(--muted);font-size:.8rem}.composer-status{color:var(--muted);font-size:.8rem;min-height:1.4em}.composer .note-tags{display:grid;grid-template-columns:1fr 1fr;gap:8px}.composer-actions{flex-wrap:nowrap;gap:4px}.composer-actions .icon-button,.recording-confirm .icon-button{flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px}.composer-action-space{flex:1}.composer-actions .composer-send{border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--focus)}.composer-actions .composer-send:disabled{color:var(--muted);opacity:1}.recording-graph{position:relative;flex:1;min-width:0;height:40px;overflow:hidden;background:var(--reserve);border-radius:4px}.recording-graph canvas{width:100%;height:40px}.recording-timer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-variant-numeric:tabular-nums;font-weight:650;color:var(--ink);text-shadow:0 1px 2px var(--surface),0 -1px 2px var(--surface)}.recording-dot{position:absolute;top:16px;left:8px;width:8px;height:8px;border-radius:50%;background:var(--error);animation:recording-pulse 1s ease-in-out infinite alternate}@keyframes recording-pulse{to{opacity:.3}}.recording-confirm{display:flex;align-items:center;gap:4px}.recording-confirm p{flex:1;font-size:.85rem}@media(prefers-reduced-motion:reduce){.recording-dot{animation:none}}.clip-actions{display:flex;gap:8px;font-size:.8rem}.clip-actions button{padding:.25rem;font-size:inherit}.capture{border:2px solid var(--focus)}.capture textarea{min-height:150px}.feedback-queue-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.player-card{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:72px;min-width:44px;padding:3px;gap:2px;color:var(--ink);background:var(--position-color);overflow-wrap:anywhere;border:1px solid #728478;line-height:1.12}.player-card:disabled{color:var(--ink)}.player-card[aria-disabled=true]{cursor:progress}.player-card strong{font-size:.95rem;font-weight:650}.player-card .slot-label{font-size:.65rem}.card-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;font-size:.68rem}.player-card .flag{border:1px solid currentColor;border-radius:3px;padding:0 2px}.player-card .sitting{color:#725000;font-weight:750}.player-card.has-error{border:3px solid var(--error)}.player-card.empty{border-style:dashed}.player-card.came-on strong{font-weight:850}.player-card[aria-pressed=true]{outline-offset:-3px}.role-forward{--position-color: var(--forward)}.role-midfielder{--position-color: var(--midfielder)}.role-back{--position-color: var(--back)}.role-goalkeeper{--position-color: var(--goalkeeper)}.role-reserve{--position-color: var(--reserve)}.field-view .player-card{aspect-ratio:1;border-radius:50%;min-height:44px;background:color-mix(in srgb,var(--position-color) 72%,transparent);border:1px solid var(--position-color)}.field-view .player-card:hover:not(:disabled){border-color:var(--position-color)}.field-view .player-card.has-error{box-shadow:inset 0 0 0 2px var(--error)}.field-view .player-card.empty{border-style:dashed}.player-card:active:not(:disabled):not(.card-dragging):not(.card-moving),.player-card[data-pressed=true]:not(:disabled):not(.card-dragging):not(.card-moving){transform:scale(.97);outline:none;box-shadow:inset 0 0 0 3px #304c3b}.compact-chip:active:not(:disabled),.compact-chip[data-pressed=true]:not(:disabled){box-shadow:none}.compact-chip:active:not(:disabled) .chip-face,.compact-chip[data-pressed=true]:not(:disabled) .chip-face{box-shadow:inset 0 0 0 2px #304c3b}.field-view .player-card strong{max-width:94%}.field-view .card-badges{max-width:100%}.field-view .flag,.field-view .sitting,.field-view .card-badges .error-text{background:var(--surface);border-radius:3px}.role-absent{--position-color: var(--reserve)}.player-card.compact-chip{position:relative;height:44px;min-height:44px;min-width:44px;padding:4px 1px;border:0;border-radius:0;background:transparent;overflow-wrap:normal}.compact-chip .chip-face{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:36px;padding:1.8px 2.7px;gap:1px;border:1px solid #728478;border-radius:4px;background:var(--position-color)}.compact-chip strong,.compact-chip .slot-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-chip strong{position:relative;z-index:2;min-width:0;font-size:13px;line-height:15px;background:var(--position-color)}.compact-chip .slot-label{position:relative;z-index:2;font-size:10px;line-height:11px;font-variant-caps:all-small-caps}.compact-chip.came-on,.compact-chip.has-error{box-shadow:none}.compact-chip.came-on .chip-face{box-shadow:inset 0 0 0 1px var(--ink)}.compact-chip.is-sitting .chip-face{border:1px dotted #725000}.compact-chip.has-error .chip-face{border-color:var(--error);box-shadow:inset 0 0 0 1px var(--error)}.compact-chip.empty .chip-face{border-style:dashed}.chip-name{display:flex;align-items:center;gap:2px;width:100%;min-width:0}.player-bubble{position:relative;z-index:2;flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:var(--player-hex)}@supports (color: oklch(.68 .14 180)){.player-bubble{background:var(--player-colour)}}.chip-dot{position:absolute;z-index:2;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--ink)}.chip-dot[data-flags=req]{background:transparent;box-shadow:inset 0 0 0 1px var(--ink)}.chip-dot[data-flags="min req"]{box-shadow:0 0 0 1px var(--surface),0 0 0 2px var(--ink)}.field-view .card-badges .more{font-weight:650}.card-dragging,.card-moving{position:relative;z-index:20;will-change:transform}.card-dragging{pointer-events:none}.card-dragging{box-shadow:0 8px 18px #18272050}@media(prefers-reduced-motion:reduce){.player-card{transition:none!important}}.player-card.drop-target{outline:4px solid var(--focus);outline-offset:-4px;filter:brightness(1.12)}.player-card .previous-player{max-width:100%;font-size:10px;line-height:12px;font-weight:400}.compact-chip .previous-player{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-view{touch-action:pan-y;overflow-y:auto;overscroll-behavior-y:contain;min-height:0;display:grid;grid-template-rows:minmax(calc(var(--ranks) * 50px),var(--pitch-share)) 44px minmax(calc(var(--reserve-rows) * 50px),var(--reserve-share)) auto;padding:12px 5px 8px;border-radius:0 0 12px 12px;background:var(--pitch-green)}.findings-button{width:auto;gap:5px;font-size:.75rem}.pitch{position:relative;min-height:0;display:grid;grid-template-rows:repeat(var(--ranks),minmax(50px,1fr));background:repeating-linear-gradient(180deg,var(--pitch-green) 0 72px,#5f8269 72px 144px);touch-action:pan-y;-webkit-user-select:none;user-select:none}.pitch-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;color:#f5f8ee99;pointer-events:none}.pitch-rank{display:flex;align-items:center;justify-content:center;gap:6px;min-height:0;container-type:size;z-index:1}.pitch-rank .player-position{flex:0 1 auto;width:min(calc(100cqh - 6px),32cqw);max-width:32%;min-width:44px}.reserve-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.75rem;line-height:1.25}.reserve-heading>strong{color:#fff;flex-shrink:0}.formation-picker{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;min-height:44px;min-width:44px;max-width:60%;padding:4px 8px;border:1px solid #fffefa99;background:#fffefab8;color:var(--ink)}.formation-picker span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.formation-picker:focus-visible{outline-color:#fff;outline-offset:-3px}.field-view .absent{color:#fff;font-size:.75rem;line-height:1.25;padding-top:6px;overflow-wrap:anywhere}.reserves{color:#fff;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(var(--reserve-rows),minmax(50px,1fr));min-height:0;container-type:size;place-items:center;touch-action:pan-y;-webkit-user-select:none;user-select:none}.reserves .player-position{width:min(calc(100cqh / var(--reserve-rows) - 6px),32cqw);min-width:44px}.field-view .player-position{container-type:inline-size}.field-view .player-card strong{font-size:clamp(.72rem,18cqw,1rem);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-width:100%}.field-view .card-badges{font-size:clamp(.6rem,12cqw,.68rem)}@container (max-width: 52px){.field-view .player-card .card-badges{display:none}.field-view .player-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;max-width:100%}.field-view .player-card .slot-label{font-size:.55rem}}.player-position:has(.card-dragging),.player-position:has(.card-moving){z-index:20}.pitch-rank:has(.card-dragging),.pitch-rank:has(.card-moving),.reserves:has(.card-dragging),.reserves:has(.card-moving){z-index:10}.player-position{min-height:0;aspect-ratio:1;border-radius:50%}.player-position>.player-card{height:100%}.player-position.drag-origin{outline:1px dashed #fffefa80;background:#fffefa18}@media(min-width:700px){.field-view{width:660px;max-width:100%;margin-inline:auto}}.field-view[data-format] .pitch-rank .player-position{width:min(calc(100cqh - 6px),calc(96cqw / var(--pitch-columns)));max-width:calc(96% / var(--pitch-columns))}.field-view[data-format] .reserves{grid-template-columns:repeat(var(--pitch-columns),minmax(0,1fr))}.field-view[data-format] .reserves .player-position{width:min(calc(100cqh / var(--reserve-rows) - 6px),calc(96cqw / var(--pitch-columns)))}.findings{margin-top:1rem;border-top:1px solid var(--line)}.findings details{border-bottom:1px solid var(--line)}.findings li{overflow-wrap:anywhere}.findings li button{margin-left:.3rem}.note-card{position:relative;padding-bottom:48px}.note-meta{font-size:.75rem;color:var(--muted);overflow-wrap:anywhere}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}.note-pencil{position:absolute;right:4px;bottom:4px}.note-audio audio{width:100%;height:44px}.picker-candidates{display:grid;gap:.4rem}.picker-candidates button{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem;text-align:left}.picker-candidates span{color:var(--muted)}.picker-hint{margin-top:.5rem;color:var(--muted)}.review-panel{border:2px solid var(--ink);overflow-wrap:anywhere}.review-panel h3{border-top:1px solid var(--line);padding-top:.6rem}.review-panel small{color:var(--muted)}.review-panel .actions{padding-top:.5rem}.review-panel .actions button{flex:1}.ratings-scroll{overflow-x:auto;max-width:100%}.minimum-settings{display:grid;gap:.5rem}.ratings-table{border-spacing:0;min-width:760px;width:100%}.ratings-table th,.ratings-table td{padding:.5rem;border-bottom:1px solid var(--line)}.ratings-table th:first-child{position:sticky;left:0;background:var(--surface)}.ratings-table select{min-width:70px}@media(min-width:640px){.minimum-settings{grid-template-columns:1fr 1fr}}.shift-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:0;height:56px}.shift-tabs .shift-tab{width:100%;min-width:0;min-height:48px;height:56px;padding:2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;background:var(--surface)}.shift-tabs .shift-tab.is-selected{background:var(--pitch-green);color:#fff;border-color:var(--pitch-green);outline:none}.shift-tab-anchor:nth-child(4) .shift-tab{border-left:3px double var(--ink)}.shift-number{display:flex;align-items:center;justify-content:center;gap:2px}.shift-tabs .shift-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.shift-tabs .is-selected:focus-visible{outline-color:#fff}.shift-tabs strong{font-size:.85rem}.shift-tabs small{font-size:.7rem}.mini-pitch{color:var(--pitch-green);flex-shrink:0}.shift-tab.is-selected .mini-pitch{color:#fff}@media(min-width:700px){.field-main>.shift-tabs{width:660px;max-width:100%;margin-inline:auto}}.formation-choices{color:var(--ink);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.formation-choices button{min-width:0;padding:6px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.8rem}.formation-choices svg{width:100%;height:auto;max-width:102px}.shift-tab-anchor{position:relative;min-width:0}.shift-tab-anchor>.shift-tab{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.shift-popup{position:absolute;z-index:40;top:100%;left:0;width:220px;max-width:calc(100vw - 24px);padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 12px #18272030}.shift-popup.align-right{left:auto;right:0}.shift-popup button{display:block;width:100%;text-align:left;border:0}.sync-button{position:relative}.sync-dot{position:absolute;right:5px;top:5px;width:8px;height:8px;border-radius:50%;background:#a66b00;outline:2px solid var(--surface)}.sync-button>.sync-conflict{position:absolute;bottom:0;right:2px;border-radius:50%;background:var(--error);color:#fff;font-size:11px;font-weight:800;width:16px;height:16px}.sync-button>.sync-offline{position:absolute;width:28px;height:2px;background:var(--muted);transform:rotate(-45deg)}.is-syncing>.icon{animation:sync-spin 1s linear infinite}@keyframes sync-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.is-syncing>.icon{animation:none;opacity:.5}}.table-view{--table-chip-height: clamp(44px, calc((100dvh - 260px) / 12), 58px);min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;align-content:start}.table-scroll{overflow-x:hidden;overflow-y:auto;min-height:0;max-width:100%;border:1px solid var(--line);border-radius:.4rem}.lineup-table{width:100%;table-layout:fixed;border-spacing:0}.table-grid{position:relative;isolation:isolate;touch-action:none;-webkit-user-select:none;user-select:none}.table-grid td:has(.card-dragging),.table-grid td:has(.card-moving){position:relative;z-index:20}.table-player-stack:has(.card-dragging),.table-player-stack:has(.card-moving){overflow:visible}.table-grid .drag-origin{outline:1px dashed var(--focus);outline-offset:-2px}.table-grid .compact-chip[aria-pressed=true] .chip-face{outline:3px solid var(--focus);outline-offset:-3px}.table-connectors{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.table-grid:has(.card-dragging) .table-connectors,.table-grid:has(.card-moving) .table-connectors{visibility:hidden}.table-connectors line{stroke:var(--player-hex);stroke-width:4px;stroke-linecap:round}@supports (color: oklch(.68 .14 180)){.table-connectors line{stroke:var(--player-colour)}}.lineup-table th,.lineup-table td{padding:0 1px;vertical-align:top}.lineup-table td{padding:0}.lineup-table thead th{height:32px;background:var(--surface);font-size:12px;line-height:15px}.lineup-table thead small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400}.lineup-table .table-group-heading th{height:22px;padding:3px;font-size:11px;line-height:16px;text-align:left}.table-player-stack{display:grid;gap:2px;max-height:calc(4 * var(--table-chip-height) + 6px);overflow-y:auto;overflow-x:hidden}.table-empty{text-align:center;font-size:12px}.table-findings{display:flex;margin-left:auto;gap:3px;width:auto;font-size:12px}@media(max-width:359px){.table-scroll{overflow-x:auto}.lineup-table{min-width:324px}}.table-main{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr);padding:6px 10px}.table-view .compact-chip{height:var(--table-chip-height);padding:2px 1px}.table-view .compact-chip .chip-face{height:calc(var(--table-chip-height) - 4px);padding:2px 1px;gap:3px}.table-view .chip-slot-line{display:flex;align-items:center;justify-content:center;gap:3px;max-width:100%}.table-view .chip-slot-line .slot-label{background:var(--position-color)}.table-view .chip-slot-line .player-bubble{flex-basis:8px;width:8px;height:8px}.table-view[data-format] .table-grid{touch-action:pan-y}.table-view[data-format] .player-card{touch-action:none}.table-view[data-format] .lineup-table thead{position:sticky;top:0;z-index:5}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#182720;background:#f5f6f2;font-synthesis:none;line-height:1.45;--surface: #fffefa;--ink: #182720;--muted: #4b5b52;--line: #85938a;--pitch-green: #587d63;--focus: #174ba0;--error: #9c2525;--forward: #fce5cc;--midfielder: #d8eaf7;--back: #e0f2d8;--goalkeeper: #e8ddf2;--reserve: #ededed}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,select,input:not([type=checkbox]){min-height:48px}button{-webkit-tap-highlight-color:transparent;min-width:48px;padding:.65rem .8rem;border:1px solid var(--line);border-radius:.6rem;background:var(--surface);cursor:pointer}button:hover:not(:disabled){border-color:var(--ink)}button:disabled{cursor:default;color:var(--muted)}button.primary{border:2px solid var(--ink);font-weight:750}button[aria-current=page],button[aria-pressed=true]{outline:3px solid var(--focus);outline-offset:-3px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}label{display:grid;gap:.3rem;margin:.6rem 0}select,textarea,input:not([type=checkbox]){border:1px solid var(--line);border-radius:.4rem;background:var(--surface);padding:.6rem;width:100%;min-width:0}textarea{min-height:128px;resize:vertical}input[type=checkbox]{width:24px;height:24px;accent-color:var(--ink)}h1,h2,h3,p{margin:.6rem 0}h1{font-size:1.4rem;letter-spacing:-.06em}h2{font-size:1.3rem}h3{font-size:1.05rem}ul{padding-left:1.3rem}li{margin:.55rem 0}small{display:block}summary{cursor:pointer;min-height:48px;padding:.7rem 0;font-weight:650}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.6rem 0}.actions>label{flex:1;min-width:120px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:.8rem;padding:.8rem;margin:.8rem 0}.error-text{color:var(--error);font-weight:650}.toggle{display:flex;align-items:center;gap:.6rem;min-height:48px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.app-shell{--top-bar: 52px;--bottom-bar: 60px;height:100vh;height:100dvh;max-width:980px;margin:auto;display:grid;grid-template-rows:var(--top-bar) minmax(0,1fr) var(--bottom-bar)}.app-header{display:flex;justify-content:space-between;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);background:var(--surface)}.wordmark{position:relative;isolation:isolate;font-size:35px;line-height:1;letter-spacing:-.065em;font-weight:800}.wordmark--crossbar:after{content:"";position:absolute;height:2px;background:currentColor;left:0;right:-3px;top:36%;z-index:-1}.wordmark--strike{--wordmark-line: var(--pitch-green)}.wordmark--strike:after{content:"";position:absolute;height:2px;background:var(--wordmark-line);left:0;right:-3px;top:57%;z-index:-1}.field-main{min-height:0;display:grid;grid-template-rows:56px minmax(0,1fr);gap:0;padding:6px 10px 54px}.scroll-main{min-height:0;overflow:auto;padding:8px 12px 64px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);align-items:start;gap:5px;padding:6px 12px 0;background:var(--surface);border-top:1px solid var(--line);z-index:30}.icon{width:24px;height:24px;flex-shrink:0}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:9px;border:0;background:transparent}.bottom-nav button{width:100%;color:var(--ink);border:0;transform:none}.bottom-nav .nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 56px;height:32px;border-radius:16px}.bottom-nav button[aria-current=page]{outline:none}.bottom-nav button[aria-current=page] .nav-icon{color:var(--focus);background:#174ba018}@supports (background: color-mix(in srgb,black 10%,transparent)){.bottom-nav button[aria-current=page] .nav-icon{background:color-mix(in srgb,var(--focus) 10%,transparent)}}.bottom-nav button:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.header-actions{display:flex;align-items:center;gap:4px}.update-pill{height:32px;min-height:32px;padding:0 10px;border:0;border-radius:16px;background:var(--focus);color:var(--surface);font-size:.8rem;font-weight:650}.update-pill:disabled{color:var(--surface);opacity:.65}.menu-build{margin:8px;font-size:.7rem;color:var(--muted);overflow-wrap:anywhere}@media(max-width:370px){.app-header:has(.update-pill){padding-inline:6px}.app-header:has(.update-pill) .header-actions{gap:0}.app-header:has(.update-pill) .icon-button{width:36px;min-width:36px;padding-inline:6px}.app-header .update-pill{padding-inline:8px}}.menu-anchor{position:relative;display:flex;z-index:35}.sheet{position:fixed;bottom:calc(var(--bottom-bar) + 4px);left:max(8px,calc((100vw - 720px)/2));right:max(8px,calc((100vw - 720px)/2));max-height:calc(100dvh - var(--top-bar) - var(--bottom-bar) - 12px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:16px 16px 8px 8px;box-shadow:0 -10px 40px #18272030;padding:8px 12px 52px;z-index:25}.sheet--compact{left:max(8px,calc((100vw - 460px)/2));right:max(8px,calc((100vw - 460px)/2))}.notes-screen{top:var(--top-bar);bottom:var(--bottom-bar);left:max(0px,calc((100vw - 980px)/2));right:max(0px,calc((100vw - 980px)/2));max-height:none;border:0;border-radius:0;box-shadow:none}.menu-popover{position:absolute;top:calc(100% + 6px);right:0;bottom:auto;left:auto;width:min(292px,calc(100vw - 24px));max-height:calc(100dvh - var(--top-bar) - var(--bottom-bar) - 12px);border-radius:12px;padding:8px;box-shadow:0 4px 16px #18272026}.sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.sheet-heading h2{font-size:1.1rem}.menu-actions{display:grid;gap:4px}.menu-actions button{text-align:left;border:0}.menu-actions small{color:var(--muted);font-weight:400}.error-toast{position:fixed;bottom:calc(var(--bottom-bar) + 4px);left:max(10px,calc((100vw - 720px)/2));right:max(10px,calc((100vw - 720px)/2));z-index:40}.error-toast button{width:100%;height:48px;min-height:0;border:1px solid var(--error);background:var(--surface);color:var(--error);padding:4px 10px;font-size:.8rem;line-height:1.2;overflow-y:auto;overflow-wrap:anywhere;box-shadow:0 2px 8px #18272020}.notice-toast button{border-color:var(--line);color:var(--ink)}.error-boundary{padding:16px;max-width:480px;margin:auto}.field-main:has(>.game-context){grid-template-rows:auto 56px minmax(0,1fr)}.table-main:has(>.game-context){grid-template-rows:auto minmax(0,1fr)}.menu-game-description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
