:root{--bg:#1a1d24;--surface:#2c323d;--surface-2:#353b47;--border:#374151;--text-1:#f3f4f6;--text-2:#9ca3af;--text-3:#6b7280;--red:#ef4444;--yellow:#f59e0b;--blue:#3b82f6;--green:#10b981;--video-bg:#0d0f14;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-accent:var(--font-body);--chart-axis:#ffffff47;--chart-axis-text:#ffffff8c;--chart-gridline:#ffffff1a;--chart-divider:#ffffff52;--chart-mark-stroke:#ffffff59;--chart-home:#e53935;--chart-away:#eceff1;--chart-ink-on-home:#fff;--chart-ink-on-away:#1c1f24;--chart-badge-bg:#fff;--chart-badge-ink:#1c1f24;--setup-fade:#040726f5;--modal-overlay:#020410c7;--modal-card:#0a0e26f5;--score-bg:#0609245c;--popover-bg:#090c2efa;--popover-trigger-bg:#090c2e8c;--popover-trigger-bg-hover:#090c2ed9;--lineup-marker-stroke:#ffffffeb;--lineup-pitch-bg:#0a2410d9;--lineup-label-text:#ffffffc7;--lineup-line:#ffffff47}html.theme-cream{--bg:#faf9f5;--surface:#f0eee6;--surface-2:#e8e5d8;--border:#d6d3c7;--text-1:#1a1a19;--text-2:#5a5953;--text-3:#8e8c84;--red:#b85b3a;--yellow:#9e8444;--blue:#5a7a95;--green:#6b8554;--video-bg:#1f1f1e;--font-accent:"EB Garamond", "Iowan Old Style", "Apple Garamond", Georgia, "Times New Roman", serif;--chart-axis:#00000047;--chart-axis-text:#0000008c;--chart-gridline:#0000001a;--chart-divider:#00000052;--chart-mark-stroke:#0000004d;--chart-home:#b85b3a;--chart-away:#5a7a95;--chart-ink-on-home:#faf9f5;--chart-ink-on-away:#faf9f5;--chart-badge-bg:#1a1a19;--chart-badge-ink:#faf9f5;--setup-fade:#faf9f5f5;--modal-overlay:#3c383073;--modal-card:#faf9f5fa;--score-bg:#0000000d;--popover-bg:#faf9f5fa;--popover-trigger-bg:#e8e5d8f2;--popover-trigger-bg-hover:#d9d5c7f2;--lineup-marker-stroke:#0000008c;--lineup-pitch-bg:#8ca57873;--lineup-label-text:#000000a6;--lineup-line:#0000004d}html.theme-cream .setup-copy .eyebrow{font-family:var(--font-accent);letter-spacing:-.005em;font-style:italic;font-weight:500}html.theme-cream .broadcast-panel,html.theme-cream .mate-panel,html.theme-cream .setup-panel,html.theme-cream .match-card,html.theme-cream .audience-tile,html.theme-cream .tag{border-radius:6px}html.theme-cream .topbar{padding-top:4px;padding-bottom:4px}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{min-height:100vh;color:var(--text-1);letter-spacing:0;font-variant-numeric:tabular-nums;background:var(--bg);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button{color:inherit}.app-shell{flex-direction:column;width:100%;height:100vh;min-height:0;padding:10px;display:flex;overflow:hidden}.topbar{flex:none;grid-template-columns:auto minmax(280px,1fr) auto;grid-template-areas:"brand select status";align-items:center;gap:12px;min-height:62px;margin-bottom:8px;display:grid}.brand{color:var(--text-1);grid-area:brand;align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:inline-flex}.brand-mark{background:#fff;border-radius:4px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid;overflow:hidden}.brand-mark img{object-fit:contain;width:100%;height:100%;padding:3px;display:block}.brand strong,.brand small{display:block}.brand strong{font-size:.94rem}.brand small{color:var(--text-2);margin-top:3px;font-size:.68rem}.match-select-card{grid-area:select;justify-self:start;align-items:center;width:100%;max-width:360px;min-height:52px;display:flex;position:relative}.match-logo,.team-crest{border:1px solid var(--border);color:var(--text-2);background:var(--surface-2);border-radius:2px;place-items:center;font-weight:900;display:grid}.match-logo{width:32px;height:32px;font-size:.68rem}.team-crest{width:34px;height:34px;font-size:.72rem}.match-main{min-width:0}.match-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:.96rem;display:block;overflow:hidden}.match-main small{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.75rem;display:block;overflow:hidden}.teams{gap:6px;display:flex}.status-dock{grid-area:status;justify-content:flex-end;gap:6px;min-height:58px;padding:0;display:flex}.status-dock>.status-chip{flex:none;min-width:150px}.status-dock>#themeToggle{min-width:178px}.status-chip{border:1px solid var(--border);min-width:0;min-height:52px;color:var(--text-1);text-align:left;background:#ffffff0d;border-radius:4px;grid-template-rows:auto auto;grid-template-columns:30px 1fr;align-items:center;gap:1px 8px;padding:6px;display:grid}.edit-chip,.state-chip{opacity:.86;background:#ffffff09}.toggle-chip{position:relative}.toggle-chip:after{content:"";background:var(--green);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px;box-shadow:0 0 14px #54dbffd1}.toggle-chip.off{opacity:.58}.toggle-chip.off:after{background:var(--red);box-shadow:0 0 14px #ff52cfbf}.match-card,.icon-button,.send-button,.ghost-button,.status-chip,button.status-chip{transition:transform .12s,box-shadow .12s,border-color .12s}.match-card:hover,.icon-button:hover,.send-button:hover,.ghost-button:hover,.status-chip:hover,button.status-chip:hover{border-color:var(--text-3);transform:translateY(-1px);box-shadow:0 2px 8px #0006}.match-card:focus-visible,.icon-button:focus-visible,.send-button:focus-visible,.ghost-button:focus-visible,.status-chip:focus-visible,button.status-chip:focus-visible{border-color:var(--text-3);outline:1px solid var(--blue);outline-offset:2px;transform:translateY(-1px);box-shadow:0 2px 8px #0006}.status-chip .ico{grid-row:1/3}.status-chip b,.status-chip small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-chip b{font-size:.84rem}.status-chip small{color:var(--text-2);font-size:.72rem}.stadium-layout{flex:1;grid-template-columns:minmax(0,1fr) minmax(350px,24vw);gap:12px;min-height:0;display:grid;overflow:hidden}.broadcast-panel,.mate-panel,.setup-panel{border:1px solid var(--border);background:var(--surface);box-shadow:none;border-radius:2px}.broadcast-panel,.mate-panel{flex-direction:column;min-width:0;height:100%;min-height:0;padding:10px;display:flex;overflow:hidden}.mate-header,.data-head,.section-title,.option-card,.sync-meter,.setup-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.mate-header{justify-content:flex-end}h1,h2,h3,p{margin-top:0}h1,h2,h3{margin-bottom:0;line-height:1.1}h1{font-size:clamp(1.35rem,2.1vw,2.55rem)}h2{font-size:1.18rem}h3{font-size:1rem}.mode-switch{border:1px solid var(--border);background:var(--surface-2);border-radius:4px;gap:6px;padding:4px;display:flex}.mode-button,.ghost-button,.send-button,.url-composer button,.sync-actions button{border:1px solid var(--border);background:var(--surface-2);border-radius:4px;min-height:38px;box-shadow:inset 0 1px #ffffff0e}.mode-button{min-width:58px;color:var(--text-2);background:0 0;padding:0 10px}.mode-button.active{color:var(--text-1);border-color:var(--border);background:var(--surface-2)}.url-composer{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;max-height:80px;margin:8px 0;transition:max-height .24s,opacity .24s,margin .24s;display:grid;overflow:hidden}.url-composer.is-collapsed{opacity:.2;cursor:pointer;max-height:4px;margin:4px 0 0}.url-composer.is-collapsed:hover,.url-composer.is-collapsed:focus-within{opacity:1;cursor:default;max-height:80px}.reload-btn{justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;padding:0;font-size:18px;line-height:1;display:inline-flex}.reload-btn.is-spinning{animation:.6s cubic-bezier(.4,0,.2,1) reload-spin}@keyframes reload-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.url-composer input,.chat-composer input{border:1px solid var(--border);width:100%;min-height:42px;color:var(--text-1);background:var(--bg);border-radius:4px;outline:none;padding:0 13px}.url-composer button,.send-button,.ghost-button{padding:0 16px}.send-button{white-space:nowrap;min-width:76px;padding:0 22px}.ghost-button.compact{min-height:34px;color:var(--text-1);padding:0 12px;font-size:.78rem}.screen-frame{border:1px solid var(--border);background:var(--video-bg);aspect-ratio:16/9;border-radius:4px;flex:1;place-items:center;min-height:0;max-height:none;display:grid;position:relative;overflow:hidden}:-webkit-any(.screen-frame:fullscreen,.screen-frame:-webkit-full-screen){aspect-ratio:auto;background:#000;border-radius:0;width:100vw;height:100vh}:is(.screen-frame:fullscreen,.screen-frame:fullscreen){aspect-ratio:auto;background:#000;border-radius:0;width:100vw;height:100vh}.screen-frame iframe,.screen-frame video{background:#000;border:0;width:100%;height:100%;position:absolute;inset:0}.screen-frame video{object-fit:contain}.empty-broadcast{z-index:1;text-align:center;width:min(680px,86%)}.empty-broadcast h2{margin:12px auto;font-size:clamp(1.8rem,3.5vw,4.2rem);line-height:1.02}.empty-broadcast p:last-child{max-width:590px;color:var(--text-2);margin:0 auto;line-height:1.7}.pitch-preview{aspect-ratio:16/9;border:1px solid var(--border);border-radius:4px;width:min(620px,82%);margin:0 auto 22px;position:relative;overflow:hidden}.pitch-preview img{object-fit:cover;filter:saturate(.72)contrast(1.16)brightness(.72);width:100%;height:100%}.pitch-preview span{border:1px solid var(--border);border-radius:50%;position:absolute;inset:15%}.mate-panel{gap:8px}.mate-body{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:hidden}.voice-status{border:1px solid var(--border);color:#d7f7ff;text-align:center;background:var(--surface);border-radius:4px;min-width:84px;padding:7px 9px;font-size:.78rem}.live-board{border:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) var(--surface);background:#06092442;border-radius:4px;flex:none;max-height:clamp(220px,42vh,420px);padding:9px;overflow:hidden auto}.live-board.collapsed .visual-grid,.live-board.collapsed .metric-grid{display:none}.live-board.collapsed{flex:none;min-height:auto;max-height:none;overflow:visible}.live-board.collapsed .data-head{margin-bottom:0}.board-title{color:var(--text-1);letter-spacing:.4px;margin:0;font-size:.82rem;font-weight:600}.live-board::-webkit-scrollbar{width:8px;height:0}.live-board::-webkit-scrollbar-track{background:#090c2e99;border-radius:2px}.live-board::-webkit-scrollbar-thumb{background:var(--surface-2);border-radius:2px}.live-board::-webkit-scrollbar-thumb:hover{background:var(--surface-2)}.data-desk-button{align-items:center;gap:8px;display:inline-flex}.board-actions{gap:8px;display:flex}.board-toggle{min-width:58px}.data-desk-button .ico{border-radius:4px;width:22px;height:22px}.visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:96px;margin:8px 0;display:grid}.visual-grid[data-count="0"]{display:none}.visual-grid[data-count="1"] .visual-card{grid-column:1/-1}.visual-card{border:1px solid var(--border);background:var(--surface);border-radius:2px;flex-direction:column;min-width:0;min-height:0;padding:7px;display:flex}.visual-title{align-items:center;gap:8px;min-width:0;margin-bottom:6px;display:flex}.visual-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.heatmap{border:1px solid var(--border);background:linear-gradient(90deg,#0000 49%,#37415199 50%,#0000 51%),radial-gradient(circle,#0000 0 18%,#37415180 19% 20%,#0000 21%),linear-gradient(135deg,#3b82f614,#ef44440d);border-radius:4px;flex:1;min-height:0;position:relative;overflow:hidden}.heatmap:before,.heatmap:after{content:"";filter:blur(9px);border-radius:50%;position:absolute}.heat-left:before{background:#54dbffb8;width:42%;height:36%;top:24%;left:14%}.heat-left:after{background:#ef444466;width:28%;height:30%;bottom:18%;right:16%}.heat-right:before{background:var(--surface-2);width:46%;height:38%;top:18%;right:12%}.heat-right:after{background:#ef44444d;width:30%;height:34%;bottom:16%;left:20%}.flow:before{background:linear-gradient(90deg,#3b82f64d,#fffc,#ef4444b3);border-radius:2px;width:64%;height:8%;top:56%;left:18%;transform:rotate(-18deg)}.flow:after{background:var(--text-1);opacity:.56;width:18%;height:22%;top:34%;right:18%}.network:before{border:2px solid var(--border);filter:none;background:0 0;border-radius:2px;width:62%;height:48%;top:24%;left:18%}.network:after{background:var(--text-1);width:11px;height:11px;box-shadow:40px 18px 0 var(--green), 78px -8px 0 var(--red), 96px 32px 0 var(--blue);filter:none;top:34%;left:28%}.pitch-map{border:1px solid var(--border);background:linear-gradient(90deg,#0000 49%,#37415199 50%,#0000 51%),radial-gradient(circle,#0000 0 19%,#37415180 20% 21%,#0000 22%),linear-gradient(135deg,#3b82f614,#ef44440d);border-radius:4px;height:142px;margin:12px 0;position:relative;overflow:hidden}.player-dot{border:2px solid #040726;border-radius:50%;width:14px;height:14px;position:absolute;box-shadow:0 0 0 2px #ffffff2e}.player-dot.gold{background:var(--text-1)}.player-dot.green{background:var(--green)}.player-dot.red{background:var(--red)}.run-line{background:linear-gradient(90deg, transparent, var(--text-1));transform-origin:0;width:27%;height:2px;position:absolute;top:39%;left:45%;transform:rotate(-15deg)}.visual-card.lineup{grid-column:1/-1;padding:8px}.visual-card.lineup .visual-title{margin-bottom:6px}.lineup-svg{aspect-ratio:38/35;border-radius:4px;width:100%;display:block;overflow:hidden}.lineup-svg .player-marker{cursor:pointer;transform-box:fill-box;transform-origin:50%;transition:transform .15s}.lineup-svg .player-marker:hover{transform:scale(1.18)}.lineup-svg .player-marker:hover circle{filter:drop-shadow(0 0 6px #ffffff80)}.lineup-stack{flex-direction:column;gap:4px;display:flex}.lineup-subs{flex-direction:column;gap:8px;padding:10px 14px 14px;display:flex}.sub-row{align-items:center;gap:10px;min-width:0;display:flex}.sub-row-label{min-width:78px;color:var(--text-2);letter-spacing:.04em;border-left:3px solid var(--sub-color,var(--blue));flex-shrink:0;padding-left:8px;font-size:.7rem;font-weight:600}.sub-tiles{scrollbar-width:thin;flex:1;gap:6px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.sub-row-empty .sub-tiles{border:1px dashed var(--border);background:var(--surface-2);border-radius:4px;align-items:center;min-height:56px}.sub-empty-hint{text-align:center;color:var(--text-3);letter-spacing:.04em;flex:1;font-size:.72rem}.sub-tile{border:1px solid var(--sub-color,var(--border));background:var(--popover-trigger-bg);width:60px;color:var(--text-1);cursor:pointer;border-radius:4px;flex-direction:column;flex:none;align-items:center;gap:3px;padding:6px 4px;transition:background .15s,transform .12s;display:flex}.sub-tile:hover{background:var(--popover-trigger-bg-hover);transform:translateY(-1px)}.sub-avatar{background:var(--sub-color,var(--surface-2));border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex;position:relative;overflow:hidden}.sub-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.sub-jersey{color:#fff;text-align:center;font-variant-numeric:tabular-nums;background:#000000c7;border-top-left-radius:6px;min-width:16px;height:13px;padding:0 3px;font-size:.58rem;font-weight:800;line-height:13px;position:absolute;bottom:0;right:0}.sub-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;max-width:56px;font-size:.66rem;overflow:hidden}.player-popover{z-index:10001;border:1px solid var(--border);background:var(--popover-bg);width:300px;max-height:min(70vh,520px);color:var(--text-1);border-radius:4px;padding:12px 14px;font-size:.78rem;animation:.14s ease-out popover-in;position:fixed;overflow-y:auto;box-shadow:0 18px 40px #000000a6,inset 0 0 0 1px #ffffff0a}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.player-popover{width:min(90vw,300px)}}.player-popover.loading{text-align:center;width:140px}.player-popover .popover-loading,.player-popover .popover-error{color:var(--text-2);text-align:center;padding:12px 0}.player-popover .popover-error{color:#ff7878d9}.popover-close{background:var(--surface-2);width:32px;height:32px;color:var(--text-1);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:20px;font-weight:500;line-height:1;transition:background .15s;display:inline-flex;position:absolute;top:4px;right:4px}.popover-close:hover{background:var(--surface)}.popover-head{align-items:center;gap:10px;margin-bottom:10px;padding-right:22px;display:flex}.popover-photo{object-fit:cover;background:var(--surface-2);border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:56px;height:56px}.popover-photo.placeholder{color:var(--text-2);justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;display:flex}.popover-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.popover-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;overflow:hidden}.popover-meta small{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.popover-stats{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:8px 12px;margin:0;padding:8px 0 2px;display:grid}.popover-stats>div{flex-direction:column;gap:2px;display:flex}.popover-stats dt{color:var(--text-3);font-size:.66rem}.popover-stats dd{color:var(--text-1);margin:0;font-size:.92rem;font-weight:700}.metric-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(72px,auto);gap:8px;min-height:118px;display:grid}.metric-grid .metric-card,.metric-grid .metric-card.metric-pair{grid-column:span 6}.metric-pair{grid-template-rows:auto auto auto;gap:4px;display:grid;padding:8px 10px!important}.metric-pair-head{grid-template-columns:auto 1fr auto;align-items:center;gap:6px;display:grid}.metric-pair .metric-pair-head .pair-brand{color:var(--text-2);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:4px;font-size:.66rem;font-weight:700;display:inline-flex}.metric-pair .metric-pair-head .pair-brand:last-child{flex-direction:row-reverse}.metric-pair .pair-code{color:var(--text-2);font-size:.62rem;display:inline-block}.pair-logo{color:#f3f6ff;background:linear-gradient(145deg, var(--blue), var(--red));border-radius:50%;place-items:center;width:18px;height:18px;font-size:.55rem;font-weight:900;display:inline-grid;overflow:hidden}.pair-logo.with-img{background:#ffffff0f}.pair-logo img{object-fit:contain;width:100%;height:100%}.metric-pair .metric-pair-title{text-align:center;text-overflow:ellipsis;white-space:nowrap;color:var(--text-1);letter-spacing:.04em;font-size:.74rem;font-weight:700;display:block;overflow:hidden}.metric-pair-row{grid-template-columns:1fr auto 1fr;align-items:baseline;gap:8px;display:grid}.metric-pair .metric-pair-row .metric-pair-value{text-align:center;color:var(--text-1);margin:0;font-size:clamp(1rem,1.4vw,1.5rem);font-weight:800;line-height:1;display:block}.metric-pair .metric-pair-row .metric-pair-value:first-child{text-align:right}.metric-pair .metric-pair-row .metric-pair-value:last-child{text-align:left}.metric-pair .metric-pair-vs{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:700;display:inline-block}.metric-pair .metric-pair-detail{text-align:center;color:var(--text-2);font-size:clamp(.56rem,.72vw,.68rem);line-height:1.05;display:block}.metric-card{border:1px solid var(--border);background:var(--surface);border-radius:2px;min-height:0;padding:8px 8px 8px 42px;position:relative;overflow:hidden}.metric-card.player{padding-left:48px}.metric-card.rating-elite{box-shadow:inset 2px 0 0 var(--green)}.metric-card.rating-elite strong{color:var(--green)}.metric-card.rating-good{box-shadow:inset 2px 0 0 color-mix(in srgb, var(--green) 55%, transparent)}.metric-card.rating-good strong{color:color-mix(in srgb, var(--green) 90%, var(--text-1))}.metric-card.rating-poor{opacity:.55}.metric-card.rating-poor strong{color:var(--text-3)}.metric-card.team{padding-left:48px}.metric-card.pinned{background:var(--surface);border-color:#54dbff6b}.metric-card span,.metric-card small{color:var(--text-2);font-size:.72rem;display:block}.metric-card span:not(.entity-badge),.metric-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-card small{font-size:clamp(.56rem,.78vw,.72rem);line-height:1.05}.entity-badge{border:1px solid var(--border);background:linear-gradient(145deg, var(--blue), var(--red));border-radius:4px;place-items:center;width:24px;height:24px;font-weight:900;position:absolute;top:8px;left:8px;color:#f3f6ff!important;font-size:.65rem!important;display:grid!important}.entity-badge.player{background:linear-gradient(145deg, var(--surface-2), var(--surface));border-radius:50%;color:var(--text-1)!important}.metric-card.player.team-home .entity-badge{box-shadow:0 0 0 2px var(--blue)}.metric-card.player.team-away .entity-badge{box-shadow:0 0 0 2px var(--red)}.metric-card strong{color:var(--text-1);margin:2px 0;font-size:clamp(.98rem,1.35vw,1.45rem);line-height:1;display:block}.chat-log{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;padding:12px 0;overflow-y:auto}.chat-log::-webkit-scrollbar{width:4px}.chat-log::-webkit-scrollbar-track{background:0 0}.chat-log::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.event-row{align-items:flex-start;gap:0;padding:0 0 2px;display:flex}.event-row.mate-row{justify-content:flex-start}.event-row.user-row{justify-content:flex-end}.event-row:not(.no-anim){animation:.14s ease-out message-in}@keyframes message-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.event-card{background:var(--surface);border:1px solid var(--border);border-radius:2px;flex-direction:column;flex:0 auto;gap:4px;max-width:80%;margin:4px 0;padding:10px 12px;display:flex}.event-card.mate,.event-card.streaming{background:var(--surface-2);border-left:2px solid var(--yellow);padding:12px 14px}.event-card.user{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;border-right:2px solid var(--blue);background:0 0;padding:6px 12px}.event-role{letter-spacing:.08em;font-size:.62rem;font-weight:700;line-height:1}.event-card.mate .event-role,.event-card.streaming .event-role{color:var(--yellow);text-align:left}.event-card.user .event-role{color:var(--blue);text-align:right}.event-body{color:var(--text-2);font-size:12px;line-height:1.5}.event-card.mate .event-body,.event-card.streaming .event-body{color:var(--text-1);font-size:14px}.typing-indicator{align-items:center;gap:3px;padding:2px 0;display:flex}.typing-dot{background:var(--text-3);border-radius:50%;width:4px;height:4px;animation:1.2s infinite blink}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.3}40%{opacity:1}}.event-card.streaming .event-body:after{content:"▍";color:var(--yellow);opacity:.7;margin-left:1px;font-weight:300;animation:1s steps(2,end) infinite caret-blink}@keyframes caret-blink{50%{opacity:0}}.chat-composer{border-top:1px solid var(--border);background:var(--surface);flex:none;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:56px;padding-top:8px;display:grid}.icon-button{background:#ffffff0e;border:1px solid #f7df9847;border-radius:4px;place-items:center;width:42px;height:42px;display:grid}.mic span{border:2px solid var(--text-1);border-radius:2px;width:14px;height:20px}.speaker span{border:2px solid var(--text-1);border-radius:3px 4px 4px 3px;width:20px;height:16px}.clear-chat span{border:2px solid #ffffff8c;border-top:0;border-radius:0 0 3px 3px;width:16px;height:18px;position:relative}.clear-chat span:before{content:"";background:#ffffff8c;border-radius:1px;height:2px;position:absolute;top:-4px;left:-3px;right:-3px}.clear-chat:hover{border-color:#da291c8c}.clear-chat:hover span{border-color:#da291c}.clear-chat:hover span:before{background:#da291c}.clear-confirm-bar{background:#da291c14;border:1px solid #da291c8c;border-radius:2px;justify-content:space-between;align-items:center;gap:12px;margin:6px 0 0;padding:8px 12px;animation:.16s ease-out clearConfirmSlide;display:flex}.clear-confirm-bar[hidden]{display:none}.clear-confirm-bar__text{color:#ffffffd9;letter-spacing:.2px;font-size:12.5px}.clear-confirm-bar__actions{flex:none;gap:8px;display:flex}.clear-confirm-bar__cancel,.clear-confirm-bar__confirm{font:inherit;cursor:pointer;letter-spacing:.5px;border-radius:2px;padding:5px 12px;font-size:12px}.clear-confirm-bar__cancel{color:#ffffffbf;background:0 0;border:1px solid #ffffff40}.clear-confirm-bar__cancel:hover{color:#fff;border-color:#ffffff80}.clear-confirm-bar__confirm{color:#fff;background:#da291c;border:1px solid #da291c;font-weight:600}.clear-confirm-bar__confirm:hover{background:#b6231a;border-color:#b6231a}@keyframes clearConfirmSlide{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.setup-dialog{width:min(1050px,100% - 28px);max-height:min(880px,100vh - 28px);color:var(--text-1);background:0 0;border:0;padding:0}.setup-dialog::backdrop,.data-dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000c2}.data-dialog{width:min(1120px,100% - 28px);max-height:min(820px,100vh - 28px);color:var(--text-1);background:0 0;border:0;padding:0}.setup-panel{gap:12px;max-height:min(880px,100vh - 28px);padding:18px;display:grid;overflow:auto}.data-panel{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff0a, transparent), var(--surface-2);max-height:min(820px,100vh - 28px);box-shadow:none;border-radius:4px;gap:14px;padding:18px;display:grid;overflow:auto}.data-modal-head{background:#00000038;border:1px solid #f7df982e;border-radius:4px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.data-modal-head h2{font-size:clamp(1.6rem,2.4vw,2.7rem)}.data-modal-head p:last-child{color:var(--text-2);margin:8px 0 0}.data-browser{grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr);gap:14px;display:grid}.data-browser>div{background:#ffffff09;border:1px solid #f7df982e;border-radius:4px;padding:14px}.data-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.data-browser>div:first-child .data-options{grid-template-columns:1fr}.data-option{min-height:52px;color:var(--text-1);text-align:left;background:#ffffff0a;border:1px solid #f7df982e;border-left:2px solid #0000;border-radius:4px;grid-template-rows:auto auto;grid-template-columns:28px 1fr;align-items:center;gap:2px 9px;padding:8px 12px 8px 10px;transition:background .12s,border-color .12s;display:grid}.data-option:hover:not(:disabled){background:#ffffff12}.data-option.active{border-color:color-mix(in srgb, var(--blue) 40%, transparent);border-left-color:var(--blue);background:color-mix(in srgb, var(--blue) 16%, transparent)}.data-option:disabled{cursor:not-allowed;opacity:.4}.data-option .team-crest,.data-option .entity-badge{text-align:center;grid-row:1/3;width:26px;height:26px;padding:0 2px;font-size:.55rem;line-height:1;position:static;overflow:hidden}.data-option strong,.data-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.data-option strong{font-size:.85rem}.data-option small{color:var(--text-2);font-size:.7rem}.data-option.pair{grid-template-rows:auto auto;grid-template-columns:1fr auto;column-gap:12px;padding:8px 12px}.data-option.pair strong{grid-area:1/1}.data-option.pair .opt-pair-brands{color:var(--text-2);grid-area:1/2;align-items:center;gap:6px;font-size:.65rem;display:inline-flex}.data-option.pair .opt-pair-brands .pair-brand{align-items:center;gap:3px;display:inline-flex}.data-option.pair .opt-pair-brands .pair-logo{background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.6rem;display:inline-flex;overflow:hidden}.data-option.pair .opt-pair-brands .pair-logo img{object-fit:contain;width:100%;height:100%}.data-option.pair .opt-pair-brands .pair-logo:not(.with-img){font-size:0}.data-option.pair .opt-pair-brands .pair-code{letter-spacing:.3px;font-weight:600}.data-option.pair .opt-pair-vs{opacity:.5;font-size:.62rem}.data-option.pair small{grid-area:2/1/auto/-1}.opt-section{color:var(--text-2);letter-spacing:.4px;text-transform:none;border-bottom:1px solid #ffffff0f;grid-column:1/-1;margin:6px 0 -2px;padding:4px 2px;font-size:.68rem}.player-chip-row{flex-wrap:wrap;grid-column:1/-1;gap:6px;margin:6px 0 2px;padding:2px 0;display:flex}.player-chip{letter-spacing:.2px;color:var(--text-1);cursor:pointer;background:0 0;border:1px solid #f7df982e;border-radius:2px;padding:4px 10px;font-size:.7rem;transition:background .12s,border-color .12s,opacity .12s}.player-chip.on{border-color:color-mix(in srgb, var(--blue) 50%, transparent);background:color-mix(in srgb, var(--blue) 18%, transparent)}.player-chip.off{opacity:.42}.player-chip:hover{background:color-mix(in srgb, var(--blue) 28%, transparent)}.player-group-header{color:var(--text-1);text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff0f;grid-column:1/-1;grid-template-columns:16px 1fr auto;align-items:center;gap:8px;margin-top:4px;padding:6px 8px;font-size:.78rem;transition:background .12s;display:grid}.player-group-header:hover{background:#ffffff0a}.player-group-header .caret{opacity:.7;font-size:.7rem}.player-group-header .group-label{letter-spacing:.3px;font-weight:600}.player-group-header .group-stats{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:.68rem}.player-group-body{grid-column:1/-1;gap:1px;padding:2px 0 4px;display:grid}.data-option.player-row{cursor:pointer;text-align:center;border-radius:2px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:78px;padding:8px 10px 6px;display:flex;position:relative}.data-option.player-row.muted{opacity:.45}.data-option.player-row.muted .player-meta{font-style:italic}.data-option.player-row.is-disabled{opacity:.35;cursor:not-allowed}.data-option.player-row .player-hide{color:var(--text-2);cursor:pointer;opacity:0;background:0 0;border:0;padding:0;font-size:.78rem;line-height:1;transition:opacity .12s,color .12s;position:absolute;top:4px;right:6px}.data-option.player-row:hover .player-hide{opacity:.55}.data-option.player-row .player-hide:hover{opacity:1;color:#da291c}.data-option.player-row.hidden-row{opacity:.55}.data-option.player-row.hidden-row .player-hide{opacity:.7}.data-option.player-row.hidden-row .player-hide:hover{color:#43a047}.player-group-header.hidden-section{border-top:1px dashed var(--border);color:var(--text-2);margin-top:8px;padding-top:10px;font-style:italic}.data-option.player-row .player-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.84rem;font-weight:500;overflow:hidden}.data-option.player-row .player-meta{color:var(--text-2);letter-spacing:.4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.68rem}.data-option.player-row .role-badge{font-family:var(--font-sans,inherit);letter-spacing:.5px;color:var(--text-2);vertical-align:1px;border:1px solid #ffffff2e;border-radius:2px;margin-left:4px;padding:0 4px;font-size:.62rem;display:inline-block}.data-option.player-row .player-rating{font-variant-numeric:tabular-nums;margin-top:1px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.05rem;font-weight:700}.data-option.player-row .player-rating-label{color:var(--text-2);letter-spacing:.5px;font-size:.66rem}.opt-section:first-child{margin-top:0}.setup-copy{border:1px solid var(--border);background:var(--surface);border-radius:4px;padding:18px}.setup-copy h2{max-width:680px;font-size:clamp(1.8rem,3vw,3.2rem)}.setup-copy p:last-child,.section-title p,.option-card p{color:var(--text-2);margin:6px 0 0;line-height:1.55}.setup-section{border:1px solid var(--border);background:#ffffff0a;border-radius:4px;padding:14px}.setup-section.pulse-section{border-color:var(--border);box-shadow:0 0 0 1px var(--border)}.setup-advanced{border:1px solid var(--border);background:#ffffff0a;border-radius:4px}.setup-advanced>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:flex}.setup-advanced>summary::-webkit-details-marker{display:none}.setup-advanced__label{flex-direction:column;flex:1;gap:1px;display:flex}.setup-advanced__label strong{font-size:.95rem}.setup-advanced__label small{color:var(--text-2);font-size:.75rem}.setup-advanced__chevron{color:var(--text-2);transition:transform .18s}.setup-advanced[open]>summary .setup-advanced__chevron{transform:rotate(180deg)}.setup-advanced[open]>summary{border-bottom:1px solid var(--border)}.setup-advanced>.setup-section{background:#ffffff05;margin:12px}.setup-advanced>.setup-section+.setup-section{margin-top:0}.section-title{justify-content:flex-start;align-items:flex-start}.match-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.match-card{border:1px solid var(--border);min-height:150px;color:var(--text-1);text-align:left;background:#ffffff0d;border-radius:4px;gap:10px;padding:12px;display:grid}.match-card.active{border-color:var(--border);background:var(--surface-2)}.match-card .match-logo.with-img,.match-card .team-crest.with-img{background:#fff;border-color:#ffffffd9}.match-card .match-logo.with-img img,.match-card .team-crest.with-img img{object-fit:contain;width:100%;height:100%;padding:2px}.match-card header,.match-card .versus{justify-content:space-between;align-items:center;gap:8px;display:flex}.match-card small{color:var(--text-2)}.match-card .round{color:var(--text-1);font-size:.78rem}.segmented,.tag-grid,.compact-grid{gap:10px;margin-top:14px;display:grid}.segmented{grid-template-columns:repeat(3,minmax(0,1fr))}.tag-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented label,.tag,.option-card{border:1px solid var(--border);background:#ffffff0d;border-radius:4px;min-height:50px}.segmented label{align-items:center;padding:0 14px;display:flex}.segmented input{width:16px;height:16px;accent-color:var(--yellow);margin:0 10px 0 0}.tag.active{border-color:var(--border);background:var(--surface-2)}.segmented label:has(input:checked){border-color:var(--border);background:var(--surface-2)}.tag{text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:7px;min-height:96px;padding:12px 8px 10px;transition:border-color .15s,background .15s,opacity .15s;display:flex}.tag:disabled{opacity:.3;cursor:not-allowed}.tag-icon{background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--blue);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.tag-label{color:var(--text-1);white-space:nowrap;letter-spacing:.02em;font-size:.75rem;font-weight:700}.tag-desc{color:var(--text-2);-webkit-line-clamp:2;opacity:.75;-webkit-box-orient:vertical;font-size:.6rem;line-height:1.35;display:-webkit-box;overflow:hidden}.tag.active .tag-icon{background:var(--surface-2);border-color:var(--border);color:var(--text-1)}.tag.active .tag-label{color:var(--text-1)}.custom-style{border:1px solid var(--border);background:#06092442;border-radius:4px;grid-template-columns:minmax(180px,.6fr) minmax(320px,1fr);gap:12px;margin-top:12px;padding:12px;display:grid}.custom-style h4{margin:0;font-size:.95rem}.custom-style p{color:var(--text-2);margin:6px 0 0;line-height:1.5}.custom-style-form{grid-template-columns:minmax(130px,.62fr) minmax(180px,1fr) auto;gap:8px;display:grid}.custom-style input,.custom-style textarea{width:100%;color:var(--text-1);background:#030303a8;border:1px solid #f7df9838;border-radius:4px;outline:none}.custom-style input{min-height:38px;padding:0 11px}.custom-style textarea{resize:vertical;min-height:38px;max-height:82px;padding:9px 11px}.option-card{padding:14px}.switch{color:var(--text-2);white-space:nowrap;align-items:center;gap:10px;font-size:.84rem;display:inline-flex}.switch input{opacity:0;pointer-events:none;position:absolute}.switch span{background:#ffffff14;border:1px solid #f7df9847;border-radius:2px;width:48px;height:26px;position:relative}.switch span:after{content:"";background:var(--text-2);border-radius:50%;width:18px;height:18px;transition:transform .16s,background .16s;position:absolute;top:3px;left:3px}.switch input:checked+span:after{background:var(--text-1);transform:translate(22px)}.sync-meter{color:var(--text-2);margin:16px 0 10px}.sync-meter strong{color:var(--text-1);font-size:1.25rem}input[type=range]{width:100%;accent-color:var(--yellow)}.sync-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.sync-actions button{min-width:0;padding:0 8px;font-size:.82rem}.setup-actions{background:linear-gradient(transparent, var(--setup-fade) 24%);padding:14px 0 0;position:sticky;bottom:-18px}.setup-hint{color:var(--text-2);font-size:.9rem}.ico{border:1px solid var(--border);background:var(--surface);border-radius:4px;place-items:center;width:28px;height:28px;display:inline-grid;position:relative}.ico:before,.ico:after{content:"";position:absolute}.ico-video:before{border:2px solid var(--text-1);border-radius:2px;width:14px;height:10px}.ico-wave:before{border-right:2px solid var(--text-1);border-radius:50%;width:14px;height:14px}.ico-sliders:before{border-top:2px solid var(--text-1);border-bottom:2px solid var(--text-1);width:15px;height:12px}.ico-sliders:after{background:var(--text-1);width:3px;height:3px;box-shadow:8px 8px 0 var(--text-1);border-radius:50%;transform:translate(-4px,-4px)}.ico-trophy:before{border:2px solid var(--text-1);border-top:0;border-radius:0 0 4px 4px;width:13px;height:11px}.ico-user:before{border:2px solid var(--text-1);border-radius:50%;width:8px;height:8px;transform:translateY(-5px)}.ico-user:after{border:2px solid var(--text-1);border-bottom:0;border-radius:4px 4px 0 0;width:16px;height:8px;transform:translateY(8px)}.ico-style:before,.ico-spark:before{background:linear-gradient(45deg, transparent 42%, var(--text-1) 43% 57%, transparent 58%);width:14px;height:14px}.ico-clock:before{border:2px solid var(--text-1);border-radius:50%;width:15px;height:15px}.ico-clock:after{background:var(--text-1);transform-origin:0;width:6px;height:2px;transform:translate(2px)rotate(35deg)}.ico-chart:before{border-left:2px solid var(--text-1);border-bottom:2px solid var(--text-1);width:15px;height:12px}.ico-theme:before{border:1.6px solid var(--text-1);background:linear-gradient(90deg, var(--text-1) 0 50%, transparent 50% 100%);border-radius:50%;width:14px;height:14px}.ico-chart:after{border-top:2px solid var(--text-1);border-right:2px solid var(--text-1);width:13px;height:7px;transform:rotate(-24deg)}.ico-board:before{border:2px solid var(--text-1);border-radius:2px;width:16px;height:11px}.ico-book:before{border:2px solid var(--text-1);border-radius:2px 4px 4px 2px;width:15px;height:14px}.ico-target:before{border:2px solid var(--text-1);border-radius:50%;width:16px;height:16px}.ico-target:after{border:2px solid var(--text-1);border-radius:50%;width:6px;height:6px}.ico-star:before{background:var(--text-1);width:4px;height:16px;transform:rotate(45deg)}.ico-star:after{background:var(--text-1);width:4px;height:16px;transform:rotate(-45deg)}.no-video .stadium-layout{grid-template-columns:minmax(0,1fr)}.no-video .broadcast-panel{display:none}.no-video .mate-panel{min-height:0}.no-video .live-board{grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:12px;display:grid}.no-video .data-head{grid-column:1/-1}.no-video .metric-grid{align-self:stretch}.no-video .visual-grid{grid-template-columns:minmax(0,1fr)}.mobile-preview .stadium-layout{grid-template-columns:minmax(0,420px) minmax(360px,420px);justify-content:center}.mobile-preview .broadcast-panel{min-height:auto}.mobile-preview .screen-frame{aspect-ratio:9/16;max-height:calc(100vh - 200px)}.is-hidden{display:none!important}.coachmark{z-index:5;border:1px solid var(--border);background:#090c2ef5;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:min(430px,100% - 32px);padding:12px;display:grid;position:absolute;top:94px;right:20px;box-shadow:0 20px 70px #00000080}.coachmark:before{content:"";border-top:1px solid var(--border);border-left:1px solid var(--border);background:#090c2ef5;width:16px;height:16px;position:absolute;top:-9px;right:108px;transform:rotate(45deg)}.coachmark span{background:var(--red);border-radius:50%;width:10px;height:10px}.coachmark p{color:var(--text-1);margin:0;font-size:.9rem}.coachmark button{border:1px solid var(--border);min-height:32px;color:var(--text-1);background:var(--surface);border-radius:4px}@media (width<=1380px){.topbar{grid-template-columns:auto minmax(180px,.9fr) minmax(0,1fr);grid-template-areas:"brand select status";align-items:stretch}.match-select-card,.status-dock{width:100%}.match-select-card{justify-self:stretch}}@media (width<=1180px){.stadium-layout{grid-template-columns:minmax(0,1fr)}.broadcast-panel,.mate-panel{min-height:auto}.screen-frame{min-height:360px;max-height:none}.app-shell{height:auto;min-height:100vh;overflow:visible}}@media (orientation:landscape) and (width<=900px){.stadium-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr)}.screen-frame{aspect-ratio:16/9;min-height:260px}}@media (width<=720px){body{overflow-x:hidden}.topbar{grid-template-areas:"brand""select""status";gap:8px;min-height:auto;margin-bottom:8px}.app-shell{height:auto;min-height:100dvh;padding:8px;overflow:visible}.brand{gap:8px;padding:2px 4px}.brand-mark{flex-basis:30px;width:30px;height:30px}.brand small{display:none}.brand strong{font-size:.9rem}.topbar,.match-select-card,.stadium-layout,.compact-grid,.custom-style,.custom-style-form,.mate-body,.no-video .live-board,.data-browser{grid-template-columns:1fr}.tag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.match-grid,.segmented,.metric-grid,.sync-actions,.visual-grid,.data-options,.data-browser>div:first-child .data-options{grid-template-columns:1fr}.status-dock{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:8px;min-height:auto;display:grid}.status-dock>.status-chip,.status-dock>#themeToggle{width:100%;min-width:0}.status-chip{grid-template-columns:26px minmax(0,1fr);gap:1px 7px;min-height:44px;padding:5px 7px}.status-chip .ico{width:24px;height:24px}.status-chip b{font-size:.78rem}.status-chip small{font-size:.66rem}.mate-header,.data-head,.board-actions,.option-card,.setup-actions{align-items:stretch;display:grid}.broadcast-panel,.mate-panel{height:auto;padding:8px}.broadcast-panel{gap:6px}.url-composer{grid-template-columns:minmax(0,1fr) 42px;gap:8px;max-height:none;margin:4px 0}.url-composer.is-collapsed{max-height:4px}.url-composer.is-collapsed:hover,.url-composer.is-collapsed:focus-within{max-height:none}.mode-switch{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.mode-button{min-width:0;padding:0 8px}.screen-frame{aspect-ratio:16/9;width:100%;min-height:0;max-height:42dvh}.empty-broadcast{width:min(100%,320px)}.empty-broadcast h2{font-size:clamp(1.25rem,8vw,2rem)}.pitch-preview{width:min(260px,86%);margin-bottom:12px}.mate-panel{gap:6px}.mate-body{gap:8px;display:flex}.live-board{max-height:min(42dvh,340px);padding:8px}.visual-grid{overscroll-behavior:contain;height:auto;max-height:300px;overflow-y:auto}.metric-grid{grid-auto-rows:minmax(66px,auto)}.metric-grid .metric-card,.metric-grid .metric-card.metric-pair{grid-column:auto}.metric-card{padding-top:9px;padding-bottom:9px}.chat-log{flex:auto;min-height:260px;max-height:58dvh;padding:8px 0}.event-card{max-width:92%}.event-card.mate,.event-card.streaming{padding:10px 12px}.event-card.mate .event-body,.event-card.streaming .event-body{font-size:13px}.clear-confirm-bar{flex-direction:column;align-items:stretch}.clear-confirm-bar__actions{grid-template-columns:1fr 1fr;display:grid}.chat-composer{z-index:20;min-height:58px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border:1px solid var(--border);border-bottom:0;border-left:0;border-right:0;grid-template-columns:42px minmax(0,1fr) minmax(64px,auto);gap:8px;margin:0 -8px -8px;position:sticky;bottom:0}.send-button{grid-column:auto;min-width:64px;padding:0 12px}.coachmark{width:auto;position:fixed;top:10px;left:10px;right:10px}.setup-dialog,.data-dialog{width:100vw;max-width:100vw;max-height:100dvh;margin:0}.setup-panel,.data-panel{border-radius:0;min-height:100dvh;max-height:100dvh;padding:10px}.setup-copy{padding:14px}.setup-copy h2{font-size:clamp(1.45rem,8vw,2.1rem)}.setup-section,.setup-advanced>.setup-section{padding:12px}.setup-advanced>.setup-section{margin:10px}.match-card{min-height:120px}.custom-style{padding:10px}.custom-style-form .ghost-button{min-height:42px}.setup-actions{padding:14px 10px calc(10px + env(safe-area-inset-bottom));margin:0 -10px -10px;bottom:-10px}.data-modal-head{gap:10px;padding:12px;display:grid}.data-modal-head h2{font-size:clamp(1.35rem,8vw,2rem)}.data-browser>div{padding:10px}.category-tabs{overflow-x:auto}.cat-tab{flex:none;min-width:76px}.fixture-trigger{min-height:56px;padding:5px 10px 5px 5px}.fixture-trigger>.match-info{gap:6px;padding:4px 6px}.fixture-trigger>.match-info .match-info__logo{width:26px;height:26px}.fixture-trigger>.match-info .match-info__name strong{font-size:.82rem}.fixture-trigger>.match-info .match-info__name small,.fixture-trigger>.match-info .match-info__venue{display:none}.fixture-trigger>.match-info .match-info__center{padding:0 3px}.fixture-trigger>.match-info .match-info__score{font-size:1.05rem}.fixture-trigger>.match-info .match-info__meta{font-size:.62rem}.match-info{gap:6px;padding:8px}.match-info__logo{width:30px;height:30px}.match-info__name strong{font-size:.82rem}.match-info__score{font-size:1.25rem}.visual-modal{padding:10px}.visual-modal-card{width:100%;max-height:calc(100dvh - 20px);padding:12px}.visual-modal-body{align-items:flex-start}.visual-modal-body .lineup-svg{width:100%;height:auto}}@media (width<=480px){.app-shell{padding:6px}.topbar{gap:6px}.status-dock{grid-template-columns:1fr}.broadcast-panel,.mate-panel{padding:6px}.screen-frame{max-height:36dvh}.live-board{max-height:min(38dvh,300px)}.chat-log{min-height:230px;max-height:56dvh}.chat-composer{padding:8px 6px calc(8px + env(safe-area-inset-bottom));grid-template-columns:38px minmax(0,1fr) 58px;margin:0 -6px -6px}.icon-button{width:38px;height:38px}.url-composer input,.chat-composer input{min-height:40px;padding:0 10px}.send-button{min-width:58px;min-height:40px;padding:0 10px}.tag-grid{gap:8px}.tag{min-height:86px;padding:10px 6px 8px}.tag-label{white-space:normal}.fixture-trigger>.match-info .match-info__name{display:none}.fixture-trigger>.match-info{grid-template-columns:auto 1fr auto}.fixture-trigger>.match-info .match-info__center{min-width:86px}}@media (orientation:landscape) and (height<=520px) and (width<=960px){.app-shell{height:auto}.topbar{grid-template-columns:auto minmax(240px,1fr) minmax(240px,.9fr);grid-template-areas:"brand select status";align-items:center}.status-dock{grid-template-columns:repeat(2,minmax(0,1fr))}.stadium-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr)}.screen-frame{min-height:220px;max-height:none}.live-board{max-height:46vh}.chat-log{min-height:180px;max-height:42vh}}.match-logo.with-img,.team-crest.with-img,.entity-badge.with-img{background:0 0;border-color:#0000;padding:0;overflow:hidden}.match-logo.with-img img,.team-crest.with-img img,.entity-badge.with-img img{object-fit:contain;width:100%;height:100%;display:block}.entity-badge.with-img{background:#080c2499;border-radius:50%}.entity-badge.player.with-img img{object-fit:cover}.category-tabs{border:1px solid var(--border);background:#06092466;border-radius:4px;gap:6px;margin:0 0 8px;padding:4px;display:flex}.cat-tab{color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex:1;padding:6px 10px;font-size:.78rem;transition:all .15s}.cat-tab:hover{color:var(--text-1);background:var(--surface)}.cat-tab.active{color:var(--text-1);border-color:var(--border);background:var(--surface-2)}.event-timeline-svg{width:100%;height:auto;display:block}.event-timeline.empty{text-align:center;color:var(--text-2);padding:20px;font-size:.85rem}.pressure-chart .chart-axis,.event-timeline-svg .chart-axis{stroke:var(--chart-axis)}.pressure-chart .chart-gridline,.event-timeline-svg .chart-gridline{stroke:var(--chart-gridline)}.event-timeline-svg .chart-divider{stroke:var(--chart-divider)}.pressure-chart .chart-axis-text,.event-timeline-svg .chart-axis-text{fill:var(--chart-axis-text)}.pressure-chart .chart-home-line{stroke:var(--chart-home)}.pressure-chart .chart-away-line{stroke:var(--chart-away)}.pressure-chart .chart-home-fill{fill:var(--chart-home)}.pressure-chart .chart-away-fill{fill:var(--chart-away)}.pressure-chart .chart-ink-home{fill:var(--chart-ink-on-home)}.pressure-chart .chart-ink-away{fill:var(--chart-ink-on-away)}.event-timeline-svg .chart-mark-stroke,.pressure-chart .chart-mark-stroke{stroke:var(--chart-mark-stroke)}.event-timeline-svg .chart-badge-bg{fill:var(--chart-badge-bg)}.event-timeline-svg .chart-badge-ink{fill:var(--chart-badge-ink)}.lineup-svg .lineup-pitch{fill:var(--lineup-pitch-bg)}.lineup-svg .lineup-line{stroke:var(--lineup-line)}.lineup-svg .lineup-line-fill{fill:var(--lineup-line)}.lineup-svg .lineup-label{fill:var(--lineup-label-text)}.lineup-svg .lineup-marker-stroke{stroke:var(--lineup-marker-stroke)}.lineup-svg .lineup-marker-text{fill:var(--lineup-marker-stroke)}.lineup-svg .chart-home-fill{fill:var(--chart-home)}.lineup-svg .chart-away-fill{fill:var(--chart-away)}.lineup-svg .chart-home-stroke{stroke:var(--chart-home)}.lineup-svg .chart-away-stroke{stroke:var(--chart-away)}.sub-row-home{--sub-color:var(--chart-home)}.sub-row-away{--sub-color:var(--chart-away)}.sub-tile[data-team=home]{--sub-color:var(--chart-home)}.sub-tile[data-team=away]{--sub-color:var(--chart-away)}.event-timeline-svg .ev-mark{cursor:default}.match-info:empty{display:none}.match-info{border:1px solid var(--border);background:var(--score-bg);border-radius:4px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.match-info__side{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.match-info__side.away{text-align:right;flex-direction:row-reverse}.match-info__logo{flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.match-info__logo img{object-fit:contain;width:100%;height:100%}.match-info__name{flex-direction:column;min-width:0;display:flex}.match-info__name strong{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.match-info__name small{color:var(--text-2);letter-spacing:.04em;font-size:.7rem}.match-info__center{flex-direction:column;align-items:center;gap:2px;padding:0 8px;display:flex}.match-info__score{color:var(--text-1);letter-spacing:.05em;font-size:1.6rem;font-weight:900;line-height:1}.match-info__meta{color:var(--text-2);align-items:center;gap:6px;font-size:.7rem;display:flex}.match-info__live{color:#fff;letter-spacing:.08em;background:#e41c4ed9;border-radius:2px;padding:1px 6px;font-size:.62rem;font-weight:700}.match-info__venue{text-align:center;color:var(--text-2);grid-column:1/-1;margin-top:2px;font-size:.7rem}.thinking-line{color:var(--text-2);align-items:center;gap:8px;font-size:.88rem;font-style:italic;display:flex}.thinking-dots{align-items:center;gap:3px;display:inline-flex}.thinking-dots span{background:var(--surface-2);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite thinking-bounce}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking-bounce{0%,80%,to{opacity:.45;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.thinking-text{letter-spacing:.02em}.thinking-elapsed{margin-left:var(--sp-1,4px);color:var(--text-2);opacity:.55;font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:.92em}.thinking-elapsed:empty{display:none}.visual-zoom{border:1px solid var(--border);color:#ffffffc7;cursor:pointer;background:#080c2480;border-radius:4px;width:22px;height:22px;margin-left:auto;padding:0;font-size:.86rem;line-height:1;transition:all .15s}.visual-zoom:hover{border-color:var(--border);color:#fff;background:var(--surface)}.player-mins{color:var(--text-2);letter-spacing:.2px;font-variant-numeric:tabular-nums;background:#ffffff0f;border-radius:2px;align-items:center;gap:4px;padding:1px 5px;font-size:.6rem;font-weight:600;line-height:1.6;display:inline-flex;position:absolute;top:6px;right:6px}.player-mins .bench-flag{background:var(--surface-2);color:var(--yellow);letter-spacing:0;border-radius:2px;padding:0 3px;font-size:.56rem;font-weight:700}html.theme-cream .player-mins{background:#0000000d}.metric-zoom{border:1px solid var(--border);background:var(--surface-2);width:16px;height:16px;color:var(--text-2);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:.75rem;font-weight:700;line-height:1;transition:border-color .15s,color .15s,background .15s;display:inline-grid;position:absolute;top:22px;left:22px}.metric-zoom:hover{border-color:var(--yellow);color:var(--yellow);background:var(--surface)}.visual-modal{z-index:9999;background:var(--modal-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:24px;animation:.18s ease-out visual-modal-fade;display:grid;position:fixed;inset:0}@keyframes visual-modal-fade{0%{opacity:0}to{opacity:1}}.visual-modal-card{border:1px solid var(--border);background:var(--modal-card);border-radius:4px;flex-direction:column;width:min(92vw,1200px);max-height:92vh;padding:16px 18px 20px;display:flex;box-shadow:0 20px 60px #00000080}.visual-modal-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.visual-modal-head strong{color:var(--text-1);font-size:1.05rem}.lineup-formation-tag{color:var(--text-2);letter-spacing:.08em;font-variant-numeric:tabular-nums;flex:auto;font-size:.78rem;font-weight:500}.lineup-formation-tag em{color:var(--text-3);text-transform:uppercase;margin:0 6px;font-size:.7rem;font-style:normal}.visual-modal-close{border:1px solid var(--border);background:var(--surface-2);width:30px;height:30px;color:var(--text-2);cursor:pointer;border-radius:4px;margin-left:auto;padding:0;font-size:1.2rem;line-height:1;transition:all .15s}.visual-modal-close:hover{border-color:var(--text-3);color:var(--text-1);background:var(--surface)}.visual-modal-body{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;overflow:auto}.visual-modal-body>svg{width:100%;height:auto;max-height:calc(92vh - 80px)}.visual-modal-body .lineup-svg{width:auto;max-width:100%;height:min(64vh,600px);margin:0 auto}.fixture-trigger{border:1px solid var(--border);width:100%;min-height:60px;color:var(--text-1);text-align:left;cursor:pointer;background:var(--surface);border-radius:4px;align-items:center;gap:8px;padding:6px 12px 6px 6px;transition:border-color .12s,background .12s,transform .12s;display:flex}.fixture-trigger>.match-info{background:0 0;border:none;flex:auto;gap:10px;min-width:0;padding:6px 8px}.fixture-trigger>.match-info .match-info__logo{width:30px;height:30px}.fixture-trigger>.match-info .match-info__name strong{font-size:1rem}.fixture-trigger>.match-info .match-info__name small{letter-spacing:.04em;font-size:.66rem}.fixture-trigger>.match-info .match-info__center{gap:2px;padding:0 6px}.fixture-trigger>.match-info .match-info__score{letter-spacing:.04em;font-size:1.35rem}.fixture-trigger>.match-info .match-info__meta{gap:6px;font-size:.7rem}.fixture-trigger>.match-info .match-info__live{padding:1px 5px;font-size:.6rem}.fixture-trigger:hover{border-color:var(--border)}.fixture-trigger[aria-expanded=true]{border-color:var(--border);background:var(--surface-2)}.fixture-trigger__crests{align-items:center;display:inline-flex}.fixture-trigger__crests .team-crest{border-color:var(--border);width:28px;height:28px;font-size:.66rem;box-shadow:0 2px 6px #00000052}.fixture-trigger__crests .team-crest+.team-crest{margin-left:-10px}.fixture-trigger__crests .team-crest.with-img{background:#fff;border-color:#ffffffd9}.fixture-trigger__crests .team-crest.with-img img{object-fit:contain;width:100%;height:100%;padding:2px}.fixture-trigger__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.fixture-trigger__meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.fixture-trigger__meta small{color:var(--text-1);letter-spacing:.04em;font-size:.78rem;font-weight:600}.fixture-trigger__caret{border-right:1.5px solid var(--text-2);border-bottom:1.5px solid var(--text-2);width:10px;height:10px;margin-right:2px;transition:transform .16s;transform:rotate(45deg)translate(-2px,-2px)}.fixture-trigger[aria-expanded=true] .fixture-trigger__caret{transform:rotate(-135deg)translate(-2px,-2px)}.fixture-panel{z-index:9000;border:1px solid var(--border);background:var(--popover-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:4px;gap:6px;width:max(100%,300px);max-height:min(70vh,480px);padding:8px;animation:.14s ease-out popover-in;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 18px 40px #0000008c,inset 0 0 0 1px #ffffff0a}.fixture-panel[hidden]{display:none}.fixture-option{border:1px solid var(--border);color:var(--text-1);text-align:left;cursor:pointer;background:#ffffff08;border-radius:4px;gap:6px;padding:8px 10px;transition:border-color .12s,background .12s;display:grid}.fixture-option:hover{border-color:var(--border);background:var(--surface)}.fixture-option.is-active{border-color:var(--border);background:var(--surface-2);box-shadow:inset 0 0 0 1px #ffffff0f}.fixture-option header{color:var(--text-2);align-items:center;gap:8px;font-size:.74rem;display:flex}.fixture-option header .match-logo{width:22px;height:22px;font-size:.6rem}.fixture-option header .match-logo.with-img{background:#fff;border-color:#ffffffd9}.fixture-option header .match-logo.with-img img{object-fit:contain;width:100%;height:100%;padding:2px}.fixture-option__league{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.fixture-option__score{color:var(--text-1);letter-spacing:.04em;font-size:.84rem;font-weight:700}.fixture-option__live{letter-spacing:.08em;color:#fff;background:#da291c;border-radius:3px;align-items:center;gap:4px;padding:2px 6px;font-size:.62rem;font-weight:700;display:inline-flex}.fixture-option__live:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite fixture-live-pulse}@keyframes fixture-live-pulse{0%,to{opacity:1}50%{opacity:.35}}.fixture-option .versus{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.fixture-option .versus .team-crest{width:26px;height:26px;font-size:.62rem}.fixture-option .versus .team-crest.with-img{background:#fff;border-color:#ffffffd9}.fixture-option .versus .team-crest.with-img img{object-fit:contain;width:100%;height:100%;padding:2px}.fixture-option .versus strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.fixture-option .versus em{color:var(--text-2);margin:0 4px;font-size:.72rem;font-style:normal}@media (width<=720px){.fixture-panel{width:100%;max-height:60vh}}
