:root{color-scheme:dark;--bg: #0f0f10;--panel: rgba(18, 18, 20, .7);--panel-strong: rgba(22, 22, 24, .94);--fill: rgba(255, 255, 255, .06);--fill-hover: rgba(255, 255, 255, .1);--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .24);--text: #f3f2ef;--text-2: rgba(243, 242, 239, .76);--muted: rgba(243, 242, 239, .54);--primary-bg: #f3f2ef;--primary-fg: #141414;--accent: #cbb991;--danger: #e38b80;--blur: blur(18px) saturate(1.15);--radius: 16px;--radius-sm: 12px;--tap: 44px;--dock-h: 64px;--serif: "Cormorant Garamond", "Noto Serif KR", serif;--serif-kr: "Noto Serif KR", serif;--sans: "Pretendard", "Noto Sans KR", -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:99px;border:2px solid transparent;background-clip:padding-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;overflow:hidden;-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}body{touch-action:none;user-select:none;-webkit-user-select:none}input,textarea{user-select:text;-webkit-user-select:text}button{font:inherit;color:inherit;cursor:pointer;border:none;background:none;padding:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid rgba(255,255,255,.55);outline-offset:2px}a{color:var(--text)}.ico{flex-shrink:0;display:block}.accent{color:var(--accent)}.world{position:fixed!important;top:0;right:0;bottom:0;left:0}.is-disabled{opacity:.42;cursor:not-allowed}.rose-mark{flex-shrink:0;display:block}.primary,.ghost,.danger,.btn{min-height:var(--tap);border-radius:var(--radius-sm);padding:10px 18px;font-weight:600;font-size:14px;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:background .18s ease,border-color .18s ease,opacity .18s ease,transform .12s ease}.primary{background:var(--primary-bg);color:var(--primary-fg)}.primary:hover:not(:disabled){background:#fff}.primary:active:not(:disabled),.ghost:active:not(:disabled){transform:scale(.98)}.ghost,.btn{background:var(--fill);border:1px solid var(--line);color:var(--text)}.ghost:hover:not(:disabled),.btn:hover{background:var(--fill-hover);border-color:var(--line-strong)}.ghost.quiet{background:transparent;border-color:transparent;color:var(--muted)}.ghost.square{width:var(--tap);padding:0;flex-shrink:0}.danger{background:transparent;border:1px solid rgba(227,139,128,.45);color:var(--danger)}.danger:hover:not(:disabled){background:#e38b8014}.big{width:100%;min-height:50px;font-size:15px}button:disabled{opacity:.45;cursor:default}.link-btn{display:inline-flex;align-items:center;gap:6px;min-height:36px;color:var(--muted);font-size:13px;text-decoration:underline;text-decoration-color:#ffffff40;text-underline-offset:3px}.link-btn:hover{color:var(--text)}.icon{width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;background:var(--panel);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text-2);transition:color .18s,border-color .18s}.icon:hover{color:var(--text);border-color:var(--line-strong)}kbd{font-family:var(--sans);font-size:11px;border:1px solid rgba(0,0,0,.25);border-radius:5px;padding:1px 6px;line-height:1.4}.muted{color:var(--muted)}.center{text-align:center}.small{font-size:12px}.error{color:var(--danger);font-size:13px;margin:6px 0 10px}.row{display:flex;gap:8px;flex-wrap:wrap}.row>*{flex:1 1 0}.splash{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:28px;background:var(--bg);z-index:50}.spinner{width:24px;height:24px;border-radius:50%;border:1.5px solid rgba(255,255,255,.14);border-top-color:#fffc;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.logo{font-family:var(--serif);font-weight:500;letter-spacing:.12em;font-size:clamp(40px,8vw,76px);margin:0 0 0 .04em;color:var(--text)}.wordmark{white-space:nowrap}.wordmark-colon{display:inline-block;margin:0 .04em 0 -.02em;opacity:.6;transform:translateY(-.06em)}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:flex-end;justify-content:flex-start;padding:max(24px,var(--safe-t)) max(clamp(16px,5vw,64px),var(--safe-r)) max(clamp(16px,5vw,56px),var(--safe-b)) max(clamp(16px,5vw,64px),var(--safe-l));background:linear-gradient(90deg,#0a0a0bd1,#0a0a0b80 42%,#0a0a0b00 72%),linear-gradient(0deg,#0a0a0b8c,#0a0a0b00 50%);transition:opacity .45s ease;overflow-y:auto;touch-action:pan-y}.intro.leaving{opacity:0;pointer-events:none}.intro-card{width:min(420px,100%);margin-top:auto;animation:rise .9s cubic-bezier(.2,.7,.2,1) both}@keyframes rise{0%{opacity:0;transform:translateY(16px)}}.intro-eyebrow{letter-spacing:.36em;font-size:11px;color:var(--muted);margin-bottom:8px}.tagline{font-size:15px;line-height:1.7;color:var(--text-2);margin:16px 0 18px;word-break:keep-all}.intro-stats{display:flex;gap:8px;font-size:13px;color:var(--muted);margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.intro-stats b{color:var(--text);font-weight:600}.intro .hint{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin:12px 0 0}.demo-badge{display:inline-block;font-size:12px;color:var(--muted);border:1px solid var(--line);padding:4px 10px;border-radius:999px;margin:10px 0 0}.shared-card{display:flex;gap:12px;align-items:center;width:100%;text-align:left;padding:10px 12px 10px 10px;border-radius:var(--radius-sm);background:var(--fill);border:1px solid var(--line);margin-bottom:18px;transition:border-color .18s}.shared-card:hover{border-color:var(--line-strong)}.shared-card img{width:56px;height:56px;object-fit:cover;border-radius:6px;flex-shrink:0}.shared-card div{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px}.shared-card small{color:var(--muted);font-size:11px}.shared-card strong{font-weight:600;word-break:keep-all;overflow-wrap:anywhere}.shared-card span{display:flex;align-items:center;gap:3px;font-size:12px;color:var(--muted)}.shared-card em{font-style:normal;font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:4px;white-space:nowrap}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field>span{font-size:12px;color:var(--muted)}input,textarea{font:inherit;font-size:15px;color:var(--text);background:var(--fill);border:1px solid var(--line);border-radius:var(--radius-sm);padding:11px 14px;min-height:var(--tap);outline:none;width:100%;resize:vertical;transition:border-color .18s,background .18s}input::placeholder,textarea::placeholder{color:#f3f2ef52}input:focus,textarea:focus{border-color:var(--line-strong);background:var(--fill-hover);outline:none}input[type=range]{padding:0;min-height:32px;background:none;border:none;accent-color:var(--text)}.name-row{display:flex;gap:8px}.swatches{display:flex;gap:2px;flex-wrap:wrap;margin-left:-8px}.swatch{width:var(--tap);height:var(--tap);display:grid;place-items:center;border-radius:50%}.swatch i{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff2e;transition:box-shadow .15s}.swatch.on i{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px var(--text)}.look-picker{display:flex;flex-direction:column;gap:10px}.look-head{display:flex;gap:8px;align-items:stretch}.look-head .seg{flex:1}.look-more{display:inline-flex;align-items:center;gap:4px;padding:0 12px;font-size:13px;color:var(--text-2);white-space:nowrap}.look-more svg{transition:transform .2s}.look-more.open svg{transform:rotate(180deg)}.look-note{margin:0;font-size:12px;color:var(--muted)}.look-random{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-2)}.look-preview{height:220px;border-radius:var(--radius-sm);background:radial-gradient(ellipse at 50% 70%,rgba(255,255,255,.08),transparent 70%),var(--fill);border:1px solid var(--line);overflow:hidden;transition:opacity .2s}.look-preview.loading{opacity:.55}.look-row{display:flex;flex-direction:column;gap:6px}.look-row>span{font-size:12px;color:var(--muted)}.look-chips{display:flex;flex-wrap:wrap;gap:6px}.look-chips button{min-height:34px;min-width:34px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--fill);color:var(--text-2);font-size:13px}.look-chips button.on{background:var(--primary-bg);border-color:var(--primary-bg);color:var(--primary-fg);font-weight:600}.look-swatches{display:flex;flex-wrap:wrap;gap:8px}.look-swatches button{width:30px;height:30px;padding:0;border:1px solid var(--line-strong);border-radius:50%}.look-swatches button.on{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px var(--text)}.topbar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:calc(14px + var(--safe-t)) max(16px,var(--safe-r)) 14px max(16px,var(--safe-l));z-index:10;pointer-events:none;background:linear-gradient(180deg,#00000057,#0000)}.top-actions>*{pointer-events:auto}.brand{display:flex;flex-direction:column;gap:2px;min-width:0;text-shadow:0 1px 10px rgba(0,0,0,.55)}.logo-sm{font-family:var(--serif);letter-spacing:.14em;font-weight:600;font-size:18px}.where{font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.online{font-size:12px;height:40px;padding:0 12px;border-radius:999px;background:var(--panel);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);display:inline-flex;align-items:center;gap:7px;color:var(--text-2)}.online i{width:6px;height:6px;border-radius:50%;background:#ffffff4d}.online.on i{background:var(--text)}.online-short{display:none}.hint-pill{position:fixed;top:calc(72px + var(--safe-t));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);padding:9px 16px;border-radius:999px;background:var(--panel);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);z-index:9;max-width:calc(100vw - 32px);width:max-content;animation:fadeIn .6s ease both;pointer-events:none}@keyframes fadeIn{0%{opacity:0}}.prompt{position:fixed;left:50%;bottom:calc(var(--dock-h) + 36px + var(--safe-b));transform:translate(-50%);display:flex;align-items:center;gap:14px;padding:6px 6px 6px 18px;border-radius:999px;background:var(--panel-strong);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);z-index:11;animation:rise .35s ease both;white-space:nowrap;max-width:calc(100vw - 24px);font-size:14px}.prompt .primary{border-radius:999px}.dock{position:fixed;left:50%;transform:translate(-50%);bottom:calc(20px + var(--safe-b));display:flex;gap:4px;padding:6px;border-radius:999px;background:var(--panel);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);z-index:11}.dock>button{min-height:var(--tap);border-radius:999px;padding:0 16px;font-size:14px;font-weight:500;color:var(--text-2);display:flex;align-items:center;gap:7px;white-space:nowrap;transition:background .18s,color .18s}.dock>button:hover,.dock>button.on{background:var(--fill-hover);color:var(--text)}.dock-emotes{display:flex;gap:2px}.dock .emo{width:var(--tap);height:var(--tap);border-radius:50%;display:grid;place-items:center;color:var(--text-2);transition:background .15s,color .15s,transform .12s}.dock .emo:hover{background:var(--fill-hover);color:var(--text)}.dock .emo:active{transform:scale(.88)}.dock .emo-fold{width:30px;color:var(--muted)}.dock .emo-fold svg{transform:rotate(90deg)}.dock-emotes .dock-text{min-height:var(--tap);border-radius:999px;padding:0 16px;font-size:14px;font-weight:500;color:var(--text-2);display:flex;align-items:center;gap:7px}.dock-emotes .dock-text:hover{background:var(--fill-hover);color:var(--text)}.dock-sep{width:1px;margin:8px 4px;background:var(--line)}.popover{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);width:min(360px,calc(100vw - 24px));background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--radius);padding:10px;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 18px 50px #00000073;animation:rise .22s ease both}.emotes{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--line)}.emotes button{height:48px;border-radius:var(--radius-sm);display:grid;place-items:center;color:var(--text-2);transition:background .15s,color .15s}.emotes button:hover,.emotes button:active{background:var(--fill-hover);color:var(--text)}.phrases{display:flex;flex-wrap:wrap;gap:6px}.phrases button{font-size:13px;min-height:36px;padding:0 12px;border-radius:999px;background:var(--fill);border:1px solid var(--line);color:var(--text-2)}.phrases button:hover{color:var(--text);border-color:var(--line-strong)}.popover-note{font-size:11px;color:var(--muted);margin:10px 0 2px;text-align:center}.joystick{position:fixed;left:max(20px,var(--safe-l));bottom:calc(var(--dock-h) + 36px + var(--safe-b));width:120px;height:120px;border-radius:50%;background:#10101252;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10;display:grid;place-items:center;touch-action:none;transition:bottom .25s ease}.knob{width:50px;height:50px;border-radius:50%;background:#f3f2efd1;box-shadow:0 4px 14px #00000059;pointer-events:none}.my-reaction{position:fixed;left:50%;bottom:calc(var(--dock-h) + 44px + var(--safe-b));z-index:9;pointer-events:none;transform:translate(-50%);display:grid;place-items:center;color:#fff;background:#1414168c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.my-reaction.say{max-width:min(320px,calc(100vw - 48px));padding:10px 16px;border-radius:18px;font-size:15px;line-height:1.4;word-break:keep-all;text-align:center;animation:myReactionSay 4s ease both}.my-reaction.say:after{content:"";position:absolute;left:50%;bottom:-6px;width:12px;height:12px;background:inherit;transform:translate(-50%) rotate(45deg);border-radius:2px}.my-reaction.emote{width:58px;height:58px;border-radius:50%;animation:myReactionEmote 2.2s ease-out both}@keyframes myReactionSay{0%{opacity:0;transform:translate(-50%,10px) scale(.96)}8%,80%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-6px)}}@keyframes myReactionEmote{0%{opacity:0;transform:translate(-50%,12px) scale(.6)}15%{opacity:1;transform:translate(-50%) scale(1.08)}25%{transform:translate(-50%,-6px) scale(1)}to{opacity:0;transform:translate(-50%,-90px) scale(1)}}.toasts{position:fixed;top:calc(72px + var(--safe-t));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:40;width:min(480px,calc(100vw - 24px));pointer-events:none}.toasts.with-panel{left:calc((100vw - 392px)/2);width:min(460px,calc(100vw - 420px))}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;max-width:100%;padding:8px 8px 8px 16px;min-height:46px;border-radius:14px;background:var(--panel-strong);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);font-size:14px;line-height:1.45;box-shadow:0 10px 30px #0000004d;animation:toastIn .3s cubic-bezier(.2,.8,.2,1) both;word-break:keep-all}.toast:not(:has(button)){padding-right:16px}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}}.toast-text{flex:1}.toast-ico{color:var(--text-2)}.toast.gold .toast-ico{color:var(--accent)}.toast.error .toast-ico{color:var(--danger)}.toast button{white-space:nowrap;font-size:12px;font-weight:600;min-height:34px;padding:0 12px;border-radius:10px;background:var(--fill-hover);color:var(--text)}.fade{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0b;opacity:0;pointer-events:none;transition:opacity .6s ease;z-index:30}.fade.on{opacity:1;pointer-events:auto}.art-panel{position:fixed;top:calc(68px + var(--safe-t));right:max(16px,var(--safe-r));bottom:calc(16px + var(--safe-b));width:min(360px,calc(100vw - 32px));background:#121214d6;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--line);border-radius:20px;padding:24px 20px 14px;z-index:12;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;display:flex;flex-direction:column;gap:18px;animation:slideIn .4s cubic-bezier(.2,.8,.2,1) both}@keyframes slideIn{0%{opacity:0;transform:translate(24px)}}.grabber{display:none}.close{position:absolute;top:10px;right:10px;width:var(--tap);height:var(--tap);border-radius:50%;display:grid;place-items:center;color:var(--muted);transition:color .15s,background .15s}.close:hover{color:var(--text);background:var(--fill)}.art-head h2{font-family:var(--serif-kr);font-size:24px;font-weight:600;margin:12px 0 4px;line-height:1.3;padding-right:32px;word-break:keep-all;overflow-wrap:anywhere}.artist{margin:0;color:var(--text-2);font-size:14px}.desc{margin:0;color:var(--text-2);line-height:1.75;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.tier-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-2);padding:5px 10px;border-radius:999px;border:1px solid var(--line)}.tier-badge.t4,.tier-badge.t5,.tier-badge.t6{color:var(--text);border-color:var(--line-strong)}.rose-box{border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column;gap:12px}.rose-count{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.rose-count .big{display:flex;align-items:center;gap:8px;font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}.rose-count .gold{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--accent)}.tier-track{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.tier-seg{position:relative;height:4px;border-radius:99px;background:#ffffff1f;overflow:hidden}.tier-seg.on{background:var(--text)}.tier-seg i{position:absolute;inset:0 auto 0 0;background:var(--text);border-radius:99px;transition:width .8s cubic-bezier(.2,.8,.2,1)}.progress-label{margin:0;font-size:13px;color:var(--muted)}.progress-label b{color:var(--text);font-weight:600}.rose-btn{border-radius:14px;padding:12px;min-height:60px;background:var(--primary-bg);color:var(--primary-fg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:transform .12s,background .18s}.rose-btn span{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600}.rose-btn small{font-size:12px;opacity:.6}.rose-btn:hover:not(.done):not(:disabled){background:#fff}.rose-btn.throwing{animation:throwPulse .5s ease}@keyframes throwPulse{40%{transform:scale(.96)}}.rose-btn.done{background:transparent;border:1px solid var(--line);color:var(--text-2)}.rose-btn.done small{font-variant-numeric:tabular-nums}.rose-box .row>button{font-size:13px;padding:0 10px;white-space:nowrap;min-width:0}.supporters h3{font-size:12px;color:var(--muted);margin:0 0 8px;font-weight:500}.supporters ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.supporters li{font-size:13px;padding:10px 0;border-bottom:1px solid var(--line)}.supporters li:last-child{border-bottom:none}.supporters li span{display:inline-flex;align-items:center;gap:4px;color:var(--accent);float:right}.supporters li p{margin:4px 0 0;color:var(--muted)}.art-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:var(--muted);padding-top:6px;border-top:1px solid var(--line)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:25;display:grid;place-items:center;padding:16px;animation:fadeIn .2s ease both}.modal{width:min(440px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:hidden;display:flex;flex-direction:column;background:var(--panel-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 80px #00000080;animation:rise .3s cubic-bezier(.2,.8,.2,1) both;position:relative}.modal-bg.inapp{z-index:40}.inapp-text{margin:0 0 18px;word-break:keep-all;font-size:14px;line-height:1.65;color:var(--text-2)}.inapp-text b{color:var(--text);font-weight:600}.inapp-actions{display:flex;flex-direction:column;gap:8px}.inapp-actions button{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px}.modal.wide{width:min(800px,100%)}.modal header{padding:20px 64px 4px 22px}.modal header h2{margin:0;font-size:18px;font-weight:600;line-height:1.4}.modal-body{padding:14px 22px 22px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}.upload{display:grid;grid-template-columns:1fr 1fr;gap:20px}.drop{border:1px dashed var(--line-strong);border-radius:var(--radius);min-height:320px;display:grid;place-items:center;cursor:pointer;background:#ffffff05;transition:background .18s,border-color .18s;padding:16px}.drop.drag,.drop:hover{background:var(--fill);border-color:#fff6}.drop.has{border-style:solid;border-color:var(--line);background:#00000040}.drop-empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;word-break:keep-all}.drop-empty b{font-weight:500;font-size:14px}.drop-empty .plus{width:56px;height:56px;border-radius:50%;border:1px solid var(--line-strong);display:grid;place-items:center;color:var(--text-2)}.drop-empty small{color:var(--muted);font-size:12px}.preview-frame{padding:12px;background:#f1efea;box-shadow:0 0 0 1px #0009,0 14px 36px #00000080}.preview-frame img{display:block;max-width:100%;max-height:300px}.where-note{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;color:var(--text-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:14px;line-height:1.5;word-break:keep-all}.where-note>.ico{color:var(--muted)}.where-note>span:not(.where-sub){flex:1;min-width:0}.where-note b{color:var(--text);font-weight:600}.where-sub{flex-basis:100%;font-size:12px}.check{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:16px;cursor:pointer}.check input{width:18px;height:18px;min-height:0;margin:2px 0 0;flex-shrink:0;accent-color:var(--text)}.modal .done{text-align:center}.modal .done img{max-width:200px;max-height:200px;border:10px solid #f1efea;box-shadow:0 0 0 1px #0009,0 10px 30px #00000073}.modal .done h3{font-family:var(--serif-kr);font-weight:600;margin:16px 0 6px}.modal .done p{color:var(--muted);font-size:14px;line-height:1.7;word-break:keep-all}.modal .done p b{color:var(--text)}.donate-target,.share-card{display:flex;gap:12px;align-items:center;margin-bottom:16px}.donate-target img,.share-card img{width:64px;height:64px;object-fit:cover;border-radius:6px;flex-shrink:0;box-shadow:0 0 0 1px var(--line)}.donate-target div,.share-card div{display:flex;flex-direction:column;gap:3px;min-width:0}.donate-target b,.share-card b{font-weight:600;overflow-wrap:anywhere}.donate-target span,.share-card span{font-size:13px;color:var(--muted)}.share-card em{font-style:normal;color:var(--text-2);font-size:13px}.donate>.muted,.share>.muted{font-size:14px;line-height:1.65;margin:0 0 16px;word-break:keep-all}.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.amounts button,.amounts input{min-height:var(--tap);padding:0 8px;border-radius:var(--radius-sm);background:var(--fill);border:1px solid var(--line);font-weight:500;font-size:14px;text-align:center;color:var(--text-2)}.amounts .on{border-color:var(--text);color:var(--text);background:var(--fill-hover)}.golden-note{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text-2);border:1px solid var(--line);padding:12px;border-radius:var(--radius-sm);margin-bottom:16px;line-height:1.55;word-break:keep-all}.golden-note b{color:var(--text)}.upgrade-hint{margin-top:6px;color:var(--text)}.upgrade-hint.quiet{color:var(--muted);font-size:13px}.reasons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.radio{display:flex;gap:10px;align-items:center;min-height:var(--tap);padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);font-size:14px;color:var(--text-2);cursor:pointer}.radio input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--text)}.radio.on{border-color:var(--line-strong);color:var(--text);background:var(--fill)}.report>.muted:first-child{margin-top:0}.report .small{line-height:1.6;word-break:keep-all}.copy-row{display:flex;gap:8px;margin:12px 0}.copy-row>input{min-width:0;font-size:13px;color:var(--text-2)}.copy-row>button{white-space:nowrap;flex-shrink:0}.floors{display:flex;flex-direction:column;gap:6px}.spots-lead{margin:0 0 12px}.spots{display:flex;flex-direction:column;gap:8px}.spots-floor{display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px;border-radius:var(--radius-sm);border:1px solid var(--line)}.spots-floor-head{display:flex;align-items:baseline;gap:10px;font-size:14px}.spots-floor-head .fnum{font-family:var(--serif);font-size:20px}.spots-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.spot-zone{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--line);text-align:left;font-size:14px;transition:background .15s,border-color .15s}.spot-zone small{color:var(--text-2);font-size:12px}.spot-zone em{font-style:normal;font-size:11px;color:var(--muted)}.spot-zone:hover:not(:disabled),.spot-zone.on{background:var(--fill);border-color:var(--line-strong)}.spot-zone:disabled{color:var(--muted);border-style:dashed;cursor:default}.spot-zone:disabled small{color:var(--muted)}.spots-random{width:100%;margin-top:14px}.spots-note{margin:8px 0 0;text-align:center}.floor-btn{display:flex;align-items:center;gap:14px;min-height:60px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);text-align:left;font-size:14px;transition:background .15s,border-color .15s}.floor-btn:hover:not(.locked){background:var(--fill)}.floor-btn .fnum{font-family:var(--serif);font-size:22px;width:40px;flex-shrink:0;color:var(--text)}.floor-btn em{margin-left:auto;font-style:normal;font-size:12px;color:var(--text-2);white-space:nowrap}.floor-btn.on{border-color:var(--line-strong);background:var(--fill)}.floor-btn.locked{color:var(--muted);border-style:dashed}.floor-btn.locked .fnum,.floor-btn.locked em{color:var(--muted)}.floor-name{display:flex;flex-direction:column;gap:2px;min-width:0}.floor-name b{font-weight:600}.floor-name small{color:var(--muted);font-size:12px;word-break:keep-all}.seg{display:flex;padding:3px;gap:3px;border-radius:var(--radius-sm);background:var(--fill);border:1px solid var(--line)}.seg button{flex:1;min-height:38px;border-radius:9px;color:var(--text-2);font-size:14px}.seg .on{background:var(--primary-bg);color:var(--primary-fg);font-weight:600}.settings>.primary{width:100%;margin-top:4px}.shot-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#fff;pointer-events:none;animation:shotFlash .45s ease-out forwards}@keyframes shotFlash{0%{opacity:.55}to{opacity:0}}.settings-link{display:flex;align-items:center;gap:12px;width:100%;margin-top:8px;padding:14px 2px 2px;border:0;border-top:1px solid var(--line);background:none;color:var(--text);font:inherit;font-size:14px;text-align:left;cursor:pointer}.settings-link>span{flex:1;display:flex;flex-direction:column;gap:2px}.settings-link small{color:var(--muted);font-size:12px}.settings-link .ico{color:var(--text-2)}.settings-link:hover>span{text-decoration:underline;text-underline-offset:3px}.settings-link.app{margin-top:0;padding-top:4px;padding-bottom:14px;margin-bottom:14px;border-top:0;border-bottom:1px solid var(--line)}.settings-link.static{cursor:default}.settings-link.static:hover>span{text-decoration:none}.settings-link.static>button{flex-shrink:0;min-height:34px;padding:0 14px}.account-box .settings-link{margin-top:12px}.settings>:not(.field)+.field{margin-top:18px}.push-offer{width:100%;margin-top:10px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.push-offer>span{display:flex;flex-direction:column;text-align:left}.push-offer small{color:var(--muted);font-size:12px}.app-install{display:flex;flex-direction:column;gap:16px}.app-install-head{display:flex;align-items:center;gap:14px}.app-install-head img{border-radius:13px;flex-shrink:0}.app-install-head b{font-size:16px}.app-install-head p{margin:4px 0 0;font-size:13px}.app-install-why,.app-install-steps{margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.5}.app-install-why{list-style:none}.app-install-why li,.app-install-steps li{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.app-install-why small{color:var(--muted)}.app-install-steps{list-style:none;counter-reset:step}.app-install-steps li:before{counter-increment:step;content:counter(step);display:inline-grid;place-items:center;width:20px;height:20px;margin-right:4px;border-radius:50%;border:1px solid var(--line);font-size:11px;color:var(--text-2)}.app-install .primary.big{display:inline-flex;align-items:center;justify-content:center;gap:8px}.help-sec{padding:14px 0;border-bottom:1px solid var(--line)}.help-sec:first-child{padding-top:4px}.help-sec:last-child{border-bottom:none;padding-bottom:0}.help h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin:0 0 6px}.help h3 .ico{color:var(--text-2)}.help p{margin:0;color:var(--muted);font-size:14px;line-height:1.7;word-break:keep-all}.help p.help-credits{font-size:12px;line-height:1.6;padding-top:12px;border-top:1px solid var(--line)}.help-credits a{color:inherit}.tier-list{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:2px 16px;font-size:13px}.tier-list li{display:flex;align-items:center;gap:8px;min-height:30px}.tier-list b{font-weight:500}.tier-lv{width:18px;height:18px;border-radius:4px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:10px;color:var(--muted);flex-shrink:0}.tier-min{margin-left:auto;display:flex;align-items:center;gap:3px;color:var(--muted);font-variant-numeric:tabular-nums}.admin{max-width:900px;margin:0 auto;padding:calc(32px + var(--safe-t)) 16px calc(32px + var(--safe-b));height:100%;overflow-y:auto;-webkit-user-select:text;user-select:text;touch-action:pan-y}.admin h1{font-size:22px;font-weight:600}.admin-list{display:flex;flex-direction:column;gap:12px;margin-top:20px}.admin-item{display:flex;gap:16px;padding:14px;border-radius:14px;border:1px solid var(--line)}.admin-item.hidden{border-color:#e38b8073}.admin-item img{width:120px;height:120px;object-fit:cover;border-radius:8px;flex-shrink:0}.admin-item .info{flex:1;min-width:0}.admin-item ul{font-size:13px;color:var(--muted);padding-left:18px}.tag{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);color:var(--text-2);margin-left:6px}.back-link{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);color:var(--text-2);text-decoration:none}@media(pointer:coarse){.icon,.online{width:var(--tap);height:var(--tap)}.online{width:auto}}@media(max-width:720px){.icon{width:var(--tap);height:var(--tap)}.online{height:var(--tap);padding:0 12px}.online-full{display:none}.online-short{display:inline}.topbar{padding-top:calc(10px + var(--safe-t));padding-left:max(14px,var(--safe-l));padding-right:max(10px,var(--safe-r))}.logo-sm{font-size:16px}.hint-pill{top:calc(66px + var(--safe-t));font-size:12px;line-height:1.5;width:calc(100vw - 24px);border-radius:14px;padding:9px 12px;align-items:flex-start}.hint-pill .ico{margin-top:1px}.toasts,.toasts.with-panel{top:calc(66px + var(--safe-t));left:50%;width:calc(100vw - 24px)}.toast{flex-wrap:wrap;row-gap:6px}.toast-text{flex:1 1 220px}.toast button{margin-left:auto}.dock{left:max(10px,var(--safe-l));right:max(10px,var(--safe-r));bottom:calc(10px + var(--safe-b));transform:none;border-radius:20px;padding:4px;gap:2px;height:var(--dock-h)}.dock>button{flex:0 0 auto;min-width:52px;flex-direction:column;justify-content:center;gap:3px;padding:0 6px;font-size:11px;border-radius:16px}.dock-emotes{flex:1 1 auto;justify-content:space-between;align-items:center;min-width:0}.dock .emo{width:40px;height:40px}.dock .emo-fold{width:26px}.dock.folded .dock-emotes,.dock.folded>button{flex:1 1 0;min-width:0}.dock.folded .dock-sep{display:none}.dock-emotes .dock-text{width:100%;flex-direction:column;justify-content:center;gap:3px;padding:0 6px;font-size:11px;border-radius:16px}.dock-sep{margin:12px 2px}.popover{left:0;right:0;width:auto;transform:none;bottom:calc(100% + 8px);max-height:calc(100dvh - var(--dock-h) - 140px);overflow-y:auto}.link-btn{min-height:var(--tap)}.phrases button{min-height:var(--tap);font-size:14px}.joystick{left:max(18px,var(--safe-l));bottom:calc(var(--dock-h) + 26px + var(--safe-b))}.prompt{bottom:calc(var(--dock-h) + 166px + var(--safe-b));font-size:13px;gap:10px;padding-left:14px}.art-panel{top:auto;left:0;right:0;bottom:0;width:auto;max-height:72vh;max-height:72dvh;border-radius:20px 20px 0 0;border-bottom:none;background:var(--panel-strong);padding:22px max(16px,var(--safe-r)) calc(10px + var(--safe-b)) max(16px,var(--safe-l));gap:14px;animation-name:slideUp}.art-head h2{font-size:20px;margin-top:10px}.rose-count .big{font-size:22px}.modal-bg{padding:0;place-items:end stretch}.modal,.modal.wide{width:100%;max-height:calc(100dvh - 24px - var(--safe-t));border-radius:20px 20px 0 0;border-bottom:none;animation-name:slideUp}.modal header{padding:18px 60px 2px max(18px,var(--safe-l))}.modal-body{padding:12px max(18px,var(--safe-r)) calc(18px + var(--safe-b)) max(18px,var(--safe-l))}.grabber{display:block;position:absolute;top:7px;left:50%;transform:translate(-50%);width:36px;height:4px;border-radius:99px;background:#fff3}.upload{grid-template-columns:1fr;gap:16px}.drop{min-height:180px}.preview-frame img{max-height:220px}.reasons,.tier-list{grid-template-columns:1fr}input,textarea{font-size:16px}.intro{background:linear-gradient(0deg,#0a0a0bf0,#0a0a0bb8 55%,#0a0a0b26);padding-left:max(20px,var(--safe-l));padding-right:max(20px,var(--safe-r));padding-bottom:max(20px,calc(12px + var(--safe-b)))}.tagline{font-size:14px}.admin-item{flex-direction:column}.admin-item img{width:100%;height:180px}}@keyframes slideUp{0%{opacity:0;transform:translateY(32px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:radial-gradient(120% 90% at 50% 40%,#17171a 0%,var(--bg) 70%);opacity:0;pointer-events:none;transition:opacity .35s ease;padding:calc(24px + var(--safe-t)) 24px calc(24px + var(--safe-b))}.loading-screen.on{opacity:1;pointer-events:auto}.loading-inner{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;max-width:420px}.loading-mark{font-family:var(--serif);font-size:15px;letter-spacing:.3em;margin-right:-.6em;color:var(--muted)}.loading-text{margin:10px 0 0;font-family:var(--serif-kr);font-size:clamp(20px,5vw,26px);font-weight:500;color:var(--text);letter-spacing:-.01em}.loading-dots i{font-style:normal;animation:loading-dot 1.4s infinite both}.loading-dots i:nth-child(2){animation-delay:.2s}.loading-dots i:nth-child(3){animation-delay:.4s}@keyframes loading-dot{0%,80%,to{opacity:.15}40%{opacity:1}}.loading-sub{margin:0;font-size:13px;color:var(--text-2)}.loading-bar{margin-top:18px;width:160px;height:1px;background:var(--line);overflow:hidden}.loading-bar span{display:block;width:40%;height:100%;background:var(--text-2);animation:loading-bar 1.6s cubic-bezier(.65,0,.35,1) infinite}@keyframes loading-bar{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media(prefers-reduced-motion:reduce){.loading-bar span,.loading-dots i{animation:none}}.near-plaque{position:fixed;right:max(16px,var(--safe-r));bottom:calc(var(--dock-h) + 28px + var(--safe-b));width:min(300px,calc(100vw - 32px));z-index:11;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px 12px;text-align:left;background:var(--panel);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);animation:plaqueIn .28s cubic-bezier(.2,.8,.2,1) both}.near-plaque:hover{background:var(--panel-strong);border-color:var(--line-strong)}.np-title{font-family:var(--serif-kr);font-size:17px;font-weight:600;line-height:1.3}.np-artist{font-size:13px;color:var(--text-2)}.np-desc{margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.np-more{margin-top:8px;display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-2)}@keyframes plaqueIn{0%{opacity:0;transform:translateY(8px)}}.art-preview{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;padding:calc(76px + var(--safe-t)) calc(min(360px,100vw - 32px) + 56px + var(--safe-r)) calc(32px + var(--safe-b)) max(40px,var(--safe-l));z-index:11;display:grid;grid-template:minmax(0,1fr) / minmax(0,1fr);place-items:center;cursor:pointer;background:#0808099e;-webkit-backdrop-filter:blur(18px) saturate(.7);backdrop-filter:blur(18px) saturate(.7);animation:previewIn .4s ease both}.art-preview img{cursor:default;max-width:100%;max-height:100%;min-height:0;object-fit:contain;outline:1px solid rgba(255,255,255,.08);box-shadow:0 24px 60px #0009}@keyframes previewIn{0%{opacity:0;transform:scale(.98)}}.art-thumb{display:none}@media(max-width:720px),(pointer:coarse){.near-plaque{top:calc(70px + var(--safe-t));bottom:auto;left:50%;right:auto;transform:translate(-50%);width:min(340px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;row-gap:1px;padding:8px 12px 8px 14px;animation-name:plaqueInTop}.np-title,.np-artist{grid-column:1;min-width:0;word-break:keep-all;overflow-wrap:anywhere}.np-title{font-size:15px}.np-artist{font-size:12px}.np-desc{display:none}.np-more{grid-column:2;grid-row:1 / span 2;margin:0;font-size:0;color:var(--muted)}}@keyframes plaqueInTop{0%{opacity:0;transform:translate(-50%,-8px)}}@media(max-width:720px){.art-preview{padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;animation:none}.art-preview img{display:none}.art-panel{overscroll-behavior:contain;touch-action:pan-y}.art-thumb{display:block;width:100%;max-height:30vh;object-fit:contain;border-radius:6px;background:#ffffff08}}.login-panel{display:flex;flex-direction:column;gap:14px}.login-intro{margin:0;color:var(--text-2);font-size:14px;line-height:1.6}.login-buttons{display:flex;flex-direction:column;gap:8px}.login-btn{min-height:50px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:filter .18s ease,transform .12s ease}.login-btn:hover{filter:brightness(.96)}.login-btn:active{transform:scale(.98)}.login-btn.kakao{background:#fee500;color:#000000d9;border:0}.login-btn.google{background:#fff;color:#1f1f1f;border:1px solid #747775}.login-note{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.login-wait{display:flex;align-items:center;gap:10px;margin:4px 0;color:var(--text-2);font-size:14px}.login-upload{display:flex;flex-direction:column;gap:14px}.login-upload-thumb{width:88px;height:88px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line)}.login-upload>.link-btn{align-self:flex-start}.account-box{display:flex;flex-direction:column;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line)}.account-who{display:flex;align-items:center;gap:12px;font-size:14px}.account-who>span{display:flex;flex-direction:column;gap:2px}.account-who small{color:var(--muted);font-size:12px}.settings-link.account{margin-top:0;padding:2px 2px 14px;border-top:0;border-bottom:1px solid var(--line)}.mine{display:flex;flex-direction:column;gap:12px}.mine-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.mine-item{display:flex;gap:14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--fill)}.mine-item>img{width:76px;height:76px;flex-shrink:0;object-fit:cover;border-radius:8px}.mine-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.mine-body h3{margin:0;font-size:15px;font-weight:600;overflow-wrap:anywhere}.mine-meta{margin:0;display:flex;align-items:center;gap:4px;flex-wrap:wrap;color:var(--text-2);font-size:13px}.mine-note{margin:0;color:var(--muted);font-size:12px}.mine-body .row>*{flex:0 1 auto;min-height:36px;padding:6px 12px;font-size:13px}.badge-review{margin-left:4px;padding:2px 8px;border-radius:99px;border:1px solid rgba(227,139,128,.45);color:var(--danger);font-size:11px;font-style:normal;font-weight:600;vertical-align:middle}.mine-confirm{margin-top:8px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid rgba(227,139,128,.4);background:#e38b8014}.mine-confirm p{margin:0 0 10px;font-size:13px;line-height:1.55;color:var(--text-2);word-break:keep-all}.mine-add{align-self:stretch}.mine-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 0;color:var(--muted);text-align:center}.mine-empty p{margin:0}.link-btn.withdraw{align-self:center;margin-top:8px;font-size:12px}@media(max-width:520px){.mine-item>img{width:60px;height:60px}}.login-wait .spinner{width:18px;height:18px;flex-shrink:0}.biz-info{color:var(--muted);font-size:12px;line-height:1.7;word-break:keep-all}.biz-info p{margin:0}.biz-info .biz-lines i{font-style:normal;opacity:.6}.biz-links{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:4px!important}.biz-links a{color:var(--text-2);text-decoration:underline;text-decoration-color:#ffffff40;text-underline-offset:3px}.biz-links a:hover{color:var(--text)}.biz-info.compact{margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:10.5px;line-height:1.6}.biz-info.compact .biz-links{font-size:11px}.settings-legal .biz-info.compact{margin-top:6px}.legal{height:100%;overflow-y:auto;-webkit-user-select:text;user-select:text;touch-action:pan-y;background:var(--bg)}.legal article{max-width:760px;margin:0 auto;padding:calc(28px + var(--safe-t)) 16px calc(48px + var(--safe-b));color:var(--text-2);font-size:14px;line-height:1.75;word-break:keep-all}.legal h1{margin:18px 0 12px;color:var(--text);font-size:24px;font-weight:600}.legal h2{margin:28px 0 8px;color:var(--text);font-size:15px;font-weight:600}.legal ol,.legal ul{margin:6px 0;padding-left:22px}.legal li{margin:4px 0}.legal b,.legal a{color:var(--text)}.legal-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.legal-nav a{padding:6px 12px;border:1px solid var(--line);border-radius:99px;color:var(--text-2);font-size:13px;text-decoration:none}.legal-nav a.on{border-color:var(--text);color:var(--text)}.legal-table{width:100%;margin:8px 0;border-collapse:collapse;font-size:13px}.legal-table th,.legal-table td{padding:8px 10px;border:1px solid var(--line);text-align:left;vertical-align:top}.legal-table th{color:var(--text);font-weight:600;white-space:nowrap;background:var(--fill)}.legal footer{margin-top:40px;padding-top:16px;border-top:1px solid var(--line)}@media(max-width:520px){.legal-table th{white-space:normal}}.amounts button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 8px}.amounts button small{color:var(--muted);font-size:11px;font-weight:400}.golden-note small{color:var(--muted);font-size:12px}.pay-notice{margin-bottom:14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--fill);color:var(--text-2);font-size:12px;line-height:1.6;word-break:keep-all}.pay-notice ul{margin:0 0 10px;padding-left:18px}.pay-notice li{margin:2px 0}.pay-notice .check{margin:0}.pay-notice a{color:var(--text)}.login-note a{color:var(--text-2)}.online-wrap{position:relative}button.online{font:inherit;font-size:12px;cursor:pointer}button.online:hover{border-color:var(--line-strong);color:var(--text)}.online-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:40;min-width:220px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--panel-strong);border:1px solid var(--line);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text-2);font-size:13px;box-shadow:0 12px 32px #00000059}.online-pop-title{margin:0 0 8px;color:var(--text)}.online-pop ul{list-style:none;margin:0;padding:0}.online-pop li{display:flex;justify-content:space-between;gap:16px;padding:6px 0;border-top:1px solid var(--line)}.online-pop li b{color:var(--text);font-weight:600}.online-pop li.here span{color:var(--text)}.online-pop li em{margin-left:6px;padding:1px 6px;border-radius:99px;border:1px solid var(--line-strong);font-size:11px;font-style:normal}.online-pop-empty{margin:0;color:var(--muted)}.admin-tabs{display:flex;gap:6px;margin:8px 0 16px}.admin-tabs button{padding:8px 16px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--text-2);font:inherit;font-size:14px;cursor:pointer}.admin-tabs button.on{border-color:var(--text);color:var(--text);background:var(--fill-hover)}.admin-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.admin-filters input:not([type=checkbox]),.admin-filters select{min-height:40px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--fill);color:var(--text);font:inherit;font-size:14px}.admin-filters input:not([type=checkbox]){flex:1 1 200px}.admin-filters .ghost{min-height:40px}.check-inline{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:14px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.admin-card{display:flex;flex-direction:column;gap:3px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--fill);color:var(--text);font:inherit;text-align:left;cursor:pointer}.admin-card:hover{border-color:var(--line-strong)}.admin-card.hidden{border-color:#e38b8073}.admin-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;background:#000}.admin-img-wait{display:block;width:100%;aspect-ratio:1;border-radius:6px;background:var(--line)}.admin-item .admin-img-wait{width:120px;height:120px;flex-shrink:0}.admin-card .t{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-card .m{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-card .badges{display:flex;flex-wrap:wrap;gap:4px}.admin-card .badges em,.danger-tag{padding:1px 6px;border-radius:99px;border:1px solid rgba(227,139,128,.45);color:var(--danger)!important;font-size:11px;font-style:normal}.admin-more{display:block;margin:16px auto 0}.admin-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px;background:#000000b8}.admin-viewer-box{position:relative;width:min(920px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:16px;border-radius:var(--radius);background:var(--panel-strong);border:1px solid var(--line)}.admin-viewer-box .close{position:absolute;top:10px;right:10px;z-index:1}.admin-viewer-box img{display:block;max-width:100%;max-height:62vh;margin:0 auto 12px;border-radius:8px;object-fit:contain;background:#000}.admin-viewer-box h2{margin:0 0 4px;font-size:18px}.admin-viewer-box p{margin:4px 0}.admin-viewer-box .desc{color:var(--text-2);white-space:pre-wrap}.admin-viewer-box .row{margin-top:12px}.admin-users{display:flex;flex-direction:column;gap:8px}.admin-user{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--fill)}.admin-user.banned{opacity:.75}.admin-user p{margin:4px 0 0;font-size:13px}.admin-user .row>*{flex:0 1 auto}.immersion{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(ellipse 62% 58% at 50% 46%,transparent 55%,rgba(6,5,4,.72) 100%)}.immersion.on{opacity:1;transition:opacity 2.4s ease}.immersion-label{position:absolute;left:50%;bottom:calc(40px + var(--safe-b));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text);text-shadow:0 1px 12px rgba(0,0,0,.6);white-space:nowrap}.immersion-label b{font-family:var(--serif);font-weight:500;font-size:20px;letter-spacing:.02em}.immersion-label span{font-size:13px;color:var(--text-2);letter-spacing:.08em}.immersion.on .immersion-label{animation:immersion-label 2.4s ease .6s both}@keyframes immersion-label{0%{opacity:0;transform:translate(-50%,12px)}}.topbar,.dock,.hint-pill,.near-plaque,.joystick,.prompt{transition:opacity .3s ease}body.immersed .topbar,body.immersed .dock,body.immersed .hint-pill,body.immersed .near-plaque,body.immersed .joystick,body.immersed .jump-btn,body.immersed .prompt{opacity:0;pointer-events:none;transition:opacity 1.6s ease}.passport{display:flex;flex-direction:column;gap:14px}.passport-lead{margin:0;font-size:13px}.stamps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.stamps li{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.stamp-seal{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1.5px dashed var(--line-strong);color:var(--muted);font-family:var(--serif);font-size:15px}.stamps li.on .stamp-seal{border:1.5px solid #c9a35b;background:radial-gradient(circle,#c9a35b47,#c9a35b14);color:#f2c66d;transform:rotate(-8deg)}.stamps b{font-size:12px;font-weight:600}.stamps small{font-size:10.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.passport-h{margin:6px 0 0;font-size:14px;font-weight:600}.collection{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.collection-item{display:flex;flex-direction:column;gap:3px;padding:0;border:0;background:none;color:var(--text);text-align:left;font:inherit;cursor:pointer}.collection-item img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:#000;margin-bottom:3px}.collection-item .t{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collection-item .m{font-size:11.5px;color:var(--muted);display:inline-flex;align-items:center;gap:3px}.collection-item:hover .t{text-decoration:underline;text-underline-offset:3px}@media(max-width:420px){.stamps{grid-template-columns:repeat(3,1fr);row-gap:12px}}.online-invite{width:100%;margin-top:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;font-size:13px}.invite-card .invite-ico{width:56px;height:56px;flex-shrink:0;border-radius:6px;display:grid;place-items:center;background:#f2c66d1f;color:#f2c66d}.emote-pop{padding:10px 8px}.emote-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}.emote-grid button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0 6px;border:0;border-radius:12px;background:none;color:var(--text);font:inherit;font-size:10.5px}.emote-grid button span{color:var(--muted);white-space:nowrap}.emote-grid button:active{background:var(--fill);transform:scale(.94)}.view-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px}.view-pick button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 10px 16px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--fill);color:var(--text);font:inherit;text-align:center;cursor:pointer;transition:border-color .18s}.view-pick button:hover,.view-pick button.on{border-color:var(--line-strong)}.view-pick .vp-ico{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#f2c66d1f;color:#f2c66d}.view-pick b{font-size:15px}.view-pick small{font-size:12px;color:var(--muted);line-height:1.45}.view-pick-note{margin:12px 0 0;font-size:12px;color:var(--muted);text-align:center}.online-sheet-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px;background:#08070680;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease both}.online-pop.center{position:relative;top:auto;right:auto;width:min(340px,100%);padding:20px 18px 16px;font-size:14px;border-radius:var(--radius);animation:rise .25s ease both}.online-pop.center .online-pop-title{padding-right:28px;font-size:15px}.online-pop-close{position:absolute;top:10px;right:10px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:none;color:var(--text-2)}.online-pop.center .online-invite{min-height:44px;margin-top:14px}.jump-btn{position:fixed;right:max(24px,var(--safe-r));bottom:calc(var(--dock-h) + 66px + var(--safe-b));z-index:10;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#10101252;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text);touch-action:none;transition:opacity .3s ease}.jump-btn:active{transform:scale(.92);background:#ffffff24}
