@font-face{font-family:Cinzel Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-decorative-latin-ext-700-normal-Dul5pKgq.woff2)format("woff2"),url(./cinzel-decorative-latin-ext-700-normal-BaOC-94C.woff)format("woff");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 Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-decorative-latin-700-normal-CnX1aK6s.woff2)format("woff2"),url(./cinzel-decorative-latin-700-normal-ov6XPGpn.woff)format("woff");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}:root{--u:min(1vh, .6vw)}@media (height<=500px){:root{--u:min(1.3vh, .72vw)}}@media (orientation:portrait){:root{--u:1.15vw}}html,body{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;color:#f6ead2;-webkit-font-smoothing:antialiased;background:#07050c;height:100%;margin:0;font-family:Cinzel,Georgia,serif;overflow:hidden}#app canvas{display:block;position:fixed;inset:0}#ui{pointer-events:none;-webkit-user-select:none;user-select:none;text-shadow:0 2px 6px #000000bf;position:fixed;inset:0}.vignette{background:radial-gradient(#0000 55%,#0803108c 100%);position:absolute;inset:0}.hud{padding:calc(var(--u) * 2.4 + env(safe-area-inset-top)) calc(2.6vw + env(safe-area-inset-right)) 0 calc(2.6vw + env(safe-area-inset-left));opacity:0;justify-content:space-between;align-items:flex-start;transition:opacity .5s;display:flex;position:absolute;top:0;left:0;right:0}.hud.show{opacity:1}.hearts{gap:.5vw;display:flex}.hearts span{width:calc(var(--u) * 4.4);height:calc(var(--u) * 4.4);filter:drop-shadow(0 2px 3px #000000b3);display:block}.hearts svg{fill:#1e0c1aa6;stroke:#ffe2be8c;stroke-width:1.4px;width:100%;height:100%}.hearts .on svg{fill:#ff3d55;stroke:#ffd9c2;filter:drop-shadow(0 0 6px #ff465acc)}.hud-right{font-size:calc(var(--u) * 3.2);letter-spacing:.04em;align-items:center;gap:1.6vw;font-weight:700;display:flex}.coins,.lives{align-items:center;gap:.55vw;display:flex}.coins i,.gold i,.item i{width:calc(var(--u) * 2.8);height:calc(var(--u) * 2.8);background:radial-gradient(circle at 35% 30%,#fff6b8,#ffc22e 45%,#b9730f 100%);border-radius:50%;display:inline-block;box-shadow:0 0 10px #ffc43c99,inset 0 0 0 2px #78460059}.lives i{width:calc(var(--u) * 2.6);height:calc(var(--u) * 3);box-shadow:inset 0 calc(var(--u) * -1) 0 calc(var(--u) * -.55) #1a1626, 0 calc(var(--u) * -.9) 0 calc(var(--u) * -.55) #f04555;background:linear-gradient(#dfe8ff,#7f93c6);border-radius:50% 50% 35% 35%;display:inline-block}.rune{width:calc(var(--u) * 4.6);height:calc(var(--u) * 4.6);font-size:calc(var(--u) * 3);color:#fff3;background:#140e2299;border:2px solid #ffe2be4d;border-radius:22%;place-items:center;transition:all .6s;display:grid}.rune.on{color:#fff3b0;text-shadow:0 0 12px #ffd85a;background:#78500a8c;border-color:#ffd85a;box-shadow:0 0 22px #ffd250d9}.banner{left:0;right:0;top:calc(var(--u) * 24);text-align:center;opacity:0;position:absolute}.banner.show{animation:3.6s both banner}.banner small{font-size:calc(var(--u) * 2.2);letter-spacing:.5em;text-transform:uppercase;color:#ffd9a0;display:block}.banner h3,.clear h3{margin:calc(var(--u) * .6) 0;font:900 calc(var(--u) * 8.5) "Cinzel Decorative", "Cinzel", serif;letter-spacing:.04em;background:linear-gradient(#fffbe4 20%,#ffd36a 50%,#c9772a 82%);color:#0000;text-shadow:none;filter:drop-shadow(0 4px 10px #000000b3);-webkit-background-clip:text;background-clip:text}hr{background:linear-gradient(90deg,#0000,#ffd9a0,#0000);border:0;width:34vw;height:2px}@keyframes banner{0%{opacity:0;transform:translateY(calc(var(--u) * 2)) scale(.96)}14%,78%{opacity:1;transform:none}to{opacity:0;transform:translateY(calc(var(--u) * -1))}}.hint,.toast{transform:translate(-50%, calc(var(--u) * 1));max-width:70vw;padding:calc(var(--u) * 1.2) 2.4vw;border-radius:calc(var(--u) * 1.2);font-size:calc(var(--u) * 2.5);text-align:center;opacity:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#100a1cb8;border:1px solid #ffe2be59;transition:opacity .3s,transform .3s;position:absolute;left:50%}.hint{bottom:calc(var(--u) * 6)}.toast{top:calc(var(--u) * 13);color:#fff3b0;border-color:#ffd85a99}.hint.show,.toast.show{opacity:1;transform:translate(-50%)}.boss{left:50%;bottom:calc(var(--u) * 5);text-align:center;opacity:0;width:56vw;transition:opacity .6s;position:absolute;transform:translate(-50%)}.boss.show{opacity:1}.boss span{font-size:calc(var(--u) * 2.3);letter-spacing:.25em;text-transform:uppercase;color:#e7c8ff}.boss div{margin-top:calc(var(--u) * .8);height:calc(var(--u) * 1.8);border-radius:calc(var(--u) * 1);background:#10081abf;border:2px solid #e7c8ff80;overflow:hidden}.boss i{background:linear-gradient(90deg,#7a2cff,#ff4a8a 60%,#ffb04a);height:100%;transition:width .25s;display:block;box-shadow:0 0 16px #b56bff}.screen{text-align:center;opacity:0;visibility:hidden;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;padding:0 12vw;transition:opacity .7s,visibility .7s;display:flex;position:absolute;inset:0}.screen.show{opacity:1;visibility:visible}.title{padding-top:calc(var(--u) * 13);background:linear-gradient(#0a05168c,#0000 55%,#0a0516a6);justify-content:flex-start}.logo h1{font:900 calc(var(--u) * 17)/1 "Cinzel Decorative", "Cinzel", serif;letter-spacing:.02em;background:linear-gradient(#fffdf0 12%,#ffe07a 38%,#ff9a3c 60%,#b3402a 86%);color:#0000;text-shadow:none;filter:drop-shadow(0 calc(var(--u) * .5) 0 #3c1020) drop-shadow(0 calc(var(--u) * 1.2) calc(var(--u) * 2.4) #000000a6) drop-shadow(0 0 calc(var(--u) * 5) #ff963c73);-webkit-background-clip:text;background-clip:text;margin:0}.logo h2{margin:calc(var(--u) * 1.5) 0 0;font:700 calc(var(--u) * 3.3) "Cinzel", serif;letter-spacing:.55em;text-transform:uppercase;color:#ffe2b8}.press{margin-top:calc(var(--u) * 5);font-size:calc(var(--u) * 3.2);letter-spacing:.3em;text-transform:uppercase;color:#fff3c8;animation:1.6s ease-in-out infinite pulse}.title .press{margin-top:auto}.keys{margin:calc(var(--u) * 3) 0 calc(var(--u) * 2);font-size:calc(var(--u) * 2);letter-spacing:.08em;color:#e9d6c2}.keys b{color:#ffd36a}.alt{pointer-events:auto;margin-bottom:calc(var(--u) * 3.5);font-size:calc(var(--u) * 1.9);letter-spacing:.2em;text-transform:uppercase;color:#cdb8e8;text-decoration:none}.alt:hover{color:#fff}@keyframes pulse{50%{opacity:.35}}.story,.pause,.over,.clear,.ending,.loading{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080410c7}.story p,.ending p,.over p{max-width:62vw;font-size:calc(var(--u) * 3.1);margin:calc(var(--u) * 1.4) 0;line-height:1.6}.story em{color:#ffd36a;font-style:normal}.screen h3{font:900 calc(var(--u) * 8) "Cinzel Decorative", serif;margin:0 0 calc(var(--u) * 1);color:#ffe07a}.clear small{font-size:calc(var(--u) * 2.3);letter-spacing:.5em;text-transform:uppercase;color:#ffd9a0}.clear p{font-size:calc(var(--u) * 3)}.clear b,.ending b{color:#ffd36a}.ending{background:linear-gradient(#ffbe6e38,#080410d1)}.ending h1{font:900 calc(var(--u) * 13) "Cinzel Decorative", serif;margin:0 0 calc(var(--u) * 2);background:linear-gradient(#fffdf0,#ffd36a 55%,#ff8a3c);color:#0000;text-shadow:none;filter:drop-shadow(0 0 calc(var(--u) * 4) #ffb45099);-webkit-background-clip:text;background-clip:text}.loading{background:#07050c;transition:opacity 1s,visibility 1s}.bar{background:#ffffff1f;border-radius:3px;width:30vw;height:6px;overflow:hidden}.bar i{background:linear-gradient(90deg,#ff9a3c,#ffe07a);width:0;height:100%;transition:width .3s;display:block}.shop{width:36vw;padding:calc(var(--u) * 3) 2.4vw;border-radius:calc(var(--u) * 2);box-shadow:0 calc(var(--u) * 2) calc(var(--u) * 6) #0009, inset 0 0 0 5px #ffd89614;opacity:0;visibility:hidden;background:linear-gradient(#22142ced,#0e0818f2);border:2px solid #ffd8968c;transition:all .3s;position:absolute;top:50%;right:5vw;transform:translate(4vw,-50%)}.shop.show{opacity:1;visibility:visible;transform:translateY(-50%)}.shop h3{margin:0 0 calc(var(--u) * 1.6);font:700 calc(var(--u) * 3.6) "Cinzel Decorative", serif;color:#ffe07a}.shop .gold{right:2.4vw;top:calc(var(--u) * 3.2);font-size:calc(var(--u) * 3);align-items:center;gap:.5vw;font-weight:700;display:flex;position:absolute}.item{gap:calc(var(--u) * .2) 1vw;padding:calc(var(--u) * 1.3) 1.2vw;margin:calc(var(--u) * .7) 0;border-radius:calc(var(--u) * 1);font-size:calc(var(--u) * 2.4);border:1px solid #0000;grid-template-columns:1fr auto;display:grid}.item span{color:#ffd36a;align-items:center;gap:.4vw;font-weight:700;display:flex}.item i{width:calc(var(--u) * 2);height:calc(var(--u) * 2)}.item p{font-size:calc(var(--u) * 1.9);color:#cbb9c9;grid-column:1/3;margin:0}.item.dim b,.item.dim span{opacity:.45}.item.sel{box-shadow:0 0 calc(var(--u) * 2) #ffb45040;background:#ffc86e29;border-color:#ffd896b3}.shop small{margin-top:calc(var(--u) * 1.6);font-size:calc(var(--u) * 1.7);letter-spacing:.12em;color:#a892b4;text-align:center;display:block}.rotate{margin:0 0 calc(var(--u) * 2);font-size:calc(var(--u) * 2.4);letter-spacing:.12em;color:#ffd9a0;display:none}.touch .keys{display:none}.touch .hint{bottom:auto;top:calc(var(--u) * 27 + env(safe-area-inset-top))}.touch .toast{top:calc(var(--u) * 19 + env(safe-area-inset-top))}.touch .boss{bottom:auto;top:calc(var(--u) * 9 + env(safe-area-inset-top))}.touch .shop .item{pointer-events:auto;cursor:pointer}.touch .alt{font-size:max(13px, calc(var(--u) * 2.2));padding:12px 18px}@media (orientation:portrait){.touch .rotate{display:block}.logo h1{font-size:13vw}.logo h2{letter-spacing:.35em;font-size:3.2vw}.banner h3,.clear h3,.screen h3{font-size:8.5vw}.ending h1{font-size:12vw}.screen{padding-left:6vw;padding-right:6vw}.title{padding-top:calc(18vw + env(safe-area-inset-top))}.story p,.ending p,.over p{max-width:88vw;font-size:4.4vw}.press{font-size:4.4vw}.shop{width:auto;padding:4vw;font-size:4vw;left:5vw;right:5vw}.shop h3{font-size:5.4vw}.shop .gold{font-size:4.6vw;top:4vw;right:4vw}.item{padding:2.4vw;font-size:4vw}.item p{font-size:3.3vw}.shop small{font-size:3vw}.hud-right{gap:3vw;font-size:5vw}.hearts span{width:6.5vw;height:6.5vw}.coins i,.gold i{width:4.4vw;height:4.4vw}.lives i{width:4vw;height:4.6vw}.rune{width:7vw;height:7vw;font-size:4.6vw}.hint,.toast{max-width:86vw;font-size:3.8vw}.boss{width:86vw}.boss span{font-size:3.2vw}}
