:root{--bg:#000;--panel:#0c0c0c;--panel-raised:#131313;--border:#1e1e1e;--text:#f2f2f2;--muted:#8a8a8a;--red:#e10600;--radius:14px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden;font-family:-apple-system,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit}button{font-family:inherit}button:focus-visible{outline:2px solid var(--text);outline-offset:2px}a:focus-visible{outline:2px solid var(--text);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.app{padding:28px 24px 80px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:max(80px,env(safe-area-inset-bottom));max-width:980px;margin:0 auto}.navbar{position:sticky;z-index:30;backdrop-filter:blur(14px)saturate(1.2);-webkit-backdrop-filter:blur(14px)saturate(1.2);background:#0000008c;border-bottom:1px solid #0000;transition:border-color .25s,background .25s;top:0}.navbar.scrolled{border-bottom-color:var(--border);background:#000000c7}.navbar-inner{padding:14px 24px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));display:flex;justify-content:space-between;align-items: center;gap:12px;max-width:980px;margin:0 auto}.navbar-brand{display:flex;flex-wrap:wrap;align-items: center;gap:10px;min-width:0}.brand-mark{display:inline-flex;letter-spacing:-.02em;color:var(--text);align-items: center;gap:6px;font-size:20px;font-weight:800}.brand-icon{color:var(--red)}.brand-sep{color:var(--border)}.brand-tagline{color:var(--muted);font-size:13px;font-weight:600}.calendar-btn{display:inline-flex;border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;align-items: center;gap:7px;padding:8px 14px;transition:all .15s;font-size:12.5px;font-weight:700}.calendar-btn:hover{background:#ffffff0a;border-color:#3a3a3a}.drawer-backdrop{position:fixed;backdrop-filter:blur(3px);opacity:0;pointer-events:none;z-index:40;background:#000000a6;transition:opacity .4s cubic-bezier(.22,1,.36,1);inset:0}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer{position:fixed;background:var(--panel);border:1px solid var(--border);z-index:41;display:flex;will-change:transform;padding-bottom:env(safe-area-inset-bottom);border-bottom:none;border-radius:22px 22px 0 0;flex-direction:column;max-width:640px;max-height:min(78vh,720px);margin:0 auto;transition:transform .45s cubic-bezier(.19,1,.22,1);bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -20px 60px #00000080}.drawer.open{transform:translateY(0)}.drawer-grabber{background:var(--border);border-radius:999px;flex-shrink:0;width:40px;height:4px;margin:12px auto 0}.drawer-header{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items: center;padding:14px 20px}.drawer-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:800}.drawer-close{display:inline-flex;border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items: center;width:34px;height:34px;transition:all .15s}.drawer-close:hover{background:#ffffff0d;border-color:#3a3a3a}.drawer-list{overflow-y:auto;overscroll-behavior:contain;flex:1;padding:6px 0}.drawer-row{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:14px;padding:10px 20px;transition:background .15s,opacity .2s}.drawer-row:hover{background:#ffffff08}.drawer-row.past{opacity:.4}.drawer-row.current{background:#e1060014}.drawer-date{display:flex;flex-direction:column;flex-shrink:0;align-items: center;width:36px}.drawer-date-day{font-variant-numeric:tabular-nums;font-size:17px;font-weight:800;line-height:1.1}.drawer-date-month{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.drawer-track{display:flex;flex-shrink:0;justify-content:center;align-items: center;width:42px;height:42px}.drawer-track img{object-fit:contain;width:100%;height:100%}.drawer-info{flex:1;min-width:0}.drawer-race-name{display:flex;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-items: center;gap:7px;font-size:13.5px;font-weight:700}.drawer-race-place{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;font-size:12px}.drawer-round{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.drawer-live-dot{background:var(--red);animation:pulse 1.4s ease-in-out infinite;border-radius:50%;flex-shrink:0;width:6px;height:6px}.error-banner{color:#ff6b63;background:#e106001a;border:1px solid #e1060066;border-radius:10px;margin-bottom:20px;padding:12px 16px;font-size:13px}.hero-skeleton{display:flex;color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius);justify-content:center;align-items: center;height:160px;font-size:14px}.hero{display:flex;border:1px solid var(--border);background:var(--panel);animation:fadeIn .25s ease;border-radius:20px;justify-content:space-between;align-items: center;gap:24px;margin-bottom:32px;padding:30px}.hero-main{min-width:0}.hero-live{background:linear-gradient(135deg,#e106001f,var(--panel)65%);border-color:#e1060066}.live-badge{display:inline-flex;color:var(--red);letter-spacing:.06em;align-items: center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:800}.live-dot{background:var(--red);animation:pulse 1.4s ease-in-out infinite;border-radius:50%;width:8px;height:8px}.hero-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;font-size:13px;font-weight:700}.hero-title{letter-spacing:-.02em;margin:0;font-size:36px;font-weight:800;line-height:1.15}.hero-race{color:var(--muted);margin-top:8px;font-size:15px}.countdown{display:flex;gap:22px;margin-top:22px}.countdown-unit{display:flex;flex-direction:column;align-items: center;min-width:48px}.countdown-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:30px;font-weight:800}.countdown-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:11px}.circuit-track{display:flex;flex-shrink:0;justify-content:center;align-items: center;width:140px;height:140px}.circuit-track img{object-fit:contain;filter:drop-shadow(0 0 12px #ffffff14);width:100%;height:100%}.section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:700}.weekend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:32px}.day-card{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}.day-card:hover{border-color:#333}.day-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:14px 16px 8px;font-size:12px;font-weight:700}.session-row{display:flex;justify-content:space-between;align-items: center;gap:10px;padding:9px 16px;transition:background .15s}.session-row:last-child{padding-bottom:14px}.session-row:hover{background:#ffffff08}.session-current{background:#e106001a}.session-current .session-label{color:var(--text);font-weight:700}.session-current .session-label:before{content:"";display:inline-block;background:var(--red);border-radius:50%;width:6px;height:6px;margin-right:8px}.session-label{color:var(--muted);font-size:13.5px}.session-time{display:flex;font-variant-numeric:tabular-nums;flex-shrink:0;align-items: center;gap:5px;font-size:13px;font-weight:700}.session-clock{color:var(--muted)}.tabs{display:flex;gap:6px;margin-bottom:14px}.tab{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:7px 14px;transition:all .15s;font-size:13px;font-weight:600}.tab:hover{color:var(--text);border-color:#3a3a3a}.tab.active{background:var(--text);border-color:var(--text);color:#000}.standings-table{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);overflow:hidden;margin-bottom:32px}.standing-row{display:flex;border-bottom:1px solid var(--border);animation:fadeIn .2s ease;align-items: center;gap:12px;padding:11px 16px;font-size:13.5px}.standing-row:last-child{border-bottom:none}.standing-pos{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;width:22px;font-weight:800}.team-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.driver-avatar{object-fit:cover;object-position:top center;transform-origin:top center;background:var(--panel-raised);border-radius:50%;flex-shrink:0;width:34px;height:34px;transform:scale(1.9)}.driver-avatar-fallback{display:flex;color:#000;justify-content:center;align-items: center;font-size:11px;font-weight:800}.team-badge{display:inline-flex;border-radius:7px;flex-shrink:0;justify-content:center;align-items: center;width:26px;height:26px;padding:4px}.team-badge-logo{object-fit:contain;filter:brightness(0)invert(1);width:100%;height:100%}.team-badge-fallback{color:#000;padding:0;font-size:9.5px;font-weight:800}.standing-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700}.standing-team{color:var(--muted);flex-shrink:0;font-size:12.5px}.standing-points{font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;padding-left:10px;font-weight:700}.info-banner{display:flex;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);align-items: flex-start;gap:12px;margin-bottom:18px;padding:16px 18px}.info-banner-icon{color:var(--muted);flex-shrink:0;margin-top:2px}.info-banner p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.info-banner strong{color:var(--text)}.broadcasters-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.broadcaster-card{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);display:flex;animation:fadeIn .2s ease;flex-direction:column;gap:14px;padding:16px;transition:border-color .15s,transform .15s,background .15s}.broadcaster-card:hover{background:var(--panel-raised);border-color:#333;transform:translateY(-2px)}.broadcaster-id{display:flex;align-items: center;gap:12px}.broadcaster-flag{flex-shrink:0;font-size:26px;line-height:1}.broadcaster-country{font-size:14.5px;font-weight:700}.broadcaster-channel{color:var(--muted);font-size:12.5px}.broadcaster-links-list{display:flex;border:1px solid var(--border);overflow:hidden;border-radius:10px;flex-direction:column}.broadcaster-link-row{display:flex;text-decoration:none;color:var(--text);border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;gap:8px;padding:10px 12px;transition:background .15s;font-size:12.5px;font-weight:600}.broadcaster-link-row:last-child{border-bottom:none}.broadcaster-link-row:hover{background:#ffffff0a}.broadcaster-link-row svg{color:var(--muted);flex-shrink:0}.vpn-row{display:flex;appearance:none;cursor:pointer;border:1px solid var(--border);color:var(--muted);background:var(--panel-raised);border-radius:10px;justify-content:center;align-items: center;gap:8px;padding:10px 12px;transition:all .15s;font-size:12.5px;font-weight:600}.vpn-row:hover{color:var(--text);background:#ffffff0d;border-color:#3a3a3a}.vpn-row svg{flex-shrink:0}.empty-hint{color:var(--muted);text-align:center;padding:20px 16px;font-size:13px}.footer{border-top:1px solid var(--border);color:var(--muted);margin-top:24px;padding-top:20px;font-size:12px;line-height:1.5}@media (max-width:900px){.weekend-grid{grid-template-columns:repeat(3,1fr)}.broadcasters-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.weekend-grid,.broadcasters-grid{grid-template-columns:1fr}.hero{text-align:center;flex-direction:column;align-items: center}.hero-main{display:flex;flex-direction:column;align-items: center;width:100%}.circuit-track{order:-1;width:150px;height:150px;margin-bottom:4px}.live-badge,.hero-eyebrow,.countdown{justify-content:center}}@media (max-width:640px){.app{padding:20px 16px 60px}.brand-tagline{display:none}.navbar-inner{padding:12px 16px}.calendar-btn{padding:8px 12px;font-size:11.5px}.hero{padding:24px 20px}.hero-title{word-wrap:break-word;font-size:25px}.hero-race{max-width:320px}.countdown{gap:10px;width:100%}.countdown-unit{flex:1;min-width:0}.countdown-value{font-size:23px}.session-row{padding:9px 14px}}@media (max-width:380px){.app{padding:16px 12px 50px}.hero-title{font-size:21px}.circuit-track{width:120px;height:120px}.countdown-value{font-size:20px}.countdown-label{font-size:10px}.drawer-row{gap:10px;padding:9px 14px}.drawer-track{width:34px;height:34px}.drawer-round{display:none}}
