@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./cinzel-latin-ext-wght-normal-CG36JvV6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./cinzel-latin-wght-normal-DMUuCU8H.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./pixelify-sans-cyrillic-wght-normal-BfQLqnEI.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./pixelify-sans-latin-ext-wght-normal-CsF3XSp0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./pixelify-sans-latin-wght-normal-Cbhn5ptY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kaisei Decol;font-style:normal;font-display:swap;font-weight:500;src:url(./kaisei-decol-latin-500-normal-DF3Pparu.woff2)format("woff2"),url(./kaisei-decol-latin-500-normal-B1KarVBz.woff)format("woff")}@font-face{font-family:Kaisei Decol;font-style:normal;font-display:swap;font-weight:700;src:url(./kaisei-decol-latin-700-normal-dBePdRoi.woff2)format("woff2"),url(./kaisei-decol-latin-700-normal-CE4I4TIU.woff)format("woff")}:root{--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--a1:238 192 98;--a2:232 100 88;--a3:128 200 255;--cyan:rgb(var(--a1));--pink:rgb(var(--a2));--yellow:rgb(var(--a3));--text:#f7efdc;--muted:#b6abc6;--bg:#0d0a22;--radius:12px;--font:"Cinzel Variable", "Cinzel", "Trajan Pro", "Palatino Linotype", Georgia, serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;margin:0;overflow:hidden}#game{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{padding:calc(var(--sat) + 16px) calc(var(--sar) + 16px) calc(var(--sab) + 16px) calc(var(--sal) + 16px);background:color-mix(in srgb, var(--bg) 38%, transparent);-webkit-backdrop-filter:blur(3px);display:none;position:fixed;inset:0;overflow-y:auto}#ui.open{display:flex}.screen{flex-direction:column;gap:12px;width:min(100%,420px);margin:auto;animation:.22s ease-out rise;display:flex}.screen.wide{width:min(100%,560px)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.logo{text-align:center;margin:0 0 4px;line-height:0}.logo img{filter:drop-shadow(0 6px 14px #00000080);width:min(100%,340px);height:auto}.tagline{text-align:center;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:12px}h2{text-align:center;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 14px var(--cyan);margin:0 0 6px;font-size:24px;font-weight:900}h2.gold{text-shadow:0 0 14px var(--yellow)}h2.bad{text-shadow:0 0 14px #ff3b4e}.btn{appearance:none;border:2px solid var(--cyan);border-radius:var(--radius);background:rgb(var(--a1) / .07);width:100%;min-height:52px;color:var(--text);font:800 16px var(--font);letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer;box-shadow:0 0 14px rgb(var(--a1) / .28), inset 0 0 14px rgb(var(--a1) / .1);justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;transition:transform 80ms,background .12s,box-shadow .12s;display:flex}.btn small{letter-spacing:.06em;color:var(--muted);text-align:right;font-size:11px;font-weight:700}.btn:active{transform:scale(.97)}.btn.primary{border-color:var(--pink);background:rgb(var(--a2) / .1);box-shadow:0 0 14px rgb(var(--a2) / .35), inset 0 0 14px rgb(var(--a2) / .12)}.btn.ghost{box-shadow:none;background:0 0;border-color:#9aa3d680;justify-content:center}.btn:disabled{opacity:.38;cursor:default;box-shadow:none}.btn.center{justify-content:center}.row{gap:12px;display:flex}.grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.grid .btn{justify-content:center;min-height:54px;padding:0;font-size:18px}.lessons .btn.done,.grid .btn.done{border-color:var(--yellow);background:rgb(var(--a3) / .12);box-shadow:0 0 12px rgb(var(--a3) / .3)}.rival-dot{background:currentColor;border-radius:50%;flex:none;width:14px;height:14px;box-shadow:0 0 10px}.rival-name{flex:1}.stats{border-radius:var(--radius);background:#0a0820b3;border:1px solid #9aa3d64d;grid-template-columns:1fr auto;gap:8px 16px;padding:14px 18px;font-size:14px;display:grid}.stats dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.stats dd{text-align:right;margin:0;font-weight:800}.note{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow);text-shadow:0 0 10px var(--yellow);margin:0;font-size:13px;font-weight:800}.help{color:#d5d9f5;flex-direction:column;gap:10px;margin:0;padding:0 0 0 18px;font:500 14px/1.45 system-ui,sans-serif;display:flex}.setting{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;min-height:48px;font-size:14px;display:flex}.setting input[type=range]{max-width:190px;accent-color:var(--cyan);flex:1}.setting .btn{justify-content:center;width:auto;min-width:96px;min-height:42px;padding:6px 14px;font-size:13px}#touch button{appearance:none;border-radius:var(--radius);color:#fff;font:900 22px var(--font);cursor:pointer;touch-action:none;background:#0a082099;border:2px solid #ffffff8c;position:fixed}#touch button:active,#touch button.held{background:#ffffff40}#btn-pause{top:calc(var(--sat) + 12px);right:calc(var(--sar) + 12px);width:46px;height:46px}#btn-pause span{border-left:5px solid #fff;border-right:5px solid #fff;width:14px;height:16px;margin:auto;display:block}#btn-raise,#btn-restart{right:calc(var(--sar) + 16px);bottom:calc(var(--sab) + 16px);border-color:var(--yellow);width:96px;height:64px;box-shadow:0 0 14px rgb(var(--a3) / .35)}@media (pointer:fine){body:not(.portrait) #btn-raise{display:none}}body.portrait #btn-pause{top:calc(var(--sat) + 6px);right:auto;left:calc(var(--sal) + 3vw);width:48px;height:48px}body.portrait #btn-raise,body.portrait #btn-restart{top:calc(var(--sat) + 6px);bottom:auto;right:calc(var(--sar) + 3vw);width:82px;height:48px;font-size:13px}body.portrait.lefty #btn-pause{left:auto;right:calc(var(--sar) + 3vw)}body.portrait.lefty #btn-raise,body.portrait.lefty #btn-restart{right:auto;left:calc(var(--sal) + 3vw)}#touch button[hidden]{display:none}@media (prefers-reduced-motion:reduce){.screen{animation:none}}#ui .btn.sel{background:rgb(var(--a1) / .3);box-shadow:0 0 0 2px #ffffff59, 0 0 26px 4px rgb(var(--a1) / .85), inset 0 0 18px rgb(var(--a1) / .3);border-color:#fff;outline:none;transform:scale(1.03)}#ui .btn.primary.sel{background:rgb(var(--a2) / .32);box-shadow:0 0 0 2px #ffffff59, 0 0 26px 4px rgb(var(--a2) / .9), inset 0 0 18px rgb(var(--a2) / .3)}#ui .btn.done.sel{background:rgb(var(--a3) / .32);box-shadow:0 0 0 2px #ffffff59, 0 0 26px 4px rgb(var(--a3) / .9), inset 0 0 18px rgb(var(--a3) / .3)}#ui .btn.sel:active{transform:scale(.97)}#ui .btn:focus,.setting input[type=range]:focus{outline:none}.setting input[type=range].sel{outline:2px solid var(--cyan);outline-offset:6px;box-shadow:0 0 16px rgb(var(--a1) / .6);border-radius:6px}h3{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:800}.hint{color:var(--muted);margin:0;font:500 12px/1.4 system-ui,sans-serif}.hint.center{text-align:center}.note.bad{color:#ff6b7d;text-shadow:none}.row.tight{align-items:center;gap:8px}#ui .btn.mini{justify-content:center;width:auto;min-width:44px;min-height:40px;padding:6px 12px;font-size:12px}input.text{border:2px solid rgb(var(--a1) / .6);border-radius:var(--radius);background:rgb(var(--a1) / .07);min-width:0;height:44px;color:var(--text);font:800 15px var(--font);letter-spacing:.06em;-webkit-user-select:text;user-select:text;outline:none;flex:1;padding:0 12px}input.text.sel{box-shadow:0 0 18px rgb(var(--a1) / .7);border-color:#fff}.avatar{border:2px solid var(--cyan);object-fit:cover;background:rgb(var(--a1) / .12);border-radius:50%;flex:none;width:52px;height:52px}.avatar.small{width:30px;height:30px}.tiles{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.tiles.three{grid-template-columns:repeat(3,1fr)}.tiles.two{grid-template-columns:repeat(2,1fr)}.tile.hero{border-style:solid;font-size:12px}.tile.hero.on{border-color:var(--cyan);background:rgb(var(--a1) / .18);color:var(--text)}.tile.hero .strip .film{height:calc(min(100cqh, 100cqw / var(--ar,1)) * 1.25)}.tile.hero .avatar{margin:auto}.avatar-pick{appearance:none;cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:0}.avatar-pick .avatar{display:block}.avatar-pick.sel .avatar,.avatar-pick:hover .avatar{box-shadow:0 0 18px rgb(var(--a1) / .7);border-color:#fff}.crop-frame{aspect-ratio:1;border:2px solid var(--cyan);border-radius:var(--radius);align-self:center;width:min(260px,70vw);position:relative;overflow:hidden}.crop-frame:after{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 999px #00000080}.crop-view{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.look-row{align-items:center;gap:14px;display:flex}.look-row .tile-wrap{flex:none;width:72px}.look-blocks{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.rival-mascot{filter:drop-shadow(0 4px 10px #0000008c);flex:none;align-self:center;width:120px;height:120px}.tiles.six{grid-template-columns:repeat(6,1fr);gap:4px}.tile-wrap{position:relative}#ui .tile-wrap .btn.mini{background:var(--bg);border-radius:50%;min-width:28px;min-height:28px;padding:0;position:absolute;top:-6px;right:-6px}.tile{appearance:none;aspect-ratio:1;border:2px dashed rgb(var(--a1) / .45);border-radius:var(--radius);background:rgb(var(--a1) / .05);width:100%;color:var(--muted);font:700 10px var(--font);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;padding:6px;display:flex;overflow:hidden}.tile.fixed{cursor:default;border-style:solid}.tiles.six .tile{background:0 0;border:none;justify-content:center;padding:0}.tile canvas{width:100%;height:auto}.tile.sel{box-shadow:0 0 18px rgb(var(--a1) / .7);border-style:solid;border-color:#fff}.mascot-preview{flex:1;width:100%;min-height:0}.mascot,.mascot-preview{justify-content:center;align-items:flex-end;display:flex;container-type:size}.mascot.empty .film,.mascot-preview.empty .film{visibility:hidden}.film{height:min(100cqh, calc(100cqw / var(--ar,1)));aspect-ratio:var(--ar,1);flex:none;overflow:hidden}.mascot.strip .film{height:calc(min(100cqh, 100cqw / var(--ar,1)) * var(--grow,1.3))}.film img{width:calc(var(--n,1) * 100%);max-width:none;height:100%;animation:film 1.2s steps(var(--n,1)) infinite;display:block}@keyframes film{to{margin-left:calc(var(--n,1) * -100%)}}.m-start .film img{animation-duration:.7s}.m-attack .film img{animation-duration:.6s}.m-hit .film img{animation-duration:.55s}.m-danger .film img{animation-duration:.66s}.m-win .film img{animation-duration:.7s}.m-lose .film img{animation-duration:2.4s}#mascots{pointer-events:none;position:fixed;inset:0;overflow:hidden}.mascot-slot{position:absolute}.mascot{--shade:drop-shadow(0 4px 10px #0000008c);width:100%;height:100%;filter:var(--shade);transition:opacity .3s}.mascot[hidden]{display:none}.mascot.faded{opacity:.22}.mascot,.mascot-preview{transform-origin:bottom}.m-idle{animation:2.4s ease-in-out infinite m-breathe,3.7s ease-in-out infinite m-sway}.m-idle.floats{animation:3.1s ease-in-out infinite m-hover,4.3s ease-in-out infinite m-sway}.m-danger.floats{animation:.22s linear infinite m-shake,1.2s ease-in-out infinite m-hover}.m-start{animation:.5s ease-out both m-pop,.7s ease-in-out .5s infinite m-ready}.m-attack{animation:.6s cubic-bezier(.3,0,.2,1) infinite m-strike}.m-hit{animation:.55s ease-out infinite m-recoil}.m-danger{animation:.22s linear infinite m-shake,.9s ease-in-out infinite m-cower}.m-win{animation:.7s ease-in-out infinite m-jump,.7s ease-in-out infinite m-sway}.m-lose{filter:var(--shade,) grayscale(.9) brightness(.7);animation:.7s cubic-bezier(.3,1.4,.6,1) backwards m-fall,3.2s ease-in-out .7s infinite m-sigh;transform:translateY(8%)rotate(-8deg)}@keyframes m-breathe{50%{transform:translateY(-2%)scale(.975,1.04)}}@keyframes m-hover{0%,to{transform:translateY(-3%)}50%{transform:translateY(-10%)}}@keyframes m-sway{25%{rotate:-2deg}75%{rotate:2deg}}@keyframes m-pop{0%{opacity:0;transform:scale(.2)}70%{transform:scale(1.15)}}@keyframes m-ready{30%{transform:scale(1.06,.94)}60%{transform:translateY(-7%)scale(.96,1.06)}}@keyframes m-strike{20%{transform:translate(-9%)scale(1.06,.94)rotate(-5deg)}45%{transform:translate(22%)scale(1.18,.96)rotate(7deg)}70%{transform:translate(10%)scale(1.05)rotate(2deg)}}@keyframes m-recoil{0%{filter:var(--shade,) brightness(2.2);transform:translate(-16%)rotate(-13deg)scale(.94,1.05)}30%{filter:var(--shade,) brightness(1);transform:translate(-9%)rotate(-7deg)}55%{transform:translate(-11%)rotate(-9deg)}80%{transform:translate(-3%)rotate(-2deg)}}@keyframes m-shake{25%{translate:-3% 1%}75%{translate:3% -1%}}@keyframes m-cower{50%{transform:scale(1.05,.93)}}@keyframes m-jump{0%,to{transform:scale(1.1,.9)}45%{transform:translateY(-22%)scale(.95,1.08)}}@keyframes m-fall{0%{filter:var(--shade,);transform:none}}@keyframes m-sigh{50%{scale:1.02 .97}}@media (prefers-reduced-motion:reduce){.mascot,.mascot-preview,.film img{animation:none}}.screen-part{flex-direction:column;gap:12px;display:flex}.players{flex-direction:column;gap:6px;display:flex}.player{border:1px solid rgb(var(--a1) / .3);border-radius:var(--radius);background:rgb(var(--a1) / .05);letter-spacing:.06em;align-items:center;gap:10px;padding:8px 12px;font-size:14px;font-weight:800;display:flex}.player span{flex:1}.player small{color:var(--muted);text-transform:uppercase;font-size:11px}.player.ok small{color:var(--yellow)}.chat{flex-direction:column;gap:8px;display:flex}.chat-log{border:1px solid rgb(var(--a1) / .25);border-radius:var(--radius);-webkit-user-select:text;user-select:text;background:#0a082099;height:120px;padding:8px 12px;font:500 13px/1.4 system-ui,sans-serif;overflow-y:auto}.chat-log p{overflow-wrap:anywhere;margin:0 0 4px}.chat-log b{color:var(--cyan)}.chat-log .mine b{color:var(--pink)}input.text.code{text-transform:uppercase;text-align:center;letter-spacing:.3em}#toasts{top:calc(var(--sat) + 10px);pointer-events:none;flex-direction:column;gap:6px;width:min(90%,420px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius);border:1px solid rgb(var(--a1) / .4);overflow-wrap:anywhere;background:#0a0820d9;margin:0;padding:8px 12px;font:500 13px/1.35 system-ui,sans-serif;animation:.2s ease-out rise}.toast b{color:var(--cyan)}.tile.tall{aspect-ratio:1/2;padding:0}.board-preview{object-fit:cover;width:100%;height:100%}.board-preview.empty{visibility:hidden}.screen>*{animation:.34s cubic-bezier(.2,.9,.3,1.2) backwards enter}.screen>:nth-child(2){animation-delay:30ms}.screen>:nth-child(3){animation-delay:60ms}.screen>:nth-child(4){animation-delay:90ms}.screen>:nth-child(5){animation-delay:.12s}.screen>:nth-child(6){animation-delay:.15s}.screen>:nth-child(7){animation-delay:.18s}.screen>:nth-child(8){animation-delay:.21s}.screen>:nth-child(9){animation-delay:.24s}.screen>:nth-child(n+10){animation-delay:.27s}@keyframes enter{0%{opacity:0;transform:translateY(14px)scale(.96)}}.screen>.logo{animation:.6s cubic-bezier(.2,.9,.3,1.3) backwards logo-in,4.5s ease-in-out .6s infinite logo-float}@keyframes logo-in{0%{opacity:0;filter:blur(8px);transform:scale(1.5)rotate(-4deg)}}@keyframes logo-float{50%{transform:translateY(-6px)rotate(-1deg)}}.btn{transition:transform .14s ease-out,background .14s,box-shadow .14s,border-color .14s;position:relative;overflow:hidden}#ui .btn.sel:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff59 50%,#0000 65%);animation:1.8s ease-in-out infinite sheen;position:absolute;inset:0;transform:translate(-100%)}@keyframes sheen{55%,to{transform:translate(100%)}}.calm .screen>*,.calm #ui .btn.sel:after{animation:none}.calm .btn{transition:none}.calm #ui .btn.sel:after{display:none}@media (prefers-reduced-motion:reduce){.screen>*{animation:none}#ui .btn.sel:after{display:none}}.painted h2,.painted h2.gold,.painted h2.bad{text-shadow:0 2px #00000080}.painted h2{color:var(--cyan)}.painted h2.gold{color:var(--yellow)}.painted h2.bad{color:#ff7a6b}.painted .btn{background:linear-gradient(180deg, rgb(var(--a1) / .2), rgb(var(--a1) / .06));border-width:1.5px;box-shadow:inset 0 1px #ffffff29,0 3px #0006,0 8px 18px #0000004d}.painted .btn.primary{background:linear-gradient(180deg, rgb(var(--a2) / .42), rgb(var(--a2) / .16));box-shadow:inset 0 1px #ffffff38,0 3px #0006,0 8px 18px #0000004d}.painted .btn.ghost,.painted .btn:disabled{box-shadow:none;background:0 0}.lessons{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.lessons .btn{min-height:46px;padding:6px 12px;font-size:13px}.guide-row{align-items:center;gap:16px;display:flex}.tutor-bird{aspect-ratio:1;filter:drop-shadow(0 4px 8px #00000080);flex-direction:column;flex:none;width:104px;display:flex}.bubble{color:#1c1630;box-shadow:0 0 0 2px rgb(var(--a1)), 0 6px 14px #00000073;background:#f7efdc;border-radius:16px;flex:1;padding:12px 16px;font:600 15px/1.4 system-ui,sans-serif;position:relative}.bubble:after{content:"";background:inherit;width:14px;height:14px;box-shadow:-2px 2px 0 rgb(var(--a1));position:absolute;top:22px;left:-7px;transform:rotate(45deg)}.bubble .unsaid{visibility:hidden}:is(.guide-row:has(.typing) .film img,.tutor-box:has(.typing) .film img){animation-duration:.3s}#tutor{pointer-events:none;position:fixed;inset:0}#tutor[hidden]{display:none}.tutor-tap{pointer-events:auto;position:absolute;inset:0}#tutor.hinting .tutor-tap{display:none}.tutor-box{flex-direction:column-reverse;justify-content:flex-end;align-items:flex-start;gap:16px;display:flex;position:absolute}.tutor-talk{flex-direction:column;align-self:stretch;gap:8px;display:flex}.tutor-head{letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);text-shadow:0 1px 3px #000;font-size:12px;font-weight:800}#tutor:not(.hinting) .bubble:not(.typing):before{content:"▼";color:rgb(var(--a2));font-size:11px;animation:.8s ease-in-out infinite tutor-wait;position:absolute;bottom:3px;right:10px}@keyframes tutor-wait{50%{translate:0 3px}}#tutor:not(.over) .tutor-bird{width:min(62%,30vh);margin-left:6%;transform:scaleX(-1)}#tutor:not(.over) .bubble:after{box-shadow:2px 2px 0 rgb(var(--a1));top:auto;bottom:-7px;left:22%}#tutor.over .tutor-box{flex-direction:row;justify-content:flex-start;gap:12px;padding:6px}#tutor.over .tutor-talk{flex:1;align-self:flex-start;gap:4px}#tutor.over .tutor-bird{width:24%}#tutor.over .bubble{padding:9px 12px;font-size:14px}#tutor.over.hinting .tutor-bird{width:15%}#tutor.over.hinting .bubble{opacity:.92;padding:6px 10px;font-size:13px}#tutor.over.hinting .tutor-head{display:none}
