:root{--accent-primary:#f7b731}*,:before,:after{box-sizing:border-box}html{height:100%}body{color:#e6edf3;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0d1117;height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}#root{flex-direction:column;height:100%;display:flex;overflow:hidden}h1,h2,h3{margin:0}button{font:inherit;cursor:pointer}.shootout{border-top:1px solid #2d3d52;padding:5px 8px 6px}.so-label{letter-spacing:1.5px;text-transform:uppercase;color:#6b8099;margin-bottom:4px;font-size:8px;font-weight:700;display:block}.so-rows{flex-direction:column;gap:4px;display:flex}.so-row{align-items:center;gap:6px;display:flex}.so-pips{flex-wrap:wrap;flex:1;gap:3px;min-width:0;display:flex}.so-pip{box-sizing:border-box;border-radius:50%;flex-shrink:0;width:8px;height:8px}.so-goal{background:#2ea043}.so-miss{background:0 0;border:1.5px solid #6e3a3a}.so-count{color:#8b949e;text-align:right;min-width:12px;font-size:12px;font-weight:800}.so-win .so-count{color:#fff}.shootout.bar{border-top:none;justify-content:center;align-items:center;gap:6px;width:100%;padding:0;display:flex}.so-tag{letter-spacing:1px;color:#6b8099;flex-shrink:0;font-size:8px;font-weight:800}.shootout.bar .so-rows{gap:2px}.shootout.bar .so-row{gap:5px;line-height:1}.shootout.bar .so-pips{flex-wrap:nowrap;flex:none;overflow:hidden}.shootout.bar .so-pip{width:6px;height:6px}.shootout.bar .so-count{min-width:9px;font-size:9px;line-height:1}.match-card.big .shootout.bar .so-pip{width:7px;height:7px}.match-card.big .shootout:not(.bar) .so-pip{width:9px;height:9px}.shootout.lg{border-top:none;max-width:340px;margin:0 auto;padding:12px 0 0}.shootout.lg .so-label{text-align:center;margin-bottom:6px}.shootout.lg .so-pip{width:11px;height:11px}.shootout.lg .so-count{color:#e6edf3;font-size:16px}.match-card{border-left:4px solid var(--accent,#2d3d52);box-sizing:border-box;background:#1e2a3a;border-radius:7px;width:clamp(150px,44vw,168px);overflow:hidden}.match-card.big{width:clamp(210px,66vw,232px)}.match-card.big.placeholder{min-height:96px}.match-card.big .card-status{min-height:34px}.match-card.big .status-line{font-size:12px}.match-card.big .team-row{padding:7px 12px}.match-card.big .flag{width:26px;height:19px}.match-card.big .team-name{font-size:17px}.match-card.big .score{min-width:24px;font-size:22px}.match-card.live{border-left-color:#f85149;box-shadow:0 0 0 1px #f851494d}.match-card.highlight{border-left-color:#f85149;box-shadow:0 0 0 1px #f8514966,0 0 12px #f8514926}.match-card.placeholder{color:#4a5a70;border-left-color:#2d3d52;justify-content:center;align-items:center;min-height:72px;font-size:11px;font-weight:600;display:flex}.card-status{background:#1a2432;border-top:1px solid #16202c;justify-content:center;align-items:center;min-height:30px;padding:4px 8px;display:flex}.status-line{color:#6b8099;align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.card-status.status-ft .status-line,.card-status.status-live .status-line{letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:700}.card-status.status-ft .status-line{color:#566779}.card-status.status-live .status-line{color:#f0f6fc}.status-dot{background:#f85149;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse}.team-row{align-items:center;gap:6px;padding:4px 8px;display:flex}.flag{object-fit:cover;border-radius:1px;flex-shrink:0;width:18px;height:13px}.team-name{color:#6b8099;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.match-card.done .team-name,.match-card.live .team-name,.match-card.highlight .team-name{color:#e6edf3}.team-row.winner .team-name{color:#fff;font-weight:800}.trophy{flex-shrink:0;font-size:11px;line-height:1}.match-card.big .trophy{font-size:14px}.score{color:#e6edf3;text-align:right;flex-shrink:0;min-width:18px;font-size:16px;font-weight:800;line-height:1}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@media (width<=520px){.round-cards>.match-card,.round-cards>.match-card.big{width:calc(50% - 6px)}.match-card.big .team-row{padding:4px 8px}.match-card.big .flag{width:18px;height:13px}.match-card.big .team-name{font-size:13px}.match-card.big .score{min-width:18px;font-size:16px}.match-card.big .card-status{min-height:30px}.match-card.big .status-line{font-size:11px}.match-card.big.placeholder{min-height:72px}}.bracket-scroll{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;flex:1;min-height:0;padding:8px clamp(10px,3vw,24px) 40px;overflow:hidden auto}.bracket-scroll::-webkit-scrollbar{display:none}.round-section{opacity:.55;border-bottom:1px solid #161d27;max-width:1200px;margin:0 auto;padding:14px 0;transition:opacity .25s}.round-section:last-child{border-bottom:none}.round-current{opacity:1}.round-head{justify-content:center;align-items:center;gap:10px;margin-bottom:14px;display:flex}.round-name{letter-spacing:3px;color:#6b8099;text-transform:uppercase;font-size:12px;font-weight:700}.round-current .round-name{color:#e6edf3;font-size:15px}.round-badge{letter-spacing:1.5px;color:#fff;background:#f85149;border-radius:3px;padding:2px 8px;font-size:10px;font-weight:800;animation:1.4s ease-in-out infinite pulse}.round-cards{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:12px;display:flex}.third-wrap{flex-direction:column;display:flex}.third-label{letter-spacing:1px;color:#484f58;text-transform:uppercase;text-align:center;margin-top:5px;font-size:9px;font-weight:600}.live-focus-wrap{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.live-hero{background:#080d14;border-bottom:1px solid #1e2a3a;padding:12px clamp(12px,3vw,32px) 16px}.hero-top{align-items:center;gap:8px;margin-bottom:10px;display:flex}.live-dot{color:#f85149;font-size:11px;animation:1.4s ease-in-out infinite pulse}.live-label{letter-spacing:3px;color:#f85149;text-transform:uppercase;font-size:11px;font-weight:800}.swap-btn{color:#6b8099;cursor:pointer;background:0 0;border:1px solid #2d3d52;border-radius:5px;margin-left:auto;padding:5px 14px;font-size:12px;transition:border-color .15s,color .15s}.swap-btn:hover{color:#e6edf3;border-color:#8b949e}.hero-matchup{justify-content:center;align-items:center;gap:clamp(10px,3vw,32px);display:flex}.hero-team{flex:1;align-items:center;gap:clamp(8px,2vw,16px);min-width:0;display:flex}.hero-team-right{justify-content:flex-end}.hero-flag{aspect-ratio:46/34;object-fit:cover;border-radius:3px;flex-shrink:0;width:clamp(28px,6vw,46px)}.hero-name{color:#e6edf3;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:clamp(14px,3.4vw,24px);font-weight:800;overflow:hidden}.hero-scoreboard{flex-shrink:0;align-items:center;gap:clamp(6px,2vw,12px);display:flex}.hero-score{color:#fff;text-align:center;min-width:clamp(28px,7vw,44px);font-size:clamp(34px,9vw,54px);font-weight:900;line-height:1}.hero-sep{color:#2d3d52;font-size:clamp(20px,5vw,32px);font-weight:300}.group-results{border-top:1px solid #21262d;padding:0 clamp(10px,3vw,24px) 12px}.groups-toggle{color:#8b949e;cursor:pointer;letter-spacing:.5px;background:0 0;border:1px solid #30363d;border-radius:6px;margin:10px auto 0;padding:6px 20px;font-size:12px;transition:border-color .15s,color .15s;display:block}.groups-toggle:hover{color:#e6edf3;border-color:#8b949e}.groups-overlay{z-index:50;background:#010409a6;justify-content:center;align-items:flex-end;animation:.15s groups-fade;display:flex;position:fixed;inset:0}.groups-panel{width:100%;max-height:88dvh;padding:0 clamp(10px, 3vw, 24px) calc(24px + env(safe-area-inset-bottom,0px));background:#0d1117;border-top:1px solid #21262d;border-radius:14px 14px 0 0;animation:.2s groups-slide;overflow-y:auto}.groups-panel-head{z-index:1;letter-spacing:1.5px;text-transform:uppercase;color:#8b949e;background:#0d1117;border-bottom:1px solid #21262d;justify-content:space-between;align-items:center;padding:14px 2px 12px;font-size:12px;font-weight:700;display:flex;position:sticky;top:0}.groups-close{color:#6b8099;background:0 0;border:none;border-radius:5px;padding:4px 6px;font-size:15px;line-height:1;transition:color .15s,background .15s}.groups-close:hover{color:#e6edf3;background:#21262d}@keyframes groups-fade{0%{opacity:0}to{opacity:1}}@keyframes groups-slide{0%{transform:translateY(12px)}to{transform:translateY(0)}}.groups-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:16px;margin-top:20px;display:grid}.group-card{background:#161b22;border:1px solid #21262d;border-radius:8px;overflow:hidden}.group-header{letter-spacing:1.5px;color:#8b949e;text-transform:uppercase;background:#21262d;padding:6px 12px;font-size:11px;font-weight:700}.group-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:11px}.group-table col.col-team-w{width:38%}.group-table col.col-stat-w{width:9%}.group-table col.col-wide-w{width:13%}.group-table th{color:#484f58;text-align:right;border-bottom:1px solid #21262d;padding:4px;font-weight:600;overflow:hidden}.group-table th:first-child,.group-table td.col-team{text-align:left}.group-table td{color:#8b949e;text-align:right;border-bottom:1px solid #21262d;padding:5px 4px;overflow:hidden}.group-table tr:last-child td{border-bottom:none}.group-table tr.qualified td{color:#e6edf3}.col-team{align-items:center;gap:5px;min-width:0;display:flex!important}.flag-sm{object-fit:cover;border-radius:1px;flex-shrink:0;width:16px;height:11px}.tname{white-space:nowrap;text-overflow:ellipsis;max-width:90px;overflow:hidden}.pts{font-weight:700;color:#f7b731!important}.view-tabs{justify-content:center;gap:8px;margin-top:16px;display:flex}.view-tab{color:#8b949e;letter-spacing:.5px;cursor:pointer;background:0 0;border:1px solid #30363d;border-radius:6px;padding:5px 16px;font-size:11px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.view-tab:hover{color:#e6edf3;border-color:#8b949e}.view-tab.active{background:var(--accent-primary,#f7b731);border-color:var(--accent-primary,#f7b731);color:#0d1117}.group-fixtures{padding:4px 0 6px}.fixture-row{border-bottom:1px solid #21262d;padding:6px 12px}.fixture-row:last-child{border-bottom:none}.fixture-teams{flex-direction:column;gap:3px;display:flex}.fixture-team{color:#8b949e;align-items:center;gap:5px;font-size:11px;display:flex}.fixture-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.fixture-score{color:#e6edf3;text-align:right;min-width:14px;font-weight:700}.fixture-winner .fixture-name,.fixture-winner .fixture-score{color:#fff;font-weight:800}.fixture-date{color:#484f58;margin-top:3px;font-size:9px;display:block}.fixture-empty{text-align:center;color:#484f58;padding:12px;font-size:11px}.tz-select{color:#8b949e;max-width:38vw;font:inherit;cursor:pointer;background:0 0;border:1px solid #30363d;border-radius:6px;padding:4px 6px;font-size:11px;transition:border-color .15s,color .15s;position:absolute;top:50%;right:clamp(10px,3vw,20px);transform:translateY(-50%)}.tz-select:hover,.tz-select:focus{color:#e6edf3;border-color:#8b949e}.tz-select option{color:#e6edf3;background:#0d1117}@media (width<=520px){.tz-select{flex-basis:100%;max-width:70vw;margin:0 auto;padding:3px 5px;font-size:10px;position:static;transform:none}}.site-footer{color:#484f58;border-top:1px solid #161b22;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:5px clamp(10px,3vw,24px);font-size:10px;display:flex}.site-footer a{color:#6b8099;text-decoration:none}.site-footer a:hover{color:#e6edf3;text-decoration:underline}.footer-sep{color:#30363d}@media (width<=520px){.site-footer{gap:4px;font-size:9px}}.app{flex-direction:column;height:100%;display:flex;overflow:hidden}.site-header{text-align:center;justify-content:center;align-items:baseline;gap:clamp(8px,2vw,12px);padding:10px clamp(12px,3vw,24px) 8px;display:flex;position:relative}.header-eyebrow{letter-spacing:3px;color:#484f58;text-transform:uppercase;font-size:10px;font-weight:700}.header-title{letter-spacing:2px;color:var(--accent-primary);text-transform:uppercase;white-space:nowrap;margin:0;font-size:clamp(15px,4vw,20px);font-weight:800}.header-sub{letter-spacing:2px;color:#8b949e;text-transform:uppercase;font-size:10px;font-weight:600}@media (width<=520px){.header-eyebrow,.header-sub{display:none}.site-header{flex-wrap:wrap;row-gap:4px}}.bracket-section{flex-direction:column;flex:1;min-height:0;display:flex}.loading{color:#484f58;letter-spacing:1px;flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.error-banner{color:#f85149;text-align:center;background:#f851491a;border-bottom:1px solid #f851494d;padding:8px 24px;font-size:12px}
