:root{--accent:#7ae5ff;--amber:#ffbb80;--cyan:#71e6ff;--bone:#f0f4f5}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}#c{outline:none}#loading{position:fixed;inset:0;background:#0a101b;display:grid;place-content:center;text-align:center;z-index:100;color:#b9e3eb;font-size:15px;line-height:2}#loading[hidden]{display:none}#loading a{color:#7ae5ff}#menu{display:grid;grid-template-columns:1fr 420px;grid-template-rows:70px 1fr;gap:0 45px;padding:0 4vw 30px;background:linear-gradient(90deg,#06101bbb,transparent 65%),linear-gradient(0deg,#080d19d9,transparent 45%);overflow-y:auto;touch-action:pan-y}#menu[hidden]{display:none}#menu:before,#menu:after{display:none}.club-nav{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6eaff25;z-index:2}.club-brand{text-decoration:none;color:#f3f7f8;font-weight:900;font-size:17px;letter-spacing:3px}.club-brand span{color:#7ae5ff}.club-nav>div{display:flex;gap:12px;align-items:center}.club-nav a:not(.club-brand){font-size:11px;color:#bac8d5;text-decoration:none;margin-right:10px}.club-nav .ghost{background:#0d1b2e80;border-color:#d6eaff25;border-radius:7px;font-size:11px!important}.menu-copy{grid-column:1;grid-row:2;align-self:start;margin-top:43px;pointer-events:none}.club-kicker{font-size:10px;letter-spacing:3px;color:#accee0;display:flex;align-items:center;gap:9px}.club-kicker i{width:6px;height:6px;background:#80edff;border-radius:50%;box-shadow:0 0 12px #7ae5ff}#menu h1{font-size:clamp(58px,7vw,100px);font-style:italic;font-weight:950;letter-spacing:-5px;line-height:1;margin:24px 0 18px;text-shadow:0 5px 35px #0008}#menu h1 span{color:#76e5ff}#menu .menu-copy p{font-size:15px;letter-spacing:2px;color:#d4dfe8}.drive-facts{display:flex;gap:22px;margin-top:24px}.drive-facts>span{font-size:11px;letter-spacing:1px;color:#eaf4f9;font-weight:800}.drive-facts small{display:block;font-size:10px;font-weight:400;letter-spacing:1px;color:#a9bbc8;margin-top:8px}.garage{grid-column:2;grid-row:2;margin-top:25px;background:linear-gradient(130deg,#122032ed,#090f1de8);border:1px solid #c7e8ff29;border-radius:15px;padding:22px;box-shadow:0 20px 80px #0005;backdrop-filter:blur(15px);align-self:start;z-index:1}.garage-title{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;letter-spacing:1px;margin-bottom:13px}.garage-title b{color:#7d9daf;font-size:9px;font-weight:500;letter-spacing:0}.car-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.car-card{background:#c8e9ff04;border:1px solid #a9ddff1e;padding:2px 2px 8px;min-width:0;border-radius:7px;color:#a5b9c9;font-size:10px}.car-card svg{width:100%;height:42px;display:block}.car-card span{white-space:nowrap}.car-card[aria-pressed=true]{background:#3b9ebc22;border-color:#7ae5ff;color:#edfbff;box-shadow:inset 0 0 20px #60cfff0e}.car-card:hover,.track-card:hover{border-color:#86cde899}.car-detail{margin:17px 0 23px}.car-detail>div:first-child{display:flex;flex-direction:column;gap:6px}.car-detail b#carName{font-size:20px;letter-spacing:1px}.car-detail #carDesc{font-size:10px;line-height:1.8;color:#93aebb;min-height:18px}.car-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px;margin-top:13px}.car-stats>div{display:flex;gap:9px;align-items:center;font-size:9px;color:#b5c8d4}.car-stats i{height:3px;background:#bfe9ff16;flex:1}.car-stats i b{height:100%;display:block;background:linear-gradient(90deg,#3b8eb1,#7ae5ff)}.car-stats small{font-size:9px;color:#6f91a6}.track-choices{display:grid;grid-template-columns:1fr 1fr;gap:9px}.track-card{background:#112037;border:1px solid #d1e9ff1e;border-radius:8px;color:#f1f6f9;text-align:left;padding:8px 10px;position:relative;overflow:hidden}.track-card svg{position:absolute;right:-8px;top:0;width:100px;height:55px;opacity:.26;transition:.2s}.track-card b{display:block;font-size:12px;position:relative;margin:3px 0 9px}.track-card small{font-size:9px;color:#9bb4c5;line-height:1.8;position:relative}.track-card.neon{background:linear-gradient(125deg,#132439,#35243b)}.track-card.harbor{background:linear-gradient(125deg,#293446,#55443e)}.track-card.alpine{background:linear-gradient(125deg,#123a43,#26364e)}.track-card.canyon{background:linear-gradient(125deg,#42312e,#5e4438)}.track-card[aria-pressed=true]{border-color:#7ae5ff;box-shadow:inset 0 0 0 1px #7ae5ff33}.track-card[aria-pressed=true] svg{opacity:.7}.race-options{margin-top:17px;display:flex;gap:15px;justify-content:space-between;font-size:10px;color:#8ba9b9;align-items:center}.race-options label{display:flex;gap:7px;align-items:center}.race-options select{font:inherit;background:#17273a;color:#e7f3f9;border:1px solid #c5e9ff22;padding:6px;border-radius:4px}.race-options input{accent-color:#7ae5ff}.race-options label:last-child{gap:4px}.race-options label:last-child>span{display:none}#menu #start{border:0;border-radius:7px;padding:16px 20px;background:linear-gradient(105deg,#90ecff,#64caef);color:#10222d;margin:19px 0 10px;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-style:normal;font-weight:850;letter-spacing:2px;width:100%;box-shadow:0 6px 30px #3aa5d326;transition:filter .2s,transform .2s}#menu #start:hover{filter:brightness(1.12);transform:translateY(-1px)}.garage-foot{text-align:center;color:#7393a7;font-size:9px;letter-spacing:.5px}.showcase-info{position:absolute;bottom:42px;left:4vw;display:flex;flex-direction:column;gap:9px;pointer-events:none}.showcase-info span{font-size:10px;letter-spacing:2px;color:#89a7bb}.showcase-info b{font-size:22px;font-weight:650;letter-spacing:1px;color:#e3eff4}.showcase-info span:last-child{font-size:9px;letter-spacing:1px;margin-top:5px}#raceInfo{bottom:22px;left:25px;font-size:10px;letter-spacing:2px;color:#c6dfec}#boostLabel{top:45%;left:50%;transform:translate(-50%,-50%) skewX(-8deg);text-align:center;opacity:0!important;transition:opacity .15s}#boostLabel.on{opacity:1!important}#boostLabel b{display:block;font-size:30px;font-weight:950;font-style:italic;letter-spacing:3px;color:#95efff;text-shadow:0 0 25px #53ceff90}#boostLabel span{display:block;margin-top:7px;font-size:10px;letter-spacing:3px;color:#ecf9ff}body:not(.racing) #boostLabel{display:none}#raceRecord{font-size:13px;color:#a7d4e4;margin-bottom:12px}.can{width:43px;height:13px;border-radius:2px}.can.on{background:linear-gradient(90deg,#2f8cab,#94f4ff)}#gSpd{stroke:#effbff}#tl,#tr,#br{transform:none}#posBox{border-color:#79dfff}#pos{font-size:72px}#tr{padding:10px;border:1px solid #c5e8ff18;background:#0a19264d;border-radius:12px;backdrop-filter:blur(5px)}#map{width:145px;height:145px}#br{background:radial-gradient(circle,#081824aa,transparent 65%)}#touch .tb{backdrop-filter:blur(8px);background:#0b1c2ba0;border:1px solid #aee6ff50;touch-action:none;user-select:none}#touch .tb.down{background:#4cbbdf88}#tN{background:#247eaa88!important;border-color:#9ae7ff!important}#tip{border-radius:5px;font-size:12px;max-width:80vw;white-space:normal;text-align:center;line-height:1.7}#msg.small{font-size:25px}.screen:not(#menu){z-index:5}#panel{z-index:30}#pauseBtn{z-index:4}#menu a:focus-visible,#menu button:focus-visible,#menu select:focus-visible,#menu input:focus-visible{outline:2px solid #9ff0ff;outline-offset:3px}@media(min-width:1500px){#menu{grid-template-columns:1fr 460px;padding-left:5vw;padding-right:5vw}.garage{padding:26px;margin-top:40px}.track-card{padding:12px}.car-detail{margin-top:20px;margin-bottom:28px}.menu-copy{margin-top:60px}.showcase-info{left:5vw;bottom:55px}}
@media(max-height:790px) and (min-width:901px){#menu{grid-template-columns:1fr 395px;grid-template-rows:58px 1fr;padding-bottom:15px}.garage{padding:16px;margin-top:15px}.car-detail{margin:12px 0 17px}.car-stats{margin-top:9px;gap:7px 15px}.garage-title{margin-bottom:9px}.track-card{padding:5px 9px}.track-card b{margin-bottom:4px}.race-options{margin-top:12px}#menu #start{margin-top:13px;padding:13px}.menu-copy{margin-top:28px}#menu h1{font-size:74px}.showcase-info{bottom:25px}}
@media(max-width:900px){#menu{grid-template-columns:1fr 350px;gap:0 20px;padding-left:22px;padding-right:22px}.garage{padding:16px}.club-nav>div{gap:6px}.club-nav a:not(.club-brand){margin-right:0}.club-brand{font-size:13px;letter-spacing:2px}.menu-copy{margin-top:32px}#menu h1{font-size:65px;letter-spacing:-3px}.drive-facts{gap:13px}.drive-facts>span{font-size:9px}.drive-facts small{font-size:9px}.menu-copy .club-kicker{font-size:8px;letter-spacing:1px}.menu-copy p{font-size:12px!important}.showcase-info{left:22px}.showcase-info b{font-size:17px}.track-card small{font-size:8px}.garage-title b{font-size:8px}.race-options{font-size:9px}.race-options select{padding:5px}.car-card span{font-size:9px}.car-detail #carDesc{font-size:9px}.car-card svg{height:35px}}
@media(max-width:650px){#menu{display:block;padding:0 16px 25px;background:linear-gradient(0deg,#080f1a,transparent 90%);height:100dvh}.club-nav{height:60px}.club-nav .ghost{padding:6px 9px!important;font-size:10px!important}.club-nav a:not(.club-brand){font-size:10px}.club-brand{font-size:12px}.menu-copy{margin-top:22px;height:200px;position:relative}.menu-copy h1{font-size:57px!important;margin-top:15px!important}.menu-copy .drive-facts{margin-top:13px}.menu-copy .club-kicker{font-size:8px}.menu-copy p{margin-top:8px;font-size:11px!important}.garage{margin-top:5px;padding:18px;border-radius:12px;background:#0d1c2cf2}.showcase-info{display:none}.car-card svg{height:39px}.car-detail #carDesc{font-size:10px}.track-card small{font-size:9px}.race-options{font-size:10px}.track-card{padding:9px}#pos{font-size:48px}#meta b{font-size:16px}#posBox{padding-right:9px}#tl{gap:9px}#tr{padding:4px}#map{width:97px;height:97px}#br{width:160px;height:160px}.touch #br{bottom:114px}.tb{width:64px;height:64px}#tL{left:16px}#tR{left:91px}#tD{right:16px}#tN{right:91px}#speed{font-size:45px}#boostLabel b{font-size:23px}.can{width:32px;height:10px}#raceInfo{font-size:8px;bottom:9px;left:16px}#pauseBtn{width:34px;height:34px;margin-left:-17px}.touch #drift{bottom:33%}}
@media(max-height:500px) and (min-width:651px){#menu{grid-template-columns:1fr 340px;grid-template-rows:50px 1fr;padding-bottom:15px}.garage{margin-top:12px;padding:13px}.garage-title{margin-bottom:6px;font-size:10px}.car-detail{margin:8px 0 12px}.car-detail #carDesc{display:none}.car-card svg{height:28px}.car-card{padding-bottom:4px}.car-stats{gap:5px 14px;margin-top:8px}.track-card{padding:4px 8px}.track-card b{font-size:10px;margin:3px 0}.track-card small{font-size:8px}.race-options{margin-top:9px}#menu #start{padding:10px;margin-top:10px}.menu-copy{margin-top:30px}.showcase-info{bottom:20px}.showcase-info b{font-size:15px}.drive-facts{margin-top:18px}.touch #br{width:145px;height:145px;bottom:75px}.touch #spdBox{top:40px}.touch #speed{font-size:42px}.touch .tb{width:60px;height:60px;bottom:12px}.touch #tR{left:95px}.touch #tN{right:95px}.touch #drift{bottom:26%}#map{width:95px;height:95px}#boostLabel{top:43%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
#menu,#menu *{box-sizing:border-box}
#chargeReadout{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:9px;color:#8dbbc9;letter-spacing:1px}#tr:after{content:'■ 加速带';display:block;font-size:8px;text-align:right;color:#79e9ff;letter-spacing:1px;margin-top:2px}@media(max-width:650px){#chargeReadout{bottom:0;font-size:7px;letter-spacing:0}}
