:root{--ink:#10131c;--paper:#f4f1e8;--accent:#ff5c4d;--accent-2:#3ec6c0;--sun:#ffc857;--muted:#8b93a7;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--paper);-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#0b0e15;margin:0;padding:0;overflow:hidden}#game{background:#0b0e15;outline:none;width:100vw;height:100vh;display:block;position:fixed;inset:0}#ui{pointer-events:none;z-index:10;position:fixed;inset:0}#ui>*{pointer-events:auto}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.loading{color:#ffc857;letter-spacing:.24em;z-index:50;background:radial-gradient(circle at 50% 40%,#1c2333 0%,#0b0e15 70%);place-items:center;font-size:clamp(18px,2.2vw,30px);font-weight:700;display:grid;position:fixed;inset:0}.toast{color:#d7fffb;letter-spacing:.04em;z-index:80;pointer-events:none;background:#0d121af0;border:1px solid #3ec6c080;border-radius:10px;max-width:min(560px,92vw);padding:.7em 1.1em;font-size:clamp(12px,1.5vmin,15px);transition:opacity .3s,transform .3s;position:fixed;bottom:clamp(16px,4vh,48px);left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000080}.toast.is-out{opacity:0;transform:translate(-50%,8px)}.menu{--ink:#10131c;--ink-2:#171c29;--paper:#f4f1e8;--accent:#ff5c4d;--highlight:#ffc857;--teal:#3ec6c0;--green:#7ed957;--muted:#9aa3b8;--line:#f4f1e829;--panel-pad:clamp(14px, 2.5vmin, 48px);--gap:clamp(8px, 1.5vmin, 28px);--radius:clamp(12px, 1.8vmin, 32px);--text-xs:clamp(10px, 1.4vmin, 24px);--text-sm:clamp(12px, 1.65vmin, 28px);--text-md:clamp(14px, 2.05vmin, 34px);--text-lg:clamp(19px, 2.95vmin, 52px);--text-xl:clamp(32px, 6.2vmin, 130px);z-index:30;pointer-events:auto;color:var(--paper);-webkit-user-select:none;user-select:none;touch-action:manipulation;background:radial-gradient(900px 620px at 12% -5%,#ff5c4d38,#0000 62%),radial-gradient(1000px 720px at 92% 108%,#3ec6c029,#0000 64%),radial-gradient(700px 500px at 70% 10%,#ffc85717,#0000 60%),repeating-linear-gradient(135deg,#ffffff06 0 2px,#0000 2px 18px),#0b0e15;justify-content:center;align-items:center;padding:clamp(10px,2.2vmin,44px);font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;display:flex;position:fixed;inset:0;overflow:auto}.menu *,.menu :before,.menu :after{box-sizing:border-box}.menu button{font:inherit;color:inherit;cursor:pointer;appearance:none}.menu button:focus-visible{outline:3px solid var(--highlight);outline-offset:3px}.menu .cta,.menu .start-btn,.menu .pick-pip.is-current,.menu .random-icon{color:var(--ink)}.menu [hidden]{display:none!important}.menu-panel{gap:var(--gap);width:min(2200px,97vw);max-width:100%;padding:var(--panel-pad);border-radius:var(--radius);background:linear-gradient(180deg, #1a1f2df7, #0d1018fb), var(--ink);border:1px solid #f4f1e81f;flex-direction:column;display:flex;position:relative;box-shadow:0 30px 80px #0009,0 0 0 10px #ffffff05,inset 0 1px #ffffff12}.menu-top{justify-content:space-between;align-items:center;gap:10px;min-height:1.8em;display:flex}.menu-back{color:var(--paper);font-size:var(--text-xs);letter-spacing:.12em;background:#f4f1e80d;border:2px solid #f4f1e842;border-radius:999px;align-items:center;gap:.4em;padding:.32em .9em;font-weight:800;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.menu-back:hover{border-color:var(--highlight);background:#ffc8571f;transform:translateY(-2px)}.menu-step{color:var(--muted);font-size:var(--text-xs);letter-spacing:.22em;white-space:nowrap;margin-left:auto;font-weight:800}.scr{gap:var(--gap);flex-direction:column;min-height:0;display:none}.menu[data-stage=title] .scr-title,.menu[data-stage=mode] .scr-mode,.menu[data-stage=pick] .scr-pick,.menu[data-stage=track] .scr-track{animation:.34s cubic-bezier(.2,.9,.3,1.2) both scr-in;display:flex}@keyframes scr-in{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.scr-head{flex-direction:column;align-items:flex-start;gap:.25em;display:flex}.kicker{color:var(--highlight);font-size:var(--text-xs);letter-spacing:.24em;text-transform:uppercase;font-weight:900;display:inline-block}.scr-heading{color:var(--paper);font-size:var(--text-lg);letter-spacing:-.005em;text-transform:uppercase;margin:0;font-weight:900;line-height:1.04}.scr-sub{color:#f4f1e8b8;max-width:70ch;font-size:var(--text-sm);margin:0;line-height:1.3}.hint{text-align:center;color:var(--muted);font-size:var(--text-xs);letter-spacing:.06em;margin:0;font-weight:700}.scr-title{text-align:center;align-items:center;padding:clamp(4px,1.4vmin,24px) 0 clamp(2px,.8vmin,14px)}.title-kicker{color:var(--highlight);font-size:var(--text-xs);letter-spacing:.28em;background:#ffc85714;border:2px solid #ffc8578c;border-radius:999px;padding:.32em 1em;font-weight:900;display:inline-block}.logo{letter-spacing:-.025em;text-transform:uppercase;margin:.12em 0 .08em;font-size:clamp(34px,7vmin,150px);font-weight:900;line-height:.82}.logo-top{color:var(--paper);text-shadow:0 .045em #00000059,0 .09em #00000038;display:block;transform:rotate(-1.2deg)}.logo-bottom{background:var(--accent);color:var(--ink);border-radius:.16em;margin-top:.1em;padding:.02em .2em .08em;display:inline-block;transform:rotate(-2.4deg);box-shadow:0 .07em #b5372b,0 .16em .22em #00000073}.title-sub{color:#f4f1e8d6;font-size:var(--text-md);margin:.35em 0 0;font-weight:700}.traffic{border:1px solid var(--line);background:#10131c99;border-radius:999px;gap:.45em;margin:.35em 0 .1em;padding:.3em .5em;display:flex}.traffic-light{aspect-ratio:1;border-radius:50%;width:clamp(8px,1.1vmin,18px);box-shadow:0 0 .5em #ffffff29}.cta{border:3px solid var(--ink);background:linear-gradient(180deg, #ffdd8a, var(--highlight));color:var(--ink);font-size:var(--text-lg);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;margin-top:.3em;padding:.5em 1.25em;font-weight:900;transition:transform .15s,box-shadow .15s;animation:2.4s ease-in-out infinite cta-pulse;box-shadow:0 .16em #a9741c,0 .4em .8em #00000073}.cta:hover{transform:translateY(-3px)rotate(-1deg)scale(1.02);box-shadow:0 .22em #a9741c,0 .55em 1em #00000073}.practice-btn{font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;margin-top:.55em;padding:.45em 1.1em;font-weight:900}.track-art-canvas{z-index:1;border-radius:14px;width:100%;height:100%;display:block;position:relative}.track-art--canvas:before,.track-art--canvas:after{display:none}.track-choices{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:2px;display:flex}.track-choice{appearance:none;color:var(--paper);font:inherit;cursor:pointer;background:#10131c9e;border:2px solid #f4f1e833;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 14px;transition:border-color .15s,background .15s;display:flex}.track-choice:hover{border-color:#ffc85799}.track-choice.is-active{border-color:var(--highlight);background:#ffc8571f}.track-choice-name{font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;font-weight:900}.track-choice-sub{color:#f4f1e88c;font-size:11px}.track-art-canvas+*{pointer-events:none}.track-setup-btn{font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;align-self:center;margin-bottom:.4em;padding:.4em 1.1em;font-weight:900}.mode-options{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:2px;display:flex}.mode-toggle{appearance:none;color:var(--paper);font:inherit;font-size:var(--text-sm);letter-spacing:.08em;cursor:pointer;background:#10131c99;border:2px solid #f4f1e847;border-radius:999px;padding:.5em 1em;font-weight:900;transition:background .15s,color .15s,border-color .15s}.mode-toggle:hover:not(:disabled){border-color:var(--highlight)}.mode-toggle.is-active{background:var(--highlight);border-color:var(--highlight);color:var(--ink)}.mode-toggle:disabled{opacity:.4;cursor:default}.mode-options-hint{margin-top:-2px}@keyframes cta-pulse{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-2px)scale(1.025)}}.title-hint{color:var(--muted);font-size:var(--text-xs);letter-spacing:.12em;margin:0;font-weight:700}.mode-grid{gap:var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.menu[data-mobile=true] .mode-card.is-locked{display:none}.menu[data-mobile=true] .mode-grid{grid-template-columns:minmax(0,420px);justify-content:center}.mode-card{border-radius:var(--radius);background:linear-gradient(160deg, #293044f5, #11151ffa), var(--ink-2);color:var(--paper);text-align:left;border:2px solid #f4f1e82e;flex-direction:column;align-items:flex-start;gap:.28em;padding:clamp(14px,2.3vmin,40px);transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;position:relative;box-shadow:0 8px #00000057}.mode-card:first-child{transform:rotate(-.7deg)}.mode-card:nth-child(2){transform:rotate(.55deg)}.mode-card:nth-child(3){transform:rotate(-.4deg)}.mode-card:hover,.mode-card.is-cursor{border-color:var(--highlight);transform:translateY(-8px)rotate(0);box-shadow:0 14px #00000052,0 0 0 3px #ffc85738,0 0 34px #ffc85724}.mode-card.is-active{border-color:var(--accent)}.mode-card.is-locked,.mode-card:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.6)}.mode-card.is-locked:hover,.mode-card:disabled:hover{border-color:var(--line);box-shadow:none;transform:none}.mode-card.is-locked .mode-total{color:#ffb3a8}.mode-players{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:900;line-height:1}.mode-note{color:var(--accent);font-size:var(--text-sm);letter-spacing:.02em;font-weight:900}.mode-desc{color:#f4f1e8b8;font-size:var(--text-sm);line-height:1.25}.mode-ai{color:#ff8b80;font-size:var(--text-xs);letter-spacing:.04em;background:#ff5c4d24;border:1px solid #ff5c4d80;border-radius:999px;margin-top:.35em;padding:.18em .65em;font-weight:900}.mode-total{color:var(--muted);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;font-weight:800}.pick-head{justify-content:space-between;align-items:flex-end;gap:var(--gap);flex-wrap:wrap;display:flex}.pick-head-left{flex-direction:column;gap:.25em;display:flex}.pick-badge{background:var(--accent);color:var(--ink);font-size:var(--text-sm);letter-spacing:.06em;border-radius:.5em;align-self:flex-start;padding:.22em .85em;font-weight:900;transform:rotate(-1.6deg);box-shadow:0 .12em #b5372b}.pick-heading{font-size:var(--text-lg)}.pick-pips{flex-wrap:wrap;gap:.4em;display:flex}.pick-pip{aspect-ratio:1;width:clamp(22px,2.6vmin,48px);color:var(--muted);font-size:var(--text-xs);background:#10131c8f;border:2px solid #f4f1e83d;border-radius:50%;place-items:center;font-weight:900;display:grid}.pick-pip.is-done{border-color:var(--green);color:var(--paper);background:#7ed95729}.pick-pip.is-current{border-color:var(--highlight);color:var(--ink);background:var(--highlight)}.card-grid{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.char-card{--char:#ff5c4d;--char-accent:#ffc857;border-radius:var(--radius);background:linear-gradient(165deg, var(--char) 0%, #1a1f2c 64%, #10131c 100%);color:var(--paper);text-align:left;border:2px solid #f4f1e83d;flex-direction:column;gap:.42em;padding:clamp(10px,1.55vmin,26px);transition:transform .16s,box-shadow .16s,filter .16s;display:flex;position:relative;overflow:hidden;box-shadow:0 7px #0000006b}.char-card:before{content:"";pointer-events:none;background:linear-gradient(#10131c75 0%,#10131c14 34%,#10131ccc 76%,#10131c 100%),radial-gradient(90% 55% at 18% 0,#ffffff1f,#0000 62%);position:absolute;inset:0}.char-card>*{z-index:1;position:relative}.char-card:nth-child(2n){transform:rotate(.45deg)}.char-card:hover,.char-card.is-cursor{border-color:var(--highlight);transform:translateY(-7px)rotate(0);box-shadow:0 12px #0006,0 0 0 3px #ffc8574d,0 0 30px #ffc85724}.char-card.is-picked{border-color:var(--green);box-shadow:0 7px #0000006b,0 0 0 3px #7ed95766}.char-card.is-taken{filter:grayscale(.78)brightness(.54);cursor:not-allowed;transform:none}.char-card.is-shake{animation:.28s card-shake}@keyframes card-shake{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-6px)rotate(-1deg)}60%{transform:translate(5px)rotate(1deg)}}.char-top{align-items:center;gap:.55em;display:flex}.char-avatar{aspect-ratio:1;border:2px solid var(--char-accent);background:var(--char);width:clamp(28px,3.4vmin,58px);color:var(--ink);font-size:var(--text-md);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid;box-shadow:inset 0 -.18em #0000003d}.char-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.char-titles{flex-direction:column;min-width:0;display:flex}.char-name{font-size:var(--text-lg);font-weight:900;line-height:1}.char-role{color:#f4f1e8d6;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.2;overflow:hidden}.char-vehicle{border-top:1px dashed #f4f1e847;border-bottom:1px dashed #f4f1e847;flex-direction:column;gap:.1em;padding:.35em 0;display:flex}.char-vehicle-label{color:#f4f1e88f;font-size:var(--text-xs);letter-spacing:.18em;font-weight:800}.char-vehicle-name{font-size:var(--text-sm);font-weight:800;line-height:1.2}.char-stats{flex-direction:column;gap:.24em;display:flex}.stat{font-size:var(--text-xs);grid-template-columns:5.4em minmax(0,1fr);align-items:center;gap:.5em;font-weight:700;display:grid}.stat-label{color:#f4f1e8cc}.stat-track{background:#10131ca8;border-radius:999px;height:max(4px,.55em);overflow:hidden;box-shadow:inset 0 1px 2px #0009}.stat-fill{border-radius:inherit;background:linear-gradient(90deg, var(--char-accent), var(--highlight));height:100%;display:block}.char-ability{background:#10131c85;border:1px solid #f4f1e82e;border-radius:.7em;margin-top:auto;padding:.45em .6em}.ability-head{justify-content:space-between;align-items:baseline;gap:.4em;display:flex}.ability-name{font-size:var(--text-sm);font-weight:900;line-height:1.1}.ability-cd{color:var(--highlight);font-size:var(--text-xs);white-space:nowrap;flex:none;font-weight:900}.ability-desc{color:#f4f1e8d1;font-size:var(--text-xs);margin:.22em 0 0;line-height:1.25}.char-taken,.char-picked{z-index:2;font-size:var(--text-xs);letter-spacing:.08em;white-space:nowrap;font-weight:900;position:absolute}.char-taken{border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);color:var(--accent);text-align:center;background:#10131ceb;padding:.34em .5em;top:50%;left:-8%;right:-8%;transform:translateY(-50%)rotate(-5deg)}.char-picked{background:var(--green);color:var(--ink);border-radius:999px;padding:.18em .55em;top:clamp(6px,.9vmin,14px);right:clamp(6px,.9vmin,14px);box-shadow:0 2px #00000059}.random-card{border-radius:var(--radius);width:100%;min-height:clamp(38px,5.4vmin,76px);color:var(--paper);background:#f4f1e80a;border:2px dashed #f4f1e86b;justify-content:center;align-items:center;gap:.8em;padding:.45em 1em;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.random-card:hover,.random-card.is-cursor{border-color:var(--highlight);background:#ffc8571a;box-shadow:0 0 0 3px #ffc85733}.random-icon{background:var(--highlight);width:1.8em;height:1.8em;color:var(--ink);font-size:var(--text-md);border-radius:50%;place-items:center;font-weight:900;display:grid;transform:rotate(-8deg)}.random-text{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.random-title{font-size:var(--text-md);letter-spacing:.1em;font-weight:900}.random-sub{color:var(--muted);font-size:var(--text-xs);font-weight:700}.track-card{gap:var(--gap);border-radius:var(--radius);background:linear-gradient(155deg,#2c344ae6,#0f121bfa);border:2px solid #f4f1e82e;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;padding:clamp(12px,2vmin,34px);display:grid;position:relative;overflow:hidden;box-shadow:0 9px #0000005c}.track-art{aspect-ratio:16/9;border-radius:calc(var(--radius) * .7);background:radial-gradient(120% 90% at 18% 4%,#ffc85747,#0000 56%),linear-gradient(160deg,#263049,#10131c 72%);border:1px solid #f4f1e824;min-height:clamp(96px,15vmin,260px);position:relative;overflow:hidden}.track-art:before{content:"";background:repeating-linear-gradient(90deg, var(--accent) 0 22px, var(--paper) 22px 44px) left top / 100% 9% no-repeat, #2b3040;border-top:3px solid #f4f1e838;border-bottom:3px solid #f4f1e838;height:40%;position:absolute;top:40%;left:-14%;right:-14%;transform:rotate(-7deg);box-shadow:inset 0 0 44px #0000008c}.track-art:after{content:"";background:repeating-linear-gradient(90deg, var(--highlight) 0 26px, transparent 26px 52px);opacity:.85;height:5%;position:absolute;top:56%;left:-14%;right:-14%;transform:rotate(-7deg)}.track-art-line{background:var(--accent);border-radius:50% 50% 40% 40%;width:18%;height:30%;position:absolute;bottom:12%;right:10%;transform:rotate(18deg);box-shadow:inset 0 -.4em #00000040,0 0 1.2em #ff5c4d73}.track-info{flex-direction:column;gap:.32em;min-width:0;display:flex}.track-name{font-size:var(--text-lg);margin:0;font-weight:900;line-height:1.05}.track-sub{color:#f4f1e8c7;font-size:var(--text-sm);margin:0;line-height:1.3}.track-meta{color:var(--highlight);font-size:var(--text-xs);letter-spacing:.1em;background:#ffc8571a;border:1px solid #ffc85773;border-radius:999px;align-self:flex-start;margin-top:.25em;padding:.28em .75em;font-weight:900}.track-picks-wrap{align-items:center;gap:var(--gap);border-top:1px dashed #f4f1e83d;flex-wrap:wrap;grid-column:1/-1;padding-top:clamp(8px,1.2vmin,18px);display:flex}.track-picks-label{color:var(--muted);font-size:var(--text-xs);letter-spacing:.2em;font-weight:900}.track-picks{flex-wrap:wrap;gap:.45em;display:flex}.track-pick{--char:#ff5c4d;border:2px solid var(--char);font-size:var(--text-xs);background:#10131c94;border-radius:999px;align-items:center;gap:.45em;padding:.22em .65em .22em .28em;font-weight:800;display:inline-flex}.track-pick-num{background:var(--char);width:1.6em;height:1.6em;color:var(--ink);border-radius:50%;place-items:center;font-size:.9em;font-weight:900;display:grid}.start-btn{border:3px solid var(--ink);background:linear-gradient(180deg, #ffdd8a, var(--highlight));min-width:min(460px,84%);color:var(--ink);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-self:center;padding:.42em 1.3em;font-size:clamp(22px,3.5vmin,58px);font-weight:900;transition:transform .15s,box-shadow .15s;box-shadow:0 .18em #a9741c,0 .45em 1em #00000073}.start-btn:hover{transform:translateY(-3px)scale(1.02);box-shadow:0 .25em #a9741c,0 .6em 1.2em #00000073}.start-btn:active{transform:translateY(1px)scale(.99)}.results-panel{gap:calc(var(--gap) * .8);align-items:stretch}.results-title{color:var(--paper);font-size:var(--text-xl);letter-spacing:-.02em;text-align:center;text-transform:uppercase;text-shadow:0 .05em #0006;align-self:center;margin:0;font-weight:900;line-height:.9}.winner{border-radius:var(--radius);background:radial-gradient(120% 120% at 50% 0,#ffc8573d,#0000 62%),#10131c9e;border:2px solid #ffc8578c;flex-direction:column;align-self:center;align-items:center;gap:.1em;min-width:min(680px,86%);padding:clamp(10px,1.8vmin,30px) clamp(16px,3vmin,52px);display:flex;box-shadow:0 .3em #0000004d}.winner-crown{color:var(--highlight);font-size:var(--text-md);text-shadow:0 0 .5em #ffc85780;line-height:1}.winner-name{color:var(--paper);text-align:center;text-shadow:0 .06em #00000059;overflow-wrap:anywhere;margin:0;font-size:clamp(26px,4.6vmin,96px);font-weight:900;line-height:1}.winner-label{color:var(--highlight);font-size:var(--text-xs);letter-spacing:.36em;font-weight:900}.result-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.result-table th{border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--text-xs);letter-spacing:.14em;text-align:left;padding:.42em .65em;font-weight:900}.result-table th:first-child,.result-table td:first-child{text-align:center;width:4.2em}.result-table td{border-bottom:1px solid #f4f1e817;padding:.42em .65em}.result-table tr.is-player td{background:#ff5c4d21}.result-table tr.is-player td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.result-table tr.is-winner td{background:#ffc85717}.result-place{color:var(--highlight);font-variant-numeric:tabular-nums;font-weight:900}.result-name{align-items:center;gap:.5em;min-width:0;font-weight:800;display:flex}.result-dot{border-radius:50%;flex:none;width:.72em;height:.72em;box-shadow:0 0 0 2px #10131c99}.result-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.you-badge{background:var(--accent);color:var(--ink);letter-spacing:.08em;border-radius:.3em;flex:none;padding:.08em .4em;font-size:.72em;font-weight:900}.result-time{color:#f4f1e8e0;font-variant-numeric:tabular-nums;white-space:nowrap}.results-actions{justify-content:center;align-items:center;gap:var(--gap);flex-wrap:wrap;margin-top:.2em;display:flex}.results-start{min-width:min(320px,52%);font-size:clamp(20px,2.8vmin,46px)}.ghost-btn{min-width:min(220px,34%);color:var(--paper);letter-spacing:.1em;text-transform:uppercase;background:#f4f1e80d;border:2px solid #f4f1e84d;border-radius:999px;padding:.5em 1.2em;font-size:clamp(16px,2.1vmin,34px);font-weight:900;transition:transform .15s,border-color .15s,background .15s}.ghost-btn:hover{border-color:var(--highlight);background:#ffc8571a;transform:translateY(-3px)}.online-btn{color:#d7fffb;background:#3ec6c01a;border-color:#3ec6c0b3}.online-btn:before{content:"●";color:var(--teal);margin-right:.45em;animation:1.8s ease-in-out infinite online-dot}.online-btn:hover{border-color:var(--teal);background:#3ec6c02e}@keyframes online-dot{50%{opacity:.25}}@media (max-aspect-ratio:5/4),(max-width:1000px){.mode-grid{grid-template-columns:1fr}.mode-card:first-child,.mode-card:nth-child(2),.mode-card:nth-child(3){transform:none}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.track-card{grid-template-columns:1fr}.track-art{display:none}.winner{width:100%;min-width:0}}@media (max-width:620px){.card-grid{grid-template-columns:1fr}.pick-head{align-items:flex-start}.result-table th:nth-child(4),.result-table td:nth-child(4){display:none}.results-start,.ghost-btn{width:100%}}@media (max-height:640px){.logo{font-size:clamp(28px,6.4vmin,110px)}.scr-title{padding:0}.title-hint,.traffic{display:none}.char-card{gap:.3em;padding:clamp(8px,1.2vmin,18px)}.char-ability{padding:.35em .5em}.ability-desc{display:none}.track-art{min-height:110px}}@media (prefers-reduced-motion:reduce){.menu *,.menu :before,.menu :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.csf-hint{z-index:40;pointer-events:none;max-width:min(92vw,980px);transition:opacity .3s,transform .3s;position:fixed;bottom:7vh;left:50%;transform:translate(-50%)}.csf-hint--out{opacity:0;transform:translate(-50%)translateY(10px)}.csf-hint__card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#10131ce0;border:1px solid #ffc85759;border-radius:16px;padding:12px 18px;box-shadow:0 18px 48px #00000073}.csf-hint__title{letter-spacing:.22em;color:#ffc857;margin-bottom:8px;font-size:11px;font-weight:800}.csf-hint__line{color:#f4f1e8;align-items:baseline;gap:10px;padding:3px 0;font-size:13px;display:flex}.csf-hint__badge{color:#10131c;background:#ff5c4d;border-radius:5px;flex:none;padding:2px 6px;font-size:10px;font-weight:900}.csf-hint__who{flex:none;min-width:72px;font-weight:800}.csf-hint__keys{color:#aab2c4;font-size:12px}.csf-hint__foot{color:#8b93a7;margin-top:8px;font-size:11px}.csf-pause{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);pointer-events:auto;background:#080a10b8;place-items:center;display:grid;position:fixed;inset:0}.csf-pause__card{color:#f4f1e8;background:linear-gradient(160deg,#1a2130 0%,#121722 100%);border:1px solid #ffc8574d;border-radius:22px;width:min(92vw,760px);max-height:88vh;padding:26px 28px 22px;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;overflow:auto;box-shadow:0 30px 80px #0009}.csf-pause__head{text-align:center;margin-bottom:16px}.csf-pause__title{letter-spacing:.08em;font-size:34px;font-weight:900}.csf-pause__sub{color:#8b93a7;margin-top:2px;font-size:13px}.csf-pause__players{flex-direction:column;gap:10px;display:flex}.csf-pause__row{background:#ffffff09;border:1px solid #f4f1e814;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.csf-pause__who{flex:0 0 118px;align-items:center;gap:8px;display:flex}.csf-pause__badge{color:#10131c;background:#ff5c4d;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:900}.csf-pause__name{font-size:14px;font-weight:800}.csf-pause__choices{flex-wrap:wrap;gap:6px;display:flex}.csf-pause__choice{appearance:none;color:#c9d0dd;font:inherit;cursor:pointer;background:#10131c99;border:1px solid #f4f1e82e;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:800;transition:background .15s,color .15s,border-color .15s}.csf-pause__choice:hover{background:#ffc8571f;border-color:#ffc85780}.csf-pause__choice.is-active{color:#10131c;background:#ffc857;border-color:#ffc857}.csf-pause__keys{color:#8b93a7;flex:1 0 100%;font-size:12px;line-height:1.35}.csf-pause__buttons{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.csf-pause__btn{appearance:none;color:#f4f1e8;font:inherit;letter-spacing:.06em;cursor:pointer;background:#10131cb3;border:1px solid #f4f1e833;border-radius:11px;padding:11px 22px;font-size:13px;font-weight:900}.csf-pause__btn:hover{border-color:#ffc85799}.csf-pause__btn--primary{color:#10131c;background:#ffc857;border-color:#ffc857}.csf-pause__foot{text-align:center;color:#8b93a7;margin-top:10px;font-size:11px}.csf-battle-winner{letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-size:clamp(18px,3.2vmin,34px);font-weight:900}.csf-battle-score{justify-content:center;gap:10px;margin:6px 0 14px;display:flex}.csf-battle-team{background:#ffffff0a;border:2px solid #f4f1e840;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:110px;padding:8px 14px;display:flex}.csf-battle-team-name{letter-spacing:.1em;font-size:13px;font-weight:900}.csf-battle-team-lives{color:#f4f1e8;font-size:18px;font-weight:800}.csf-battle-players{flex-direction:column;gap:6px;display:flex}.csf-battle-row{background:#ffffff09;border-radius:9px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.csf-battle-dot{border-radius:50%;width:10px;height:10px}.csf-battle-name{flex:1;font-weight:800}.csf-battle-lives{letter-spacing:.14em;font-size:15px}.csf-battle-tag{letter-spacing:.08em;color:#8b93a7;font-size:10px;font-weight:900}.csf-settings__label{color:#8b93a7;letter-spacing:.18em;margin-top:12px;font-size:11px;font-weight:900}.csf-settings__toggles{flex-wrap:wrap;gap:8px;margin:8px 0 4px;display:flex}.csf-settings__toggles .mode-toggle{appearance:none;color:#f4f1e8;letter-spacing:.08em;cursor:pointer;background:#10131c99;border:2px solid #f4f1e847;border-radius:999px;padding:.5em 1em;font-family:inherit;font-size:12px;font-weight:900}.csf-settings__toggles .mode-toggle.is-active{color:#0b0e15;background:#ffc857;border-color:#ffc857}.csf-settings__toggles .mode-toggle.is-danger,.mode-toggle.is-danger{color:#0b0e15;background:#ff5c4d;border-color:#ff5c4d}@media (max-width:640px){.csf-pause__row{grid-template-columns:1fr}.csf-pause__keys{grid-column:1}}.splash{z-index:200;background:radial-gradient(120% 90% at 50% 18%,#1b2338 0%,#0b1020 52%,#05070d 100%);place-items:center;animation:.35s both splash-in;display:grid;position:fixed;inset:0;overflow:hidden}.splash--out{animation:.38s both splash-out}@keyframes splash-in{0%{opacity:0}to{opacity:1}}@keyframes splash-out{to{opacity:0;transform:scale(1.03)}}.splash__bg{opacity:.55;position:absolute;inset:-20%;transform:perspective(600px)rotateX(58deg)translateY(18%)}.splash__road{background:repeating-linear-gradient(90deg,#0000 0 90px,#ffc65c29 90px 96px,#0000 96px 186px),repeating-linear-gradient(0deg,#0000 0 120px,#ff5c4d29 120px 128px,#0000 128px 248px);animation:1.6s linear infinite splash-road;position:absolute;inset:0}@keyframes splash-road{0%{background-position:0 0,0 0}to{background-position:0 186px,0 248px}}.splash__inner{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;display:flex;position:relative}.splash__kicker{letter-spacing:.34em;color:#ffc857;opacity:.9;font-size:clamp(10px,1.4vmin,14px);font-weight:900}.splash__logo{letter-spacing:.02em;text-transform:uppercase;filter:drop-shadow(0 18px 40px #0000008c);flex-direction:column;align-items:center;margin:0;font-size:clamp(64px,15vmin,168px);font-weight:900;line-height:.86;animation:.6s cubic-bezier(.2,1.4,.4,1) both splash-logo;display:flex}.splash__logo span{background:linear-gradient(#fffdf4 0%,#f4e3b4 60%,#e7c377 100%);color:#0000;-webkit-background-clip:text;background-clip:text;display:block}.splash__logo .splash__logo-bottom{background:linear-gradient(#ff8b6a 0%,#ff5c4d 55%,#c9352b 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:.9em;transform:rotate(-2.5deg)}@keyframes splash-logo{0%{opacity:0;transform:translateY(26px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.splash__sub{letter-spacing:.28em;color:#f4f1e89e;margin-top:6px;font-size:clamp(9px,1.3vmin,13px);font-weight:800}.splash__press{letter-spacing:.3em;color:#f4f1e8;opacity:0;margin-top:clamp(18px,5vmin,44px);font-size:clamp(12px,1.9vmin,20px);font-weight:900;transition:opacity .2s}.splash__press.is-ready{opacity:1;animation:1.05s steps(2,jump-none) infinite splash-blink}@keyframes splash-blink{0%,45%{opacity:1}55%,to{opacity:.18}}.splash__foot{letter-spacing:.16em;color:#f4f1e85c;margin-top:clamp(12px,3vmin,28px);font-size:clamp(8px,1.1vmin,11px)}.splash__scan{z-index:3;pointer-events:none;mix-blend-mode:multiply;opacity:.6;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.splash__road,.splash__logo,.splash__press.is-ready{animation:none}}.quip{z-index:45;border:2px solid var(--quip-accent,#ffc857);opacity:0;pointer-events:none;background:linear-gradient(160deg,#181e2af5,#0c1018f5);border-radius:14px;align-items:center;gap:10px;max-width:min(360px,72vw);padding:8px 14px 8px 8px;transition:transform .22s,opacity .22s;display:flex;position:fixed;top:76px;left:14px;transform:translateY(-8px)scale(.96);box-shadow:0 14px 34px #00000073}.quip.is-in{opacity:1;transform:translateY(0)scale(1)}.quip.is-out{opacity:0;transform:translateY(-6px)scale(.97)}.quip__portrait{background:#0b0e15;border-radius:50%;flex:0 0 46px;width:46px;height:46px}.quip__body{flex-direction:column;gap:2px;min-width:0;display:flex}.quip__name{letter-spacing:.12em;text-transform:uppercase;color:var(--quip-accent,#ffc857);font-size:10px;font-weight:900}.quip__text{color:#f4f1e8;font-size:14px;font-weight:700;line-height:1.25}.touch{z-index:44;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:fixed;inset:0}.touch.is-hidden{display:none}.touch__top{top:calc(8px + env(safe-area-inset-top));pointer-events:auto;gap:8px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.touch__chip{color:#f4f1e8;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:#10131cb8;border:2px solid #f4f1e859;border-radius:50%;place-items:center;width:38px;height:38px;font:900 14px/1 system-ui,sans-serif;display:grid}.touch__chip:active{color:#0b0e15;background:#ffc857d9}.touch__steer{left:calc(16px + env(safe-area-inset-left));bottom:calc(22px + env(safe-area-inset-bottom));aspect-ratio:1;pointer-events:auto;touch-action:none;background:radial-gradient(circle at 50% 40%,#ffffff1f,#0000 55%),#10131c8c;border:2px solid #f4f1e84d;border-radius:50%;justify-content:center;align-items:center;width:clamp(112px,24vh,150px);display:flex;position:absolute;box-shadow:inset 0 0 26px #00000073}.touch__steer.is-active{border-color:#ffc857}.touch__knob{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle at 38% 32%,#fff4d1,#ffc857 55%,#d99a2b);border-radius:50%;width:42%;transition:transform 80ms linear;box-shadow:0 4px 12px #00000073}.touch__label{letter-spacing:.18em;color:#f4f1e899;font:800 9px/1 system-ui,sans-serif;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.touch__btn{color:#f4f1e8;letter-spacing:.06em;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:#10131cb8;border:2px solid #f4f1e859;border-radius:50%;place-items:center;font:900 clamp(10px,1.5vmin,13px)/1 system-ui,sans-serif;display:grid;position:absolute;box-shadow:0 6px 18px #00000059}.touch__btn.is-active{color:#0b0e15;background:#ffc857;border-color:#ffc857;transform:scale(.95)}.touch__btn--gas{right:calc(18px + env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));aspect-ratio:1;flex-direction:column;gap:1px;width:clamp(76px,15vh,96px);font-size:clamp(12px,2vmin,16px);line-height:1;display:flex}.touch__btn-label{font-size:inherit}.touch__speed{opacity:.75;font-size:clamp(9px,1.6vmin,12px);font-weight:800}.touch__btn--brake{right:calc(116px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));width:64px;height:64px}.touch__btn--drift{right:calc(26px + env(safe-area-inset-right));bottom:calc(122px + env(safe-area-inset-bottom));width:64px;height:64px}.touch__btn--item{right:calc(120px + env(safe-area-inset-right));bottom:calc(104px + env(safe-area-inset-bottom));width:56px;height:56px}.touch__btn--ability{right:calc(198px + env(safe-area-inset-right));bottom:calc(28px + env(safe-area-inset-bottom));width:56px;height:56px}@media (max-height:430px){.touch__btn--item,.touch__btn--ability{width:50px;height:50px}.touch__btn--ability{right:calc(186px + env(safe-area-inset-right))}}.touch__rotate{z-index:60;color:#f4f1e8;text-align:center;background:radial-gradient(120% 90% at 50% 20%,#1b2338 0%,#0b1020 55%,#05070d 100%);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:none;position:fixed;inset:0}.touch__phone{border:3px solid #ffc857;border-radius:12px;width:52px;height:86px;margin-bottom:16px;position:relative;transform:rotate(90deg);box-shadow:0 0 30px #ffc85740}.touch__phone:after{content:"";background:#ffc857b3;border-radius:2px;width:18px;height:3px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.touch__rotate strong{letter-spacing:.04em;font-size:clamp(18px,3.2vmin,26px)}.touch__rotate span{color:#f4f1e8a6;max-width:320px;font-size:13px;line-height:1.45}@media (orientation:portrait){.touch__rotate{display:flex}.touch__steer,.touch__buttons,.touch__top{display:none}}.cso{--ink:#10131c;--paper:#f4f1e8;--accent:#ff5c4d;--highlight:#ffc857;--teal:#3ec6c0;--green:#7ed957;--muted:#9aa3b8;--line:#f4f1e829;--pad:clamp(14px, 2.4vmin, 34px);--gap:clamp(8px, 1.3vmin, 18px);--radius:clamp(10px, 1.4vmin, 18px);z-index:60;color:var(--paper);pointer-events:auto;touch-action:manipulation;background:radial-gradient(900px 620px at 12% -5%,#ff5c4d33,#0000 62%),radial-gradient(1000px 720px at 92% 108%,#3ec6c029,#0000 64%),#0b0e15;justify-content:center;align-items:center;padding:clamp(8px,2vmin,28px);font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;display:flex;position:fixed;inset:0;overflow:auto}.cso *,.cso :before,.cso :after{box-sizing:border-box}.cso button,.cso input{font:inherit;color:inherit}.cso button{cursor:pointer;appearance:none;border:1px solid var(--line);letter-spacing:.06em;background:#ffffff0a;border-radius:999px;padding:.55em 1.05em;font-weight:700;transition:background .15s,border-color .15s,transform .12s}.cso button:hover:not(:disabled){background:#ffffff17;border-color:#ffc85780}.cso button:active:not(:disabled){transform:translateY(1px)}.cso button:disabled{opacity:.4;cursor:not-allowed}.cso button:focus-visible,.cso input:focus-visible{outline:2px solid var(--highlight);outline-offset:2px}.cso-panel{background:linear-gradient(#1a1f2dfa,#0d1018fe);border:1px solid #f4f1e821;border-radius:clamp(14px,2vmin,26px);width:min(1180px,96vw);max-height:94vh;overflow:auto;box-shadow:0 30px 90px #0000008c,inset 0 1px #ffffff0f}.cso-head{z-index:2;padding:var(--pad);padding-bottom:calc(var(--pad) * .65);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#1a1f2dfc,#1a1f2de6);border-bottom:1px solid #f4f1e814;align-items:center;gap:12px;display:flex;position:sticky;top:0}.cso-brand{align-items:baseline;gap:10px;min-width:0;display:flex}.cso-kicker{letter-spacing:.24em;color:var(--muted);white-space:nowrap;font-size:clamp(9px,1.2vmin,12px)}.cso-online{letter-spacing:.14em;color:var(--teal);text-shadow:0 0 22px #3ec6c073;font-size:clamp(18px,2.6vmin,30px);font-weight:900}.cso-rtt{letter-spacing:.12em;color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.cso-close{border-radius:50%;flex:none;width:38px;height:38px;padding:0;font-size:16px;line-height:1}.cso-body{padding:var(--pad)}.cso-screen{gap:var(--gap);flex-direction:column;display:flex}.cso-title{letter-spacing:.04em;margin:0;font-size:clamp(22px,3.4vmin,40px)}.cso-lead{max-width:74ch;color:var(--muted);margin:0;font-size:clamp(12px,1.5vmin,15px);line-height:1.5}.cso-label{letter-spacing:.2em;color:var(--muted);margin-top:4px;font-size:10px;font-weight:800;display:block}.cso-field{flex-direction:column;gap:6px;max-width:420px;display:flex}.cso-input{letter-spacing:.02em;background:#00000059;border:1px solid #f4f1e838;border-radius:10px;width:100%;padding:.7em .9em;font-size:clamp(15px,1.9vmin,19px)}.cso-code{text-transform:uppercase;letter-spacing:.34em;text-align:center;max-width:320px;font-size:clamp(22px,3.2vmin,34px);font-weight:800}.cso-tabs{gap:8px;margin-top:6px;display:flex}.cso-tab{color:var(--muted);background:0 0;border-bottom-color:#0000;border-radius:10px 10px 0 0}.cso-tab.is-active{color:var(--paper);background:#ffc8571f;border-color:#ffc8578c}.cso-create,.cso-join{gap:var(--gap);border:1px solid var(--line);border-radius:var(--radius);background:#ffffff06;flex-direction:column;padding:clamp(12px,1.8vmin,22px);display:flex}.cso-tracks{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.cso-track{text-align:left;letter-spacing:0;background:#00000040;border-radius:12px;flex-direction:column;align-items:flex-start;gap:3px;padding:.8em .9em;display:flex}.cso-track.is-active{border-color:var(--highlight);background:linear-gradient(#ffc85733,#ffc8570d)}.cso-track-name{font-size:clamp(13px,1.7vmin,17px);font-weight:800}.cso-track-sub{color:var(--muted);font-size:11px}.cso-toggles,.cso-settings-row{flex-wrap:wrap;gap:8px;display:flex}.cso-toggle.is-on,.cso-chip.is-active,.cso-chip.is-on{border-color:var(--green);color:#dff7d4;background:#7ed95729}.cso-chip{letter-spacing:.06em;padding:.42em .8em;font-size:11px}.cso-primary{color:var(--ink);letter-spacing:.08em;background:linear-gradient(#ffd97a,#ffc857);border:none;border-radius:10px;align-self:flex-start;padding:.8em 2.2em;font-size:clamp(13px,1.7vmin,17px);font-weight:900;box-shadow:0 6px #a97c18,0 12px 24px #0006}.cso-primary:hover:not(:disabled){background:linear-gradient(#ffe49a,#ffd36b)}.cso-primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 3px #a97c18}.cso-hint{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.cso-msg{border:1px solid var(--line);background:#f4f1e80f;border-radius:8px;margin:4px 0 0;padding:.6em .9em;font-size:13px}.cso-msg.is-error{color:#ffd5cf;background:#ff5c4d24;border-color:#ff5c4d73}.cso-connecting{text-align:center;align-items:center;padding:6vh 0}.cso-loading{color:var(--teal);font-size:40px;animation:1.1s ease-in-out infinite cso-pulse}@keyframes cso-pulse{50%{opacity:.2}}.cso-code-row{align-items:center;gap:var(--gap);flex-wrap:wrap;display:flex}.cso-code-box{background:#ffc85712;border:1px dashed #ffc85773;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.cso-code-box .cso-label{margin:0}.cso-code-big{letter-spacing:.18em;color:var(--highlight);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(22px,3.2vmin,38px)}.cso-small{letter-spacing:.08em;padding:.35em .7em;font-size:10px}.cso-phase{letter-spacing:.2em;color:var(--muted);margin-left:auto;font-size:10px}.cso-players{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.cso-seat{border:1px solid var(--line);background:#00000047;border-radius:12px;align-items:center;gap:8px;min-height:62px;padding:8px 10px;display:flex}.cso-seat.is-empty{opacity:.55;border-style:dashed}.cso-seat-no{width:22px;height:22px;color:var(--ink);background:var(--highlight);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.cso-seat-portrait,.cso-seat-blank{object-fit:cover;background:#ffffff0f;border-radius:50%;flex:none;width:34px;height:34px}.cso-seat-blank{color:var(--muted);place-items:center;display:grid}.cso-seat-info{flex-direction:column;gap:1px;min-width:0;display:flex}.cso-seat-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.cso-seat-char{color:var(--muted);font-size:10px}.cso-badge{letter-spacing:.1em;vertical-align:middle;color:var(--highlight);background:#ffc85733;border-radius:4px;margin-left:5px;padding:1px 5px;font-size:8px}.cso-badge.is-you{color:var(--teal);background:#3ec6c033}.cso-chars{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.cso-char{letter-spacing:0;background:#0000003d;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;display:flex}.cso-char.is-mine{border-color:var(--highlight);background:linear-gradient(#ffc85733,#0003)}.cso-char.is-taken{opacity:.45}.cso-char.is-suggested{border-color:#3ec6c099;animation:1.6s ease-in-out infinite cso-suggest}@keyframes cso-suggest{50%{box-shadow:0 0 0 3px #3ec6c02e}}.cso-char-portrait{object-fit:cover;border-radius:50%;width:62px;height:62px}.cso-char-name{font-size:13px;font-weight:800}.cso-char-note{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;overflow:hidden}.cso-room-settings{border-top:1px solid #f4f1e814;flex-direction:column;gap:8px;padding-top:6px;display:flex}.cso-footer{align-items:center;gap:var(--gap);border-top:1px solid #f4f1e814;flex-wrap:wrap;padding-top:10px;display:flex}.cso-status{color:var(--muted);flex-direction:column;flex:1;gap:2px;min-width:200px;font-size:12px;display:flex}.cso-status strong{color:var(--paper);font-size:13px}.cso-start{margin-left:auto}.cso-wait{color:var(--muted);letter-spacing:.08em;margin-left:auto;font-size:12px}@media (max-width:720px){.cso-players,.cso-chars{grid-template-columns:repeat(2,minmax(0,1fr))}.cso-kicker{display:none}.cso-primary{text-align:center;align-self:stretch}.cso-start{width:100%;margin-left:0}}
