:root{--bg: #f6f5ed;--paper: #fffef9;--paper-soft: #eeefe5;--ink: #294237;--ink-muted: #82897b;--accent: #456a46;--accent-soft: #e9eedb;--line: #dddfce;--warm: #be7b56;--stage: #183028;--stage-glow: #6fa287;--wall-l: #dfe5cc;--wall-l2: #d4ddbf;--wall-l3: #eef0dc;--wall-r: #f5edda;--wall-r2: #ddcfb1;--wall-edge: #9eaa85;--floor: #ead1a8;--floor-glow: #d9bc90;--floor-line: #bc9c71;--floor-hi: #f6e2be;--floor-mark: #c5a87d;--floor-mark-hi: #f8e4bd;--floor-check: #ead1a8;--floor-edge: #c7ad86;--top: #c4d2a6;--top-shade: #a3b788;--top-hi: #dce4ba;--bottom: #a5af98;--bottom-hi: #cbd2b8;--bottom-dark: #7b8a76;--radius: 13px;color-scheme:only light;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;color:var(--ink);background:var(--stage);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:root:lang(ja){font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif}:root:lang(zh-Hans){font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Noto Sans SC,sans-serif}:root:lang(zh-Hant){font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,sans-serif}:root[data-theme=pink]{--stage: #5a2a3e;--stage-glow: #e89ab4;--bg: #fdf3f5;--paper: #fffafb;--paper-soft: #f8e9ee;--ink: #4a2a36;--ink-muted: #9a7f88;--accent: #c25b7f;--accent-soft: #fbe4ec;--line: #f0d6de;--warm: #c97a5a}:root[data-theme=navy]{--stage: #0f4c81;--stage-glow: #92a8d1;--bg: #f3f6fa;--paper: #fbfcfe;--paper-soft: #e8eef6;--ink: #1c3550;--ink-muted: #7d8ea3;--accent: #0f4c81;--accent-soft: #e2eaf4;--line: #d5dfeb;--warm: #c9805d}:root[data-theme=black]{--stage: #2d2c2f;--stage-glow: #939597;--bg: #f0eee9;--paper: #faf9f6;--paper-soft: #e6e3dc;--ink: #2d2c2f;--ink-muted: #8a8987;--accent: #2d2c2f;--accent-soft: #e4e1da;--line: #d9d6cf;--warm: #a47864}:root[data-theme=peach]{--stage: #b8735a;--stage-glow: #ffbe98;--bg: #fff6f0;--paper: #fffbf8;--paper-soft: #fbeadf;--ink: #5a3426;--ink-muted: #a3887c;--accent: #d9774f;--accent-soft: #ffe6d6;--line: #f3dccd;--warm: #c9805d}:root[data-theme=coral]{--stage: #7a2f2a;--stage-glow: #ff8f84;--bg: #fff4f2;--paper: #fffaf9;--paper-soft: #fce4e0;--ink: #4f2622;--ink-muted: #a3847f;--accent: #e5574a;--accent-soft: #ffe1dc;--line: #f5d5cf;--warm: #c9805d}:root[data-theme=lemon]{--stage: #5e5f61;--stage-glow: #f5df4d;--bg: #fbf9ee;--paper: #fffef8;--paper-soft: #f3efd9;--ink: #3d3b33;--ink-muted: #939597;--accent: #9c8510;--accent-soft: #faf1c2;--line: #ece5c6;--warm: #c9805d}:root[data-theme=mocha]{--stage: #4a3429;--stage-glow: #a47864;--bg: #f5efe9;--paper: #fbf8f4;--paper-soft: #ebe1d7;--ink: #3e2c23;--ink-muted: #94827a;--accent: #a47864;--accent-soft: #eadfd5;--line: #e0d3c7;--warm: #c08a5c}:root[data-theme=lavender]{--stage: #3a3b6e;--stage-glow: #9fa0d6;--bg: #f4f3fa;--paper: #fbfbfe;--paper-soft: #e9e8f5;--ink: #2f2f5a;--ink-muted: #8a8aa8;--accent: #6667ab;--accent-soft: #e5e5f4;--line: #dcdcee;--warm: #c9805d}[data-wallpaper=pink]{--wall-l: #f6d9e1;--wall-l2: #efc8d3;--wall-l3: #fbe9ee;--wall-r: #fbeee6;--wall-r2: #ecc4c8;--wall-edge: #c9939f}[data-wallpaper=blue]{--wall-l: #92a8d1;--wall-l2: #849cc8;--wall-l3: #a7badb;--wall-r: #eef2f8;--wall-r2: #b9c8e2;--wall-edge: #5f7aa8}[data-wallpaper=charcoal]{--wall-l: #5b5a5d;--wall-l2: #4f4e51;--wall-l3: #6b6a6d;--wall-r: #f0eee9;--wall-r2: #c9c6bf;--wall-edge: #2d2c2f}[data-wallpaper=peach]{--wall-l: #ffcfb3;--wall-l2: #fbbf9c;--wall-l3: #ffe0cc;--wall-r: #fff3ea;--wall-r2: #f5c9ae;--wall-edge: #d99878}[data-wallpaper=coral]{--wall-l: #ff9a8f;--wall-l2: #fa8b7f;--wall-l3: #ffb3aa;--wall-r: #fff3f0;--wall-r2: #f7c3bb;--wall-edge: #d65f53}[data-wallpaper=lemon]{--wall-l: #f5df4d;--wall-l2: #eed43a;--wall-l3: #f8e77a;--wall-r: #fbf8ec;--wall-r2: #d8d9da;--wall-edge: #939597}[data-wallpaper=mocha]{--wall-l: #a47864;--wall-l2: #976d5a;--wall-l3: #b58b77;--wall-r: #f2e8dd;--wall-r2: #d4bfac;--wall-edge: #6e4f40}[data-wallpaper=lavender]{--wall-l: #a9aad8;--wall-l2: #9c9dd0;--wall-l3: #babbe1;--wall-r: #f3f2fa;--wall-r2: #c9c9e8;--wall-edge: #6667ab}[data-floor=maple]{--floor: #f3e6cf;--floor-glow: #ead8b8;--floor-line: #d6c19c;--floor-hi: #fbf3e3;--floor-mark: #dcc8a4;--floor-mark-hi: #fdf6e8;--floor-edge: #dcc7a2;--floor-check: #f3e6cf}[data-floor=walnut]{--floor: #9c6f4e;--floor-glow: #8a5f42;--floor-line: #6e4a33;--floor-hi: #b3876a;--floor-mark: #7a5139;--floor-mark-hi: #b88d6e;--floor-edge: #73503a;--floor-check: #9c6f4e}[data-floor=gray]{--floor: #d9d4cc;--floor-glow: #cbc5bc;--floor-line: #b1aaa0;--floor-hi: #ebe7e1;--floor-mark: #bcb5ab;--floor-mark-hi: #eeebe6;--floor-edge: #b5afa5;--floor-check: #d9d4cc}[data-floor=rose]{--floor: #f2cfcf;--floor-glow: #ebc2c2;--floor-line: #e6bcbc;--floor-hi: #f7dddd;--floor-mark: #ecc5c5;--floor-mark-hi: #f8e1e1;--floor-edge: #d9aaab;--floor-check: #f2cfcf}[data-floor=sage]{--floor: #cfd8bf;--floor-glow: #c5cfb3;--floor-line: #bfc9ad;--floor-hi: #dbe2cd;--floor-mark: #c2cbb0;--floor-mark-hi: #e0e6d3;--floor-edge: #b0bb9a;--floor-check: #cfd8bf}[data-floor=navy]{--floor: #3f5478;--floor-glow: #394d6f;--floor-line: #34476a;--floor-hi: #4a6086;--floor-mark: #364a6c;--floor-mark-hi: #4d638a;--floor-edge: #2d3d5c;--floor-check: #3f5478}[data-floor=check]{--floor: #f3eee4;--floor-glow: #f3eee4;--floor-line: #f3eee4;--floor-hi: #f3eee4;--floor-mark: #f3eee4;--floor-mark-hi: #f3eee4;--floor-edge: #cbc4b8;--floor-check: #d9d0c1}.room-stage:not([data-floor=check]) .floor-check{display:none}[data-outfit=pink]{--top: #f2c4cf;--top-shade: #dca2b1;--top-hi: #fadbe2;--bottom: #c9a6ae;--bottom-hi: #e3c8ce;--bottom-dark: #9c7880}[data-outfit=peach]{--top: #f8c9a8;--top-shade: #e5a983;--top-hi: #fde0c9;--bottom: #c9ab98;--bottom-hi: #e4cdbd;--bottom-dark: #9c7f6c}[data-outfit=lemon]{--top: #f2df8c;--top-shade: #dcc46a;--top-hi: #f8ecb4;--bottom: #b8ad8a;--bottom-hi: #d6cdb0;--bottom-dark: #8a8064}[data-outfit=blue]{--top: #b5c8e8;--top-shade: #92a8d1;--top-hi: #d3e0f3;--bottom: #8e9ab0;--bottom-hi: #b9c3d4;--bottom-dark: #5f6a80}[data-outfit=lavender]{--top: #cdc6ec;--top-shade: #ada4da;--top-hi: #e2ddf5;--bottom: #a29db8;--bottom-hi: #c6c2d6;--bottom-dark: #747088}[data-outfit=black]{--top: #4a4a4f;--top-shade: #38383c;--top-hi: #66666b;--bottom: #3a3a3e;--bottom-hi: #57575c;--bottom-dark: #252528}[data-outfit=sage]{--top: #c4d2a6;--top-shade: #a3b788;--top-hi: #dce4ba;--bottom: #a5af98;--bottom-hi: #cbd2b8;--bottom-dark: #7b8a76}:root[data-mode=dark]{color-scheme:dark;--bg: color-mix(in srgb, var(--stage) 30%, #121212);--paper: color-mix(in srgb, var(--stage) 24%, #1c1c1c);--paper-soft: color-mix(in srgb, var(--stage) 30%, #262626);--ink: #ecebe4;--ink-muted: #a4a69c;--accent: color-mix(in srgb, var(--stage-glow) 80%, #fff);--accent-soft: color-mix(in srgb, var(--stage-glow) 18%, #1c1c1c);--line: color-mix(in srgb, var(--stage-glow) 20%, #2c2c2c)}:root[data-mode=dark] .room-stage{--paper: #fffef9;--ink: #294237;--accent: #456a46;--line: #dddfce}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button{border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid color-mix(in srgb,var(--accent) 52%,color-mix(in srgb,var(--ink) 4%,var(--paper)));outline-offset:2px}button,a,input,textarea{touch-action:manipulation}svg{flex-shrink:0}.desktop-stage{min-height:100dvh;padding:42px 24px;display:flex;justify-content:center;align-items:flex-start;gap:72px;background-color:var(--stage);background-image:radial-gradient(color-mix(in srgb,var(--stage-glow) 9%,transparent) .8px,transparent .8px);background-size:7px 7px}.app-shell{width:100%;max-width:414px;min-width:0;background:var(--bg);border-radius:22px;overflow:hidden;box-shadow:0 18px 80px #08170e45;border:1px solid color-mix(in srgb,color-mix(in srgb,var(--accent) 7%,var(--paper)) 17%,transparent)}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:7px;color:color-mix(in srgb,var(--accent) 58%,var(--ink))}.wordmark>span{font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:700;letter-spacing:-1.6px}.wordmark-dot{color:color-mix(in srgb,var(--accent) 66%,color-mix(in srgb,var(--ink) 9%,var(--paper)))}.header-right{display:flex;gap:2px;align-items:center}.language-picker{position:relative;height:36px;display:inline-flex;align-items:center;gap:5px;padding:0 8px;border-radius:7px;color:var(--accent);font-size:12px;font-weight:700;cursor:pointer}.language-picker:hover,.language-picker:focus-within{background:var(--accent-soft)}.language-picker select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.member-badge{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--paper);font-size:11px;font-weight:700}html[lang=en] h1{font-family:Georgia,Times New Roman,Apple SD Gothic Neo,Hiragino Sans,PingFang SC,Noto Sans KR,Noto Sans JP,sans-serif;font-size:22px;letter-spacing:-.65px}html[lang=en] .profile-kicker{font-size:7px;letter-spacing:1px}html[lang=en] .profile-address{font-size:8px}html[lang=en] .tabs button{font-size:11px;gap:6px}html[lang=en] .catalog-item>span:first-of-type{font-size:7px}.sample-badge{font-size:8px;letter-spacing:1.2px;border:1px solid color-mix(in srgb,var(--accent) 33%,var(--paper));color:color-mix(in srgb,var(--accent) 73%,color-mix(in srgb,var(--ink) 22%,var(--paper)));border-radius:3px;padding:4px 5px;font-weight:600}.icon-button{width:34px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.icon-button:hover{background:var(--accent-soft)}main{padding:0 25px}.welcome-line{display:flex;align-items:center;justify-content:space-between;height:48px;color:var(--ink-muted);font-size:10px;letter-spacing:.2px}.mode-switch{display:flex;gap:4px;align-items:center;font-size:10px;color:color-mix(in srgb,var(--accent) 57%,color-mix(in srgb,var(--ink) 53%,var(--paper)));padding:7px 0 7px 7px}.mode-switch.guest-mode{color:var(--warm)}.profile{display:flex;align-items:center;position:relative;gap:13px;padding:7px 0 21px}.avatar-stamp{width:63px;height:70px;border:1px solid color-mix(in srgb,var(--accent) 27%,color-mix(in srgb,var(--ink) 5%,var(--paper)));border-radius:21px 21px 15px 15px;background:color-mix(in srgb,var(--accent) 15%,var(--paper));position:relative;flex-shrink:0}.avatar-stamp>svg{position:absolute;top:5.5px;left:-17.5px;width:98px;height:98px;clip-path:inset(-12% 19% 40% 19%)}.profile-copy{min-width:0;padding-top:3px}.profile-kicker{font-size:10px;color:color-mix(in srgb,var(--accent) 70%,var(--paper))}h1{font-size:21px;letter-spacing:-1px;margin:6px 0 9px;font-weight:750;line-height:1.2;overflow-wrap:anywhere;padding-right:22px}.profile-address{display:flex;gap:6px;align-items:center;font-size:10px;color:color-mix(in srgb,var(--accent) 48%,color-mix(in srgb,var(--ink) 40%,var(--paper)))}.profile-address>span{color:color-mix(in srgb,var(--accent) 44%,var(--paper))}.profile-edit{position:absolute;right:-7px;top:24px;color:color-mix(in srgb,var(--accent) 50%,color-mix(in srgb,var(--ink) 30%,var(--paper)))}.mood-note{position:relative;min-height:43px;display:flex;align-items:center;gap:9px;padding:11px 12px;background:color-mix(in srgb,var(--accent) 13%,var(--paper));border:1px solid color-mix(in srgb,var(--accent) 21%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-radius:7px;font-size:11px;line-height:1.6}.mood-note:before{content:"";position:absolute;top:-5px;left:28px;width:8px;height:8px;background:color-mix(in srgb,var(--accent) 13%,var(--paper));border-left:1px solid color-mix(in srgb,var(--accent) 21%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-top:1px solid color-mix(in srgb,var(--accent) 21%,color-mix(in srgb,var(--ink) 1%,var(--paper)));transform:rotate(45deg)}.mood-label{font-family:ui-monospace,monospace;font-size:8px;letter-spacing:.7px;color:color-mix(in srgb,var(--accent) 70%,color-mix(in srgb,var(--ink) 20%,var(--paper)))}.mood-emoji{font-size:13px}.mood-sparkle{font-size:17px;margin-left:auto;color:color-mix(in srgb,var(--accent) 47%,color-mix(in srgb,var(--ink) 11%,var(--paper)))}.tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:5px;padding:24px 0 0;border-bottom:1px solid var(--line)}.tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:43px;font-size:12px;color:color-mix(in srgb,var(--accent) 37%,color-mix(in srgb,var(--ink) 40%,var(--paper)));border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--accent);border-color:var(--accent);font-weight:700}.tab-content{animation:appear .25s ease-out;min-height:420px}.section-label{display:flex;justify-content:space-between;align-items:center;font-family:ui-monospace,monospace;font-size:8px;color:color-mix(in srgb,var(--accent) 53%,color-mix(in srgb,var(--ink) 17%,var(--paper)));letter-spacing:.9px;padding:22px 1px 11px}.section-label>span:first-child{display:flex;align-items:center;gap:6px;color:color-mix(in srgb,var(--accent) 70%,color-mix(in srgb,var(--ink) 23%,var(--paper)))}.section-label>span:last-child{font-size:7px;letter-spacing:.2px}.tiny-square{width:4px;height:4px;background:color-mix(in srgb,var(--accent) 62%,var(--paper))}.room-card{background:color-mix(in srgb,var(--accent) 6%,color-mix(in srgb,var(--ink) 3%,var(--paper)));border:1px solid color-mix(in srgb,var(--accent) 24%,color-mix(in srgb,var(--ink) 4%,var(--paper)));border-radius:var(--radius);overflow:hidden;padding:13px 10px 9px;box-shadow:0 3px color-mix(in srgb,var(--accent) 16%,var(--paper))}.room-topline,.room-bottomline{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.room-topline>span:first-child{display:flex;align-items:center;gap:5px;font-size:9px;color:color-mix(in srgb,var(--accent) 64%,color-mix(in srgb,var(--ink) 25%,var(--paper)))}.live-dot{width:4px;height:4px;border-radius:50%;background:color-mix(in srgb,var(--accent) 65%,var(--paper));box-shadow:0 0 0 2px color-mix(in srgb,color-mix(in srgb,var(--accent) 65%,var(--paper)) 8%,transparent)}.room-number{font-family:ui-monospace,monospace;font-size:7px;color:color-mix(in srgb,var(--accent) 50%,color-mix(in srgb,var(--ink) 14%,var(--paper)));letter-spacing:1px}.room-stage{width:100%;aspect-ratio:360 / 290;position:relative;margin:9px 0 -1px;border-radius:8px;overflow:hidden;isolation:isolate}.room-backdrop{width:100%;height:100%;position:absolute;inset:0}.pixel-art{display:block;width:100%;height:auto;image-rendering:pixelated}.room-item{position:absolute;padding:0;transform:translate(-50%,-100%);cursor:default;transition:filter .15s,width .18s ease-out;user-select:none;-webkit-user-select:none}.room-item .pixel-art{pointer-events:none}.is-editing{border-color:color-mix(in srgb,var(--accent) 77%,color-mix(in srgb,var(--ink) 4%,var(--paper)));background:color-mix(in srgb,var(--accent) 12%,var(--paper))}.is-editing .room-item{cursor:grab;touch-action:none}.is-editing .room-item:active{cursor:grabbing}.is-editing .room-item.selected{filter:drop-shadow(0 0 2px color-mix(in srgb,var(--accent) 95%,color-mix(in srgb,var(--ink) 80%,var(--paper)))) drop-shadow(0 0 3px color-mix(in srgb,var(--accent) 7%,var(--paper)))}.room-item .pixel-art{transform:rotate(var(--angle, 0deg));transition:transform .18s ease-out}@media(prefers-reduced-motion:reduce){.room-item,.room-item .pixel-art{transition:none}}.room-item.flipped .pixel-art{transform:rotate(var(--angle, 0deg)) scaleX(-1)}.room-character{width:17%;pointer-events:none}.room-friend{width:14%;cursor:pointer}.catalog-item.chosen{border-color:color-mix(in srgb,var(--accent) 54%,var(--paper));background:color-mix(in srgb,var(--accent) 12%,var(--paper))}.room-friend .room-name-tag{left:50%;bottom:86%;white-space:nowrap}.is-editing .room-character{pointer-events:auto}.character-eyes{transform-box:fill-box;transform-origin:center;animation:tiny-blink 6.5s step-end infinite}@keyframes tiny-blink{0%,95%,99%,to{transform:scaleY(1)}96%,98%{transform:scaleY(.2)}}.character-greeting{position:absolute;top:-19px;left:50%;transform:translate(-50%);font-size:8px;white-space:nowrap;padding:5px 7px;background:color-mix(in srgb,var(--ink) 1%,var(--paper));border:1px solid color-mix(in srgb,var(--accent) 30%,color-mix(in srgb,var(--ink) 6%,var(--paper)));border-radius:6px;color:color-mix(in srgb,var(--accent) 69%,color-mix(in srgb,var(--ink) 42%,var(--paper)));box-shadow:1px 2px color-mix(in srgb,color-mix(in srgb,var(--accent) 95%,var(--paper)) 6%,transparent)}.character-greeting:after{content:"";position:absolute;bottom:-4px;left:calc(50% - 3px);width:5px;height:5px;transform:rotate(45deg);background:color-mix(in srgb,var(--ink) 1%,var(--paper));border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,color-mix(in srgb,var(--ink) 6%,var(--paper)));border-right:1px solid color-mix(in srgb,var(--accent) 30%,color-mix(in srgb,var(--ink) 6%,var(--paper)))}.room-name-tag{position:absolute;transform:translate(-50%);font-size:8px;color:color-mix(in srgb,var(--accent) 68%,color-mix(in srgb,var(--ink) 44%,var(--paper)));background:color-mix(in srgb,color-mix(in srgb,var(--accent) 3%,var(--paper)) 70%,transparent);border-radius:3px;padding:1px 6px;z-index:9000;pointer-events:none}.room-bottomline{border-top:1px dashed color-mix(in srgb,var(--accent) 24%,var(--paper));padding-top:9px;color:color-mix(in srgb,var(--accent) 56%,color-mix(in srgb,var(--ink) 20%,var(--paper)));font-size:8px}.room-bottomline>span:last-child{font-size:15px;line-height:10px}.room-tools{gap:8px;color:var(--ink)}.room-tools strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-tools .tool-buttons{display:flex;gap:10px;font-size:inherit;line-height:normal}.room-tools .text-button{padding:2px 0;color:var(--accent)}.room-adjust{padding-top:4px}.room-angle{display:flex;align-items:center;gap:8px;padding:4px 4px 0}.room-angle .adjust-label{min-width:4.5ch;font-size:10px;color:var(--ink)}.room-angle .text-button:disabled{color:color-mix(in srgb,var(--accent) 38%,color-mix(in srgb,var(--ink) 5%,var(--paper)))}.room-angle input{flex:1;min-width:0;accent-color:var(--accent)}.room-angle .text-button{padding:2px 0;color:var(--accent)}.room-angle .angle-value{min-width:4.5ch;text-align:right;font-size:10px;font-variant-numeric:tabular-nums}.room-tools .text-button:disabled{color:color-mix(in srgb,var(--accent) 38%,color-mix(in srgb,var(--ink) 5%,var(--paper)))}.room-actions{display:flex;gap:8px;margin-top:13px}.room-actions>.primary{flex:1}.room-buttons{display:flex;flex-direction:column;gap:8px;width:100%}.button{min-height:41px;display:inline-flex;justify-content:center;align-items:center;gap:7px;border-radius:7px;padding:10px 16px;font-size:11px;font-weight:650;transition:background .15s,transform .15s}.button:active{transform:translateY(1px)}.primary{background:var(--accent);color:color-mix(in srgb,var(--accent) 2%,var(--paper))}.primary:hover{background:color-mix(in srgb,var(--accent) 46%,var(--ink))}.soft{background:var(--accent-soft)}.outline{border:1px solid color-mix(in srgb,var(--accent) 29%,color-mix(in srgb,var(--ink) 1%,var(--paper)));background:color-mix(in srgb,var(--accent) 8%,var(--paper));color:color-mix(in srgb,var(--accent) 87%,color-mix(in srgb,var(--ink) 31%,var(--paper)))}.outline:hover{background:color-mix(in srgb,var(--accent) 12%,color-mix(in srgb,var(--ink) 1%,var(--paper)))}.wide{width:100%}.button-hint{font-size:9px;color:color-mix(in srgb,var(--accent) 63%,var(--paper));margin-left:auto;font-weight:400}.room-actions .outline{justify-content:flex-start}.content-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.album-preview{margin-top:29px}.eyebrow{font-size:7px;font-family:ui-monospace,monospace;letter-spacing:1.2px;color:color-mix(in srgb,var(--accent) 61%,var(--paper))}h2{margin:6px 0 0;font-size:15px;font-weight:700;letter-spacing:-.5px}.count{margin-left:3px;color:color-mix(in srgb,var(--accent) 66%,color-mix(in srgb,var(--ink) 9%,var(--paper)));font-family:Georgia,serif;font-size:12px;font-weight:400}.text-button{display:inline-flex;gap:4px;align-items:center;padding:6px 0;font-size:9px;color:color-mix(in srgb,var(--accent) 62%,color-mix(in srgb,var(--ink) 11%,var(--paper)));white-space:nowrap}.text-button:hover{color:var(--accent)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.photo-card{min-width:0;text-align:left;padding:5px 5px 0;border:1px solid color-mix(in srgb,var(--accent) 15%,color-mix(in srgb,var(--ink) 5%,var(--paper)));background:var(--paper);box-shadow:0 2px 3px #555c3910;border-radius:2px;transition:transform .2s}.photo-card:nth-child(3n+1){transform:rotate(-2deg)}.photo-card:nth-child(3n+2){transform:rotate(1.5deg)}.photo-card:nth-child(3n+3){transform:rotate(-1deg)}.photo-card:hover{transform:translateY(-3px)}.photo-image{aspect-ratio:1;overflow:hidden;position:relative;background:var(--paper-soft)}.photo-image img{width:100%;height:100%;object-fit:cover;display:block}.photo-date{display:flex;justify-content:space-between;font-family:ui-monospace,monospace;font-size:7px;color:color-mix(in srgb,var(--accent) 44%,color-mix(in srgb,var(--ink) 32%,var(--paper)));padding:9px 2px}.photo-date>span{color:color-mix(in srgb,var(--accent) 41%,color-mix(in srgb,var(--ink) 3%,var(--paper)))}.photo-card p{font-size:10px;margin:0 2px 9px;line-height:1.7;overflow-wrap:anywhere}.site-footer{text-align:center;padding:28px 0 22px}.site-footer>div{display:flex;align-items:center;justify-content:center;gap:9px;color:color-mix(in srgb,var(--accent) 52%,color-mix(in srgb,var(--ink) 4%,var(--paper)))}.site-footer>div span{width:19px;height:1px;background:color-mix(in srgb,var(--accent) 19%,color-mix(in srgb,var(--ink) 7%,var(--paper)))}.site-footer p{font-size:9px;color:color-mix(in srgb,var(--accent) 66%,color-mix(in srgb,var(--ink) 3%,var(--paper)));margin:9px 0 6px}.site-footer>span{font-size:7px;font-family:Georgia,serif;color:color-mix(in srgb,var(--accent) 44%,color-mix(in srgb,var(--ink) 9%,var(--paper)));letter-spacing:.3px}.site-footer small{display:block;font-size:8px;color:color-mix(in srgb,var(--accent) 51%,color-mix(in srgb,var(--ink) 24%,var(--paper)));margin-top:14px}.album-full,.guest-section{padding-top:25px;min-height:420px}.section-description{font-size:11px;color:color-mix(in srgb,var(--accent) 52%,color-mix(in srgb,var(--ink) 25%,var(--paper)));line-height:1.8;margin:11px 0 18px}.small-button{display:inline-flex;align-items:center;gap:4px;font-size:10px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--accent) 21%,color-mix(in srgb,var(--ink) 6%,var(--paper)));border-radius:6px;background:color-mix(in srgb,var(--accent) 9%,color-mix(in srgb,var(--ink) 2%,var(--paper)))}.fine-print{font-size:9px;color:color-mix(in srgb,var(--accent) 56%,color-mix(in srgb,var(--ink) 18%,var(--paper)));text-align:center;line-height:1.8;margin-top:18px}.photo-hidden img{opacity:.45}.hidden-badge{font-size:9px;position:absolute;bottom:5px;right:5px;border-radius:3px;padding:3px 5px;color:#fff;background:color-mix(in srgb,color-mix(in srgb,var(--accent) 48%,color-mix(in srgb,var(--ink) 85%,var(--paper))) 86%,transparent)}.item-drawer{margin-top:17px;border:1px solid var(--line);border-radius:9px;padding:13px;background:var(--paper)}.drawer-tabs{display:flex;gap:2px;margin:-4px 0 12px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.room-bubble{cursor:default}.room-bubble .character-greeting{position:relative;top:auto;left:auto;transform:none;display:block;margin-bottom:5px;font-size:9px}.is-editing .room-bubble{cursor:grab}.bubble-list{display:grid;gap:6px}.bubble-row{display:flex;gap:4px;align-items:center}.bubble-row input{flex:1;min-width:0}.layer-bubble{font-size:18px}.layer-list{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:300px;overflow-y:auto}.layer-list li{display:flex;align-items:center;gap:2px;border:1px solid color-mix(in srgb,var(--ink) 10%,var(--paper));border-radius:8px;padding:2px 4px}.layer-list li.chosen{border-color:color-mix(in srgb,var(--accent) 54%,var(--paper));background:color-mix(in srgb,var(--accent) 12%,var(--paper))}.layer-grip{flex:none;width:22px;text-align:center;cursor:grab;touch-action:none;color:var(--ink-muted);font-size:15px;padding:6px 0}.layer-list li.dragging{opacity:.55}.layer-list li.drop-before{box-shadow:0 -3px 0 var(--accent)}.layer-list li.drop-after{box-shadow:0 3px 0 var(--accent)}.layer-name{flex:1;display:flex;align-items:center;gap:8px;min-width:0;text-align:left;font-size:12px;padding:3px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-thumb{width:30px;height:30px;flex:none;display:grid;place-items:center}.layer-thumb>*{max-width:100%;max-height:100%}.drawer-tabs button{flex:1 1 auto;padding:0 4px;white-space:nowrap;min-height:38px;font-size:11px;color:var(--ink-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.drawer-tabs button.active{color:var(--accent);border-color:var(--accent);font-weight:700}.drawer-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.drawer-title strong{font-size:11px}.drawer-title>span{font-size:9px;color:var(--ink-muted)}.item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.catalog-item{position:relative;background:color-mix(in srgb,var(--accent) 4%,color-mix(in srgb,var(--ink) 5%,var(--paper)));border:1px solid color-mix(in srgb,var(--accent) 15%,color-mix(in srgb,var(--ink) 4%,var(--paper)));padding:3px 4px 9px;border-radius:6px}.catalog-item>span:first-of-type{display:block;font-size:8px;line-height:1.25;overflow-wrap:anywhere}.catalog-item:hover{background:color-mix(in srgb,var(--accent) 16%,var(--paper))}.item-plus{position:absolute;right:5px;top:2px;color:color-mix(in srgb,var(--accent) 58%,color-mix(in srgb,var(--ink) 7%,var(--paper)));font-size:12px}.item-drawer .fine-print{margin:11px 0 0;font-size:8px}.guest-flower{font-size:35px;color:color-mix(in srgb,var(--accent) 49%,var(--paper));margin-right:5px}.guest-form{background:var(--paper);padding:14px;border:1px solid color-mix(in srgb,var(--accent) 23%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-radius:10px;box-shadow:0 3px color-mix(in srgb,var(--accent) 7%,color-mix(in srgb,var(--ink) 6%,var(--paper)))}.guest-form input{display:block;width:100%;border:0;border-bottom:1px dashed color-mix(in srgb,var(--accent) 21%,var(--paper));background:transparent;padding:6px 2px 13px;font-size:11px;color:var(--ink);border-radius:0}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--accent) 44%,color-mix(in srgb,var(--ink) 14%,var(--paper)))}.guest-form textarea{display:block;width:100%;padding:15px 2px 0;resize:vertical;min-height:75px;border:0;background:transparent;font-size:11px;line-height:1.8;color:var(--ink)}.guest-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}.gallery{position:relative;height:290px;margin:6px -16px 0;perspective:800px;overflow:hidden;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.gallery.dragging{cursor:grabbing}.gallery .cover{width:220px;height:220px;margin-left:-110px;top:12px}.gallery.dragging .cover{transition:none}.comments{display:grid;gap:6px;margin:14px 0;padding-top:12px;border-top:1px dashed var(--line)}.comment{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.comment strong{margin-right:4px}.comment .text-button{padding:0 4px;font-size:14px}.comment-form{display:flex;gap:6px}.comment-form input{flex:1;min-width:0}.original-photo{display:block;width:100%;max-height:70dvh;object-fit:contain;border-radius:8px;margin-bottom:14px;background:color-mix(in srgb,var(--ink) 6%,var(--paper))}.gallery-caption{display:grid;gap:8px}.gallery-caption .diary-text{margin:0;white-space:pre-wrap}.cover{position:absolute;left:50%;top:6px;width:140px;height:140px;margin-left:-70px;padding:0;border-radius:8px;overflow:hidden;background:color-mix(in srgb,var(--accent) 12%,var(--paper));box-shadow:0 6px 16px #0002;transition:transform .35s ease,opacity .35s ease;-webkit-box-reflect:below 3px linear-gradient(transparent 62%,#ffffff40)}.cover img{width:100%;height:100%;object-fit:cover;display:block}.cover-card{display:grid;place-items:center;gap:8px;height:100%;padding:14px;font-size:11px;line-height:1.4;text-align:center;color:var(--ink)}.cover-card>span:last-child{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-quote{color:var(--ink)}.post-who{display:flex;gap:6px;align-items:center;min-width:0}.post-who .guest-avatar{width:26px;height:29px}.post-who .guest-avatar.face>svg{top:2.3px;left:-7.2px;width:40px;height:40px}.post-who>span:last-child{display:grid;min-width:0;font-size:11px}.post-who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-who time{font-size:9px;color:var(--ink-muted);font-family:ui-monospace,monospace}.news-pager{display:flex;align-items:center;gap:8px;margin-top:12px}.news-pager>span{flex:1;text-align:center;font-size:12px;color:var(--ink-muted)}.news-pager>button{min-width:40px;font-size:18px}.news-what{margin:2px 0 0;font-size:11px;color:var(--ink-muted)}.brain-score{color:var(--accent);font-size:13px}.brain-vs{color:var(--ink-muted)}.brain-vs.win,.news-what .with-music{color:var(--accent);font-weight:700}.guest-as{margin:0 0 8px;font-size:12px;color:var(--ink-muted)}.guest-as b{color:var(--accent)}.guest-form-bottom>span{font-size:9px;color:color-mix(in srgb,var(--accent) 55%,var(--paper));font-family:ui-monospace,monospace}.guest-form-bottom .button{min-height:34px;font-size:10px;padding:8px 12px}.guest-entries{margin-top:20px}.guest-entry{display:flex;gap:12px;padding:18px 0;border-bottom:1px dashed color-mix(in srgb,var(--accent) 21%,color-mix(in srgb,var(--ink) 3%,var(--paper)))}.guest-avatar{width:38px;height:42px;border-radius:13px 13px 9px 9px;display:grid;place-items:center;font-size:14px;position:relative;flex-shrink:0;border:1px solid #00000008}.guest-avatar.peach{background:#f0e2cf;color:#b6966d}.guest-avatar.sage{background:color-mix(in srgb,var(--accent) 16%,color-mix(in srgb,var(--ink) 2%,var(--paper)));color:color-mix(in srgb,var(--accent) 69%,var(--paper))}.guest-avatar.butter{background:#ece7c7;color:#a99c55}.guest-avatar.face>svg{position:absolute;top:3.3px;left:-10.5px;width:59px;height:59px;clip-path:inset(-12% 19% 40% 19%)}.guest-avatar>span{position:absolute;bottom:-5px;right:-4px;font-size:15px;text-shadow:1px 1px var(--bg)}.guest-entry-body{flex:1;min-width:0}.guest-entry-heading{display:flex;justify-content:space-between;align-items:center}.guest-entry-heading strong{font-size:11px}.guest-entry-heading time{color:color-mix(in srgb,var(--accent) 47%,color-mix(in srgb,var(--ink) 9%,var(--paper)));font-family:ui-monospace,monospace;font-size:8px}.guest-entry-body p{font-size:11px;line-height:1.9;margin:9px 0 3px;color:color-mix(in srgb,var(--accent) 52%,color-mix(in srgb,var(--ink) 58%,var(--paper)));overflow-wrap:anywhere}.entry-actions{display:flex;justify-content:flex-end;gap:12px}.entry-actions .text-button{font-size:8px}.empty-state{text-align:center;padding:45px 10px;color:color-mix(in srgb,var(--accent) 58%,color-mix(in srgb,var(--ink) 5%,var(--paper)));font-size:12px}.empty-state>svg{margin:auto}.empty-state .text-button{justify-content:center}.modal-backdrop{position:fixed;z-index:5000;inset:0;background:color-mix(in srgb,var(--ink) 79%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;padding:22px;overflow-y:auto}.modal{width:100%;max-width:373px;max-height:calc(100dvh - 44px);overflow-y:auto;border-radius:17px;padding:22px;background:var(--bg);box-shadow:0 18px 50px #0003;outline:none;animation:appear .2s ease-out}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin:-3px -8px 20px 0}.modal-heading h2{margin:0;font-size:16px}.field-label{display:block;font-size:11px;font-weight:600;margin:17px 0 9px}.field-label input,.field-label select{width:100%;display:block;padding:12px;border-radius:7px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--paper));color:var(--ink);background:var(--paper);margin-top:8px;font-size:12px;font-weight:400;min-width:0}.mood-picker{display:flex;justify-content:space-between;gap:5px}.mood-picker button{font-size:19px;width:40px;height:40px;border-radius:8px;border:1px solid transparent}.mood-picker button.chosen{background:color-mix(in srgb,var(--accent) 16%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-color:color-mix(in srgb,var(--accent) 54%,var(--paper))}.visibility-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0;font-size:13px}.font-picker{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:236px;overflow-y:auto;margin-bottom:18px}.font-picker button{display:grid;gap:2px;text-align:left;padding:8px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink) 12%,var(--paper));min-width:0}.font-picker button>span{font-size:17px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-picker small{font-size:9px;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.font-picker button.chosen{background:color-mix(in srgb,var(--accent) 16%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-color:color-mix(in srgb,var(--accent) 54%,var(--paper))}.visibility-choice{display:flex;gap:5px}.visibility-choice button{font-size:12px;padding:7px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink) 12%,var(--paper))}.visibility-choice button.chosen{background:color-mix(in srgb,var(--accent) 16%,color-mix(in srgb,var(--ink) 1%,var(--paper)));border-color:color-mix(in srgb,var(--accent) 54%,var(--paper))}.input-counter{text-align:right;color:color-mix(in srgb,var(--accent) 50%,color-mix(in srgb,var(--ink) 12%,var(--paper)));font-family:ui-monospace,monospace;font-size:9px;margin:7px 0 20px}.share-art{width:90px;margin:-7px auto 0}.share-description{text-align:center;font-size:13px;line-height:1.9;color:color-mix(in srgb,var(--accent) 64%,color-mix(in srgb,var(--ink) 17%,var(--paper)))}.share-description strong{color:var(--ink)}.share-description+.field-label input{font-size:10px}.upload-preview{max-height:280px;width:100%;object-fit:contain;background:color-mix(in srgb,var(--accent) 10%,color-mix(in srgb,var(--ink) 3%,var(--paper)));border-radius:8px}.large-photo{width:100%;max-height:53dvh;object-fit:contain;background:color-mix(in srgb,var(--accent) 10%,color-mix(in srgb,var(--ink) 4%,var(--paper)));border-radius:7px;display:block}.photo-caption{padding:17px 0 4px}.photo-caption time{font-size:9px;color:color-mix(in srgb,var(--accent) 61%,color-mix(in srgb,var(--ink) 5%,var(--paper)));font-family:ui-monospace,monospace}.photo-caption p{font-size:12px;line-height:1.8;overflow-wrap:anywhere}.photo-tools{display:flex;gap:18px;border-top:1px solid var(--line);padding-top:10px}.photo-tools>:nth-child(2){margin-left:auto}.danger{color:#ae785f}.toast{position:fixed;bottom:max(27px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:6000;width:max-content;max-width:calc(100vw - 40px);padding:13px 17px;border-radius:10px;display:flex;align-items:center;gap:7px;color:color-mix(in srgb,var(--ink) 2%,var(--paper));background:color-mix(in srgb,color-mix(in srgb,var(--accent) 22%,var(--ink)) 96%,transparent);box-shadow:0 5px 24px #10201130;font-size:11px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.desktop-note{width:160px;margin-top:150px;color:color-mix(in srgb,var(--stage-glow) 21%,color-mix(in srgb,var(--paper) 70%,var(--stage)))}.desktop-note>svg{color:color-mix(in srgb,var(--stage-glow) 43%,color-mix(in srgb,var(--paper) 61%,var(--stage)))}.desktop-note p{font-family:Georgia,serif;font-size:19px;line-height:1.6;letter-spacing:1px;margin:24px 0}.desktop-note>span{font-size:11px;line-height:2;color:color-mix(in srgb,var(--stage-glow) 24%,color-mix(in srgb,var(--paper) 43%,var(--stage)))}.note-flower{margin-top:70px;font-size:55px;color:color-mix(in srgb,var(--stage-glow) 37%,color-mix(in srgb,var(--paper) 44%,var(--stage)))}.desktop-side-note{width:160px;margin-top:100px;padding-left:25px;color:color-mix(in srgb,var(--stage-glow) 25%,color-mix(in srgb,var(--paper) 36%,var(--stage)))}.desktop-side-note>span:first-child{font-size:8px;letter-spacing:2px;line-height:1.9}.side-line{height:55px;width:1px;background:color-mix(in srgb,var(--stage-glow) 25%,color-mix(in srgb,var(--paper) 25%,var(--stage)));margin:22px 0}.desktop-side-note p{font-size:12px;line-height:2;color:color-mix(in srgb,var(--stage-glow) 19%,color-mix(in srgb,var(--paper) 58%,var(--stage)));letter-spacing:1px}.side-star{display:block;margin-top:240px;font-size:30px;color:color-mix(in srgb,var(--stage-glow) 39%,color-mix(in srgb,var(--paper) 34%,var(--stage)))}@keyframes appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:970px){.desktop-note,.desktop-side-note{display:none}}@media(max-width:520px){:root{background:var(--bg)}.desktop-stage{padding:0;background:var(--bg);display:block}.app-shell{max-width:430px;min-height:100dvh;border:0;border-radius:0;margin:0 auto;box-shadow:none}.site-header{padding:0 18px;height:72px}.wordmark{gap:5px}.wordmark>span{font-size:23px;letter-spacing:-1.2px}.wordmark svg{width:21px;height:21px}main{padding:0 23px}.site-footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}.modal-backdrop{padding:18px}.modal{max-height:calc(100dvh - 36px)}.field-label input,.field-label select,.guest-form input,.guest-form textarea{font-size:16px}.guest-form input::placeholder,.guest-form textarea::placeholder{font-size:11px}}@media(max-width:374px){main{padding:0 17px}h1{font-size:19px}.mood-note{gap:6px;font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.theme-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:9px 0 18px}.theme-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:9px 0 7px;border-radius:8px;border:1px solid transparent;font-size:10px;color:var(--ink-muted)}.theme-swatch>span{width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001a}.theme-swatch.chosen{border-color:var(--accent);color:var(--ink);font-weight:650}.theme-forest>span{background:linear-gradient(135deg,#f6f5ed 50%,#456a46 50%)}.theme-pink>span{background:linear-gradient(135deg,#fdf3f5 50%,#c25b7f 50%)}.theme-navy>span{background:linear-gradient(135deg,#f3f6fa 50%,#0f4c81 50%)}.theme-black>span{background:linear-gradient(135deg,#f0eee9 50%,#2d2c2f 50%)}.theme-peach>span{background:linear-gradient(135deg,#fff6f0 50%,#ffbe98 50%)}.theme-coral>span{background:linear-gradient(135deg,#fff4f2 50%,#ff6f61 50%)}.theme-lemon>span{background:linear-gradient(135deg,#939597 50%,#f5df4d 50%)}.theme-mocha>span{background:linear-gradient(135deg,#f5efe9 50%,#a47864 50%)}.theme-lavender>span{background:linear-gradient(135deg,#f4f3fa 50%,#6667ab 50%)}.wallpaper-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:9px 0 16px}.wallpaper-swatch,.floor-swatch,.shape-swatch,.hair-swatch,.outfit-swatch,.tone-swatch{display:flex;flex-direction:column;align-items:center;gap:5px;padding:7px 0 5px;border-radius:7px;border:1px solid transparent;font-size:9px;color:var(--ink-muted)}.wallpaper-swatch>span{width:30px;height:22px;border-radius:3px;background:linear-gradient(90deg,var(--wall-l) 50%,var(--wall-r) 50%);box-shadow:inset 0 0 0 1px var(--wall-edge),inset 0 -4px 0 var(--wall-l2)}.wallpaper-swatch.chosen,.floor-swatch.chosen,.shape-swatch.chosen,.hair-swatch.chosen,.outfit-swatch.chosen,.tone-swatch.chosen{border-color:var(--accent);color:var(--ink);font-weight:650}.floor-swatch>span{width:30px;height:22px;border-radius:3px;background:repeating-conic-gradient(var(--floor-check) 0 25%,var(--floor) 0 50%) 0 0 / 10px 9px,var(--floor);box-shadow:inset 0 0 0 1px var(--floor-line),inset 0 -5px 0 var(--floor-edge)}.shape-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin:9px 0 16px}.shape-swatch>span{width:34px;height:26px;background:linear-gradient(170deg,var(--wall-l) 55%,var(--floor) 55%);box-shadow:inset 0 0 0 1px var(--wall-edge);border-radius:3px}.shape-cube>span{clip-path:polygon(50% 0,100% 22%,100% 78%,50% 100%,0 78%,0 22%);border-radius:0}.group-chips{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:0 0 14px}.group-chips button{flex-shrink:0;white-space:nowrap;padding:5px 8px;border-radius:99px;font-size:10.5px;color:var(--ink-muted);border:1px solid var(--line)}.group-chips button.chosen{color:var(--accent);border-color:var(--accent);font-weight:700}.tone-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin:0 0 14px}.tone-swatch{text-align:center;line-height:1.3}.tone-swatch>span{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.tone-swatch[data-tone=matcha]>span{background:#9daf83}.tone-swatch[data-tone=butter]>span{background:#f2d98a}.tone-swatch[data-tone=caramel]>span{background:#b8834f}.tone-swatch[data-tone=pink]>span{background:#dfa0a2}.tone-swatch[data-tone=blue]>span{background:#93b3d6}.tone-swatch[data-tone=lavender]>span{background:#b5a2d4}.sprite-img{image-rendering:auto}.catalog-item .sprite-img{height:54px;object-fit:contain;margin:4px 0 2px}.picker-label{display:block;margin-top:9px;font-size:10px;color:var(--ink-muted)}.hair-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:9px 0 16px;max-height:178px;overflow-y:auto}.hair-swatch>img{width:100%;max-width:44px;aspect-ratio:4 / 5;object-fit:cover;object-position:top}.outfit-swatch>span{width:22px;height:22px;border-radius:5px;background:linear-gradient(var(--top) 55%,var(--bottom) 55%);box-shadow:inset 0 0 0 1px var(--bottom-dark)}.landing,.onboarding{padding:28px 25px 36px}.landing-hero{text-align:center;margin-bottom:6px}.landing-hero h1{margin:10px 0 8px;font-size:25px;letter-spacing:-.4px}.landing-hero p{margin:0;font-size:12px;color:var(--ink-muted)}.landing .room-card{pointer-events:none}.landing-points{list-style:none;padding:0;margin:22px 0;display:grid;gap:9px;font-size:12px;color:var(--ink)}.landing-points li{padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.landing-login{margin-top:8px}.login-full{width:100%;min-height:52px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:800}.login-full.kakao{background:#fee500;color:#000000d9}.login-full.line{background:#06c755;color:#fff}.login-full.google{background:#fff;color:#1f1f1f;border:1px solid #dadce0}.login-or{display:flex;align-items:center;gap:10px;margin:16px 0 12px;font-size:11px;font-weight:650;color:var(--ink-muted)}.login-or>span{flex:1;height:1px;background:var(--line)}.login-marks{display:flex;justify-content:center;gap:14px}.login-mark{min-width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;font-weight:650;color:var(--ink-muted)}.login-mark img,.login-tile{width:44px;height:44px;border-radius:10px}.login-tile{display:grid;place-items:center}.login-tile.kakao{background:#fee500}.login-tile.google{background:#fff;border:1px solid #dadce0}.diary-list{display:grid;gap:12px;margin-top:16px}.diary-intro{display:flex;align-items:flex-start;gap:10px}.diary-intro .section-description{flex:1}.view-switch{display:flex;gap:2px;flex:none;padding:2px;border:1px solid var(--line);border-radius:8px}.view-switch button{display:grid;place-items:center;width:30px;height:28px;border-radius:6px;color:var(--ink-muted)}.view-switch button.chosen{background:var(--accent-soft);color:var(--accent)}.diary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:16px -6px 0}.diary-tile{position:relative;aspect-ratio:1;padding:0;overflow:hidden;border-radius:3px;background:var(--paper)}.diary-tile img{width:100%;height:100%;object-fit:cover;display:block}.diary-tile .diary-note{height:100%}.diary-tile .tile-pin{position:absolute;top:3px;left:4px;font-size:11px}.pin-hint{margin:12px 0 4px;padding:14px;border:1px dashed var(--line);border-radius:10px;font-size:11px;line-height:1.7;color:var(--ink-muted);text-align:center}.diary-tile .tile-mark{position:absolute;top:4px;right:5px;font-size:11px;color:#fff;text-shadow:0 1px 3px #0008}.diary-page{display:grid;gap:8px;text-align:left;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:0 2px 0 var(--line)}.diary-page .photo-image{aspect-ratio:4 / 3;border-radius:6px}.diary-page .photo-date{padding:0;font-size:9px}.photo-date{flex-wrap:wrap;gap:2px 6px}.photo-date .with-music{color:var(--accent);font-weight:700;white-space:nowrap}.diary-page p,.diary-text{margin:0;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.diary-note{display:grid;place-items:center;padding:8px;background:repeating-linear-gradient(var(--paper) 0 13px,var(--line) 13px 14px)}.diary-note p{margin:0;font-size:9px;line-height:14px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.diary-input{width:100%;display:block;margin-top:8px;padding:12px;border-radius:7px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:12px;line-height:1.8;resize:vertical}.diary-photo{display:grid;gap:8px}.page-flip{display:flex;align-items:center;justify-content:space-between;margin:-4px 0 8px;font:11px ui-monospace,monospace;color:color-mix(in srgb,var(--ink) 55%,var(--paper))}.page-flip button{min-width:44px;min-height:36px;font-size:22px;line-height:1}.page-flip button:disabled{opacity:.25}.page-clip{overflow:hidden;touch-action:pan-y;margin:0 -10px}.page-track{display:flex;align-items:flex-start;will-change:transform}.page-panel{flex:0 0 100%;min-width:0;padding:0 10px;box-sizing:border-box}.photo-crop{display:grid;gap:10px}.crop-ratios{display:flex;gap:6px}.crop-ratios button{flex:1;min-height:36px;border:1px solid color-mix(in srgb,var(--ink) 14%,var(--paper));border-radius:999px;background:transparent;color:inherit;font-size:12px}.crop-ratios button.chosen{background:var(--accent);border-color:var(--accent);color:var(--paper);font-weight:700}.crop-frame{position:relative;justify-self:center;overflow:hidden;border-radius:8px;touch-action:none;cursor:grab;background:color-mix(in srgb,var(--accent) 10%,color-mix(in srgb,var(--ink) 3%,var(--paper)))}.crop-frame:active{cursor:grabbing}.crop-frame img{position:absolute;max-width:none;-webkit-user-select:none;user-select:none;pointer-events:none}.crop-zoom{display:flex;align-items:center;gap:10px;font-size:12px}.crop-zoom input{flex:1}.only-me{display:flex;align-items:center;gap:10px;margin:14px 0;padding:11px 12px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.only-me:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.only-me input{width:18px;height:18px;accent-color:var(--accent);flex:none}.only-me strong{display:block;font-size:12px}.only-me small{display:block;margin-top:3px;font-size:10px;color:var(--ink-muted)}.heart-editor-preview{display:flex;align-items:center;gap:17px;margin-bottom:14px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper-soft)}.heart-preview-art{flex:0 0 84px;width:84px}.heart-editor-preview strong{font-size:13px}.heart-editor-preview p{font-size:11px;color:var(--ink-muted);margin:5px 0 10px}.heart-editor-preview .text-button{text-decoration:underline;text-underline-offset:3px}.heart-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0 16px}.heart-options>button{min-width:0;border:1px solid var(--line);border-radius:8px;padding:6px 2px 7px;background:var(--paper);font-size:10px;color:var(--ink-muted);display:flex;flex-direction:column;align-items:center;gap:5px}.heart-options>button.chosen{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}.heart-option-art{display:block;width:54px;height:46px;overflow:hidden}.heart-options.head .heart-option-art>svg{width:72px;max-width:none;margin-left:-9px}.heart-options.body .heart-option-art{height:65px;width:64px}.heart-colors{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0 19px;padding:3px}.heart-colors button{width:27px;height:27px;border:2px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px var(--line)}.heart-colors button.chosen{box-shadow:0 0 0 2px var(--accent)}.heart-editor button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){.character-eyes{animation:none}}.gift-grid .catalog-item.chosen{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.gift-grid .catalog-item:disabled{opacity:.45;cursor:default}.gift-grid .catalog-item>.icon{color:var(--accent)}.field-label+.fine-print{text-align:left;margin-top:0}.consent-one{font-size:11px;font-weight:650;line-height:1.7;margin:18px 0 10px}.consent-box{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--paper));border-radius:9px;padding:6px 14px 10px;margin-bottom:18px}.consent-row{display:flex;align-items:center;gap:10px;min-height:44px;font-size:11px;font-weight:600;line-height:1.5;cursor:pointer;flex:1}.consent-row input{width:20px;height:20px;flex:none;accent-color:var(--accent)}.consent-all{font-weight:750;border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,var(--paper))}.consent-group{font-size:9px;font-weight:650;color:color-mix(in srgb,var(--accent) 56%,color-mix(in srgb,var(--ink) 18%,var(--paper)));margin:12px 0 0;line-height:1.6}.consent-line{display:flex;align-items:center;gap:8px}.consent-view{min-height:44px;text-decoration:underline;text-underline-offset:3px;font-size:10px}.consent-desc{font-size:9.5px;line-height:1.7;margin:-4px 0 6px 30px;color:color-mix(in srgb,var(--accent) 52%,color-mix(in srgb,var(--ink) 25%,var(--paper)))}.consent-cancel{display:flex;width:100%;justify-content:center;min-height:44px;margin-top:6px;text-decoration:underline;text-underline-offset:3px;font-size:10px}.consent-error{color:var(--accent)}.consent-legal{white-space:pre-line;font-size:10.5px;line-height:1.8;margin-bottom:18px}.my-profile{padding:14px 0 20px}.my-profile>.content-heading{margin-top:20px}.my-profile h1{margin:0;font-size:23px}.my-profile-card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:26px 16px;margin:16px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.my-profile-card>strong{font-size:20px}.my-profile-card p{color:var(--ink-muted);font-size:12px;margin:0;text-align:center}.my-profile-room{display:grid;gap:10px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px}.my-profile-room .text-button{justify-self:start}.my-profile-room select{padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:16px}.mode-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:9px 0 18px}.mode-picker button{padding:8px 0;border-radius:8px;border:1px solid var(--line);font-size:12px;color:var(--ink-muted)}.mode-picker button.chosen{border-color:var(--accent);color:var(--ink);font-weight:650;background:var(--accent-soft)}.icon-button{position:relative}.heart-badge{position:absolute;top:2px;right:1px;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:#d9534f;color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center}.connect-tabs{grid-template-columns:1fr 1fr;padding-top:6px;margin-bottom:8px}.connect-tabs .heart-badge{position:static}.connect-tabs~.picker-label{margin-top:18px}.connect-search{display:flex;gap:8px;margin:14px 0 4px}.connect-search input{flex:1;min-width:0;border:0;border-bottom:1px dashed color-mix(in srgb,var(--accent) 21%,var(--paper));background:transparent;padding:6px 2px 10px;font-size:12px;color:var(--ink);border-radius:0}.room-music{flex:none;margin-left:8px;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 9px;border-radius:999px;font-size:9px;color:var(--ink);background:color-mix(in srgb,var(--paper) 88%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--paper))}.room-music b{color:color-mix(in srgb,var(--ink) 45%,var(--paper))}.room-music.on b{color:var(--accent)}.radio-bar:not(.on){display:none}.radio-bar iframe{display:block;width:100%;border:0;border-radius:12px;margin-top:8px}.diary-music{margin-top:12px}.diary-music iframe{display:block;width:100%;border:0;border-radius:12px}.music-label{display:block;margin-bottom:6px;font-size:9px;letter-spacing:.04em;color:color-mix(in srgb,var(--accent) 61%,color-mix(in srgb,var(--ink) 5%,var(--paper)));font-family:ui-monospace,monospace}.account-card{display:grid;padding:4px 14px;margin:8px 0 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.account-me{display:flex;align-items:center;gap:12px;padding:12px 0}.account-me .avatar-stamp{flex:none}.account-me strong{display:block;font-size:17px}.account-me small,.account-row small{display:block;margin-top:2px;font-size:10px;color:var(--ink-muted);font-weight:400}.account-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:6px 0;border-top:1px dashed var(--line);font-size:13px;color:var(--ink);text-align:left;text-decoration:none;width:100%}.account-row em{font-style:normal;color:var(--ink-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55%}.account-row select{width:46%;min-width:0;flex:none;padding:6px 8px;border-radius:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:16px}.account-chip{font-size:11px;font-weight:600;padding:3px 9px;border-radius:99px;background:var(--paper-soft)}.account-tabs{display:flex;gap:6px;margin-top:14px}.account-tabs button{flex:1;min-height:40px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink-muted);font-size:13px;font-weight:700}.account-tabs button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.account-invite{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;margin:0 0 14px;border:1px dashed var(--line);border-radius:10px;font-size:12px;line-height:1.5;color:var(--ink);text-decoration:none}.account-invite b{color:var(--accent);white-space:nowrap}.switch{appearance:none;width:42px;height:24px;flex:none;border-radius:99px;background:var(--line);position:relative;cursor:pointer;transition:background .2s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(18px)}.account-delete{display:block;margin:14px auto 0;text-align:center;font-size:12px}.account-delete small{display:block;color:var(--ink-muted);font-size:10px}.pin-gate{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--bg)}.pin-gate form{width:100%;max-width:300px;display:grid;gap:10px;text-align:center}.pin-gate strong{font-family:Georgia,serif;font-size:30px;color:var(--accent)}.pin-gate small{font-size:10px;letter-spacing:3px;color:var(--ink-muted)}.pin-gate p{margin:0;font-size:13px;line-height:1.6;color:var(--ink-muted)}.pin-gate input{min-height:50px;border-radius:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:center;font-size:18px}.stats-notice{position:fixed;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:9000;width:min(400px,calc(100% - 24px));display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 10px 30px #0003;font-size:12px}.stats-notice strong{font-size:13px}.stats-notice p{margin:0;color:var(--ink-muted);line-height:1.5}.stats-notice .text-button{display:inline;padding:0;font-size:11px;text-decoration:underline}.stats-no{justify-self:center;min-height:36px;padding:0 8px;font-size:11px;color:color-mix(in srgb,var(--ink-muted) 70%,transparent);text-decoration:underline}
