:root{--bg-page: #1a1a1a;--bg-app: #1d1d1d;--bg-elevated: #2d2d2d;--bg-panel: rgba(45, 45, 45, .5);--bg-panel-strong: rgba(45, 45, 45, .8);--bg-input: #333333;--bg-input-soft: rgba(255, 255, 255, .08);--bg-subtle: rgba(255, 255, 255, .05);--bg-subtle-2: rgba(255, 255, 255, .06);--bg-subtle-3: rgba(255, 255, 255, .03);--bg-handle: #1d1d1d;--bg-overlay: rgba(0, 0, 0, .85);--bg-backdrop: rgba(0, 0, 0, .35);--border: #404040;--border-strong: rgba(255, 255, 255, .22);--border-soft: rgba(255, 255, 255, .15);--border-softer: rgba(255, 255, 255, .1);--border-softest: rgba(255, 255, 255, .08);--border-faint: rgba(255, 255, 255, .06);--text: #ffffff;--text-secondary: #b3b3b3;--text-muted: #666666;--text-on-accent: #ffffff;--accent-open: #3d8fff;--accent-open-strong: #1f6fd0;--accent-open-muted: rgba(61, 143, 255, .55);--accent-open-tint: rgba(61, 143, 255, .18);--accent-open-glow: rgba(61, 143, 255, .35);--accent-women: #ff3d9a;--accent-women-muted: rgba(255, 61, 154, .55);--accent-women-tint: rgba(255, 61, 154, .18);--accent-purple: #9333ea;--success: #2ecc71;--success-tint: rgba(46, 204, 113, .15);--danger: #e74c3c;--danger-tint: rgba(231, 76, 60, .1);--danger-border: rgba(231, 76, 60, .3);--pattern-pill-bg: rgba(255, 255, 255, .1);--pattern-pill-active-bg: var(--accent-open);--pattern-pill-text: #ffffff;--shadow-card: 0 4px 24px 0 rgba(0, 0, 0, .18);--shadow-modal: 0 24px 48px rgba(0, 0, 0, .4);--shadow-button: 0 1px 4px rgba(0, 0, 0, .08);--shadow-cta: 0 4px 12px rgba(74, 144, 226, .3);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--score-tile-radius: var(--radius-md);--score-bar-pad: 8px;--score-bar-border: 1px;--score-bar-radius: calc(var(--score-tile-radius) + var(--score-bar-pad) + var(--score-bar-border));--line-section-pad: 12px;--line-section-border: 1px;--player-seat-radius: 10px;--line-section-radius: calc(var(--player-seat-radius) + var(--line-section-pad) + var(--line-section-border));--spectator-pad-x: 20px;--spectator-pad-top: 28px;--spectator-pad-bottom: 32px;--spectator-border: 1px;--spectator-radius: calc(var(--score-bar-radius) + var(--spectator-pad-x) + var(--spectator-border));--shell-card-pad-x: 28px;--shell-card-pad-y: 36px;--shell-card-border: 1px;--shell-card-radius: calc(var(--radius-sm) + var(--shell-card-pad-x) + var(--shell-card-border));--line-setup-pad-x: 16px;--line-setup-pad-y: 14px;--line-setup-border: 1px;--line-setup-radius: calc(var(--radius-sm) + var(--line-setup-pad-x) + var(--line-setup-border));--pill-track-pad: 3px;--pill-radius: 7px;--pill-track-radius: calc(var(--pill-radius) + var(--pill-track-pad));--roster-band-pad-x: 12px;--roster-band-pad-top: 10px;--roster-band-pad-bottom: 12px;--roster-band-radius: calc(var(--player-seat-radius) + var(--roster-band-pad-x));--roster-board-pad-x: 16px;--roster-board-border: 1px;--roster-board-radius: calc(var(--player-seat-radius) + var(--roster-board-pad-x) + var(--roster-board-border));--roster-board-line-radius: calc(var(--roster-band-radius) + var(--roster-board-pad-x) + var(--roster-board-border));--confirm-modal-pad: 20px;--confirm-modal-border: 1px;--confirm-modal-radius: calc(var(--radius-sm) + var(--confirm-modal-pad) + var(--confirm-modal-border));--sub-modal-pad: 18px;--sub-modal-inner-radius: 6px;--sub-modal-radius: calc(var(--sub-modal-inner-radius) + var(--sub-modal-pad) + 1px);--settings-control-radius: 10px;--settings-card-pad-x: 16px;--settings-card-radius: calc(var(--settings-control-radius) + var(--settings-card-pad-x) + 1px);--import-panel-pad: 12px;--import-panel-radius: calc(var(--radius-sm) + var(--import-panel-pad) + 1px);--line-info-pad-x: 12px}[data-theme=light]{--bg-page: #e6eaf0;--bg-app: #f4f6f9;--bg-elevated: #ffffff;--bg-panel: #ffffff;--bg-panel-strong: #ffffff;--bg-input: #ffffff;--bg-input-soft: rgba(0, 0, 0, .05);--bg-subtle: #ffffff;--bg-subtle-2: rgba(0, 0, 0, .05);--bg-subtle-3: #f3f5f8;--bg-handle: #c5cad3;--bg-overlay: rgba(20, 24, 32, .55);--bg-backdrop: rgba(20, 24, 32, .25);--border: #8b93a1;--border-strong: rgba(0, 0, 0, .28);--border-soft: rgba(0, 0, 0, .18);--border-softer: rgba(0, 0, 0, .14);--border-softest: rgba(0, 0, 0, .1);--border-faint: rgba(0, 0, 0, .08);--text: #0b1220;--text-secondary: #2f3a4d;--text-muted: #3d4656;--text-on-accent: #ffffff;--accent-open: #0d5ec4;--accent-open-strong: #0a4a9c;--accent-open-muted: rgba(13, 94, 196, .7);--accent-open-tint: rgba(13, 94, 196, .14);--accent-open-glow: rgba(13, 94, 196, .35);--accent-women: #c4006a;--accent-women-muted: rgba(196, 0, 106, .7);--accent-women-tint: rgba(196, 0, 106, .14);--accent-purple: #7c3aed;--success: #0f8a38;--success-tint: rgba(15, 138, 56, .15);--danger: #c40d1c;--danger-tint: rgba(196, 13, 28, .12);--danger-border: rgba(196, 13, 28, .45);--pattern-pill-bg: rgba(0, 0, 0, .1);--pattern-pill-active-bg: var(--accent-open);--pattern-pill-text: #ffffff;--shadow-card: 0 2px 10px 0 rgba(15, 23, 42, .1);--shadow-modal: 0 24px 48px rgba(15, 23, 42, .2);--shadow-button: 0 1px 3px rgba(15, 23, 42, .12);--shadow-cta: 0 4px 12px rgba(13, 94, 196, .32)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif;font-size:16px;color:var(--text);background:var(--bg-page);margin:0;padding:0;box-sizing:border-box;position:relative;overflow-x:hidden;width:100%;max-width:100%;height:100%;height:100lvh;max-height:100lvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto}html,body{background:var(--bg-page)!important;width:100%;height:100lvh;max-height:100lvh;overflow:hidden}#root>*{position:relative;z-index:1}*,*:before,*:after{box-sizing:border-box}#root{overflow-x:hidden;height:100%;height:100lvh;max-height:100lvh}.flex-container,.grid-container{min-width:0;max-width:100%}[data-draggable]{max-width:100%;touch-action:none}.main-content{height:100%;overflow-y:auto;overflow-x:hidden;position:relative;-webkit-overflow-scrolling:touch}[data-dnd-draggable]{touch-action:none;user-select:none;-webkit-user-select:none}button{cursor:pointer;transition:filter .15s ease,background-color .15s ease,border-color .15s ease}button:hover:not(:disabled){filter:brightness(1.08)}button:active:not(:disabled){filter:brightness(.94)}.segmented-toggle button:hover:not(:disabled),.segmented-toggle button:active:not(:disabled){filter:none}button:disabled{cursor:not-allowed}input::placeholder{color:var(--text-muted);opacity:1}input:focus{outline:none;border-color:var(--accent-open)!important;box-shadow:0 0 0 2px var(--accent-open-tint)}.player-seat input:focus,.player-seat-add input:focus{outline:none!important;border-color:transparent!important;box-shadow:none!important}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-elevated)}::-webkit-scrollbar-thumb{background:var(--accent-open);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-open-strong)}.app-shell{--blob-open: color-mix(in srgb, var(--accent-open) 22%, transparent);--blob-women: color-mix(in srgb, var(--accent-women) 22%, transparent);--blob-purple: color-mix(in srgb, var(--accent-purple) 22%, transparent);--blob-noise: url(/noise.png);--blob-grain-opacity: .08;display:flex;flex-direction:column;position:fixed;top:var(--app-offset, 0px);right:0;bottom:auto;left:0;width:100%;height:var(--app-height, 100lvh);max-height:var(--app-height, 100lvh);max-width:100%;overflow:hidden;isolation:isolate;background-color:var(--bg-app);background-image:radial-gradient(ellipse 560px 360px at 10% 8%,var(--blob-open),transparent 70%),radial-gradient(ellipse 280px 420px at 24% 24%,var(--blob-open),transparent 72%),radial-gradient(ellipse 420px 560px at 90% 20%,var(--blob-women),transparent 70%),radial-gradient(ellipse 380px 260px at 76% 40%,var(--blob-women),transparent 72%),radial-gradient(ellipse 540px 340px at 56% 80%,var(--blob-purple),transparent 70%),radial-gradient(ellipse 300px 460px at 70% 62%,var(--blob-purple),transparent 72%);background-repeat:no-repeat}.app-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:var(--blob-grain-opacity);mix-blend-mode:overlay;background-image:var(--blob-noise);background-size:140px 140px}[data-theme=light] .app-shell{--blob-open: color-mix(in srgb, var(--accent-open) 28%, transparent);--blob-women: color-mix(in srgb, var(--accent-women) 28%, transparent);--blob-purple: color-mix(in srgb, var(--accent-purple) 28%, transparent);--blob-grain-opacity: .1}[data-theme=light] .app-shell:before{mix-blend-mode:multiply}.app-shell-header{flex-shrink:0;position:relative;z-index:2;border-bottom:1px solid var(--border-soft);background:color-mix(in srgb,var(--bg-app) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding-top:env(safe-area-inset-top,0px)}.app-shell-inner{width:100%;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.app-shell-inner--wide{max-width:1080px}.app-shell-inner--narrow{max-width:560px}.app-shell-header .app-shell-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"left title right";align-items:center;gap:12px;min-height:56px;padding-top:8px;padding-bottom:8px}.app-shell-header--untitled .app-shell-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"left right"}.app-shell-title{grid-area:title;margin:0;font-size:18px;font-weight:700;letter-spacing:-.03em;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-shell-side{grid-area:left;display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.app-shell-side>.btn{flex:0 1 auto;min-width:0}@media (min-width: 601px){.app-shell-header--untitled .app-shell-side>.btn{flex:0 0 auto;min-width:max-content;white-space:nowrap}}.app-shell-side>.btn-home{flex:0 0 auto}.header-roster{position:relative}.header-roster-count{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--text);color:var(--bg-app);font-size:10px;font-weight:700;line-height:16px;display:flex;align-items:center;justify-content:center;pointer-events:none;box-sizing:border-box}.btn-home-icon,.btn-icon-glyph{width:18px;height:18px;display:block}.btn-icon,.app-shell-header .btn.btn-icon{width:40px;min-width:40px;height:40px;padding:0}.app-shell-side--end{grid-area:right;justify-content:flex-end}.app-shell-body:has(.scoreboard){display:flex;flex-direction:column;overflow:hidden;padding-bottom:0;--score-gutter: 16px}.app-shell-body{flex:1;min-height:0;overflow:auto;position:relative;z-index:1;padding:16px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}.roster-drag-lock{overscroll-behavior:none;touch-action:none;overflow-anchor:none}.app-shell--no-header .app-shell-body{padding-top:max(16px,env(safe-area-inset-top,0px))}.kickoff-footer{width:100%;margin-top:20px;padding:14px 16px;font-size:16px}.line-setup{display:flex;flex-direction:column;gap:16px;padding:var(--line-setup-pad-y) var(--line-setup-pad-x);margin-bottom:4px;background:var(--bg-panel);border:var(--line-setup-border) solid var(--border-faint);border-radius:var(--line-setup-radius)}.line-setup-grid{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,1.15fr);gap:18px 48px;align-items:start}.line-setup-col{display:flex;flex-direction:column;gap:16px;min-width:0}.line-setup-group{display:flex;flex-direction:column;gap:6px;min-width:0}.line-setup-group--cap{justify-self:start}.line-setup-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.line-setup-optional{text-transform:none;font-weight:500;letter-spacing:0;opacity:.72}.line-setup-pills{display:inline-flex;align-items:stretch;gap:2px;width:fit-content;min-height:36px;padding:var(--pill-track-pad);border-radius:var(--pill-track-radius);background:var(--bg-subtle)}.line-setup-split{display:inline-flex;align-items:center;gap:2px;width:fit-content;min-height:36px;padding:var(--pill-track-pad);border-radius:var(--pill-track-radius);background:var(--bg-subtle)}[data-theme=light] .line-setup-pills,[data-theme=light] .line-setup-split{background:#0b12201a}.line-setup-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:34px;height:30px;padding:0 11px;border:none;border-radius:var(--pill-radius);background:transparent;color:var(--text-secondary);font-weight:600;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;justify-content:center}.line-setup-pill.is-active{background:var(--accent-open);color:var(--text-on-accent)}.line-setup-pill:disabled{opacity:.35}.line-setup-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:30px;padding:0 10px;border:none;border-radius:var(--pill-radius);background:transparent;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.line-setup-step--open{color:var(--accent-open)}.line-setup-step--women{color:var(--accent-women)}.line-setup-step:disabled{opacity:.35}.line-setup-ratio{font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1;min-width:2.6em;height:30px;display:inline-flex;align-items:center;justify-content:center;text-align:center;color:var(--text)}.soft-cap-input{width:100%;min-width:0;max-width:100%;height:40px;box-sizing:border-box;padding:0 10px;border-radius:8px;border:1.5px solid var(--border-soft);background:var(--bg-subtle);color:var(--text);font-weight:700;font-size:15px;font-family:inherit;font-variant-numeric:tabular-nums;text-align:center;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.soft-cap-input::-webkit-outer-spin-button,.soft-cap-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;display:none}.game-clock-field{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:40px;border-radius:8px;border:1.5px solid var(--border-soft);background:var(--bg-subtle);overflow:hidden;display:flex;align-items:stretch}.line-setup .game-clock-field,.settings-clocks .game-clock-field{height:40px;border-width:1px}.settings-clocks .game-clock-field,.settings-clocks .soft-cap-input{border-radius:var(--settings-control-radius)}.game-clock-field:focus-within{border-color:var(--accent-open);box-shadow:0 0 0 2px var(--accent-open-tint)}.game-clock-input{display:block;flex:1;width:100%;min-width:0;max-width:100%;height:100%;margin:0;border:none;border-radius:0;background:transparent;color:var(--text);font-weight:600;font-size:15px;font-family:inherit;font-variant-numeric:tabular-nums;text-align:left;padding:0 8px;color-scheme:dark;-moz-appearance:none;appearance:none;-webkit-appearance:none}.game-clock-input:focus{outline:none;border:none!important;box-shadow:none!important}.game-clock-input::-webkit-datetime-edit,.game-clock-input::-webkit-datetime-edit-fields-wrapper{padding:0;min-width:0}.game-clock-input::-webkit-calendar-picker-indicator{margin:0 0 0 4px;flex-shrink:0}[data-theme=light] .game-clock-input{color-scheme:light}.line-setup-clocks,.settings-clocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;align-items:end}.settings-clocks{margin-bottom:0;gap:8px;grid-template-columns:1fr 1fr}.settings-clocks>:first-child{grid-column:1 / -1}.line-setup-clock,.settings-clock{display:flex;flex-direction:column;gap:4px;min-width:0;overflow:hidden;font-size:11px;font-weight:500;color:var(--text-muted)}.settings-clock{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.line-setup .soft-cap-input,.settings-clocks .soft-cap-input{height:40px;font-weight:600;border-width:1px}.clock-reminder{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px var(--line-info-pad-x);border-radius:var(--score-bar-radius);background:var(--bg-panel);border:1px solid var(--border-soft);box-shadow:var(--shadow-card);flex-wrap:wrap}.clock-reminder--now{border-color:var(--accent-open)}.clock-reminder-copy{flex:1;margin:0;font-size:14px;font-weight:600;color:var(--text)}.clock-reminder-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;border:none;background:transparent;color:var(--text-secondary);font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:4px 0}.spectator-clock-note{margin:14px 0 0;text-align:center;font-size:14px;font-weight:600;color:var(--text-secondary)}.spectator-clock-note--now{color:var(--text)}.roster-column-title{color:var(--text);margin:0 0 10px;text-align:center;width:100%;display:block;font-size:18px;font-weight:700}.roster-sheet--line .roster-column-title{margin-bottom:8px;font-size:15px;font-weight:600;color:var(--text-secondary)}.roster-sheet--line .roster-board{background:var(--bg-panel);border-color:var(--border-softer);border-radius:var(--roster-board-line-radius)}.roster-sheet--line .player-seat:not(.player-seat-add):not(.player-seat--empty){min-height:40px;font-weight:600}.roster-sheet--line .player-seat--open:not(.player-seat-add):not(.player-seat--empty){background:color-mix(in srgb,var(--accent-open) 68%,#111 32%)}.roster-sheet--line .player-seat--women:not(.player-seat-add):not(.player-seat--empty){background:color-mix(in srgb,var(--accent-women) 68%,#111 32%)}.roster-line-band{position:relative;isolation:isolate;z-index:0;padding:var(--roster-band-pad-top) var(--roster-band-pad-x) var(--roster-band-pad-bottom);box-sizing:border-box}.roster-line-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg-elevated);border-radius:var(--roster-band-radius);z-index:-1;pointer-events:none}.roster-line-band+.roster-line-band,.roster-line-band+.roster-row{margin-top:10px}.roster-line-band>.roster-row:last-child{margin-bottom:0}.roster-section-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 8px}.roster-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.roster-index{flex:0 0 28px;min-width:28px;height:32px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;font-variant-numeric:tabular-nums;color:var(--text-secondary);background:var(--bg-subtle);border-radius:var(--player-seat-radius);box-shadow:0 1px 2px #0000000a;-webkit-user-select:none;user-select:none}.roster-index--blank{background:transparent;box-shadow:none}.roster-sheet{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0}.roster-board{display:flex;gap:16px;background:var(--bg-panel);border-radius:var(--roster-board-radius);padding:12px var(--roster-board-pad-x) 20px;border:var(--roster-board-border) solid var(--border);width:100%;min-width:0;box-sizing:border-box;overflow:visible;flex-wrap:nowrap}.roster-board>*{flex:1;min-width:0}.app-shell-body:has(>.kickoff-column){overflow:auto}.kickoff-column{display:flex;flex-direction:column}@media (max-width: 900px){.app-shell:has(.kickoff-footer){top:0;height:100lvh;max-height:100lvh}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:2000;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.confirm-overlay--soft{background:#00000073;align-items:flex-end;padding-bottom:max(28px,env(safe-area-inset-bottom,0px))}@media (min-width: 601px){.confirm-overlay--soft{align-items:center;padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}}.confirm-modal{background:var(--bg-elevated);border-radius:var(--confirm-modal-radius);padding:var(--confirm-modal-pad);max-width:400px;width:100%;border:var(--confirm-modal-border) solid var(--border);box-shadow:var(--shadow-modal)}.confirm-title{margin:0 0 8px;font-size:18px;font-weight:700;letter-spacing:-.02em}.confirm-copy{margin:0 0 14px;font-size:14px;line-height:1.4;color:var(--text-secondary)}.confirm-line{display:flex;flex-direction:column;gap:6px;max-height:min(50vh,320px);overflow-y:auto;margin-bottom:16px}.confirm-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.app-shell-body--center{display:flex;align-items:center;justify-content:center;overflow:visible;min-height:0;padding:48px 28px;padding-top:max(48px,env(safe-area-inset-top,0px));padding-bottom:max(48px,env(safe-area-inset-bottom,0px))}.shell-card{width:100%;background:var(--bg-panel-strong);border-radius:var(--shell-card-radius);padding:var(--shell-card-pad-y) var(--shell-card-pad-x);border:var(--shell-card-border) solid var(--border-strong);box-shadow:var(--shadow-modal);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recent-team{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:1;min-width:0;width:100%;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;padding:12px 16px;font-size:15px;font-weight:500;font-family:inherit;text-align:left;color:var(--text);background:var(--bg-input-soft);border:1.5px solid var(--border-soft);border-radius:var(--radius-sm);outline:none;box-shadow:none}.recent-team:hover,.recent-team:focus-visible{border-color:var(--accent-open);filter:none}.recent-team.is-selected{background:var(--accent-open-tint);border-color:var(--accent-open)}.recent-team.is-holding{border-color:var(--accent-open)}.home-card{display:flex;flex-direction:column;max-height:100%;min-height:0}.home-card-body{min-height:0;overflow:auto}.home-actions{flex:none;display:flex;flex-direction:column;gap:12px;padding-top:12px}.home-open-list,.home-past-list{display:flex;flex-direction:column;gap:8px}.home-open-list{gap:12px;padding-bottom:4px}.home-open-list>.btn,.home-open-list>.home-row>.btn,.home-actions>.btn{width:100%;padding:16px;font-size:18px;font-weight:700}.home-setup--follow{margin-top:20px}.btn.home-quiet{background:transparent;color:var(--text);border:1.5px solid var(--border-soft);box-shadow:none}.home-actions>.btn:disabled{background:var(--bg-input-soft);color:color-mix(in srgb,var(--text) 40%,transparent);border:1.5px solid var(--border-soft);box-shadow:none}.btn.home-continue-secondary{background:var(--accent-open-tint);color:var(--text);border:1.5px solid var(--accent-open);box-shadow:none}.btn.home-quiet:hover,.btn.home-continue-secondary:hover,.home-past:hover{border-color:var(--accent-open)}.home-past{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:600;text-align:left;color:var(--text);background:var(--bg-input-soft);border:1.5px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer}.home-past-meta{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;color:var(--text-secondary);font-variant-numeric:tabular-nums}.home-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;align-self:center;margin:0;padding:0;border:none;background:none;color:var(--text-muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.home-empty{margin:8px 0 0;color:var(--text-secondary);font-size:15px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;font-family:inherit;line-height:1.2;cursor:pointer}.app-shell-header .btn-ghost[aria-pressed=true]{background:var(--bg-subtle);border-color:var(--border);color:var(--text)}.btn-ghost{background:var(--bg-subtle);color:var(--text);border:1px solid var(--border-soft)}.btn.home-continue{justify-content:space-between;gap:12px;text-align:left}.home-row{position:relative;display:flex;width:100%}.home-row>.btn,.home-row>.recent-team{flex:1;min-width:0}.home-row.is-removing>.btn,.home-row.is-removing>.recent-team{padding-right:44px}.home-remove{position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:1;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:var(--danger);color:var(--text-on-accent);font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.home-remove-bar{display:flex;justify-content:flex-end;margin:0 0 12px}.home-continue-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 900px){html[data-keyboard] .app-shell-body--center:has(.home-name:focus){align-items:flex-start;justify-content:flex-start;overflow:auto;padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:12px}html[data-keyboard] .home-card:has(.home-name:focus){max-height:none}html[data-keyboard] .home-card:has(.home-name:focus) .home-card-body{overflow:visible}html[data-keyboard] .home-card:has(.home-name:focus) .home-open-list,html[data-keyboard] .home-card:has(.home-name:focus) .home-past{display:none}.home-name{scroll-margin-top:16px}}.home-continue-score{flex:0 0 auto;font-variant-numeric:tabular-nums}.btn-primary{background:var(--accent-open);color:var(--text-on-accent);border:none;box-shadow:var(--shadow-cta)}.btn-danger-ghost{background:var(--danger-tint);color:var(--danger);border:1px solid var(--danger-border)}.score-num{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,system-ui,sans-serif;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.score-tile{background:var(--bg-subtle);border:1px solid var(--border-soft)}[data-theme=light] .score-tile{background:#fff;border:1.5px solid var(--border);box-shadow:var(--shadow-card)}.line-count{font-weight:600;color:var(--text-secondary);font-size:13px;margin-left:6px}.player-seat{box-sizing:border-box;display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;padding:8px 12px;border:2px solid transparent;border-radius:var(--player-seat-radius);color:var(--text-on-accent);font-weight:700;letter-spacing:-.02em;flex:1;position:relative}.player-seat--open{background:var(--accent-open)}.player-seat--women{background:var(--accent-women)}.player-seat--next.player-seat--open{background:color-mix(in srgb,var(--accent-open) 52%,#000 48%)}.player-seat--next.player-seat--women{background:color-mix(in srgb,var(--accent-women) 52%,#000 48%)}.player-seat--pending{outline:2px dashed rgba(255,255,255,.65);outline-offset:-3px}.player-seat-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}button.player-seat-name{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background-color:transparent;color:inherit;font:inherit;letter-spacing:inherit;padding:0;cursor:text;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}button.player-seat-name:hover,button.player-seat-name:active{filter:none}input.player-seat-name{border:none;background-color:transparent;color:inherit;font:inherit;letter-spacing:inherit;padding:0;outline:none;width:100%;border-radius:0;-webkit-user-select:text;user-select:text}input.player-seat-name:focus{outline:none;box-shadow:none;border-color:transparent!important}.player-seat-meta{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.player-seat-jersey{flex-shrink:0;min-width:28px;font-variant-numeric:tabular-nums;font-weight:800;font-size:13px;text-align:right;opacity:.8}.player-seat-pos{flex-shrink:0;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#00000047;padding:2px 6px;border-radius:6px}.player-seat-field{box-sizing:border-box;border:none;background-color:var(--bg-input-soft);color:var(--text-secondary);border-radius:6px;font-size:12px;font-weight:600;color-scheme:dark}.player-seat-field::placeholder{color:var(--text-muted);opacity:1}.player-seat-field--jersey{width:32px;min-width:32px;height:26px;flex-shrink:0;text-align:center;font-variant-numeric:tabular-nums;padding:0;line-height:26px}.player-seat-field--pos{width:6.75rem;min-width:6.75rem;height:26px;flex-shrink:0;padding:0 6px}button.player-seat-field--pos{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:space-between;gap:4px;font-family:inherit;text-align:left;cursor:pointer}button.player-seat-field--pos:after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.75;flex:0 0 auto}.pos-select-menu{margin:0;padding:4px;list-style:none;background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-modal)}.pos-select-menu button{width:100%;min-height:44px;padding:0 12px;border:none;border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:15px;font-weight:600;text-align:left;cursor:pointer}.pos-select-menu button[aria-selected=true]{background:var(--bg-subtle)}.player-seat:not(.player-seat-add) .player-seat-field{background-color:#00000038;color:#ffffffc7}.player-seat:not(.player-seat-add) .player-seat-field::placeholder{color:#ffffff80}.player-seat-field option{color:#111}.player-seat-pending{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#00000047;padding:2px 6px;border-radius:6px;flex-shrink:0}.player-seat-add-now{flex-shrink:0;height:26px;padding:0 9px;border:none;border-radius:6px;background:#ffffffeb;color:#111;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;line-height:26px}.player-seat-add-now:hover,.player-seat-add-now:focus-visible{background:#fff}.player-seat-add-now:active{transform:scale(.97)}.player-seat--empty{background:transparent;border:2px dashed var(--border-soft);color:var(--text-muted);font-weight:600;box-shadow:none;cursor:pointer}.player-seat--empty .player-seat-name{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.player-seat--empty.player-seat--open,.player-seat--empty.player-seat--next.player-seat--open{border-color:color-mix(in srgb,var(--accent-open) 32%,var(--border-soft));background:transparent;color:var(--text-muted)}.player-seat--empty.player-seat--women,.player-seat--empty.player-seat--next.player-seat--women{border-color:color-mix(in srgb,var(--accent-women) 32%,var(--border-soft));background:transparent;color:var(--text-muted)}.player-seat-add{padding:4px 8px 4px 4px;min-height:52px;cursor:text;box-shadow:none;color:var(--text);flex-wrap:nowrap}.player-seat-add.player-seat--open{background:var(--accent-open-tint);border:2px solid var(--accent-open)}.player-seat-add.player-seat--women{background:var(--accent-women-tint);border:2px solid var(--accent-women)}.player-seat-add.player-seat--open:focus-within,.player-seat-add.player-seat--women:focus-within{box-shadow:none}.player-seat-add-plus{position:relative;flex-shrink:0;width:44px;height:44px;margin:0;padding:0;border:none;border-radius:50%;color:var(--text-on-accent);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.player-seat-add-plus:focus-visible{outline:2px solid var(--text);outline-offset:2px}.player-seat-add-plus:before,.player-seat-add-plus:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:currentColor;border-radius:1px}.player-seat-add-plus:before{width:14px;height:2px}.player-seat-add-plus:after{width:2px;height:14px}.player-seat-add.player-seat--open .player-seat-add-plus{background:var(--accent-open)}.player-seat-add.player-seat--women .player-seat-add-plus{background:var(--accent-women)}.player-seat-add input.player-seat-add-name{flex:1;min-width:0;width:auto;text-align:left;border:none;background:transparent;color:var(--text);font:inherit;font-weight:600;outline:none;min-height:40px;height:100%}.player-seat-add input::placeholder{color:var(--text-secondary);opacity:1}.player-seat-add input.player-seat-field--jersey::placeholder{color:var(--text-muted);opacity:1}.player-seat-add input:focus{outline:none;box-shadow:none}.player-seat-row{display:flex;align-items:stretch;gap:6px;width:100%;min-width:0}.sub-spacer{flex:0 0 44px;width:44px}.btn-sub{flex:0 0 44px;width:44px;padding:0;border-radius:var(--player-seat-radius);background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-soft);font-size:12px;font-weight:700}[data-theme=light] .roster-sheet--line .player-seat--open:not(.player-seat-add):not(.player-seat--empty){background:color-mix(in srgb,var(--accent-open) 78%,#fff 22%)}[data-theme=light] .roster-sheet--line .player-seat--women:not(.player-seat-add):not(.player-seat--empty){background:color-mix(in srgb,var(--accent-women) 78%,#fff 22%)}[data-theme=light] .player-seat--next.player-seat--open{background:color-mix(in srgb,var(--accent-open) 42%,#fff 58%);color:var(--accent-open-strong)}[data-theme=light] .player-seat--next.player-seat--women{background:color-mix(in srgb,var(--accent-women) 42%,#fff 58%);color:var(--accent-women)}[data-theme=light] .player-seat--empty.player-seat--open,[data-theme=light] .player-seat--empty.player-seat--next.player-seat--open,[data-theme=light] .player-seat--empty.player-seat--women,[data-theme=light] .player-seat--empty.player-seat--next.player-seat--women{background:transparent;color:var(--text-muted)}.roster-import{display:flex;flex-direction:column;gap:8px}.roster-import-actions{display:flex;flex-wrap:wrap;gap:8px}.roster-import-panel{background:var(--bg-subtle);border:1px solid var(--border-softer);border-radius:var(--import-panel-radius);padding:var(--import-panel-pad);display:flex;flex-direction:column;gap:8px}.roster-import-hint{margin:0;font-size:13px;color:var(--text-secondary)}.roster-import-textarea{width:100%;min-height:120px;box-sizing:border-box;padding:10px 12px;border-radius:8px;border:1px solid var(--border-soft);background:var(--bg-input);color:var(--text);font-size:14px;font-family:inherit;resize:vertical}.roster-import-status{margin:0;font-size:13px;color:var(--text-secondary)}.spectator-card{background:var(--bg-elevated);border:var(--spectator-border) solid var(--border-soft);border-radius:var(--spectator-radius);padding:var(--spectator-pad-top) var(--spectator-pad-x) var(--spectator-pad-bottom);width:100%;max-width:640px;margin:16px auto}.spectator-kicker{margin:0 0 20px;text-align:center;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.spectator-kicker--live{color:var(--success)}.spectator-kicker--reconnecting{color:var(--danger)}.spectator-kicker--preview{color:var(--accent-open)}.spectator-score-bar{margin-bottom:0}.spectator-card .score-tile{cursor:default}.spectator-card .score-num{font-size:clamp(48px,12vw,80px);padding:2px 0 0}.spectator-line-info{margin:22px 0 0}.spectator-gender{display:flex;flex-direction:column;gap:16px;margin-top:24px}.spectator-names{display:flex;flex-direction:column;gap:14px;margin-top:22px}.spectator-name-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.spectator-name{min-width:0;min-height:44px;padding:8px 12px;border-radius:var(--player-seat-radius);color:var(--text-on-accent);font-weight:700;font-size:16px;line-height:1.1;letter-spacing:-.02em;display:flex;align-items:center;justify-content:flex-start}.spectator-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spectator-name--open{background:var(--accent-open)}.spectator-name--women{background:var(--accent-women)}.spectator-line--next .spectator-name{min-height:36px;padding:6px 8px;font-size:14px}.spectator-line--next .spectator-name--open{background:color-mix(in srgb,var(--accent-open) 52%,#000 48%)}.spectator-line--next .spectator-name--women{background:color-mix(in srgb,var(--accent-women) 52%,#000 48%)}[data-theme=light] .spectator-line--next .spectator-name--open{background:color-mix(in srgb,var(--accent-open) 42%,#fff 58%);color:var(--accent-open-strong)}[data-theme=light] .spectator-line--next .spectator-name--women{background:color-mix(in srgb,var(--accent-women) 42%,#fff 58%);color:var(--accent-women)}.spectator-split-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.spectator-split-chips{display:flex;gap:8px;align-items:stretch}.spectator-chip{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border-radius:var(--score-bar-radius);font-weight:700;text-align:center}.spectator-chip strong{font-size:clamp(24px,4.5vw,32px);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1;font-weight:800}.spectator-chip-label{font-size:15px;font-weight:700;line-height:1}.spectator-chip--open{color:var(--accent-open);background:var(--accent-open-tint)}.spectator-chip--women{color:var(--accent-women);background:var(--accent-women-tint)}.spectator-hint{margin:24px 0 0;text-align:center;font-size:13px;line-height:1.45;color:var(--text-muted)}.spectator-promo{margin:16px 0 0;text-align:center;font-size:14px;line-height:1.45;color:var(--text-secondary)}.spectator-promo a{color:var(--accent-open);font-weight:700;text-decoration:none}.spectator-promo a:hover,.settings-about-links a:hover{text-decoration:underline}.scoreboard{display:flex;flex-direction:column;gap:0;flex:1 1 0;min-width:0;min-height:0;width:100%;overflow:visible;container-type:inline-size;container-name:scoreboard}.score-top-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--score-bar-pad);background:var(--bg-panel);border-radius:var(--score-bar-radius);margin-bottom:16px;border:var(--score-bar-border) solid var(--border-soft);box-shadow:var(--shadow-card)}.score-teams{display:flex;flex-direction:row;justify-content:space-around;align-items:center;width:100%;gap:17px}@keyframes scoreFlashOverlay{0%{opacity:0}40%{opacity:1}to{opacity:0}}.score-tile{text-align:center;flex:1;min-width:0;border-radius:var(--score-tile-radius);color:inherit;padding:12px 16px;cursor:pointer;min-height:72px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;touch-action:manipulation}.sub-candidate-list{display:flex;flex-direction:column;gap:8px;max-height:min(50vh,280px);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.sub-candidate-list::-webkit-scrollbar{width:10px}.sub-candidate-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.score-tile--flash:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background-color:#2ecc7166;border:2px solid rgba(46,204,113,.9);box-shadow:0 0 20px #2ecc71b3;animation:scoreFlashOverlay .3s ease-out forwards}.score-team-name{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text-secondary);letter-spacing:.02em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-num{margin:0;font-size:clamp(36px,9vw,52px);width:100%;padding:8px 0}.score-diff{font-size:22px;font-weight:700;color:var(--text);padding:4px 10px;background:var(--bg-input-soft);border-radius:8px;min-width:40px;text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0}.score-diff--center{display:none}.line-info{display:flex;justify-content:space-between;align-items:center;padding:10px var(--line-info-pad-x);background:var(--bg-panel);border-radius:var(--score-bar-radius);margin-bottom:16px;border:1px solid var(--border-soft);box-shadow:var(--shadow-card)}.line-info-row{display:flex;flex-direction:row;align-items:center;width:100%;position:relative;min-height:28px;gap:8px;flex-wrap:wrap}.line-info-point{flex:0 0 auto;min-width:0;text-align:left;font-size:15px;font-weight:700;display:flex;align-items:center;gap:10px}.line-info-cap{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-subtle);border:1px solid var(--border-softer);border-radius:999px;padding:3px 10px}.line-info-cap.is-reached{color:var(--text-on-accent);background:var(--success);border-color:var(--success)}.line-info-pattern{margin-left:auto;display:flex;justify-content:flex-end;min-width:0}.line-info .line-setup-pills{min-height:28px;padding:2px}.line-info .line-setup-pill{height:24px;min-width:28px;padding:0 8px;font-size:13px;font-weight:700}.pattern-item.is-active{background:var(--pattern-pill-active-bg);color:var(--pattern-pill-text)}.line-display{display:flex;flex-direction:row;align-items:flex-start;flex-wrap:nowrap;gap:16px;flex:1 1 0;min-width:0;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;width:calc(100% + var(--score-gutter, 16px) + var(--score-gutter, 16px));margin-left:calc(var(--score-gutter, 16px) * -1);margin-right:calc(var(--score-gutter, 16px) * -1);padding-left:var(--score-gutter, 16px);padding-right:var(--score-gutter, 16px);padding-bottom:max(var(--score-gutter, 16px),env(safe-area-inset-bottom,0px))}.line-section{flex:1 1 0%;align-self:flex-start;min-width:0;background:var(--bg-panel);border-radius:var(--line-section-radius);padding:var(--line-section-pad);display:flex;flex-direction:column;border:var(--line-section-border) solid var(--border-soft);box-shadow:var(--shadow-card)}.line-title{font-size:17px;font-weight:700;margin:0 0 10px;text-align:center;color:var(--text)}.line-section--next .player-seat{flex:0 0 auto;width:100%}.line-section .player-list{flex:0 0 auto}@container scoreboard (max-width: 695px){.line-display{flex-direction:column;align-items:stretch;gap:8px}.line-section{flex:0 0 auto;align-self:stretch;width:100%}}@media (max-height: 500px){.scoreboard .score-top-bar{--score-bar-pad: 0px;margin-bottom:8px;padding:0;background:transparent;border:none;box-shadow:none}.scoreboard .score-tile{min-height:48px;padding:4px 10px;background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--score-bar-radius);box-shadow:var(--shadow-card)}.scoreboard .score-team-name{font-size:12px;margin-bottom:0}.scoreboard .score-num{font-size:32px;padding:0}.scoreboard .line-info{margin-bottom:8px;padding-top:6px;padding-bottom:6px}}.player-list{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.narrow-only{display:none}.wide-only{display:initial}.settings-overlay{padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.settings-modal{max-width:min(600px,100%);max-height:min(90dvh,100%);width:100%}.settings-teams-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-header,.settings-footer{min-width:0}.settings-footer{flex-wrap:wrap}.settings-card{border-radius:var(--settings-card-radius)}.home-title{font-size:clamp(26px,7vw,32px)}.label-short{display:none}.label-full{display:inline}.settings-match-admin>button{white-space:normal}@media (max-width: 600px){.app-shell-header .app-shell-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"left right" "title title";gap:6px 8px;min-height:unset;padding-top:6px;padding-bottom:8px}.app-shell-header--untitled .app-shell-inner{grid-template-areas:"left right"}.app-shell-side{flex-wrap:nowrap;gap:6px}.app-shell-header .btn{padding-left:8px;padding-right:8px}.app-shell-header .btn-home{width:40px;min-width:40px;padding:0}.app-shell-title{font-size:16px}.app-shell-body{padding:12px;padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.app-shell-body:has(.scoreboard){padding-right:0;padding-bottom:0;--score-gutter: 12px}.scoreboard>.score-top-bar,.scoreboard>.line-info,.scoreboard>.clock-reminder,.scoreboard>.goal-tag{margin-right:max(12px,env(safe-area-inset-right,0px))}.scoreboard>.goal-tag{margin-bottom:max(12px,env(safe-area-inset-bottom,0px))}.app-shell-body--center{align-items:center;padding:24px 16px;padding-top:max(24px,env(safe-area-inset-top,0px));padding-bottom:max(24px,env(safe-area-inset-bottom,0px))}.shell-card{--shell-card-pad-x: 18px;--shell-card-pad-y: 24px}.btn{min-height:40px;padding:8px 10px;font-size:13px}.kickoff-footer{padding:16px;font-size:16px;min-height:48px}.line-setup{--line-setup-pad-x: 12px;--line-setup-pad-y: 12px}.line-setup-grid{grid-template-columns:1fr;gap:16px}.line-setup-col{gap:14px}.line-setup-pills,.line-setup-split{flex-wrap:wrap}.line-setup-ratio{font-size:16px}.line-setup-clocks,.settings-clocks{grid-template-columns:1fr}.line-setup-clocks>:first-child,.settings-clocks>:first-child{grid-column:auto}.roster-board{flex-direction:column;gap:16px;--roster-board-pad-x: 10px;padding:12px var(--roster-board-pad-x) 16px}.roster-column-title{font-size:16px}.roster-index{flex-basis:22px;min-width:22px;height:28px;font-size:13px}.player-seat{padding:6px 8px;gap:6px;min-height:40px}.player-seat.player-seat-add{min-height:52px;padding:4px 8px 4px 4px}.player-seat-field--jersey{width:36px;min-width:36px}.player-seat-field--pos{width:5.75rem;min-width:5.75rem}.score-top-bar{--score-bar-pad: 6px;margin-bottom:8px}.score-teams{gap:12px}.score-tile{min-height:64px;padding:8px}.score-team-name{font-size:13px;margin-bottom:2px}.score-num{font-size:clamp(32px,12vw,44px);padding:4px 0}.score-diff--between{display:none}.score-diff--center{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1;font-size:18px;min-width:32px;padding:2px 8px}.line-info{--line-info-pad-x: 10px;padding:8px var(--line-info-pad-x);margin-bottom:8px}.line-info-point{font-size:14px}.line-info-pattern{margin-left:auto}.line-display{flex-direction:column;align-items:stretch;gap:8px;width:calc(100% + var(--score-gutter, 12px));margin-left:calc(var(--score-gutter, 12px) * -1);margin-right:0;padding-left:var(--score-gutter, 12px);padding-right:max(12px,env(safe-area-inset-right,0px));padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.scoreboard:has(.goal-tag) .line-display{padding-bottom:8px}.line-section{flex:0 0 auto;align-self:stretch;width:100%}.player-list{gap:4px}.settings-modal{max-height:min(100dvh,100%);border-radius:16px}.line-section{--line-section-pad: 6px}.line-title{font-size:13px;margin-bottom:4px}.narrow-only{display:initial}.wide-only{display:none}.label-short{display:inline}.label-full{display:none}.settings-teams-row{grid-template-columns:1fr}.settings-header{flex-wrap:wrap;padding:16px!important}.settings-footer{padding:12px 16px!important;justify-content:stretch}.settings-footer button{flex:1 1 auto;min-width:0}}@media (min-width: 601px) and (max-width: 900px){.app-shell-inner--wide{max-width:100%}.score-num{font-size:clamp(40px,7vw,52px)}.line-setup-grid{grid-template-columns:1fr 1fr;gap:16px 28px}.line-setup-clocks{grid-template-columns:1fr 1fr}.line-setup-clocks>:first-child{grid-column:1 / -1}.roster-board{gap:12px}}@media (max-width: 900px){input,select,textarea{font-size:16px!important}}.confirm-title+.confirm-actions--pull{margin-top:8px}.confirm-actions--pull{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.confirm-modal:has(.confirm-actions--pull) .confirm-title{font-size:22px;margin-bottom:16px}.confirm-actions--pull .btn{width:100%;min-height:56px;padding:16px 14px;font-size:18px}.confirm-actions--pull .confirm-actions-back{min-height:44px;padding:10px 14px;font-size:15px}.confirm-actions--pull .confirm-actions-back{grid-column:1 / -1}.line-info-pull{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text);background:var(--bg-subtle);border:1px solid var(--border-softer);border-radius:999px;padding:4px 10px}.line-info-pull.is-us{color:var(--text-on-accent);background:var(--accent-open);border-color:var(--accent-open)}.line-info-half{-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-subtle);border:1px solid var(--border-softer);border-radius:999px;padding:3px 10px;cursor:pointer}.line-info-half.is-on{color:var(--text-on-accent);background:var(--accent-open);border-color:var(--accent-open)}.line-info-half:disabled{cursor:default;opacity:1}.goal-tag{box-sizing:border-box;flex-shrink:0;display:flex;align-items:center;gap:8px;margin-top:8px;padding:6px 8px;background:var(--bg-panel);border:1px solid var(--accent-open);border-radius:var(--score-bar-radius);min-width:0}.goal-tag-ask{flex:0 0 auto;margin:0;font-size:14px;font-weight:800;color:var(--text);white-space:nowrap}.goal-tag-done{box-sizing:border-box;flex:0 0 auto;padding:0 10px;min-height:44px;font-size:13px}.goal-tag-names{flex:1;min-width:0;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.goal-tag-names::-webkit-scrollbar{display:none}.goal-tag-names.is-preview{overflow:visible}.goal-tag-name{-moz-appearance:none;appearance:none;-webkit-appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:44px;padding:0 12px;font-family:inherit;font-size:15px;font-weight:700;color:var(--text);background:var(--bg-input-soft);border:1.5px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation}.sub-out-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;margin-top:14px;min-height:48px;padding:12px 14px;border-radius:var(--sub-modal-inner-radius);border:1px solid var(--danger-border);background:var(--danger-tint);color:var(--danger);font-family:inherit;font-size:16px;font-weight:800;cursor:pointer}.clock-reminder-half{flex-shrink:0;min-height:40px}.goal-tag-name.is-tagged{background:var(--accent-open-tint);border-color:var(--accent-open)}.goal-tag-role{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-open)}@media (max-width: 600px){.goal-tag{flex-wrap:wrap;row-gap:6px}.goal-tag-ask{flex:1 1 auto;min-width:0}.goal-tag-names{flex:1 1 100%;order:2}.goal-tag-done{margin-left:auto}}.archive-game{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.archive-game-score{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-secondary)}.summary-score{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.summary-team{font-size:14px;font-weight:600;color:var(--text-secondary)}.summary-num{font-size:clamp(40px,10vw,56px);font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.summary-stat{padding:12px 14px;background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.summary-stat-value{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.summary-stat--name .summary-stat-value{font-size:22px}.summary-stat-label{margin-top:4px;font-size:13px;font-weight:600;color:var(--text-secondary)}.summary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.summary-actions .btn{width:100%;min-height:44px;padding:10px 12px}.install-share{display:inline-block;width:1em;height:1em;vertical-align:-.15em}.summary-note{margin:0 0 20px;color:var(--text-secondary);font-size:14px}.summary-points-title{margin:8px 0 10px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.summary-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.summary-point{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.summary-point-row{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:flex;align-items:baseline;gap:10px;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;font-weight:700;text-align:left;color:var(--text);background:transparent;border:0;cursor:pointer}.summary-point-who{color:var(--text-secondary);font-weight:600}.summary-point-detail{margin-left:auto;font-weight:600;color:var(--text)}.summary-point-detail:empty{display:none}.summary-point-edit{padding:0 14px 14px}.summary-edit-hint{margin:8px 0;font-size:13px;color:var(--text-secondary)}.summary-pull{padding:4px 10px;font-size:13px}
