:root{--cream:#fff8ea;--ink:#4a3b2a;--accent:#ff9e7a;--gold:#f2b84b;--sh:0 4px 14px rgba(80,60,30,.18)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#cdeefa;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif;color:var(--ink);user-select:none;-webkit-user-select:none;touch-action:none}#c{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}button{font:inherit;color:var(--ink);background:var(--cream);border:2px solid #f0dcb4;border-radius:14px;padding:6px 10px;box-shadow:var(--sh);cursor:pointer;transition:transform .08s}button:active{transform:scale(.94)}button.off{opacity:.45}.hide{display:none!important}#hud{position:fixed;left:10px;top:calc(10px + env(safe-area-inset-top));display:flex;flex-direction:column;gap:6px;pointer-events:none}.chip{background:#fff8eaed;border:2px solid #f0dcb4;border-radius:999px;padding:5px 12px;font-weight:700;font-size:14px;box-shadow:var(--sh);width:max-content}.chip.small{font-size:12px;padding:3px 10px;opacity:.92;font-weight:600}#tr{position:fixed;right:10px;top:calc(10px + env(safe-area-inset-top));display:grid;grid-template-columns:repeat(5,auto);gap:6px;justify-items:end}#tr button{width:40px;height:40px;padding:0;font-size:18px;border-radius:50%}#mini{grid-column:1/-1;width:150px;height:150px;border-radius:50%;border:3px solid #f0dcb4;box-shadow:var(--sh);background:#9fd59a}#toasts{position:fixed;left:50%;top:60px;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;align-items:center;pointer-events:none;z-index:5}.toast{background:#fff8eaf5;border:2px solid #f0dcb4;border-radius:14px;padding:7px 14px;font-size:14px;box-shadow:var(--sh);animation:pop .25s ease-out;transition:opacity .5s,transform .5s;max-width:86vw;text-align:center}.toast.gold{border-color:var(--gold);background:#fff3d1}.toast.subtle{background:#4a3b2a9e;color:#fff8ea;border-color:transparent;font-size:12px;padding:5px 11px;box-shadow:none;opacity:.9}.toast.out{opacity:0;transform:translateY(-8px)}@keyframes pop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}#banner{position:fixed;left:50%;bottom:150px;transform:translate(-50%,10px);background:#4a3b2ad1;color:#fff8ea;border-radius:16px;padding:9px 16px;font-size:15px;opacity:0;transition:.35s;pointer-events:none;max-width:88vw;text-align:center}#banner.on{opacity:1;transform:translate(-50%)}#joy{position:fixed;left:24px;bottom:calc(24px + env(safe-area-inset-bottom));width:120px;height:120px;border-radius:50%;background:#fff8ea59;border:2px solid rgba(255,255,255,.7);touch-action:none}#knob{position:absolute;left:35px;top:35px;width:50px;height:50px;border-radius:50%;background:#fff8eaeb;box-shadow:var(--sh)}#acts{position:fixed;left:50%;transform:translate(-50%);bottom:calc(92px + env(safe-area-inset-bottom));display:flex;gap:8px;flex-wrap:wrap;justify-content:center;max-width:70vw}#ctx{position:fixed;right:20px;bottom:calc(30px + env(safe-area-inset-bottom));font-size:16px;font-weight:800;padding:14px 18px;border-radius:20px;background:#ffe9b8;border-color:var(--gold);animation:pulse 1.6s infinite;max-width:52vw}@keyframes pulse{50%{box-shadow:0 0 0 6px #f2b84b40,var(--sh)}}#social{position:fixed;left:50%;transform:translate(-50%);bottom:calc(26px + env(safe-area-inset-bottom));display:flex;gap:8px}#social>button{width:46px;height:46px;border-radius:50%;padding:0;font-size:20px}#pop{position:absolute;bottom:56px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:5px;background:#fff8eaf7;padding:8px;border-radius:14px;box-shadow:var(--sh);white-space:nowrap}#pop button{box-shadow:none}#panel{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,92vw);max-height:80vh;overflow:auto;background:var(--cream);border:3px solid #f0dcb4;border-radius:22px;padding:16px;box-shadow:0 10px 40px #3c280a4d;z-index:8}#panel h2{margin:0 0 10px;font-size:19px}.q{position:relative;display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:9px 10px;border-radius:12px;background:#fff;margin-bottom:7px;overflow:hidden}.q small{grid-column:1/-1;opacity:.7}.q i{position:absolute;left:0;bottom:0;height:4px;background:var(--gold)}.q.done{background:#f1ffe6}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:7px}.st{background:#fff;border-radius:12px;padding:6px 2px;text-align:center;filter:grayscale(1);opacity:.4;font-size:22px}.st small{display:block;font-size:10px}.st.on{filter:none;opacity:1;border:2px dashed #e86a5a;transform:rotate(-3deg)}.att{margin-bottom:10px;font-size:13px}.att span{display:inline-block;background:#ffe2d6;border-radius:6px;padding:1px 5px;margin:2px}.fine{font-size:12px;opacity:.7}.close{margin-top:10px;width:100%}#quiz{position:fixed;inset:auto 0 0 0;margin:auto;top:0;width:min(460px,92vw);height:max-content;background:#fffdf6;border:3px solid #9fb6e8;border-radius:22px;padding:16px;z-index:9;box-shadow:0 10px 40px #141e3c59;display:flex;flex-direction:column;gap:8px}.qh{font-size:13px;opacity:.85}.qq{font-size:16px;line-height:1.45;font-weight:700}.hint{background:#fff1d6;border-radius:10px;padding:7px 10px;font-size:13px}#quiz button{text-align:left}#fade{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff8ea;opacity:0;pointer-events:none;transition:opacity .6s;z-index:7}#fade.on{opacity:1}#wish{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:linear-gradient(#cdeefa99,#ffe9c899);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:20}#wish .card{width:min(380px,90vw);background:var(--cream);border:3px solid #f0dcb4;border-radius:26px;padding:22px;text-align:center;box-shadow:0 14px 44px #3c280a40}#wish .logo{font-size:44px}#wish h1{margin:2px 0 4px;font-size:26px}.sub{margin:0 0 14px;font-size:13px;opacity:.75}#wish label{display:block;font-weight:800;margin-bottom:6px}#wish input{width:100%;font:inherit;font-size:17px;padding:11px 12px;border-radius:14px;border:2px solid #f0dcb4;background:#fff;text-align:center;outline:none;user-select:text;-webkit-user-select:text}#wish input:focus{border-color:var(--gold)}.prev{margin:8px 0 12px;font-size:14px;min-height:20px}#wgo{width:100%;font-size:17px;font-weight:800;padding:12px;background:#ffe9b8;border-color:var(--gold)}@media(max-width:640px){#mini{width:110px;height:110px}#tr button{width:36px;height:36px;font-size:16px}#ctx{font-size:14px;padding:12px 14px}#acts{bottom:calc(150px + env(safe-area-inset-bottom))}#banner{bottom:200px}}#wish.cs{place-items:center end;background:linear-gradient(90deg,transparent 40%,#fff3dc88);-webkit-backdrop-filter:none;backdrop-filter:none;padding-right:3vw}#wish.cs .card{width:min(430px,94vw);max-height:94vh;overflow:auto;text-align:left;padding:16px 18px}#wish.cs h1{text-align:center}#wish.cs h1 small{font-size:13px;color:var(--gold)}#wish .row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 8px}#wish .row>b{width:34px;font-size:13px}#wish .row.two{flex-wrap:nowrap;align-items:end}#wish .row.two label{flex:1;font-size:12px;margin:0}#wish .row.two input{font-size:15px;padding:7px}#wish .chips{display:flex;flex-wrap:wrap;gap:4px}#wish .chips button{font:inherit;font-size:12px;font-weight:700;border:2px solid #f0dcb4;background:#fff;border-radius:999px;padding:4px 9px;cursor:pointer}#wish .chips.sw button{width:24px;height:24px;padding:0;border-radius:50%}#wish .chips button.on{border-color:#e0a020;box-shadow:0 0 0 2px #ffd36b}#wish .row button#nr,#wish .row button#wr,#wish .row button#wgo{font:inherit;font-weight:800;border:0;border-radius:14px;padding:9px 12px;cursor:pointer;background:#f6e7c8}#wish #wgo{flex:1.4;background:linear-gradient(#ffd56b,#f0b030)!important}#wish .prev{margin:6px 0 10px;font-size:13px;font-weight:700;opacity:.8;text-align:center}#wish .fine,#modal .fine{font-size:11px;opacity:.65;margin:4px 0 0}@media(max-width:700px){#wish.cs{place-items:end center;padding:0}#wish.cs .card{max-height:62vh}}#status{position:fixed;top:64px;left:50%;transform:translate(-50%);z-index:12;padding:9px 18px 12px;border-radius:16px;font-weight:800;font-size:16px;background:#fff8eaf2;border:3px solid #f0dcb4;box-shadow:var(--sh);overflow:hidden;min-width:260px;text-align:center}#status i{position:absolute;left:0;bottom:0;height:5px;background:#e0a020;transition:width .3s}#status.lock{background:#3b2a4a;color:#ffe9b0;border-color:#7a5a9a}#status.lock b{font-size:22px;color:#fff}#status.drag{background:#fff0f0;border-color:#ff9a9a;animation:shake .35s infinite}#status.stealth{background:#1e2a36;color:#c8f0ff;border-color:#4a7a9a}@keyframes shake{0%,to{transform:translate(-50%)}25%{transform:translate(calc(-50% - 2px))}75%{transform:translate(calc(-50% + 2px))}}#modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:grid;place-items:center;background:#1e142859}#modal .mc{width:min(400px,90vw);background:var(--cream);border:3px solid #f0dcb4;border-radius:24px;padding:20px;text-align:center;box-shadow:0 14px 44px #0000004d}#modal h2{margin:0 0 8px}#modal .mb{display:flex;flex-direction:column;gap:8px;margin-top:14px}#modal .mb button{font:inherit;font-weight:800;font-size:15px;border:0;border-radius:14px;padding:11px;cursor:pointer;background:#f6e7c8}#modal .mb button.gold{background:linear-gradient(#e9d8ff,#c9a6ff)}#cult{position:fixed;left:12px;top:120px;z-index:11;background:#f5eefff2;border:3px solid #c9a6ff;border-radius:16px;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.5;box-shadow:var(--sh);max-width:250px}#cult small{opacity:.65;font-weight:600}#cult button{margin-top:6px;width:100%;font:inherit;font-weight:800;border:0;border-radius:12px;padding:7px;background:#ffd8d8;cursor:pointer}.qh small{display:block;opacity:.7;font-size:12px;margin-top:4px}#modal .tt{font-weight:900;font-size:17px;color:#7a4a1a;margin:0 0 10px}#modal .tend{text-align:left;display:flex;flex-direction:column;gap:7px}#modal .tr{display:grid;grid-template-columns:130px 1fr 38px;align-items:center;gap:6px;font-size:13px;font-weight:700}#modal .tr small{grid-column:1/-1;font-size:10.5px;opacity:.6;font-weight:500;margin-top:-3px}#modal .tb{height:10px;background:#efe3cc;border-radius:6px;overflow:hidden}#modal .tb i{display:block;height:100%;border-radius:6px}#modal .tp{text-align:right;font-variant-numeric:tabular-nums}html,body{overscroll-behavior:none}#panel,#quiz,#modal .mc,#wish .card{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.pv-m{display:none}@media(max-width:700px),(max-height:500px){.pv-d{display:none}.pv-m{display:inline}#wish.cs{top:var(--vvt,0);bottom:auto;height:var(--vvh,100%);background:none;-webkit-backdrop-filter:none;backdrop-filter:none}body.setup #hud,body.setup #tr,body.setup #joy,body.setup #social,body.setup #acts,body.setup #ctx,body.setup #banner,body.setup #toasts{display:none!important}#wish.cs .card{padding:10px 12px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px #3c280a2e}#wish.cs h1{font-size:18px;margin:0 0 2px}#wish .logo{font-size:30px}#wish.cs .sub{margin:0 0 6px;font-size:12px;text-align:center}#wish .row{margin:0 0 6px;gap:5px}#wish .chips button{font-size:12px;padding:5px 9px;min-height:30px}#wish .chips.sw button{width:30px;height:30px}#wish input,#wish .row.two input{font-size:16px;padding:8px}#wish .prev{margin:4px 0 6px}#wish .row button#nr,#wish .row button#wr,#wish .row button#wgo{min-height:44px}#wish.cs .fine{display:none}.chip{font-size:12px;padding:4px 10px;max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#hud{left:calc(8px + env(safe-area-inset-left));gap:5px}#tr{right:calc(8px + env(safe-area-inset-right));grid-template-columns:repeat(4,auto);gap:5px}#tr button{width:38px;height:38px;font-size:17px}#mini{width:96px;height:96px}#toasts{top:calc(env(safe-area-inset-top) + 196px)}.toast{font-size:13px;max-width:78vw}#joy{left:calc(18px + env(safe-area-inset-left));bottom:calc(20px + env(safe-area-inset-bottom));width:128px;height:128px}#knob{left:37px;top:37px;width:54px;height:54px}#social{left:auto;right:calc(12px + env(safe-area-inset-right));transform:none;bottom:calc(96px + env(safe-area-inset-bottom));flex-direction:column}#social>button{width:48px;height:48px}#pop{left:auto;right:56px;bottom:0;transform:none;max-height:60vh;overflow:auto}#ctx{right:calc(12px + env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));max-width:min(56vw,280px);min-height:56px;font-size:14px}#acts{max-width:92vw;bottom:calc(164px + env(safe-area-inset-bottom))}#acts button{min-height:40px}#banner{bottom:calc(214px + env(safe-area-inset-bottom));font-size:13px}#panel{max-height:calc(100% - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:min(420px,94vw);padding:12px}#quiz{max-height:calc(100% - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;width:min(460px,94vw);padding:12px}#quiz button{min-height:44px}#modal .mc{max-height:calc(100% - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;width:min(400px,94vw);padding:14px}#modal .tr{grid-template-columns:minmax(0,118px) 1fr 34px;font-size:12px}#status{top:calc(8px + env(safe-area-inset-top));font-size:14px;min-width:0;max-width:60vw;padding:7px 12px 10px}#cult{top:calc(120px + env(safe-area-inset-top));max-width:46vw;font-size:12px}}@media(max-width:700px)and (orientation:portrait){#wish.cs{place-items:end stretch;padding:0}#wish.cs .card{width:100%;max-height:calc(var(--vvh,100vh) * .58);border-radius:22px 22px 0 0;border-bottom:0}}@media(max-height:500px)and (orientation:landscape){#wish.cs{place-items:stretch end;padding:0}#wish.cs .card{width:min(400px,52vw);max-height:none;height:100%;border-radius:22px 0 0 22px;border-right:0;padding-right:calc(12px + env(safe-area-inset-right))}#tr{grid-template-columns:repeat(7,auto)}#toasts{top:calc(env(safe-area-inset-top) + 56px)}.toast{max-width:42vw}#banner{bottom:calc(16px + env(safe-area-inset-bottom));max-width:46vw}#acts{bottom:calc(84px + env(safe-area-inset-bottom));max-width:50vw}#social{bottom:calc(92px + env(safe-area-inset-bottom))}#joy{width:112px;height:112px}#knob{left:31px;top:31px}}#c,#joy,#knob{touch-action:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#iab{position:fixed;left:50%;transform:translate(-50%);top:calc(6px + env(safe-area-inset-top));z-index:9999;width:min(96vw,460px);box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 8px 8px 12px;border-radius:14px;background:#28243ceb;color:#fff;font-size:13.5px;box-shadow:0 4px 16px #00000040}#iab .iab-t{flex:1;min-width:0;font-weight:600}#iab button{border:0;border-radius:10px;padding:7px 10px;font:inherit;font-weight:700;cursor:pointer}#iab .iab-go{background:#ffd76a;color:#3a2a00}#iab .iab-x{background:transparent;color:#fff;padding:7px 8px}#iab .iab-h{flex-basis:100%;font-size:12.5px;opacity:.92;line-height:1.4}#iab .iab-h:empty{display:none}html.iab-on :is(#hud,#tr,#status,#cult,#toasts){margin-top:var(--iabh,0px)}#intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(16px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));box-sizing:border-box;color:#fff8ea;text-align:center;transition:opacity .7s ease;-webkit-user-select:none;user-select:none}#intro.out{opacity:0;pointer-events:none}#intro .in-vig{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 60% 34% at 50% 46%,#321a086b,#321a082e 55%,#321a0800),linear-gradient(180deg,#ffaa5a29,#ff8c3c1f),radial-gradient(ellipse at 50% 45%,#28180a00 35%,#2816086b),linear-gradient(180deg,#ffc4782e,#0000 40%,#3c1e0a73)}#intro .in-box{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;max-width:min(92vw,520px)}#intro .in-kicker{font-size:clamp(12px,3.4vw,15px);letter-spacing:.18em;opacity:.92;text-shadow:0 1px 6px rgba(60,30,0,.6)}#intro .in-title{margin:0;font-family:"Noto Serif KR",Nanum Myeongjo,AppleMyungjo,Batang,serif;font-weight:800;font-size:clamp(64px,19vw,132px);line-height:1;letter-spacing:.06em;color:#fff6e0;text-shadow:0 2px 0 rgba(150,90,30,.35),0 6px 30px rgba(80,40,0,.55),0 0 60px rgba(255,200,120,.45);animation:inRise 1.6s ease-out both}#intro .in-sub{font-family:"Noto Serif KR",Nanum Myeongjo,AppleMyungjo,Batang,serif;font-size:clamp(18px,5.4vw,28px);letter-spacing:.32em;padding-left:.32em;text-shadow:0 2px 12px rgba(60,30,0,.7);animation:inRise 1.6s .25s ease-out both}#intro .in-load{width:min(70vw,300px);margin-top:18px;transition:opacity .5s}#intro .in-bar{height:6px;border-radius:9px;background:#fff8ea47;overflow:hidden;box-shadow:inset 0 1px 2px #0003}#intro .in-bar i{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,#ffe2a8,#ffc46b)}#intro .in-pct{font-size:13px;margin-top:7px;opacity:.9;text-shadow:0 1px 4px rgba(0,0,0,.5)}#intro .in-go{margin-top:8px;min-width:200px;min-height:56px;padding:14px 38px;border:0;border-radius:999px;font:inherit;font-size:clamp(19px,5vw,22px);font-weight:800;letter-spacing:.08em;color:#5a3410;background:linear-gradient(180deg,#fff3d1,#ffcf7a);box-shadow:0 8px 24px #5a2d0066,inset 0 -3px #b46e1e59;cursor:pointer;opacity:.45;transform:scale(.96);transition:opacity .5s,transform .5s;touch-action:manipulation}#intro.ready .in-go{opacity:1;transform:none;animation:inPulse 2.4s ease-in-out infinite}#intro.ready .in-load{opacity:.55}#intro .in-online{font-size:13px;padding:5px 12px;border-radius:999px;background:#1e140a59;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#intro .in-foot{position:absolute;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom));font-size:12px;opacity:.8;text-shadow:0 1px 4px rgba(0,0,0,.6);padding:0 16px}@keyframes inRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes inPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@media(orientation:landscape)and (max-height:500px){#intro .in-title{font-size:clamp(48px,14vh,84px)}#intro .in-box{gap:4px}#intro .in-load{margin-top:8px}#intro .in-go{min-height:46px;padding:10px 32px}#intro .in-foot{display:none}}body.intro :is(#hud,#tr,#joy,#social,#acts,#ctx,#banner,#toasts,#status,#cult,#mini,#wish){display:none!important}
