:root{--ink: #e8e2d4;--ink-dim: rgba(232, 226, 212, .6);--night: #05070d}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--night);color:var(--ink);font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif}#app,#app canvas{touch-action:none;display:block;width:100%;height:100%}#hud{position:fixed;left:16px;top:16px;pointer-events:none;font-size:13px;line-height:1.6;text-shadow:0 1px 3px rgba(0,0,0,.8)}#hud .title{font-size:16px;font-weight:700;letter-spacing:.04em}#hud .title span{font-weight:400;color:var(--ink-dim)}#app canvas{cursor:pointer}#zone{margin-top:0;font-size:13px;font-weight:600;color:var(--ink-dim)}.labels{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.nametag{display:flex;align-items:center;gap:5px;padding:2px 9px 2px 3px;border:1px solid rgba(120,92,60,.35);border-radius:4px;background:repeating-linear-gradient(97deg,rgba(150,120,80,.07) 0 2px,transparent 2px 7px),#f4ecdce6;color:#2a2018;font-size:12px;font-family:Gowun Batang,Nanum Myeongjo,Batang,serif;font-weight:700;white-space:nowrap;box-shadow:0 1px 4px #00000059}.nametag .seal{display:grid;place-items:center;width:17px;height:17px;border-radius:3px;background:#b3322a;color:#f8ecd8;font-size:11px;line-height:1;box-shadow:inset 0 0 0 1.5px #f8ecd88c;transform:rotate(-4deg)}.nametag.self{border-color:#d6a046cc;box-shadow:0 0 0 1px #ffd9a873,0 1px 6px #0006}.nametag.host{border-color:#c99840f2;box-shadow:0 0 0 1px #ffd9a88c,0 1px 8px #00000073}.nametag.fan{border-color:#4870a8d9}.nametag .fan-badge{margin-left:2px;padding:0 5px;border-radius:3px;background:#22324d;color:#cfe0f5;font-size:10px;font-weight:800;letter-spacing:.08em;line-height:16px}.nametag .host-badge{margin-left:2px;padding:0 5px;border-radius:3px;background:#1d1a17;color:#e9c27a;font-size:10px;font-weight:800;letter-spacing:.08em;line-height:16px}section.blocked .w-thumb:disabled{opacity:.32;cursor:not-allowed}.w-note{margin:2px 0 6px;font-size:12px;opacity:.8}.w-thumb.host-only{position:relative;border-color:#c99840e6}.w-thumb.host-only:after{content:"HOST";position:absolute;right:3px;bottom:3px;padding:0 4px;border-radius:3px;background:#1d1a17;color:#e9c27a;font-size:9px;font-weight:800;letter-spacing:.08em}#emote-bar .host-tab{border-color:#c99840e6;background:#1d1a17e6}#emote-bar .host-tab kbd{color:#e9c27a;font-weight:800;letter-spacing:.06em}#emote-bar .host-tab.on{background:#e8b83a}#emote-bar .host-tab.on kbd{color:#1d1a17}#emote-bar .host-tab[hidden],#host-panel[hidden],#host-panel section[hidden],#cheers-prompt[hidden]{display:none!important}#host-panel{position:fixed;left:50%;bottom:calc(var(--safe-bottom, 0px) + 64px);transform:translate(-50%);display:flex;flex-direction:column;gap:10px;width:min(440px,calc(100vw - 32px));max-height:60vh;overflow-y:auto;padding:12px;border:1px solid rgba(201,152,64,.9);border-radius:14px;background:#1d1a17f2;color:#f3e6c8;z-index:9}#host-panel h4{margin:0 0 6px;color:#e9c27a;font-size:11px;letter-spacing:.12em}#host-panel .hp-row,#host-panel .hp-list{display:flex;flex-wrap:wrap;gap:6px}#host-panel button{min-height:36px;padding:6px 10px;border:1px solid rgba(201,152,64,.55);border-radius:9px;background:#080b1499;color:#f3e6c8;font-size:13px}#host-panel .host-act{display:flex;align-items:center;gap:6px}#host-panel .host-act:disabled{opacity:.45}#host-panel .hp-range{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:12px}#host-panel .hp-range span{margin-right:4px;color:#c9b48c}#host-panel .hp-range button.on{border-color:#e8b83a;background:#e8b83a;color:#1d1a17;font-weight:800}#host-panel .hp-empty{margin:0;color:#c9b48c;font-size:12px}.host-shout-bubble{pointer-events:none;transition:opacity .5s}.host-shout-bubble img{display:block;filter:drop-shadow(0 3px 6px rgba(0,0,0,.5))}.host-shout-bubble.fading{opacity:0}@media(max-width:900px){#host-panel{left:auto;right:calc(var(--safe-right, 0px) + 12px);bottom:var(--above-controls, 120px);transform:none}}#cheers-prompt{position:fixed;left:50%;bottom:calc(var(--safe-bottom, 0px) + 72px);transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;border:1px solid rgba(201,152,64,.9);border-radius:12px;background:#1d1a17eb;color:#f3e6c8;font-size:13px;z-index:9}#cheers-prompt button{padding:6px 12px;border:none;border-radius:8px;background:#e8b83a;color:#1d1a17;font-weight:800}@media(max-width:900px){#cheers-prompt{bottom:var(--above-controls, 120px);max-width:calc(100vw - 32px)}}.bubble{padding:6px 12px;border-radius:12px;background:#f0e8d6f2;color:#1b1714;font-size:14px;font-weight:600;white-space:nowrap;box-shadow:0 2px 8px #00000080}kbd{display:inline-block;min-width:1.4em;padding:0 4px;border:1px solid currentColor;border-radius:4px;font-size:11px;line-height:1.4;text-align:center;opacity:.7}button{font:inherit;cursor:pointer}#top-buttons{position:fixed;right:16px;top:16px;display:flex;gap:8px}#sound-toggle.off{color:#f0b27a}#music{margin-top:2px;font-size:11px;color:#c9b8ff;opacity:.85}#queue .q-hint{margin-top:4px;font-size:12px;color:var(--ink-dim)}#wardrobe-toggle,#sound-toggle,#account-toggle,#settings-toggle,#help-toggle,#people-toggle,#quality-toggle{padding:8px 14px;border:1px solid rgba(232,226,212,.35);border-radius:999px;background:#0a0e1abf;color:var(--ink)}#menu,#account{position:fixed;right:16px;top:60px;bottom:16px;width:min(380px,calc(100vw - 32px));display:none;flex-direction:column;border:1px solid rgba(232,226,212,.2);border-radius:14px;background:#080b14eb;color:var(--ink);overflow:hidden}#menu.open,#account.open{display:flex}#roast-gauge{position:fixed;left:0;top:0;z-index:6;width:112px;height:112px;pointer-events:none}#queue .roast-roll{min-width:52px;min-height:52px;font-size:24px;touch-action:none}#queue .fire-press{min-width:120px;min-height:52px;font-size:18px;font-weight:700}#top-buttons .icon-btn{min-width:44px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;line-height:1}#wardrobe-toggle{display:inline-flex;align-items:center;gap:6px}#wardrobe-toggle .ico{display:inline-flex}#people-toggle.offline{opacity:.45}#touch-jump svg,#touch-roll svg,#touch-sit svg{display:block;margin:auto}#help .help-list{margin:0;padding-left:18px;font-size:13px;line-height:1.55}#help .help-status{margin:4px 0 0;font-size:11px;color:var(--ink-dim);word-break:break-all}#settings .legal-links{margin:4px 0 0;font-size:12px;color:var(--ink-dim);text-align:center}#settings .legal-links a{color:var(--ink-dim)}#settings .legal-links a.privacy{color:var(--ink);font-weight:700}#help,#settings{position:fixed;right:16px;top:60px;z-index:30;width:min(320px,calc(100vw - 32px));display:none;flex-direction:column;gap:10px;padding:14px 16px 16px;border:1px solid rgba(232,226,212,.2);border-radius:14px;background:#080b14eb;color:var(--ink)}#help.open,#settings.open{display:flex}#help .st-head,#settings .st-head{display:flex;align-items:center;justify-content:space-between}#help h3,#settings h3{margin:0;font-size:15px}#help .st-close,#settings .st-close{width:44px;height:44px;margin:-10px -10px -10px 0;border:0;background:none;color:var(--ink-dim);font-size:16px}#settings .st-row{display:flex;flex-direction:column;gap:4px;font-size:13px}#settings .st-ctl{display:flex;align-items:center;gap:10px;min-height:44px}#settings input[type=range]{flex:1;min-width:0;height:44px;accent-color:#d9b46a}#settings output{width:3.2em;text-align:right;font-variant-numeric:tabular-nums}#settings .st-check{flex-direction:row;align-items:center;gap:10px;min-height:44px}#settings .st-check input{width:22px;height:22px;accent-color:#d9b46a}#settings .st-hint{margin:0;font-size:12px;color:var(--ink-dim)}#self-menu{position:fixed;z-index:9;display:flex;gap:10px;padding:8px 10px;border:1px solid rgba(232,226,212,.25);border-radius:18px;background:#080b14db;box-shadow:0 6px 18px #00000073}#self-menu[hidden],#self-menu button[hidden]{display:none}#self-menu button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:60px;min-height:60px;padding:6px 4px 4px;border:1px solid rgba(232,226,212,.3);border-radius:14px;background:#e8e2d414;color:var(--ink);font-size:11px;touch-action:manipulation}#self-menu .sm-badge{display:inline-flex;align-items:center;height:28px;padding:0 6px;border-radius:6px;background:#e8b84a;color:#1b1714;font-size:11px;font-weight:800;letter-spacing:.04em}#settings .st-quick{display:none;flex-wrap:wrap;gap:8px}#settings .st-quick button{min-height:44px;padding:0 14px;border:1px solid rgba(232,226,212,.35);border-radius:999px;background:#0a0e1abf;color:var(--ink)}#settings .st-quick button.off{color:var(--ink-dim)}@media(pointer:fine){body.pc-quick-hide #wardrobe-toggle,body.pc-quick-hide:not(.emotes-open) #emote-bar{display:none!important}}#settings .st-sub{margin:2px 0 0;font-size:12px;font-weight:600;color:var(--ink-dim)}#settings .st-reset{align-self:flex-start;min-height:44px;padding:0 14px;border:1px solid rgba(232,226,212,.35);border-radius:999px;background:#0a0e1abf;color:var(--ink)}#menu,#account{z-index:8}#wardrobe header,#menu header,#account header{padding:14px 16px 8px}#wardrobe h2,#menu h2,#account h2{margin:0;font-size:16px}.w-lock{display:none;margin:4px 0 0;color:#f0b27a;font-size:12px}#wardrobe.locked .w-lock{display:block}#wardrobe.locked .w-body,.m-body{opacity:.45}.w-body{flex:1;overflow-y:auto;padding:0 16px 16px}.w-body h3,.m-body h3{margin:14px 0 6px;font-size:13px;color:var(--ink-dim)}.w-items{display:flex;flex-wrap:wrap;gap:6px}.w-items button{padding:5px 9px;border:1px solid rgba(232,226,212,.2);border-radius:8px;background:#ffffff0a;color:var(--ink);font-size:12px}.w-items button.hanbok{border-color:#ffc47873}.w-items button.on{background:#ffd9a8;border-color:#ffd9a8;color:#1b1714}.w-colors{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.w-colors button{width:22px;height:22px;border:2px solid rgba(255,255,255,.15);border-radius:50%}.w-colors button.on{border-color:#ffd9a8;box-shadow:0 0 0 2px #ffd9a880}#queue{position:fixed;left:50%;bottom:72px;transform:translate(-50%);padding:12px 18px;border-radius:14px;background:#080b14d9;border:1px solid rgba(232,226,212,.25);text-align:center}#queue.hidden{display:none}#queue .q-title{font-size:14px;font-weight:600}#queue button{margin-top:8px;padding:8px 18px;border:none;border-radius:999px;background:#ffd9a8;color:#1b1714;font-weight:700}#queue button.ghost{background:transparent;color:var(--ink);border:1px solid rgba(232,226,212,.4)}#queue.judging .q-title{color:#b9d4ff}#queue.admitted .q-title{color:#9fe0b0}#toast{position:fixed;left:50%;top:22%;transform:translate(-50%,-8px);padding:10px 22px;border-radius:12px;background:#080b14e6;font-size:18px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}#toast.show{opacity:1;transform:translate(-50%)}#toast.pass{color:#9fe0b0}#toast.reject{color:#f08a7a}#toast.info{font-size:14px;font-weight:500}#menu{left:16px;right:auto;top:150px}#menu header{display:flex;align-items:center;justify-content:space-between}.m-sub{margin-left:6px;font-size:12px;font-weight:400;color:var(--ink-dim)}.m-close{padding:4px 10px;border:1px solid rgba(232,226,212,.3);border-radius:999px;background:transparent;color:var(--ink);font-size:12px}.mix-row{align-items:center;margin-bottom:8px}.mix-label{width:34px;font-size:12px;color:var(--ink-dim)}.mix-result{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding:10px 12px;border-radius:10px;background:#ffd9a814}.mix-name{font-size:15px;font-weight:700;color:#ffd9a8}.mix-go{padding:7px 14px;border:none;border-radius:999px;background:#ffd9a8;color:#1b1714;font-weight:700}.emote{font-size:36px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}#emote-bar{position:fixed;left:50%;bottom:12px;transform:translate(-50%);display:flex;gap:4px}#emote-bar button{display:flex;flex-direction:column;align-items:center;padding:4px 5px 2px;border:1px solid rgba(232,226,212,.2);border-radius:8px;background:#080b14bf;color:var(--ink)}#emote-bar .em{font-size:18px;line-height:1.1}#emote-bar kbd{margin-top:2px;border:none;font-size:9px}@media(max-width:900px){#emote-bar{flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 200px)}}#account{bottom:auto;max-height:calc(100vh - 80px)}#account header{display:flex;align-items:center;justify-content:space-between}.a-body{padding:0 16px 16px;overflow-y:auto;font-size:13px;line-height:1.6}.a-body form{display:flex;gap:6px;margin:8px 0}.a-body form[data-act=request]{flex-direction:column;align-items:stretch}.a-body form[data-act=request] input[type=email]{min-height:44px;font-size:16px}.a-body form[data-act=request] button[type=submit]{min-height:44px}.a-body input{flex:1;min-width:0;padding:7px 9px;border:1px solid rgba(232,226,212,.3);border-radius:8px;background:#ffffff0d;color:var(--ink);font:inherit}.a-body button{padding:7px 12px;border:none;border-radius:8px;background:#ffd9a8;color:#1b1714;font-weight:700}.a-body button.a-ghost{background:transparent;color:var(--ink);border:1px solid rgba(232,226,212,.35);font-weight:400}.a-body button.a-danger{background:transparent;color:#f08a7a;border:1px solid rgba(240,138,122,.5);font-weight:400}.a-body a{color:#b9d4ff}.a-note{color:var(--ink-dim);font-size:12px}.a-consents{margin:10px 0 4px;padding:0;border:0}.a-consent{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;border-bottom:1px solid rgba(232,226,212,.1)}.a-consent label{display:flex;flex:1;align-items:center;gap:10px;min-height:44px;cursor:pointer}.a-consent input[type=checkbox]{flex:none;width:20px;height:20px;margin:0;accent-color:#e9c27a}.a-consent a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;font-size:13px}.a-legal a{display:inline-block;padding:6px 0}.a-strong{color:#ffd9a8;font-weight:700}.a-error{color:#f08a7a}.a-dev{padding:8px 10px;border-radius:8px;background:#b9d4ff1a;font-size:12px}.a-stats{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:12px 0}.a-stats dt{color:var(--ink-dim)}.a-stats dd{margin:0}.a-row{display:flex;justify-content:space-between;margin-top:8px}.w-preview{border-radius:12px;background:radial-gradient(ellipse at 50% 40%,#2c3354,#121626 60%,#0a0d16);cursor:grab;overflow:hidden}.w-preview canvas{display:block;width:100%;height:100%}#menu button.soldout,#menu button.soldout:hover{background:#4a1418;border-color:#d4141c;color:#ffb3b3;cursor:not-allowed}#touch-jump{display:none;position:fixed;right:18px;bottom:150px;width:74px;height:74px;border:1px solid rgba(232,226,212,.35);border-radius:50%;background:#080b14b3;color:var(--ink);font-weight:700;z-index:5;touch-action:none;user-select:none;-webkit-user-select:none}@media(pointer:coarse){#touch-jump{display:block}}#queue .q-moves{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:min(520px,calc(100vw - 32px));margin-top:8px}#queue .q-moves button{margin-top:0;padding:6px 12px;background:#e8e2d41f;color:var(--ink);font-weight:600;font-size:12px}#queue .q-moves button.mask{background:#ffd9a840}#queue .q-moves button.on{background:#ffd9a8;color:#1b1714}#archery-catch{position:fixed;top:0;right:0;bottom:0;left:0;display:none;z-index:6;cursor:grab;touch-action:none}#archery-catch.open{display:block}#archery-catch:active{cursor:grabbing}#archery{position:fixed;left:50%;bottom:24px;transform:translate(-50%);width:min(560px,calc(100vw - 32px));padding:14px 18px;border-radius:16px;background:#080b14db;border:1px solid rgba(232,226,212,.3);text-align:center;display:none;z-index:7;pointer-events:none}#archery.open{display:block}#archery .ar-head{font-size:15px}#archery .ar-head b{color:#ffd9a8}#archery .ar-bars{display:grid;gap:8px;margin:12px 0 10px}#archery .ar-bar{position:relative;height:14px;border-radius:999px;background:#e8e2d424;overflow:hidden}#archery .ar-bar i{position:absolute;left:47%;width:6%;top:0;bottom:0;background:#f2c23059;border-left:2px solid #f2c230;border-right:2px solid #f2c230}#archery .ar-bar b{position:absolute;top:1px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#f4f1ea;box-shadow:0 0 6px #fff9}#archery .ar-bar.hit b{background:#f2c230;box-shadow:0 0 10px #f2c230}#archery .ar-draw{height:6px;border-radius:999px;background:#e8e2d41f;overflow:hidden}#archery .ar-draw div{height:100%;width:0;background:linear-gradient(90deg,#8fd6a0,#ffd9a8)}#archery .ar-hint{margin-top:8px;font-size:12px;color:var(--ink-dim)}#archery .ar-hint b{color:var(--ink)}#archery .ar-result{min-height:24px;margin-top:6px;font-size:18px;font-weight:800;color:#ffd9a8}#archery .ar-result.s10{color:#f2c230;font-size:24px}#archery .ar-result.s0,#archery .ar-result.weak{color:#ffb3b3;font-size:14px}#archery .ar-quit{margin-top:8px;padding:6px 16px;border:1px solid rgba(232,226,212,.4);border-radius:999px;background:transparent;color:var(--ink);pointer-events:auto}.arrow-score{padding:2px 10px;border-radius:999px;background:#080b14cc;color:#fff;font-weight:800;font-size:16px}.arrow-score.s10,.arrow-score.s9{color:#f2c230}#swing-ui{position:fixed;right:16px;bottom:64px;width:min(280px,calc(100vw - 32px));padding:14px 18px 16px;border-radius:16px;background:#080b14db;border:1px solid rgba(232,226,212,.3);text-align:center;display:none;z-index:7}#swing-ui.open{display:block}#swing-ui .sw-title{font-size:15px}#swing-ui .sw-title b{color:#ffd9a8}#swing-ui .sw-meter{position:relative;height:12px;margin:12px 0 14px;border-radius:999px;background:#e8e2d424;overflow:hidden}#swing-ui .sw-meter div{height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#6fb6ff,#ffd27a);transition:width .12s linear}#swing-ui .sw-meter span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:10px;line-height:12px;color:#ffffffbf}#swing-ui .sw-hold{width:120px;height:120px;border-radius:50%;font-size:17px;font-weight:800;touch-action:none;user-select:none;-webkit-user-select:none;background:radial-gradient(circle at 40% 35%,#ffe6b8,#e0a050);color:#2a1a08;border:4px solid rgba(255,255,255,.5);box-shadow:0 0 24px #ffd27a59}#swing-ui .sw-hold.on{transform:scale(.94);box-shadow:0 0 36px #ffd27ab3}#swing-ui.spin .sw-hold{background:radial-gradient(circle at 40% 35%,#fff,#8fd0ff);animation:sw-pulse .35s ease-in-out infinite alternate}@keyframes sw-pulse{to{box-shadow:0 0 52px #8fd0fff2}}#swing-ui .sw-hint{margin:12px 0 10px;font-size:13px;color:#fffc;min-height:1.4em}#swing-ui .sw-quit{font-size:13px;padding:6px 16px;border:1px solid rgba(232,226,212,.4);border-radius:999px;background:transparent;color:var(--ink)}#flash{position:fixed;top:0;right:0;bottom:0;left:0;background:#fffaf0;opacity:0;pointer-events:none;z-index:20}.pound-label{padding:3px 12px;border-radius:999px;background:#080b14cc;color:#fffaf0;font-weight:800;font-size:16px;white-space:nowrap}#ttang-catch{position:fixed;top:0;right:0;bottom:0;left:0;display:none;z-index:6;cursor:crosshair;touch-action:none}#ttang-catch.open{display:block}#ttang-ui{position:fixed;left:50%;bottom:16px;transform:translate(-50%);width:min(560px,calc(100vw - 32px));padding:12px 18px;border-radius:16px;background:#080b14db;border:1px solid rgba(232,226,212,.3);text-align:center;display:none;z-index:7;pointer-events:none}#ttang-ui.open{display:block}#ttang-ui .tt-head b{color:#b8f0c4}#ttang-ui .tt-info{font-size:14px;color:#ffffffd9}#ttang-ui .tt-power{position:relative;height:12px;margin:10px 0;border-radius:999px;background:#e8e2d424;overflow:hidden}#ttang-ui .tt-power div{height:100%;width:0;background:linear-gradient(90deg,#8fd6a0,#ffd27a,#ff8a6a)}#ttang-ui .tt-power span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:10px;line-height:12px;color:#ffffffbf}#ttang-ui .tt-hint{font-size:12.5px;line-height:1.5;color:#ffffffbf}#ttang-ui .tt-result{min-height:1.3em;margin-top:6px;font-weight:800;color:#ffd27a}#ttang-ui .tt-result.weak{color:#ff9a8a}#ttang-ui .tt-quit{margin-top:6px;padding:6px 16px;border:1px solid rgba(232,226,212,.4);border-radius:999px;background:transparent;color:var(--ink);pointer-events:auto}.ttang-label{padding:2px 10px;border-radius:999px;background:#080b14bf;color:#fff;font-size:12px;white-space:nowrap}.ttang-pop{padding:3px 12px;border-radius:999px;background:#080b14d9;color:#fff;font-weight:800;font-size:15px;white-space:nowrap}.ttang-pop.claim{color:#8fd6a0}.ttang-pop.out,.ttang-pop.fail{color:#ff9a8a}.plant-label{padding:2px 8px;border-radius:999px;background:#080b1499;color:#f6e8c8;font-size:11px;white-space:nowrap}#quote-card{position:fixed;left:50%;top:70px;transform:translate(-50%);width:min(560px,calc(100vw - 32px));padding:16px 22px 14px;border-radius:18px;background:#14100ad1;border:1px solid rgba(255,216,150,.45);box-shadow:0 0 40px #ffbe6e40;text-align:center;display:none;z-index:8}#quote-card.open{display:block}#quote-card .qc-head{font-size:14px;color:#e8d8b8}#quote-card .qc-head b{color:#ffd98a;font-size:16px}#quote-card .qc-new{margin-left:6px;padding:1px 8px;border-radius:999px;background:#ffd27a;color:#2a1a08;font-size:11px;font-weight:800}#quote-card .qc-text{margin:12px 0 10px;font-size:21px;line-height:1.55;font-weight:700;color:#fff6e0;word-break:keep-all}#quote-card.flower .qc-text{color:#ffe8f2}#quote-card .qc-ch{display:inline-block;white-space:pre;opacity:0;text-shadow:0 0 12px rgba(255,210,130,.6)}#quote-card .qc-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--ink-dim)}#quote-card .qc-close{padding:5px 14px;border:1px solid rgba(232,226,212,.4);border-radius:999px;background:transparent;color:var(--ink)}@keyframes dream-in{0%{transform:translateY(12px) scale(.96);opacity:0}}#dream-veil{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:60}#dream-veil .lid{position:absolute;left:-5%;width:110%;height:0;background:#07040f;transition:height 1.1s cubic-bezier(.5,0,.3,1)}#dream-veil .lid.top{top:0;border-radius:0 0 50% 50%/0 0 40px 40px}#dream-veil .lid.bottom{bottom:0;border-radius:50% 50% 0 0/40px 40px 0 0}#dream-veil.closing .lid,#dream-veil.closed .lid{height:52%}#dream-veil.closed .lid{transition:none}#dream-veil.opening .lid{height:0;transition-duration:1.3s}#dream-veil .dv-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#d9ccff;font-size:26px;font-weight:700;letter-spacing:.08em;opacity:0;transition:opacity .4s}#dream-veil.closed .dv-text{opacity:1}#dream-hurt{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(255,60,90,.75));z-index:8}#dream-hud{display:none;position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9;color:#f3ecff}#dream-hud.open{display:block}#dream-hud .dh-top{position:absolute;top:54px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;padding:8px 16px;border-radius:999px;background:#1a1038b8;border:1px solid rgba(255,230,170,.25);white-space:nowrap;font-size:14px}#dream-hud .dh-me{display:flex;align-items:center;gap:8px}#dream-hud .dh-label{color:#c9bde8;font-size:12px}#dream-hud .dh-hp{width:min(220px,34vw);height:14px;border-radius:999px;background:#ffffff26;overflow:hidden}#dream-hud .dh-hp i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#7ee0a0,#b8f08a);transition:width .2s}#dream-hud .dh-hp.low i{background:linear-gradient(90deg,#ff6a7a,#ffa36a)}#dream-hud .dh-bars{display:flex;flex-direction:column;gap:4px}#dream-hud .dh-pow{width:min(220px,34vw);height:8px;border-radius:999px;background:#ffffff1f;overflow:hidden;opacity:.55;transition:opacity .15s}#dream-hud .dh-pow.on{opacity:1}#dream-hud .dh-pow i{display:block;height:100%;width:0;background:linear-gradient(90deg,#5fc8ff,#b48cff)}#dream-hud .dh-pow.full i{background:linear-gradient(90deg,#ff9a3c,#ffe14a);animation:dh-pow-glow .18s infinite alternate}@keyframes dh-pow-glow{0%{filter:brightness(1)}to{filter:brightness(1.5)}}#dream-hud .dh-powtext{min-width:48px;color:#ffe14a;font-weight:900;font-size:12px}#dream-hud .dh-left,#dream-hud .dh-time{color:#ffe7a8;font-weight:700}#dream-hud .dh-big{position:absolute;top:34%;left:0;right:0;text-align:center;font-size:clamp(34px,7vw,64px);font-weight:900;color:#ffe7a8;text-shadow:0 4px 20px rgba(80,40,160,.8)}#dream-hud .dh-bottom{position:absolute;bottom:64px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;width:min(560px,calc(100vw - 32px))}#dream-hud .dh-hint{padding:4px 12px;border-radius:999px;background:#1a103899;font-size:13px;text-align:center}#dream-hud .dh-buttons{display:flex;gap:10px;pointer-events:auto}#dream-hud .dh-buttons button{padding:12px 22px;border-radius:999px;border:0;background:#ffd98a;color:#2a1a10;font-weight:800;font-size:16px;cursor:pointer;touch-action:none}#dream-hud .dh-p.cool{background:linear-gradient(90deg,#ffd98a73 calc(var(--cd, 0) * 100%),#ffd98a 0)}#dream-hud .dh-p:disabled{opacity:.4;cursor:default}#dream-hud .dh-buttons .ghost{background:#ffffff24;color:#f3ecff;font-size:13px}#dream-hud .dh-result{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(400px,calc(100vw - 32px));padding:22px;border-radius:22px;background:#1a1038eb;border:1px solid rgba(255,230,170,.4);text-align:center;animation:dream-in .35s ease-out}#dream-hud .dh-result h3{margin:0 0 6px;color:#ffe7a8;font-size:24px}#dream-hud .dh-result p{margin:4px 0;font-size:14px}#dream-hud .dh-result ol{margin:12px 0 6px;padding:0;list-style:none;text-align:left;font-size:14px}#dream-hud .dh-result li{display:flex;justify-content:space-between;padding:3px 8px;border-radius:8px}#dream-hud .dh-result li.me{background:#ffd98a40;font-weight:800}#dream-hud .dh-result .dr-sub{color:#c9bde8}.hpbar{width:54px;height:7px;border-radius:999px;background:#140a28a6;border:1px solid rgba(255,255,255,.4);overflow:hidden;pointer-events:none}.hpbar i{display:block;height:100%;width:100%;background:#7ee0a0;transition:width .2s}.hpbar.low i{background:#ff6a7a}.dream-pop{font-weight:900;font-size:20px;color:#fff;text-shadow:0 2px 6px rgba(60,20,120,.9);pointer-events:none}.dream-pop.heavy{font-size:30px;color:#ffd98a}.dream-pop.ko{color:#c9bdff}.dream-pop.drop{font-size:15px;color:#ffb3c4}.dream-pop.full{font-size:40px;color:#ffe14a;-webkit-text-stroke:2px #6a2a10;animation:dream-pop-punch .25s ease-out}.dream-pop.dmg{font-size:22px;color:#ff8a8a}@keyframes dream-pop-punch{0%{transform:scale(2.2)}to{transform:scale(1)}}#wardrobe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:none;align-items:center;justify-content:center;padding:16px;background:#03050c8c}#wardrobe.open{display:flex}#wardrobe .w-window{display:flex;flex-direction:column;width:min(1100px,100%);height:min(780px,100%);border:1px solid rgba(232,226,212,.2);border-radius:16px;background:#080b14f2;color:var(--ink);overflow:hidden}#wardrobe header{display:flex;align-items:center;gap:12px}#wardrobe header .w-close{margin-left:auto}#wardrobe .w-lock{margin:0}.w-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(260px,40%) 1fr;gap:12px;padding:0 16px 16px}.w-main .w-preview{height:100%;min-height:0}.w-main .w-body{min-height:0;padding:0 4px 8px 0}.w-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.w-thumb{position:relative;aspect-ratio:1;padding:0;border:2px solid rgba(232,226,212,.14);border-radius:12px;background:radial-gradient(ellipse at 50% 35%,#2c3354,#141a2c 75%);overflow:hidden;cursor:pointer}.w-thumb img{display:block;width:100%;height:100%;object-fit:cover}.w-thumb img:not([src]){visibility:hidden}.w-thumb.none:after{content:"";position:absolute;top:26%;right:26%;bottom:26%;left:26%;border:2px solid rgba(232,226,212,.4);border-radius:50%;background:linear-gradient(135deg,transparent 46%,rgba(232,226,212,.4) 46%,rgba(232,226,212,.4) 54%,transparent 54%)}.w-thumb.hanbok{border-color:#ffc47866}.w-thumb:hover{border-color:#ffd9a8b3}.w-thumb.on{border-color:#ffd9a8;box-shadow:0 0 0 2px #ffd9a873}.w-colors.fixed{opacity:.3}@media(max-width:720px){#wardrobe{padding:8px}.w-main{grid-template-columns:1fr;grid-template-rows:34vh 1fr}.w-thumbs{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px}}:is(#guide-talk,.npc-talk){position:fixed;left:50%;bottom:110px;z-index:30;display:none;flex-direction:column;width:min(560px,calc(100vw - 32px));transform:translate(-50%);border:1px solid rgba(240,196,120,.45);border-radius:14px;background:#0a0d18f0;color:var(--ink);box-shadow:0 0 30px #ff783c26}:is(#guide-talk,.npc-talk).open{display:flex}:is(#guide-talk,.npc-talk) header{display:flex;align-items:center;gap:8px;padding:10px 14px 4px;font-size:14px}:is(#guide-talk,.npc-talk) .g-lantern{width:12px;height:18px;border-radius:4px;background:linear-gradient(#2f6f8f 0,#2f6f8f 22%,#e0503a 22%,#e0503a 78%,#2f6f8f 78%);box-shadow:0 0 10px #ff6e3cb3}:is(#guide-talk,.npc-talk) .g-close{margin-left:auto;padding:3px 10px;border:1px solid rgba(232,226,212,.25);border-radius:999px;background:transparent;color:var(--ink-dim);font-size:12px}:is(#guide-talk,.npc-talk) .g-log{max-height:168px;overflow-y:auto;padding:2px 14px;font-size:14px;line-height:1.55}:is(#guide-talk,.npc-talk) .g-log p{margin:4px 0}:is(#guide-talk,.npc-talk) .g-ask{color:#ffd9a8;font-weight:600}:is(#guide-talk,.npc-talk) .g-rps{display:flex;gap:16px;color:#ffd9a8}:is(#guide-talk,.npc-talk) .g-buttons{display:flex;flex-wrap:wrap;gap:8px;padding:8px 14px 12px}:is(#guide-talk,.npc-talk) .g-buttons button{padding:8px 16px;border:1px solid #ffd9a8;border-radius:999px;background:#ffd9a8;color:#1b1714;font-size:14px;font-weight:600}:is(#guide-talk,.npc-talk) .g-buttons button.ghost{background:transparent;color:var(--ink);border-color:#e8e2d459}:is(#guide-talk,.npc-talk) .g-buttons .g-hand{display:flex;align-items:center;gap:6px}:is(#guide-talk,.npc-talk) .g-hand span{font-size:20px}:is(#guide-talk,.npc-talk) .g-wait{color:var(--ink-dim);font-size:14px}#zelkova-panel{position:fixed;right:16px;bottom:84px;z-index:30;display:none;flex-direction:column;gap:8px;width:min(400px,calc(100vw - 32px));padding:12px 16px 14px;border:1px solid rgba(150,240,210,.45);border-radius:16px;background:#081214eb;color:var(--ink);box-shadow:0 0 40px #78f0d22e}#zelkova-panel.open{display:flex}#zelkova-panel header{display:flex;align-items:center;font-size:15px;color:#c9f5e6}#zelkova-panel .z-close{margin-left:auto;padding:3px 10px;border:1px solid rgba(232,226,212,.25);border-radius:999px;background:transparent;color:var(--ink-dim);font-size:12px}#zelkova-panel p{margin:0;font-size:13px;color:var(--ink-dim)}#zelkova-panel .z-recent{margin:0;padding:0;list-style:none;max-height:128px;overflow-y:auto;font-size:14px}#zelkova-panel .z-recent li{display:flex;gap:8px;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(232,226,212,.08)}#zelkova-panel .z-text{font-family:Gowun Batang,Nanum Myeongjo,serif}#zelkova-panel .z-by,#zelkova-panel .z-empty{flex:none;color:var(--ink-dim);font-size:12px}#zelkova-panel .z-write{display:flex;gap:8px;align-items:center}#zelkova-panel input{flex:1;min-width:0;padding:9px 12px;border:1px solid rgba(150,240,210,.35);border-radius:10px;background:#ffffff0f;color:var(--ink);font-size:15px}#zelkova-panel input:disabled{opacity:.5}#zelkova-panel .z-count{flex:none;color:var(--ink-dim);font-size:12px}#zelkova-panel .z-send{flex:none;padding:9px 14px;border:0;border-radius:999px;background:#bff3df;color:#10241e;font-weight:700}#zelkova-panel .z-send:disabled{opacity:.4}#zelkova-panel .z-hint.ok{color:#bff3df}#paint{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:none;align-items:center;justify-content:center;padding:12px;background:#06060899;color:var(--ink)}#paint.open{display:flex}#paint>div{display:none}#paint.resume .p-resume,#paint.grind .p-grind,#paint.draw .p-draw,#paint.finish .p-finish,#paint.timeout .p-finish,#paint.upload .p-finish{display:flex}#paint button{padding:9px 16px;border:1px solid #ead9b8;border-radius:999px;background:#ead9b8;color:#1b1714;font-weight:700;font-size:14px;cursor:pointer}#paint button.ghost{background:transparent;color:var(--ink);border-color:#e8e2d459}#paint h3{margin:0;font-family:Gowun Batang,Nanum Myeongjo,serif;font-size:22px}#paint .p-sub{margin:0;color:var(--ink-dim);font-size:13px}#paint .p-grind{flex-direction:column;align-items:center;gap:14px;width:min(420px,100%);padding:26px 22px;border-radius:18px;background:#100e0cf2;border:1px solid rgba(232,214,180,.3)}#paint .p-stone{position:relative;width:180px;height:120px;border-radius:46% 46% 40% 40%;background:radial-gradient(ellipse at 40% 35%,#4a4d55,#24262b 70%);box-shadow:inset 0 -8px 16px #0009,0 6px 18px #00000080}#paint .p-pool{position:absolute;left:30px;right:30px;top:22px;height:46px;border-radius:50%;background:radial-gradient(ellipse,#050405 30%,#15151a);opacity:.15}#paint .p-stick{position:absolute;left:82px;top:30px;width:22px;height:64px;border-radius:4px;background:linear-gradient(90deg,#1b1a19,#3a3836 50%,#1b1a19);transform-origin:50% 90%}#paint .p-grind-btn.on~.p-stone .p-stick,#paint .p-grind:has(.p-grind-btn.on) .p-stick{animation:grind .7s linear infinite}@keyframes grind{0%{transform:translate(-14px,4px) rotate(-6deg)}25%{transform:translateY(10px) rotate(0)}50%{transform:translate(14px,4px) rotate(6deg)}75%{transform:translateY(-2px) rotate(0)}to{transform:translate(-14px,4px) rotate(-6deg)}}#paint .p-bar{width:100%;height:10px;border-radius:999px;background:#ffffff1a;overflow:hidden}#paint .p-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#6a6460,#0e0c0b)}#paint .p-grind-btn{width:100%;padding:16px;font-size:17px;-webkit-user-select:none;user-select:none;touch-action:none}#paint .p-grind-btn.on{background:#c9b27f}#paint .p-draw{flex-direction:column;align-items:center;gap:8px;height:100%;max-width:100%}#paint .p-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;width:100%;max-width:760px}#paint .p-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}#paint .p-tools button{padding:6px 12px;background:#ffffff14;color:var(--ink);border-color:#e8e2d44d}#paint .p-tools button.on{background:#ead9b8;color:#1b1714}#paint .p-gap{width:6px}#paint .p-tools .p-shade{width:30px;height:30px;padding:0;display:grid;place-items:center;background:#f3ecdc}#paint .p-shade i{width:18px;height:18px;border-radius:50%;background:#0d0b0a}#paint .p-tools .p-shade.on{box-shadow:0 0 0 3px #c9b27f;background:#f3ecdc}#paint .p-time{font:700 22px ui-monospace,Consolas,monospace;color:#ead9b8}#paint .p-time.hurry{color:#ff8a6a}#paint .p-canvas{position:relative;flex:1;min-height:0;aspect-ratio:3 / 4;max-width:100%;border-radius:4px;box-shadow:0 10px 40px #0009;touch-action:none}#paint .p-canvas canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}#paint .p-layer{cursor:crosshair}#paint .p-bottom,#paint .p-resume .p-row{flex-wrap:wrap;justify-content:center}#paint .p-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}#paint .p-finish,#paint .p-resume{flex-direction:column;align-items:center;gap:10px;width:min(460px,100%);max-height:100%;padding:20px;border-radius:18px;background:#100e0cf5;border:1px solid rgba(232,214,180,.3);text-align:center}#paint .p-preview{height:min(42vh,380px);aspect-ratio:3 / 4;border-radius:4px;box-shadow:0 6px 20px #00000080}#paint .p-title{width:100%;padding:10px 12px;border:1px solid rgba(232,214,180,.4);border-radius:10px;background:#ffffff0f;color:var(--ink);font-size:15px}#paint .p-msg{min-height:18px;margin:0;color:#ffb08a;font-size:13px}#paint.upload .p-row button{opacity:.5;pointer-events:none}#painting-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:none;align-items:center;justify-content:center;padding:16px;background:#040406b3}#painting-view.open{display:flex}#painting-view .pv-card{display:flex;flex-direction:column;align-items:center;gap:8px;max-height:100%;padding:18px;border-radius:16px;background:#1a1612;border:1px solid rgba(232,214,180,.3);color:var(--ink)}#painting-view img{height:min(70vh,720px);max-width:100%;aspect-ratio:3 / 4;object-fit:contain;border:10px solid #2a1d14;background:#f3ecdc}#painting-view h3{margin:4px 0 0;font-family:Gowun Batang,Nanum Myeongjo,serif;font-size:22px}#painting-view p{margin:0;color:var(--ink-dim);font-size:14px}#painting-view button{margin-top:4px;padding:8px 18px;border:1px solid rgba(232,226,212,.35);border-radius:999px;background:transparent;color:var(--ink)}#cave-fade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;background:#0b0a09;opacity:0;pointer-events:none}#zone small{display:block;margin-top:1px;font-size:10px;letter-spacing:.04em;opacity:.65}#place-banner{position:fixed;top:76px;left:50%;z-index:35;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 26px 9px;border:2px solid #b58f45;outline:3px solid rgba(20,16,12,.85);background:linear-gradient(#1a1512,#0f0c0a);color:#e9c977;transform:translate(-50%,-8px);opacity:0;pointer-events:none;transition:opacity .6s ease,transform .6s ease}#place-banner.show{opacity:1;transform:translate(-50%)}#place-banner b{font-family:Gowun Batang,Nanum Myeongjo,serif;font-size:26px;letter-spacing:.18em}#place-banner small{font-size:11px;letter-spacing:.08em;color:#c9b48f}.npc-talk .g-mark{width:6px;height:18px;border-radius:3px;background:linear-gradient(#d9d4c8 0,#d9d4c8 25%,#b3322a 25%)}#gate-talk{bottom:190px}#face-scan{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:none;align-items:center;justify-content:center;background:#03080ad1;cursor:crosshair;touch-action:none}#face-scan.open{display:flex}#face-scan .fs-card{display:flex;flex-direction:column;align-items:center;gap:12px;color:#d9f4ee;text-align:center;-webkit-user-select:none;user-select:none}#face-scan .fs-title{margin:0;font-size:20px;min-height:28px}#face-scan .fs-frame{position:relative;width:260px;height:260px}#face-scan .fs-ring{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}#face-scan .fs-seg{fill:none;stroke:#5ff2e02e;stroke-width:10;stroke-linecap:round;transition:stroke .25s ease}#face-scan .fs-seg.on{stroke:#5ff2e0;opacity:1!important}#face-scan .fs-face{position:absolute;top:40px;right:40px;bottom:40px;left:40px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 50% 40%,#5ff2e024,#0003);transition:transform .15s ease-out}#face-scan .fs-face svg{width:120px;height:150px;fill:none;stroke:#9ff6ea;stroke-width:3;stroke-linecap:round}#face-scan .fs-face svg .e{fill:#9ff6ea}#face-scan .fs-scanline{position:absolute;left:50px;right:50px;height:2px;top:50%;background:linear-gradient(90deg,transparent,#5ff2e0,transparent);animation:fs-scan 1.6s ease-in-out infinite}@keyframes fs-scan{0%,to{transform:translateY(-80px);opacity:.2}50%{transform:translateY(80px);opacity:.9}}#face-scan .fs-arrow{font-size:46px;line-height:1;min-height:50px;color:#5ff2e0;animation:fs-nudge .9s ease-in-out infinite}#face-scan .fs-arrow.up{--dx: 0;--dy: -10px}#face-scan .fs-arrow.down{--dx: 0;--dy: 10px}#face-scan .fs-arrow.left{--dx: -10px;--dy: 0}#face-scan .fs-arrow.right{--dx: 10px;--dy: 0}@keyframes fs-nudge{0%,to{transform:translate(0)}50%{transform:translate(var(--dx, 0),var(--dy, 0))}}#face-scan.ok .fs-face{background:radial-gradient(circle at 50% 40%,#5ff2e066,#0003)}#face-scan .fs-sub{margin:0;font-size:12px;color:#d9f4ee99}#face-scan .fs-cancel{padding:7px 16px;border:1px solid rgba(217,244,238,.35);border-radius:999px;background:transparent;color:#d9f4ee}#jesaek-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:none;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px;background:radial-gradient(ellipse at 50% 45%,#2a2016,#0c0906 75%)}#jesaek-view.open{display:flex}#jesaek-view .jv-frame{padding:18px 18px 26px;max-width:100%;background:linear-gradient(#34506a,#2a4157);box-shadow:0 20px 60px #000000b3}#jesaek-view canvas{display:block;width:min(92vw,calc((100vh - 170px)*1.714));max-width:100%;aspect-ratio:1800 / 1050;border:8px solid #b8cbbf}#jesaek-view .jv-caption{display:flex;flex-direction:column;align-items:center;gap:2px;color:#e9dcc0;font-family:Gowun Batang,Nanum Myeongjo,serif;text-align:center}#jesaek-view .jv-caption b{font-size:22px}#jesaek-view .jv-caption span{font-size:13px;color:#b8a888}#jesaek-view .jv-close{padding:8px 20px;border:1px solid rgba(233,220,192,.4);border-radius:999px;background:transparent;color:#e9dcc0}#guestbook{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:none;align-items:center;justify-content:center;background:#0605049e;padding:16px}#guestbook.open{display:flex}#guestbook .gb-card{width:min(640px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#1c1610;border:1px solid #5a4630;border-radius:14px;padding:18px 20px;color:#efe4cc;box-shadow:0 18px 60px #00000080}#guestbook .gb-head{display:flex;align-items:center;justify-content:space-between;font-size:18px}#guestbook .gb-x{background:none;border:0;color:#cdbb98;font-size:18px;cursor:pointer;padding:4px 8px}#guestbook .gb-hint{margin:6px 0 10px;font-size:13px;color:#bfae8c}#guestbook .gb-pad canvas{display:block;width:100%;height:auto;aspect-ratio:400 / 160;border-radius:8px;border:1px solid #7a6040;touch-action:none;cursor:crosshair;background:#f2ead8}#guestbook .gb-row{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}#guestbook .gb-row .gb-send{margin-left:auto}#guestbook .gb-msg{min-height:20px;margin-top:8px;font-size:13px;color:#cdbb98}#guestbook .gb-msg.ok{color:#9fd7a4}#guestbook .gb-msg.err{color:#f0a090}#guestbook .gb-sub{margin-top:10px;font-size:13px;color:#bfae8c}#guestbook .gb-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:8px}#guestbook .gb-item{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#bfae8c}#guestbook .gb-item canvas{width:100%;height:auto;border-radius:6px;border:1px solid #3e3020}#guestbook .gb-empty{font-size:13px;color:#9a8a6c;margin:4px 0}#guestbook .gb-row button{font:inherit;font-size:14px;padding:8px 14px;border-radius:999px;cursor:pointer;border:1px solid #e8d6a8;background:#e8d6a8;color:#2a1d10}#guestbook .gb-row button.ghost{background:transparent;color:#e8d6a8;border-color:#6a5636}#guestbook .gb-row button:disabled{opacity:.5;cursor:default}#guestbook .gb-empty{grid-column:1 / -1}#dream-lobby{position:fixed;left:50%;top:84px;transform:translate(-50%);z-index:45;width:min(760px,calc(100vw - 32px));display:none;padding:16px 18px 18px;border-radius:18px;background:#1c123cdb;border:1px solid rgba(255,217,138,.55);color:#f2ecff;box-shadow:0 16px 50px #0a041e80}#dream-lobby.open{display:block;animation:dl-in .35s ease-out}@keyframes dl-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}#dream-lobby .dl-head{display:flex;align-items:center;justify-content:space-between;gap:16px}#dream-lobby .dl-title{font-size:20px;color:#ffe7a8}#dream-lobby .dl-sub{margin:4px 0 0;font-size:13px;color:#c9bde8}#dream-lobby .dl-count{min-width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:800;color:#ffe7a8;border:3px solid rgba(255,217,138,.8);flex:none}#dream-lobby.started .dl-count{display:none}#dream-lobby .dl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;margin-top:14px}#dream-lobby .dl-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;text-align:center;word-break:break-all;animation:dl-in .3s ease-out}#dream-lobby .dl-face{width:72px;height:72px;border-radius:50%;overflow:hidden;background:#3a2c6e;border:2px solid #8f7fd0}#dream-lobby .dl-face img{width:100%;height:100%;object-fit:cover;display:block}#dream-lobby .dl-face img:not([src]){visibility:hidden}#dream-lobby .dl-card.me .dl-face{border-color:#ffd98a;box-shadow:0 0 0 3px #ffd98a59}#dream-lobby .dl-card.npc .dl-face{border-color:#f6d7ef}#dream-lobby .dl-card em{position:absolute;top:-4px;right:8px;font-style:normal;font-size:11px;padding:1px 7px;border-radius:999px;background:#ffd98a;color:#2a1d4a;font-weight:700}#dream-lobby .dl-card.empty{opacity:.45}#dream-lobby .dl-card.empty .dl-face{border-style:dashed;background:transparent}.hpbar.person i{background:#ffd98a}@media(max-width:600px){#dream-lobby{top:64px;padding:12px}#dream-lobby .dl-face{width:56px;height:56px}#dream-lobby .dl-count{min-width:48px;height:48px;font-size:22px}}#menu{position:fixed;left:0;right:0;top:0;bottom:0;width:auto;z-index:40;display:none;align-items:center;justify-content:center;padding:16px;border:0;border-radius:0;background:#03050c8c;overflow:visible}#menu.open{display:flex}#menu .m-window{display:flex;flex-direction:column;width:min(900px,100%);max-height:min(760px,100%);border:1px solid rgba(232,226,212,.2);border-radius:16px;background:#080b14f2;color:var(--ink);overflow:hidden}#menu .m-body{opacity:1;flex:1;overflow-y:auto;padding:0 18px 18px}.m-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.m-thumb{position:relative;aspect-ratio:1;padding:0;border:2px solid rgba(232,226,212,.14);border-radius:14px;background:radial-gradient(ellipse at 50% 40%,#3a3022,#17130e 78%);cursor:pointer}.m-thumb img{display:block;width:100%;height:100%;object-fit:contain;border-radius:12px}.m-thumb img:not([src]){visibility:hidden}.m-thumb:hover,.m-thumb:focus-visible{border-color:#ffd9a8bf}.m-thumb:after{content:attr(data-name);position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%,4px);padding:5px 10px;border-radius:8px;background:#fff4e0f5;color:#2a1d10;font-size:13px;font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s,transform .12s;z-index:2}.m-thumb:hover:after,.m-thumb:focus-visible:after{opacity:1;transform:translate(-50%)}.m-thumb.pic{cursor:default}.m-thumb.pic:after{display:none}.m-sold:empty{display:none}.m-sold{position:absolute;inset:auto 6px 6px 6px;padding:3px 0;border-radius:6px;background:#b4141ce6;color:#fff;font-size:11px;font-weight:700;text-align:center}#menu .m-thumb.soldout,#menu .m-thumb:disabled{filter:grayscale(.8);cursor:not-allowed}.m-thumbs.mix-row{grid-template-columns:40px repeat(auto-fill,minmax(64px,1fr));align-items:center;margin-bottom:10px}.m-thumb.small{border-radius:12px}.m-thumb.on{border-color:#ffd9a8;box-shadow:0 0 0 2px #ffd9a873}.mix-pic .m-thumb{width:72px;flex:none}.mix-result .mix-name{flex:1}@media(max-width:600px){.m-thumbs{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}}#ops-banner{position:fixed;left:50%;top:10px;transform:translate(-50%);margin-top:52px;max-width:calc(100vw - 32px);padding:8px 16px;border-radius:10px;background:#080b14eb;color:#f3d58a;font-size:14px;font-weight:600;text-align:center;display:none;z-index:50;pointer-events:none}#ops-banner.show{display:block}.member-lock[hidden],#guestbook .gb-row[hidden],#paint .p-title[hidden]{display:none!important}.member-lock{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:10px 0}.member-lock p{margin:0;font-size:15px;font-weight:600}.member-lock button{min-height:44px;min-width:88px}#member-prompt{position:fixed;left:50%;top:calc(30% + env(safe-area-inset-top));transform:translate(-50%,-8px);margin:0;padding:10px 16px;max-width:calc(100vw - 32px);border-radius:12px;background:#080b14eb;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:140}#member-prompt.show{opacity:1;pointer-events:auto;transform:translate(-50%)}#host-login{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:none;align-items:center;justify-content:center;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 12px) calc(var(--safe-bottom) + 12px) calc(var(--safe-left) + 12px);background:#03050c99}#host-login.open{display:flex}#host-login .hl-card{width:min(400px,100%);border:1px solid rgba(240,196,120,.45);border-radius:14px;background:#0a0d18f5;color:var(--ink)}#host-login header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 6px}#host-login .hl-body{padding:0 16px 16px;font-size:14px;line-height:1.6}#host-login .hl-sub{color:var(--ink-dim);font-size:13px}#host-login .hl-form{display:grid;gap:10px}#host-login label{display:grid;gap:4px;font-size:13px}#host-login input{min-height:44px;padding:8px 10px;border:1px solid rgba(232,226,212,.3);border-radius:8px;background:#ffffff0d;color:var(--ink);font:inherit}#host-login button,#host-login-open{min-height:44px}#host-login .hl-msg{min-height:1.4em;margin:0;color:#f0b27a;font-size:13px}#host-login-open{margin:0 16px 16px}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--tap: 44px;--jump: 76px;--round: 56px;--edge: 18px;--edge-bottom: 22px;--above-controls: calc(var(--safe-bottom) + var(--edge-bottom) + var(--jump) + 16px)}#touch-stick,#touch-roll,#touch-sit{display:none}@media(pointer:coarse){#top-buttons{top:calc(var(--safe-top) + 8px);right:calc(var(--safe-right) + 8px);gap:6px}#top-buttons button{min-width:var(--tap);min-height:var(--tap);padding:0 10px;font-size:12px;white-space:nowrap}#top-buttons .icon-btn{padding:0}#help,#settings{top:calc(var(--safe-top) + 8px + var(--tap) + 8px);right:calc(var(--safe-right) + 8px);max-height:calc(100dvh - var(--safe-top) - var(--tap) - 32px);overflow-y:auto}#top-buttons kbd,#emote-bar kbd{display:none}#hud{left:calc(var(--safe-left) + 12px);right:calc(var(--safe-right) + 12px);top:calc(var(--safe-top) + 8px + var(--tap) + 8px);font-size:12px;line-height:1.5}#hud .title{font-size:14px}#touch-stick{display:block;position:fixed;left:calc(var(--safe-left) + var(--edge));bottom:calc(var(--safe-bottom) + var(--edge-bottom));width:128px;height:128px;border:1px solid rgba(232,226,212,.3);border-radius:50%;background:radial-gradient(circle,#e8e2d41a,#080b1473 70%);z-index:5;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#touch-stick .knob{position:absolute;left:50%;top:50%;width:56px;height:56px;border:1px solid rgba(232,226,212,.6);border-radius:50%;background:#e8e2d459;transform:translate(-50%,-50%);pointer-events:none}#touch-stick.on .knob{background:#ffd9a88c}#touch-jump{right:calc(var(--safe-right) + var(--edge));bottom:calc(var(--safe-bottom) + var(--edge-bottom));width:var(--jump);height:var(--jump)}#top-buttons #wardrobe-toggle{display:none}#touch-roll,#touch-sit{display:block;position:fixed;width:var(--round);height:var(--round);padding:0;border:1px solid rgba(232,226,212,.35);border-radius:50%;background:#080b14b3;color:var(--ink);font-size:12px;font-weight:700;z-index:5;touch-action:none;-webkit-user-select:none;user-select:none}#touch-roll{right:calc(var(--safe-right) + var(--edge) + var(--jump) + 12px);bottom:calc(var(--safe-bottom) + var(--edge-bottom) + 10px)}#touch-sit{right:calc(var(--safe-right) + var(--edge) + var(--jump) + 12px);bottom:calc(var(--safe-bottom) + var(--edge-bottom) + 10px + var(--round) + 12px)}body.can-roll{--above-controls: calc(var(--safe-bottom) + var(--edge-bottom) + 10px + (var(--round) + 12px) * 2 + 6px)}#touch-roll[hidden],#touch-sit[hidden],#emote-bar .host-tab,#emote-bar{display:none}body.emotes-open #emote-bar{display:grid;grid-template-columns:repeat(5,48px);gap:6px;left:auto;right:calc(var(--safe-right) + 12px);bottom:var(--above-controls);max-width:none;transform:none;padding:8px;border-radius:14px;background:#080b14d9;z-index:8}body.emotes-open #emote-bar button{width:48px;height:48px;justify-content:center;font-size:20px}body.emotes-open #queue{visibility:hidden}#queue{bottom:var(--above-controls);max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 24px)}#queue button{min-height:var(--tap)}.m-close{min-width:var(--tap);min-height:var(--tap);padding:0 14px;font-size:13px}#wardrobe{padding:calc(var(--safe-top) + 8px) calc(var(--safe-right) + 8px) calc(var(--safe-bottom) + 8px) calc(var(--safe-left) + 8px)}#menu,#account{top:calc(var(--safe-top) + 8px);right:calc(var(--safe-right) + 8px);bottom:calc(var(--safe-bottom) + 8px);width:min(380px,calc(100vw - 16px - var(--safe-left) - var(--safe-right)))}#perf-stats{left:auto!important;bottom:auto!important;right:calc(var(--safe-right) + 8px)!important;top:calc(var(--safe-top) + 40%)!important}}@media(pointer:coarse)and (min-width:700px){#hud{top:calc(var(--safe-top) + 8px);right:auto;max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 300px)}#queue{bottom:calc(var(--safe-bottom) + var(--edge-bottom));max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 2 * (var(--edge) + 128px + 24px))}}@media(pointer:coarse){body.fire-roasting #touch-jump,body.fire-roasting #touch-roll,body.fire-roasting #touch-sit,body.fire-roasting #emote-toggle,body.fire-roasting #top-buttons #wardrobe-toggle{visibility:hidden}body.fire-roasting #queue{left:auto;right:calc(var(--safe-right) + 8px);bottom:calc(var(--safe-bottom) + 12px);transform:none;max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 150px);padding:8px 10px}body.fire-roasting #queue .q-hint,body.fire-roasting #queue .q-title{display:none}}#gacha-paper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;display:none;align-items:center;justify-content:center;padding:calc(var(--safe-top, 0px) + 16px) 16px calc(var(--safe-bottom, 0px) + 16px);background:radial-gradient(ellipse at 50% 40%,#ffecbe38,#05070db8 70%)}#gacha-paper.open{display:flex}#gacha-paper .gp-sheet{position:relative;width:min(360px,100%);max-height:100%;overflow-y:auto;padding:28px 26px 22px;border-radius:4px;color:#231a14;font-family:Gowun Batang,Nanum Myeongjo,Batang,serif;background:repeating-linear-gradient(93deg,rgba(150,120,80,.05) 0 1px,transparent 1px 9px),repeating-linear-gradient(-4deg,rgba(150,120,80,.04) 0 2px,transparent 2px 13px),radial-gradient(ellipse at 30% 20%,#fbf5e6,#efe3c8);box-shadow:0 0 0 1px #785c3c40,0 0 60px #ffe4a08c,0 10px 30px #00000073}#gacha-paper .gp-sheet.fresh{animation:gp-unfold .9s cubic-bezier(.2,.9,.3,1) both;transform-origin:50% 0}@keyframes gp-unfold{0%{transform:scaleY(.08) translateY(30px);opacity:.2}to{transform:none;opacity:1}}#gacha-paper .gp-label{margin-bottom:14px;color:#8a6a44;font-size:13px;letter-spacing:.2em;text-align:center}#gacha-paper .gp-line{margin:0 0 10px;font-size:21px;font-weight:700;line-height:1.6;text-align:center;word-break:keep-all;animation:gp-ink .9s ease-out both}@keyframes gp-ink{0%{opacity:0;filter:blur(4px);letter-spacing:.12em}to{opacity:1;filter:none}}#gacha-paper .gp-seal{width:22px;height:22px;margin:14px 0 0 auto;border-radius:3px;background:#b3322a;box-shadow:inset 0 0 0 2px #f8ecd880;transform:rotate(-6deg)}#gacha-paper .gp-close{display:block;min-width:120px;min-height:44px;margin:16px auto 0;border:1px solid #8a6a44;border-radius:999px;background:transparent;color:#3b2b1d;font:inherit;cursor:pointer}#gacha-paper .gp-item{display:block;width:100%;min-height:44px;margin-bottom:8px;padding:8px 10px;border:1px solid rgba(120,92,60,.3);border-radius:6px;background:#fff6;color:inherit;font:inherit;text-align:left;cursor:pointer}#gacha-today{position:fixed;right:calc(var(--safe-right, 0px) + 16px);top:calc(var(--safe-top, 0px) + 66px);z-index:4;min-height:44px;padding:0 14px;border:1px solid rgba(233,194,122,.6);border-radius:999px;background:#0a0e1abf;color:#f3e2b8}#gacha-today[hidden]{display:none}@media(pointer:coarse)and (max-width:380px){#top-buttons{gap:4px}#top-buttons button{padding:0 7px;font-size:11px}#top-buttons .icon-btn{padding:0}}@media(pointer:coarse){body.top-slim #quality-toggle,body.top-slim #sound-toggle,body.top-slim #help-toggle{display:none}body.top-slim #settings .st-quick{display:flex}}body.focus #hud,body.focus #top-buttons,body.focus #touch-stick,body.focus #touch-jump,body.focus #touch-roll,body.focus #touch-sit,body.focus #emote-bar,body.focus #self-menu{display:none!important}body.focus{--focus-bottom: calc(var(--safe-bottom, 0px) + 16px)}body.focus #queue,body.focus #archery,body.focus #ttang-ui,body.focus #swing-ui{bottom:var(--focus-bottom)}body.focus #queue{max-width:calc(100vw - var(--safe-left, 0px) - var(--safe-right, 0px) - 24px)}#focus-exit{position:fixed;left:50%;bottom:var(--focus-bottom, 16px);transform:translate(-50%);z-index:7;min-width:96px;min-height:44px;padding:0 18px;border:1px solid rgba(232,226,212,.35);border-radius:999px;background:#080b14cc;color:var(--ink)}#focus-exit[hidden]{display:none}#intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#e4f2ff;cursor:pointer;touch-action:manipulation}#intro canvas{display:block;width:100%;height:100%}#intro .in-bottom{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 16px;pointer-events:none}#intro .in-enter{pointer-events:auto;min-width:160px;min-height:48px;padding:0 28px;border:none;border-radius:999px;background:#2b2236;color:#fff6e6;font-size:17px;font-weight:800;letter-spacing:.06em;box-shadow:0 6px 18px #2b22364d}#intro .in-enter:disabled{opacity:.75}#intro .in-hint{margin:0;font-size:12px;color:#5a5066}#intro .legal-links{pointer-events:auto;margin:2px 0 0;font-size:12px;color:#5a5066}#intro .legal-links a{display:inline-block;padding:6px 4px;color:#5a5066}#intro .legal-links a.privacy{color:#2b2236;font-weight:700}
