:root{color:#eee9df;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#070e16;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(90deg,#050d16a8,#050d16cc 35%,#050d16a8),url(/art/cavern.png) 50%/cover no-repeat fixed,#070e16;min-width:320px;margin:0}body:before{content:"";pointer-events:none;opacity:.2;background:repeating-linear-gradient(115deg,#0000 0 80px,#7b9da011 82px,#0000 84px 150px);position:fixed;inset:0}button,input,summary,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer;color:#e7e2d7;background:#162630;border:1px solid #667d8844;border-radius:9px;min-height:48px;padding:10px 16px;transition:background .2s,transform .2s}button:hover{background:#263e49}button:active{transform:scale(.97)}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #ffbd6e}[hidden]{display:none!important}.shell{max-width:1160px;padding:26px max(30px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(30px, env(safe-area-inset-left));grid-template-columns:1fr minmax(300px,440px);gap:24px 70px;margin:auto;display:grid;position:relative}header,footer{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}header{gap:15px}.brand{color:#eee9df;letter-spacing:7px;font-size:20px;font-weight:800;text-decoration:none}.brand span{color:#d8ab65;margin:0 10px}.eyebrow{color:#a8b5b6;letter-spacing:2px;font-size:9px;line-height:1.7}.icon-button{color:#dfbb80;min-width:48px;font-size:21px}.intro{align-self:center;padding-bottom:10px}h1{letter-spacing:-2px;margin:22px 0;font-size:clamp(34px,4.2vw,58px);font-weight:800;line-height:1.06}h1 span{color:#d6a967;letter-spacing:9px;margin-top:10px;font-size:.75em;display:block}.description{color:#a8b9c1;margin-bottom:26px;font-size:15px;line-height:1.8}.primary{color:#1d1a16;background:linear-gradient(110deg,#d6a463,#f1c786);border-color:#f5c98777;font-weight:700;box-shadow:0 4px 24px #e5a65b12}.primary:hover{background:#f0cc93}.primary span{float:right;margin-left:14px}#create{text-align:left;width:100%}.lobby{max-width:350px}form label{color:#99aeb8;margin:20px 0 8px;font-size:12px;display:block}.join-row{gap:8px;display:flex}input[type=text],input:not([type]){color:#eee9df;letter-spacing:2px;text-transform:uppercase;background:#07111bcc;border:1px solid #52667177;border-radius:9px;width:100%;min-width:0;padding:12px;font-size:13px}#connection{color:#99b8c5;max-width:350px;min-height:40px;margin:18px 0;font-size:12px;line-height:1.7}.rules{border-left:1px solid #c4a26a66;margin-top:24px;padding-left:18px}.rules p{color:#a3b5be;font-size:12px;line-height:1.9}.rules b{color:#e9dfcc;font-weight:500}.rules small,.audio-settings small{color:#768f9e;font-size:10px;line-height:1.9}.audio-settings{color:#9cafb9;max-width:350px;margin-top:22px;font-size:12px}.audio-settings summary{cursor:pointer;min-height:36px}.audio-settings label{justify-content:space-between;align-items:center;gap:15px;margin:8px 0;display:flex}.audio-settings input{accent-color:#d8ab65;width:65%;height:30px}#invitation{flex-wrap:wrap;align-items:center;gap:8px;max-width:350px;display:flex}#invitation .eyebrow{width:100%;margin:0}#code{letter-spacing:5px;color:#efd3a1;font-size:24px}#copy,#copy-link{font-size:12px}#invite-link{color:#83d5de;padding:8px 0;font-size:11px}#leave{color:#ffd0d4;background:#35232c;border:1px solid #a95b6a88;min-height:48px;padding:6px 10px;font-size:11px}.arena-panel{background:linear-gradient(145deg,#14202cdd,#080f19ee);border:1px solid #c4a26a44;border-radius:18px;align-self:center;padding:14px;box-shadow:0 24px 90px #0007,0 0 70px #3e969b09}.scorebar{text-align:center;letter-spacing:1.5px;justify-content:space-between;padding:4px 5px 14px;font-size:10px;display:flex}.scorebar small{letter-spacing:3px;margin-top:6px;font-size:10px;display:block}.orange{color:var(--orange,#ffab53)}.turquoise{color:var(--turquoise,#57e4eb)}.round{color:#e7d0a5;font-variant-numeric:tabular-nums;font-size:16px}.round small{color:#7d939f;letter-spacing:1px;font-size:8px}.arena-wrap{aspect-ratio:9/12;border-radius:7px;width:100%;margin:auto;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #000}#arena{position:absolute;inset:0}#arena canvas{display:block}.overlay{text-align:center;background:linear-gradient(#06111a44,#03101ac9);place-items:center;padding:18px;display:grid;position:absolute;inset:0}.overlay-card{background:#081622e8;border:1px solid #bdac8255;border-radius:12px;max-width:320px;padding:24px 18px;box-shadow:0 12px 40px #0008}.overlay-card h2{color:#e9dabd;margin:12px 0;font-size:25px;font-weight:600}.overlay-card p{color:#a3b8c3;margin:12px 0 18px;font-size:12px;line-height:1.8}.overlay-card button{width:100%;font-size:12px}.controls{justify-content:space-between;align-items:center;gap:10px;padding:14px 6px 3px;display:flex}#joystick{touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(#203440aa,#0a1729);border:1px solid #739caa44;border-radius:50%;flex-shrink:0;width:94px;height:94px;position:relative;box-shadow:inset 0 0 20px #0006}.stick-arrows{color:#a0c6d149;place-items:center;font-size:72px;font-weight:200;display:grid;position:absolute;inset:0}.stick-knob{width:40px;height:40px;transform:translate(var(--stick-x,0px), var(--stick-y,0px));pointer-events:none;background:radial-gradient(circle at 35% 25%,#4b646d,#1a2b38);border:1px solid #7d9da76b;border-radius:50%;position:absolute;top:calc(50% - 20px);left:calc(50% - 20px);box-shadow:0 4px 12px #0008}#action{touch-action:none;-webkit-user-select:none;user-select:none;color:#f0c785;background:radial-gradient(circle at 40% 20%,#715136,#35291e);border:1px solid #c2996266;border-radius:50%;flex-shrink:0;width:80px;height:80px;padding:0;box-shadow:inset 0 0 20px #d5912922,0 5px 15px #0005}#action span{font-size:28px;line-height:1.1;display:block}#action small{letter-spacing:1.5px;font-size:9px}#action.pressed{color:#fff0d2;background:#b57b38;transform:scale(.94);box-shadow:0 0 20px #ffa73755}.control-hint{text-align:center}.control-hint b{letter-spacing:1.5px;font-size:9px;font-weight:500;display:block}.control-hint span{color:#647e8d;letter-spacing:1px;margin-top:8px;font-size:7px;display:block}.caption{letter-spacing:1px;color:#6b8596;justify-content:space-between;gap:8px;padding:12px 4px 0;font-size:8px;display:flex}footer{color:#667d88;letter-spacing:1px;gap:15px;font-size:9px}@media (width>=761px) and (height<=850px){.shell{grid-template-columns:1fr minmax(260px,360px);gap:12px 55px;padding-top:16px}.controls{padding-top:8px}#joystick{width:74px;height:74px}#action{width:66px;height:66px}.intro h1{font-size:45px}.rules{margin-top:15px}}@media (width<=760px){.shell{padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));flex-direction:column;gap:16px;max-width:520px;display:flex}header{min-height:48px}header>.eyebrow{letter-spacing:1px;font-size:7px}.brand{letter-spacing:4px;font-size:16px}.brand span{margin:0 5px}.intro{width:100%;padding:0}.intro>.eyebrow{display:none}h1{margin:12px 0;font-size:36px}h1 span{letter-spacing:4px;margin-left:14px;font-size:.65em;display:inline}.description{margin:10px 0 16px;font-size:13px}.lobby{max-width:none}form label{margin-top:12px}#connection{max-width:none;min-height:0;margin:8px 0}.rules{margin:10px 0 16px}.audio-settings{margin:10px 0}.arena-panel{width:100%;max-width:410px;margin:auto}.controls{padding-top:10px}footer,.in-room .intro h1,.in-room .description,.in-room .rules{display:none}.in-room .shell{gap:6px;max-width:560px;height:100dvh}.in-room .intro{flex:none}.in-room #invitation{gap:4px 8px;max-width:none}.in-room #invitation .eyebrow,.in-room #invite-link{display:none}.in-room #code{letter-spacing:3px;font-size:15px}.in-room #copy,.in-room #copy-link,.in-room #leave{min-height:48px;padding:6px 10px}.in-room #connection{margin:2px 0;font-size:10px}.in-room .audio-settings{z-index:20;background:#0a1825;border:1px solid #42606c;border-radius:8px;max-width:220px;margin:0;padding:6px 10px;position:absolute;top:68px;right:14px}.in-room .audio-settings:not([open]){background:0 0;border:0;padding:0}.in-room .audio-settings summary{min-height:25px;font-size:10px}.in-room #invitation{padding-right:100px}.in-room .arena-panel{flex-direction:column;flex:1;align-items:center;width:100%;max-width:none;min-height:0;padding:8px;display:flex}.in-room .scorebar{flex:none;width:100%;padding-bottom:8px}.in-room .arena-wrap{aspect-ratio:9/12;flex:1;align-self:stretch;width:auto;max-width:100%;height:auto;min-height:0}.in-room .controls{flex:none;width:100%;padding:8px 5px 0}.in-room #joystick{width:86px;height:86px}.in-room #action{width:76px;height:76px}.in-room .caption{flex:none;width:100%;padding-top:6px;font-size:7px}}@media (width<=950px) and (orientation:landscape) and (height<=550px){.in-room .shell{max-width:none;height:100dvh;padding:8px max(14px, env(safe-area-inset-right)) 8px max(14px, env(safe-area-inset-left));grid-template-columns:1fr 2fr;gap:6px 16px;display:grid}.in-room header{grid-column:1;align-self:start;min-height:40px}.in-room header>.eyebrow{display:none}.in-room .intro{grid-area:2/1;align-self:start}.in-room .arena-panel{border-radius:12px;grid-area:1/2/4;height:100%;padding-left:92px;padding-right:88px;position:relative}.in-room .arena-wrap{flex:1;width:100%;min-height:0}.in-room .scorebar{padding:0 0 4px;font-size:8px}.in-room .controls{width:auto;padding:0;position:absolute;bottom:35%;left:5px;right:5px}.in-room .control-hint{display:none}.in-room #joystick{width:80px;height:80px}.in-room #action{width:72px;height:72px}.in-room .caption{font-size:6px}.in-room #invitation{padding-right:0}.in-room .audio-settings{margin-top:14px;position:static}.in-room footer{display:none}.in-room .overlay{padding:6px}.in-room .overlay-card{padding:14px 12px}.in-room .overlay-card h2{font-size:20px}.in-room .overlay-card p{font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before{transition:none!important;animation:none!important}}@media (width<=950px) and (orientation:landscape) and (height<=550px){.in-room .intro h1,.in-room .intro>.eyebrow,.in-room .description,.in-room .rules,.in-room #invitation>.eyebrow,.in-room #invite-link{display:none}.in-room #invitation{gap:4px 8px}.in-room #code{letter-spacing:3px;font-size:15px}.in-room #copy,.in-room #copy-link,.in-room #leave{min-height:48px;padding:6px 10px;font-size:11px}.in-room #connection{min-height:0;margin:10px 0;font-size:11px}.in-room .arena-panel{flex-direction:column;min-height:0;display:flex}.in-room .arena-wrap{aspect-ratio:auto;align-self:stretch;width:100%;margin:0}}.map-picker{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px;padding:0;display:grid}.map-picker legend{color:#b1c3cd;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:.75rem}.map-choice{cursor:pointer;background:#0c1824;border:1px solid #60788755;border-radius:10px;min-height:106px;position:relative;overflow:hidden}.map-choice input{z-index:1;accent-color:#ffc47c;width:16px;height:16px;position:absolute;top:8px;right:8px}.map-choice:has(input:checked){border-color:#ffc47c;box-shadow:0 0 18px #ffab3220}.map-choice:focus-within{outline-offset:2px;outline:2px solid #ffc47c}.map-art{background:var(--preview) center/cover;height:52px;display:block}.map-choice>span:last-child{padding:8px;display:block}.map-choice b{font-size:.72rem;display:block}.map-choice small{color:#96abb6;margin-top:4px;font-size:.65rem;line-height:1.4;display:block}#map-name{color:#aabdc8;letter-spacing:.04em;max-width:140px;font-size:.55rem}.arena-panel{box-shadow:0 20px 90px #0009,0 0 40px #42c7dd0b}.duel-settings{background:#0c1824;border:1px solid #60788755;border-radius:10px;margin:0 0 14px;padding:10px 12px}.duel-settings summary{cursor:pointer;min-height:48px;padding:5px 0;font-size:.8rem}.duel-settings label{color:#b1c3cd;margin-top:12px;font-size:.75rem;display:block}.duel-settings select{color:#eee9df;width:100%;min-height:48px;font:inherit;background:#142630;border:1px solid #607887;border-radius:7px;margin-top:5px;padding:8px 10px}.duel-settings small{color:#96abb6;margin-top:10px;font-size:.7rem;line-height:1.5;display:block}.room-rules{color:#b1c3cd;text-align:center;flex:none;margin:0 0 8px;font-size:10px}
