:root{
  --bg:#090b0f;--panel:#11151b;--panel2:#171c24;--line:#2b333f;--muted:#9099a7;
  --text:#f5f7fa;--red:#ff1838;--red2:#b4001d;--green:#00d27a;--amber:#ffbf2f;--purple:#b97cff;
  --max:1480px;--radius:18px;--shadow:0 18px 55px rgba(0,0,0,.35)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,-apple-system,sans-serif;min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 80% 0%,rgba(255,24,56,.16),transparent 28%),linear-gradient(120deg,transparent 0 72%,rgba(255,255,255,.018) 72% 73%,transparent 73%);z-index:-1}
button,input{font:inherit}button{cursor:pointer}.shell{max-width:var(--max);margin:0 auto;padding:0 28px 60px}
.topbar{position:sticky;top:0;z-index:30;background:rgba(9,11,15,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.topbar-inner{max-width:var(--max);margin:auto;height:78px;padding:0 28px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.mark{width:42px;height:28px;position:relative;transform:skewX(-14deg)}.mark:before,.mark:after{content:"";position:absolute;left:0;right:0;height:8px;background:var(--red);border-radius:2px}.mark:before{top:2px}.mark:after{bottom:2px;width:72%}.brand strong{font-size:18px;letter-spacing:.5px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.nav{display:flex;gap:6px;overflow:auto;scrollbar-width:none;flex:1}.nav::-webkit-scrollbar{display:none}.nav button{border:0;color:#b9c1cc;background:transparent;padding:11px 14px;border-radius:10px;white-space:nowrap;font-weight:700}.nav button.active,.nav button:hover{color:#fff;background:#1b212a}.top-actions{display:flex;gap:8px}.ghost,.primary{border:1px solid var(--line);border-radius:11px;padding:10px 13px;color:#fff;background:#151a21;font-weight:700}.primary{background:var(--red);border-color:var(--red)}
.hero{margin-top:28px;min-height:330px;border:1px solid var(--line);border-radius:26px;overflow:hidden;position:relative;background:linear-gradient(115deg,#151a21 0%,#12151b 52%,#2a0710 100%);box-shadow:var(--shadow)}.hero:after{content:"";position:absolute;width:480px;height:480px;border:54px solid rgba(255,255,255,.035);border-radius:50%;right:-120px;top:-155px}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.35fr .65fr;min-height:330px}.hero-main{padding:46px 46px 34px}.eyebrow{color:var(--red);font-weight:900;letter-spacing:1.8px;text-transform:uppercase;font-size:12px}.hero h1{font-size:clamp(38px,5vw,72px);line-height:.98;margin:12px 0 16px;letter-spacing:-2px}.hero .fixture{font-size:18px;color:#d7dce4}.hero .sub{color:var(--muted);margin-top:8px}.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:38px}.stat{border-top:2px solid #495360;padding-top:12px}.stat b{font-size:28px;display:block}.stat span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.hero-side{border-left:1px solid rgba(255,255,255,.08);padding:38px 34px;display:flex;flex-direction:column;justify-content:center}.round-chip{font-size:70px;font-weight:950;letter-spacing:-4px;color:#fff}.round-chip span{color:var(--red)}.status-line{margin-top:8px;display:flex;align-items:center;gap:8px;font-weight:800}.dot{width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 14px var(--amber)}
.section{margin-top:34px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.section-head h2{margin:0;font-size:28px;letter-spacing:-.5px}.section-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.linkish{border:0;background:none;color:#fff;font-weight:800}.linkish:hover{color:var(--red)}
.grid-2{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.18)}.card-pad{padding:22px}.card-title{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}.card-title h3{margin:0;font-size:17px}.tag{font-size:11px;font-weight:900;border:1px solid #414b59;border-radius:999px;padding:5px 9px;color:#d8dde5}.tag.live{border-color:#6b202d;color:#ff7286;background:#301018}
.table-wrap{overflow:auto}.standings{width:100%;border-collapse:collapse;min-width:620px}.standings th{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:#7f8997;text-align:left;padding:12px 14px;background:#0f1318;position:sticky;top:0}.standings td{padding:13px 14px;border-top:1px solid #252c36;font-size:13px}.standings tr:hover td{background:#171d25}.pos{font-size:18px;font-weight:950;width:48px}.driver-cell{display:flex;align-items:center;gap:11px}.num{min-width:38px;height:27px;border-radius:7px;background:#242c36;display:flex;align-items:center;justify-content:center;font-weight:950;font-style:italic}.driver-name{font-weight:850}.tiny{font-size:10px;color:var(--muted);margin-top:2px}.pts{font-size:18px;font-weight:950;text-align:right}.muted{color:var(--muted)}
.race-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.result-tile{background:#0d1116;border:1px solid #2a313b;border-radius:15px;padding:17px;min-height:116px;position:relative;overflow:hidden}.result-tile:after{content:"";position:absolute;width:65px;height:65px;border:12px solid rgba(255,255,255,.025);border-radius:50%;right:-12px;bottom:-18px}.result-tile .label{font-size:10px;color:#8d96a4;text-transform:uppercase;letter-spacing:1px;font-weight:900}.result-tile .winner{font-size:20px;font-weight:950;margin-top:13px}.result-tile .empty{color:#66707f;font-weight:800;margin-top:13px}.accent-red{border-top:3px solid var(--red)}.accent-orange{border-top:3px solid var(--amber)}.accent-purple{border-top:3px solid var(--purple)}.accent-green{border-top:3px solid var(--green)}
.calendar-strip{display:flex;gap:11px;overflow:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.race-mini{min-width:230px;background:#12171e;border:1px solid var(--line);border-radius:15px;padding:15px;scroll-snap-align:start}.race-mini.current{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.race-mini .r-code{font-size:11px;color:var(--red);font-weight:950}.race-mini h4{margin:7px 0 5px;font-size:15px}.race-mini p{margin:0;color:#8f98a6;font-size:11px}.race-mini .state{margin-top:15px;font-size:10px;text-transform:uppercase;font-weight:900;color:#657080}.race-mini.current .state{color:#ff6d82}
.page{display:none}.page.active{display:block}.page-title{margin:34px 0 20px}.page-title h1{font-size:42px;margin:0}.page-title p{color:var(--muted);margin:8px 0 0}.driver-grid,.team-grid,.calendar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.driver-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#171d25,#0f1318);padding:20px;min-height:180px;position:relative;overflow:hidden}.driver-card .big-num{font-size:54px;font-weight:950;font-style:italic;color:#303946;position:absolute;right:13px;top:8px}.driver-card h3{margin:52px 0 4px;font-size:20px}.driver-card p{margin:0;color:var(--muted);font-size:12px}.metrics{display:flex;gap:18px;margin-top:18px}.metrics b{display:block;font-size:16px}.metrics span{font-size:9px;color:#727d8c;text-transform:uppercase}.team-card{padding:21px;border:1px solid var(--line);border-radius:18px;background:#12171d;min-height:165px}.team-card h3{margin:5px 0 2px}.team-card .team-id{color:var(--red);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:1px}.team-card .pair{margin-top:18px;display:flex;gap:7px;flex-wrap:wrap}.pill{padding:6px 9px;border-radius:9px;background:#202731;font-size:11px;font-weight:800}.team-card .team-pts{float:right;font-size:28px;font-weight:950}
.calendar-card{padding:17px;border:1px solid var(--line);border-radius:16px;background:#11161d;min-height:140px}.calendar-card.current{border-color:var(--red);background:linear-gradient(145deg,#19151a,#2a0b12)}.calendar-card .round{font-size:11px;color:var(--red);font-weight:950}.calendar-card h3{font-size:15px;margin:11px 0 6px}.calendar-card p{margin:0;color:#858f9d;font-size:11px;line-height:1.5}.calendar-card .flag{height:4px;width:38px;background:var(--red);margin-top:18px;transform:skewX(-22deg)}
.race-center-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.race-board{background:#11161d;border:1px solid var(--line);border-radius:18px;overflow:hidden}.race-board h3{margin:0;padding:16px 18px;border-bottom:1px solid var(--line);font-size:15px}.race-board ol{list-style:none;padding:0;margin:0}.race-board li{display:grid;grid-template-columns:32px 1fr auto;gap:8px;padding:11px 16px;border-top:1px solid #222a33;font-size:12px}.race-board li:first-child{border-top:0}.race-board .empty-row{display:block;color:#697483;text-align:center;padding:32px 10px}.control-log{margin-top:18px;border:1px solid var(--line);border-radius:16px;background:#0f141a;padding:16px}.control-log h3{margin:0 0 12px;font-size:14px}.control-item{padding:10px 12px;background:#161c24;border-left:3px solid var(--red);margin-top:8px;border-radius:6px;font-size:12px;color:#bfc6d0}
.rules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rule-card{padding:18px;border:1px solid var(--line);border-radius:16px;background:#12171e}.rule-card b{font-size:12px;color:var(--red);display:block;margin-bottom:8px}.rule-card p{font-size:12px;color:#adb5c1;line-height:1.65;margin:0}
.footer{margin-top:48px;border-top:1px solid var(--line);padding:24px 0;color:#737d8b;font-size:11px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.toast{position:fixed;right:22px;bottom:22px;z-index:100;background:#fff;color:#0b0d10;padding:12px 15px;border-radius:12px;font-size:12px;font-weight:800;box-shadow:0 14px 40px rgba(0,0,0,.35);transform:translateY(120px);opacity:0;transition:.25s}.toast.show{transform:translateY(0);opacity:1}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:50;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-box{width:min(620px,100%);background:#14191f;border:1px solid #39424f;border-radius:20px;padding:24px;box-shadow:var(--shadow)}.modal-box h2{margin-top:0}.modal-box p,.modal-box li{color:#aab3bf;font-size:12px;line-height:1.6}.modal-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.file-label{display:inline-flex;align-items:center;border-radius:11px;padding:10px 13px;background:var(--red);font-weight:850}.file-label input{display:none}
@media(max-width:1050px){.driver-grid,.team-grid,.calendar-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.hero-grid{grid-template-columns:1fr}.hero-side{border-left:0;border-top:1px solid rgba(255,255,255,.08);padding:22px 46px}.round-chip{font-size:44px}.race-center-grid,.rules-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.shell{padding:0 14px 40px}.topbar-inner{height:auto;min-height:68px;padding:10px 14px;flex-wrap:wrap;gap:7px}.brand{width:100%}.nav{order:3;width:100%}.top-actions{position:absolute;right:14px;top:13px}.top-actions .ghost{display:none}.hero{margin-top:16px}.hero-main{padding:30px 23px}.hero-side{padding:20px 23px}.hero h1{font-size:44px}.hero-stats{grid-template-columns:repeat(2,1fr)}.driver-grid,.team-grid,.calendar-grid,.race-center-grid,.rules-grid{grid-template-columns:1fr}.section-head h2{font-size:23px}.page-title h1{font-size:34px}.race-summary{grid-template-columns:1fr 1fr}.ghost,.primary{padding:9px 10px;font-size:12px}}
/* V0.3 interactive additions */
.result-tile,.race-mini,.calendar-card,.driver-card,.team-card{color:inherit;text-align:left;font:inherit;cursor:pointer}.result-tile{width:100%}.result-tile:hover,.driver-card:hover,.team-card:hover,.calendar-card:hover,.race-mini:hover{transform:translateY(-2px);border-color:#586373;box-shadow:0 16px 38px rgba(0,0,0,.24)}
.result-tile,.driver-card,.team-card,.calendar-card,.race-mini{transition:transform .18s,border-color .18s,box-shadow .18s;background-color:transparent}
.hero-time{display:flex;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}.hero-time span{font-size:13px;font-weight:950;color:var(--red)}.hero-time b{font-size:13px}.hero-time small{font-size:10px;color:#9da6b3;border:1px solid #39424e;border-radius:999px;padding:4px 8px}.race-jump{margin-top:22px;border:1px solid #4a2028;background:#2c1016;color:#fff;border-radius:10px;padding:10px 13px;font-weight:900;width:max-content}.race-jump:hover{background:var(--red)}
.click-row{cursor:pointer}.click-row:hover td{background:#1b222c!important}.calendar-time{margin-top:9px;font-size:10px;color:#c4cad3;font-weight:750}.race-date-badge{float:right;margin-top:-2px;font-size:12px;font-weight:950;color:#fff;background:#242c36;padding:4px 7px;border-radius:7px}.calendar-card.current .race-date-badge,.race-mini.current .race-date-badge{background:var(--red)}
.segmented{display:flex;gap:8px;margin:0 0 16px;overflow:auto}.segmented button{border:1px solid var(--line);background:#11161d;color:#929ba8;padding:9px 14px;border-radius:999px;font-weight:850;white-space:nowrap}.segmented button.active,.segmented button:hover{color:#fff;border-color:var(--red);background:#2c1016}
.race-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.round-control{display:flex;align-items:center;gap:8px}.round-control button,.round-control select,.compare-panel select{background:#141a21;color:#fff;border:1px solid #343e4b;border-radius:10px;padding:10px 12px;font-weight:800}.round-control select{max-width:290px}.round-control button:disabled{opacity:.25;cursor:not-allowed}.race-date-line{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap;font-size:11px;color:#aab3be}.race-date-line b{color:#fff}.race-date-line em{font-style:normal;color:var(--red);font-weight:850}.result-click{cursor:pointer}.result-click:hover{background:#18202a}
.reg-state{position:absolute;left:20px;top:48px;font-size:9px;border-radius:999px;padding:4px 7px;background:#3a1d22;color:#ff8d9e;font-weight:850}.reg-state.ok{background:#123124;color:#70e4ac}.driver-card{width:100%;border-width:1px}.team-card{width:100%;border-width:1px}.compare-panel{display:grid;grid-template-columns:auto minmax(150px,1fr) auto minmax(150px,1fr) auto;gap:10px;align-items:center;background:#11161d;border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px}.compare-panel h3{margin:4px 0 0}.vs{font-weight:950;color:var(--red)}.compare-result{grid-column:1/-1;margin-top:4px;border-top:1px solid var(--line);padding-top:12px}.compare-result:empty{display:none}.compare-name,.compare-line{display:grid;grid-template-columns:1fr 90px 1fr;gap:10px;align-items:center;text-align:center}.compare-name{font-size:15px;margin-bottom:7px}.compare-name span{color:var(--red);font-weight:950}.compare-line{padding:7px 0;border-top:1px solid #202832}.compare-line span{font-size:10px;color:#858f9d;text-transform:uppercase}.compare-line b{font-size:18px}.compare-line b.lead{color:var(--green)}
.detail-box{position:relative;width:min(720px,100%)}.modal-x{position:absolute;right:16px;top:14px;border:0;background:#252d37;color:#fff;width:34px;height:34px;border-radius:50%;font-size:20px}.profile-head{display:flex;align-items:center;gap:18px;margin:14px 0 18px}.profile-head h2{font-size:34px;margin:0}.profile-head p{margin:4px 0 0}.profile-num{font-size:64px;line-height:1;font-weight:950;font-style:italic;color:var(--red);min-width:100px}.team-symbol{width:84px;height:84px;border-radius:18px;background:#222a34;display:grid;place-items:center;font-size:24px;font-weight:950;color:var(--red)}.profile-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.profile-stats div{background:#0e1318;border:1px solid #28313c;border-radius:12px;padding:12px}.profile-stats b{display:block;font-size:22px}.profile-stats span{font-size:9px;color:#7f8997}.profile-note{margin-top:12px;padding:10px 12px;border-left:3px solid var(--amber);background:#241f11;color:#e5c971;font-size:11px}.profile-note.ok{border-color:var(--green);background:#10251c;color:#8fe4b7}.detail-sub{margin:20px 0 10px}.history-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.history-list button,.team-driver-detail button{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #2c3541;background:#11171e;color:#fff;border-radius:11px;padding:11px;text-align:left}.history-list button:hover,.team-driver-detail button:hover{border-color:var(--red)}.history-list span{font-size:11px;color:#9ba4b0}.empty-detail{padding:18px;background:#0f141a;border-radius:12px;color:#7d8795;font-size:12px}.team-driver-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team-driver-detail button{justify-content:flex-start}.team-driver-detail b{display:block}.team-driver-detail small{display:block;color:#8e98a5;margin-left:auto}.profile-small-num{font-size:24px;font-weight:950;font-style:italic;color:var(--red);min-width:42px}
@media(max-width:720px){.race-title-row{display:block}.round-control{margin-top:16px}.round-control select{flex:1;min-width:0}.compare-panel{grid-template-columns:1fr auto 1fr}.compare-panel>div:first-child{grid-column:1/-1}.compare-panel .primary{grid-column:1/-1}.compare-result{grid-column:1/-1}.profile-stats{grid-template-columns:repeat(3,1fr)}.team-driver-detail,.history-list{grid-template-columns:1fr}.profile-head h2{font-size:28px}.profile-num{font-size:52px;min-width:76px}.calendar-grid{grid-template-columns:1fr}.calendar-card{min-height:130px}.hero-time{margin-top:13px}}

/* V0.4 immersive race hub */
.topbar-inner{justify-content:space-between}.nav{justify-content:flex-end}.fixture-label,.host-mini,.race-host span{font-size:9px;letter-spacing:1.4px;font-weight:950;color:#6f7987;text-transform:uppercase}.fixture-label{margin-top:2px;margin-bottom:5px}.race-host{display:flex;align-items:center;gap:9px;margin-top:8px}.race-host b{font-size:13px;color:#d9dee6}.round-actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.share-btn{border:1px solid #343e4b;background:#11161c;color:#bec6d1;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:850;white-space:nowrap}.share-btn:hover{color:#fff;border-color:#657080;background:#1a2028}
.team-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--team-color,#999);box-shadow:0 0 10px color-mix(in srgb,var(--team-color,#999) 55%,transparent);margin-right:7px;vertical-align:1px}.num{border-left:2px solid var(--team-color,#4b5665)}
.branded-card{position:relative;isolation:isolate}.branded-card>*:not(.team-backdrop):not(.team-accent){position:relative;z-index:2}.team-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.team-backdrop img{position:absolute;width:82%;max-height:88%;object-fit:contain;right:-6%;top:-8%;opacity:.085;filter:grayscale(1) invert(1) brightness(1.12) contrast(1.14);mix-blend-mode:screen}.team-backdrop.has-logo .team-mark-fallback{display:none}.team-backdrop.logo-missing .team-mark-fallback{display:block}.team-mark-fallback{display:none;position:absolute;right:4%;bottom:4%;font-size:clamp(72px,8vw,122px);font-weight:1000;font-style:italic;letter-spacing:-6px;line-height:1;color:var(--team-color,#fff);opacity:.05;white-space:nowrap}.team-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--team-color,#999);z-index:3;opacity:.9}.driver-card,.team-card{background:linear-gradient(145deg,#171d25,#0f1318)}.driver-card:hover,.team-card:hover{box-shadow:0 16px 42px color-mix(in srgb,var(--team-color,#000) 12%,rgba(0,0,0,.3));border-color:color-mix(in srgb,var(--team-color,#8892a0) 52%,#303844)}.driver-card .big-num{z-index:1;color:color-mix(in srgb,var(--team-color,#657080) 26%,#303946)}.driver-card h3{margin-top:52px}.driver-card .eyebrow,.team-card .team-id{color:var(--team-color,#ff1838)}.team-card{overflow:hidden}.team-card h3{font-size:21px;margin-top:7px}.team-card .team-pts{position:relative;z-index:2}.pill{border:1px solid color-mix(in srgb,var(--team-color,#596270) 22%,#28313a)}

.page-title p{max-width:760px}.calendar-card,.race-mini{position:relative}.host-mini{margin-top:10px;margin-bottom:3px}.calendar-card p,.race-mini p{color:#b3bbc6}.calendar-time{font-weight:850}.calendar-card .flag{background:linear-gradient(90deg,var(--red),transparent)}

.position-section{margin-top:24px}.position-card{border:1px solid var(--line);background:linear-gradient(180deg,#11161d,#0c1015);border-radius:18px;overflow:auto;min-height:180px}.position-empty{display:grid;place-items:center;min-height:180px;padding:30px;color:#707b89;font-size:12px;text-align:center}.position-svg{display:block;width:100%;min-width:820px;height:auto;padding:8px 0}.position-guide{stroke:#202832;stroke-width:1;stroke-dasharray:3 7}.position-line path{fill:none;stroke:var(--line-color);stroke-width:3;opacity:.58;transition:stroke-width .18s,opacity .18s}.position-line circle{fill:var(--line-color);opacity:.9}.position-line:hover path{stroke-width:6;opacity:1}.position-line:hover .driver-label{fill:#fff}.axis-title{fill:#7b8593;font-size:11px;font-weight:900;letter-spacing:2px}.pos-label{fill:#596473;font-size:10px;font-weight:800}.driver-label{fill:#aeb7c2;font-size:10px;font-weight:850}.delta-label{font-size:10px;font-weight:950}.delta-label.gain{fill:#00d27a}.delta-label.loss{fill:#ff667d}
.control-item{line-height:1.55}.control-item:first-child{border-left-color:#fff;color:#e7ebf0}

.detail-box{overflow:hidden;max-height:min(88vh,820px);overflow-y:auto}.profile-shell{position:relative;isolation:isolate;padding:2px}.profile-shell>*:not(.team-backdrop):not(.team-accent){position:relative;z-index:2}.profile-shell>.team-backdrop{inset:-24px}.profile-shell>.team-backdrop img{width:86%;right:-10%;top:-6%;bottom:auto;opacity:.1}.profile-shell>.team-backdrop .team-mark-fallback{font-size:150px;right:2%;bottom:2%;opacity:.042}.profile-shell>.team-accent{left:-24px;top:-24px;bottom:-24px;width:4px}.profile-num{color:var(--team-color,var(--red));text-shadow:0 0 32px color-mix(in srgb,var(--team-color,var(--red)) 18%,transparent)}.constructor-head .team-symbol,.team-symbol{background:color-mix(in srgb,var(--team-color,#fff) 12%,#1d242d);border:1px solid color-mix(in srgb,var(--team-color,#fff) 28%,#303844);color:var(--team-color,#fff);font-size:19px;letter-spacing:-1px}.profile-stats div{background:rgba(14,19,24,.82);backdrop-filter:blur(4px)}.profile-secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.profile-secondary div{background:rgba(17,23,30,.78);border:1px solid #27303a;border-radius:11px;padding:10px 12px}.profile-secondary b{display:block;font-size:17px}.profile-secondary span{font-size:8px;color:#7d8794;letter-spacing:.8px}.detail-title-row{display:flex;align-items:end;justify-content:space-between;gap:12px}.detail-title-row .detail-sub{margin-bottom:10px}.history-list{grid-template-columns:repeat(5,minmax(0,1fr))}.history-list button{display:block;text-align:left;min-width:0}.history-list button b{display:block;color:var(--team-color,#fff);margin-bottom:4px}.history-list button span{white-space:nowrap}.team-driver-detail button{background:rgba(17,23,30,.84)}.team-driver-detail .profile-small-num{color:var(--team-color,var(--red))}

@media(max-width:1050px){.nav{justify-content:flex-start}.history-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.round-actions{align-items:stretch;margin-top:16px}.share-btn{align-self:flex-start}.race-host{flex-wrap:wrap}.history-list{grid-template-columns:repeat(2,1fr)}.profile-secondary{grid-template-columns:repeat(3,1fr)}.team-backdrop img{width:100%;right:-18%;top:-4%;bottom:auto;opacity:.06}.position-svg{min-width:760px}.driver-card h3{margin-top:48px}.topbar-inner{padding-bottom:8px}.nav{order:2}.profile-shell>.team-backdrop .team-mark-fallback{font-size:118px;right:4%;bottom:4%}.detail-title-row{align-items:center}.detail-title-row .share-btn{font-size:9px}}

/* ===== V0.5 · Season Race Hub ===== */
.team-backdrop img{width:58%;height:92%;max-height:none;right:1%;top:-12%;bottom:auto;object-fit:contain;object-position:right top;opacity:.095;filter:grayscale(1) invert(1) brightness(1.3) contrast(1.05);mix-blend-mode:screen}
.profile-shell>.team-backdrop img{width:62%;height:88%;right:-1%;top:-10%;bottom:auto;opacity:.12}
.team-backdrop .team-mark-fallback{display:none!important}
.team-backdrop.icon-ferrari img{width:40%;height:106%;right:4%;top:-11%}
.team-backdrop.icon-mercedes img{width:42%;right:3%;top:-8%}
.team-backdrop.icon-audi img{width:61%;right:-1%;top:-8%}
.team-backdrop.icon-mclaren img{width:54%;right:1%;top:-6%}
.team-backdrop.icon-williams img{width:48%;right:2%;top:-6%}
.team-backdrop.icon-aston img{width:62%;right:-2%;top:-3%}
.team-backdrop.icon-redbull img{width:56%;right:0;top:-7%}
.team-backdrop.icon-cadillac img{width:42%;right:4%;top:-7%}

.ops-grid{display:grid;grid-template-columns:1.08fr 1.15fr .9fr;gap:14px}.ops-card{min-height:185px}.next-name{font-size:24px;font-weight:950;letter-spacing:-.5px}.next-fixture{margin-top:6px;color:#aeb8c5;font-weight:750}.countdown{margin-top:23px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:clamp(30px,4vw,52px);font-weight:1000;letter-spacing:-2px;line-height:1;font-variant-numeric:tabular-nums}.countdown-day{display:inline-block;min-width:84px;color:#fff}.countdown-clock{display:inline-block;min-width:238px;color:var(--red);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;letter-spacing:-2.5px}.notice-list{padding:7px 16px 14px}.notice-item{padding:12px 0;border-bottom:1px solid #252d37}.notice-item:last-child{border-bottom:0}.notice-date{font-size:9px;color:#778291;font-weight:900;letter-spacing:1.3px}.notice-title{font-size:12px;font-weight:950;margin-top:4px}.notice-text{font-size:11px;color:#a9b2be;line-height:1.55;margin-top:3px}.fastest-hero{display:flex;align-items:flex-end;gap:13px;min-height:100px}.fastest-num{font-size:58px;line-height:.8;font-weight:1000;color:var(--team-color,#aab3bf);letter-spacing:-5px}.fastest-meta b{display:block;font-size:21px}.fastest-meta span{display:block;color:#9ba6b3;font-size:11px;margin-top:5px}.fastest-player{margin-top:13px;padding-top:11px;border-top:1px solid #2a323c;color:#c9d0d9;font-size:11px}.fastest-empty{display:grid;place-items:center;min-height:112px;color:#788391;text-align:center;font-size:12px}

.season-state{display:none}.season-state.visible{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(255,24,56,.09),transparent)}.season-state.page-state.visible{display:block;border:1px solid var(--line);border-radius:14px;margin-bottom:14px}.season-state b{font-size:12px;letter-spacing:1.5px}.season-state span{font-size:10px;color:#96a1ae}.season-state.page-state b{display:block;font-size:16px;margin-bottom:4px}.season-state.page-state span{display:block}

.chart-card{padding:14px;overflow:auto}.trend-wrap{min-width:680px}.trend-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.trend-head b{font-size:12px}.trend-legend{display:flex;gap:11px;flex-wrap:wrap;justify-content:flex-end}.trend-key{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:#a5afbc;background:transparent;border:0;padding:3px 4px;border-radius:6px;cursor:pointer}.trend-key:hover{color:#fff;background:#1b222b}.trend-dot{width:7px;height:7px;border-radius:50%;background:var(--c)}.trend-svg{display:block;width:100%;min-width:680px;height:auto}.trend-grid{stroke:#252e39;stroke-width:1}.trend-axis{fill:#697584;font-size:9px;font-weight:800}.trend-line{fill:none;stroke:var(--c);stroke-width:3;opacity:.92}.trend-point{fill:var(--c)}.trend-label{fill:#b9c2cc;font-size:9px;font-weight:850}.chart-empty{min-height:190px;display:grid;place-items:center;color:#75808e;text-align:center;font-size:12px}

.record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.record-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#171d25,#0e1217);padding:17px;min-height:138px}.record-card .eyebrow{margin-bottom:15px}.record-main{font-size:28px;font-weight:1000;letter-spacing:-1px}.record-sub{margin-top:5px;color:#9aa5b2;font-size:11px}.record-value{position:absolute;right:15px;bottom:12px;font-size:42px;font-weight:1000;color:#fff;opacity:.1}.records-history{margin-top:28px}.winner-history{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.winner-chip{background:#11161d;border:1px solid #29323d;border-radius:12px;padding:12px;text-align:left;color:#fff}.winner-chip .tiny{margin-top:5px}.winner-chip b{display:block;margin-top:3px}

.career-card{margin-top:13px;border:1px solid #2a333e;border-radius:13px;background:rgba(14,19,24,.78);padding:13px}.career-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.career-title b{font-size:11px;letter-spacing:1.5px}.career-season{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center}.career-season strong{font-size:17px}.career-season span{color:#9ba6b3;font-size:10px}.career-season em{font-style:normal;font-size:12px;font-weight:900;color:var(--team-color,#fff)}
.team-performance{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}.team-performance div{border:1px solid #2a333e;border-radius:11px;background:rgba(14,19,24,.76);padding:10px}.team-performance b{display:block;font-size:17px}.team-performance span{font-size:8px;color:#7f8a98;letter-spacing:.8px}
.constructor-head .team-symbol{width:88px;height:64px;border:0;background:transparent;padding:0}.constructor-head .team-symbol img{width:100%;height:100%;object-fit:contain;filter:grayscale(1) invert(1) brightness(1.25);opacity:.9}

@media(max-width:1050px){.ops-grid{grid-template-columns:1fr 1fr}.ops-card.fastest-card{grid-column:1/-1}.record-grid{grid-template-columns:repeat(2,1fr)}.winner-history{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.ops-grid{grid-template-columns:1fr}.ops-card.fastest-card{grid-column:auto}.record-grid{grid-template-columns:1fr 1fr}.winner-history{grid-template-columns:repeat(2,1fr)}.team-backdrop img{width:72%;height:95%;right:-8%;top:-8%;opacity:.065}.team-backdrop.icon-ferrari img{width:50%;right:2%}.profile-shell>.team-backdrop img{width:78%;opacity:.085}.career-season{grid-template-columns:60px 1fr}.career-season em{grid-column:2}.countdown{font-size:38px}.ops-card{min-height:0}}
@media(max-width:480px){.record-grid{grid-template-columns:1fr}.winner-history{grid-template-columns:1fr 1fr}.team-performance{grid-template-columns:1fr 1fr}.trend-wrap,.trend-svg{min-width:620px}}

/* V0.5.1 real-world logo pass: use verified online team marks, no hand-drawn SVGs. */
.team-backdrop img{filter:none!important;opacity:.105!important;image-rendering:auto}
.profile-shell>.team-backdrop img{opacity:.135!important}
.constructor-head .team-symbol img{filter:none!important;opacity:.95}
.team-backdrop.icon-ferrari img{filter:none!important;width:38%!important;height:104%!important;right:5%!important;top:-3%!important;object-fit:contain!important}
.constructor-head .team-symbol img[src*="kindpng"]{filter:grayscale(1) invert(1) brightness(1.2)!important}
.team-backdrop.icon-mercedes img{width:38%!important;right:5%!important;top:-3%!important}
.team-backdrop.icon-audi img{width:58%!important;right:0!important;top:-2%!important}
.team-backdrop.icon-mclaren img{width:48%!important;right:3%!important;top:0!important}
.team-backdrop.icon-williams img{width:43%!important;right:4%!important;top:0!important}
.team-backdrop.icon-aston img{width:58%!important;right:0!important;top:0!important}
.team-backdrop.icon-redbull img{width:54%!important;right:1%!important;top:-2%!important}
.team-backdrop.icon-cadillac img{width:39%!important;right:5%!important;top:-2%!important}
@media(max-width:720px){
  .team-backdrop img{opacity:.075!important}
  .profile-shell>.team-backdrop img{opacity:.105!important}
  .team-backdrop.icon-ferrari img{width:48%!important;right:2%!important}
}

/* V0.6 interaction polish */
.position-line{cursor:pointer;transition:opacity .16s ease}
.position-line path{transition:stroke-width .16s ease,opacity .16s ease}
.position-line:hover path{stroke-width:5!important;opacity:1!important}
.position-line:hover .driver-label{fill:#fff!important;font-weight:950}
.position-svg:has(.position-line:hover) .position-line:not(:hover){opacity:.24}
.trend-series{cursor:pointer;transition:opacity .16s ease}
.trend-series .trend-line{transition:stroke-width .16s ease,opacity .16s ease}
.trend-series:hover .trend-line{stroke-width:5}
.trend-svg:has(.trend-series:hover) .trend-series:not(:hover){opacity:.18}
.countdown + .tiny{margin-top:8px;line-height:1.5}
@media(max-width:720px){
  .countdown{gap:7px}
  .countdown-day{min-width:68px}
  .countdown-clock{min-width:190px;letter-spacing:-2px}
}

/* V0.6.1 calendar deadline hierarchy */
.calendar-deadline{margin:12px 0 8px;padding:8px 0;border-top:1px solid #252e38;border-bottom:1px solid #252e38}
.calendar-deadline span,.calendar-info-row span{display:block;font-size:8px;letter-spacing:1.2px;font-weight:950;color:#707b89}
.calendar-deadline b,.calendar-info-row b{display:block;margin-top:3px;font-size:11px;color:#d8dde5}
.calendar-info-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0 9px;padding:10px 0;border-top:1px solid #252e38;border-bottom:1px solid #252e38;text-align:left}
.calendar-info-row>div+div{border-left:1px solid #29323c;padding-left:10px}
.calendar-info-row>div:first-child b,.calendar-deadline b{color:#ff4259}
.tbc{color:#727d8b;font-size:10px;font-weight:900;letter-spacing:1px}
@media(max-width:720px){.calendar-info-row{grid-template-columns:1fr}.calendar-info-row>div+div{border-left:0;padding-left:0;border-top:1px solid #252e38;padding-top:8px}}

/* V0.6.2 full-calendar polish */
.calendar-info-row b,.calendar-deadline b{font-variant-numeric:tabular-nums}
.calendar-card .calendar-info-row{min-height:54px}
.race-mini .calendar-deadline{min-height:42px}
