:root{--accent:#c9a15a;--ink:#1d2b3a;--panel:#ffffffed;--r:16px}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);background:#f4c9a0;margin:0;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#joy-zone{z-index:2;width:45%;height:55%;position:fixed;bottom:0;left:0}#joy-base{pointer-events:none;z-index:3;background:#ffffff40;border:2px solid #fff9;border-radius:50%;width:110px;height:110px;margin:-55px 0 0 -55px;display:none;position:fixed}#joy-knob{background:#ffffffbf;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute;top:50%;left:50%}#rotate{text-align:center;color:#fff;z-index:100;background:#234;justify-content:center;align-items:center;font-size:20px;display:none;position:fixed;inset:0}@media (orientation:portrait) and (width<=760px){html:not(.portrait-ok) #rotate{display:flex}}#rotate{background:radial-gradient(circle at 50% 35%,#2c4a6e,#0f1c2e)}#rotate .rbox{flex-direction:column;align-items:center;gap:10px;max-width:320px;padding:24px;display:flex}#rotate .rph{font-size:64px;animation:2.2s ease-in-out infinite rph}@keyframes rph{0%,30%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}#rotate b{color:#ffe7a3;font-size:21px}#rotate p{opacity:.85;margin:0;font-size:15px;line-height:1.6}#rotate button{color:#cfe0f5;background:0 0;border:1.5px solid #cfe0f580;border-radius:999px;margin-top:18px;padding:8px 18px;font-size:14px}#ui{pointer-events:none;z-index:5;position:fixed;inset:0}#ui>*{pointer-events:auto}button{font:inherit;color:inherit;cursor:pointer}.btn{background:var(--accent);color:#fff;border:0;border-radius:12px;padding:10px 16px;font-size:15px;font-weight:700;box-shadow:0 2px #0003}.btn.sub{color:var(--ink);background:#e7ecf1}.btn:disabled{opacity:.4}#hud-top{top:calc(8px + env(safe-area-inset-top));pointer-events:none;align-items:flex-start;gap:8px;display:flex;position:absolute;left:10px;right:10px}#hud-top>*{pointer-events:auto}#fps{color:#fff;pointer-events:none;background:#00000059;border-radius:10px;padding:3px 8px;font-size:11px}#goal{text-align:center;color:#fff;border:2px solid var(--accent);pointer-events:none;background:#141e2db8;border-radius:999px;flex:1;max-width:56%;margin:0 auto;padding:6px 14px;font-size:14px}#goal:empty{display:none}#hud-btns{gap:6px;display:flex}.hbtn{background:var(--accent);color:#fff;border:2px solid #fff;border-radius:50%;width:42px;height:42px;padding:0;font-size:19px;position:relative}.hbtn .dot{color:#fff;text-align:center;background:#e0457b;border-radius:8px;min-width:16px;height:16px;font-size:10px;line-height:16px;display:none;position:absolute;top:-3px;right:-3px}#malbtn.ready{background:#7fd18b;animation:1s infinite pulse}#malbtn .ring{opacity:0;border:3px solid #fff;border-radius:50%;position:absolute;inset:-6px}#malbtn.hold .ring{opacity:1;animation:.7s linear forwards hold}@keyframes pulse{50%{transform:scale(1.12)}}@keyframes hold{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}#act{right:calc(24px + env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));background:var(--accent);color:#fff;z-index:6;border:4px solid #fff;border-radius:50%;width:86px;height:86px;font-size:17px;font-weight:800;display:none;position:absolute;box-shadow:0 4px #00000040}#saved{color:#fff;opacity:0;pointer-events:none;background:#00000073;border-radius:8px;padding:2px 8px;font-size:11px;transition:opacity .2s;position:absolute;bottom:8px;left:10px}#saved.on{opacity:1}#bubble{border:2px solid var(--accent);cursor:pointer;z-index:4;background:#fff;border-radius:14px;max-width:220px;padding:7px 11px;font-size:13px;line-height:1.35;display:none;position:absolute;transform:translate(-50%,-100%)}#bubble.small{color:#0000;max-width:34px;max-height:26px;padding:2px 8px;overflow:hidden}#bubble.small:after{content:"…";color:var(--ink);position:absolute;top:0;left:12px}#beam-note{color:#fff;pointer-events:none;background:#141e2dbf;border-radius:12px;padding:6px 14px;font-size:14px;display:none;position:absolute;bottom:120px;left:50%;transform:translate(-50%)}#sense{pointer-events:none;background:#0006;border:2px solid #fff;border-radius:9px;width:240px;height:18px;display:none;position:absolute;bottom:26px;left:50%;overflow:hidden;transform:translate(-50%)}#sense i{background:#5ec8ff;width:0;height:100%;transition:width .1s;display:block}#dlg{left:50%;bottom:calc(10px + env(safe-area-inset-bottom));z-index:20;width:min(760px,92vw);display:none;position:absolute;transform:translate(-50%)}#dlg .name{background:var(--accent);color:#fff;border-radius:10px 10px 0 0;padding:3px 14px;font-size:14px;font-weight:700;position:absolute;top:-26px;left:14px}#dlg .box{background:var(--panel);border:3px solid var(--accent);border-radius:var(--r);min-height:76px;padding:14px 18px 18px;font-size:17px;line-height:1.5;position:relative}#dlg .arrow{color:var(--accent);animation:.8s infinite bob;position:absolute;bottom:6px;right:14px}@keyframes bob{50%{transform:translateY(4px)}}#dlg .choices{flex-direction:column;gap:6px;margin-top:10px;display:flex}#dlg .choices button{text-align:left;border:2px solid var(--accent);background:#fff;border-radius:10px;padding:9px 14px;font-size:15px}#fade{opacity:0;z-index:50;color:#fff;letter-spacing:1px;text-align:center;pointer-events:none;background:#0b1623;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:24px;transition:opacity .45s;display:none;position:fixed;inset:0}#fade.on{opacity:1;pointer-events:auto}#fade small{opacity:.8;font-size:14px}#warpfx{z-index:49;pointer-events:none;background:radial-gradient(circle,#fff0 10%,#78c8ff8c 60%,#fffffff2 100%);display:none;position:fixed;inset:0}#warpfx.on{animation:1.4s ease-in forwards warp;display:block}@keyframes warp{0%{opacity:0;filter:hue-rotate();transform:scale(1)}60%{opacity:.9;filter:hue-rotate(120deg)blur(1px);transform:scale(1.4)rotate(6deg)}to{opacity:1;filter:hue-rotate(240deg)blur(3px);transform:scale(2.4)rotate(-10deg)}}#toast{opacity:0;background:var(--panel);border:3px solid var(--accent);border-radius:var(--r);text-align:center;z-index:30;pointer-events:none;max-width:90vw;padding:10px 18px;transition:all .3s;position:absolute;top:70px;left:50%;transform:translate(-50%,-20px)}#toast.on{opacity:1;transform:translate(-50%)}#toast b{color:var(--accent);font-size:12px;display:block}#toast span{font-size:17px;font-weight:700;display:block}#toast small{color:#556}.modal{z-index:60;background:#0a14238c;justify-content:center;align-items:center;padding:10px;display:flex;position:fixed;inset:0}.modal .card{background:var(--panel);border:3px solid var(--accent);touch-action:pan-y;border-radius:20px;width:min(720px,100%);max-height:94vh;padding:16px 20px;overflow:auto}.modal h2{margin:0 0 6px;font-size:20px}.modal .prompt{margin-bottom:12px;font-size:16px;line-height:1.5}.modal .foot{justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;display:flex}.modal .fb{color:#c0392b;min-height:22px;margin-top:6px;font-size:14px;font-weight:600}.modal .fb.ok{color:#1e8f4a}.modal .hintline{color:#476;text-align:left;flex:1;min-height:20px;font-size:13px}.opt{text-align:left;background:#fff;border:2px solid #cbd5df;border-radius:12px;width:100%;margin:6px 0;padding:11px 14px;font-size:16px;display:block}.opt.bad{opacity:.75;background:#fde8e6;border-color:#e6a39b}.opt.good{background:#e3f6e8;border-color:#5cc17a}.opt.sel{border-color:var(--accent);background:#fff6e0}.pieces{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.piece{background:#fff;border:2px solid #aab;border-radius:12px;padding:14px 18px;font-size:17px;font-weight:700}.seq{flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;margin:8px 0;display:flex}.seq span{border:2px dashed var(--accent);background:#fff6e0;border-radius:10px;padding:8px 12px;font-weight:700}.lock{justify-content:center;gap:10px;margin:14px 0;display:flex}.lock .col{flex-direction:column;align-items:center;gap:4px;display:flex}.lock .col button{background:#fff;border:2px solid #aab;border-radius:8px;width:54px;height:36px;font-size:16px}.lock .col div{color:#ffe29a;background:#1d2b3a;border-radius:10px;justify-content:center;align-items:center;width:54px;height:64px;font-size:36px;font-weight:800;display:flex}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.assign .tokens,.assign .regions{flex-direction:column;gap:8px;display:flex}.cardthumb{border:2px solid var(--accent);text-align:left;background:#fff;border-radius:12px;padding:8px 10px;font-size:13px;line-height:1.35}.cardthumb.locked{color:#99a;background:#dfe6ee;border-color:#bcc7d3}.cardthumb b{font-size:15px;display:block}.cardthumb .y{color:var(--accent);font-weight:700}.cardthumb small{color:#667}.cardthumb button{border:1px solid var(--accent);background:#fff6e0;border-radius:8px;margin-top:5px;padding:3px 8px;font-size:12px}.cgrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}canvas.pz{touch-action:none;background:#cde;border-radius:12px;width:100%;display:block}.sliderow{align-items:center;gap:8px;margin:8px 0;display:flex}.sliderow input{flex:1}#nb{border-left:3px solid var(--accent);z-index:15;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffffaeb;flex-direction:column;width:35%;min-width:280px;height:100%;display:none;position:absolute;top:0;right:0}#nb.on{display:flex}#nb.min{border-radius:12px 0 0 12px;width:200px;min-width:0;height:44px;top:56px}#nb.min .nbbody{display:none}#nb.w2{width:50%}#nb.w3{width:70%}#nb header,.nbhead{background:var(--accent);color:#fff;align-items:center;gap:4px;padding:8px;font-weight:700;display:flex}#nb header .sp{flex:1}#nb header button,.nbhead button{color:#fff;background:#ffffff40;border:0;border-radius:8px;padding:4px 8px;font-size:13px}.tabs{flex-wrap:wrap;gap:4px;padding:6px 8px 0;display:flex}.tabs button{background:#e3e7ec;border:0;border-radius:8px 8px 0 0;padding:5px 10px;font-size:13px}.tabs button.on{background:var(--accent);color:#fff}.nbbody{flex-direction:column;flex:1;min-height:0;padding:6px 8px 8px;display:flex}.nbbody textarea,.nbarea{resize:none;width:100%;min-height:80px;font:inherit;-webkit-user-select:text;user-select:text;touch-action:auto;background:#fffef8;border:2px solid #d3c9a8;border-radius:10px;flex:1;padding:10px;font-size:15px;line-height:1.5}.nbbody .tip{color:#776;margin-bottom:4px;font-size:12px}@media (width<=700px),(height<=520px) and (width<=900px){#nb{border-left:0;border-top:3px solid var(--accent);width:100%;height:50%;top:auto;bottom:0}#nb.w2,#nb.w3{width:100%}#nb.typing{height:100%}#nb.min{width:160px;height:44px;top:auto;bottom:0;right:0}}.essay{width:min(1000px,100%)!important}.essay .cols{grid-template-columns:1.1fr 1fr;gap:14px;display:grid}.essay textarea{resize:vertical;width:100%;min-height:200px;font:inherit;-webkit-user-select:text;user-select:text;touch-action:auto;border:2px solid #d3c9a8;border-radius:10px;padding:10px;font-size:16px;line-height:1.5}.essay .count{text-align:right;color:#667;font-size:13px}.essay .count.ok{color:#1e8f4a;font-weight:700}.essay .lines{max-height:120px;margin-top:6px;overflow:auto}.essay .lines div{border-bottom:1px solid #eee;align-items:center;gap:6px;padding:3px 0;font-size:13px;display:flex}.essay .lines div span{flex:1}.essay .lines button{border:1px solid var(--accent);background:#fff6e0;border-radius:8px;padding:2px 8px;font-size:12px}.essay .checks label{padding:6px 0;font-size:15px;display:block}.essay details>summary{cursor:pointer;padding:8px 0;font-weight:700}@media (width<=760px){.essay .cols{grid-template-columns:1fr}.essay textarea{min-height:120px}}#battle{z-index:35;background:linear-gradient(#8fd3f4,#e7f6ff);flex-direction:column;gap:8px;padding:10px 14px;display:none;position:fixed;inset:0;overflow:auto}#battle .foe{background:var(--panel);border:3px solid var(--accent);border-radius:var(--r);padding:10px 14px}#battle .hp{gap:6px;margin-top:4px;display:flex}#battle .hp i{background:#d9534f;border-radius:8px;flex:1;max-width:80px;height:16px}#battle .claim{margin:6px 0;font-size:18px;font-weight:800}#battle .msg{background:var(--panel);border:3px solid var(--accent);border-radius:var(--r);min-height:44px;padding:8px 14px;font-size:15px;line-height:1.45}#battle .hand{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}#battle .hand button{text-align:left;border:2px solid var(--accent);background:#fff;border-radius:12px;padding:7px 9px;font-size:12px;line-height:1.3}#battle .hand button:disabled{opacity:.35}#battle .hand button b{font-size:13px;display:block}#title{z-index:45;color:#fff;text-align:center;background:linear-gradient(#0a1e3259,#0a1e328c);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:14px;display:none;position:fixed;inset:0}#title h1{text-shadow:0 3px 8px #00000080;margin:0;font-size:clamp(26px,6vw,44px)}#title p{opacity:.9;margin:0}#title .menu{flex-direction:column;gap:8px;width:min(320px,90vw);margin-top:8px;display:flex}#title .warn{background:#0006;border-radius:10px;max-width:520px;padding:4px 10px;font-size:12px}.results pre{white-space:pre-wrap;-webkit-user-select:text;user-select:text;background:#f6f1e3;border-radius:10px;max-height:40vh;padding:10px;font-size:13px;overflow:auto}.results .stats{flex-wrap:wrap;gap:14px;margin:8px 0;font-size:16px;display:flex}.results .stats b{color:var(--accent)}.results input[type=text]{width:100%;font:inherit;-webkit-user-select:text;user-select:text;touch-action:auto;border:2px solid #d3c9a8;border-radius:10px;padding:10px}.guide li{margin:6px 0;line-height:1.5}:root{--paper:#f5eddb;--paper-edge:#d9c9a2;--wood:#4e3722;--ink:#2a2118;--seal:#b3261e;--noise:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .27  0 0 0 0 .15  0 0 0 .22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");--serif:"Nanum Myeongjo", "Noto Serif KR", "Batang", serif}html,body{color:var(--ink);font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif}.paper{background:var(--noise), linear-gradient(#f8f1de, #efe4c8)}#dlg .box,.modal .card,#toast,#battle .foe,#battle .msg{background:var(--noise), linear-gradient(#f8f1de, #efe4c8);border:3px solid var(--wood);box-shadow:0 0 0 2px var(--accent) inset, 0 6px 18px #00000059;border-radius:14px}#dlg .box{letter-spacing:-.1px;padding:16px 20px 20px;font-size:18px;line-height:1.6}#dlg .name{font-family:var(--serif);background:var(--wood);color:#f7e9c6;border:2px solid var(--accent);letter-spacing:1px;border-bottom:0;border-radius:10px 10px 0 0;padding:4px 18px 5px;font-size:15px;top:-30px;left:18px}#dlg .arrow{color:var(--seal)}#dlg .choices button{border:2px solid var(--wood);background:#fffaf0;border-radius:8px;font-size:16px}#dlg .choices button:hover{background:#f5e6c0}.modal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0e0a069e}.modal h2{font-family:var(--serif);letter-spacing:.5px;border-bottom:2px solid var(--accent);margin-bottom:10px;padding-bottom:6px;font-size:22px}.btn{background:linear-gradient(var(--accent), color-mix(in srgb, var(--accent) 78%, black));border:2px solid var(--wood);font-family:var(--serif);letter-spacing:.5px;text-shadow:0 1px #0000004d;border-radius:10px;box-shadow:0 3px #00000059}.btn:active{transform:translateY(2px);box-shadow:0 1px #00000059}.btn.sub{color:var(--ink);text-shadow:none;background:linear-gradient(#f6efdc,#e4d6b4)}.opt{background:#fffaf0;border:2px solid #c9b88c;border-radius:10px}.opt:hover{background:#f6e9c6}.piece{border:2px solid var(--wood);font-family:var(--serif);background:#fffaf0;box-shadow:0 3px #00000040}#goal{font-family:var(--serif);letter-spacing:.3px;background:var(--noise), linear-gradient(#f6ecd0, #e6d6a8);color:var(--ink);border:2px solid var(--wood);box-shadow:0 0 0 2px var(--accent) inset, 0 3px 8px #00000059;border-radius:6px;padding:6px 22px;font-size:15px;position:relative}#goal:before,#goal:after{content:"";background:var(--wood);border-radius:4px;width:9px;position:absolute;top:-3px;bottom:-3px}#goal:before{left:-6px}#goal:after{right:-6px}#fps{background:#1e140a73}.hbtn{border:3px solid var(--wood);background:var(--noise), radial-gradient(circle at 35% 30%, #fbf3dc, #d9c79b);width:44px;height:44px;color:var(--wood);box-shadow:0 3px 0 #00000059, 0 0 0 2px var(--accent) inset;justify-content:center;align-items:center;display:flex}.hbtn .ico{display:flex}.hbtn:active{transform:translateY(2px)}.hbtn .dot{background:var(--seal);border:2px solid #fff;top:-6px;right:-6px}#malbtn.ready{background:radial-gradient(circle at 35% 30%,#e8ffe8,#8fd9a0)}.hbtn.blink{color:#7a1d12;animation:.85s ease-in-out infinite hbblink}@keyframes hbblink{0%,to{box-shadow:0 3px 0 #00000059, 0 0 0 2px var(--accent) inset, 0 0 0 0 #ffd64000;filter:none;transform:scale(1)}50%{filter:brightness(1.12)saturate(1.2);transform:scale(1.18);box-shadow:0 3px #00000059,inset 0 0 0 2px #ffd23f,0 0 0 7px #ffd640e6,0 0 22px 8px #ffc828d9}}#act{background:radial-gradient(circle at 35% 30%, #d8473b, var(--seal) 60%, #7e1712);color:#fff1de;width:92px;height:92px;font-family:var(--serif);letter-spacing:2px;text-shadow:0 2px #3c0a0699;border:0;border-radius:50%;font-size:21px;font-weight:800;transform:rotate(-5deg);box-shadow:0 5px #3c0a068c,0 8px 14px #0006,inset 0 0 0 5px #ffffff2e,inset 0 0 0 7px #3c0a0659}#act:active{transform:rotate(-5deg)translateY(3px);box-shadow:0 2px #3c0a068c,inset 0 0 0 5px #ffffff2e}#bubble{background:var(--noise), #fff9e8;border:2px solid var(--wood);border-radius:12px;font-size:14px;box-shadow:0 3px 8px #0000004d}#toast b{font-family:var(--serif);color:var(--seal);letter-spacing:1px}#toast span{font-family:var(--serif)}.cgrid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px}.cardthumb{border:3px solid var(--wood);background:var(--noise), linear-gradient(#fbf4e0, #eddfba);box-shadow:0 0 0 2px var(--accent) inset, 0 4px 8px #00000040;border-radius:10px;min-height:150px;padding:26px 10px 10px;position:relative}.cardthumb:before{content:attr(data-mark);text-align:center;background:var(--seal);color:#fff1de;border:2px solid var(--wood);width:34px;height:34px;line-height:30px;font-family:var(--serif);border-radius:50%;font-size:18px;position:absolute;top:-10px;left:-8px;box-shadow:0 2px #0000004d}.cardthumb b{font-family:var(--serif);margin-bottom:4px;font-size:15px;line-height:1.3}.cardthumb .y{background:var(--wood);color:#f7e9c6;border-radius:4px;margin-bottom:4px;padding:0 8px;font-size:12px;display:inline-block}.cardthumb.locked{color:#8a806a;box-shadow:none;background:repeating-linear-gradient(45deg,#cfc6b0,#cfc6b0 8px,#c3b9a0 8px 16px);border-style:dashed}.cardthumb.locked:before{background:#8a806a}#nb{background:var(--noise), linear-gradient(#fbf4e0, #f1e6c8);border-left:4px solid var(--wood)}#nb header,.nbhead{background:var(--wood);font-family:var(--serif);letter-spacing:1px}.tabs button.on{background:var(--wood)}.nbbody textarea,.nbarea,.essay textarea{background:repeating-linear-gradient(#fffdf4,#fffdf4 27px,#e6dcc0 28px);border:2px solid #cdbb8c;line-height:28px}#battle{background:radial-gradient(circle at 50% 0,#b7e1f7,#6aa8cc 70%,#3d6f93)}#battle .hand button{background:var(--noise), linear-gradient(#fbf4e0, #eddfba);border:2px solid var(--wood);font-family:inherit;box-shadow:0 3px #00000040}#battle .hand button b{font-family:var(--serif)}#battle .hp i{border:2px solid var(--wood);background:linear-gradient(#ef6a5e,#b3261e)}#battle .hp i.off{background:#d8d0bc}#title h1{font-family:var(--serif);letter-spacing:6px;font-weight:800}#title p{font-family:var(--serif);letter-spacing:3px}#title .menu .btn{padding:13px;font-size:18px}#sense{border:2px solid var(--wood);background:#281c108c}#sense i{background:linear-gradient(#7fd4ff,#2f93d6)}#title{background-position:50%;background-size:cover}#title .menu .row2{gap:8px;display:flex}#npcbubble{color:#3a2a18;z-index:4;pointer-events:none;background:#fff9e8;border:2px solid #8a6a3a;border-radius:14px;max-width:230px;padding:7px 12px;font-size:14px;line-height:1.4;position:absolute;transform:translate(-50%,-100%);box-shadow:0 3px 8px #0000004d}.gate{z-index:80;background:#140f0a8c;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;inset:0}.gatebox{background:#f6edd6;border:4px solid #d9a441;border-radius:20px;flex-direction:column;gap:10px;width:min(520px,94vw);max-height:92vh;padding:18px 20px;display:flex;overflow:auto;box-shadow:0 12px 30px #0006}.gatebox h3{color:#a33a2a;margin:0}.gatebox h3.okh{color:#2f7a3a}#title{justify-content:space-between;padding:5vh 14px 3vh}#title .menu{flex-flow:wrap;justify-content:center;width:min(760px,96vw);margin-top:0}#title .menu .btn{flex:0 auto;padding:10px 16px;font-size:16px}#title .menu .row2{flex:100%;justify-content:center}#title .menu .row2 .btn{flex:0 220px}#title .warn{display:none}#cutscene{z-index:70;opacity:0;cursor:pointer;background:#14181f;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:fixed;inset:0}#cutscene.on{opacity:1}#cutscene .stage{width:100%;height:100%;position:relative;overflow:hidden}#cutscene img,#cutscene canvas{width:100%;height:100%;position:absolute;inset:0}#cutscene img{object-fit:cover;transform-origin:50% 55%}#cutscene canvas{pointer-events:none}#cutscene img.mv-zoom{animation:14s ease-out forwards csZoom}#cutscene img.mv-pan{animation:16s ease-in-out forwards csPan}#cutscene img.mv-rock{animation:5.5s ease-in-out infinite alternate csRock,14s ease-out forwards csZoom}@keyframes csZoom{0%{scale:1.02}to{scale:1.16}}@keyframes csPan{0%{translate:2.5%;scale:1.12}to{translate:-2.5%;scale:1.12}}@keyframes csRock{0%{translate:-.6% .4%;rotate:-.7deg}to{translate:.6% -.4%;rotate:.7deg}}#cutscene .cap{color:#5a3d1a;text-align:center;background:#fff9e8f0;border:3px solid #d9a441;border-radius:16px;max-width:90vw;padding:8px 18px;font-weight:700;position:absolute;top:4vh;left:50%;transform:translate(-50%);box-shadow:0 4px #d9a441}#cutscene .go{color:#fff;text-shadow:0 2px 6px #000000b3;font-weight:700;position:absolute;bottom:14px;right:18px}#jumpbtn{color:#fff;z-index:30;touch-action:none;background:#4aa3e8;border:4px solid #fff;border-radius:50%;width:84px;height:84px;font:800 18px system-ui,sans-serif;position:fixed;bottom:26px;left:22px;box-shadow:0 6px #2a6fae,0 10px 18px #00000047}#jumpbtn:active{transform:translateY(3px);box-shadow:0 3px #2a6fae}#title{background:#f4c9a0;overflow:hidden}#title .tbg{transform-origin:50%;z-index:0;position:absolute}#title .tbg img,#title .tbg canvas,#title .tbg video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}#title .tbg .rays{mix-blend-mode:screen;background:radial-gradient(at 18% 8%,#fff0c88c,#fff0c800 55%);animation:7s ease-in-out infinite alternate tglow;position:absolute;inset:0}#title .tbg .vig{background:linear-gradient(#141e3c00 40%,#141e3c61),radial-gradient(#0000 60%,#1e142847);position:absolute;inset:0}@keyframes tzoom{0%{transform:scale(1)}to{transform:scale(1.08)}}@keyframes tglow{0%{opacity:.55}to{opacity:1}}#title .head,#title .menu{z-index:2;position:relative}#title h1{letter-spacing:10px;background:linear-gradient(#fffbe8,#ffe6a0 55%,#f3b95a);color:#0000;-webkit-text-stroke:1px #7a4a1859;filter:drop-shadow(0 4px 6px #50280a8c);-webkit-background-clip:text;background-clip:text;font-size:clamp(34px,8vw,68px)}#title p{color:#fff6e0;text-shadow:0 2px 8px #50280ab3;letter-spacing:6px;font-size:clamp(13px,2.4vw,18px)}#title p:before,#title p:after{content:"";vertical-align:middle;background:#fff6e0cc;width:36px;height:2px;margin:0 12px;display:inline-block}#title .menu .btn{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#5a3d1a;background:#fffbeee0;border:2px solid #ffffffe6;border-radius:999px;box-shadow:0 5px #a06e328c,0 10px 22px #3c1e0a47}#title .menu .btn:first-child,#title .menu .row2 .btn:first-child{color:#5a2d0a;background:linear-gradient(#ffd96a,#f5a93a);border-color:#fff3c8}#title .menu .btn:hover{transform:translateY(-2px)}#nb.on{z-index:75}#camctl{z-index:30;flex-direction:column;gap:8px;display:flex;position:fixed;top:70px;left:14px}#camctl button{color:#5a3d1a;touch-action:none;background:#fffbeeeb;border:3px solid #fff;border-radius:50%;width:44px;height:44px;font:800 20px system-ui;box-shadow:0 4px #a06e3280}.pick{color:#fff;text-shadow:0 1px 3px #00000080;justify-content:center;align-items:center;gap:8px;margin-bottom:8px;font-weight:700;display:flex}.pick .btn{opacity:.75;padding:6px 14px}.pick .btn.on{opacity:1;color:#2b3f8a;background:#fff;outline:3px solid #ffd54a}.pick{flex-direction:column}.pickrow{justify-content:center;gap:14px;display:flex}.pc{cursor:pointer;font:inherit;color:#2b3f8a;background:#ffffff8c;border:3px solid #0000;border-radius:18px;flex-direction:column;align-items:center;padding:4px 10px 6px;display:flex}.pc img{pointer-events:none;width:auto;height:120px}.pc.on{background:#fff;border-color:#ffd54a;transform:scale(1.08)}#title .pick{flex-direction:column;align-items:center;gap:6px;width:100%;margin:8px 0 14px;display:flex}#title .pickrow{flex-direction:row;justify-content:center;gap:14px;display:flex}#title .pc{flex:none}#title .pick{z-index:2;position:relative}.pick span{color:#fff;text-shadow:0 1px 4px #0009;font-weight:700}body.touchjoy #jumpbtn{bottom:26px;left:auto;right:22px}body.touchjoy #joy-base{background:#ffffff59}#title .ver{color:#fff;opacity:.85;text-shadow:0 1px 3px #0009;z-index:3;font:600 12px system-ui;position:absolute;bottom:6px;right:10px}.nbbody textarea,.nbarea,.essay textarea{background-image:repeating-linear-gradient(#fffdf4,#fffdf4 26px,#dccfa8 26px 28px);background-position:0 10px;background-attachment:local;background-origin:padding-box;padding:10px 12px;line-height:28px}.modal .intro{color:#4a3a1a;background:#fff6dc;border:2px solid #e3c987;border-radius:12px;margin-bottom:8px;padding:10px 12px;font-size:14px;line-height:1.55}.modal .card .foot{background:var(--panel);z-index:2;padding:8px 0 4px;position:sticky;bottom:-16px}#dlg .nbbtn,.dlg .nbbtn{color:#5a3d1a;cursor:pointer;background:#fff6dc;border:2px solid #d9a441;border-radius:12px;margin-top:6px;padding:6px 12px;font:700 14px inherit}.nbbtn:disabled{opacity:.6}.hbtn.emo{justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex}.srcbox{background:#fff6dc;border:2px solid #e3c987;border-radius:12px;margin-bottom:10px;padding:12px 14px}.srcbox .y,.srcitem .y{color:#8a6a2a;margin-left:8px;font-size:13px;font-weight:700}.srctext{color:#3a2e1a;white-space:pre-wrap;font-size:15px;line-height:1.6}.srclist{flex-direction:column;gap:8px;display:flex}.srcitem{background:#fffdf4;border:2px solid #e3d6ae;border-radius:12px;padding:8px 12px}.srcitem summary{cursor:pointer;font-size:15px}.srcitem .btn{margin-top:6px}.piece.placed{text-align:left;background:#fff6dc;border:2px solid #d9a441;width:100%;margin:4px 0;display:block}.piece.used{opacity:.45}.modal .card .foot{background:#efe6cb}#dropind{z-index:14;pointer-events:none;filter:drop-shadow(0 2px 4px #00000073);align-items:center;gap:4px;font-size:34px;display:none;position:fixed}#dropind .arr{color:#fff;text-shadow:0 0 6px #2a7fd0;font-size:26px}body{word-break:keep-all;overflow-wrap:break-word}button,.btn{white-space:nowrap}#dlg .choices button,#battle .hand button,.srcitem summary{white-space:normal}#bubble,#npcbubble{text-align:center;width:max-content}@media (height<=430px){#title{gap:4px;padding:2vh 12px}#title h1{letter-spacing:6px;font-size:clamp(26px,6vw,44px)}#title p{font-size:12px}#title .pick{gap:2px;margin:2px 0 6px}.pc img{height:78px}#title .menu{gap:6px}#title .menu .btn{padding:7px 14px;font-size:14px}#title .ver{top:4px;bottom:auto}}#jumpbtn{z-index:15}#battle .life{color:#6a3a1a;align-items:center;gap:3px;margin-top:4px;font-size:14px;font-weight:700;display:flex}#battle .life i{color:#e0473c;font-size:18px;font-style:normal;transition:transform .2s}#battle .life i.off{color:#cfc6b0;filter:grayscale();transform:scale(.85)}#battle .lose{z-index:40;background:#1e140a8c;justify-content:center;align-items:center;padding:14px;animation:.5s ease-out losein;display:flex;position:fixed;inset:0}#battle .lose .paper{background:var(--noise), linear-gradient(#f7f0dc, #e9dcb8);border:3px solid var(--wood);color:#2e2416;text-align:center;border-radius:6px;width:min(560px,94vw);max-height:92vh;padding:14px 20px 18px;overflow:auto;transform:rotate(-1.2deg);box-shadow:0 10px 30px #00000080}#battle .lose .mast{font-family:var(--serif);letter-spacing:4px;border-bottom:3px double #6b5536;margin-bottom:8px;padding-bottom:6px;font-size:14px;font-weight:800}#battle .lose h2{font-family:var(--serif);margin:4px 0 10px;font-size:clamp(20px,3.6vw,28px);line-height:1.3}#battle .lose p{text-align:left;margin:6px 0;font-size:15px;line-height:1.55}#battle .lose p.tr{color:#7a6548;margin-top:-2px;font-size:13px}#battle .lose .tip{text-align:left;background:#fff8e2;border:2px dashed #c9a35a;border-radius:10px;margin:10px 0 12px;padding:8px 12px;font-size:14px}@keyframes losein{0%{opacity:0}to{opacity:1}}#fps{display:none}body.debug #fps{display:block}#hud-btns{gap:8px}.hbtn .lbl{color:#fff4dc;letter-spacing:0;white-space:nowrap;pointer-events:none;background:#3a2814c7;border-radius:8px;padding:1px 7px;font:700 11px/1.5 Pretendard,Noto Sans KR,system-ui,sans-serif;position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%)}#hud-top{padding-bottom:18px}#camctl button,#jumpbtn{border:3px solid var(--wood);background:var(--noise), radial-gradient(circle at 35% 30%, #fbf3dc, #d9c79b);color:var(--wood);box-shadow:0 3px #0000004d}#camctl button{justify-content:center;align-items:center;font:800 20px/1 system-ui;display:flex}#jumpbtn{font:800 18px var(--serif), system-ui;letter-spacing:2px;box-shadow:0 5px #3c281473,0 8px 16px #00000040}#jumpbtn:active{box-shadow:0 2px #3c281473}#goal{justify-content:center;align-items:center;gap:10px;display:flex}#goal .gpart{background:var(--wood);color:#f7e9c6;letter-spacing:.5px;border-radius:999px;flex:none;padding:1px 10px;font-family:Pretendard,Noto Sans KR,system-ui,sans-serif;font-size:12px;font-weight:700}#goal .gtext{min-width:0}.modal .card{position:relative}.modal .card>.mx{float:right;border:2px solid var(--wood);width:36px;height:36px;color:var(--wood);z-index:3;background:#fbf3dc;border-radius:50%;justify-content:center;align-items:center;margin:-6px -10px 0 8px;font:800 17px/1 system-ui;display:flex;position:sticky;top:-16px;box-shadow:0 2px #00000040}.modal .card>.mx:hover{background:#f1e2b8}@media (height<=430px){.hbtn .lbl{font-size:10px}}.nbviews{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.nbviews button{color:#5a3d1a;background:#fffaf0;border:2px solid #d6c495;border-radius:999px;flex:auto;padding:4px 8px;font-size:13px;font-weight:700}.nbviews button.on{background:var(--wood);border-color:var(--wood);color:#f7e9c6}.nbpane{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}#nb[data-view=memo] .nbpane{overflow:hidden}.nbpane>textarea{flex:1}.nsec{margin:6px 0 10px}.nsec h4{color:#5a3d1a;border-bottom:2px dotted #d6c495;margin:0 0 6px;padding-bottom:3px;font-size:14px}.nsec h4 small{color:#9a7a4a;font-weight:700}.nitem{background:#fffdf4;border:2px solid #eadcb4;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:5px;padding:6px 9px;font-size:13px;line-height:1.45;display:flex}.nitem b{font-size:14px}.nitem .ny{background:var(--wood);color:#f7e9c6;vertical-align:1px;border-radius:4px;margin-left:6px;padding:0 6px;font-size:11px;display:inline-block}.ng{color:#6a5a40;font-size:12.5px}.mini{border:1px solid var(--accent);color:#5a3d1a;background:#fff6e0;border-radius:8px;flex:none;padding:3px 8px;font-size:12px}.mini:disabled{opacity:.6}.nempty{color:#9a8a6a;padding:4px 2px;font-size:13px}.chips{flex-wrap:wrap;gap:5px;margin:2px 0 8px;display:flex}.chip{color:#5a3d1a;background:#fff6dc;border:2px solid #d6c495;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700}button.chip{cursor:pointer}.chip.sm{border-width:1px;padding:0 7px;font-size:11px}.tq{margin:6px 0;display:block}.tq b{color:#5a3d1a;margin-bottom:3px;font-size:14px;display:block}.tin{box-sizing:border-box;width:100%;font:inherit;-webkit-user-select:text;user-select:text;touch-action:auto;resize:vertical;background:#fffef8;border:2px solid #d3c9a8;border-radius:10px;padding:7px 10px;font-size:14px}textarea.tin{min-height:56px;line-height:1.5}.tline{padding:4px 0;position:relative}.tline:before{content:"";background:#d6c495;border-radius:2px;width:3px;position:absolute;top:6px;bottom:6px;left:66px}.tl{grid-template-columns:56px 22px 1fr;align-items:start;margin-bottom:8px;display:grid}.ty{text-align:right;color:var(--wood);padding-top:2px;font-size:13px;font-weight:800}.tdot{background:var(--seal);width:13px;height:13px;box-shadow:0 0 0 2px var(--wood);z-index:1;border:2px solid #fff;border-radius:50%;margin:4px 0 0 4px;position:relative}.tb{background:#fffdf4;border:2px solid #eadcb4;border-radius:10px;padding:5px 9px;font-size:13px;line-height:1.4}.tb .chip{margin-top:3px;display:inline-block}.essay .lines .lhead{color:#5a3d1a;margin:8px 0 2px;font-size:13px;font-weight:800}.cprog{border:2px solid var(--wood);background:#e6d9b6;border-radius:999px;height:22px;margin-bottom:10px;position:relative;overflow:hidden}.cprog i{background:linear-gradient(#f0c35a,#d18a2a);position:absolute;inset:0 auto 0 0}.cprog span{text-align:center;color:#4a2e10;font-size:12px;font-weight:800;line-height:18px;display:block;position:relative}.cgroup{margin-bottom:10px}.cgroup h4{font-family:var(--serif);color:#5a3d1a;margin:0 0 6px;font-size:15px}.cgroup h4 small{color:#9a7a4a;font-family:Pretendard,Noto Sans KR,system-ui,sans-serif}.cgrid2{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.ctile{text-align:left;border:2px solid var(--wood);background:var(--noise), linear-gradient(#fbf4e0, #eddfba);white-space:normal;color:var(--ink);border-radius:10px;grid-template-rows:auto auto;grid-template-columns:30px 1fr;align-items:center;column-gap:8px;padding:7px 9px;display:grid;box-shadow:0 3px #0003}.ctile:active{transform:translateY(2px);box-shadow:0 1px #0003}.ctile .cm{background:var(--seal);color:#fff1de;border:2px solid var(--wood);border-radius:50%;grid-row:1/3;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex}.ctile .cn{font-family:var(--serif);font-size:13px;font-weight:700;line-height:1.25}.ctile .cy{color:#7a6040;font-size:11px}.ctile.locked{color:#8a806a;box-shadow:none;cursor:default;background:repeating-linear-gradient(45deg,#ddd3bb,#ddd3bb 8px,#d3c8ad 8px 16px);border-style:dashed}.ctile.locked .cm{background:#a09478}.tl{grid-template-columns:80px 22px 1fr}.ty{white-space:nowrap;font-size:12px}.tline:before{left:90px}.nbbody textarea.tin{background:#fffef8;padding:7px 10px;line-height:1.5}@media (height<=520px) and (orientation:landscape){#nb{border-top:0;border-left:4px solid var(--wood);width:58%;min-width:0;height:100%;top:0;bottom:0}#nb.w2,#nb.w3{width:85%}#nb.typing{height:100%}#nb.min{width:160px;height:40px;top:56px;bottom:auto}#nb header{padding:5px 8px}.nbviews button{padding:3px 6px;font-size:12px}.tabs button{padding:3px 9px}}.ctitle{color:#5a3d1a;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.ctitle .btn{padding:5px 12px;font-size:13px}.stitle{border:2px solid var(--wood);background:linear-gradient(#fff3cf,#f3d98f);border-radius:12px;align-items:baseline;gap:10px;margin-bottom:8px;padding:10px 14px;display:flex}.stitle small{color:#7a5a2a;font-weight:700}.stitle b{font-family:var(--serif);color:#5a2d0a;flex:1;font-size:20px}.stitle span{color:#7a5a2a;font-weight:800}.sgrid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:8px;display:grid}.stamp{text-align:center;color:#8a806a;background:#f3ead2;border:2px dashed #c9b88e;border-radius:12px;padding:10px 8px}.stamp .sic{color:#9a8f74;background:#ddd2b6;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto 6px;font-size:26px;font-weight:800;display:flex}.stamp b{font-size:13px;font-family:var(--serif);display:block}.stamp small{margin-top:3px;font-size:11px;line-height:1.35;display:block}.stamp.on{border:2px solid var(--wood);background:var(--noise), linear-gradient(#fffaf0, #f4e6c4);color:var(--ink)}.stamp.on .sic{background:radial-gradient(circle at 35% 30%,#ff8a7a,#c2362a);border:3px solid #fff1de;transform:rotate(-8deg);box-shadow:0 0 0 2px #9a2a1e}.results .stats .btn{padding:4px 10px;font-size:13px}.essay textarea{background:#fffef8!important;padding:10px 12px!important;line-height:1.65!important}.modal .card.essay{max-height:98vh}.modal .card .mbody{padding-bottom:8px}@media (height<=520px){.essay textarea{min-height:120px}}#battle.chat{background:radial-gradient(circle at 50% 0,#c9b3e6,#6f5aa8 55%,#2e2456);gap:6px;padding:8px 12px;overflow:hidden}#battle.chat .vs{align-items:stretch;gap:8px;display:flex}#battle.chat .side{border:3px solid var(--wood);background:var(--noise), linear-gradient(#f8f1de, #efe4c8);border-radius:14px;flex:1;align-items:center;gap:10px;padding:8px 12px;display:flex;position:relative;box-shadow:0 4px 12px #00000059}#battle.chat .side.me{text-align:right;justify-content:flex-end}#battle.chat .side .info{flex:1;min-width:0}#battle.chat .side b{font-family:var(--serif);font-size:16px}#battle.chat .side.foe b{color:#5a2a7a}#battle.chat .rl{color:#7a6548;margin-top:2px;font-size:12px;display:block}#battle.chat .hp{margin-top:4px}#battle.chat .hp i{height:13px;transition:background .3s,transform .3s}#battle.chat .life{justify-content:flex-end;margin-top:3px}#battle.chat .shields{color:#3a5a8a;min-height:18px;font-size:12px;font-weight:700}#battle.chat .shields i{margin-left:2px;font-size:15px;font-style:normal}#battle.chat .vsmark{font:900 20px var(--serif);color:#ffe27a;text-shadow:0 2px #5a2a7a,0 0 12px #ffdc78b3;align-self:center}#battle.chat .av{border:3px solid var(--wood);background:radial-gradient(circle,#fff 30%,#e6dcc4);border-radius:50%;flex:none;justify-content:center;align-items:center;width:66px;height:66px;font-size:32px;display:flex;position:relative;overflow:visible}#battle.chat .foe-av{background:radial-gradient(circle,#e8dcff 20%,#9b86c9)}#battle.chat .av img{object-fit:cover;border-radius:50%;width:100%;height:100%}#battle.chat .log{touch-action:pan-y;scroll-behavior:smooth;flex-direction:column;flex:1;align-self:center;gap:10px;width:min(100%,980px);min-height:0;padding:8px 6px;display:flex;overflow-y:auto}#battle.chat .msg{word-break:keep-all;overflow-wrap:anywhere;border-radius:16px;flex:none;max-width:72%;padding:10px 14px;font-size:16px;line-height:1.55;animation:.25s ease-out msgin;box-shadow:0 2px 6px #00000040}#battle.chat .msg small{opacity:.75;margin-bottom:1px;font-size:11px;font-weight:800;display:block}#battle.chat .msg.foe{color:#f4ecff;background:#3b2a5e;border:2px solid #8c6cc9;border-bottom-left-radius:4px;align-self:flex-start;font-weight:600}#battle.chat .msg.me{color:#3a2a12;border:2px solid var(--wood);background:#fff8e2;border-bottom-right-radius:4px;align-self:flex-end;font-weight:700}#battle.chat .msg.mal{color:#1d3a58;background:#eaf6ff;border:2px solid #7fb2d9;align-self:center;max-width:86%;font-size:15px;font-weight:600}#battle.chat .msg.sys{color:#3a2a12;background:#ffffffeb;border-radius:999px;align-self:center;padding:5px 14px;font-size:14px;font-weight:700}#battle.chat .msg.typing span{letter-spacing:2px;font-weight:900;animation:.6s infinite bob;display:inline-block}#battle.chat .nextrow{text-align:center;margin-top:8px}#battle.chat .handtip{color:#fff;text-shadow:0 1px 3px #0009;justify-content:center;align-self:center;align-items:center;gap:10px;width:min(100%,1100px);padding-bottom:6px;font-size:13px;font-weight:700;display:flex;position:relative}#battle.chat .handtip .clock{color:#fff3b0;min-width:64px;font-size:15px}#battle.chat .handtip .tbar{background:#fff3;border-radius:3px;height:4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}#battle.chat .handtip .tbar i{background:linear-gradient(90deg,#ffd96a,#8fe08f);width:0;height:100%;transition:width .2s linear;display:block}#battle.chat .handtip.hurry .clock{color:#ff8a7a;animation:.5s infinite bob}#battle.chat .handtip.hurry .tbar i{background:linear-gradient(90deg,#ff5a4a,#ffb36a)}#battle.chat .hand{grid-template-columns:repeat(8,minmax(0,1fr));align-self:center;gap:8px;width:min(100%,1100px);max-height:40vh;padding:2px 2px 6px;transition:opacity .2s;overflow-y:auto}#battle.chat .hand.wait{opacity:.55;pointer-events:none}#battle.chat .hand button{text-align:center;word-break:keep-all;overflow-wrap:anywhere;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:104px;padding:8px 6px;display:flex}#battle.chat .hand button em{font-style:normal;font:900 18px var(--serif);color:#8a3a1a;line-height:1}#battle.chat .hand button b{font-size:14px;line-height:1.3}#battle.chat .hand button span{color:#6a5030;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.35;display:-webkit-box;overflow:hidden}#battle.chat .hand button:disabled{opacity:.3}@media (width<=640px){#battle.chat .hand{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}#battle.chat .hand button{min-height:70px;padding:6px 4px}#battle.chat .hand button b{font-size:12px}}@media (height<=520px){#battle.chat .hand{gap:5px;max-height:44vh}#battle.chat .hand button{gap:0;min-height:0;padding:4px 3px}#battle.chat .hand button em{font-size:13px}#battle.chat .hand button b{font-size:11px;line-height:1.25}#battle.chat .hand button span{display:none}#battle.chat .handtip{padding-bottom:4px;font-size:12px}}@keyframes msgin{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}#battle.shake{animation:.45s cubic-bezier(.36,.07,.19,.97) bshake}#battle.shake-s{animation:.35s bshake-s}@keyframes bshake{10%,90%{transform:translate(-2px,1px)}20%,80%{transform:translate(5px,-2px)}30%,50%,70%{transform:translate(-8px,3px)}40%,60%{transform:translate(8px,-3px)}}@keyframes bshake-s{25%{transform:translate(-4px)}75%{transform:translate(4px)}}#battle .hitfx{animation:.6s hitfx}@keyframes hitfx{0%{filter:none;transform:scale(1)}15%{filter:brightness(1.8)sepia()hue-rotate(-50deg)saturate(5);transform:scale(.86)rotate(-8deg)}40%{transform:scale(1.06)rotate(5deg)}to{filter:none;transform:none}}#battle .healfx{animation:.7s healfx}@keyframes healfx{30%{filter:brightness(1.4)drop-shadow(0 0 10px #8cff8c);transform:scale(1.12)}to{filter:none;transform:none}}#battle .hurtfx{animation:.6s hurtfx}@keyframes hurtfx{20%{filter:brightness(1.5)sepia()hue-rotate(-50deg)saturate(4);transform:translate(-6px)}50%{transform:translate(6px)}to{filter:none;transform:none}}#battle .blockfx{animation:.6s blockfx}@keyframes blockfx{20%{transform:scale(1.05);box-shadow:0 0 0 6px #8fd0ff,0 0 24px #8fd0ff}to{box-shadow:none;transform:none}}#battle .fnum{font:900 24px var(--serif), system-ui;pointer-events:none;text-shadow:0 2px #fff,0 0 8px #fff;z-index:3;animation:.9s ease-out forwards fnum;position:absolute;top:-6px;left:50%;transform:translate(-50%)}#battle .fnum.dmg{color:#d0281e}#battle .fnum.dmg.big{font-size:34px}#battle .fnum.heal{color:#1e9a3a}@keyframes fnum{0%{opacity:0;transform:translate(-50%,6px)scale(.6)}20%{opacity:1;transform:translate(-50%,-14px)scale(1.2)}to{opacity:0;transform:translate(-50%,-46px)scale(1)}}#battle .zap{font:900 clamp(28px, 6vw, 52px) var(--serif);color:#fff3b0;text-shadow:0 3px #b3261e,0 0 18px #ffb347,0 0 40px #ff6a3a;pointer-events:none;z-index:5;white-space:nowrap;animation:.9s ease-out forwards zap;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}@keyframes zap{0%{opacity:0;transform:translate(-50%,-50%)scale(2.2)rotate(-6deg)}20%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-4deg)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)scale(1.05)rotate(-4deg)}}#battle .shieldfx{pointer-events:none;z-index:4;align-items:center;gap:4px;animation:.9s ease-out forwards shieldfx;display:flex;position:absolute;top:50%;right:70px;transform:translateY(-50%)}#battle .shieldfx span{filter:drop-shadow(0 0 10px #8fd0ff)drop-shadow(0 0 20px #4aa3e8);font-size:54px}#battle .shieldfx b{font:900 18px var(--serif);color:#1e5a9a;text-shadow:0 0 6px #fff,0 0 10px #fff}@keyframes shieldfx{0%{opacity:0;transform:translateY(-50%)scale(2)rotate(-20deg)}25%{opacity:1;transform:translateY(-50%)scale(1)rotate(0)}35%{transform:translateY(-50%)scale(1.15)}80%{opacity:1}to{opacity:0;transform:translateY(-60%)scale(.9)}}@media (height<=520px){#battle.chat .av{width:46px;height:46px;font-size:24px}#battle.chat .side{padding:4px 8px}#battle.chat .side b{font-size:13px}#battle.chat .msg{padding:6px 10px;font-size:13px}}.origbox{background:var(--noise), linear-gradient(#fbf6e6, #f1e6c8);border:2px solid #c9b07a;border-radius:10px;margin-bottom:8px;padding:10px 14px;box-shadow:inset 0 0 0 3px #fff6}.origbox .olab{align-items:baseline;gap:8px;margin:2px 0 4px;display:flex}.origbox .olab b{background:var(--wood);color:#f7e9c6;border-radius:4px;padding:0 8px;font-size:12px}.origbox .olab small{color:#7a6040;font-size:12px}.origbox .otext{color:#2a1e10;white-space:pre-wrap;letter-spacing:.5px;word-break:normal;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;font-family:Noto Serif KR,Nanum Myeongjo,Batang,serif;font-size:17px;line-height:1.8}.origbox .ttext{color:#4a3a22;white-space:pre-wrap;margin-bottom:2px;font-size:14px;line-height:1.6}.srcbox .olab b{color:#5a3d1a;font-size:12px}.origbox .otext{font-size:16px;line-height:1.75}.origbox .orig2{margin-top:6px}.origbox .orig2 summary{cursor:pointer;color:#7a6040;font-size:12px;font-weight:700}.origbox .ztext{color:#4a3a22;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere;margin-top:4px;font-family:Noto Serif KR,Nanum Myeongjo,Batang,serif;font-size:14px;line-height:1.7}#iris{z-index:52;pointer-events:auto;display:none;position:fixed;inset:0;overflow:hidden}#iris .hole{border-radius:50%;width:260vmax;height:260vmax;transition:width .48s cubic-bezier(.6,0,.4,1),height .48s cubic-bezier(.6,0,.4,1),box-shadow .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 200vmax #142033,inset 0 0 0 6px #ffd67800}#iris .hole.shut{width:0;height:0;box-shadow:0 0 0 200vmax #142033,0 0 #ffd678e6}#iris .ilab{text-align:center;color:#fff3d6;opacity:0;white-space:nowrap;transition:opacity .25s,transform .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.9)}#iris .ilab.on{opacity:1;transform:translate(-50%,-50%)scale(1)}#iris .ilab b{font:800 clamp(26px, 5vw, 40px) var(--serif);letter-spacing:4px;text-shadow:0 2px 10px #00000080;display:block}#iris .ilab b:before,#iris .ilab b:after{content:"";vertical-align:middle;background:#ffd78a;width:34px;height:2px;margin:0 14px;display:inline-block}#iris .ilab small{color:#ffd78a;letter-spacing:2px;margin-top:6px;font-size:14px;display:block}html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;height:100%;position:fixed;inset:0}input,textarea,select,.essay textarea,.nbbody textarea,.tin{font-size:16px!important}button,a,.hbtn,#act,#jumpbtn{touch-action:manipulation}@keyframes tin{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}#title .head h1{animation:1.1s ease-out both tin}#title .head p{animation:1.1s ease-out .35s both tin}#title .pick,#title .menu{animation:.9s ease-out .7s both tin}@keyframes tpan{0%{transform:perspective(1400px)translate(7%)rotateY(-3deg)scale(1.24)}50%{transform:perspective(1400px)translate(0)rotateY(0)scale(1.18)}to{transform:perspective(1400px)translate(-7%)rotateY(3deg)scale(1.24)}}#title .tbg{transform-origin:50% 55%;animation:40s ease-in-out infinite alternate tpan}#battle .fxl{pointer-events:none;z-index:20;position:fixed;inset:0;overflow:hidden}#battle .fx-flash{mix-blend-mode:screen;position:absolute;inset:0}#battle .fx-vig{background:radial-gradient(#f000 45%,#c8140a8c);position:absolute;inset:0}#battle .fx-ring{border:10px solid #ffe08a;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 18px}#battle .fx-shard{border-radius:2px;position:absolute;box-shadow:0 0 6px #fff0c8cc}#battle .fx-burst{filter:drop-shadow(0 4px #3c140080)drop-shadow(0 0 10px #ffaa3cb3);justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:absolute}#battle .fx-burst.big{width:132px;height:132px}#battle .fx-burst:before{content:"";clip-path:polygon(100% 50%,88.6% 60.4%,93.3% 75%,74% 74%,75% 93.3%,60.4% 88.6%,50% 100%,41.2% 82.8%,25% 93.3%,21.7% 78.3%,6.7% 75%,17.2% 58.8%,0% 50%,11.4% 39.6%,6.7% 25%,26% 26%,25% 6.7%,39.6% 11.4%,50% 0%,58.8% 17.2%,75% 6.7%,78.3% 21.7%,93.3% 25%,82.8% 41.2%);background:radial-gradient(circle,#fff6b0 0%,#ffd23a 40%,#f0761c 75%,#c2370f 100%);position:absolute;inset:0}#battle .fx-burst.hurt:before{background:radial-gradient(circle,#ffd0c8 0%,#ff5a4a 45%,#b3160e 100%)}#battle .fx-burst.heal:before{background:radial-gradient(circle,#e8ffe0 0%,#6fe06a 50%,#1e8a3a 100%)}#battle .fx-burst b{font:900 40px/1 var(--serif), system-ui;color:#fff;-webkit-text-stroke:2px #4a1205;paint-order:stroke fill;text-shadow:0 3px #4a1205;position:relative}#battle .fx-burst.big b{font-size:56px}#battle .fx-banner{font:900 clamp(30px, 7vw, 60px) var(--serif);color:#fff3b0;text-shadow:0 4px #b3261e,0 0 20px #ffb347,0 0 44px #ff6a3a;white-space:nowrap;-webkit-text-stroke:1px #7a1a0a;position:absolute;top:40%;left:50%}#battle .fx-banner.win{color:#fff;text-shadow:0 4px #5a2a7a,0 0 22px #c9b3ff,0 0 48px #ffd36a;-webkit-text-stroke:1px #3b2a5e}#battle .fx-pip{border-radius:8px;position:absolute}#battle .fx-pip.hp{border:2px solid var(--wood);background:linear-gradient(#ef6a5e,#b3261e)}#battle .fx-pip.heart{color:#e0473c;justify-content:center;align-items:center;font-size:22px;display:flex}#battle .fx-card{text-align:center;background:var(--noise), linear-gradient(#fbf4e0, #e6d3a3);color:#3a2a12;transform-origin:50%;will-change:transform;border:4px solid #c9962e;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px;display:flex;position:absolute;box-shadow:inset 0 0 0 2px #5a3d1a,0 10px 24px #00000073}#battle .fx-card i{font-size:30px;font-style:normal;line-height:1}#battle .fx-card b{font:800 14px/1.25 var(--serif);word-break:keep-all}#battle .fx-card small{color:#7a6040;font-size:12px;font-weight:700}#battle .fx-card.charge{animation:.26s ease-in-out infinite alternate fxcharge;box-shadow:inset 0 0 0 2px #5a3d1a,0 0 22px 6px #ffd36a,0 0 50px 14px #ffa03c99}#battle .fx-card.hit{filter:brightness(2.4)}@keyframes fxcharge{0%{border-color:#c9962e}to{border-color:#fff3b0}}#battle .fx-shield{flex-direction:column;align-items:center;display:flex;position:absolute}#battle .fx-shield span{filter:drop-shadow(0 0 12px #8fd0ff)drop-shadow(0 0 26px #4aa3e8);font-size:70px;line-height:1}#battle .fx-shield b{font:900 18px var(--serif);color:#1e5a9a;text-shadow:0 0 6px #fff,0 0 10px #fff}#battle.chat .av{will-change:transform}@media (height>=521px){#battle.chat .av{width:84px;height:84px;font-size:40px}}#battle.chat{outline:60px solid #3f3270}#battle .fx-lines{mix-blend-mode:screen;position:absolute;inset:0}#battle .fx-dim{background:radial-gradient(at 50% 52%,#0a051940,#0a0519b8);position:absolute;inset:0}#battle .fx-spark{transform-origin:50% 0;filter:drop-shadow(0 0 4px #ffd36a);border-radius:2px;width:3px;position:absolute}#battle .fx-ember{border-radius:50%;position:absolute}#battle .fx-crack{filter:drop-shadow(0 0 3px #fffc);position:absolute;top:0;left:0}#battle .fx-conf{border-radius:2px;width:8px;height:12px;position:absolute}#battle .fx-card.ghost{box-shadow:none;filter:blur(1px)brightness(1.4);border-color:#ffd36a}#battle .fx-card.big.charge{box-shadow:inset 0 0 0 2px #5a3d1a,0 0 30px 10px #ffd36a,0 0 70px 24px #ff7828b3}#title .fstip{top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));z-index:3;color:#fff;background:#2e2456c7;border:2px solid #ffffffe6;border-radius:999px;padding:6px 12px;font:700 13px system-ui,sans-serif;position:absolute;box-shadow:0 3px 10px #0000004d}.modal .gtip{margin:4px 0 8px;font-size:14px;line-height:1.55}#hud-top{left:calc(10px + env(safe-area-inset-left));right:calc(10px + env(safe-area-inset-right))}#camctl{left:calc(14px + env(safe-area-inset-left))}#jumpbtn{left:calc(22px + env(safe-area-inset-left))}body.touchjoy #jumpbtn{left:auto;right:calc(24px + 92px + 16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:72px;height:72px;font-size:16px}#goal{text-align:left;max-width:60%;box-shadow:0 0 0 2px var(--accent) inset, 0 6px 16px #00000059;border-width:3px;justify-content:flex-start;gap:10px;padding:6px 18px 7px 12px;position:relative}#goal .gicon{filter:drop-shadow(0 2px #00000040);flex:none;font-size:24px;line-height:1}#goal .gbody{flex-direction:column;gap:1px;min-width:0;display:flex}#goal .gpart{color:#fff6e0;background:#b3261e;align-self:flex-start;padding:0 8px;font-size:11px;line-height:17px}#goal .gtext{color:#2a1a08;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;font-size:17px;font-weight:800;line-height:1.3}#goal.gnew{animation:3.2s ease-out gnew}@keyframes gnew{0%{transform:scale(.9)}8%{box-shadow:0 0 0 2px var(--accent) inset, 0 0 0 6px #ffd65ae6, 0 0 28px 8px #ffc83ccc;transform:scale(1.08)}16%{transform:scale(1)}30%,60%{box-shadow:0 0 0 2px var(--accent) inset, 0 0 0 4px #ffd65ab3, 0 0 20px 4px #ffc83c8c}45%,75%{box-shadow:0 0 0 2px var(--accent) inset, 0 6px 16px #00000059}to{box-shadow:0 0 0 2px var(--accent) inset, 0 6px 16px #00000059}}#goal .gbadge{color:#5a2d0a;background:linear-gradient(#ffd96a,#f5a93a);border:2px solid #fff3c8;border-radius:999px;padding:2px 9px;font:900 12px system-ui,sans-serif;animation:2.6s ease-out forwards gbadge;position:absolute;top:-4px;right:-8px;box-shadow:0 3px 8px #0000004d}@keyframes gbadge{0%{opacity:0;transform:scale(.4)rotate(-12deg)}12%{opacity:1;transform:scale(1.15)rotate(4deg)}20%{transform:scale(1)rotate(0)}85%{opacity:1}to{opacity:0;transform:translateY(-6px)}}@media (height<=520px){#goal{padding:4px 14px 5px 10px}#goal .gicon{font-size:20px}#goal .gtext{font-size:15px}#goal .gpart{font-size:10px;line-height:15px}}.modal .scrollcue{pointer-events:none;justify-content:center;height:0;display:flex;position:sticky;bottom:0;overflow:visible}.modal .scrollcue button{color:#5a2d0a;opacity:0;pointer-events:none;white-space:nowrap;background:linear-gradient(#ffd96a,#f5a93a);border:2px solid #fff3c8;border-radius:999px;padding:7px 16px;font:800 14px system-ui,sans-serif;transition:opacity .25s,transform .25s;position:absolute;bottom:64px;transform:translateY(8px);box-shadow:0 4px 12px #00000059}.modal .scrollcue.on button{opacity:1;pointer-events:auto;animation:1.1s ease-in-out infinite cuebob;transform:none}@keyframes cuebob{50%{transform:translateY(4px)}}@media (height<=520px){.modal canvas.pz{width:auto;max-width:100%;max-height:52vh;margin:0 auto;display:block}}#battle .hand button.helpglow{border-color:#f5a93a;animation:1.2s ease-in-out infinite helpglow;box-shadow:0 0 0 2px #ffd96a,0 0 14px 3px #ffc83cd9}#battle .hand button.helpglow:disabled{box-shadow:none;animation:none}#battle .hand button.helpdim:not(:disabled){opacity:.45;filter:grayscale(.4)}@keyframes helpglow{50%{transform:translateY(-2px);box-shadow:0 0 0 3px #fff3b0,0 0 22px 7px #ffbe32f2}}#dlg .box{overscroll-behavior:contain;touch-action:pan-y;overflow-y:auto}body.talking #camctl,body.talking #joy-zone,body.talking #joy-base{display:none!important}#dlg .choices button{padding:.5em .8em;font-size:.9em}@media (height<=520px){#dlg .choices{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:5px;margin-top:6px;display:grid}#dlg .box{padding:10px 16px 12px}}.modal.essay .elab,.essay .elab{color:#5a3d1a;margin:8px 0 3px;font-size:13px;font-weight:800}.essay textarea.srcta{background:#f6f1e2;min-height:64px}.essay .lines{overflow:visible;max-height:none!important}.essay textarea.srcta,.essay textarea.mineta,.essay textarea.notea{resize:none;overflow:hidden}.essay textarea.notea,.essay textarea.srcta{min-height:70px!important}.essay textarea.mineta{min-height:100px!important}.essay .lines .fullsrc{white-space:pre-wrap;color:#3a2a12;background:#fffaf0;border:1px dashed #d3b97a;border-radius:8px;margin:2px 0 6px;padding:8px 10px;font-size:13px;line-height:1.6;display:block}.essay .lines .fullsrc[hidden]{display:none}.essay .lines button.vbtn{background:#eef6ff;border-color:#7fa9d4}.essay textarea.mineta{min-height:230px!important;font-size:17px!important}@media (height<=520px){.essay textarea.mineta{min-height:150px!important}}#act{word-break:keep-all;padding:6px 8px;line-height:1.15;display:none;overflow:hidden;white-space:normal!important}#malbtn .malpoint{white-space:nowrap;color:#fff;pointer-events:none;background:#b3261e;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:800;animation:.8s ease-in-out infinite malpoint;position:absolute;top:calc(100% + 26px);left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000004d}#malbtn .malpoint:after{content:"";border:7px solid #0000;border-bottom-color:#b3261e;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}@keyframes malpoint{50%{transform:translate(-50%,-6px)}}.modal .btn.must{border-color:#f5a93a;animation:1.1s ease-in-out infinite mustglow}@keyframes mustglow{50%{transform:scale(1.05);box-shadow:0 0 0 3px #ffd96a,0 0 16px 4px #ffbe3ccc}}.modal .intro.must{background:#fff6dc;border-color:#f5a93a;font-weight:700}#title.intro:after{content:"";z-index:5;pointer-events:none;background:#0b1424;animation:1.1s ease-out forwards tintro;position:absolute;inset:0}@keyframes tintro{to{opacity:0;visibility:hidden}}#title.intro .tbg{animation:2.4s cubic-bezier(.2,.7,.2,1) both tzoomin}@keyframes tzoomin{0%{filter:brightness(.6)saturate(.8);transform:scale(1.18)}to{filter:none;transform:scale(1)}}#title h1.tlogo{filter:drop-shadow(0 4px #8a4b16)drop-shadow(0 8px 18px #3c19008c);-webkit-text-stroke:0;justify-content:center;align-items:center;gap:.02em;display:flex;position:relative}#title h1.tlogo span{background:linear-gradient(#fffdf2 10%,#ffe7a3 50%,#f2b04e 85%);color:#0000;-webkit-background-clip:text;background-clip:text;animation:.7s cubic-bezier(.2,1.8,.4,1) both tletter;display:inline-block}#title h1.tlogo .sp{width:.35em}@keyframes tletter{0%{opacity:0;transform:translateY(-60px)scale(.4)rotate(-12deg)}70%{opacity:1}to{opacity:1;transform:none}}#title h1.tlogo:after{content:"";mix-blend-mode:overlay;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffffd9 50%,#0000 60%) 0 0/250% 100%;animation:4.5s ease-in-out 2s infinite tshine;position:absolute;inset:-10% -5%}@keyframes tshine{0%,60%{background-position:150% 0}to{background-position:-100% 0}}#title .head>p{animation:.8s 1s both tfadeup}#title .ttag{font:800 clamp(14px, 2.4vw, 20px) var(--serif);color:#fff;letter-spacing:1px;text-shadow:0 2px 4px #0006;background:linear-gradient(90deg,#b3261e00,#b3261ed9 15% 85%,#b3261e00);border-radius:999px;margin-top:6px;padding:5px 18px;animation:.8s 1.25s both tfadeup}#title .tchips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}#title .tchips span{color:#5a3d1a;background:#fffbeee6;border:2px solid #fff;border-radius:999px;align-items:center;gap:5px;padding:3px 12px 3px 8px;font-size:clamp(12px,1.8vw,14px);font-weight:800;animation:.5s cubic-bezier(.2,1.6,.4,1) both tpop;display:inline-flex;box-shadow:0 3px #a06e3259}#title .tchips b{font-size:1.15em}@keyframes tfadeup{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes tpop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}#title.intro .pick{animation:.8s 1.8s both tfadeup}#title.intro .menu{animation:.8s 2s both tfadeup}#title .pc{animation:2.6s ease-in-out infinite tbob}#title .pc:nth-child(2){animation-delay:-1.3s}#title .pc.on{box-shadow:0 0 0 4px #ffd96a,0 0 26px 6px #ffd25abf}@keyframes tbob{50%{transform:translateY(-6px)}}#title .menu .btn:first-child,#title .menu .row2 .btn:first-child{font-weight:900;animation:1.8s ease-in-out 2.6s infinite tbreath;position:relative;overflow:hidden}#title .menu .btn:first-child:after,#title .menu .row2 .btn:first-child:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffffbf 50%,#0000 65%) 0 0/250% 100%;animation:3s ease-in-out 3s infinite tshine;position:absolute;inset:0}@keyframes tbreath{50%{transform:scale(1.06);box-shadow:0 5px #a06e3273,0 0 22px 6px #ffc850b3}}@media (height<=520px){#title .tchips{display:none}#title .ttag{margin-top:2px;padding:2px 14px}}@media (prefers-reduced-motion:reduce){#title *,#title:after{animation:none!important}#title.intro:after{display:none!important}}.tour{z-index:80;position:fixed;inset:0}.tour .hole{pointer-events:none;border-radius:14px;transition:all .35s cubic-bezier(.3,1.3,.5,1);animation:1.4s ease-in-out infinite tourpulse;position:fixed;box-shadow:0 0 0 9999px #0a0f1e9e,0 0 0 3px #ffd96a,0 0 20px 6px #ffd25ab3}@keyframes tourpulse{50%{box-shadow:0 0 0 9999px #0a0f1e9e,0 0 0 5px #ffd96a,0 0 30px 10px #ffd25ad9}}.tour .tip{background:var(--noise,none), linear-gradient(#fffaf0, #f3e3bd);border:3px solid #8a5a2a;border-radius:14px;padding:10px 14px 12px;transition:top .3s,left .3s;position:fixed;box-shadow:0 8px 24px #0006}.tour .tip small{color:#b3261e;font-size:12px;font-weight:800}.tour .tip b{font:800 18px var(--serif,serif);color:#3a2410;margin:2px 0 4px;display:block}.tour .tip p{color:#4a3520;word-break:keep-all;margin:0 0 10px;font-size:14px;line-height:1.5}.tour .tip .tb{justify-content:flex-end;gap:8px;display:flex}.tour .tip .btn{padding:6px 14px;font-size:14px}@media (orientation:portrait) and (width<=760px){#hud-top{flex-wrap:wrap;gap:6px;padding-bottom:0}#hud-btns{flex:100%;order:-1;justify-content:space-between;gap:2px;padding-bottom:16px}.hbtn{width:40px;height:40px}.hbtn .lbl{padding:0 5px;font-size:10px}#goal{flex:100%;gap:8px;max-width:100%;padding:5px 14px 6px 10px;font-size:13px}#goal .gpart{padding:1px 7px;font-size:10.5px}#camctl{top:calc(150px + env(safe-area-inset-top))}#camctl button{width:40px;height:40px}#dlg{width:96vw}#battle.chat .vs{gap:6px}#battle.chat .side{gap:6px;min-width:0;padding:6px 8px}#battle.chat .av{width:46px;height:46px}#battle.chat .side b{font-size:13px}#battle.chat .vsmark{font-size:15px}#battle.chat .msg{max-width:86%;font-size:15px}#title .tchips span{padding:2px 9px 2px 6px;font-size:11px}}#cutscene img.csbg{display:none}@media (orientation:portrait){#cutscene img.csbg{object-fit:cover;filter:blur(18px)brightness(.65);animation:none;display:block;transform:scale(1.15)}#cutscene img:not(.csbg),#cutscene video{object-fit:contain!important}#cutscene .cap{font-size:15px;top:8vh}}body.kbopen .modal{top:var(--vvtop,0px);height:var(--vvh,100vh);align-items:flex-start;padding:4px;bottom:auto}body.kbopen .modal .card,body.kbopen .modal .card.essay{max-height:calc(var(--vvh,100vh) - 8px)!important}body.kbopen .essay textarea.mineta,body.kbopen .essay textarea.srcta{max-height:40vh;min-height:90px!important;overflow-y:auto!important}body.kbopen .gate{top:var(--vvtop,0px);height:var(--vvh,100vh);align-items:flex-start;padding:4px;bottom:auto;overflow:auto}
