@font-face{font-family:Pirata One;font-style:normal;font-display:swap;font-weight:400;src:url(./pirata-one-latin-400-normal-C8jLWNfm.woff2) format("woff2"),url(./pirata-one-latin-400-normal-CiJE7gJH.woff) format("woff")}#ui{--ink: #f4e9d8;--glow: #ff9a2e;text-shadow:0 0 12px rgba(0,0,0,.8);font-family:Pirata One,Georgia,serif}.hud-top{position:absolute;left:0;right:0;top:0;display:grid;grid-template-columns:1fr minmax(260px,46%) 1fr;align-items:start;padding:18px 28px 0;gap:20px}.hud-title{display:flex;flex-direction:column;line-height:1}.hud-title .t{font-size:34px;letter-spacing:3px;color:var(--ink)}.hud-title .s{font-size:14px;letter-spacing:1px;opacity:.55;font-family:Georgia,serif;font-style:italic;margin-top:4px}.hud-bar{position:relative;height:12px;border-radius:8px;background:#0000008c;border:1px solid rgba(255,220,170,.35);box-shadow:0 0 18px #0009 inset;margin-top:12px}.hud-bar .fill{position:absolute;inset:0;border-radius:8px;background:linear-gradient(90deg,#ff4a1a,var(--glow),#ffe08a);transform-origin:left center;transform:scaleX(0);box-shadow:0 0 16px #ff8c28a6}.hud-bar:after{content:"";position:absolute;top:-3px;bottom:-3px;width:2px;background:#ffffff8c;left:calc(var(--best, 0) * 100%);opacity:.8}.hud-bar .pct{position:absolute;right:-52px;top:-9px;font-size:24px;color:var(--ink)}.hud-right{display:flex;flex-direction:column;align-items:flex-end;font-size:18px;letter-spacing:2px;opacity:.85;gap:4px}.hud-right .coins{color:#ffd57a;letter-spacing:4px}.hud-practice{position:absolute;left:0;right:0;top:58px;text-align:center;font-size:16px;letter-spacing:2px;color:#7fe3ff;opacity:.9}.hud-bot{position:absolute;left:0;right:0;top:92px;text-align:center;font-size:16px;letter-spacing:2px;color:#ffd57a;opacity:.92}.hud-msg{position:absolute;left:0;right:0;top:36%;text-align:center;font-size:84px;letter-spacing:8px;color:var(--ink);opacity:0;transform:scale(1.12);transition:opacity .35s ease,transform .5s cubic-bezier(.2,.9,.2,1);text-shadow:0 0 40px rgba(255,150,60,.45),0 4px 0 #000}.hud-msg.show{opacity:1;transform:scale(1)}.hud-msg.small{font-size:46px;letter-spacing:5px}.hud-judge{position:absolute;left:0;right:0;top:62%;text-align:center;font-size:34px;letter-spacing:6px;opacity:0;pointer-events:none}.hud-judge.on{animation:judgePop .52s ease-out forwards}@keyframes judgePop{0%{opacity:0;transform:translateY(14px) scale(.8)}18%{opacity:1;transform:translateY(0) scale(1.15)}to{opacity:0;transform:translateY(-16px) scale(1)}}.hud-debug{position:absolute;left:12px;bottom:10px;font-family:Consolas,monospace;font-size:12px;white-space:pre;opacity:.8;display:none;text-shadow:0 0 4px #000}.hud-hint{position:absolute;left:0;right:0;top:60%;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:18px;letter-spacing:.42em;opacity:.85;display:none;animation:hintPulse 1.5s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.35}50%{opacity:.95}}.hud-wrap{position:absolute;inset:0;transition:opacity .35s ease}.hud-hint.play{top:24%;font-size:24px;letter-spacing:.34em;animation:none;opacity:.9;text-shadow:0 0 22px rgba(255,150,60,.6),0 2px 8px #000}.hud-bar .ticks{position:absolute;inset:0;pointer-events:none}.hud-bar .ticks .sec{position:absolute;top:-2px;bottom:-2px;width:1px;background:#ffebd261}.hud-bar .ticks .sec b{position:absolute;top:15px;left:50%;transform:translate(-50%);font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:10px;letter-spacing:.18em;text-transform:uppercase;opacity:.45;white-space:nowrap}.hud-bar .ticks .cp{position:absolute;top:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;transform:rotate(45deg);background:#7fe3ff;box-shadow:0 0 8px #7fe3ff}.hud-bar .fill{z-index:1}.hud-bar .ticks{z-index:2}.hud-bar .ticks .sec b.r1{top:28px}.hud-pause{position:absolute;top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));width:46px;height:46px;align-items:center;justify-content:center;gap:6px;border-radius:50%;border:1px solid rgba(255,190,120,.5);background:#08030a8c;backdrop-filter:blur(4px);z-index:5}.hud-pause i{display:block;width:5px;height:18px;border-radius:2px;background:#f4e9d8;box-shadow:0 0 8px #ff8c32b3}.hud-pause:active{background:#ff963259}.hud-wrap.off .hud-pause{pointer-events:none}html.touch .hud-top{padding-right:max(72px,calc(env(safe-area-inset-right) + 64px))}.menu-root{position:absolute;inset:0;--accent: #ff9a2e;--ink: #f4e9d8;color:var(--ink);font-family:Pirata One,Georgia,serif;pointer-events:none;text-shadow:0 2px 14px rgba(0,0,0,.85)}.menu-root .menu-shade{position:absolute;inset:0;pointer-events:none}.menu-root.layout-title .menu-shade{background:radial-gradient(ellipse 70% 62% at 50% 40%,#040208c7,#0402086b 55%,#04020800),linear-gradient(180deg,#0000008c,#0000 30%)}.menu-root.layout-panel .menu-shade,.menu-root.layout-overlay .menu-shade{background:#0301069e;backdrop-filter:blur(3px) saturate(.85)}.menu-root.layout-levels .menu-shade.top{background:linear-gradient(180deg,#020105db,#02010599 34%,#02010500 62%)}.menu-screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;pointer-events:none}.menu-screen .footer{position:absolute;bottom:3.2vh;left:0;right:0;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:14px;letter-spacing:.22em;opacity:.5}.menu-screen.title{justify-content:flex-start;padding-top:8vh}.logo{font-size:clamp(72px,12.5vw,200px);line-height:.95;letter-spacing:.14em;padding-left:.14em;color:#f7ecdc;text-shadow:0 0 40px rgba(255,140,50,.55),0 0 110px rgba(255,90,30,.35),0 6px 0 rgba(0,0,0,.9);animation:logoIn 1.1s cubic-bezier(.2,.9,.2,1) both}.tagline{font-family:Georgia,serif;font-style:italic;font-size:clamp(14px,1.5vw,22px);letter-spacing:.34em;opacity:.7;margin-top:1.2vh;animation:fadeUp 1.4s .3s both}.logo .l{color:#fff4d8;text-shadow:0 0 18px #ffd27a,0 0 56px #ff9a2e,0 0 130px rgba(255,110,30,.75);animation:lFlicker 5.5s ease-in-out infinite}.logo .u{color:#050207;-webkit-text-stroke:2px rgba(255,176,96,.7);paint-order:stroke fill;text-shadow:0 0 3px rgba(255,190,110,.95),0 0 24px rgba(255,120,40,.8),0 0 80px rgba(255,70,30,.5);letter-spacing:.1em}@keyframes lFlicker{0%,to{filter:brightness(1)}47%{filter:brightness(1.12)}50%{filter:brightness(.82)}53%{filter:brightness(1.18)}}@keyframes logoIn{0%{opacity:0;transform:translateY(18px) scale(1.06);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:.7;transform:none}}.items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:.6vh}.menu-screen.title .items{margin-top:5.5vh;animation:fadeUp2 1.2s .5s both}@keyframes fadeUp2{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.item{position:relative;display:flex;align-items:center;justify-content:center;gap:22px;cursor:pointer;pointer-events:auto;font-size:clamp(26px,2.9vw,44px);letter-spacing:.2em;padding:.5vh 40px;opacity:.55;transition:opacity .16s,transform .16s,text-shadow .16s}.item .mark{position:absolute;left:0;width:26px;height:26px;opacity:0;transform:scale(.4) rotate(0);background:radial-gradient(circle,#fff 0 18%,var(--accent) 22% 46%,transparent 52%);filter:drop-shadow(0 0 10px var(--accent));transition:opacity .16s,transform .2s}.item.focus{opacity:1;transform:scale(1.06);text-shadow:0 0 24px var(--accent),0 0 4px rgba(255,255,255,.35),0 3px 0 #000}.item.focus .mark{opacity:1;transform:scale(1) rotate(45deg)}.item.disabled{opacity:.25;cursor:default}.menu-screen.panel,.menu-screen.overlay{justify-content:center}.panel-title{font-size:clamp(44px,5.2vw,84px);letter-spacing:.22em;padding-left:.22em;text-shadow:0 0 40px color-mix(in srgb,var(--accent) 60%,transparent),0 4px 0 #000;animation:logoIn .5s both}.panel-sub{font-family:Georgia,serif;font-style:italic;letter-spacing:.24em;opacity:.6;margin:.4vh 0 1.2vh;font-size:clamp(13px,1.3vw,19px)}.line{font-family:Georgia,serif;font-size:clamp(16px,1.7vw,25px);letter-spacing:.18em;opacity:.88;margin-top:.5vh;text-shadow:0 2px 10px #000}.line b{font-family:Pirata One,Georgia,serif;font-weight:400;color:var(--accent);letter-spacing:.12em;font-size:1.25em}.menu-screen.panel .items,.menu-screen.overlay .items{margin-top:2.2vh;min-width:min(660px,88vw);gap:.4vh;max-height:66vh;overflow-y:auto;scrollbar-width:none}.menu-screen.panel .items::-webkit-scrollbar{display:none}.menu-screen.panel .item,.menu-screen.overlay .item{width:100%;justify-content:space-between;font-size:clamp(18px,1.9vw,30px);padding:.55vh 44px;letter-spacing:.16em;border-bottom:1px solid rgba(255,220,170,.1);box-sizing:border-box}.menu-screen.overlay .item{justify-content:center;border-bottom:none}.ctl{display:inline-flex;align-items:center;gap:14px;font-family:Georgia,serif;font-size:.62em;letter-spacing:.1em}.ctl .track{display:inline-block;position:relative;width:clamp(140px,16vw,260px);height:6px;border-radius:4px;background:#ffffff24}.ctl .fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 55%,#000),var(--accent));box-shadow:0 0 14px var(--accent)}.ctl .val{min-width:64px;text-align:right}.ctl .arrow{font-family:Pirata One,serif;font-size:1.8em;opacity:.6;line-height:.6}.item.focus .ctl .arrow{opacity:1;color:var(--accent)}.ctl.toggle.on .val{color:var(--accent);text-shadow:0 0 12px var(--accent)}.ctl.toggle.off .val{opacity:.55}.item .hint{position:absolute;right:44px;bottom:-2px;font-family:Georgia,serif;font-size:11px;letter-spacing:.16em;opacity:0}.item.focus .hint{opacity:.55}.menu-screen.levels{justify-content:flex-start;padding-top:5.5vh}.menu-screen.levels.enter{animation:fadeUp2 .6s both}.lv-head{font-size:clamp(16px,1.6vw,24px);letter-spacing:.5em;padding-left:.5em;opacity:.75}.lv-cards{--n: 4;--lg: clamp(12px, 1.8vw, 40px);--cw: min(420px, 21.5vw, calc((92vw - (var(--n) - 1) * var(--lg)) / var(--n)));display:flex;gap:var(--lg);margin-top:2.2vh;align-items:flex-end}.card{position:relative;width:var(--cw);aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;cursor:pointer;pointer-events:auto;background:linear-gradient(160deg,var(--g0),var(--g1));outline:1px solid rgba(255,255,255,.12);opacity:.55;filter:saturate(.65) brightness(.8);transition:transform .22s cubic-bezier(.2,.9,.2,1),opacity .2s,filter .2s,box-shadow .2s}.card .art{position:absolute;inset:0;background-size:cover;background-position:center}.card .fade{position:absolute;inset:0;background:linear-gradient(180deg,#0000001f,#0000 38%,#000000db)}.card .num{position:absolute;left:14px;top:6px;font-size:calc(var(--cw) * .185);opacity:.55;color:var(--accent);text-shadow:0 0 24px var(--accent)}.card .cname{position:absolute;left:16px;bottom:34px;font-size:calc(var(--cw) * .16);letter-spacing:.14em;line-height:1}.card .cmeta{position:absolute;left:16px;right:16px;bottom:10px;display:flex;gap:16px;font-family:Georgia,serif;font-size:clamp(9px,calc(var(--cw) * .044),14px);letter-spacing:.16em;opacity:.9;align-items:baseline}.card .cmeta .cc{margin-left:auto;color:var(--accent);letter-spacing:.3em}.card.sel{transform:translateY(-6px) scale(1.07);opacity:1;filter:none;outline:2px solid var(--accent);box-shadow:0 0 50px color-mix(in srgb,var(--accent) 55%,transparent),0 14px 40px #000000b3}.lv-info{margin-top:3.4vh;display:flex;flex-direction:column;align-items:center;gap:.6vh}.lv-info .ititle{font-size:clamp(48px,6vw,100px);letter-spacing:.2em;padding-left:.2em;line-height:1;text-shadow:0 0 40px var(--accent),0 5px 0 #000}.lv-info .isub{font-family:Georgia,serif;font-style:italic;font-size:clamp(14px,1.5vw,22px);letter-spacing:.26em;opacity:.75}.idiff{display:flex;align-items:center;gap:16px;margin-top:1.2vh}.idiff .lbl{font-family:Georgia,serif;font-size:12px;letter-spacing:.3em;opacity:.55}.idiff .stars{display:flex;gap:5px}.idiff .stars i{width:10px;height:18px;background:#ffffff29;transform:skew(-18deg)}.idiff .stars i.on{background:var(--accent);box-shadow:0 0 10px var(--accent)}.lv-watch{margin-top:1.8vh;display:flex;align-items:center;gap:14px;padding:8px 22px 8px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);background:#08040c8c;cursor:pointer;pointer-events:auto;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.lv-watch:hover{background:color-mix(in srgb,var(--accent) 22%,rgba(8,4,12,.72));box-shadow:0 0 28px color-mix(in srgb,var(--accent) 45%,transparent);transform:translateY(-1px)}.lv-watch .kc{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:7px;border:1px solid rgba(255,255,255,.6);box-shadow:0 2px #ffffff40;font-family:Georgia,serif;font-size:15px;line-height:1}.lv-watch .tx{font-family:Georgia,serif;font-size:clamp(12px,1.1vw,16px);letter-spacing:.3em;opacity:.92}.lv-watch .tx .play{color:var(--accent);margin-right:.5em}.lv-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.lv-watch.lv-board .tx .play{font-size:.9em}.menu-screen.overlay .line.lbhead,.menu-screen.overlay .line.lbrow{display:grid;grid-template-columns:3.6em minmax(0,1fr) 6.4em 5.4em 3.4em;gap:0 1.1em;align-items:baseline;width:min(800px,92vw);box-sizing:border-box;padding:.2vh 16px;text-align:left;font-size:clamp(13px,1.25vw,19px);letter-spacing:.1em;margin-top:.15vh}.line.lbhead{opacity:.5;font-size:clamp(10px,.9vw,14px);letter-spacing:.22em;border-bottom:1px solid rgba(255,220,170,.18);margin-top:1vh}.line.lbrow{border-bottom:1px solid rgba(255,220,170,.07)}.line.lbrow .rk{opacity:.7}.line.lbrow .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line.lbrow .pg{text-align:right;color:var(--accent, #ffb25a)}.line.lbrow .cn{color:#ffd27a;letter-spacing:.04em}.line.lbrow .at{text-align:right;opacity:.8}.line.lbrow.me{background:color-mix(in srgb,var(--accent, #ffb25a) 16%,transparent);border-radius:6px;opacity:1}.line.lbrow.first .rk{color:#ffd27a;opacity:1}.line.lbmsg{opacity:.55;margin:1.6vh 0;text-align:center}.line.lbtext{font-size:clamp(11px,1.05vw,16px);letter-spacing:.05em;line-height:1.55;max-width:min(720px,90vw);text-align:center;opacity:.85;margin-top:.8vh}.nick-overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#030106bd;backdrop-filter:blur(4px)}.nick-box{width:min(560px,90vw);box-sizing:border-box;padding:3vh 36px;border:1px solid rgba(255,220,170,.28);border-radius:14px;background:#0a050eeb;box-shadow:0 0 60px #ff8c3c2e;text-align:center;font-family:Georgia,serif;color:#f4e9d8}.nick-title{font-family:Pirata One,Georgia,serif;font-size:clamp(30px,3.4vw,54px);letter-spacing:.16em;padding-left:.16em}.nick-sub{font-style:italic;letter-spacing:.14em;opacity:.6;margin:.6vh 0 2vh;font-size:clamp(12px,1.1vw,16px)}.nick-input{width:100%;box-sizing:border-box;padding:12px 16px;font:inherit;font-size:clamp(20px,2vw,30px);letter-spacing:.14em;text-align:center;color:#fff4d8;background:#ffffff0f;border:1px solid rgba(255,220,170,.45);border-radius:10px;outline:none}.nick-input:focus{border-color:#ffb25a;box-shadow:0 0 22px #ff963c59}.nick-err{min-height:1.6em;margin-top:1vh;color:#ff8a70;letter-spacing:.14em;font-size:clamp(12px,1.1vw,16px)}.nick-btns{display:flex;gap:14px;justify-content:center;margin-top:1.2vh}.nick-btns button{font:inherit;letter-spacing:.24em;padding:9px 26px;color:#f4e9d8;background:#ffffff0f;border:1px solid rgba(255,220,170,.4);border-radius:999px;cursor:pointer}.nick-btns button:hover{background:#ffb25a38}.nick-note{margin-top:2.2vh;font-size:12px;letter-spacing:.06em;opacity:.55;line-height:1.6}.nick-note a{color:#ffb25a;text-decoration:none}.nick-overlay.wait .nick-input{opacity:.55}.menu-busy{position:absolute;left:0;right:0;bottom:9vh;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:clamp(14px,1.5vw,22px);letter-spacing:.5em;padding-left:.5em;color:#f4e9d8;text-shadow:0 0 18px rgba(255,150,60,.7),0 2px 8px #000;animation:busyPulse 1.1s ease-in-out infinite;pointer-events:none;z-index:5}@keyframes busyPulse{0%,to{opacity:.35}50%{opacity:1}}.calib-root{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:2.4vh;background:#030106d1;backdrop-filter:blur(4px);pointer-events:none;font-family:Pirata One,Georgia,serif;color:var(--ink, #f4e9d8)}.calib-title{font-size:clamp(40px,4.6vw,76px);letter-spacing:.3em;padding-left:.3em;text-shadow:0 0 36px rgba(255,150,60,.5),0 4px 0 #000}.calib-circle{width:clamp(90px,11vw,170px);aspect-ratio:1;border-radius:50%;border:3px solid rgba(255,210,160,.55);box-shadow:0 0 40px #ff963c40 inset}.calib-circle.pulse{animation:calibPulse .5s ease-out}@keyframes calibPulse{0%{transform:scale(1.35);background:#ffc878d9;box-shadow:0 0 90px #ffaa46e6}to{transform:scale(1);background:#ffc87800;box-shadow:0 0 40px #ff963c40 inset}}.calib-label{font-size:clamp(26px,3vw,48px);letter-spacing:.22em;padding-left:.22em}.calib-sub{font-family:Georgia,serif;font-style:italic;letter-spacing:.24em;font-size:clamp(13px,1.3vw,20px);opacity:.65}.calib-root.done .calib-circle{border-color:#ffc878e6}.menu-root.layout-characters .menu-shade.top{background:linear-gradient(180deg,#020105d1,#02010566 22%,#02010500 40%)}.menu-root.layout-characters .menu-shade.bottom{background:linear-gradient(0deg,#020105e6,#0201059e 22%,#02010500 46%)}.menu-screen.characters{justify-content:space-between;padding:5.5vh 0 11vh;box-sizing:border-box}.menu-screen.characters.enter{animation:fadeUp2 .6s both}.ch-head{font-size:clamp(16px,1.6vw,24px);letter-spacing:.5em;padding-left:.5em;opacity:.75}.ch-info{display:flex;flex-direction:column;align-items:center;gap:1vh}.ch-nav{display:flex;align-items:center;gap:clamp(24px,4vw,80px)}.ch-name{font-size:clamp(54px,6.6vw,112px);letter-spacing:.22em;padding-left:.22em;line-height:1;min-width:6.5em;text-align:center;cursor:pointer;pointer-events:auto;text-shadow:0 0 44px var(--accent),0 5px 0 #000;animation:chName .32s cubic-bezier(.2,.9,.2,1) both}@keyframes chName{0%{opacity:0;transform:translateY(10px) scale(.96);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}.ch-nav .arrow{font-family:Pirata One,serif;font-size:clamp(54px,6vw,100px);line-height:.8;cursor:pointer;pointer-events:auto;color:var(--accent);opacity:.55;transition:opacity .15s,transform .15s;text-shadow:0 0 22px var(--accent);user-select:none}.ch-nav .arrow:hover{opacity:1;transform:scale(1.18)}.ch-tag{font-family:Georgia,serif;font-style:italic;font-size:clamp(14px,1.6vw,24px);letter-spacing:.28em;opacity:.8}.ch-dots{display:flex;gap:14px;margin-top:1.2vh}.ch-dots i{width:12px;height:12px;transform:rotate(45deg);background:#fff3;cursor:pointer;pointer-events:auto;transition:background .15s,box-shadow .15s}.ch-dots i.on{background:var(--accent);box-shadow:0 0 14px var(--accent)}.ch-note{font-family:Georgia,serif;font-size:12px;letter-spacing:.3em;opacity:.45;margin-top:.6vh}.touch-btn{display:none;pointer-events:auto;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}html.touch .touch-btn{display:flex}html.touch .menu-screen .footer{display:none}.touch-back{position:absolute;top:max(4px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));align-items:center;justify-content:center;min-width:86px;height:36px;padding:0 16px 0 11px;border-radius:999px;border:1px solid rgba(255,190,120,.5);background:#08030a9e;color:#f4e9d8;font-size:18px;letter-spacing:.16em;text-shadow:0 0 10px rgba(255,140,50,.6);backdrop-filter:blur(4px)}.touch-back:active{background:#ff96324d}@media(max-width:900px){.card .cmeta{left:8px;right:8px;bottom:6px;gap:6px;letter-spacing:.06em;font-size:9px;flex-wrap:nowrap;white-space:nowrap}.card .cmeta span:first-child{display:none}.card .cmeta .cc{letter-spacing:.12em}.card .cname{left:8px;bottom:22px}.card .num{left:8px}}
