.race-mast .mast-main{background:radial-gradient(circle at 88% 12%,rgba(255,212,0,.15),transparent 31%),linear-gradient(145deg,rgba(61,163,90,.14),transparent 58%),var(--ink2)}.race-mast .mast-main:after{content:"32";font-size:15rem;right:-10px;bottom:-72px;color:rgba(255,255,255,.035)}
.race-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 28px}.race-card{min-height:190px;padding:20px;border:1px solid var(--line);border-radius:15px;background:#111512;color:#fff;text-align:left;cursor:pointer}.race-card:hover,.race-card.active{border-color:var(--green);background:linear-gradient(145deg,rgba(61,163,90,.11),transparent 65%),#111512}.race-card small,.race-card strong,.race-card span{display:block}.race-card small{color:var(--bright);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.race-card strong{margin-top:24px;font-size:1.25rem;line-height:1.05}.race-card span{margin-top:10px;color:var(--muted);font-size:.78rem}.race-card b{display:inline-block;margin-top:15px;color:var(--yellow);font-size:.78rem}
.race-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:17px}.race-head h2{margin:7px 0;font-size:clamp(2rem,4vw,3.6rem);line-height:.95;letter-spacing:-.055em}.race-head p{margin:0;color:var(--muted);max-width:760px}.cut-card{min-width:250px;padding:16px;border:1px solid rgba(255,212,0,.35);border-radius:13px;background:#17170f}.cut-card small,.cut-card strong,.cut-card span{display:block}.cut-card small{color:#aaa56f;font-size:.67rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.cut-card strong{margin-top:4px;color:var(--yellow);font-size:1.12rem}.cut-card span{margin-top:4px;color:var(--muted);font-size:.76rem}
.controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.controls label{display:grid;gap:5px;color:#9fa8a1;font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.controls input,.controls select{min-height:44px;border:1px solid var(--line);border-radius:9px;background:#0d100e;color:#fff;padding:0 12px}.controls input{width:min(330px,76vw)}.sub-switch{display:none;padding:4px;border:1px solid var(--line);border-radius:11px;background:#0d100e}.sub-switch.visible{display:flex}.sub-switch button{border:0;border-radius:8px;background:transparent;color:#aeb7b0;padding:10px 13px;font-weight:850;cursor:pointer}.sub-switch button.active{background:var(--green);color:#071008}
.race-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel);max-height:730px}.race-table{min-width:880px;border-collapse:separate;border-spacing:0}.race-table thead{position:sticky;top:0;z-index:4;background:#111512}.race-table tbody tr:hover{background:#1a211c}.race-table tbody tr.cut td{border-top:2px solid rgba(255,212,0,.55)}.rank{color:var(--yellow);font-weight:950}.player-link{font-weight:900}.player-link:hover{color:var(--bright)}.status{display:inline-flex;padding:5px 8px;border:1px solid #3d473f;border-radius:999px;color:#aab3ac;font-size:.7rem;font-weight:850;white-space:nowrap}.status.in{border-color:rgba(61,163,90,.55);color:#86daa0;background:rgba(61,163,90,.08)}.status.out{border-color:rgba(214,93,79,.4);color:#dca49d}.status.route{border-color:rgba(255,212,0,.4);color:var(--yellow)}.money{font-weight:900}.gap.positive{color:#84d99a}.gap.negative{color:#dc9a91}.route-list{max-width:480px;color:#ccd3cd;font-size:.8rem}.projection{color:#aeb7b0;font-size:.78rem;white-space:nowrap}.projection strong{color:#fff}.scope-note{color:var(--muted);font-size:.82rem}.explain{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.explain article{padding:20px;border:1px solid var(--line);border-radius:14px;background:#111512}.explain b{display:block;color:var(--yellow)}.explain strong{display:block;margin-top:7px}.explain p{margin:7px 0 0;color:var(--muted);font-size:.83rem}.warning{margin-top:15px;padding:20px;border-left:3px solid var(--yellow);background:#17170f;color:#c7cec8}.empty{text-align:center!important;color:var(--muted);padding:35px!important}
@media(max-width:980px){.race-grid{grid-template-columns:1fr 1fr}.explain{grid-template-columns:1fr 1fr}.race-head{display:block}.cut-card{margin-top:16px;min-width:0}.race-mast .mast-main:after{font-size:9rem}}@media(max-width:620px){.race-grid,.explain{grid-template-columns:1fr}.race-card{min-height:155px}.race-card strong{margin-top:16px}}
