:root{--ink:#3a2716;--ink-soft:#6b4f33;--parch:#f3e4c0;--parch-dark:#dcc394;--night:#1b1d2a;--amber:#f2b552;--red:#c8412f;--green:#5fb85a;--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f6ecd6;background:var(--night);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-weight:700;line-height:1.5}*{box-sizing:border-box}html,body{background:var(--night);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;margin:0}body{min-height:100dvh}button{font:inherit;cursor:pointer;border:2px solid var(--ink);color:var(--ink);box-shadow:0 3px 0 var(--ink);touch-action:manipulation;background:#fbf3df;border-radius:999px;padding:.45rem 1.1rem;font-weight:800}button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}button.primary{background:var(--amber);padding:.5rem 1.5rem;font-size:1.1rem}button:focus-visible{outline-offset:2px;outline:3px solid #fff3}button:disabled{opacity:.4;cursor:default}kbd{border:1.5px solid var(--ink-soft);min-width:1.6em;font:inherit;text-align:center;color:var(--ink);background:#fff8e8;border-bottom-width:3px;border-radius:5px;padding:0 .35em;font-size:.82em;line-height:1.4;display:inline-block}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;display:flex}.muted{opacity:.7}.parchment{color:var(--ink);background:radial-gradient(ellipse at 30% 20%, #fff6dc 0%, transparent 60%), radial-gradient(ellipse at 80% 90%, #d8bd8a 0%, transparent 55%), var(--parch);border:3px solid #4a321b;border-radius:14px 18px 12px 20px/18px 12px 20px 14px;box-shadow:inset 0 0 0 2px #fff4d8aa,inset 0 0 28px #b48a4d88,0 10px 30px #0009}.screen{min-height:100dvh;padding:calc(1rem + var(--safe-t)) calc(1rem + var(--safe-r)) calc(1rem + var(--safe-b)) calc(1rem + var(--safe-l));background:linear-gradient(#0000 55%, #0008), url(/art/title-scene.webp) center / cover no-repeat, radial-gradient(ellipse at 50% 30%, #3a3248, var(--night) 70%);place-items:center;display:grid}.screen .card{text-align:center;width:min(34rem,100%);padding:1.2rem 1.6rem 1.3rem}.screen h1{letter-spacing:-.02em;color:#4a2a10;text-shadow:0 2px #fff6;margin:.1rem 0 .2rem;font-size:clamp(1.8rem,6vw,2.7rem);font-weight:900;line-height:1.15}.screen h2{color:var(--ink-soft);margin:0 0 .2rem;font-size:.78rem}.screen p{margin:.3rem 0}.stage{flex-direction:column;align-items:center;margin:0;line-height:1.25;display:flex}.stage b{background:var(--ink);color:var(--parch);border-radius:999px;padding:0 .6em;font-size:.85rem}.stage span{color:var(--ink-soft);font-size:.72rem}.lead{font-size:1rem}.rule{color:#7a2a18;font-size:.88rem}.controls-grid{text-align:left;border-top:1.5px dashed #6b4f3366;border-bottom:1.5px dashed #6b4f3366;grid-template-columns:1fr 1fr;gap:.4rem 1rem;margin:.6rem 0 .4rem;padding:.5rem .6rem;display:grid}.controls{margin:0;padding:0;font-size:.8rem;line-height:1.75;list-style:none}.controls li{flex-wrap:wrap;align-items:baseline;gap:.3em;display:flex}.controls kbd.alt{opacity:.7}.controls span{margin-left:.15em}.quiet-btn{box-shadow:none;background:0 0;align-items:center;gap:.3em;padding:.35rem .8rem;font-size:.85rem;display:inline-flex}.quiet-btn svg{width:1.2em;height:1.2em}svg path,svg rect{fill:currentColor}svg path.wave{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}.result .verdict{background:var(--ink);color:var(--parch);border-radius:999px;margin:0;padding:0 .8em;font-size:.9rem;display:inline-block}.result.win .verdict{background:#2f6a2b}.result.lose .verdict{background:#8a2a1c}.result .bag-line{font-size:1.15rem}.result .best{color:var(--ink-soft);font-size:.85rem}.result .new{color:#fff;background:var(--red);border-radius:6px;padding:0 .4em;animation:.6s ease-out pop}.floors{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.82rem}.floors th,.floors td{text-align:left;border-bottom:1px solid #6b4f3333;padding:.2rem .35rem}.floors thead th{color:var(--ink-soft);font-size:.72rem}.floors .num{text-align:right}.floors .tag{background:#5fb85a33;border-radius:5px;padding:0 .4em}.floors .awake .tag{background:#c8412f2e}.floors .lost .tag{background:var(--red);color:#fff}.floors .lost .num{color:var(--red)}.result .reason{font-size:.8rem}.result .continue{letter-spacing:.06em;color:#7a2a18;margin:.6rem 0 .3rem;font-size:1.1rem;font-weight:900}.play{touch-action:none;background:var(--night);position:fixed;inset:0;overflow:hidden}.play .world{width:100%;height:100%;display:block}.play .overlay{pointer-events:none;position:absolute;inset:0}.hud{text-shadow:0 1px 2px #000c,0 0 6px #0008;color:#fbf1da;position:absolute;inset:0}.hud button{pointer-events:auto}.hud .bar{top:calc(6px + var(--safe-t));left:calc(10px + var(--safe-l));right:calc(10px + var(--safe-r));grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;font-size:14px;display:grid;position:absolute}.hud .bar[hidden]{display:none}.hearts{gap:3px;display:flex}.hearts span{filter:drop-shadow(0 1px 1.5px #000c);width:20px;height:18px}.hearts svg{width:100%;height:100%}.hearts .full path{fill:#e5483a;stroke:#3a1208;stroke-width:1.6px}.hearts .empty path{fill:#0006;stroke:#f3e4c0aa;stroke-width:1.6px}.hearts.heal{animation:.6s ease-out heal}.hearts.hurt{animation:.3s linear shake}.hud .mid{background:#0000004d;border-radius:999px;align-items:center;gap:8px;padding:2px 10px 2px 12px;display:flex}.hud .floor{white-space:nowrap}.eye{place-items:center;width:44px;height:26px;display:grid;position:relative}.eye img{object-fit:contain;filter:drop-shadow(0 1px 2px #000c);width:100%;height:100%}.eye .eye-draw,.eye.noart img{display:none}.eye.noart .eye-draw{background:#f3e4c0;border:2px solid #3a2716;border-radius:50%;width:38px;height:20px;transition:height .25s;display:block;position:relative;overflow:hidden}.eye.noart .eye-draw b{background:#6b2a14;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;left:50%}.eye.noart[data-eye=closed] .eye-draw{background:#3a2716;height:4px}.eye.noart[data-eye=half] .eye-draw{height:10px}.eye[data-eye=open]{filter:drop-shadow(0 0 4px #ff6a3d)}.eye[data-eye=awake]{filter:drop-shadow(0 0 6px #ff2a10)saturate(1.4);animation:.12s linear infinite tremble}.eye.noart[data-eye=awake] .eye-draw b{background:#d0180a}.purse{justify-self:end;align-items:center;gap:8px;display:flex}.purse .bag{color:#ffd98a;align-items:center;gap:4px;display:inline-flex}.purse .bag svg{filter:drop-shadow(0 1px 1.5px #000c);width:18px;height:18px}.purse .bag b{font-variant-numeric:tabular-nums;min-width:2.5em}.purse .bag b.bump{animation:.45s ease-out pop}.purse .pouch{color:#e9dcc0;font-variant-numeric:tabular-nums;border:1.5px dashed #e9dcc099;border-radius:999px;padding:0 6px;font-size:12px}.hud .icon{color:#fbf1da;width:32px;height:32px;box-shadow:none;background:#0000005c;border:none;border-radius:50%;place-items:center;padding:5px;display:grid}.hud .icon svg{filter:drop-shadow(0 1px 1px #000c);width:100%;height:100%}.hint{left:50%;bottom:calc(18px + var(--safe-b));white-space:nowrap;opacity:0;background:#0000006b;border-radius:999px;padding:2px 12px;font-size:15px;transition:opacity .15s;position:absolute;transform:translate(-50%)}.hint.on{opacity:1}.banner{text-align:center;opacity:0;font-size:clamp(22px,4.5vw,36px);font-weight:900;position:absolute;top:38%;left:0;right:0}.banner.floor{opacity:1;color:#ffe7b0;animation:.5s ease-out rise}.banner.woke{opacity:1;color:#ffd2c4;text-shadow:0 2px #5a0e04,0 0 14px #ff2a10;animation:.1s linear infinite tremble}.panel-wrap{padding:calc(8px + var(--safe-t)) calc(12px + var(--safe-r)) calc(8px + var(--safe-b)) calc(12px + var(--safe-l));pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.panel-wrap:empty{display:none}.panel{pointer-events:auto;text-align:center;width:min(30rem,100%);max-height:100%;text-shadow:none;padding:.9rem 1.3rem 1rem;font-size:.95rem;overflow:auto}.panel h2{margin:0 0 .3rem;font-size:1.3rem;font-weight:900}.panel p{margin:.2rem 0 .7rem}.panel .kicker{color:#4a2a10;margin:0 0 .3rem;font-size:1.15rem;font-weight:900}.panel .rules{text-align:left;margin:0 0 .5rem;padding:0 0 0 1.1rem;font-size:.9rem;line-height:1.55}.panel .rules li::marker{color:#a0642a}.panel .controls{border-top:1.5px dashed #6b4f3366;border-bottom:1.5px dashed #6b4f3366;flex-wrap:wrap;justify-content:center;gap:0 .9rem;margin:0 0 .7rem;padding:.3rem 0;display:flex}.panel-wrap:not(:empty):before{content:"";z-index:-1;background:#0006;position:absolute;inset:0}.panel-wrap{z-index:1}.hud[data-phase=ending] .panel-wrap{padding-bottom:calc(14px + var(--safe-b));place-items:end center}.hud[data-phase=ending] .panel-wrap:before{background:linear-gradient(#0000 55%,#0008)}.panel.ending{justify-items:center;gap:.2rem;width:min(26rem,100%);min-height:0;max-height:33dvh;padding:.6rem 1.2rem .8rem;display:grid}.panel.ending h2{margin:0}.panel.ending .sum{margin:0 0 .3rem}.panel.rotate .phone{border:3px solid var(--ink);border-radius:7px;width:34px;height:56px;margin:.2rem auto .6rem;animation:1.8s ease-in-out infinite turn}.touch{display:none}.touch.on{display:block}.touch .zone{padding:0 calc(16px + var(--safe-r)) calc(14px + var(--safe-b)) calc(16px + var(--safe-l));pointer-events:auto;touch-action:none;align-items:flex-end;gap:14px;display:flex;position:absolute;bottom:0}.touch .zone-left{left:0}.touch .zone-right{right:0}.touch .pad{width:var(--pad);height:var(--pad);color:#fbf1dacc;text-shadow:0 1px 2px #000;-webkit-backdrop-filter:blur(2px);background:#1b1d2a55;border:2px solid #fbf1da88;border-radius:50%;place-items:center;font-size:15px;display:grid}.touch .zone-left .pad{font-size:24px}.touch .pad-jump{margin-bottom:calc(var(--pad) * .35)}.touch .pad.down{color:#fff;background:#f2b55288;border-color:#fff;transform:scale(.94)}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes heal{0%{filter:none;transform:scale(1)}40%{filter:drop-shadow(0 0 6px var(--green)) hue-rotate(80deg);transform:scale(1.3)}to{filter:none;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes tremble{0%{transform:translate(0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(1px,1px)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes turn{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media (height<=480px){.screen{padding-top:calc(.5rem + var(--safe-t));padding-bottom:calc(.5rem + var(--safe-b))}.screen .card{width:min(40rem,100%);padding:.6rem 1.2rem .7rem}.screen h1{font-size:1.7rem}.lead{font-size:.88rem}.screen p{margin:.15rem 0}.controls-grid{margin:.3rem 0;padding:.3rem .4rem}.controls{font-size:.74rem;line-height:1.6}.rule{font-size:.8rem}button.primary{padding:.35rem 1.3rem;font-size:1rem}.floors{margin:.3rem 0;font-size:.74rem}.floors th,.floors td{padding:.1rem .3rem}.result .continue{margin:.3rem 0 .2rem}.panel{padding:.6rem 1.1rem .7rem;font-size:.85rem}.panel .rules{font-size:.82rem;line-height:1.45}.panel .kicker{font-size:1rem}.hud .bar{font-size:13px}.panel.ending{max-height:40dvh}}@media (width<=560px){.controls-grid{grid-template-columns:1fr}.hud .floor{font-size:12px}}@media (prefers-reduced-motion:reduce){.eye[data-eye=awake],.banner.woke,.panel.rotate .phone{animation:none}}
