@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-wght-normal-CGKlZYBf.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-wght-normal-DLqwHbi6.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-wght-normal-e3e57Shi.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-wght-normal-CO1l-giJ.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-wght-normal-LcSrhZ7T.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-wght-normal-BnEbWgdZ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-wght-normal-DLxlUchJ.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#eddebd;--paper-muted:#a1917a;--paper-faint:#8a8074;--paper-hud:#f6f2ea;--brass-bright:#e2c489;--brass:#c9a45e;--brass-fill:#cba757;--brass-dim:#8a6d38;--brass-ink:#1e1504;--scrim:radial-gradient(circle at 50% 42%, #160f099e, #060402f2);--surface:#17120d;--surface-raised:#1e1811;--surface-well:#291f17;--surface-sunken:#00000047;--surface-hover:#f2ece10f;--surface-active:#f2ece11a;--hud:#120d09b8;--hud-strong:#0e0a06e6;--stage:radial-gradient(ellipse 76% 46% at 50% 92%, #0000008c, transparent 72%), radial-gradient(circle at 50% 36%, #453728, #16110b);--stage-rim:inset 0 0 0 1px #00000080, inset 0 1px 0 #fff4e00f;--edge:#f2ece117;--edge-strong:#524029;--edge-brass:#c3a26666;--danger:#e8908a;--success:#8fc99a;--build:#7ba3c9;--build-line:#7ba3c9d9;--build-glow:#7ba3c942;--build-edge:#7ba3c98c;--build-surface:#101b26b8;--font-display:"Literata Variable", Georgia, "Times New Roman", serif;--font-ui:"Inter Variable", system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", monospace;--t-micro:10px;--t-xs:11px;--t-sm:12px;--t-base:13px;--t-md:15px;--t-lg:17px;--t-xl:21px;--t-display:32px;--track-display:-.02em;--track-tight:-.01em;--track-caps:.11em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--r-sm:6px;--r-md:9px;--r-lg:14px;--r-pill:999px;--shadow-panel:0 1px 2px #00000080, 0 10px 28px #00000073, 0 36px 72px #0000006b;--shadow-pop:0 1px 2px #00000073, 0 6px 18px #0006;--lit-edge:inset 0 1px 0 #fff4e012;--ease:cubic-bezier(.2, 0, 0, 1);--dur-fast:.11s;--dur:.18s;--panel-max-w:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - var(--s-5));--panel-max-h:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--s-5))}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}html,body,#root{overscroll-behavior:none;width:100%;height:100%;margin:0;padding:0;overflow:hidden}@supports (height:100dvh){html,body,#root{height:100dvh}}body{font-family:var(--font-ui);color:var(--paper);font-feature-settings:"kern" 1, "calt" 1;-webkit-font-smoothing:antialiased}canvas{touch-action:none;display:block}*{scrollbar-width:thin;scrollbar-color:var(--edge-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--r-pill);background:var(--edge-strong);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--paper-faint);background-clip:content-box}.tnum{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--brass);outline-offset:2px;border-radius:var(--r-sm)}.pause-screen{padding:calc(var(--s-6) + env(safe-area-inset-top)) calc(var(--s-6) + env(safe-area-inset-right)) calc(var(--s-6) + env(safe-area-inset-bottom)) calc(var(--s-6) + env(safe-area-inset-left));color:var(--paper);font:400 var(--t-md) / 1.5 var(--font-ui);background:var(--scrim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pause-card{width:min(560px,100%);max-height:100%;padding:var(--s-7) var(--s-7) var(--s-6);border:1px solid var(--edge);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-panel), var(--lit-edge);flex-direction:column;display:flex;overflow-y:auto}.pause-card.wide{width:min(880px,100%);overflow:hidden}.pause-header{text-align:center}.pause-header h1{font-family:var(--font-display);font-size:var(--t-display);letter-spacing:var(--track-display);color:var(--paper);margin:0;font-weight:600;line-height:1.05}.pause-header h1.wordmark{justify-content:center;align-items:center;gap:var(--s-3);display:flex}.pause-header h1.wordmark svg{flex:none;width:auto;height:.92em}.pause-header p{max-width:42ch;margin:var(--s-3) auto 0;font-size:var(--t-base);color:var(--paper-muted);line-height:1.55}.pause-buttons{gap:var(--s-2);margin-top:var(--s-6);display:flex}.pause-buttons.stacked{flex-direction:column}.pause-buttons.stacked .pause-button{padding:13px var(--s-4);flex:none}.pause-card.wide>.pause-buttons{align-items:center}.pause-card.wide>.pause-buttons .pause-button{min-width:200px}.pause-button{padding:12px var(--s-4);border:1px solid var(--edge-strong);border-radius:var(--r-md);color:var(--paper);font:500 var(--t-base) / 1 var(--font-ui);letter-spacing:var(--track-tight);background:var(--surface-well);box-shadow:var(--lit-edge);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex:1}.pause-button:hover{border-color:var(--paper-faint);background:var(--surface-active)}.pause-button.primary{color:var(--brass-ink);background:var(--brass-fill);box-shadow:var(--lit-edge);transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border:none;flex:1.4;font-weight:600}.pause-button.primary:hover{background:var(--brass-bright)}.pause-button.primary:active{transform:translateY(1px)}.menu-layout{gap:var(--s-7);margin-top:var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--edge);grid-template-columns:1fr 320px;min-height:0;display:grid;overflow-y:auto}.menu-layout .pause-buttons{margin-top:0}@media (width<=720px){.menu-layout{grid-template-columns:1fr}}.library-stats{gap:var(--s-4);padding:var(--s-5);border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--lit-edge);flex-direction:column;align-self:start;display:flex}.library-stats h2{font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.library-stats dl{gap:var(--s-3);flex-direction:column;margin:0;display:flex}.stat-row{justify-content:space-between;align-items:baseline;gap:var(--s-3);font-size:var(--t-base);display:flex}.stat-row dt{color:var(--paper-muted)}.stat-row dd{align-items:center;gap:var(--s-2);color:var(--paper);font-variant-numeric:tabular-nums;margin:0;display:flex}.stars{font-size:var(--t-sm);color:var(--paper-faint);opacity:.35;gap:1px;line-height:1;display:inline-flex}.stars .on{color:var(--paper);opacity:1}.stars.ratable{gap:var(--s-1);font-size:var(--t-lg);opacity:1}.stars.ratable button{color:var(--paper-faint);font-size:inherit;cursor:pointer;opacity:.4;transition:color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);background:0 0;border:none;padding:0;line-height:1}.stars.ratable button.on,.stars.ratable:hover button{color:var(--brass-bright);opacity:1}.stars.ratable button:hover~button{color:var(--paper-faint);opacity:.4}.stars-value{font-size:var(--t-sm);color:var(--paper-muted)}.rate-library{gap:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--edge);flex-direction:column;align-items:flex-start;display:flex}.library-stats .pause-note{text-align:left;margin:0}.pause-card.collection-panel{width:min(1360px,96vw);height:min(88vh,100%);max-height:none;overflow:hidden}.collection-body{gap:var(--s-5);min-height:0;margin-top:var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--edge);flex:1;grid-template-columns:190px minmax(0,1fr) 300px;display:grid}@media (width<=1100px){.collection-body{grid-template-columns:170px minmax(0,1fr)}.collection-detail{display:none}}.collection-filters{gap:var(--s-1);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.collection-filters hr{width:100%;height:1px;margin:var(--s-2) 0;background:var(--edge);border:none}.collection-filter{padding:9px var(--s-3);border-radius:var(--r-sm);color:var(--paper-muted);font:500 var(--t-base) / 1 var(--font-ui);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000}.collection-filter:hover{color:var(--paper);background:var(--surface-hover)}.collection-filter.selected{border-color:var(--edge);color:var(--paper);background:var(--surface-active);box-shadow:var(--lit-edge)}.collection-main{gap:var(--s-3);flex-direction:column;min-height:0;display:flex}.collection-main .search{padding:11px var(--s-4);border:1px solid var(--edge-strong);border-radius:var(--r-md);color:var(--paper);font:400 var(--t-base) / 1 var(--font-ui);background:var(--surface-sunken)}.collection-main .search:focus{border-color:var(--edge-brass);outline:none}.collection-main .note{font-size:var(--t-sm);color:var(--paper-faint);margin:0}.collection-grid{gap:var(--s-3);min-height:0;padding:var(--s-1) var(--s-1) var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));align-content:start;display:grid;overflow-y:auto}.collection-card{position:relative}.collection-card-face{gap:var(--s-1);width:100%;padding:var(--s-2);border-radius:var(--r-md);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;flex-direction:column;display:flex}.collection-card-face:hover{background:var(--surface-hover)}.collection-card.selected .collection-card-face{border-color:var(--edge);background:var(--surface-active);box-shadow:var(--lit-edge)}.collection-cover{aspect-ratio:3/4;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px #00000059, var(--lit-edge);align-items:flex-end;display:flex;position:relative;overflow:hidden}.collection-cover img{object-fit:cover;width:100%;height:100%;display:block}.collection-cover-title{padding:var(--s-2);font:600 var(--t-sm) / 1.2 var(--font-display);letter-spacing:var(--track-tight);color:#fff;text-shadow:0 1px 3px #000000bf;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.collection-card-title{font:500 var(--t-sm) / 1.3 var(--font-ui);color:var(--paper);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collection-card-author{font-size:var(--t-xs);color:var(--paper-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collection-star{top:var(--s-3);right:var(--s-3);border-radius:var(--r-pill);width:26px;height:26px;color:var(--paper-hud);font-size:var(--t-base);opacity:0;cursor:pointer;transition:opacity var(--dur-fast) var(--ease);background:#00000073;border:none;line-height:1;position:absolute}.collection-card:hover .collection-star,.collection-star:focus-visible,.collection-star.on{opacity:1}.collection-star.on{color:var(--brass-bright)}.collection-detail{gap:var(--s-3);padding:var(--s-5);border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--lit-edge);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.collection-detail.empty{text-align:center;justify-content:center;align-items:center}.collection-detail .note{font-size:var(--t-sm);color:var(--paper-faint);margin:0}.collection-detail h3{font:600 var(--t-lg) / 1.2 var(--font-display);letter-spacing:var(--track-tight);color:var(--paper);margin:0}.collection-detail .byline{font-size:var(--t-sm);color:var(--paper-muted);margin:0}.collection-cover.large{flex:none;align-self:center;width:150px}.collection-cover.large .collection-cover-title{padding:var(--s-3);font-size:var(--t-base);-webkit-line-clamp:4}.collection-detail dl{gap:var(--s-2);flex-direction:column;margin:0;display:flex}.collection-note{padding-left:var(--s-3);border-left:2px solid var(--edge-brass);font:400 var(--t-base) / 1.5 var(--font-display);color:var(--paper-muted);margin:0}.collection-actions{gap:var(--s-2);padding-top:var(--s-3);flex-direction:column;margin-top:auto;display:flex}.collection-actions .pause-button,.collection-actions .order{flex:none;width:100%}.pause-card.collection-panel>.pause-buttons .pause-button.primary{border:1px solid var(--edge-strong);color:var(--paper);background:var(--surface-well);box-shadow:var(--lit-edge);font-weight:500}.pause-card.collection-panel>.pause-buttons .pause-button.primary:hover{border-color:var(--paper-faint);background:var(--surface-active)}.controls-sheet{gap:var(--s-7);margin-top:var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--edge);grid-template-columns:1fr 1fr;min-height:0;display:grid;overflow-y:auto}@media (width<=720px){.controls-sheet{grid-template-columns:1fr}}.control-column{gap:var(--s-6);flex-direction:column;min-width:0;display:flex}.control-group h2{margin:0 0 var(--s-3);font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint)}.control-group dl{margin:0}.control-row{align-items:baseline;gap:var(--s-3);padding:var(--s-1) 0;grid-template-columns:132px 1fr;display:grid}.control-row dt{flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:3px;display:flex}.control-row dd{font-size:var(--t-sm);color:var(--paper-muted);margin:0;line-height:1.5}.control-row kbd{border:1px solid var(--edge-strong);border-radius:var(--r-sm);min-width:10px;color:var(--paper);font:600 var(--t-xs) / 1 var(--font-mono);background:var(--surface-active);white-space:nowrap;border-bottom-color:#0009;padding:3px 6px;display:inline-block}.control-row dt em{font-size:var(--t-micro);color:var(--paper-faint);margin-right:3px;font-style:normal}.lock-error{margin:var(--s-4) 0 0;font-size:var(--t-sm);color:var(--danger);line-height:1.5}.guide-sheet{gap:var(--s-4);margin:var(--s-6) 0 0;padding:var(--s-6) 0 0;border-top:1px solid var(--edge);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.guide-steps,.guide-extras{gap:var(--s-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.guide-section-title{font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.guide-extras+.guide-section-title,.guide-steps+.guide-section-title{margin-top:var(--s-5);padding-top:var(--s-5);border-top:1px solid var(--edge)}.guide-extras{padding-left:calc(26px + var(--s-4))}.guide-step{align-items:start;gap:var(--s-4);grid-template-columns:26px 1fr;display:grid}.guide-mark{border:1px solid var(--edge-strong);width:26px;height:26px;color:var(--paper-faint);font:600 var(--t-sm) / 1 var(--font-ui);background:var(--surface-well);box-shadow:var(--lit-edge);border-radius:50%;justify-content:center;align-items:center;display:flex}.guide-step.done .guide-mark{border-color:var(--edge-brass);color:var(--brass-bright)}.guide-body h3{font:600 var(--t-md) / 1.3 var(--font-display);letter-spacing:var(--track-tight);color:var(--paper);margin:0}.guide-step.done .guide-body h3{color:var(--paper-muted)}.guide-how{margin:var(--s-2) 0 0;font-size:var(--t-base);color:var(--paper-hud);line-height:1.55}.guide-detail{margin:var(--s-2) 0 0;font-size:var(--t-sm);color:var(--paper-muted);line-height:1.6}.menu-link{padding:var(--s-2) var(--s-3);border:1px solid var(--edge);border-radius:var(--r-sm);font:400 var(--t-xs) / 1.4 var(--font-mono);color:var(--paper-faint);background:var(--surface-sunken);word-break:break-all;-webkit-user-select:all;user-select:all;display:block}.menu-join{gap:var(--s-2);display:flex}.menu-input{min-width:0;padding:11px var(--s-3);border:1px solid var(--edge-strong);border-radius:var(--r-md);color:var(--paper);font:400 var(--t-base) / 1 var(--font-ui);background:var(--surface-sunken);transition:border-color var(--dur-fast) var(--ease);flex:1}.menu-input::placeholder{color:var(--paper-faint)}.menu-input:focus-visible{border-color:var(--brass);outline:none}.pause-section{gap:var(--s-2);margin-top:var(--s-7);padding-top:var(--s-5);border-top:1px solid var(--edge);flex-direction:column;display:flex}.pause-note{margin:0 0 var(--s-1);font-size:var(--t-sm);text-align:center;color:var(--paper-faint);line-height:1.5}.pause-section .pause-button{padding:var(--s-2) var(--s-3);font-size:var(--t-sm)}.menu-error{font-size:var(--t-sm);text-align:center;color:var(--danger);margin:0;line-height:1.5}.menu-join .pause-button{flex:none}.menu-said{font-size:var(--t-sm);text-align:center;color:var(--paper);margin:0;line-height:1.5}.feedback-form{gap:var(--s-2);flex-direction:column;display:flex}.feedback-box{min-height:8em;padding:var(--s-3);resize:vertical;line-height:1.5}.feedback-bar{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.feedback-count{font-size:var(--t-xs);font-variant-numeric:tabular-nums;color:var(--paper-faint)}.feedback-count.over{color:var(--danger)}.coffee-link{padding:var(--s-2) var(--s-3);border:1px solid var(--edge-strong);border-radius:var(--r-md);box-shadow:var(--lit-edge);background:var(--surface-well);color:var(--brass-bright);font-size:var(--t-sm);text-align:center;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);text-decoration:none;display:block}.coffee-link:hover{border-color:var(--brass-dim);background:var(--surface-active)}.menu-confirm{gap:var(--s-2);display:flex}.menu-confirm .pause-button{flex:1}.pause-note.warn{color:var(--danger)}.pause-button.danger{color:var(--danger);border-color:#e8908a73}.pause-button.danger:hover{border-color:var(--danger);background:#e8908a1f}.pause-button:disabled{opacity:.4;cursor:default}.cloud-loading{z-index:20;background:radial-gradient(circle at 50% 42%,#140e09cc,#070503f5);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cloud-loading-text{color:var(--brass-bright);font:400 var(--t-lg) / 1 var(--font-display);letter-spacing:var(--track-tight);animation:1.6s ease-in-out infinite cloud-loading-pulse}@keyframes cloud-loading-pulse{0%,to{opacity:.45}50%{opacity:.95}}.chat{left:var(--s-5);bottom:calc(var(--s-5) + var(--s-8) + var(--s-2));z-index:12;gap:var(--s-2);max-width:min(440px,60vw);font:400 var(--t-sm) / 1.45 var(--font-ui);flex-direction:column;display:flex;position:fixed}.chat-log{pointer-events:none;flex-direction:column;gap:3px;display:flex}.chat-log-open{max-height:40vh;padding:var(--s-2) var(--s-3);border-radius:var(--r-md);background:var(--hud);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;overflow-y:auto}.chat-line{text-shadow:0 1px 3px #000000e6;color:var(--paper-hud)}.chat-name{margin-right:var(--s-2);font-weight:600}.chat-text{word-break:break-word}.chat-input-row{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border:1px solid var(--edge-brass);border-radius:var(--r-md);background:var(--hud-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex}.chat-input-name{font-size:var(--t-xs);flex:none;font-weight:600}.chat-input{min-width:0;color:var(--paper);font:400 var(--t-base) / 1 var(--font-ui);background:0 0;border:none;flex:1}.chat-input:focus-visible{outline:none}.chat-input::placeholder{color:var(--paper-faint)}.editor-badge{top:var(--s-4);left:var(--s-4);z-index:20;padding:5px var(--s-3);border:1px solid var(--build-edge);border-radius:var(--r-sm);color:var(--build);font:600 var(--t-micro) / 1 var(--font-mono);letter-spacing:var(--track-caps);text-transform:uppercase;background:var(--build-surface);pointer-events:none;position:fixed}.editor-facts{gap:var(--s-3);flex-direction:column;margin:0;display:flex}.debug-badge{right:var(--s-4);bottom:var(--s-4);z-index:20;padding:5px var(--s-3);border-radius:var(--r-sm);color:var(--danger);font:600 var(--t-micro) / 1 var(--font-mono);letter-spacing:var(--track-caps);text-transform:uppercase;pointer-events:none;background:#1c0c0ab3;border:1px solid #e8908a66;position:fixed}.visitor-banner{top:var(--s-4);z-index:10;padding:7px var(--s-4);border:1px solid var(--edge-brass);border-radius:var(--r-pill);color:var(--brass-bright);font:500 var(--t-xs) / 1 var(--font-ui);background:var(--hud);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;white-space:nowrap;position:fixed;left:50%;transform:translate(-50%)}.note-card{gap:var(--s-4);width:min(520px,100%);padding:var(--s-6);border:1px solid var(--edge);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-panel), var(--lit-edge);flex-direction:column;display:flex}.note-card h2{font-family:var(--font-display);font-size:var(--t-xl);letter-spacing:var(--track-tight);color:var(--paper);margin:0;font-weight:600;line-height:1.15}.note-book{margin:var(--s-1) 0 0;font-size:var(--t-base)}.note-book span{color:var(--paper-muted)}.note-card textarea{min-height:140px;padding:var(--s-3);border:1px solid var(--edge-strong);border-radius:var(--r-md);resize:vertical;color:var(--paper);font:400 var(--t-base) / 1.6 var(--font-display);background:var(--surface-sunken);transition:border-color var(--dur-fast) var(--ease)}.note-card textarea::placeholder{color:var(--paper-faint)}.note-card textarea:focus-visible{border-color:var(--brass);outline:none}.note-footer{font-size:var(--t-xs);color:var(--paper-faint);text-align:center;margin:0}.action-hint{bottom:var(--s-7);padding:var(--s-2) var(--s-4);border:1px solid var(--edge);border-radius:var(--r-pill);color:var(--paper-hud);font:400 var(--t-base) / 1 var(--font-ui);background:var(--hud);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-pop);white-space:nowrap;pointer-events:none;position:fixed;left:50%;transform:translate(-50%)}.charge-meter{border-radius:var(--r-pill);background:var(--hud);opacity:0;pointer-events:none;width:160px;height:6px;position:fixed;bottom:68px;left:50%;overflow:hidden;transform:translate(-50%)}.charge-meter-fill{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--success), var(--brass-bright), var(--danger));transform-origin:0;width:100%;height:100%;transform:scaleX(0)}.crosshair{mix-blend-mode:difference;pointer-events:none;background:#fff;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;position:fixed;top:50%;left:50%}kbd{border:1px solid var(--edge-strong);border-radius:var(--r-sm);min-width:9px;color:var(--paper);font:600 var(--t-xs) / 1 var(--font-mono);background:var(--surface-active);white-space:nowrap;border-bottom-color:#0000008c;padding:2px 6px;display:inline-block}.build-frame{z-index:5;pointer-events:none;box-shadow:inset 0 0 0 3px var(--build-line), inset 0 0 46px 8px var(--build-glow);animation:2.4s ease-in-out infinite build-frame-pulse;position:fixed;inset:0}@keyframes build-frame-pulse{0%,to{opacity:.72}50%{opacity:1}}html.quality-low .build-frame{opacity:.85;animation:none}html.quality-low .build-badge,html.quality-low .action-hint,html.quality-low .visitor-banner,html.quality-low .chat-log-open,html.quality-low .chat-input-row{-webkit-backdrop-filter:none;backdrop-filter:none}.build-badge{top:var(--s-5);z-index:6;align-items:center;gap:var(--s-4);padding:var(--s-2) var(--s-5);border-radius:var(--r-pill);background:var(--build-surface);border:1px solid var(--build-edge);color:#dce9f4;font:400 var(--t-base) / 1 var(--font-ui);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-pop);display:flex;position:fixed;left:50%;transform:translate(-50%)}.build-badge-title{padding-right:var(--s-4);border-right:1px solid var(--build-edge);letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:700;font-size:var(--t-micro);color:var(--build)}.build-badge-keys{align-items:center;gap:var(--s-4);display:inline-flex}.build-badge-key{align-items:center;gap:var(--s-2);display:inline-flex}.build-badge-key kbd{border-color:var(--build-edge);color:var(--build);background:#7ba3c929}.build-badge-key.quiet{color:var(--paper-faint)}.build-badge-key.quiet kbd{border-color:var(--edge-strong);color:var(--paper-muted);background:var(--surface-active)}.build-enter{bottom:var(--s-5);left:var(--s-5);z-index:5;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);background:var(--hud);border:1px solid var(--build-edge);color:var(--paper);font:400 var(--t-base) / 1 var(--font-ui);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-pop);pointer-events:none;display:inline-flex;position:fixed}.build-enter kbd{border-color:var(--build-edge);color:var(--build);background:#7ba3c929;animation:2.8s ease-in-out infinite build-enter-pulse}@keyframes build-enter-pulse{0%,to{box-shadow:0 0 #7ba3c900}50%{box-shadow:0 0 0 4px #7ba3c938}}.catalogue{gap:var(--s-4);width:min(1400px, 94vw, var(--panel-max-w));max-height:min(88vh, var(--panel-max-h));padding:var(--s-6);border:1px solid var(--edge);border-radius:var(--r-lg);color:var(--paper);font:400 var(--t-md) / 1.45 var(--font-ui);background:var(--surface);box-shadow:var(--shadow-panel), var(--lit-edge);flex-direction:column;margin:auto;display:flex;position:fixed;inset:0}.catalogue header{justify-content:space-between;align-items:flex-start;gap:var(--s-4);display:flex}.catalogue h2{font-family:var(--font-display);font-size:var(--t-xl);letter-spacing:var(--track-tight);color:var(--paper);margin:0;font-weight:600;line-height:1.2}.catalogue header p{margin:var(--s-1) 0 0;max-width:60ch;font-size:var(--t-sm);color:var(--paper-muted);line-height:1.5}.header-actions{align-items:center;gap:var(--s-2);flex:none;display:flex}.tabs{border-radius:var(--r-md);background:var(--surface-sunken);align-items:center;gap:2px;padding:3px;display:flex}.tab{padding:6px var(--s-3);border-radius:var(--r-sm);color:var(--paper-muted);font:500 var(--t-sm) / 1 var(--font-ui);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none}.tab:hover{color:var(--paper)}.tab.selected{color:var(--paper);background:var(--surface-raised);box-shadow:var(--lit-edge), 0 1px 2px #00000059}.catalogue .close{border:1px solid var(--edge);border-radius:var(--r-sm);width:32px;height:32px;color:var(--paper-muted);font-size:var(--t-base);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.catalogue .close:hover{color:var(--paper);background:var(--surface-hover)}.catalogue .search{width:100%;padding:11px var(--s-4);border:1px solid var(--edge-strong);border-radius:var(--r-md);color:var(--paper);font:400 var(--t-md) / 1 var(--font-ui);background:var(--surface-sunken);transition:border-color var(--dur-fast) var(--ease)}.catalogue .search::placeholder{color:var(--paper-faint)}.catalogue .search:focus-visible{border-color:var(--brass);outline:none}.catalogue-body{gap:var(--s-5);flex:1;grid-template-columns:minmax(0,1fr) 560px;min-height:0;display:grid}@media (width<=1100px){.catalogue-body{grid-template-columns:minmax(0,1fr) 320px}}.catalogue .note{padding:var(--s-3) 2px;font-size:var(--t-sm);color:var(--paper-faint);margin:0}.catalogue .note.error{color:var(--danger)}.catalogue .note.approximate{color:var(--brass-bright)}.results{padding-right:var(--s-2);flex-direction:column;gap:2px;display:flex;overflow-y:auto}.result{gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-md);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease);background:0 0;border:none;align-items:center;display:flex}.result:hover{background:var(--surface-hover)}.result.selected{background:var(--surface-active);box-shadow:inset 2px 0 0 var(--brass)}.result .thumb{background:var(--surface-sunken);border:1px solid #00000080;border-radius:3px;flex:none;justify-content:center;align-items:center;width:38px;height:56px;display:flex;overflow:hidden}.result .thumb img{object-fit:cover;width:100%;height:100%}.result .no-cover{font-size:var(--t-lg);color:var(--paper-faint)}.result-text{flex-direction:column;gap:1px;min-width:0;display:flex}.result-text strong{font-family:var(--font-display);font-size:var(--t-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.result-text span{font-size:var(--t-sm);color:var(--paper-muted)}.result-text .result-spec{font-size:var(--t-xs);color:var(--paper-faint)}.preview-pane{gap:var(--s-3);padding-left:var(--s-5);border-left:1px solid var(--edge);flex-direction:column;display:flex;overflow-y:auto}.preview{gap:var(--s-3);flex-direction:column;display:flex}.preview-stage{border:1px solid var(--edge);border-radius:var(--r-md);background:var(--stage);cursor:grab;touch-action:none;height:180px;position:relative}.preview-stage:active{cursor:grabbing}.preview-grab{right:var(--s-2);bottom:var(--s-2);font-size:var(--t-xs);color:var(--paper-faint);pointer-events:none;transition:opacity var(--dur-fast) var(--ease);position:absolute}.preview-stage:active .preview-grab{opacity:0}.format-label{justify-content:space-between;gap:var(--s-2);margin:0 0 var(--s-2);font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);font-weight:600;display:flex}.format-label span{letter-spacing:normal;text-transform:none;font-weight:400}.format-options{gap:var(--s-1);grid-template-columns:repeat(4,1fr);display:grid}.format{padding:var(--s-2) 2px;border:1px solid var(--edge);border-radius:var(--r-sm);color:var(--paper-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;flex-direction:column;align-items:center;gap:1px;display:flex}.format:hover{color:var(--paper);background:var(--surface-hover)}.format.selected{border-color:var(--edge-strong);color:var(--paper);background:var(--surface-active);box-shadow:var(--lit-edge)}.format strong{font-size:var(--t-xs);font-weight:600}.format span{font-size:var(--t-micro);color:var(--paper-faint)}.format em{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--brass);font-size:9px;font-style:normal}.preview-title{font-family:var(--font-display);font-size:var(--t-md);letter-spacing:var(--track-tight);margin:0;font-weight:600;line-height:1.25}.preview-author{font-size:var(--t-sm);color:var(--paper-muted);margin:0}.preview-spec{align-items:center;gap:var(--s-2);margin:var(--s-1) 0 0;font-size:var(--t-xs);color:var(--paper-faint);flex-wrap:wrap;display:flex}.preview-spec .swatch{border:1px solid #00000080;border-radius:3px;width:12px;height:12px}.faces{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.face{gap:var(--s-2);align-items:center;margin:0;display:flex}.face-image{border:1px solid #00000080;border-radius:2px;flex:none;justify-content:center;align-items:center;width:30px;height:42px;display:flex;overflow:hidden}.face-image img{object-fit:cover;width:100%;height:100%}.face figcaption{flex-direction:column;min-width:0;display:flex}.face figcaption strong{font-size:var(--t-xs);font-weight:600}.face figcaption span{font-size:var(--t-micro);color:var(--paper-faint)}.order{padding:var(--s-3);border-radius:var(--r-md);color:var(--brass-ink);font:600 var(--t-base) / 1 var(--font-ui);letter-spacing:var(--track-tight);background:var(--brass-fill);box-shadow:var(--lit-edge);cursor:pointer;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border:none}.order:hover{background:var(--brass-bright)}.order:active{transform:translateY(1px)}.modify{padding:var(--s-2);border:1px solid var(--edge-strong);border-radius:var(--r-md);color:var(--paper);font:500 var(--t-sm) / 1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0}.modify:hover{border-color:var(--paper-faint);background:var(--surface-hover)}.ordered{font-size:var(--t-xs);color:var(--success);margin:0}.catalogue footer{font-size:var(--t-xs);color:var(--paper-faint)}.catalogue.studio-panel{width:min(1500px, 96vw, var(--panel-max-w));height:min(92vh, var(--panel-max-h));max-height:none}.catalogue-body.binder{grid-template-columns:260px minmax(0,1fr) 380px}.easel-column{gap:var(--s-2);flex-direction:column;min-width:0;min-height:0;display:flex}.face-tabs{gap:var(--s-1);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.face-tab{padding:var(--s-1) var(--s-2);border:1px solid var(--edge);border-radius:var(--r-sm);color:var(--paper-muted);font:600 var(--t-xs) / 1.2 var(--font-ui);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;flex-direction:column;gap:1px;display:flex}.face-tab:hover{color:var(--paper);background:var(--surface-hover)}.face-tab span{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);font-size:9px;font-weight:400}.face-tab.painted span{color:var(--success)}.face-tab.selected{border-color:var(--edge-strong);color:var(--paper);background:var(--surface-active);box-shadow:var(--lit-edge)}.easel-window{border:1px solid var(--edge);border-radius:var(--r-sm);background:var(--surface-sunken);flex:1;min-height:0;overflow:scroll;container-type:size}.easel-window.placing .easel{cursor:move}.easel-window.pan,.easel-window.pan .easel{cursor:grab}.easel-window.pan:active,.easel-window.pan:active .easel{cursor:grabbing}.easel-frame{justify-content:center;align-items:center;width:max-content;min-width:100%;height:max-content;min-height:100%;display:flex}.easel-bar{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.easel-hint{font-size:var(--t-xs);color:var(--paper-faint);margin:0}.easel-zoom{align-items:center;gap:var(--s-2);display:flex}.easel-zoom span{min-width:5ch;font-size:var(--t-xs);font-variant-numeric:tabular-nums;text-align:center;color:var(--paper-faint);flex:none}.easel-zoom .tool{flex:none;min-width:34px}.easel{border:1px solid var(--edge-strong);border-radius:var(--r-sm);cursor:crosshair;touch-action:none;background:#e9e2d2}.tools{gap:var(--s-5);min-width:0;min-height:0;padding-right:var(--s-2);flex-direction:column;display:flex;overflow-y:auto}.tool-group{gap:var(--s-2);flex-direction:column;display:flex}.tool-group h3{font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.swatches{gap:var(--s-2);padding:var(--s-2);border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-sunken);grid-template-columns:repeat(6,1fr);display:grid}.swatch-button{aspect-ratio:1;cursor:pointer;width:100%;transition:box-shadow var(--dur-fast) var(--ease);border:1px solid #00000080;border-radius:50%}.swatch-button:hover{box-shadow:0 0 0 2px var(--edge-strong)}.swatch-button.selected{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--brass)}.custom-color{align-items:center;gap:var(--s-2);font-size:var(--t-xs);color:var(--paper-muted);cursor:pointer;display:flex}.custom-color input[type=color]{border:1px solid var(--edge-strong);border-radius:var(--r-sm);cursor:pointer;background:0 0;width:30px;height:24px;padding:0}.brush{align-items:center;gap:var(--s-3);display:flex}.brush input[type=range]{min-width:0;accent-color:var(--brass);flex:1}.brush-well{border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-sunken);flex:none;justify-content:center;align-items:center;width:68px;height:68px;display:flex}.brush-dot{border-radius:50%;flex:none;box-shadow:0 0 0 1px #00000080}.brush-size{width:34px;font-size:var(--t-xs);font-variant-numeric:tabular-nums;text-align:right;color:var(--paper-faint);flex:none}.tool-buttons{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.tool{padding:var(--s-2);border:1px solid var(--edge);border-radius:var(--r-sm);color:var(--paper-muted);font:500 var(--t-xs) / 1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0}.tool:hover{color:var(--paper);background:var(--surface-hover)}.tool.selected{border-color:var(--edge-strong);color:var(--paper);background:var(--surface-active);box-shadow:var(--lit-edge)}.tool-hint{font-size:var(--t-xs);color:var(--paper-faint);margin:0;line-height:1.45}.photo-control{flex-direction:column;gap:3px;display:flex}.photo-control span{font-size:var(--t-xs);color:var(--paper-muted);justify-content:space-between;display:flex}.photo-control em{font-variant-numeric:tabular-nums;color:var(--paper);font-style:normal}.photo-control input[type=range]{width:100%;accent-color:var(--brass)}.binder-fields{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.binder-fields label{gap:var(--s-1);min-width:0;font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);flex-direction:column;font-weight:600;display:flex}.binder-fields label.wide{grid-column:1/-1}.binder-fields input,.binder-fields select{padding:var(--s-2) var(--s-3);border:1px solid var(--edge-strong);border-radius:var(--r-sm);color:var(--paper);font:400 var(--t-base) / 1 var(--font-ui);letter-spacing:normal;text-transform:none;background:var(--surface-sunken);transition:border-color var(--dur-fast) var(--ease)}.binder-fields input:focus-visible,.binder-fields select:focus-visible{border-color:var(--brass);outline:none}.styler{width:min(680px, 90vw, var(--panel-max-w))}.styler .order{color:var(--paper);background:var(--surface-active);box-shadow:var(--lit-edge)}.styler .order:hover{background:var(--surface-hover);filter:brightness(1.4)}.owned-count{font-size:var(--t-xs);color:var(--paper-faint);min-height:1em}.styler-body{gap:var(--s-6);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.styler h3{margin:0 0 var(--s-3);font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint)}.finishes{gap:var(--s-2);grid-template-columns:repeat(auto-fill,minmax(min(110px,100%),1fr));display:grid}.finish{gap:var(--s-1);padding:var(--s-2);border:1px solid var(--edge);border-radius:var(--r-md);color:var(--paper);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;flex-direction:column;display:flex}.finish:hover{background:var(--surface-hover)}.finish.selected{border-color:var(--brass);background:var(--surface-active)}.finish img{aspect-ratio:1;border-radius:var(--r-sm);object-fit:cover;border:1px solid #00000080;width:100%}.finish strong{font:600 var(--t-xs) / 1.2 var(--font-ui)}.finish span{font-size:var(--t-micro);color:var(--paper-faint);line-height:1.35}.catalogue.shop-panel,.catalogue.inventory-panel{width:min(1280px, 95vw, var(--panel-max-w));height:min(86vh, var(--panel-max-h));max-height:none}.picker-body{gap:var(--s-5);flex:1;grid-template-columns:180px minmax(0,1fr) 300px;min-height:0;display:grid;position:relative}@media (width<=1100px){.picker-body{grid-template-columns:minmax(0,1fr) 280px}.picker-body .collection-filters{display:none}}.picker-main{gap:var(--s-3);flex-direction:column;min-height:0;display:flex}.picker-main .furniture-grid{min-height:0;padding-bottom:var(--s-3);align-content:start;overflow-y:auto}.picker-detail{gap:var(--s-3);padding:var(--s-4);border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--lit-edge);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.picker-detail.empty{text-align:center;justify-content:center;align-items:center}.picker-detail h3{font:600 var(--t-lg) / 1.2 var(--font-display);letter-spacing:var(--track-tight);color:var(--paper);margin:0}.picker-detail h4{font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.picker-stage{aspect-ratio:1;border-radius:var(--r-sm);background:var(--stage);min-height:120px;box-shadow:var(--stage-rim);overflow:hidden}.picker-stage .turntable{width:100%;height:100%}.picker-actions{gap:var(--s-2);padding-top:var(--s-3);flex-direction:column;margin-top:auto;display:flex}.picker-detail .order{width:100%;padding:var(--s-3)}.furniture-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));display:grid}.furniture-card{gap:var(--s-2);padding:var(--s-3);border:1px solid var(--edge);border-radius:var(--r-md);color:var(--paper);text-align:left;font:inherit;background:var(--surface-raised);box-shadow:var(--lit-edge);flex-direction:column;display:flex}.furniture-card.pickable{cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease)}.furniture-card.pickable:hover{border-color:var(--paper-faint)}.furniture-card.selected{border-color:var(--edge-brass);background:var(--surface-active)}.furniture-thumb{aspect-ratio:4/3;border-radius:var(--r-sm);background:var(--stage);box-shadow:var(--stage-rim);overflow:hidden}.furniture-thumb .turntable{width:100%;height:100%}.turntable{cursor:grab;touch-action:none}.turntable:active{cursor:grabbing}.furniture-card>strong{font-family:var(--font-display);font-size:var(--t-base);letter-spacing:var(--track-tight);font-weight:600;line-height:1.2}.color-chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.chip{cursor:pointer;width:22px;height:22px;transition:box-shadow var(--dur-fast) var(--ease);border:1px solid #00000080;border-radius:50%;padding:0}.chip.selected{box-shadow:0 0 0 2px var(--surface-raised), 0 0 0 4px var(--brass)}.book-info{top:var(--s-6);left:var(--s-6);width:230px;padding:var(--s-3) var(--s-4);border:1px solid var(--edge);border-radius:var(--r-md);color:var(--paper-hud);font:400 var(--t-sm) / 1.4 var(--font-ui);background:var(--hud);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-pop), var(--lit-edge);pointer-events:none;position:fixed}.book-info-title{font-family:var(--font-display);font-size:var(--t-base);letter-spacing:var(--track-tight);margin:0;font-weight:600;line-height:1.25}.book-info-author{margin:2px 0 var(--s-3);font-size:var(--t-xs);color:var(--paper-muted)}.book-info dl{gap:var(--s-2) var(--s-3);grid-template-columns:1fr 1fr;margin:0;display:grid}.book-info dt{font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint)}.book-info dd{font-size:var(--t-xs);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.book-info-note{margin:var(--s-3) 0 0;padding-top:var(--s-2);border-top:1px solid var(--edge-brass)}.book-info-note-label{font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--brass-dim);display:block}.book-info-note p{font:italic 400 var(--t-xs) / 1.5 var(--font-display);color:var(--brass-bright);overflow-wrap:break-word;margin:3px 0 0}.book-info-key{margin:var(--s-3) 0 0;padding-top:var(--s-2);border-top:1px solid var(--edge);font-size:var(--t-xs);color:var(--paper-muted)}.book-info-key kbd{margin-right:var(--s-2);border-color:var(--edge-brass);color:var(--brass-bright);border-bottom-color:#0000008c}.tutorial-card{top:var(--s-6);right:var(--s-6);z-index:8;width:250px;padding:var(--s-3) var(--s-4);border:1px solid var(--edge);border-radius:var(--r-md);color:var(--paper-hud);font:400 var(--t-sm) / 1.5 var(--font-ui);background:var(--hud);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-pop), var(--lit-edge);pointer-events:none;position:fixed}.tutorial-eyebrow{font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.tutorial-count{color:var(--brass-bright);font-variant-numeric:tabular-nums;font-weight:600}.tutorial-title{margin:var(--s-1) 0 0;font:600 var(--t-md) / 1.25 var(--font-ui);letter-spacing:var(--track-tight);color:var(--paper)}.tutorial-how{margin:var(--s-2) 0 0}.tutorial-foot{margin:var(--s-3) 0 0;padding-top:var(--s-2);border-top:1px solid var(--edge);font-size:var(--t-micro);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint)}.tutorial-card.tutorial-done .tutorial-title{color:var(--brass-bright)}.pause-card.lounge-panel{width:min(1020px,96vw);height:min(84vh,100%);max-height:none;overflow:hidden}.lounge-body{gap:var(--s-5) var(--s-7);min-height:0;margin-top:var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--edge);flex:1;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=860px){.lounge-body{grid-template-rows:minmax(0,1fr) minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}}.lounge-rooms,.lounge-companion{gap:var(--s-3);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.lounge-companion .menu-input{flex:none}.lounge-rooms h2,.lounge-companion h2{font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);margin:0}.lounge-enter{justify-content:center;align-items:center;gap:var(--s-2);padding-top:var(--s-4);border-top:1px solid var(--edge);flex-wrap:wrap;grid-column:1/-1;display:flex}.lounge-enter .pause-button{flex:none;min-width:280px}.lounge-enter .pause-note{text-align:center;flex-basis:100%;margin:0}.lounge-card{gap:var(--s-2);padding:var(--s-4);border:1px solid var(--edge-strong);border-radius:var(--r-md);background:var(--surface-well);box-shadow:var(--lit-edge);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex-direction:column;display:flex}.lounge-card:hover,.lounge-card.selected{border-color:var(--paper-faint);background:var(--surface-active)}.lounge-card.full{opacity:.6}.lounge-card-name{align-items:baseline;gap:var(--s-2);font:600 var(--t-md) / 1.2 var(--font-display);letter-spacing:var(--track-tight);color:var(--paper);display:flex}.lounge-card-name em{font:500 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--brass);font-style:normal}.lounge-card-note{font-size:var(--t-base);color:var(--paper-muted);line-height:1.5}.lounge-card-stats{gap:var(--s-3);font-size:var(--t-xs);color:var(--paper-faint);display:flex}.lounge-count{font-variant-numeric:tabular-nums}.lounge-full{color:var(--danger)}.companion-chosen{align-items:center;gap:var(--s-3);padding:var(--s-3);border:1px solid var(--edge);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--lit-edge);display:flex}.companion-chosen .pause-button{padding:8px var(--s-3);font-size:var(--t-xs);flex:none;margin-left:auto}.companion-results{gap:var(--s-1);flex-direction:column;min-height:0;display:flex}.companion-results h3{margin:var(--s-4) 0 var(--s-1);font:600 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint)}.companion-row{align-items:center;gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;display:flex}.companion-row:hover{border-color:var(--edge);background:var(--surface-hover)}.companion-thumb{background:var(--surface-sunken);width:30px;height:42px;color:var(--paper-faint);font-size:var(--t-sm);border-radius:2px;flex:none;justify-content:center;align-items:center;display:flex;overflow:hidden}.companion-thumb img{object-fit:cover;width:100%;height:100%}.companion-text{flex-direction:column;gap:2px;min-width:0;display:flex}.companion-text strong{font:500 var(--t-base) / 1.3 var(--font-display);color:var(--paper)}.companion-text span{font-size:var(--t-xs);color:var(--paper-muted)}.pause-note.quiet{font-size:var(--t-xs);color:var(--paper-faint);margin:0}.pause-card.lounge-panel>.pause-buttons .pause-button.primary{border-color:var(--edge-strong);background:var(--surface-well);color:var(--paper)}.pause-card.lounge-panel>.pause-buttons .pause-button.primary:hover{border-color:var(--paper-faint);background:var(--surface-active)}.lounge-roster{gap:var(--s-2);font-size:var(--t-base);color:var(--paper);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.lounge-roster li{align-items:center;gap:var(--s-2);display:flex}.lounge-roster em{font:500 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--paper-faint);font-style:normal}.roster-dot{border-radius:var(--r-pill);flex:none;width:8px;height:8px;box-shadow:0 0 0 1px #00000073}.touch-pad{z-index:20;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:fixed;inset:0}.touch-look{pointer-events:auto;touch-action:none;position:absolute;inset:0}.touch-stick{left:calc(var(--s-6) + env(safe-area-inset-left));bottom:calc(var(--s-6) + env(safe-area-inset-bottom));border-radius:var(--r-pill);background:var(--hud);border:1px solid var(--edge);width:132px;height:132px;box-shadow:var(--lit-edge);pointer-events:auto;touch-action:none;place-items:center;display:grid;position:absolute}html:not(.quality-low) .touch-stick{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.touch-stick-knob{border-radius:var(--r-pill);background:var(--surface-well);border:1px solid var(--edge-strong);width:58px;height:58px;box-shadow:var(--shadow-pop), var(--lit-edge);will-change:transform}.touch-actions{right:calc(var(--s-5) + env(safe-area-inset-right));bottom:calc(var(--s-5) + 14px + env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;align-items:flex-end;gap:20px;display:flex;position:absolute}.touch-actions-secondary{justify-content:flex-end;align-items:flex-end;gap:20px var(--s-3);max-width:calc(100vw - 176px - var(--s-5) - env(safe-area-inset-right) - env(safe-area-inset-left));flex-wrap:wrap;display:flex}.touch-button{pointer-events:auto;touch-action:none;border-radius:var(--r-pill);border:1px solid var(--edge-strong);background:var(--hud);width:76px;height:76px;color:var(--paper-hud);box-shadow:var(--shadow-pop), var(--lit-edge);text-shadow:0 1px 3px #000000bf;transition:transform var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);place-items:center;padding:0;display:grid;position:relative}.touch-button.small{width:58px;height:58px}.touch-button.primary{background:var(--brass-fill);border-color:var(--brass);color:var(--brass-ink);text-shadow:none}.touch-button:active{background:var(--surface-active);transform:scale(.94)}.touch-button.primary:active{background:var(--brass-bright)}.touch-button-label{font:600 var(--t-lg) / 1 var(--font-ui);letter-spacing:var(--track-tight)}.touch-button.small .touch-button-label{font-size:var(--t-md)}.touch-button-hint{margin-top:var(--s-1);font:500 var(--t-micro) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;white-space:nowrap;opacity:.8;pointer-events:none;text-indent:var(--track-caps);position:absolute;top:100%;left:50%;transform:translate(-50%)}.touch-chip{pointer-events:auto;touch-action:none;min-height:44px;padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--edge-strong);background:var(--hud);color:var(--paper-hud);font:500 var(--t-sm) / 1 var(--font-ui);letter-spacing:var(--track-caps);text-transform:uppercase;text-shadow:0 1px 3px #000000bf;box-shadow:var(--lit-edge);text-indent:var(--track-caps)}.touch-chip:active{background:var(--surface-active)}.touch-chip.build{border-color:var(--build-edge);color:var(--build)}.touch-corner{top:calc(var(--s-4) + env(safe-area-inset-top));right:calc(var(--s-4) + env(safe-area-inset-right));justify-content:flex-end;gap:var(--s-2);pointer-events:none;flex-wrap:wrap;display:flex;position:absolute}@media (width<=400px){.touch-stick{left:calc(var(--s-4) + env(safe-area-inset-left));bottom:calc(var(--s-4) + env(safe-area-inset-bottom));width:108px;height:108px}.touch-stick-knob{width:48px;height:48px}.touch-button{width:66px;height:66px}.touch-button.small{width:50px;height:50px}.touch-actions{right:calc(var(--s-4) + env(safe-area-inset-right));bottom:calc(var(--s-4) + 14px + env(safe-area-inset-bottom))}.touch-actions-secondary{gap:18px var(--s-2);max-width:calc(100vw - 140px - var(--s-4) - env(safe-area-inset-right) - env(safe-area-inset-left))}.touch-chip{padding:0 var(--s-3);font-size:var(--t-xs)}}@media (height<=480px){.touch-stick{width:108px;height:108px}.touch-stick-knob{width:48px;height:48px}.touch-button{width:62px;height:62px}.touch-button.small{width:50px;height:50px}.touch-actions{bottom:calc(var(--s-4) + 14px + env(safe-area-inset-bottom))}}@media (width<=720px){.pause-screen{padding:calc(var(--s-3) + env(safe-area-inset-top)) calc(var(--s-3) + env(safe-area-inset-right)) calc(var(--s-3) + env(safe-area-inset-bottom)) calc(var(--s-3) + env(safe-area-inset-left))}.pause-card,.pause-card.wide,.pause-card.collection-panel,.pause-card.lounge-panel{width:min(100%,96vw);max-height:100%;padding:var(--s-5) var(--s-4) var(--s-4)}.catalogue,.catalogue.styler{width:min(100%, var(--panel-max-w));max-height:var(--panel-max-h);padding:var(--s-4)}.catalogue.shop-panel,.catalogue.inventory-panel,.catalogue.studio-panel{width:min(100%, var(--panel-max-w));height:var(--panel-max-h);max-height:none;padding:var(--s-4)}.pause-card,.styler-body,.controls-sheet{scrollbar-gutter:stable}.picker-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.picker-detail{max-height:42dvh}.catalogue-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.preview-pane{max-height:38dvh;padding-left:0;padding-top:var(--s-4);border-left:none;border-top:1px solid var(--edge)}.collection-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.collection-filters{gap:var(--s-2);flex-wrap:nowrap;display:flex;overflow-x:auto}.collection-filters>*{flex:none}.finishes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1100px){.catalogue-body.binder{gap:var(--s-5);flex-direction:column;display:flex;overflow-y:auto}.tools,.easel-column,.catalogue-body.binder .preview-pane{flex:none}.tools{padding-right:0;overflow:visible}.easel-window{flex:none;height:46dvh}.catalogue-body.binder .preview-pane{max-height:none;padding-left:0;padding-top:var(--s-4);border-left:none;border-top:1px solid var(--edge);overflow:visible}.easel-bar{flex-wrap:wrap}.easel-hint{flex:1 0 100%}}html.touch-input .action-hint{bottom:calc(env(safe-area-inset-bottom) + 196px);white-space:normal;text-align:center;max-width:min(360px,62vw);line-height:1.35}html.touch-input .charge-meter{bottom:calc(env(safe-area-inset-bottom) + 240px)}html.touch-input .visitor-banner{top:calc(env(safe-area-inset-top) + var(--s-4) + 44px + var(--s-3));white-space:normal;text-align:center;max-width:calc(100vw - 2 * var(--s-4) - env(safe-area-inset-left) - env(safe-area-inset-right));line-height:1.3}html.touch-input .book-info{top:calc(env(safe-area-inset-top) + var(--s-4) + 44px + var(--s-3));left:calc(var(--s-4) + env(safe-area-inset-left));width:min(230px, calc(100vw - 2 * var(--s-4) - env(safe-area-inset-left) - env(safe-area-inset-right)))}html.touch-input .visitor-banner~.book-info{top:calc(env(safe-area-inset-top) + var(--s-4) + 44px + var(--s-3) + 48px)}html.touch-input .tutorial-card{top:calc(env(safe-area-inset-top) + var(--s-4) + 44px + var(--s-3));left:calc(var(--s-4) + env(safe-area-inset-left));right:calc(var(--s-4) + env(safe-area-inset-right));width:auto}html.touch-input .tutorial-card~.book-info{top:calc(env(safe-area-inset-top) + var(--s-4) + 44px + var(--s-3) + 150px)}html.touch-input .book-info-key kbd{display:none}html.touch-input .chat{left:calc(var(--s-4) + env(safe-area-inset-left));bottom:calc(env(safe-area-inset-bottom) + 256px);max-width:min(320px,62vw)}html.touch-input .chat.chat-open{z-index:24}html.touch-input .build-badge{display:none}@media (height<=480px){html.touch-input .action-hint{bottom:calc(env(safe-area-inset-bottom) + 170px)}html.touch-input .charge-meter{bottom:calc(env(safe-area-inset-bottom) + 206px)}html.touch-input .chat{bottom:calc(env(safe-area-inset-bottom) + 222px);max-height:34vh}}
