@font-face{font-family:Lilita One;src:url(../fonts/lilita-one.woff2)format("woff2");font-display:swap}:root{--ink:#2a1a12;--paper:#fff6e6;--paper2:#ffe9c7;--hot:#ff6a2a;--hot2:#c94a12;--gold:#ffc93a;--silver:#d6dde6;--bronze:#d9874a;--shadow:0 6px 0 #2a1a1259;--round:18px;--display:"Lilita One", "Arial Black", system-ui, sans-serif;--text:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;height:100%;font-family:var(--text);color:var(--ink);background:#2a1a12;margin:0;overflow:hidden}#view{width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}#loading{z-index:50;background:radial-gradient(circle at 50% 40%,#ff8a3a,#8a2e10 70%,#2a1a12);flex-direction:column;justify-content:center;align-items:center;gap:22px;transition:opacity .4s;display:flex;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}.logo{font-family:var(--display);color:#fff6e6;text-align:center;text-shadow:0 6px #2a1a12,0 10px 30px #0006;line-height:.86;transform:rotate(-3deg)}.logo span{letter-spacing:1px;font-size:clamp(54px,13vw,120px);display:block}.logo span:last-child{color:var(--gold)}.bar{background:#00000059;border-radius:9px;width:min(320px,70vw);height:14px;overflow:hidden}.bar i{background:linear-gradient(90deg, var(--gold), #fff2b8);width:0;height:100%;transition:width .2s;display:block}#loading .sub{color:#ffe9c7;font-weight:700}#hud{pointer-events:none;padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 0 max(12px, env(safe-area-inset-left));z-index:5;grid-template-rows:auto auto;grid-template-columns:1fr auto 1fr;align-content:start;align-items:start;display:grid;position:fixed;inset:0}.hud-left .title{font-family:var(--display);color:#fff;text-shadow:0 3px #00000073;font-size:clamp(18px,2.6vw,26px)}.hud-left .row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.chip{color:#fff6e6;background:#2a1a129e;border-radius:999px;padding:4px 10px;font-size:14px;font-weight:800}.chip:empty{display:none}.chip.wreck:before{content:"";background:var(--wreck,#e0532f);vertical-align:1px;border-radius:2px;width:14px;height:7px;margin-right:6px;display:inline-block;box-shadow:0 2px #0006}.hud-center{text-align:center}.target{color:#fff;text-shadow:0 2px #00000080;font-size:13px;font-weight:800}.bolts{justify-content:center;gap:6px;margin-top:4px;display:flex}.bolts i{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:#00000059;width:18px;height:18px}.bolts i.on{background:var(--gold);box-shadow:0 0 10px var(--gold)}.hud-right{pointer-events:auto;justify-self:end}button{font-family:var(--display);cursor:pointer;border:0}.icon{background:var(--paper);width:52px;height:52px;color:var(--ink);box-shadow:var(--shadow);border-radius:16px;font-size:20px}.icon:active,.btn:active{transform:translateY(3px);box-shadow:0 3px #2a1a1259}#hint{left:50%;bottom:max(8%, env(safe-area-inset-bottom));color:var(--paper);font-family:var(--display);opacity:0;pointer-events:none;text-align:center;z-index:6;background:#2a1a12d1;border-radius:16px;max-width:88vw;padding:12px 22px;font-size:clamp(17px,2.4vw,23px);transition:opacity .25s,transform .25s;position:fixed;transform:translate(-50%,16px)}#hint.show{opacity:1;transform:translate(-50%)}#toast{background:var(--gold);color:var(--ink);font-family:var(--display);box-shadow:var(--shadow);opacity:0;z-index:30;pointer-events:none;text-align:center;border-radius:14px;padding:10px 18px;font-size:18px;transition:all .3s;position:fixed;top:76px;left:50%;transform:translate(-50%,-20px)}#toast.show{opacity:1;transform:translate(-50%)}#toast small{font-family:var(--text);font-size:13px;font-weight:700;display:block}#overlay{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:max(14px, env(safe-area-inset-top)) 14px max(14px, env(safe-area-inset-bottom));background:#1c100a8c;justify-content:center;align-items:center;animation:.2s fade;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes fade{0%{opacity:0}}.panel{background:var(--paper);border-radius:26px;width:min(560px,100%);max-height:100%;padding:22px;animation:.28s cubic-bezier(.2,1.4,.4,1) pop;overflow-y:auto;box-shadow:0 10px #2a1a1266,0 30px 60px #00000059}.panel.wide{width:min(980px,100%)}@keyframes pop{0%{opacity:0;transform:scale(.88)}}.panel h1{font-family:var(--display);text-align:center;letter-spacing:.5px;margin:0 0 6px;font-size:clamp(30px,5vw,44px)}.panel h2{font-family:var(--display);margin:16px 0 8px;font-size:22px}.panel p{margin:6px 0;font-weight:600}.panel .sub{text-align:center;opacity:.7;font-weight:700}.btns{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.btns.col{flex-direction:column;align-items:stretch}.btn{background:var(--paper2);color:var(--ink);box-shadow:var(--shadow);border-radius:16px;min-height:54px;padding:14px 22px;font-size:20px}.btn.primary{background:var(--hot);color:#fff;box-shadow:0 6px 0 var(--hot2)}.btn.gold{background:var(--gold)}.btn.small{min-height:44px;padding:10px 14px;font-size:16px}.btn[disabled]{opacity:.45;pointer-events:none}.medals{justify-content:center;gap:14px;margin:14px 0 6px;display:flex}.medal{width:74px;height:74px;font-family:var(--display);text-align:center;color:#2a1a1273;background:#e9dccb;border-radius:50%;place-items:center;font-size:13px;line-height:1.05;display:grid;box-shadow:inset 0 -5px #0000001f}.medal.on{color:var(--ink);animation:.5s cubic-bezier(.2,1.6,.4,1) both medal}.medal.on.b{background:var(--bronze)}.medal.on.s{background:var(--silver)}.medal.on.g{background:var(--gold);box-shadow:0 0 22px var(--gold), inset 0 -5px 0 #0000001f}@keyframes medal{0%{transform:scale(.3)rotate(-30deg)}}.stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;display:grid}.stat{background:var(--paper2);text-align:center;border-radius:14px;padding:10px}.stat b{font-family:var(--display);font-size:26px;display:block}.stat span{opacity:.7;text-transform:uppercase;font-size:12px;font-weight:800}.best{text-align:center;font-family:var(--display);color:var(--hot);font-size:18px}.home{text-align:center}.home .logo span{font-size:clamp(48px,10vw,92px)}.home .tagline{color:#fff6e6;text-shadow:0 2px #0006;margin:10px 0 18px;font-weight:800}.home .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(520px,100%);margin:0 auto;display:grid}.home .grid .btn{width:100%}.home .grid .btn.primary{grid-column:span 2;font-size:28px}.home .meta{color:#ffe9c7;margin-top:14px;font-weight:800}.worlds{scroll-snap-type:x mandatory;grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;gap:14px;padding-bottom:6px;display:grid;overflow-x:auto}.world{color:#fff;scroll-snap-align:start;border-radius:20px;min-height:290px;padding:14px;position:relative}.world h3{font-family:var(--display);text-shadow:0 3px #00000059;margin:0;font-size:26px}.world p{opacity:.92;margin:2px 0 10px;font-size:13px;font-weight:700}.world.locked{filter:grayscale(.8)brightness(.75)}.world .lock{font-family:var(--display);text-shadow:0 2px #00000080;text-align:center;place-items:center;font-size:20px;display:grid;position:absolute;inset:0}.lv{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.lv button{aspect-ratio:1;color:var(--ink);background:#ffffffeb;border-radius:14px;font-size:20px;position:relative;box-shadow:0 4px #0000004d}.lv button.m1{background:#f3c79f}.lv button.m2{background:#e8edf3}.lv button.m3{background:var(--gold)}.lv button i{font-size:9px;font-style:normal;font-family:var(--text);letter-spacing:1px;font-weight:900;position:absolute;bottom:3px;left:0;right:0}.lv button[disabled]{opacity:.45}.swatches{flex-wrap:wrap;gap:10px;display:flex}.swatch{width:54px;height:54px;box-shadow:var(--shadow);color:#fff;font-size:11px;font-family:var(--text);border-radius:14px;font-weight:800;position:relative}.swatch.sel{outline:4px solid var(--ink);outline-offset:2px}.swatch.locked{filter:grayscale()brightness(.6)}.swatch.locked:after{content:attr(data-need);text-align:center;text-shadow:0 1px #000;position:absolute;inset:auto 0 2px}.list{gap:8px;display:grid}.ach{background:var(--paper2);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.ach b{font-family:var(--display);font-size:18px;font-weight:400}.ach .dot{background:#d8c8b4;border-radius:50%;flex:none;width:34px;height:34px}.ach.on .dot{background:var(--gold);box-shadow:0 0 12px var(--gold)}.ach.off{opacity:.6}.setting{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-weight:800;display:flex}.setting input[type=range]{width:50%;accent-color:var(--hot)}.seg{gap:4px;display:flex}.seg button{background:var(--paper2);border-radius:10px;padding:8px 10px;font-size:14px}.seg button.on{background:var(--hot);color:#fff}.board{border-collapse:collapse;width:100%;font-weight:700}.board td{border-bottom:1px dashed #2a1a1233;padding:6px 8px}.board tr.me{background:#ffe0a8}.note{opacity:.75;text-align:center;font-size:13px;font-weight:700}.panel>.btns:not(.col):last-child{z-index:2;background:linear-gradient(to bottom, #fff6e600, var(--paper) 12px);margin:12px -22px -22px;padding:12px 22px 22px;position:sticky;bottom:-22px}@media (max-height:520px){#overlay{padding-top:max(8px, env(safe-area-inset-top));padding-bottom:max(8px, env(safe-area-inset-bottom))}.panel{border-radius:20px;padding:12px 18px}.panel>.btns:not(.col):last-child{margin:8px -18px -12px;padding:8px 18px 12px;bottom:-12px}.panel h1{margin:0;font-size:28px}.panel h2{margin:8px 0 4px;font-size:18px}.medals{gap:10px;margin:4px 0 2px}.medal{width:52px;height:52px;font-size:10px}.stats{margin:6px 0}.stat{padding:4px 6px}.stat b{font-size:19px}.best{margin:2px 0;font-size:15px}.btns{gap:8px;margin-top:8px}.btns.col{gap:6px}.btn{min-height:44px;padding:8px 16px;font-size:17px}.btn.small{min-height:44px;padding:8px 12px;font-size:15px}.setting{padding:4px 0}}@media (max-aspect-ratio:1){#hud{grid-template-columns:1fr auto}.hud-center{grid-area:2/1/auto/-1;margin-top:6px}.home .grid .btn{font-size:18px}}
