@font-face{font-family:Gowun Batang;font-style:normal;font-display:swap;font-weight:400;src:url(./gowun-batang-korean-400-normal-B01U8-a5.woff2) format("woff2"),url(./gowun-batang-korean-400-normal-CXDiTy1F.woff) format("woff")}@font-face{font-family:Gowun Batang;font-style:normal;font-display:swap;font-weight:700;src:url(./gowun-batang-korean-700-normal-CH9Iz3IW.woff2) format("woff2"),url(./gowun-batang-korean-700-normal-B4_fsFB4.woff) format("woff")}@font-face{font-family:Gowun Batang;font-style:normal;font-display:swap;font-weight:400;src:url(./gowun-batang-latin-400-normal-DhJlxzQq.woff2) format("woff2"),url(./gowun-batang-latin-400-normal-HlPzkeyL.woff) format("woff")}@font-face{font-family:Gowun Batang;font-style:normal;font-display:swap;font-weight:700;src:url(./gowun-batang-latin-700-normal-ii_3u4DV.woff2) format("woff2"),url(./gowun-batang-latin-700-normal-COBS19rt.woff) format("woff")}@font-face{font-family:Gowun Dodum;font-style:normal;font-display:swap;font-weight:400;src:url(./gowun-dodum-korean-400-normal-kyfibGs5.woff2) format("woff2"),url(./gowun-dodum-korean-400-normal-BH5HIN7-.woff) format("woff")}@font-face{font-family:Gowun Dodum;font-style:normal;font-display:swap;font-weight:400;src:url(./gowun-dodum-latin-400-normal-DzfYs89k.woff2) format("woff2"),url(./gowun-dodum-latin-400-normal-B2g_5z5f.woff) format("woff")}:root{--paper: #efe7d4;--paper-2: #e6dcc4;--ink: #2a2521;--ink-soft: #5b5249;--pencil: #8a7f73;--seal: #b3402a;--sea: #3d5a71;--gold: #b88a3a;--hud: #f3eee2;--serif: "Gowun Batang", "Nanum Myeongjo", serif;--sans: "Gowun Dodum", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:#0b0f1d;overflow:hidden;overscroll-behavior:none}body{font-family:var(--serif);color:var(--ink);user-select:none;-webkit-user-select:none;touch-action:none}#app{position:fixed;inset:0}#world{position:absolute;inset:0;display:block}#ui{position:absolute;inset:0;pointer-events:none}#ui>*{pointer-events:auto}#ui>.hud,#ui>.toast,#ui>.fade:not(.on){pointer-events:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}#boot{position:absolute;inset:0;display:grid;place-content:center;gap:22px;background:#0e1326;transition:opacity .8s;z-index:50}#boot.gone{opacity:0;pointer-events:none}.boot-title{font-family:var(--serif);font-weight:700;font-size:44px;color:#e9e2d0;letter-spacing:.3em;text-align:center;padding-left:.3em}.boot-bar{width:160px;height:2px;background:#e9e2d026;margin:0 auto}.boot-bar i{display:block;height:100%;width:0;background:#e9e2d0;transition:width .2s}.hud{position:absolute;inset:0;pointer-events:none;font-family:var(--sans);color:var(--hud);text-shadow:0 1px 2px rgba(0,0,0,.45),0 0 10px rgba(0,0,0,.2)}.hud-tl{position:absolute;left:calc(18px + var(--safe-l));top:calc(14px + var(--safe-t));line-height:1.45}.hud-tl .clock{font-size:26px;letter-spacing:.02em}.hud-tl .sub{font-size:13.5px;opacity:.88}.hud-tl .sub b{font-weight:400;color:#ffd9a8}.hud-tr{position:absolute;right:calc(18px + var(--safe-r));top:calc(14px + var(--safe-t));text-align:right}.hud-tr .money{font-size:20px}.hud-tr .place{font-size:13px;opacity:.8;margin-top:2px;font-family:var(--serif)}.hud-tr .menu{pointer-events:auto;margin-top:8px;font-size:13px;opacity:.75;padding:6px 0 6px 12px}.hud-tr .menu:hover{opacity:1}.hud-hint{position:absolute;left:50%;bottom:calc(22px + var(--safe-b));transform:translate(-50%);font-size:13.5px;opacity:.8;white-space:nowrap;transition:opacity .4s}.hud-bl{position:absolute;left:calc(14px + var(--safe-l));bottom:calc(14px + var(--safe-b));pointer-events:auto}.hud-br{position:absolute;right:calc(14px + var(--safe-r));bottom:calc(14px + var(--safe-b));display:flex;gap:8px;pointer-events:auto}.tab{font-family:var(--serif);font-size:14.5px;color:var(--ink);background:var(--paper);padding:9px 14px 8px;border-radius:3px 3px 2px 2px;box-shadow:0 2px #0000002e,0 6px 18px #00000040;position:relative;transition:transform .15s;min-height:40px;text-shadow:none;display:inline-flex;align-items:center;gap:6px}.tab:hover{transform:translateY(-2px)}.tab:active{transform:translateY(1px)}.tab small{font-family:var(--sans);color:var(--ink-soft);font-size:12px}.tab.warn small{color:var(--seal)}.tab.pulse:after{content:"";position:absolute;right:-3px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--seal)}.bait-btn{display:flex;align-items:center;gap:8px;background:#0c101e59;border:1px solid rgba(243,238,226,.25);border-radius:26px;padding:4px 14px 4px 4px;color:var(--hud);font-family:var(--sans);font-size:13.5px;text-shadow:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.bait-btn img{width:36px;height:36px;object-fit:contain;border-radius:50%;background:var(--paper);padding:3px}.bait-btn .n{opacity:.7}.toast{position:absolute;left:50%;top:calc(64px + var(--safe-t));transform:translate(-50%,-8px);font-family:var(--serif);color:var(--hud);font-size:16px;opacity:0;transition:opacity .4s,transform .4s;text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none;white-space:nowrap}.toast.on{opacity:1;transform:translate(-50%)}.veil{position:absolute;inset:0;background:#06091473;display:grid;place-items:center;animation:fadein .25s ease-out;padding:16px}@keyframes fadein{0%{opacity:0}}.paper{position:relative;background-color:var(--paper);color:var(--ink);background-image:var(--paper-img, none);background-size:420px;box-shadow:0 1px #ffffff80 inset,0 18px 50px #00000073,0 2px 6px #00000040;border-radius:2px;animation:rise .32s cubic-bezier(.2,.8,.25,1)}@keyframes rise{0%{transform:translateY(14px) rotate(-.4deg);opacity:0}}.panel{width:min(860px,100%);max-height:min(640px,calc(100vh - 32px),calc(100dvh - 32px));display:flex;flex-direction:column}.panel-head{display:flex;align-items:baseline;gap:14px;padding:22px 28px 12px;border-bottom:1px solid rgba(42,37,33,.18)}.panel-head h2{margin:0;font-size:24px;font-weight:700;letter-spacing:.02em}.panel-head .aside{color:var(--ink-soft);font-size:14px}.panel-head .x{margin-left:auto;font-size:14px;color:var(--ink-soft);padding:6px 2px 6px 12px}.panel-head .x:hover{color:var(--ink)}.panel-body{overflow:auto;padding:18px 28px 24px;overscroll-behavior:contain;touch-action:pan-y}.panel-body::-webkit-scrollbar{width:8px}.panel-body::-webkit-scrollbar-thumb{background:#2a252133;border-radius:4px}.tabs{display:flex;gap:18px;padding:0 28px;border-bottom:1px solid rgba(42,37,33,.18)}.tabs button{padding:10px 0 9px;font-size:15px;color:var(--ink-soft);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.on{color:var(--ink);border-color:var(--ink)}.ink-btn{border:1.5px solid var(--ink);padding:8px 16px;border-radius:2px;font-size:14.5px;min-height:40px;transition:background .15s}.ink-btn:hover{background:#b88a3a26}.ink-btn:disabled{opacity:.35;cursor:default;background:none}.ink-btn.primary{background:var(--ink);color:var(--paper)}.ink-btn.primary:hover{background:#3c352f}.ink-btn.small{padding:5px 11px;min-height:32px;font-size:13.5px}.link-btn{color:var(--sea);text-decoration:underline;text-underline-offset:3px;font-size:14px}.muted{color:var(--ink-soft)}.num{font-family:var(--sans)}.seal{display:inline-block;color:var(--seal);border:2px solid var(--seal);padding:3px 6px 2px;font-weight:700;font-size:14px;letter-spacing:.08em;transform:rotate(-6deg);border-radius:3px;opacity:.88;mix-blend-mode:multiply}.card{width:min(560px,100%);padding:26px 30px 24px;text-align:center}.card .plate{width:100%;height:230px;object-fit:contain;margin:4px 0 6px;filter:drop-shadow(0 6px 10px rgba(60,40,20,.18))}.card h3{margin:0;font-size:28px;font-weight:700}.card .sci{font-style:italic;color:var(--ink-soft);font-size:13.5px;margin-top:2px;font-family:Georgia,serif}.card .meas{font-family:var(--sans);font-size:17px;margin-top:12px}.card .note{color:var(--ink-soft);font-size:14.5px;line-height:1.7;margin:12px auto 0;max-width:440px}.card .stamps{position:absolute;right:26px;top:26px;display:flex;flex-direction:column;gap:10px;align-items:flex-end}.card .row{display:flex;justify-content:center;gap:10px;margin-top:20px;flex-wrap:wrap}.card .stamp-in{animation:stamp .35s cubic-bezier(.3,1.6,.5,1) both .35s}@keyframes stamp{0%{transform:scale(2.2) rotate(-14deg);opacity:0}to{transform:scale(1) rotate(-6deg);opacity:.88}}.dlg-wrap{position:absolute;inset:0;display:flex;justify-content:center;align-items:flex-end;padding:0 16px calc(18px + var(--safe-b));background:linear-gradient(transparent 55%,#06091480);animation:fadein .2s;cursor:pointer}.dlg{width:min(820px,100%);display:flex;gap:0;align-items:flex-end;position:relative;cursor:pointer}.dlg .face{width:170px;height:170px;flex:none;margin-right:-22px;margin-bottom:-4px;position:relative;z-index:2;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.35))}.dlg .box{flex:1;min-height:124px;padding:18px 26px 18px 40px}.dlg .who{color:var(--seal);font-weight:700;font-size:15px;margin-bottom:6px}.dlg .say{font-size:17px;line-height:1.7;min-height:58px}.dlg .more{position:absolute;right:18px;bottom:12px;font-size:12px;color:var(--pencil);animation:blink 1.2s infinite}@keyframes blink{50%{opacity:.2}}.dlg.narration .box{padding-left:26px;text-align:center;background:none;box-shadow:none;color:var(--hud)}.dlg.narration .say{font-size:19px;text-shadow:0 1px 4px rgba(0,0,0,.7)}.grid-fish{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:10px}.fcell{background:#ffffff40;border:1px solid rgba(42,37,33,.12);border-radius:2px;padding:8px 6px 7px;text-align:center;font-size:13.5px;min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;transition:background .15s}.fcell:hover{background:#ffffff80}.fcell img{width:100%;height:60px;object-fit:contain}.fcell.unknown img{filter:brightness(0) opacity(.18)}.fcell.unknown{color:var(--pencil)}.fcell.sel{outline:2px solid var(--ink);outline-offset:-2px}.detail{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.detail img{width:100%;max-height:240px;object-fit:contain}.detail h3{margin:0 0 2px;font-size:24px}.detail .note{line-height:1.75;font-size:15px}.detail .hint{margin-top:14px;padding-top:12px;border-top:1px dashed rgba(42,37,33,.25);font-size:14px;color:var(--ink-soft);line-height:1.6}.detail .hint b{color:var(--ink);font-weight:700}.rows{display:flex;flex-direction:column}.rowi{display:flex;align-items:center;gap:14px;padding:10px 2px;border-bottom:1px solid rgba(42,37,33,.1)}.rowi img{width:72px;height:48px;object-fit:contain;flex:none}.rowi .grow{flex:1;min-width:0}.rowi .name{font-size:16px}.rowi .meta{font-size:13px;color:var(--ink-soft);font-family:var(--sans);margin-top:2px}.rowi .price{font-family:var(--sans);font-size:15px;min-width:84px;text-align:right}.rowi.dim{opacity:.45}.shop{display:grid;grid-template-columns:210px 1fr;gap:0;min-height:0;flex:1}.shop .who-col{padding:16px 0 16px 22px;border-right:1px solid rgba(42,37,33,.12);display:flex;flex-direction:column;gap:10px}.shop .who-col img{width:100%;aspect-ratio:1;object-fit:contain}.shop .who-col .line{font-size:14px;line-height:1.65;color:var(--ink-soft);padding-right:18px}.shop .content{display:flex;flex-direction:column;min-height:0}.orders{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.order{background:#2f3b36;color:#e8e6dc;padding:12px 12px 10px;border-radius:2px;font-family:var(--sans);font-size:13.5px;line-height:1.5;min-height:98px;display:flex;flex-direction:column;box-shadow:inset 0 0 0 4px #5a4632,inset 0 0 18px #00000059}.order .f{font-family:var(--serif);font-size:15.5px;color:#fff}.order .r{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:6px}.order button{color:#fff;border:1px solid rgba(255,255,255,.6);padding:3px 9px;font-size:12.5px;border-radius:2px}.order button:disabled{opacity:.3}.order.done{opacity:.5}.order.done .f{text-decoration:line-through}.mapwrap{position:relative;width:100%;aspect-ratio:1600 / 920;max-height:calc(100dvh - 190px);margin:0 auto;background:var(--paper-2) center / cover no-repeat;border-radius:2px;overflow:hidden}.pin{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;font-size:14px;padding:4px}.pin i{width:14px;height:14px;border-radius:50%;background:var(--paper);border:2px solid var(--ink);display:block;transition:transform .15s}.pin span{background:#efe7d4e6;padding:2px 7px;border-radius:2px;white-space:nowrap;box-shadow:0 1px 3px #00000026}.pin:hover i,.pin.sel i{transform:scale(1.3)}.pin.sel span{background:var(--ink);color:var(--paper)}.pin.place i{border-radius:2px;background:var(--ink)}.pin.locked{opacity:.45}.pin.here i{background:var(--seal);border-color:var(--seal);box-shadow:0 0 0 5px #b3402a40}.mapinfo{display:flex;align-items:center;gap:16px;padding-top:14px;min-height:58px}.mapinfo .grow{flex:1;font-size:14.5px;line-height:1.55}.mapinfo .grow b{font-size:17px}.letter{width:min(520px,100%);padding:38px 42px 30px;background-color:#f1ead8;background-image:repeating-linear-gradient(transparent 0 31px,#3d5a712e 31px 32px);background-position:0 22px;max-height:100%;overflow:auto}.letter pre{font-family:Gowun Batang,serif;white-space:pre-wrap;font-size:16.5px;line-height:32px;margin:0;color:#2c2a36}.letter .row{text-align:right;margin-top:18px}.title{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;padding:calc(8vh + var(--safe-t)) 16px 0;color:var(--hud);background:linear-gradient(180deg,rgba(8,11,24,.35),transparent 45%);animation:fadein 1.2s}.title h1{font-size:clamp(56px,min(10vw,16vh),120px);margin:0 0 0 .12em;font-weight:700;letter-spacing:.12em;line-height:1;text-shadow:0 4px 30px rgba(0,0,0,.35);display:flex;align-items:flex-start;gap:18px}.title h1 .seal{font-size:15px;letter-spacing:.05em;color:#e8573c;border-color:#e8573c;margin-top:12px;mix-blend-mode:normal;writing-mode:vertical-rl;padding:6px 3px}.title .sub{font-size:17px;opacity:.85;margin:14px 0 22px 4px;letter-spacing:.08em}.title nav{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:30px;flex-wrap:wrap}.title nav button{font-size:19px;padding:7px 2px;opacity:.85;transition:opacity .2s,transform .2s;text-shadow:0 1px 6px rgba(0,0,0,.5)}.title nav button:hover{opacity:1;transform:translateY(-2px)}.title .foot{position:absolute;left:0;right:0;text-align:center;bottom:calc(22px + var(--safe-b));font-size:12.5px;opacity:.55;font-family:var(--sans)}.title .lang{position:absolute;right:calc(22px + var(--safe-r));top:calc(18px + var(--safe-t));font-family:var(--sans);font-size:13px;opacity:.75;display:flex;gap:10px}.title .lang button.on{text-decoration:underline;text-underline-offset:4px}.set-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(42,37,33,.1)}.set-row label{width:120px;flex:none}.set-row input[type=range]{flex:1;accent-color:var(--ink)}.seg{display:inline-flex;border:1.5px solid var(--ink);border-radius:2px}.seg button{padding:6px 14px;font-size:14px}.seg button.on{background:var(--ink);color:var(--paper)}.credits{position:absolute;inset:0;background:#070a14;color:#e9e2d0;display:flex;align-items:center;justify-content:center;text-align:center;animation:fadein 2s;overflow:hidden}.credits .roll{font-size:18px;line-height:2.1;animation:roll 26s linear forwards}.credits .roll div:first-child{font-size:42px;font-weight:700;letter-spacing:.2em;margin-bottom:20px}@keyframes roll{0%{transform:translateY(60vh)}to{transform:translateY(-20vh)}}.confirm{width:min(420px,100%);padding:26px 28px 22px;text-align:center;font-size:16px;line-height:1.7}.confirm .row{display:flex;justify-content:center;gap:10px;margin-top:20px}.fade{position:absolute;inset:0;background:#05070f;opacity:0;pointer-events:none;transition:opacity .9s;z-index:40;display:grid;place-items:center;color:#e9e2d0;font-size:20px}.fade.on{opacity:1;pointer-events:auto}@media(max-width:720px),(max-height:520px){.panel{max-height:calc(100dvh - 16px)}.panel-head{padding:16px 18px 10px}.panel-body{padding:14px 18px 18px}.tabs{padding:0 18px}.shop{grid-template-columns:1fr}.shop .who-col{flex-direction:row;align-items:center;padding:10px 18px;border-right:0;border-bottom:1px solid rgba(42,37,33,.12)}.shop .who-col img{width:64px}.detail,.orders{grid-template-columns:1fr}.order{min-height:0}.dlg .face{width:110px;height:110px;margin-right:-16px}.dlg .say{font-size:15.5px}.card .plate{height:150px}.hud-tl .clock{font-size:21px}.veil{padding:8px}}@media(max-height:460px){.card{padding:14px 20px}.card .plate{height:110px}.card .note{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.rotate-tip{position:absolute;left:50%;top:calc(110px + var(--safe-t));transform:translate(-50%);background:#0c101e99;color:var(--hud);font-family:var(--sans);font-size:13.5px;padding:9px 14px;border-radius:20px;white-space:nowrap;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none}@media(orientation:portrait)and (max-width:700px){.rotate-tip.show{display:block}.hud-hint{bottom:calc(70px + var(--safe-b));white-space:normal;text-align:center;width:80%}}
