:root{--board:#13231b;--board-2:#1d3328;--glass:#101e17c7;--cream:#efe8d6;--cream-2:#b9c2b1;--gold:#e3a93a;--gold-ink:#2b1d05;--here:#c0392b;--paper:#faf8f1;--ink:#15231c;--ink-2:#4a5b52;--line:#d8d2c2;--font-d:"Jua", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-b:"IBM Plex Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;color:var(--cream);font-family:var(--font-b);-webkit-text-size-adjust:100%;word-break:keep-all;background:#0e1712;margin:0;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}#c{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#labels{pointer-events:none;position:fixed;inset:0;overflow:hidden}.label{white-space:nowrap;will-change:transform;position:absolute;top:0;left:0}.label.name{color:var(--cream);background:#101e17b8;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.label.name.staff{background:#2e5d4bd1}.label.bubble{background:var(--paper);color:var(--ink);border-radius:14px;margin-top:-8px;padding:7px 12px;font-size:14px;font-weight:600;box-shadow:0 6px 18px #00000040}.label.bubble:after{content:"";border:7px solid #0000;border-bottom:0;border-top-color:var(--paper);margin-left:-7px;position:absolute;bottom:-7px;left:50%}.hud-top{top:calc(var(--st) + 10px);left:calc(var(--sl) + 10px);right:calc(var(--sr) + 10px);pointer-events:none;justify-content:space-between;align-items:flex-start;gap:8px;transition:opacity .4s;display:flex;position:fixed}.hud-top>*{pointer-events:auto}.clock{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;padding:8px 14px 9px;display:grid}.clock b{font-family:var(--font-d);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:30px;font-weight:400;line-height:1}.clock span{color:var(--cream-2);font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px}.tools{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.tools button{background:var(--glass);min-width:44px;min-height:40px;color:var(--cream);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:0;border-radius:999px;padding:0 12px;font-size:14px;font-weight:600}.tasks-btn{top:calc(var(--st) + 84px);left:calc(var(--sl) + 10px);background:var(--glass);min-height:40px;color:var(--cream);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:0;border-radius:999px;padding:0 14px;font-size:14px;font-weight:600;transition:opacity .4s;position:fixed}.tasks-btn b{color:var(--gold);font-variant-numeric:tabular-nums;margin-left:4px}.tasks{top:calc(var(--st) + 130px);left:calc(var(--sl) + 10px);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;width:min(320px,100vw - 20px);padding:10px 12px;position:fixed}.tasks ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.tasks li{border-bottom:1px solid #efe8d61a;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 4px;font-size:14px;display:grid}.tasks li:last-child{border-bottom:0}.tasks time{color:var(--cream-2);font-variant-numeric:tabular-nums;font-size:12.5px}.tasks li span{color:var(--cream-2);white-space:nowrap;background:#efe8d61f;border-radius:999px;padding:2px 8px;font-size:12px}.tasks li[data-s=active] span{background:var(--gold);color:var(--gold-ink);font-weight:700}.tasks li[data-s=done] span{color:#e8f5ee;background:#2f6b52}.tasks li[data-s=late] span,.tasks li[data-s=missed] span{color:#fde9e4;background:#7a3a2e}.tasks li[data-s=done] b,.tasks li[data-s=missed] b{color:var(--cream-2);font-weight:500}.objective{left:50%;bottom:calc(var(--sb) + 14px);width:min(560px, calc(100vw - 20px - var(--sl) - var(--sr)));background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;align-items:center;gap:12px;padding:12px 12px 12px 16px;transition:opacity .4s;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}.obj-text{flex:1;gap:1px;min-width:0;display:grid}.obj-k{color:var(--gold);font-size:12px;font-weight:700}.obj-text b{font-family:var(--font-d);font-size:21px;font-weight:400;line-height:1.2}.obj-text span:last-child{color:var(--cream-2);font-size:13.5px}#btnGuide{background:var(--gold);min-height:48px;color:var(--gold-ink);border:0;border-radius:14px;flex:none;padding:0 18px;font-size:15px;font-weight:700}.toasts{top:calc(var(--st) + 84px);pointer-events:none;justify-items:center;gap:6px;width:min(420px,100vw - 150px);display:grid;position:fixed;left:50%;transform:translate(-50%)}.toast{background:var(--paper);color:var(--ink);opacity:0;text-align:center;border-radius:14px;padding:9px 14px;font-size:14px;font-weight:600;transition:opacity .3s,transform .3s;transform:translateY(-6px);box-shadow:0 8px 22px #00000040}.toast.in{opacity:1;transform:none}.toast.bell{background:var(--gold);color:var(--gold-ink)}.toast.good{color:#14402c;background:#d8eee1}.toast.warn{color:#6b2416;background:#f6ddd6}.sheet{right:calc(var(--sr) + 12px);bottom:calc(var(--sb) + 96px);background:var(--paper);width:min(420px,100vw - 24px);color:var(--ink);border-radius:20px;grid-template-columns:112px minmax(0,1fr);gap:12px;padding:12px;display:grid;position:fixed;box-shadow:0 16px 40px #00000059}.sheet img{object-fit:cover;border-radius:12px;width:112px;height:112px;display:block}.sheet img[hidden]+.sheet-body{grid-column:1/-1}.sheet-body{align-content:start;gap:4px;min-width:0;display:grid}.sheet-k{letter-spacing:.1em;color:var(--ink-2);font-size:11px;font-weight:600}.sheet h2{font-family:var(--font-d);margin:0;font-size:24px;font-weight:400;line-height:1.15}.sheet p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.55}.game-line{color:var(--ink);font-weight:500}.sheet-btns{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.sheet-btns button,.sheet-btns .btn{border:1px solid var(--line);min-height:42px;color:var(--ink);background:#fff;border-radius:12px;align-items:center;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.primary{border:0;font-weight:700;background:var(--gold)!important;border-color:var(--gold)!important;color:var(--gold-ink)!important}.modal{padding:calc(var(--st) + 16px) calc(var(--sr) + 16px) calc(var(--sb) + 16px) calc(var(--sl) + 16px);background:#080e0b8c;place-items:center;display:grid;position:fixed;inset:0}.card{background:var(--paper);width:min(460px,100%);max-height:100%;color:var(--ink);border-radius:22px;gap:10px;padding:20px;display:grid;overflow:auto;box-shadow:0 24px 60px #0006}.card-k{color:#8a5a0b;font-size:12px;font-weight:700}.card h2{font-family:var(--font-d);margin:0;font-size:28px;font-weight:400;line-height:1.15}.card p{color:var(--ink-2);margin:0;font-size:15px;line-height:1.6}.choices{gap:8px;display:grid}.choice{text-align:left;border:1.5px solid var(--line);min-height:52px;color:var(--ink);background:#fff;border-radius:14px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;font-size:15px;display:grid}.choice b{background:#ece6d6;border-radius:8px;place-items:center;width:28px;height:28px;font-size:13px;display:grid}.choice.picked{background:#e3f0e8;border-color:#2f6b52}.choice:disabled{cursor:default}.choice:disabled:not(.picked){opacity:.55}.answer{background:#f3e2ba;border-radius:14px;gap:4px;padding:12px 14px;display:grid}.answer>span{color:#7a520c;font-size:12px;font-weight:700}.answer p{color:var(--ink);font-size:14.5px}.answer .effect{color:var(--ink-2);font-size:13.5px}.wide{border-radius:14px;width:100%;min-height:48px;font-size:15px}.sa-help b{color:var(--ink)}.sa-row{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:16px;display:grid}.thermo{background:#ece6d6;border:2px solid #d4ccb8;border-radius:18px;width:34px;height:180px;margin:0 auto;position:relative;overflow:hidden}.thermo .band{background:#2f6b5247;border-block:2px dashed #2f6b52;height:11.7647%;position:absolute;bottom:70.5882%;left:0;right:0}.thermo .fill{background:#e5a13a;border-radius:14px;height:20%;transition:background-color .2s;position:absolute;bottom:4px;left:4px;right:4px}.thermo .fill[data-hot=ok]{background:#e2742c}.thermo .fill[data-hot=over]{background:#c2321f}.sa-stats{color:var(--ink-2);font-variant-numeric:tabular-nums;gap:4px;font-size:14px;display:grid}.sa-stats>b{font-family:var(--font-d);color:var(--ink);font-size:40px;font-weight:400;line-height:1}.sa-btns{grid-template-columns:1.4fr 1fr;gap:8px;display:grid}.sa-btns button{border:1.5px solid var(--line);min-height:56px;color:var(--ink);background:#fff;border-radius:16px;font-size:16px;font-weight:700}.sa-btns button.pop{animation:.18s pop}@keyframes pop{50%{transform:scale(.94)}}.sa-btns button:disabled{opacity:.5}.sa-result{min-height:1.5em;font-weight:600;color:var(--ink)!important}.diary-card{width:min(520px,100%)}.di-tasks{gap:2px;margin:0;padding:0;list-style:none;display:grid}.di-tasks li{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:7px 0;font-size:14.5px;display:flex}.di-tasks b{color:var(--ink);white-space:nowrap;font-weight:600}.di-guests{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.guest{background:#f1ede2;border-radius:12px;gap:2px;padding:8px 10px;font-size:13px;display:grid}.guest.rebook{background:#e3f0e8}.guest em{color:#2f6b52;font-size:12px;font-style:normal;font-weight:700}.hearts{gap:3px;font-style:normal;display:flex}.hearts b,.hearts s{background:#d9513c;border-radius:50%;width:11px;height:11px;display:block}.hearts s{background:#d8d2c2}.di-sum{font-weight:600;color:var(--ink)!important}.diary-card blockquote{color:var(--ink-2);background:#f1ede2;border-radius:12px;margin:0;padding:10px 12px;font-size:13.5px;line-height:1.6}.diary-card cite{margin-top:4px;font-size:12px;font-style:normal;display:block}.fire-hint{left:50%;bottom:calc(var(--sb) + 26px);color:var(--cream-2);pointer-events:none;background:#0a0e0c80;border-radius:999px;padding:8px 16px;font-size:13.5px;animation:3s ease-in-out infinite breathe;position:fixed;transform:translate(-50%)}@keyframes breathe{50%{opacity:.55}}body.calm .hud-top,body.calm .tasks-btn,body.calm .tasks,body.calm .objective,body.calm .toasts,body.calm #labels,body:not(.playing) .hud-top,body:not(.playing) .tasks-btn,body:not(.playing) .objective,body:not(.playing) #labels{opacity:0;pointer-events:none}body.paused .clock b{opacity:.5}.intro{padding:calc(var(--st) + 20px) calc(var(--sr) + 20px) calc(var(--sb) + 28px) calc(var(--sl) + 20px);align-items:end;transition:opacity .7s;display:grid;position:fixed;inset:0}.intro.out{opacity:0;pointer-events:none}.intro-sky{pointer-events:none;background:linear-gradient(#0e171200 30%,#0e17128c 62%,#0e1712eb 100%);position:absolute;inset:0}.intro-in{gap:10px;width:min(560px,100%);display:grid;position:relative}.brand{letter-spacing:.18em;color:var(--cream-2);margin:0;font-size:12px}.intro h1{font-family:var(--font-d);letter-spacing:-.01em;text-shadow:0 2px 20px #0006;margin:0;font-size:clamp(48px,11vw,84px);font-weight:400;line-height:1}.tagline{font-family:var(--font-d);color:var(--gold);margin:0;font-size:clamp(19px,4.4vw,24px)}.intro-how{color:var(--cream);gap:4px;margin:4px 0 6px;padding:0;font-size:14.5px;list-style:none;display:grid}.intro-how li:before{content:"";background:var(--gold);width:7px;height:7px;margin-right:9px;display:inline-block;transform:rotate(45deg)translateY(-2px)}.big{border-radius:18px;justify-self:start;min-height:56px;padding:0 30px;font-size:18px}.intro-note{color:var(--cream-2);margin:2px 0 0;font-size:12.5px}@media (max-width:640px){.clock b{font-size:26px}.clock span{max-width:46vw;font-size:11px}.tools button{min-height:38px;padding:0 10px;font-size:13px}.tasks-btn{top:calc(var(--st) + 78px)}.tasks{top:calc(var(--st) + 124px)}.toasts{top:calc(var(--st) + 126px);width:calc(100vw - 24px)}.sheet{left:calc(var(--sl) + 10px);right:calc(var(--sr) + 10px);width:auto;bottom:calc(var(--sb) + 92px);grid-template-columns:92px minmax(0,1fr)}.sheet img{width:92px;height:92px}}@media (prefers-reduced-motion:reduce){.toast,.intro,.hud-top,.objective{transition:none}.fire-hint{animation:none}}
