:root{--bg:#f6f3ee;--surface:#fff;--surface-2:#efeae2;--ink:#1f1a15;--muted:#7a6f63;--line:#e4ddd2;--accent:#c4673c;--accent-ink:#fff;--gold:#d9a441;--hl:#ffd84d9e;--ok:#3f8a5c;--danger:#b4432f;--shadow:0 1px 2px #281c100f, 0 8px 24px #281c1014;--radius:16px;--tabbar-h:64px;--rail-w:0px;--app-w:480px;--app-col:calc(var(--app-w) - 32px);--above-tab:calc(var(--tabbar-h) + 36px + env(safe-area-inset-bottom) + var(--vv-gap,0px));--f-display:"Hahmlet", "Noto Serif KR", serif;--f-body:"IBM Plex Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--f-book:"Gowun Batang", serif;--f-logo:"Fraunces", Georgia, serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hl:#c9a2274d;--bg:#14110e;--surface:#1d1915;--surface-2:#26211c;--ink:#f1ebe2;--muted:#a99d8f;--line:#322b24;--accent:#e08356;--accent-ink:#1a0f08;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--hl:#c9a2274d;--bg:#14110e;--surface:#1d1915;--surface-2:#26211c;--ink:#f1ebe2;--muted:#a99d8f;--line:#322b24;--accent:#e08356;--accent-ink:#1a0f08;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.25}p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom));max-width:var(--app-w);margin:0 auto}.page.no-tabs{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.page:before{content:"";height:env(safe-area-inset-top,0px);background:var(--bg);z-index:30;pointer-events:none;position:fixed;inset:0 0 auto}.sticky-bar{top:calc(env(safe-area-inset-top,0px) - 6px);z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin-block:-6px 0;margin-inline:-16px;padding:6px 16px;transition:box-shadow .15s;position:sticky}.sticky-bar[data-stuck]{box-shadow:0 1px 0 var(--line)}.stack{grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;display:grid}.row{align-items:center;gap:10px;display:flex}.spacer{flex:1}.muted{color:var(--muted)}.small{font-size:13px}.tnum{font-variant-numeric:tabular-nums}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.section-title{font:700 15px var(--f-body);color:var(--ink);letter-spacing:.01em;margin:20px 0 8px}.btn{cursor:pointer;background:var(--surface-2);min-height:48px;color:var(--ink);white-space:nowrap;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:600;transition:transform 80ms,background .2s;display:inline-flex}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.ghost{border-color:var(--line);background:0 0}.btn.block{width:100%}.btn.sm{border-radius:999px;min-height:36px;padding:0 14px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary:disabled{opacity:1;background:color-mix(in srgb, var(--accent) 32%, var(--surface));color:color-mix(in srgb, var(--ink) 50%, var(--surface))}.icon-btn{width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;line-height:0;display:inline-grid}.icon-btn:active{background:color-mix(in srgb, var(--ink) 8%, transparent)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.back-btn{cursor:pointer;width:40px;height:40px;color:var(--ink);background:0 0;border:0;border-radius:999px;place-items:center;margin-left:-12px;padding:0;line-height:0;display:inline-grid}.back-btn>svg{position:relative;left:-1px}.back-btn:active{background:color-mix(in srgb, var(--ink) 8%, transparent)}.field{gap:6px;display:grid}.field label{color:var(--muted);font-size:13px;font-weight:500}.input,textarea.input,select.input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:12px;padding:12px 14px;font-size:16px}textarea.input{resize:vertical;min-height:96px;font-family:var(--f-book);font-size:16px}select.input{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23777' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M8 10l4 4 4-4'/></svg>");background-position:right 14px center;background-repeat:no-repeat;height:48px;padding-right:40px}.input{caret-color:var(--accent)}.input:focus,.input:focus-visible{outline:none}.chips{scrollbar-width:none;gap:6px;padding:2px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--muted);border-radius:999px;flex:none;padding:7px 14px;font-size:13px;font-weight:500}.chip[aria-pressed=true],.chip[aria-selected=true],.chip[aria-checked=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.list>*+*{border-top:1px solid var(--line)}.list-item{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:52px;padding:14px 16px;display:flex}.list-item .chev{color:var(--muted)}.dot{background:var(--accent);border-radius:999px;flex:none;width:8px;height:8px}.toggle{background:var(--line);cursor:pointer;border:0;border-radius:999px;flex:none;width:48px;height:28px;transition:background .2s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle[aria-checked=true]{background:var(--ok)}.toggle[aria-checked=true]:after{transform:translate(20px)}.empty{text-align:center;color:var(--muted);justify-items:center;gap:10px;padding:48px 16px;display:grid}.cover{background:var(--surface-2);object-fit:cover;border-radius:4px 6px 6px 4px;box-shadow:inset 4px 0 6px -4px #00000059,0 2px 8px #0000001f}.toast{left:50%;bottom:var(--above-tab);background:var(--ink);color:var(--bg);z-index:50;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;animation:.25s ease-out toast-in;position:fixed;overflow:hidden;transform:translate(-50%)}body:has(.first-sheet) .toast{bottom:auto;top:calc(12px + env(safe-area-inset-top))}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.stats-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;overflow:hidden}.stats-table th,.stats-table td{border-top:1px solid var(--line);padding:12px 16px;font-size:15px}.stats-table tr:first-child th,.stats-table tr:first-child td{border-top:0}.stats-table th{text-align:left;color:var(--muted);font-weight:500}.stats-table td{text-align:right;font:700 18px var(--f-display)}.sticky-cta{z-index:30;padding:28px 16px calc(12px + env(safe-area-inset-bottom) + var(--vv-gap,0px));background:linear-gradient(to top, var(--bg) 0, var(--bg) 60%, transparent);pointer-events:none;max-width:var(--app-w);gap:8px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.sticky-cta>*{pointer-events:auto}.sticky-cta .btn{min-height:52px;font-size:16px}.steps{align-items:center;gap:6px;display:inline-flex}.steps i{background:var(--line);border-radius:999px;width:6px;height:6px;display:block}.steps i[data-on]{background:var(--accent);width:18px}.auth{align-content:center;gap:22px;max-width:420px;display:grid}.auth-logo{font:700 30px var(--f-display);text-align:center;letter-spacing:-.01em}.divider{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.link{cursor:pointer;color:var(--accent);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.form-error{color:var(--danger);font-size:13px;font-weight:500}.check{cursor:pointer;align-items:center;gap:10px;min-height:40px;font-size:14px;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:0}.coin{font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-weight:700;display:inline-flex}.coin:before{content:"";background:radial-gradient(circle at 35% 35%, #ffe08a, var(--gold) 60%, #a8741d);border-radius:50%;flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 1.5px #78500a59}.pill{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;display:inline-flex}.shelf-loader{z-index:60;background:color-mix(in srgb, var(--bg) 55%, transparent);-webkit-backdrop-filter:blur(14px);place-items:center;transition:opacity .35s;animation:.2s ease-out shelf-loader-in;display:grid;position:fixed;inset:0}@keyframes shelf-loader-in{0%{opacity:0}}.shelf-loader.out{opacity:0;pointer-events:none}.shelf-loader-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;justify-items:center;gap:12px;min-width:180px;padding:24px 28px;display:grid}.shelf-loader-bar{background:var(--surface-2);border-radius:99px;width:120px;height:4px;overflow:hidden}.shelf-loader-bar i{background:var(--accent);border-radius:99px;width:40%;height:100%;animation:1.1s ease-in-out infinite shelf-loader-slide;display:block}@keyframes shelf-loader-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}@media (prefers-reduced-motion:reduce){.shelf-loader-bar i{width:100%;animation:none}}html[data-kb]{--above-tab:calc(12px + var(--vv-gap,0px))}@media (min-width:720px){:root{--above-tab:calc(var(--tabbar-h) + 52px + var(--vv-gap,0px))}}.wave-overlay{z-index:80;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.wave-overlay__sea{background:linear-gradient(#e08a5c 0%,#c4673c 38%,#a24a28 72%,#7d3418 100%);animation:.6s cubic-bezier(.25,.8,.3,1) both wave-in;position:absolute;inset:0}.wave-overlay__crest{height:110px;position:absolute;bottom:100%;left:0;right:0}.wave-overlay__crest svg,.wave-overlay__swell svg{width:200%;height:100%;position:absolute;bottom:0;left:0}.wave-overlay__w1{fill:#f4b08a;opacity:.45;animation:4.2s linear infinite wave-drift;transform:translateY(-34px)}.wave-overlay__w2{fill:#ea9a6e;opacity:.7;animation:3s linear infinite reverse wave-drift;transform:translateY(-16px)}.wave-overlay__w3{fill:#e08a5c;animation:2.2s linear infinite wave-drift}.wave-overlay__swell{height:12%;position:absolute;bottom:0;left:0;right:0}.wave-overlay__s1{fill:#fff;opacity:.07;animation:7s linear infinite wave-drift}.wave-overlay__s2{fill:#fff;opacity:.05;animation:5s linear infinite reverse wave-drift;transform:translateY(14px)}.wave-overlay__card{color:#fff8ef;text-align:center;justify-items:center;gap:8px;padding:0 28px;animation:.55s cubic-bezier(.2,1.2,.4,1) .18s both wave-card;display:grid;position:relative}.wave-overlay__ride{margin-bottom:10px;animation:1.5s ease-in-out .6s infinite alternate wave-bob}.wave-overlay__cover{object-fit:cover;border-radius:4px;width:88px;height:128px;display:block;transform:rotate(-4deg);box-shadow:0 16px 34px #3c140673}.wave-overlay__boat{filter:drop-shadow(0 10px 14px #3c140659);width:96px;height:64px;display:block;transform:rotate(-5deg)}.wave-overlay__kicker{font:600 12px var(--f-body);letter-spacing:.14em;text-transform:uppercase;opacity:.78}.wave-overlay__title{font:600 15px var(--f-book);text-wrap:balance;opacity:.92;max-width:280px}.wave-overlay__to{font:700 21px/1.3 var(--f-display);text-wrap:balance;max-width:300px}.wave-overlay__dots{gap:6px;margin-top:10px;display:inline-flex}.wave-overlay__dots i{opacity:.35;background:#fff8ef;border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite wave-dot}.wave-overlay__dots i:nth-child(2){animation-delay:.15s}.wave-overlay__dots i:nth-child(3){animation-delay:.3s}.wave-overlay[data-leaving] .wave-overlay__sea{animation:.42s cubic-bezier(.5,0,.75,0) both wave-out}.wave-overlay[data-leaving] .wave-overlay__card{animation:.25s ease-in both wave-fade}@keyframes wave-in{0%{transform:translateY(calc(100% + 110px))}to{transform:translateY(0)}}@keyframes wave-out{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - 120px))}}@keyframes wave-drift{0%{translate:0}to{translate:-50%}}@keyframes wave-card{0%{opacity:0;transform:translateY(40px)scale(.92)}}@keyframes wave-fade{to{opacity:0;transform:translateY(-30px)}}@keyframes wave-bob{0%{transform:translateY(0)rotate(-2deg)}to{transform:translateY(-8px)rotate(2deg)}}@keyframes wave-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.wave-overlay__sea,.wave-overlay__card,.wave-overlay__ride,.wave-overlay__crest svg,.wave-overlay__swell svg,.wave-overlay__dots i{animation-duration:10ms!important;animation-iteration-count:1!important}}@media (min-width:1024px){:root:has(nav[data-rail]){--rail-w:220px;--tabbar-h:0px;--above-tab:calc(24px + var(--vv-gap,0px))}body:has(nav[data-rail]){padding-left:var(--rail-w)}}.visit-cols{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (min-width:1024px){.page.page-wide{max-width:1040px;padding-inline:32px}.visit-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}}.utabs{scrollbar-width:none;border-bottom:1px solid var(--line);gap:22px;display:flex;overflow-x:auto}.utabs::-webkit-scrollbar{display:none}.utabs>button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;align-items:center;gap:5px;padding:10px 0 11px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.utabs>button[aria-selected=true]{color:var(--ink);font-weight:700}.utabs>button[aria-selected=true]:after{content:"";background:var(--accent);border-radius:2px;height:2.5px;position:absolute;bottom:-1px;left:0;right:0}.utabs>button:focus-visible{outline-offset:0}.seg{background:var(--surface-2);scrollbar-width:none;border-radius:12px;gap:2px;padding:3px;display:flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg>button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;flex:1 0 auto;justify-content:center;align-items:center;gap:5px;padding:8px 12px;font-size:14px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.seg>button[aria-selected=true],.seg>button[aria-checked=true],.seg>button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #281c101f}.itabs{scrollbar-width:none;border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.itabs::-webkit-scrollbar{display:none}.itabs>button{min-width:58px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;justify-items:center;gap:4px;padding:6px 6px 9px;font-size:12px;font-weight:600;display:grid;position:relative}.itabs>button>svg{width:22px;height:22px}.itabs>button[aria-selected=true]{color:var(--ink)}.itabs>button[aria-selected=true]:after{content:"";background:var(--accent);border-radius:2px;height:2.5px;position:absolute;bottom:-1px;left:10px;right:10px}@media (min-width:1024px){.page.auth:after{content:"";z-index:-1;pointer-events:none;filter:blur(22px)saturate(.85);opacity:.38;background:url(/welcome/room-novel.webp) 50% 40%/cover no-repeat;position:fixed;inset:-40px}}.btn.apple-btn{color:#fff;background:#000;border-color:#333}@media (min-width:1024px) and (min-aspect-ratio:5/4){[data-dark] .btn.apple-btn{color:#000;background:#fff;border-color:#fff}}.utabs,.itabs{padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}html[data-qr] .first-sheet{visibility:hidden}