:root{--ink: #2b1d3a;--ink-2: #5a4466;--cream: #fff7f0;--peach: #f8dcc8;--coral: #e0567a;--rose: #ff9fb0;--gold: #f0a020;--indigo: #3f5bd8;--red: #c8323c;--panel: rgba(255, 249, 244, .9);--panel-line: rgba(224, 86, 122, .18);--shadow: 0 10px 30px rgba(110, 50, 70, .18);--radius: 18px;--menu-gap: 0px;color-scheme:light;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,Hiragino Sans,PingFang SC,Microsoft YaHei,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#f7dcc6;color:var(--ink);overflow:hidden;-webkit-tap-highlight-color:transparent}body{overscroll-behavior:none}body:has(#gamenow-exit-launcher){--menu-gap: 56px}body.gamenow-mobile-mode:has(#gamenow-exit-launcher){--menu-gap: 44px}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--indigo);outline-offset:2px}.muted{color:var(--ink-2);opacity:.85}.small{font-size:.82rem}.strong{font-weight:700}.warn{color:var(--red);font-weight:600}.scene{position:fixed;inset:0;z-index:0}.scene canvas{width:100%;height:100%;display:block}.scene-loading{position:absolute;inset:0;background:radial-gradient(circle at 40% 45%,#fff3ea,#f6cfb6 70%);animation:breathe 2s ease-in-out infinite}@keyframes breathe{50%{opacity:.8}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:999px;border:2px solid rgba(43,29,58,.12);background:#fff;font-weight:700;box-shadow:0 3px #6e32461f;transition:transform .12s,box-shadow .12s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(1px);box-shadow:none}.btn.primary{background:linear-gradient(180deg,#ff7f9f,var(--coral));color:#fff;border-color:transparent;box-shadow:0 4px #b03a5c}.btn.ghost{background:#fff9}.btn.big{min-height:56px;font-size:1.08rem;padding:12px 26px}.btn.small{min-height:38px;padding:6px 14px;font-size:.88rem}.btn:disabled{opacity:.45}.btn small{font-weight:500;opacity:.85}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:14px;border:0;background:#ffffffd1;box-shadow:0 2px 8px #6e324624}.link{background:none;border:0;padding:8px 4px;display:inline-flex;gap:6px;align-items:center;color:var(--ink-2);font-size:.88rem;min-height:44px}.coach{animation:coach 1.2s ease-in-out infinite}@keyframes coach{50%{box-shadow:0 0 0 6px #f0a02073}}.title,.ending,.poll{position:fixed;inset:0;z-index:2;display:flex;align-items:center;padding:24px calc(24px + var(--menu-gap)) 24px 5vw;pointer-events:none}.title-card,.ending-card,.poll-card{pointer-events:auto;width:min(460px,100%);background:var(--panel);border-radius:26px;padding:28px 28px 20px;box-shadow:var(--shadow);border:1px solid var(--panel-line);backdrop-filter:blur(6px);max-height:calc(100dvh - 48px);overflow:auto}.eyebrow{margin:0 0 6px;font-size:.82rem;font-weight:700;letter-spacing:.02em;color:var(--coral);display:flex;align-items:center;gap:6px}.logo{margin:0 0 10px;font-size:clamp(2.1rem,5vw,3.1rem);line-height:1.02;letter-spacing:-.02em;background:linear-gradient(90deg,var(--coral),var(--gold) 60%,var(--indigo));-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:900}.intro{margin:0 0 16px;color:var(--ink-2);line-height:1.55}.title-actions{display:grid;gap:10px}.title-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.title-foot{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px}.friend-card{border-radius:16px;padding:14px;margin:0 0 16px;background:color-mix(in srgb,var(--c) 14%,#fff);border:2px solid color-mix(in srgb,var(--c) 40%,transparent)}.friend-card p{margin:4px 0 8px}.friend-stats{display:grid;gap:4px}.dash{position:fixed;inset:0;z-index:2;pointer-events:none}.dash>*{pointer-events:auto}.topbar{position:absolute;top:12px;left:12px;right:calc(12px + var(--menu-gap));display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 10px 8px 16px;background:var(--panel);border-radius:18px;box-shadow:var(--shadow)}.when{display:flex;flex-direction:column;line-height:1.15;min-width:92px}.when b{font-size:1.15rem}.season-tag{font-size:.78rem;font-weight:700}.season-tag.spring{color:#d0457a}.season-tag.summer{color:#2f6fe0}.season-tag.autumn{color:#d0561e}.season-tag.winter{color:#6a5fc8}.meters{display:flex;gap:12px;align-items:center;flex:1;flex-wrap:wrap}.meter{display:inline-flex;align-items:center;gap:6px;font-weight:700}.meter-track{width:110px;height:10px;border-radius:10px;background:#2b1d3a1a;overflow:hidden}.meter-track span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),#ffd36b);border-radius:inherit;transition:width .6s}.meter.energy svg{color:var(--gold)}.meter.energy.low .meter-track span{background:linear-gradient(90deg,var(--red),#ff7a5a)}.meter.energy.low{color:var(--red);animation:breathe 1.4s infinite}.meter.credits svg{color:#c9733a}.tools{display:flex;gap:6px}.bubble-wrap{position:absolute;left:5vw;top:96px;max-width:min(420px,44vw);pointer-events:none}.bubble{margin:0;padding:14px 18px;background:#fff;border-radius:20px 20px 20px 6px;box-shadow:var(--shadow);font-size:1rem;line-height:1.5;animation:pop .4s cubic-bezier(.2,1.4,.4,1)}@keyframes pop{0%{transform:scale(.85) translateY(8px);opacity:0}}.side{position:absolute;top:84px;right:calc(12px + var(--menu-gap));bottom:12px;width:min(380px,40vw);display:flex;flex-direction:column;gap:10px;overflow:auto}.panel{background:var(--panel);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);border:1px solid var(--panel-line)}.panel h3{margin:0 0 10px;font-size:1rem}.status{display:grid;gap:8px}.stat{display:grid;grid-template-columns:18px 92px 1fr 30px auto;align-items:center;gap:8px;color:var(--ink)}.stat svg{color:var(--c)}.stat-name{font-weight:700;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-track{height:12px;border-radius:12px;background:#2b1d3a14;overflow:hidden}.stat-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c));transition:width .8s cubic-bezier(.2,.9,.3,1)}.stat-val{font-weight:800;text-align:right;font-variant-numeric:tabular-nums}.stat-delta{font-weight:800;font-size:.85rem;animation:pop .5s}.stat-delta.up{color:#2f7a3a}.stat-delta.down{color:var(--red)}.stat.compact{grid-template-columns:16px 86px 1fr 26px auto;gap:6px;font-size:.85rem}.hidden-heart summary{cursor:pointer;font-weight:700;font-size:.88rem;display:flex;gap:6px;align-items:center;min-height:32px;color:var(--ink-2)}.hidden-heart p{margin:4px 0 8px}.hidden-row{display:grid;grid-template-columns:90px 1fr;gap:8px;align-items:center;font-size:.85rem;margin:4px 0}.hidden-track{height:8px;background:#2b1d3a14;border-radius:8px;overflow:hidden;filter:blur(.6px)}.hidden-track span{display:block;height:100%;background:linear-gradient(90deg,#ffd1e0,#b48cff)}.slots{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px}.slot{position:relative}.slot-btn{width:100%;min-height:84px;border-radius:16px;border:2px dashed rgba(43,29,58,.22);background:#ffffffb3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;font-weight:700;font-size:.9rem;text-align:center}.slot.filled .slot-btn{border:2px solid var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);color:color-mix(in srgb,var(--c) 70%,var(--ink))}.slot-x{position:absolute;top:-8px;right:-8px;width:30px;height:30px;border-radius:50%;border:0;background:#fff;box-shadow:0 2px 6px #0000002e;display:grid;place-items:center}.slot-x:before{content:"";position:absolute;inset:-8px}.focus-tag{font-size:.72rem;color:var(--gold)}.run{width:100%;margin-top:6px}.sleep-note{display:flex;gap:8px;align-items:center;font-weight:700;color:#6a5fc8}dialog.sheet{border:0;padding:0;background:transparent;max-width:min(560px,calc(100vw - 24px));width:100%;max-height:calc(100dvh - 24px);color:var(--ink)}dialog.sheet.wide{max-width:min(860px,calc(100vw - 24px))}dialog.sheet::backdrop{background:#3c1e3252;backdrop-filter:blur(2px)}.sheet-body{background:var(--cream);border-radius:24px;padding:22px;box-shadow:var(--shadow);max-height:calc(100dvh - 24px);overflow:auto;animation:rise .3s cubic-bezier(.2,1,.3,1)}@keyframes rise{0%{transform:translateY(24px);opacity:0}}.sheet-body h2{margin:0 0 14px;font-size:1.3rem}.sheet-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}.act-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.act-card{display:flex;gap:12px;align-items:flex-start;text-align:left;padding:14px;border-radius:16px;border:2px solid color-mix(in srgb,var(--c, #e0567a) 30%,transparent);background:#fff;min-height:96px}.act-card:hover:not(:disabled){border-color:var(--c, var(--coral));background:color-mix(in srgb,var(--c, #e0567a) 7%,#fff)}.act-card:disabled{opacity:.5}.act-card.owned{opacity:.8;border-style:dashed}.act-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--c, #e0567a) 16%,#fff);color:var(--c, var(--coral))}.act-text{display:grid;gap:4px}.act-text b{font-size:1rem}.lv{font-size:.72rem;color:var(--gold);margin-left:4px}.act-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.78rem;font-weight:700;color:var(--ink-2)}.act-meta>span{display:inline-flex;gap:3px;align-items:center}.chips{display:inline-flex;gap:4px}.chip{display:inline-flex;align-items:center;gap:1px;padding:1px 5px;border-radius:8px;font-size:.7rem;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c)}.chip.down{opacity:.7}.result-card{border-left:6px solid var(--c);padding-left:14px}.result-head{display:flex;align-items:center;gap:10px}.result-head h2{margin:0;flex:1}.q-badge{padding:4px 10px;border-radius:999px;font-weight:800;font-size:.82rem;display:inline-flex;gap:4px;align-items:center}.q-badge.great{background:linear-gradient(90deg,#ffd36b,var(--gold));color:#5a3300;animation:pop .5s}.q-badge.good{background:#ffe3ea;color:var(--coral)}.q-badge.fail{background:#eee4f2;color:#6a5a7a}.quote{font-size:1.08rem;line-height:1.6;margin:14px 0}.deltas{display:grid;gap:6px}.delta-row{display:flex;gap:8px}.pill{display:inline-flex;gap:4px;align-items:center;padding:4px 10px;border-radius:999px;font-weight:800;font-size:.85rem;background:#fff}.pill.up{color:#2f7a3a}.pill.down{color:var(--red)}.level-up{color:var(--gold);font-weight:800;display:flex;gap:6px;align-items:center}dialog.sheet.result{margin:auto auto 24px;max-width:min(520px,calc(100vw - 24px - var(--menu-gap)))}dialog.sheet.result::backdrop{background:linear-gradient(180deg,#3c1e3200,#3c1e3247);backdrop-filter:none}dialog.sheet.event{margin:auto 0 auto auto;margin-right:calc(5vw + var(--menu-gap));max-width:min(520px,calc(100vw - 24px))}dialog.sheet.event::backdrop{background:linear-gradient(90deg,#3c1e3200,#3c1e324d);backdrop-filter:none}.ask{font-size:1.15rem;line-height:1.65;min-height:4.5em;margin:6px 0 14px;font-weight:600}.caret{color:var(--coral);animation:breathe .8s infinite}.choices{display:grid;gap:10px;opacity:.4;transition:opacity .3s}.choices.in{opacity:1}.choice{text-align:left;padding:14px 16px;border-radius:16px;border:2px solid rgba(224,86,122,.25);background:#fff;font-weight:700;line-height:1.45;min-height:52px}.choice:hover:not(:disabled){border-color:var(--coral);background:#fff1f4}.my-answer{color:var(--ink-2);font-weight:700;margin:0 0 8px}.reply{font-size:1.08rem;line-height:1.6;background:#fff;border-radius:16px;padding:12px 14px;margin:0 0 10px}.poll-note{font-weight:800;color:var(--indigo);margin:4px 0}.toast-inline{color:#2f7a3a;font-weight:700}.poll-bars{display:grid;gap:8px;margin:12px 0}.poll-bar{position:relative;display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:#fff;overflow:hidden;font-size:.9rem}.poll-bar.mine{outline:2px solid var(--coral)}.poll-fill{position:absolute;inset:0 auto 0 0;background:#e0567a29;transition:width .8s}.poll-label,.poll-bar b{position:relative}.ending-card{border-top:8px solid var(--c)}.ending h1{margin:0 0 6px;font-size:clamp(1.8rem,4vw,2.5rem);color:color-mix(in srgb,var(--c) 75%,var(--ink))}.tagline{font-weight:700;margin:0 0 12px}.epilogue{line-height:1.75;margin:0 0 12px}.final-quote{font-size:1.12rem;font-weight:800;color:color-mix(in srgb,var(--c) 70%,var(--ink));animation:pop .6s}.ending-stats{display:grid;gap:6px;margin:12px 0}.ending-actions{display:grid;gap:10px}.slots-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.slots-list li{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;background:#fff;padding:12px 14px;border-radius:14px}.slot-name{font-weight:800}.slots-list .muted{grid-column:1}.slot-btns{grid-row:1 / span 2;grid-column:2;display:flex;gap:6px}.book{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.book-card{padding:14px;border-radius:14px;background:#f1e8f0;display:grid;gap:6px;color:var(--ink-2)}.book-card.have{background:color-mix(in srgb,var(--c) 14%,#fff);border:2px solid var(--c);color:var(--ink)}.diary{margin:0;padding:0;list-style:none;display:grid;gap:10px}.diary li{background:#fff;border-radius:14px;padding:10px 14px}.diary p{margin:4px 0 0;line-height:1.55}.credits{padding-left:18px;line-height:1.6}.credits a,.sheet a{color:var(--indigo)}.mg-wrap{position:relative;touch-action:none;border-radius:16px;overflow:hidden;user-select:none}.mg{width:100%;height:auto;display:block;aspect-ratio:640 / 400;background:#fff6ee}.mg-knob{position:absolute;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:#e0567a40;border:3px solid rgba(224,86,122,.6);pointer-events:none;display:none}.mg-pause{position:absolute;top:8px;right:8px}.mg-paused{position:absolute;inset:0;display:grid;place-content:center;gap:10px;text-align:center;background:#fff7f0d9;font-weight:800}.big-num{font-size:2.6rem;font-weight:900;color:var(--gold);margin:6px 0}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:50;background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;font-weight:700;box-shadow:var(--shadow);animation:rise .3s;max-width:calc(100vw - 32px);text-align:center}@media(max-aspect-ratio:1/1),(max-width:760px){.topbar{top:8px;left:8px;right:calc(8px + var(--menu-gap));padding:6px 8px 6px 12px;gap:8px}.meters{gap:8px}.meter-track{width:70px}.tools .icon-btn{width:40px;height:40px}.bubble-wrap{left:12px;right:calc(12px + var(--menu-gap));top:auto;bottom:calc(50dvh + 8px);max-width:none}.bubble{font-size:.92rem;padding:10px 14px}.side{top:auto;left:8px;right:calc(8px + var(--menu-gap));bottom:8px;width:auto;max-height:50dvh}.status{grid-template-columns:1fr 1fr;gap:6px 12px}.stat{grid-template-columns:16px 1fr 26px}.stat .stat-track{grid-column:1 / -1;order:3}.stat .stat-name{font-size:.8rem}.hidden-heart{grid-column:1 / -1}.slot-btn{min-height:66px}.title,.ending,.poll{align-items:flex-end;padding:12px calc(12px + var(--menu-gap)) 12px 12px}.title-card,.ending-card,.poll-card{width:100%;padding:18px 18px 12px;max-height:58dvh;border-radius:22px}.intro{font-size:.9rem;margin-bottom:10px}dialog.sheet.result{margin:auto auto 8px}dialog.sheet.event{margin:auto auto 8px;max-width:calc(100vw - 16px - var(--menu-gap))}dialog.sheet.event::backdrop{background:linear-gradient(180deg,#3c1e3200,#3c1e324d)}.ask{font-size:1.02rem;min-height:3.5em}.act-grid{grid-template-columns:1fr}.act-card{min-height:80px;padding:12px}}@media(max-height:520px)and (min-aspect-ratio:1/1){.side{top:70px}.bubble-wrap{top:74px}.slot-btn{min-height:60px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
