@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/barlow-400.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/barlow-500.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-600.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-700.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/barlow-condensed-500.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-condensed-600.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-condensed-700.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/barlow-condensed-700-italic.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:italic;font-weight:800;font-display:swap;src:url(/fonts/barlow-condensed-800-italic.woff2) format('woff2')}

:root{
 --c3-bg:#06080b;--c3-panel:#0d1218e8;--c3-panel-2:#121922;--c3-line:#ffffff14;--c3-line-2:#ffffff2b;
 --c3-text:#eef2f6;--c3-muted:#8f9cab;--c3-dim:#5f6b78;--c3-accent:#ff7a1a;--c3-accent-2:#ffb12a;--c3-accent-ink:#1a0c02;
 --c3-ok:#62d36e;--c3-bad:#ff6363;
 --c3-head:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--c3-body:Barlow,system-ui,-apple-system,'Segoe UI',sans-serif;
 --c3-metal:url('/textures/63f71dfdb27f2cebc9a15b99a57ce3d8d17880feff1b9c166074a8a8e9c4b8d9.png');
 color-scheme:dark;
}

#frontend.c3-front{padding:0;display:block;background:var(--c3-bg);font-family:var(--c3-body)}
#frontend.c3-front[hidden]{display:none!important}
body.flow-car #frontend.c3-front,#frontend.c3-front:has(>.c3-session){background:transparent}
body:has(#frontend.c3-front:not([hidden])>.c3-app) .controls{display:none}

.c3-app{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;color:var(--c3-text);font-family:var(--c3-body);
 background:linear-gradient(180deg,#05070ad0 0%,#05070aeb 55%,#05070af7 100%),var(--c3-metal) center/cover,var(--c3-bg)}
body.flow-car .c3-app{background:linear-gradient(90deg,#05070af7 0%,#05070ae8 34%,#05070a40 60%,transparent 80%)}
.c3-app.c3-session{background:#04060ac4;backdrop-filter:blur(4px)}
.c3-app *{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#ff7a1a99 #ffffff0a}
.c3-app ::-webkit-scrollbar{width:8px;height:8px}
.c3-app ::-webkit-scrollbar-track{background:#ffffff0a}
.c3-app ::-webkit-scrollbar-thumb{background:#ff7a1a99}
.c3-left{max-height:100%;overflow:auto;padding:4px 0}
.c3-app a{color:var(--c3-accent-2)}

.c3-top{position:relative;display:flex;align-items:center;gap:26px;height:70px;padding:0 30px;
 background:linear-gradient(180deg,#1c232c 0%,#10151b 55%,#0a0e12 100%);border-bottom:1px solid #000;box-shadow:0 1px 0 #ffffff12,0 10px 30px #0009;z-index:2}
.c3-top::after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:2px;background:linear-gradient(90deg,var(--c3-accent) 0,var(--c3-accent-2) 180px,#ff7a1a00 560px)}
.c3-brand{display:flex;flex-direction:column;justify-content:center;line-height:.8;text-decoration:none;color:var(--c3-text);flex:none}
.c3-word{font:italic 800 36px/0.8 var(--c3-head);letter-spacing:.01em;text-shadow:0 2px 0 #000}
.c3-word b{color:var(--c3-accent);font-size:1.18em;margin-left:2px;text-shadow:0 0 22px #ff7a1a70,0 2px 0 #000}
.c3-sub{font:700 11px/1 var(--c3-head);letter-spacing:.78em;color:var(--c3-muted);margin-top:6px;padding-left:3px}
.c3-crumb{display:flex;align-items:center;gap:12px;min-width:0;font:600 14px/1 var(--c3-head);letter-spacing:.16em;text-transform:uppercase;color:var(--c3-dim)}
.c3-crumb::before{content:'';width:2px;height:30px;background:var(--c3-line-2);transform:skewX(-18deg);margin-right:6px}
.c3-crumb strong{font:italic 800 26px/1 var(--c3-head);letter-spacing:.02em;color:var(--c3-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c3-status{margin-left:auto;display:flex;align-items:center;gap:10px;flex:none}
.c3-top .c3-fs{display:inline-grid;place-items:center;width:38px;height:34px;padding:0;border:1px solid var(--c3-line-2);background:#0008;color:var(--c3-text);cursor:pointer}
.c3-top .c3-fs:hover,.c3-top .c3-fs:focus-visible{border-color:var(--c3-accent);color:var(--c3-accent-2);outline:none}
[data-fullscreen][hidden]{display:none!important}
[data-fullscreen] svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
#fsBtn{display:inline-flex;align-items:center;gap:6px}
#fsBtn svg{width:15px;height:15px}
.c3-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--c3-line-2);background:#0008;font:700 13px/1 var(--c3-head);letter-spacing:.12em;text-transform:uppercase;color:var(--c3-muted);cursor:pointer;white-space:nowrap}
.c3-pill i{width:8px;height:8px;border-radius:50%;background:var(--c3-dim);box-shadow:0 0 0 3px #ffffff0d}
.c3-pill[data-state=ok]{color:var(--c3-text)}
.c3-pill[data-state=ok] i{background:var(--c3-ok);box-shadow:0 0 10px var(--c3-ok)}
.c3-pill[data-state=error] i{background:var(--c3-bad)}

.c3-main{position:relative;min-height:0;display:flex;flex-direction:column;padding:26px 36px 0;overflow:hidden}
.c3-app.c3-scroll .c3-main{overflow:auto;padding-bottom:26px}

.c3-prompts,.c3-app .c3-legacy-footer{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:11px 36px;min-height:56px;
 background:linear-gradient(180deg,#0b0f14,#141a21);border-top:1px solid #000;box-shadow:inset 0 1px 0 #ffffff14}
.c3-prompts span{display:inline-flex;align-items:center;font:700 14px/1 var(--c3-head);letter-spacing:.14em;text-transform:uppercase;color:var(--c3-muted)}
.c3-app kbd{display:inline-grid;place-items:center;min-width:30px;height:24px;padding:0 7px;margin-right:9px;border-radius:5px;background:linear-gradient(#f4f6f8,#cfd6dd);color:#0b0f14;
 font:800 12px/1 var(--c3-body);letter-spacing:0;box-shadow:inset 0 -2px 0 #8d99a6,0 1px 2px #000}
.c3-version{margin-left:auto;font:600 12px/1 var(--c3-head)!important;letter-spacing:.2em!important;color:var(--c3-dim)!important}

.c3-app button{font-family:var(--c3-head);font-weight:700;font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--c3-text);
 background:#ffffff0a;border:1px solid var(--c3-line-2);border-radius:0;padding:11px 18px;cursor:pointer;transition:background .14s,color .14s,border-color .14s,box-shadow .14s}
.c3-app button:hover,.c3-app button:focus-visible{background:linear-gradient(90deg,var(--c3-accent),#ff9640);border-color:#ffc58f;color:var(--c3-accent-ink);outline:none;box-shadow:0 0 0 1px #000,0 6px 20px #ff7a1a40}
.c3-app button:disabled{opacity:.35;cursor:default;background:#ffffff06;color:var(--c3-muted);box-shadow:none;border-color:var(--c3-line)}
.c3-app button.primary,.c3-app .online-panel .primary{background:linear-gradient(90deg,var(--c3-accent),#ff9640);border-color:#ffc58f;color:var(--c3-accent-ink)}
.c3-app button.primary:hover,.c3-app button.primary:focus-visible{background:linear-gradient(90deg,#ffa14a,var(--c3-accent-2))}
.c3-app input,.c3-app select,.c3-app textarea{font:500 16px var(--c3-body);color:var(--c3-text);background:#070a0e;border:1px solid var(--c3-line-2);border-radius:0;padding:10px 12px}
.c3-app input:focus,.c3-app select:focus,.c3-app textarea:focus{outline:none;border-color:var(--c3-accent);box-shadow:0 0 0 1px var(--c3-accent)}
.c3-app input[type=checkbox],.c3-app input[type=radio]{accent-color:var(--c3-accent);width:18px;height:18px;padding:0}
.c3-app input[type=range]{accent-color:var(--c3-accent);padding:0;border:0;background:none}
.c3-app label{color:var(--c3-muted)}
.c3-app h2,.c3-app h3{font-family:var(--c3-head);font-style:italic;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--c3-text)}
.c3-app p{color:#b9c3ce}
.c3-app .flow-note,.c3-app .notice{color:var(--c3-muted)}

.c3-home{display:grid;grid-template-columns:minmax(330px,560px) minmax(0,1fr);gap:48px;align-items:center;width:100%;max-width:1440px;height:100%;margin:0 auto;min-height:0}
.c3-app .c3-menu.flow-tiles{display:flex;flex-direction:column;gap:4px;grid-template-columns:none}
.c3-app .c3-menu button:hover,.c3-app .c3-menu button:focus-visible{outline:none;box-shadow:none}
.c3-app .c3-menu button{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:0;width:100%;
 padding:13px 40px 13px 26px;text-align:left;background:transparent;border:0;border-left:3px solid transparent;color:#c3ccd6;
 font:italic 800 clamp(28px,3.2vw,40px)/.95 var(--c3-head);letter-spacing:.01em;box-shadow:none;
 clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%);animation:c3-in .38s both}
.c3-app .c3-menu button:nth-child(2){animation-delay:.04s}.c3-app .c3-menu button:nth-child(3){animation-delay:.08s}
.c3-app .c3-menu button:nth-child(4){animation-delay:.12s}.c3-app .c3-menu button:nth-child(5){animation-delay:.16s}
.c3-app .c3-menu button:nth-child(6){animation-delay:.2s}.c3-app .c3-menu button:nth-child(7){animation-delay:.24s}
.c3-app .c3-menu button small{display:block;max-height:0;overflow:hidden;opacity:0;font:600 14px/1.25 var(--c3-body);font-style:normal;letter-spacing:0;text-transform:none;color:var(--c3-accent-ink);transition:max-height .2s,opacity .2s}
.c3-app .c3-menu button img{display:none}
.c3-app .c3-menu button:disabled{display:none}
.c3-app .c3-menu button.c3-active{background:linear-gradient(90deg,var(--c3-accent) 0%,#ff9640 62%,var(--c3-accent-2) 100%);border-left-color:#fff;color:var(--c3-accent-ink);box-shadow:none}
.c3-app .c3-menu button.c3-active small{max-height:40px;opacity:.86}
.c3-app .c3-menu button.c3-active::after{content:'';position:absolute;right:34px;top:50%;width:12px;height:12px;border-top:3px solid var(--c3-accent-ink);border-right:3px solid var(--c3-accent-ink);transform:translateY(-50%) rotate(45deg)}
.c3-app .c3-menu .race-replay-link,.c3-app .c3-menu .first-run-menu-link{margin-top:4px;padding:10px 26px!important;font:700 15px/1 var(--c3-head)!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--c3-muted)!important;background:transparent!important;border:0!important;border-left:3px solid transparent!important;clip-path:none;animation:none}
.c3-app .c3-menu .race-replay-link:hover,.c3-app .c3-menu .first-run-menu-link:hover,.c3-app .c3-menu .race-replay-link:focus-visible,.c3-app .c3-menu .first-run-menu-link:focus-visible,.c3-app .c3-menu .race-replay-link.c3-active,.c3-app .c3-menu .first-run-menu-link.c3-active{color:var(--c3-accent-2)!important;border-left-color:var(--c3-accent)!important}
.c3-app .c3-menu .race-replay-link.c3-active::after,.c3-app .c3-menu .first-run-menu-link.c3-active::after{display:none}
.c3-menu-label{font:600 13px/1 var(--c3-head);letter-spacing:.32em;color:var(--c3-dim);text-transform:uppercase;margin:0 0 12px 29px}

.c3-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center;min-height:0;padding:10px}
.c3-disc{position:relative;width:min(330px,30vw,42vh);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;overflow:hidden;
 background:radial-gradient(circle at 34% 28%,#fff 0,#eef1f4 46%,#c5cdd6 100%);
 box-shadow:0 0 0 9px #161d26,0 0 0 11px #ffffff26,0 0 0 13px #ff7a1a66,0 34px 70px #000c,inset 0 -18px 40px #0003}
.c3-disc::after{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(160deg,#ffffff80 0,#fff0 38%);pointer-events:none}
.c3-disc img{width:80%;height:80%;object-fit:contain;mix-blend-mode:multiply;transition:opacity .18s,transform .35s}
.c3-disc img.c3-swap{opacity:0;transform:scale(.92) rotate(-6deg)}
.c3-preview-copy h2{margin:0;font-size:clamp(34px,4vw,52px);line-height:.95}
.c3-preview-copy p{margin:12px auto 0;max-width:46ch;font-size:16px;line-height:1.5;color:var(--c3-muted)}
.c3-preview-copy .c3-meta{margin-top:10px;font:700 14px/1.2 var(--c3-head);letter-spacing:.14em;text-transform:uppercase;color:var(--c3-accent-2)}
.c3-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.c3-actions:empty{display:none}
.c3-extra{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:14px 0 16px 29px}
.c3-extra:empty{display:none}
.c3-extra>*{display:inline-flex!important;align-items:center;margin:0!important;width:auto!important}
.c3-app .c3-brand{color:var(--c3-text)}
.c3-preview-copy [data-first-run-intro],.c3-preview-copy>*:not(h2):not(p):not(.c3-meta){margin:10px auto 0;max-width:46ch;font-size:13px;color:var(--c3-dim)}
.c3-actions button{border-color:var(--c3-line-2)!important;background:#ffffff0a!important;color:var(--c3-text)!important;padding:10px 18px!important;font:700 15px/1 var(--c3-head)!important;letter-spacing:.12em!important}
.c3-actions button:hover,.c3-actions button:focus-visible{background:linear-gradient(90deg,var(--c3-accent),#ff9640)!important;color:var(--c3-accent-ink)!important}
.c3-extra a,.c3-extra button{font:700 13px/1 var(--c3-head)!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--c3-muted)!important;background:none!important;border:0!important;padding:6px 0!important;text-decoration:none;box-shadow:none!important}
.c3-extra a:hover,.c3-extra button:hover,.c3-extra a:focus-visible,.c3-extra button:focus-visible{color:var(--c3-accent-2)!important}

.c3-app .flow-shell,.c3-app .menu-panel{width:100%;max-width:1440px;height:100%;margin:0 auto;padding:0;display:flex;flex-direction:column;background:transparent;border:0;box-shadow:none;min-height:0}
.c3-app .flow-shell>header{padding:0;margin:0 0 16px;background:none;border:0}
.c3-app .flow-shell>header h1,.c3-app .flow-shell>header>small,.c3-app .flow-brand-logo,.c3-app .menu-panel>h1{display:none}
.c3-app .flow-shell>header:not(:has(nav)){display:none}
.c3-app .flow-content{flex:1;min-height:0;overflow:auto;padding:0 4px 20px 0}
.c3-app .c3-legacy-footer{gap:14px}
.c3-app .c3-legacy-footer .flow-help-links{display:none}
.c3-app .c3-legacy-footer #readyStatus{font:600 14px var(--c3-body);color:var(--c3-muted)}
.c3-app .c3-legacy-footer button{background:transparent;border:0;padding:6px 4px;font-size:15px;letter-spacing:.14em;color:var(--c3-muted);box-shadow:none}
.c3-app .c3-legacy-footer button:hover,.c3-app .c3-legacy-footer button:focus-visible{background:transparent;color:var(--c3-text);box-shadow:none}
.c3-app .c3-legacy-footer button.primary{margin-left:auto;padding:10px 18px;background:linear-gradient(90deg,var(--c3-accent),#ff9640);color:var(--c3-accent-ink);clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%)}
.c3-app .c3-legacy-footer button.primary kbd{background:#1a0c02;color:#ffd7b0;box-shadow:none}

.c3-app .flow-tiles:not(.c3-menu){display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.c3-app .flow-tiles:not(.c3-menu) button{position:relative;min-height:168px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px;padding:18px 20px;text-align:left;
 font:italic 800 30px/.95 var(--c3-head);background:linear-gradient(165deg,#18202a 0%,#0c1117 100%);border:1px solid var(--c3-line);color:var(--c3-text);
 clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);animation:c3-in .32s both}
.c3-app .flow-tiles:not(.c3-menu) button img{position:absolute;top:14px;right:14px;width:86px;height:86px;object-fit:contain;padding:8px;border-radius:50%;
 background:radial-gradient(circle at 34% 28%,#fff,#dfe5ea);mix-blend-mode:normal;box-shadow:0 0 0 3px #ffffff1c,0 8px 20px #0008}
.c3-app .flow-tiles:not(.c3-menu) button small{font:500 14px/1.35 var(--c3-body);font-style:normal;text-transform:none;letter-spacing:0;color:var(--c3-muted)}
.c3-app .flow-tiles:not(.c3-menu) button:hover,.c3-app .flow-tiles:not(.c3-menu) button:focus-visible{background:linear-gradient(165deg,#3a1d07 0%,#140b04 100%);border-color:var(--c3-accent);color:var(--c3-text);box-shadow:inset 4px 0 0 var(--c3-accent)}
.c3-app .flow-tiles:not(.c3-menu) button:hover small,.c3-app .flow-tiles:not(.c3-menu) button:focus-visible small{color:#ffd2ad}
.c3-app .pause-tiles:not(.c3-menu) button{min-height:96px!important}

.c3-app .flow-columns{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr);gap:28px;height:100%;min-height:0}
.c3-app .flow-list{display:flex;flex-direction:column;gap:3px;overflow:auto;min-height:0;padding-right:6px;background:transparent}
.c3-app .flow-list h2{margin:16px 0 6px;font-size:18px;letter-spacing:.2em;color:var(--c3-dim);font-style:normal;font-weight:700}
.c3-app .flow-list button{flex:none;text-align:left;padding:11px 16px;background:#ffffff07;border:0;border-left:3px solid transparent;font:700 18px/1.15 var(--c3-head);letter-spacing:.05em;color:#c9d2dc;box-shadow:none}
.c3-app .flow-list button:hover,.c3-app .flow-list button:focus-visible{background:#ffffff14;border-left-color:var(--c3-accent);color:var(--c3-text);box-shadow:none}
.c3-app .flow-list button.selected{background:linear-gradient(90deg,var(--c3-accent) 0%,#ff8f3a 55%,#ff7a1a26 100%);border-left-color:#fff;color:var(--c3-accent-ink)}
.c3-app .flow-list button.selected:focus-visible{box-shadow:inset 0 0 0 2px #fff}
.c3-app .flow-detail{display:flex;flex-direction:column;gap:16px;min-width:0;min-height:0;overflow:auto;padding:20px 22px;background:var(--c3-panel);border:1px solid var(--c3-line);box-shadow:0 20px 50px #0007}
.c3-app .flow-detail h2{margin:0;font-size:34px;line-height:1}
.c3-app .flow-detail p{color:#b9c3ce;line-height:1.55}
.c3-app .flow-stats{display:flex;flex-wrap:wrap;gap:26px;padding:14px 0;border-block:1px solid var(--c3-line)}
.c3-app .flow-stats strong{display:block;font:italic 800 32px/1 var(--c3-head);color:var(--c3-accent-2)}
.c3-app .flow-stats span,.c3-app .flow-stats small{color:var(--c3-muted);font-size:13px}
.c3-app .cup-art{align-self:flex-start;max-width:100%;max-height:210px;object-fit:contain;background:radial-gradient(circle at 30% 25%,#fff,#dde3e9);padding:12px;border-radius:4px;box-shadow:0 10px 30px #0008}
.c3-app .track-card{position:relative;background:#000;border:1px solid var(--c3-line);overflow:hidden}
.c3-app .track-card>img{display:block;width:100%;height:clamp(180px,30vh,320px);object-fit:cover;filter:saturate(1.05) contrast(1.05)}
.c3-app .track-card svg{background:#000a;border:1px solid var(--c3-line-2)}
.c3-app .track-length{position:absolute;left:0;right:auto;top:14px;width:auto;padding:6px 14px 6px 12px;background:var(--c3-accent);color:var(--c3-accent-ink);font:italic 800 20px/1 var(--c3-head);clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%)}
.c3-app .setup-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.c3-app .setup-fields label{display:grid;gap:7px;font:700 13px/1 var(--c3-head);letter-spacing:.14em;text-transform:uppercase}
.c3-app .setup-fields select{width:100%}
.c3-app .race-setup label,.c3-app .options-fields>label{background:#ffffff07;border-left:2px solid var(--c3-line-2);color:var(--c3-text)}
.c3-app .race-setup label:hover,.c3-app .options-fields>label:hover{border-left-color:var(--c3-accent)}
.c3-app .option-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#ffffff06;border-left:2px solid var(--c3-line-2);color:var(--c3-text)}
.c3-app .option-row:hover{border-left-color:var(--c3-accent)}
body.flow-car .c3-app .flow-columns{background:none}
body.flow-car .c3-app .flow-list{background:#05070acc;padding:10px}
body.flow-car .c3-app .flow-detail{background:transparent;border:0;box-shadow:none;padding:0}
body.flow-car .c3-app .flow-detail h2,body.flow-car .c3-app .flow-stats,body.flow-car .c3-app .flow-detail .flow-note{background:#05070acc;padding:10px 14px}
body.flow-car .c3-app .flow-car-stage{background:transparent;border:0}

.c3-app .options-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--c3-line-2)}
.c3-app .options-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 18px;color:var(--c3-muted);box-shadow:none;font-size:18px}
.c3-app .options-tabs button:hover,.c3-app .options-tabs button:focus-visible{background:#ffffff0d;color:var(--c3-text);box-shadow:none}
.c3-app .options-tabs button.selected{color:var(--c3-text);border-bottom-color:var(--c3-accent);background:linear-gradient(0deg,#ff7a1a26,#ff7a1a00)}
.c3-app .options-fields{display:grid;gap:10px;max-width:980px}
.c3-app .options-fields label{color:var(--c3-text)}

.c3-app .online-panel{width:100%;max-width:1240px;margin:0 auto;padding:0;max-height:none;overflow:visible;background:transparent;border:0;border-radius:0}
.c3-app .online-panel>h1,.c3-app .online-panel-heading h1{display:none}
.c3-app .online-panel-heading:not(:has(:not(h1):not([data-open-chat]))){display:none}
.c3-app .online-panel>p:first-of-type{font-size:16px}
.c3-app .online-panel label{display:block;margin:12px 0;font:700 13px/1.2 var(--c3-head);letter-spacing:.14em;text-transform:uppercase}
.c3-app .online-panel label input,.c3-app .online-panel label select{margin-top:7px;width:100%;display:block;text-transform:none;letter-spacing:0}
.c3-app .online-panel button{margin:5px 6px 5px 0}
.c3-app .online-columns{display:grid;grid-template-columns:1fr;gap:24px}
.c3-app .online-columns>div,.c3-app .ms-create-room{padding:18px 20px;background:var(--c3-panel);border:1px solid var(--c3-line)}
.c3-app .online-columns h2,.c3-app .online-panel h2{margin:0 0 12px;font-size:26px}
.c3-app .online-panel h3{margin:18px 0 6px;font-size:20px}
.c3-app .online-rooms{display:flex;flex-direction:column;gap:6px}
.c3-app .online-rooms button{display:block;width:100%;margin:0;text-align:left;padding:14px 16px;background:#ffffff07;border:0;border-left:3px solid var(--c3-line-2);font:700 20px/1.15 var(--c3-head);letter-spacing:.03em;text-transform:none;box-shadow:none}
.c3-app .online-rooms button small{display:block;margin-top:5px;font:500 13px/1.35 var(--c3-body);color:var(--c3-muted)}
.c3-app .online-rooms button:hover,.c3-app .online-rooms button:focus-visible{background:#ff7a1a1f;border-left-color:var(--c3-accent);color:var(--c3-text);box-shadow:none}
.c3-app .online-rooms button:hover small,.c3-app .online-rooms button:focus-visible small{color:#ffd2ad}
.c3-app .online-room-filters{display:grid;grid-template-columns:2fr 1.4fr auto;gap:12px;align-items:end}
.c3-app .online-room-filters label{margin:0}
.c3-app .online-room-free{display:flex!important;align-items:center;gap:8px;min-height:44px}
.c3-app .online-room-free input{width:18px!important;margin:0!important}
.c3-app .online-code{margin:8px 0;font:italic 800 56px/1 var(--c3-head);letter-spacing:.08em;color:var(--c3-accent);text-shadow:0 0 30px #ff7a1a55}
.c3-app .online-panel .invite{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:var(--c3-muted);overflow-wrap:anywhere}
.c3-app .online-roster{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:4px;counter-reset:c3-pos}
.c3-app .online-roster li{display:flex;align-items:center;gap:12px;padding:11px 14px;background:#ffffff07;border-left:3px solid var(--c3-line-2);font:600 17px/1.2 var(--c3-head);letter-spacing:.04em;counter-increment:c3-pos}
.c3-app .online-roster li::before{content:counter(c3-pos,decimal-leading-zero);font:italic 800 22px/1 var(--c3-head);color:var(--c3-accent);min-width:30px}
.c3-app .online-vote-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.c3-app .online-vote-choices button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0;padding:18px;min-height:96px;text-align:left}
.c3-app .online-vote-choices button[aria-pressed=true]{background:linear-gradient(90deg,var(--c3-accent),#ff9640);color:var(--c3-accent-ink)}
.c3-app .online-error{color:var(--c3-bad)}
.c3-app .ms-create-room{margin:0 0 18px;border-radius:0}
.c3-app .ms-create-room summary{cursor:pointer;font:italic 800 24px/1 var(--c3-head);text-transform:uppercase;color:var(--c3-accent-2);list-style:none}
.c3-app .ms-create-room summary::-webkit-details-marker{display:none}
.c3-app .ms-create-room summary::before{content:'+';display:inline-block;width:26px;color:var(--c3-accent)}
.c3-app .ms-create-room[open] summary::before{content:'–'}
.c3-app .ms-create-room>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 18px;margin-top:10px}
.c3-app .ms-create-room>div>h2{display:none}
.c3-app .ms-create-room>div>button{grid-column:1/-1;justify-self:start}
.c3-app .ms-create-room .option-row{margin:12px 0;align-self:end;min-height:44px}

.c3-app .intro-wrap{height:100%;display:grid;place-items:center;gap:14px}

#loading.loading{background:radial-gradient(ellipse at 50% 40%,#151b23 0,#06080b 70%)}
#loading .box h2{font:italic 800 40px/1 var(--c3-head);letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px}
#loading .box h2 b{color:var(--c3-accent)}
#loading .bar{height:6px;border-radius:0;background:#ffffff14;transform:skewX(-20deg)}
#loading .bar i{background:linear-gradient(90deg,var(--c3-accent),var(--c3-accent-2))}
#loading #loadText,#loading .small{font-family:var(--c3-body)}
.hud.top b{font-family:var(--c3-head);font-style:italic;font-weight:800;font-size:17px;letter-spacing:.02em}

@keyframes c3-in{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.c3-app *{animation:none!important;transition:none!important}}
@media (max-width:900px){
 .c3-home{grid-template-columns:1fr;align-content:center;gap:20px}
 .c3-preview{display:none}
 .c3-app .online-room-filters{grid-template-columns:1fr}
}
@media (max-height:520px){
 .c3-top{height:50px;padding:0 18px;gap:16px}
 .c3-word{font-size:26px}
 .c3-sub{font-size:9px;margin-top:4px}
 .c3-crumb strong{font-size:20px}
 .c3-main{padding:10px 20px 0}
 .c3-home{gap:24px}
 .c3-app .c3-menu.flow-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 10px}
 .c3-app .c3-menu.flow-tiles.pause-tiles{display:flex;max-width:360px}
 .c3-app .c3-menu button{font-size:24px;padding:8px 30px 8px 18px}
 .c3-app .c3-menu button small{display:none}
 .c3-app .c3-menu button.c3-active::after{right:26px;width:9px;height:9px}
 .c3-menu-label{margin:0 0 6px 21px}
 .c3-extra{padding:8px 0 8px 21px}
 .c3-disc{width:min(190px,24vw,40vh)}
 .c3-preview{gap:12px}
 .c3-preview-copy h2{font-size:28px}
 .c3-preview-copy p{font-size:14px;margin-top:6px}
 .c3-prompts,.c3-app .c3-legacy-footer{min-height:42px;padding:6px 20px}
 .c3-app .flow-tiles:not(.c3-menu) button{min-height:110px}
 .c3-app .flow-detail{padding:12px 14px;gap:10px}
 .c3-app .flow-detail h2{font-size:26px}
}
@media (max-width:640px){
 .c3-top{height:58px;padding:0 16px;gap:14px}
 .c3-word{font-size:28px}
 .c3-crumb{display:none}
 .c3-main{padding:16px 16px 0}
 .c3-prompts,.c3-app .c3-legacy-footer{padding:10px 16px}
 .c3-prompts span:not(.c3-version){display:none}
 .c3-app .c3-menu button{font-size:28px}
 .c3-app .online-code{font-size:40px}
}

.c3-gate{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;color:var(--c3-text);font-family:var(--c3-body);
 background:linear-gradient(180deg,#05070ae0,#05070af7),var(--c3-metal) center/cover,var(--c3-bg)}
.c3-gate[hidden]{display:none}
.c3-gate-card{width:min(520px,100%);max-height:100%;overflow:auto;padding:28px 30px;background:var(--c3-panel);border:1px solid var(--c3-line-2);border-top:3px solid var(--c3-accent);box-shadow:0 30px 80px #000c}
.c3-gate-card .c3-brand{margin-bottom:22px;color:var(--c3-text);display:flex;flex-direction:column;line-height:.8}
.c3-gate-card h1{margin:0 0 10px;font:italic 800 36px/1 var(--c3-head);text-transform:uppercase}
.c3-gate-card h2{margin:22px 0 8px;font:italic 800 20px/1 var(--c3-head);text-transform:uppercase;color:var(--c3-muted)}
.c3-gate-card p{margin:0;color:#b9c3ce;line-height:1.5}
.c3-gate-card button{font:700 16px/1 var(--c3-head);letter-spacing:.08em;text-transform:uppercase;color:var(--c3-text);background:#ffffff0a;border:1px solid var(--c3-line-2);padding:12px 18px;cursor:pointer}
.c3-gate-card button:hover,.c3-gate-card button:focus-visible,.c3-gate-card button.primary{background:linear-gradient(90deg,var(--c3-accent),#ff9640);border-color:#ffc58f;color:var(--c3-accent-ink);outline:none}
.c3-gate-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.c3-gate-error{margin-top:12px!important;color:var(--c3-bad)!important;font-size:14px}
.c3-gate-error:empty{display:none}
.c3-admin-card{width:min(720px,100%)}
.c3-admin-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.c3-admin-card header h1{margin:0}
.c3-admin-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.c3-admin-card li{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#ffffff07;border-left:3px solid var(--c3-line-2)}
.c3-admin-card li span{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}
.c3-admin-card li small{color:var(--c3-muted);font-size:12px}
.c3-admin-card li button{padding:8px 12px;font-size:13px}
.c3-admin-card li.c3-admin-off{border-left-color:var(--c3-bad);opacity:.75}
.c3-admin-card li.c3-admin-empty{color:var(--c3-muted);border-left-color:transparent}
.c3-admin-card form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:22px}
.c3-admin-card label{flex:1 1 260px;display:flex;flex-direction:column;gap:6px;font:700 13px/1 var(--c3-head);letter-spacing:.14em;text-transform:uppercase;color:var(--c3-muted)}
.c3-admin-card input{font:500 16px var(--c3-body);color:var(--c3-text);background:#070a0e;border:1px solid var(--c3-line-2);padding:10px 12px;text-transform:none;letter-spacing:0}

.sector-delta-panel{display:none!important}

@media (max-width:900px) and (min-height:521px){
 .c3-app .flow-columns{grid-template-columns:1fr;height:auto}
 body.flow-car .c3-app .flow-car-stage{order:1;height:min(260px,32vh)}
 body.flow-car .c3-app .flow-detail>:is(.flow-stats,label,.flow-note,p){order:2}
}
@media (max-height:520px){
 .c3-app .flow-columns{grid-template-columns:minmax(190px,.8fr) minmax(0,1.25fr);gap:12px;height:100%}
 .c3-app .flow-list{gap:2px}
 .c3-app .flow-list button{padding:7px 10px;font-size:15px}
 .c3-app .flow-list h2{font-size:13px;margin:8px 0 4px}
 .c3-app .flow-detail{padding:10px 12px;gap:8px}
 .c3-app .flow-detail h2{font-size:22px}
 .c3-app .flow-detail p,.c3-app .flow-note,.c3-app .notice{font-size:12px;line-height:1.4}
 .c3-app .flow-stats{gap:14px;padding:6px 0}
 .c3-app .flow-stats strong{font-size:22px}
 .c3-app .track-card{min-height:0}
 .c3-app .track-card>img{height:clamp(100px,30vh,190px)}
 .c3-app .track-card svg{width:96px!important;height:96px!important}
 .c3-app .track-length{font-size:15px;top:8px}
 .c3-app .cup-art{max-height:110px}
 body.flow-car .c3-app .flow-columns{max-width:58%;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px}
 body.flow-car .c3-app .flow-car-stage{display:none}
 body.flow-car .c3-app .flow-detail{gap:6px;overflow:auto}
 body.flow-car .c3-app .flow-detail h2{font-size:18px;padding:8px 10px}
 body.flow-car .c3-app .flow-stats{gap:4px 12px;padding:6px 10px}
 body.flow-car .c3-app .flow-stats strong{font-size:17px}
 body.flow-car .c3-app .flow-stats small{font-size:10px}
 body.flow-car .c3-app .flow-detail button{padding:6px 8px;font-size:12px}
 body.flow-car .c3-app .flow-detail label{font-size:11px}
 body.flow-car .c3-app .flow-detail select{padding:5px 8px;font-size:13px}
 .c3-app .flow-detail button{padding:8px 12px;font-size:14px}
 .c3-app .setup-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .c3-app .race-setup label,.c3-app .option-row{padding:6px 10px;font-size:13px}
 .c3-app .race-setup select,.c3-app .setup-fields select,.c3-app .options-fields select,.c3-app .flow-settings select{padding:6px 8px;font-size:14px}
 .c3-app .flow-settings label{padding:4px 10px;font-size:13px}
 .c3-app .flow-settings h2{font-size:20px;margin:0}
 .c3-app .options-tabs button{padding:8px 12px;font-size:15px}
 .c3-app .online-columns>div,.c3-app .ms-create-room,.lan-server-box{padding:12px 14px}
 .c3-app .online-code{font-size:38px}
 .c3-app .online-panel label{margin:8px 0}
 .c3-app .online-roster li{padding:7px 10px;font-size:15px}
}
