@font-face{font-family:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-vietnamese-wght-normal-BKsN3ITN.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:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-latin-ext-wght-normal-B5dZ8C4S.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:Work Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/work-sans-latin-wght-normal-Bl-S9Xys.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:initial;--lightningcss-dark: ;color-scheme:light;--bower-canvas:#f5f4f0;--bower-surface:#fcfcfa;--bower-ink:#2a2420;--bower-text-secondary:#686d64;--bower-line:#dfdbd5;--bower-accent:#3a5a40;--bower-surface-elevated:#fefefd;--bower-surface-floating:#fffffe;--bower-line-strong:#938c83;--bower-text-muted:#6c7068;--bower-text-disabled:#9a9692;--bower-disabled-bg:#e1dfdb;--bower-accent-hover:#2e4733;--bower-accent-active:#223526;--bower-accent-subtle:#e2e5de;--bower-accent-border:#a1afa1;--bower-accent-text:#3a5a40;--bower-on-accent:#fff;--bower-focus-ring:#3a5a40;--bower-success:#4f9d4d;--bower-success-hover:#448742;--bower-success-bg:#e2e9df;--bower-success-border:#adccb0;--bower-success-text:#3c7239;--bower-on-success:#122115;--bower-warning:#bc8734;--bower-warning-hover:#a4762d;--bower-warning-bg:#ebe1d0;--bower-warning-border:#dbc39b;--bower-warning-text:#835c26;--bower-on-warning:#281d0b;--bower-danger:#c0492e;--bower-danger-hover:#a74028;--bower-danger-bg:#ecd7cf;--bower-danger-border:#dda799;--bower-danger-text:#a03d26;--bower-on-danger:#fff;--bower-info:#486f7b;--bower-info-hover:#3d5e68;--bower-info-bg:#e0e4e2;--bower-info-border:#a7b8bb;--bower-info-text:#446975;--bower-on-info:#fff;--bower-font-size-2xs:.6875rem;--bower-font-size-xs:.75rem;--bower-font-size-sm:.8125rem;--bower-font-size-md:.875rem;--bower-font-size-base:1rem;--bower-font-size-lg:1.125rem;--bower-font-size-xl:1.25rem;--bower-font-size-2xl:1.5rem;--bower-font-size-3xl:1.875rem;--bower-font-size-4xl:2.25rem;--bower-font-size-5xl:3.5rem;--bower-control-xs:24px;--bower-control-sm:28px;--bower-control-md:34px;--bower-control-lg:40px;--bower-radius-xs:4px;--bower-radius-sm:6px;--bower-radius-md:8px;--bower-radius-lg:12px;--bower-radius-xl:16px;--bower-radius-full:999px}[data-bower-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bower-canvas:#191512;--bower-canvas-well:#2c2c2c;--bower-surface:#221d19;--bower-ink:#f1ece4;--bower-text-secondary:#b6ada1;--bower-line:#37302a;--bower-accent:#5fa06f;--bower-surface-elevated:#2e2722;--bower-surface-floating:#3b322b;--bower-line-strong:#787066;--bower-text-muted:#a39a90;--bower-text-disabled:#7a7670;--bower-disabled-bg:#1e1916;--bower-accent-hover:#6faa7d;--bower-accent-active:#569064;--bower-accent-subtle:#2e372a;--bower-accent-border:#405e44;--bower-accent-text:#6faa7d;--bower-on-accent:#132016;--bower-focus-ring:#5fa06f;--bower-success:#58ae55;--bower-success-hover:#6aba66;--bower-success-bg:#2e3428;--bower-success-border:#466448;--bower-success-text:#7bbe72;--bower-on-success:#122115;--bower-warning:#d2a45b;--bower-warning-hover:#d7af6f;--bower-warning-bg:#473927;--bower-warning-border:#7a603a;--bower-warning-text:#d2a45b;--bower-on-warning:#281d0b;--bower-danger:#d66d55;--bower-danger-hover:#db7f6a;--bower-danger-bg:#482e26;--bower-danger-border:#7c4537;--bower-danger-text:#de8975;--bower-on-danger:#29100a;--bower-info:#5f92a1;--bower-info-hover:#6f9daa;--bower-info-bg:#2c302f;--bower-info-border:#40585d;--bower-info-text:#7aa4b6;--bower-on-info:#131d20}:root{--sans:"Work Sans Variable", system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font-family:var(--sans);letter-spacing:.18px;color:var(--bower-text-secondary);background:var(--bower-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:thin;scrollbar-color:var(--bower-line) transparent}:hover{scrollbar-color:var(--bower-line-strong) transparent}#root{width:100%;min-height:100svh}body{font-size:var(--bower-font-size-lg);margin:0;line-height:145%}@media (width<=1024px){body{font-size:var(--bower-font-size-base)}}button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--bower-focus-ring);outline-offset:2px}h1,h2{font-family:var(--sans);color:var(--bower-ink);font-weight:500}h1{font-size:var(--bower-font-size-5xl);letter-spacing:-1.68px;margin:32px 0}@media (width<=1024px){h1{font-size:var(--bower-font-size-4xl);margin:20px 0}}h2{font-size:var(--bower-font-size-2xl);letter-spacing:-.24px;margin:0 0 8px;line-height:118%}@media (width<=1024px){h2{font-size:var(--bower-font-size-xl)}}p{margin:0}code{font-family:var(--mono);color:var(--bower-ink);font-size:var(--bower-font-size-base);background:var(--bower-surface-elevated);border-radius:4px;padding:4px 8px;line-height:135%;display:inline-flex}.tooltip{z-index:60;max-width:280px;font-size:var(--bower-font-size-xs);color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);pointer-events:none;flex-direction:column;gap:3px;padding:6px 10px;line-height:1.4;display:flex;box-shadow:0 8px 20px #0006}.tooltip-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.tooltip-keys{gap:3px;display:inline-flex}.tooltip-keys kbd{box-sizing:border-box;min-width:18px;font-family:inherit;font-size:var(--bower-font-size-2xs);text-align:center;color:var(--bower-text-secondary);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-xs);padding:0 5px;line-height:18px}.tooltip-hint{color:var(--bower-text-secondary)}.tooltip-trigger{flex:none;display:inline-flex}.tooltip-trigger>:disabled{pointer-events:none}.rail-help-anchor{position:relative}.help-menu-keys{gap:3px;margin-left:auto;display:inline-flex}.help-menu-keys kbd{box-sizing:border-box;min-width:18px;font-family:inherit;font-size:var(--bower-font-size-2xs);text-align:center;color:var(--bower-text-secondary);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-xs);padding:0 5px;line-height:16px}.help-menu-divider{background:var(--bower-line);height:1px;margin:4px 2px}.help-menu .help-menu-contact{box-sizing:border-box;align-items:flex-start;line-height:normal;text-decoration:none}.help-menu .help-menu-contact>svg{margin-top:1px}.help-menu-contact-text{flex-direction:column;gap:2px;min-width:0;display:flex}.help-menu-contact-reply{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);margin-top:2px}.help-menu-contact-address{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);overflow-wrap:anywhere}.settings-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--bower-ink);background:#0907059e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.settings-dialog{border:1px solid var(--bower-line);border-radius:var(--bower-radius-xl);background:var(--bower-surface-elevated);width:min(900px,100%);height:min(640px,100%);display:flex;overflow:hidden;box-shadow:0 28px 70px #0000008c}.settings-dialog:focus{outline:none}.settings-nav{background:var(--bower-surface);border-right:1px solid var(--bower-line);flex-direction:column;flex:0 0 232px;gap:18px;padding:22px 14px;display:flex}.settings-nav-title{font-size:var(--bower-font-size-lg);letter-spacing:-.2px;margin:0;padding:0 10px;font-weight:700}.settings-nav-list{flex-direction:column;gap:2px;display:flex}.settings-nav-item{border-radius:var(--bower-radius-md);width:100%;color:var(--bower-text-secondary);font-family:inherit;font-size:var(--bower-font-size-md);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:11px;padding:10px 12px;display:flex}.settings-nav-item:hover{color:var(--bower-ink);background:var(--bower-surface-elevated)}.settings-nav-item.active{color:var(--bower-accent-text);background:var(--bower-accent-subtle)}.settings-nav-item svg{flex:none}.settings-signout{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);color:var(--bower-text-secondary);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;margin-top:auto;padding:9px 12px}.settings-signout:hover{color:var(--bower-ink);border-color:var(--bower-danger)}.settings-body{flex:1;min-width:0;padding:26px 30px 30px;position:relative;overflow-y:auto}.settings-close{width:var(--bower-control-md);height:var(--bower-control-md);border-radius:var(--bower-radius-md);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:inline-flex;position:absolute;top:18px;right:18px}.settings-close:hover{color:var(--bower-ink);background:var(--bower-surface-floating)}.settings-section{flex-direction:column;align-items:stretch;gap:16px;max-width:520px;display:flex}.settings-head{flex-direction:column;gap:6px;padding-right:40px;display:flex}.settings-head-title{font-size:var(--bower-font-size-xl);letter-spacing:-.2px;margin:0;font-weight:700}.settings-head-sub{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin:0}.settings-group{font-size:var(--bower-font-size-2xs);letter-spacing:.09em;text-transform:uppercase;color:var(--bower-text-muted);margin:12px 0 -4px;font-weight:600}.settings-field{flex-direction:column;gap:7px;display:flex}.settings-field-label{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary)}.settings-input{box-sizing:border-box;height:var(--bower-control-lg);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-md);padding:0 13px}@media (pointer:coarse){.settings-input{font-size:var(--bower-font-size-base)}}.settings-input::placeholder{color:var(--bower-text-muted)}.settings-input:focus{border-color:var(--bower-focus-ring);box-shadow:0 0 0 1px var(--bower-focus-ring);outline:none}.settings-input:disabled{opacity:.55;cursor:not-allowed}.settings-primary{height:var(--bower-control-lg);border-radius:var(--bower-radius-md);background:var(--bower-accent);color:var(--bower-on-accent);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;border:none;align-self:flex-start;padding:0 18px;font-weight:600}.settings-primary:hover:not(:disabled){background:var(--bower-accent-hover)}.settings-primary:disabled{opacity:.45;cursor:not-allowed}.settings-toggle-row{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.settings-toggle-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.settings-toggle-title{font-size:var(--bower-font-size-base);color:var(--bower-ink);font-weight:600}.settings-toggle-desc{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);line-height:1.5}.settings-toggle{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-full);background:var(--bower-surface-floating);cursor:pointer;flex:none;width:46px;height:26px;margin-top:2px;padding:0;transition:background-color .15s,border-color .15s;position:relative}.settings-toggle.on{background:var(--bower-accent);border-color:var(--bower-accent)}.settings-toggle:disabled{opacity:.5;cursor:not-allowed}.settings-toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px}.settings-toggle.on .settings-toggle-knob{transform:translate(20px)}.settings-legal{flex-direction:column;display:flex}.settings-legal-row{border-bottom:1px solid var(--bower-line);color:var(--bower-ink);font-size:var(--bower-font-size-base);justify-content:space-between;align-items:center;gap:12px;padding:15px 0;text-decoration:none;display:flex}.settings-legal-row:last-child{border-bottom:none}.settings-legal-row:hover{color:var(--bower-accent-text)}.settings-legal-row svg{color:var(--bower-text-muted);flex:none}.settings-legal-row:hover svg{color:var(--bower-accent-text)}.settings-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0}.settings-error--block{margin-bottom:16px}.settings-notice{font-size:var(--bower-font-size-sm);color:var(--bower-accent-text);margin:0}.settings-hint,.settings-empty{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);margin:0;line-height:1.55}.settings-empty{padding:28px 0}@media (width<=720px){.settings-overlay{padding:0}.settings-dialog{border:none;border-radius:0;flex-direction:column;width:100%;height:100%}.settings-nav{border-right:none;border-bottom:1px solid var(--bower-line);flex:none}.settings-nav-list{flex-direction:row;overflow-x:auto}.settings-nav-item{white-space:nowrap;width:auto}.settings-signout{margin-top:0}.settings-body{padding:22px 18px 28px}}.settings-balance{align-items:baseline;gap:9px;display:flex}.settings-balance-value{font-size:var(--bower-font-size-3xl);letter-spacing:-.6px;color:var(--bower-ink);font-variant-numeric:tabular-nums;font-weight:700}.settings-balance-label{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary)}.settings-balance-buy{align-self:center;margin-left:auto}.settings-ledger{flex-direction:column;display:flex}.settings-ledger-row{border-bottom:1px solid var(--bower-line);font-size:var(--bower-font-size-md);grid-template-columns:56px 1fr auto;align-items:center;gap:14px;padding:12px 0;display:grid}.settings-ledger-row:last-child{border-bottom:none}.settings-ledger-date{color:var(--bower-text-muted);font-size:var(--bower-font-size-sm)}.settings-ledger-label{color:var(--bower-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-ledger-delta{color:var(--bower-ink);font-variant-numeric:tabular-nums}.settings-ledger-delta.positive{color:var(--bower-accent-text)}.settings-load-more{color:var(--bower-accent-text);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0}.settings-load-more:hover{text-decoration:underline}.settings-plan-actions{gap:10px;display:flex}.settings-secondary{height:var(--bower-control-lg);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);color:var(--bower-text-secondary);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;padding:0 18px}.settings-secondary:hover:not(:disabled){color:var(--bower-ink);border-color:var(--bower-text-muted)}.settings-secondary:disabled{opacity:.45;cursor:not-allowed}.settings-upgrade{border:1px solid var(--bower-accent);border-radius:var(--bower-radius-lg);background:var(--bower-accent-subtle);flex-direction:column;gap:12px;padding:18px;display:flex}.settings-upgrade-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.settings-upgrade-head strong{font-size:var(--bower-font-size-base);font-weight:600}.settings-upgrade-badge{border-radius:var(--bower-radius-full);background:var(--bower-accent);color:var(--bower-on-accent);font-size:var(--bower-font-size-2xs);letter-spacing:.8px;text-transform:uppercase;padding:3px 9px;font-weight:600}.settings-upgrade-price{font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;display:flex}.settings-upgrade-price b{font-size:var(--bower-font-size-2xl);letter-spacing:-.4px;font-weight:700}.settings-upgrade-price em{font-style:normal;font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary)}.settings-upgrade-price s{font-size:var(--bower-font-size-md);color:var(--bower-text-muted)}.settings-upgrade-points{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.settings-upgrade-points li{gap:8px;display:flex}.settings-upgrade-points li:before{content:"·";color:var(--bower-accent-text)}.settings-upgrade-buy{align-self:stretch;margin-top:4px}.settings-upgrade-dialog{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);background:var(--bower-surface-floating);flex-direction:column;gap:16px;padding:20px;display:flex}.settings-upgrade-title{font-size:var(--bower-font-size-lg);margin:0;font-weight:600}.settings-upgrade-rows{font-size:var(--bower-font-size-md);flex-direction:column;gap:10px;display:flex}.settings-upgrade-rows div{color:var(--bower-text-secondary);font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;display:flex}.settings-upgrade-rows div.total{border-top:1px solid var(--bower-line-strong);color:var(--bower-ink);font-size:var(--bower-font-size-base);padding-top:12px;font-weight:600}.settings-group--danger{color:var(--bower-danger-text);margin-top:26px}.settings-danger-actions{align-items:center;gap:10px;display:flex}.settings-danger{height:var(--bower-control-lg);border:1px solid var(--bower-danger-border);border-radius:var(--bower-radius-md);color:var(--bower-danger-text);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;align-self:flex-start;padding:0 18px;font-weight:600}.settings-danger:hover:not(:disabled){background:var(--bower-danger);border-color:var(--bower-danger);color:var(--bower-on-danger)}.settings-danger:disabled{opacity:.45;cursor:not-allowed}.settings-identity{border:1px solid var(--bower-line);border-radius:var(--bower-radius-lg);background:var(--bower-surface-elevated);flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.settings-identity-name{font-size:var(--bower-font-size-base);color:var(--bower-ink);font-weight:600}.settings-identity-email{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary)}.settings-forfeit{border:1px solid var(--bower-danger-border);border-radius:var(--bower-radius-lg);background:var(--bower-danger-bg);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.settings-forfeit-line{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0;line-height:1.5}.settings-forfeit-line a{color:inherit;font-weight:600}.settings-link{color:var(--bower-text-secondary);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline}.settings-link:hover{color:var(--bower-ink)}@media (prefers-reduced-motion:reduce){.settings-close{transition:none}}.help-step{border-top:1px solid var(--bower-line);grid-template-columns:176px 1fr;align-items:start;gap:18px;padding-top:16px;display:grid}.help-step-title{font-size:var(--bower-font-size-base);margin:0;font-weight:600}.help-step-body{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);flex-direction:column;gap:6px;line-height:1.55;display:flex}.help-step-body p{margin:0}.help-step-body b{color:var(--bower-ink);font-weight:600}.help-areas,.help-tips{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.help-media{aspect-ratio:16/9;box-sizing:border-box;text-align:center;font-size:var(--bower-font-size-2xs);color:var(--bower-text-muted);background:var(--bower-surface);border:1px dashed var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;justify-content:center;align-items:center;gap:4px;margin:0;padding:8px 10px;line-height:1.35;display:flex}.help-media-kind{font-size:var(--bower-font-size-2xs);letter-spacing:.09em;text-transform:uppercase;font-weight:600}.help-link{font:inherit;color:var(--bower-accent-text);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.help-link:hover{color:var(--bower-accent-hover)}.help-sheet{max-width:none}.help-shortcut-columns{column-count:2;column-gap:32px}.help-shortcut-group{break-inside:avoid;flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.help-shortcut-group .settings-group{margin:0 0 2px}@media (width<=720px){.help-shortcut-columns{column-count:1}.help-step{grid-template-columns:1fr;gap:10px}}.help-shortcuts{flex-direction:column;margin:0;display:flex}.help-shortcut{border-bottom:1px solid var(--bower-line);font-size:var(--bower-font-size-sm);justify-content:space-between;align-items:center;gap:16px;padding:5px 0;display:flex}.help-shortcut dt{color:var(--bower-ink)}.help-shortcut dd{color:var(--bower-text-secondary);flex:none;align-items:center;gap:4px;margin:0;display:inline-flex}.help-shortcut kbd{box-sizing:border-box;min-width:22px;font-family:inherit;font-size:var(--bower-font-size-xs);text-align:center;color:var(--bower-ink);background:var(--bower-surface);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-xs);border-bottom-width:2px;padding:0 6px;line-height:22px}.help-gesture{font-size:var(--bower-font-size-xs)}.password-input{display:block;position:relative}.password-input .password-input-field{box-sizing:border-box;width:100%;padding-right:42px}.form .password-input-toggle,.password-input-toggle{width:var(--bower-control-sm);height:var(--bower-control-sm);border-radius:var(--bower-radius-sm);color:var(--bower-ink);opacity:.55;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.form .password-input-toggle:hover,.password-input-toggle:hover{opacity:1;background:0 0}.form .password-input-toggle:disabled,.password-input-toggle:disabled{opacity:.25;cursor:not-allowed}.app-shell{background:var(--bower-canvas);color:var(--bower-ink);display:flex;position:fixed;inset:0}.app-rail{border-right:1px solid var(--bower-line);background:var(--bower-canvas);flex-direction:column;flex:0 0 56px;justify-content:space-between;align-items:center;padding:16px 0;display:flex}.rail-group{flex-direction:column;align-items:center;gap:10px;display:flex}.rail-logo{height:30px;color:var(--bower-accent);margin-bottom:6px}.rail-nav{width:var(--bower-control-lg);height:var(--bower-control-lg);border-radius:var(--bower-radius-md);color:var(--bower-text-muted);font-size:var(--bower-font-size-base);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;transition:background-color .15s,color .15s;display:flex}.rail-nav:hover{color:var(--bower-ink);background:var(--bower-surface-elevated)}.rail-chat-anchor,.rail-chat{position:relative}.rail-chat-preview{z-index:40;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);width:240px;animation:.16s ease-out rail-chat-preview-in;position:absolute;bottom:0;left:calc(100% + 12px);box-shadow:0 12px 28px #00000073}.rail-chat-preview.fading{pointer-events:none;animation:.22s ease-in forwards rail-chat-preview-out}@keyframes rail-chat-preview-in{0%{opacity:0;transform:translate(-6px)}}@keyframes rail-chat-preview-out{to{opacity:0;transform:translate(-6px)}}@media (prefers-reduced-motion:reduce){.rail-chat-preview,.rail-chat-preview.fading{animation-duration:1ms}.rail-nav,.rail-credits,.rail-avatar{transition:none}}.rail-chat-preview-body{border-radius:var(--bower-radius-lg);width:100%;color:var(--bower-ink);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:12px 32px 12px 14px;font-family:inherit;display:flex}.rail-chat-preview-body:hover{background:var(--bower-surface-elevated)}.rail-chat-preview-name{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);font-weight:600}.rail-chat-preview-text{-webkit-line-clamp:3;font-size:var(--bower-font-size-sm);white-space:pre-line;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.rail-chat-preview-close{width:var(--bower-control-xs);height:var(--bower-control-xs);border-radius:var(--bower-radius-sm);color:var(--bower-text-muted);font-size:var(--bower-font-size-base);cursor:pointer;background:0 0;border:none;font-family:inherit;line-height:1;position:absolute;top:5px;right:5px}.rail-chat-preview-close:hover{color:var(--bower-ink);background:var(--bower-surface-elevated)}.rail-chat-dot{background:var(--bower-accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--bower-canvas);border-radius:50%;position:absolute;top:6px;right:6px}.rail-nav.active{color:var(--bower-ink);background:var(--bower-surface-elevated)}.rail-credits{border-radius:var(--bower-radius-sm);color:var(--bower-warning-text);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:4px 6px;font-weight:600;transition:background-color .15s;display:flex}.rail-credits:hover,.rail-credits.open{background:var(--bower-surface-elevated)}.rail-wallet-anchor{position:relative}.wallet-menu{z-index:40;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;width:248px;padding:8px;display:flex;position:absolute;bottom:0;left:calc(100% + 12px);box-shadow:0 12px 28px #00000073}.wallet-label{font-size:var(--bower-font-size-2xs);color:var(--bower-text-muted);padding:2px 2px 3px}.wallet-balance{color:var(--bower-warning-text);align-items:baseline;gap:6px;padding:1px 2px 6px;display:flex}.wallet-balance>svg{align-self:center}.wallet-balance-number{font-size:var(--bower-font-size-xl);color:var(--bower-ink);font-weight:600;line-height:1}.wallet-balance-unit{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted)}.wallet-divider{background:var(--bower-line);height:1px;margin:4px 2px}.wallet-row{font-size:var(--bower-font-size-xs);align-items:center;gap:9px;padding:5px 2px;display:flex}.wallet-row-amount{text-align:right;font-variant-numeric:tabular-nums;color:var(--bower-text-muted);flex:0 0 34px;font-weight:500}.wallet-row-amount.positive{color:var(--bower-accent-text)}.wallet-row-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.wallet-row-when{font-size:var(--bower-font-size-2xs);color:var(--bower-text-muted);flex:none}.wallet-note{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);margin:0;padding:9px 2px 2px;line-height:1.5}.wallet-note.small{font-size:var(--bower-font-size-2xs)}.wallet-cta{width:100%;height:var(--bower-control-md);border-radius:var(--bower-radius-sm);background:var(--bower-accent);color:var(--bower-on-accent);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;border:none;margin-top:6px;font-weight:500}.wallet-cta:hover{background:var(--bower-accent-hover)}.wallet-link{width:100%;color:var(--bower-text-muted);font-family:inherit;font-size:var(--bower-font-size-xs);text-align:center;cursor:pointer;background:0 0;border:none;padding:8px 2px 3px}.wallet-link:hover{color:var(--bower-ink)}.rail-avatar{border:1px solid var(--bower-line);background:var(--bower-surface-elevated);width:34px;height:34px;color:var(--bower-warning-text);font-size:var(--bower-font-size-sm);cursor:pointer;border-radius:50%;font-family:inherit;font-weight:600;transition:border-color .15s}.rail-avatar:hover{border-color:var(--bower-line-strong)}.rail-avatar.open{border-color:var(--bower-accent)}.rail-account-anchor{position:relative}.account-menu{z-index:40;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;gap:2px;width:248px;padding:8px;display:flex;position:absolute;bottom:0;left:calc(100% + 12px);box-shadow:0 12px 28px #00000073}.account-id{border-bottom:1px solid var(--bower-line);align-items:center;gap:10px;margin-bottom:6px;padding:6px 8px 10px;display:flex}.account-id-avatar{border:1px solid var(--bower-line-strong);background:var(--bower-surface-elevated);width:34px;height:34px;color:var(--bower-warning-text);font-size:var(--bower-font-size-sm);border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;font-weight:600;display:flex}.account-id-text{flex-direction:column;gap:1px;min-width:0;display:flex}.account-id-name{font-size:var(--bower-font-size-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.account-id-email{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-plan{border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);background:var(--bower-surface-elevated);justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;display:flex}.account-plan-text{flex-direction:column;gap:2px;min-width:0;display:flex}.account-plan-name{font-size:var(--bower-font-size-sm);font-weight:600}.account-plan-credits{color:var(--bower-warning-text);font-size:var(--bower-font-size-xs);align-items:center;gap:4px;font-weight:600;display:flex}.account-plan-action{height:var(--bower-control-sm);border-radius:var(--bower-radius-sm);background:var(--bower-accent);color:var(--bower-on-accent);font-family:inherit;font-size:var(--bower-font-size-xs);white-space:nowrap;cursor:pointer;border:none;flex:none;padding:0 12px;font-weight:600}.account-plan-action:hover{background:var(--bower-accent-hover)}.account-item{border-radius:var(--bower-radius-sm);width:100%;color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:11px;padding:9px 8px;display:flex}.account-item>svg{color:var(--bower-text-muted)}.account-item:hover{background:var(--bower-surface-elevated)}.paywall-overlay{z-index:110;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--bower-ink);background:#0907059e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.paywall-dialog{border:1px solid var(--bower-line);border-radius:var(--bower-radius-xl);background:var(--bower-surface-elevated);flex-direction:column;gap:16px;width:min(428px,100%);max-height:100%;padding:20px;display:flex;overflow-y:auto;box-shadow:0 28px 70px #0000008c}.paywall-dialog:focus{outline:none}.paywall-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.paywall-title{font-size:var(--bower-font-size-lg);color:var(--bower-ink);margin:0;font-weight:700}.paywall-close{width:var(--bower-control-md);height:var(--bower-control-md);border-radius:var(--bower-radius-md);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.paywall-close:hover{color:var(--bower-ink);background:var(--bower-surface-floating)}.paywall-lead{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin:-6px 0 0;line-height:1.5}.paywall-periods{border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);background:var(--bower-surface);gap:3px;padding:3px;display:flex}.paywall-period{height:var(--bower-control-md);border-radius:var(--bower-radius-sm);color:var(--bower-text-secondary);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;flex:1}.paywall-period.on{background:var(--bower-surface-floating);color:var(--bower-ink);box-shadow:0 1px 3px #0000004d}.paywall-save{color:var(--bower-accent-text);font-weight:600}.paywall-card{border:1px solid var(--bower-line);border-radius:var(--bower-radius-lg);background:var(--bower-surface);flex-direction:column;padding:18px;display:flex}.paywall-price{font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:flex}.paywall-amount{font-size:var(--bower-font-size-3xl);letter-spacing:-.6px;color:var(--bower-ink);font-weight:700;line-height:1}.paywall-per{font-size:var(--bower-font-size-md);color:var(--bower-text-muted)}.paywall-billed{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);margin:6px 0 0}.paywall-allowance{font-size:var(--bower-font-size-md);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:16px 0 12px;display:flex}.paywall-allowance b{color:var(--bower-ink);font-weight:600}.paywall-allowance span{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted)}.paywall-credits{align-items:center;gap:4px;display:inline-flex}.paywall-credits>svg{width:14px;height:14px;color:var(--bower-warning-text)}.paywall-features{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.paywall-features li{font-size:var(--bower-font-size-sm);color:var(--bower-ink);padding-left:22px;line-height:1.4;position:relative}.paywall-features li:before{content:"✓";color:var(--bower-accent-text);font-weight:700;position:absolute;top:0;left:0}.paywall-note{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin:0 0 14px;line-height:1.5}.paywall-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0 0 14px}.paywall-cta{border-radius:var(--bower-radius-md);background:var(--bower-accent);height:40px;color:var(--bower-on-accent);font-family:inherit;font-size:var(--bower-font-size-md);cursor:pointer;border:none;font-weight:600}.paywall-cta:hover:not(:disabled){background:var(--bower-accent-hover)}.paywall-cta:disabled{opacity:.6;cursor:progress}.paywall-trust{justify-content:center;align-items:center;gap:5px;display:flex}.paywall-trust,.paywall-contact{text-align:center;font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);margin:0}.paywall-contact{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin-top:-8px}.paywall-link{color:var(--bower-accent-text);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0}.paywall-link:hover{text-decoration:underline}.topup-balance{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);align-items:center;gap:6px;margin:-4px 0 0;display:flex}.topup-balance b{color:var(--bower-ink);font-weight:600}.topup-picker{border:1px solid var(--bower-line);border-radius:var(--bower-radius-lg);background:var(--bower-surface);flex-direction:column;gap:12px;padding:18px;display:flex}.topup-amount{justify-content:center;align-items:baseline;gap:8px;display:flex}.topup-input{border:none;border-bottom:1px dashed var(--bower-line-strong);width:5ch;color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-3xl);font-variant-numeric:tabular-nums;text-align:center;background:0 0;padding:0;font-weight:700}.topup-input:focus{border-bottom-color:var(--bower-accent);outline:none}.topup-unit{font-size:var(--bower-font-size-md);color:var(--bower-text-muted)}.topup-slider{--topup-fill:0%;background:linear-gradient(to right, var(--bower-accent) 0, var(--bower-accent) var(--topup-fill), var(--bower-line-strong) var(--topup-fill));appearance:none;cursor:pointer;border-radius:999px;width:100%;height:6px;margin:6px 0 0}.topup-slider::-webkit-slider-thumb{border:3px solid var(--bower-accent);background:var(--bower-surface-elevated);appearance:none;border-radius:50%;width:18px;height:18px;transition:transform .12s}.topup-slider::-moz-range-thumb{border:3px solid var(--bower-accent);background:var(--bower-surface-elevated);border-radius:50%;width:12px;height:12px}.topup-slider:active::-webkit-slider-thumb{transform:scale(1.15)}.topup-slider:focus-visible{outline:2px solid var(--bower-accent-border);outline-offset:4px}.topup-scale{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.topup-summary{flex-direction:column;gap:4px;display:flex}.topup-total{font-size:var(--bower-font-size-md);color:var(--bower-text-secondary);justify-content:space-between;align-items:baseline;display:flex}.topup-total b{font-size:var(--bower-font-size-lg);color:var(--bower-ink);font-variant-numeric:tabular-nums}.topup-rate{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);margin:0}.topup-dialog .paywall-note,.topup-dialog .paywall-error{margin:0}.legal{background:var(--bower-canvas);min-height:100svh;color:var(--bower-text-secondary);font-size:var(--bower-font-size-base);letter-spacing:normal;line-height:1.65}.legal-topbar{border-bottom:1px solid var(--bower-line);background:var(--bower-surface);align-items:center;height:60px;padding:0 24px;display:flex}.legal-brand{color:var(--bower-accent);display:inline-flex}.legal-wordmark{height:24px}.legal-doc{max-width:680px;margin:0 auto;padding:48px 24px 96px}.legal-doc h1{font-family:inherit;font-size:var(--bower-font-size-4xl);letter-spacing:-.5px;color:var(--bower-ink);margin:0 0 20px;font-weight:700;line-height:1.2}.legal-doc h2{font-family:inherit;font-size:var(--bower-font-size-xl);letter-spacing:-.2px;color:var(--bower-ink);margin:40px 0 12px;font-weight:700;line-height:1.3}.legal-doc h3{font-size:var(--bower-font-size-base);color:var(--bower-ink);margin:26px 0 8px;font-weight:600;line-height:1.4}.legal-doc p{margin:0 0 14px}.legal-lede{font-size:var(--bower-font-size-lg);color:var(--bower-ink)}.legal-doc ul{margin:0 0 14px;padding-left:22px}.legal-doc li{margin-bottom:8px}.legal-doc a{color:var(--bower-accent);text-underline-offset:2px;text-decoration:underline}.legal-doc a:hover{color:var(--bower-accent-hover)}.legal-note{border-top:1px solid var(--bower-line);font-size:var(--bower-font-size-md);color:var(--bower-text-muted);margin-top:28px;padding-top:20px}.role-question{width:min(480px,100%)}.role-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.role-option{min-height:var(--bower-control-lg);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface-elevated);color:var(--bower-ink);font:inherit;font-size:var(--bower-font-size-md);text-align:left;cursor:pointer;padding:10px 12px;transition:border-color .15s}.role-option:hover:not(:disabled),.role-option.selected{border-color:var(--bower-accent)}.role-option.selected{background:var(--bower-accent-subtle)}.role-option:disabled{cursor:default;opacity:.6}.role-other{gap:8px;margin-top:14px;display:flex}.role-other input{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);min-width:0;color:var(--bower-ink);font:inherit;flex:1;padding:10px 12px}.role-other button{border-radius:var(--bower-radius-md);background:var(--bower-accent);color:var(--bower-on-accent);font:inherit;cursor:pointer;border:none;padding:0 16px}@media (width<=420px){.role-options{grid-template-columns:1fr}}.get-started{border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);background:var(--bower-surface-elevated);position:relative}.get-started-progress{border-radius:0 0 var(--bower-radius-md) var(--bower-radius-md);background:var(--bower-line);height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.get-started-progress-fill{background:var(--bower-accent);height:100%;transition:width .6s ease-out;display:block}@media (prefers-reduced-motion:reduce){.get-started-progress-fill{transition:none}}.get-started-header{align-items:center;padding-bottom:3px;display:flex}.get-started-toggle{color:var(--bower-ink);font:inherit;font-size:var(--bower-font-size-xs);text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:8px;padding:0 4px 0 12px;display:flex}.get-started-title{font-weight:600}.get-started-count{color:var(--bower-text-muted)}.get-started-dismiss,.onboarding-callout-dismiss{width:var(--bower-control-xs);height:var(--bower-control-xs);border-radius:var(--bower-radius-sm);color:var(--bower-text-muted);font-size:var(--bower-font-size-lg);cursor:pointer;background:0 0;border:none;flex:none;margin-right:6px;padding:0;line-height:1}.get-started-dismiss:hover,.onboarding-callout-dismiss:hover{color:var(--bower-ink)}.get-started-list{z-index:20;width:220px;font-size:var(--bower-font-size-sm);color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);gap:8px;margin:0;padding:12px 14px;list-style:none;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #00000073}.get-started-list li{align-items:center;gap:8px;display:flex}.get-started-list li.done .get-started-label{color:var(--bower-text-muted);text-decoration:line-through}.get-started-mark{box-sizing:border-box;border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-full);width:16px;height:16px;color:var(--bower-on-accent);flex:none;place-items:center;display:inline-grid}.get-started-list li.done .get-started-mark{border-color:var(--bower-accent);background:var(--bower-accent)}.get-started--card{border-radius:var(--bower-radius-lg);background:var(--bower-surface);flex-direction:column;gap:12px;padding:18px 18px 20px;display:flex}.get-started--card .get-started-header{padding-bottom:0}.get-started--card .get-started-toggle{font-size:var(--bower-font-size-lg);cursor:default;flex:1;margin:0;padding:0}.get-started--card .get-started-count{font-size:var(--bower-font-size-sm)}.get-started--card .get-started-progress{border-radius:var(--bower-radius-full);height:4px;position:static}.get-started--card .get-started-list{width:auto;box-shadow:none;font-size:var(--bower-font-size-md);background:0 0;border:none;gap:12px;padding:0;position:static}.get-started-start{color:var(--bower-accent-text);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.get-started .visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.onboarding-callout{z-index:25;background:var(--bower-ink);width:max-content;max-width:min(340px,100vw - 32px);color:var(--bower-canvas);border-left:3px solid var(--bower-accent);border-radius:var(--bower-radius-md);align-items:flex-start;gap:4px;padding:10px 6px 10px 14px;animation:.2s ease-out onboarding-enter;display:flex;position:absolute;box-shadow:0 0 0 1px #00000059,0 10px 28px #00000073}.onboarding-callout-body{flex-direction:column;gap:2px;min-width:0;display:flex}.onboarding-callout-eyebrow{font-size:var(--bower-font-size-2xs);letter-spacing:.06em;text-transform:uppercase;opacity:.7;font-weight:600}.onboarding-callout-text{font-size:var(--bower-font-size-md);line-height:1.4}.onboarding-callout .onboarding-callout-dismiss{color:var(--bower-canvas);opacity:.6;margin:-2px 0 0}.onboarding-callout .onboarding-callout-dismiss:hover{color:var(--bower-canvas);opacity:1}.onboarding-callout--canvas-top{top:16px;left:50%;translate:-50%}.onboarding-callout--above-prompt{bottom:calc(var(--canvas-bar-zone) + 14px);left:50%;translate:-50%}.onboarding-callout--below-anchor{margin-right:-28px;top:calc(100% + 12px);right:50%}.onboarding-callout--panel{width:auto;max-width:none;top:calc(100% + 12px);left:16px;right:16px}.onboarding-callout--beside-panel-top,.onboarding-callout--beside-panel-bottom{right:calc(var(--studio-panel-width) + 14px)}.onboarding-callout--beside-panel-top{top:82px}.onboarding-callout--beside-panel-bottom{bottom:18px}.onboarding-callout--beside-panel-top:after,.onboarding-callout--beside-panel-bottom:after{content:"";background:var(--bower-ink);width:10px;height:10px;position:absolute;right:-5px;rotate:45deg}.onboarding-callout--beside-panel-top:after{top:18px}.onboarding-callout--beside-panel-bottom:after{bottom:15px}.onboarding-callout--above-prompt:after,.onboarding-callout--below-anchor:after,.onboarding-callout--panel:after{content:"";background:var(--bower-ink);width:10px;height:10px;position:absolute;rotate:45deg}.onboarding-callout--above-prompt:after{margin-left:-5px;bottom:-5px;left:50%}.onboarding-callout--below-anchor:after{top:-5px;right:23px}.onboarding-callout--panel:after{margin-left:-5px;top:-5px;left:50%}@keyframes onboarding-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.onboarding-anchor{display:inline-flex;position:relative}.onboarding-anchor-block{position:relative}.panel-tab.onboarding-target{box-shadow:0 0 0 2px var(--bower-ink);border-radius:var(--bower-radius-md)}.select-control .onboarding-target,.studio-generate.onboarding-target{box-shadow:0 0 0 2px var(--bower-ink)}.prompt-bar.onboarding-target{box-shadow:0 0 0 2px var(--bower-ink), 0 6px 18px #00000059}.onboarding-pulse{animation:1.6s ease-out infinite onboarding-pulse}@keyframes onboarding-pulse{0%{box-shadow:0 0 0 0 var(--bower-accent-border)}to{box-shadow:0 0 0 10px #0000}}@media (prefers-reduced-motion:reduce){.onboarding-callout{animation:none}.onboarding-pulse{border-color:var(--bower-accent);animation:none}}.render-check{right:16px;bottom:calc(var(--canvas-bar-zone) + 16px);z-index:25;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);width:min(320px,100% - 32px);color:var(--bower-ink);flex-direction:column;gap:10px;padding:14px 16px;display:flex;position:absolute;box-shadow:0 12px 28px #00000073}.render-check-close{position:absolute;top:8px;right:2px}.render-check-question{font-size:var(--bower-font-size-md);margin:0;padding-right:24px;font-weight:600}.render-check-note{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin:0;padding-right:24px;line-height:1.5}.render-check-actions{gap:8px;display:flex}.render-check-actions button,.render-check-reason{min-height:var(--bower-control-sm);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface-elevated);color:var(--bower-ink);font:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;padding:4px 12px}.render-check-actions .render-check-primary{border-color:var(--bower-accent);background:var(--bower-accent);color:var(--bower-on-accent)}.render-check-actions button:disabled{cursor:default;opacity:.6}.render-check-reasons{flex-wrap:wrap;gap:6px;display:flex}.render-check-reason{font-size:var(--bower-font-size-xs);text-align:left}.render-check-reason.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle);color:var(--bower-accent-text)}.render-check-comment{resize:vertical;border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);color:var(--bower-ink);font:inherit;font-size:var(--bower-font-size-sm);padding:8px 10px}.render-check-error{font-size:var(--bower-font-size-xs);color:var(--bower-danger-text);margin:0}.room-modal-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--bower-ink);background:#0907059e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.room-modal-dialog{border:1px solid var(--bower-line);border-radius:var(--bower-radius-xl);background:var(--bower-surface-elevated);flex-direction:column;gap:14px;width:min(360px,100%);padding:20px;display:flex;box-shadow:0 28px 70px #0000008c}.room-modal-title{font-size:var(--bower-font-size-base);color:var(--bower-ink);margin:0;font-weight:700}.room-modal-input{height:var(--bower-control-lg);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);font-family:inherit;font-size:var(--bower-font-size-md);color:var(--bower-ink);padding:0 12px}.room-modal-input:focus{outline:2px solid var(--bower-focus-ring);outline-offset:-1px}.room-modal-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0}.room-modal-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.room-modal-button{height:var(--bower-control-lg);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);font-family:inherit;font-size:var(--bower-font-size-md);color:var(--bower-ink);cursor:pointer;background:0 0;font-weight:600;transition:background-color .15s,border-color .15s}.room-modal-button:hover:not(:disabled){border-color:var(--bower-text-muted)}.room-modal-button:disabled{opacity:.5;cursor:default}.room-modal-button--primary{border-color:var(--bower-accent);background:var(--bower-accent);color:var(--bower-on-accent)}.room-modal-button--primary:hover:not(:disabled){border-color:var(--bower-accent-hover);background:var(--bower-accent-hover)}.room-modal-button--primary:disabled{border-color:var(--bower-disabled-bg);background:var(--bower-disabled-bg);color:var(--bower-text-disabled);opacity:1;cursor:default}.room-modal-text{font-size:var(--bower-font-size-md);color:var(--bower-text-secondary);margin:0;line-height:1.45}.room-modal-button--danger{border-color:var(--bower-danger);background:var(--bower-danger);color:var(--bower-on-danger)}.room-modal-button--danger:hover:not(:disabled){border-color:var(--bower-danger-hover);background:var(--bower-danger-hover)}.room-modal-button--danger:disabled{border-color:var(--bower-disabled-bg);background:var(--bower-disabled-bg);color:var(--bower-text-disabled);cursor:default}@media (prefers-reduced-motion:reduce){.room-modal-button{transition:none}}.rooms{flex:1;min-width:0;display:flex}.rooms-main{flex:1;min-width:0;padding:28px 36px 48px;overflow-y:auto}.rooms-header{align-items:baseline;gap:12px;margin-bottom:24px;display:flex}.rooms-title{font-size:var(--bower-font-size-3xl);letter-spacing:-.4px;color:var(--bower-ink);margin:0;font-weight:700}.rooms-header-aside{align-self:center;margin-left:auto}.rooms-count{font-size:var(--bower-font-size-base);color:var(--bower-text-muted)}.rooms-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0 0 20px}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;display:grid}.room-card{text-align:left;border:1px solid var(--bower-line);border-radius:var(--bower-radius-lg);background:var(--bower-surface);cursor:pointer;color:inherit;flex-direction:column;padding:0;font-family:inherit;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.room-card:hover{border-color:var(--bower-line-strong);transform:translateY(-2px)}.room-thumb{aspect-ratio:4/3;background:var(--bower-surface-elevated);width:100%;display:block;position:relative;overflow:hidden}.room-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.room-thumb-img.dimmed{opacity:.4}.room-thumb-empty{background:var(--bower-surface-elevated);width:100%;height:100%;display:block}.room-thumb-spinner{border:3px solid #ffffff2e;border-top-color:var(--bower-accent);border-radius:50%;width:26px;height:26px;margin:-13px 0 0 -13px;animation:.8s linear infinite rooms-spin;position:absolute;top:50%;left:50%}@keyframes rooms-spin{to{transform:rotate(360deg)}}.room-meta{flex-direction:column;gap:4px;padding:12px 14px 14px;display:flex}.room-name{font-size:var(--bower-font-size-base);color:var(--bower-ink);font-weight:600}.room-status{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted)}.room-status.generating{color:var(--bower-accent)}.room-card-wrap{transition:transform .15s;display:flex;position:relative}.room-card-wrap>.room-card{flex:1;min-width:0}.room-card-wrap:hover{transform:translateY(-2px)}.room-card-wrap>.room-card:hover{transform:none}.room-card-wrap:hover>.room-card{border-color:var(--bower-line-strong)}.room-menu{z-index:5;position:absolute;bottom:16px;right:10px}.room-card-wrap .room-meta{padding-right:52px}.room-menu-trigger{width:var(--bower-control-md);height:var(--bower-control-md);border-radius:var(--bower-radius-full);color:var(--bower-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.room-menu-trigger:hover,.room-card-wrap.menu-open .room-menu-trigger{background:var(--bower-surface-elevated);color:var(--bower-ink)}.room-menu-list{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);background:var(--bower-surface-floating);min-width:160px;padding:6px;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 12px 28px #00000073}.room-menu-item{border-radius:var(--bower-radius-sm);width:100%;font-family:inherit;font-size:var(--bower-font-size-md);text-align:left;color:var(--bower-ink);cursor:pointer;background:0 0;border:none;padding:8px 10px;display:block}.room-menu-item:hover{background:var(--bower-surface-elevated)}.room-menu-item--danger{color:var(--bower-danger-text)}.room-menu-item--danger:hover{background:var(--bower-danger-bg)}.room-card--new{background:0 0;border:none;padding:1px;position:relative}.room-card--new:hover{transform:translateY(-2px)}.new-outline{pointer-events:none;width:calc(100% - 1.5px);height:calc(100% - 1.5px);position:absolute;top:.75px;left:.75px;overflow:visible}.new-outline rect{fill:none;stroke:var(--bower-line-strong);stroke-width:1.5px;stroke-dasharray:11 8;stroke-linecap:round;transition:stroke .15s}.room-card--new:hover .new-outline rect{stroke:var(--bower-accent)}.new-thumb{background:0 0;justify-content:center;align-items:center;display:flex}.new-plus{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);width:52px;height:52px;font-size:var(--bower-font-size-2xl);color:var(--bower-text-secondary);justify-content:center;align-items:center;font-weight:300;display:flex}.new-label{font-size:var(--bower-font-size-md);color:var(--bower-text-secondary);text-align:center}.room-card--new .room-meta{align-items:center}.room-card--skeleton{cursor:default;pointer-events:none}.room-card--skeleton:hover{border-color:var(--bower-line);transform:none}.room-card--skeleton .room-thumb{animation:1.4s ease-in-out infinite rooms-pulse}.skeleton-line{border-radius:var(--bower-radius-sm);background:var(--bower-surface-elevated);height:12px;animation:1.4s ease-in-out infinite rooms-pulse}.skeleton-line.short{width:55%}@keyframes rooms-pulse{0%,to{opacity:1}50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.room-card,.room-card-wrap,.room-menu-trigger,.new-outline rect{transition:none}.room-card:hover,.room-card--new:hover,.room-card-wrap:hover{transform:none}.room-card--skeleton .room-thumb,.skeleton-line{animation:none}}.credit-block-action{color:var(--bower-accent-text);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.credit-block-action:hover{text-decoration:underline}.version-graph-panel{background:var(--bower-canvas);border:1px solid var(--bower-line);border-radius:var(--bower-radius-xl);flex-direction:column;width:fit-content;min-width:min(520px,100%);max-width:min(1100px,100%);max-height:min(720px,100%);display:flex;overflow:hidden;box-shadow:0 28px 70px #0000008c}.version-graph-header{background:var(--bower-surface);border-bottom:1px solid var(--bower-line);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.version-graph-title{font-size:var(--bower-font-size-sm);color:var(--bower-ink);margin:0;font-weight:500}.version-graph-close{width:var(--bower-control-sm);height:var(--bower-control-sm);border-radius:var(--bower-radius-md);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:flex}.version-graph-close:hover{color:var(--bower-ink);background:var(--bower-surface-floating)}.version-graph-viewport{flex:1;min-height:0;padding:14px 16px 18px;overflow:auto}.version-graph-canvas{margin:0 auto;position:relative}.version-graph-edges{pointer-events:none;position:absolute;inset:0;overflow:visible}.version-graph-edge{fill:none;stroke:var(--bower-line-strong);stroke-width:1.5px}.version-graph-edge.on-path{stroke:var(--bower-accent);stroke-width:2.5px}.version-graph-node{border:1px solid var(--bower-line);border-radius:var(--bower-radius-sm);background:var(--bower-surface-elevated);cursor:pointer;padding:0;position:absolute;overflow:hidden}.version-graph-node:hover{border-color:var(--bower-accent-hover)}.version-graph-node.on-path{border-color:var(--bower-accent-border)}.version-graph-node.selected{border:2px solid var(--bower-accent)}.version-graph-label{font-size:var(--bower-font-size-2xs);color:var(--bower-text-secondary);text-align:center;position:absolute}.version-graph-current{border-radius:var(--bower-radius-full);background:var(--bower-accent-subtle);color:var(--bower-accent-text);font-size:var(--bower-font-size-2xs);padding:0 6px;position:absolute}@media (prefers-reduced-motion:reduce){.version-graph-close{transition:none}}.studio{flex-direction:column;flex:1;min-width:0;display:flex}.studio-topbar{background:var(--bower-surface);border-bottom:1px solid var(--bower-line);flex:0 0 52px;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.studio-topbar-left{align-items:center;gap:12px;display:flex}.studio-back{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);cursor:pointer;min-height:var(--bower-control-sm);padding:6px 12px;font-family:inherit;transition:border-color .15s,color .15s}.studio-back:hover{border-color:var(--bower-line-strong);color:var(--bower-ink)}.studio-brand{font-size:var(--bower-font-size-md);font-weight:600}.studio-brand-edit{color:inherit;border-radius:var(--bower-radius-md);cursor:text;text-align:left;background:0 0;border:1px solid #0000;margin-left:-9px;padding:5px 9px;font-family:inherit}.studio-brand-edit:hover{background:var(--bower-surface-elevated);border-color:var(--bower-line-strong)}.studio-brand-input{color:var(--bower-ink);background:var(--bower-surface-elevated);border:1px solid var(--bower-accent);border-radius:var(--bower-radius-md);outline:none;min-width:220px;margin-left:-9px;padding:5px 9px;font-family:inherit}.studio-body{--studio-panel-width:280px;flex:1;min-height:0;display:flex;position:relative}.studio-canvas-col{flex-direction:column;flex:1;gap:14px;min-width:0;padding:20px;display:flex}.studio-stage{--canvas-bar-zone:0px;flex:1;min-height:0;position:relative}.studio-stage.with-prompt-bar{--canvas-bar-zone:84px}.versions-strip{flex:none;align-items:center;gap:14px;display:flex}.versions-track{flex:1;gap:10px;min-width:0;margin:-2px;padding:4px;display:flex;overflow-x:auto}.versions-empty{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);align-items:center;gap:12px;margin:0;display:flex}.versions-empty-slot{border:1px dashed var(--bower-line-strong);border-radius:var(--bower-radius-md);flex:none;width:72px;height:56px}.version-thumb{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface-elevated);cursor:pointer;flex:none;width:72px;height:56px;padding:0;position:relative;overflow:hidden}.version-thumb:hover{border-color:var(--bower-accent-hover)}.version-thumb.selected{border-color:var(--bower-accent);box-shadow:0 0 0 1px var(--bower-accent)}.version-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.version-thumb-empty{background:var(--bower-canvas-well,var(--bower-canvas));width:100%;height:100%;display:block}.version-thumb-spinner{border:2px solid var(--bower-line-strong);border-top-color:var(--bower-accent);border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.8s linear infinite studio-spin;position:absolute;top:50%;left:50%}.version-thumb-failed{background:var(--bower-danger);width:16px;height:16px;color:var(--bower-on-danger);font-size:var(--bower-font-size-2xs);text-align:center;border-radius:50%;font-weight:700;line-height:16px;position:absolute;top:4px;left:4px}.versions-graph{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);cursor:pointer;min-height:var(--bower-control-sm);flex:none;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;transition:border-color .15s;display:inline-flex}.versions-graph:hover:not(:disabled){border-color:var(--bower-line-strong)}.versions-graph:disabled{opacity:.55;cursor:default}.studio-panel{flex:0 0 var(--studio-panel-width);background:var(--bower-surface);border-left:1px solid var(--bower-line);flex-direction:column;min-height:0;display:flex}.panel-body{scrollbar-gutter:stable;flex-direction:column;flex:1;gap:16px;min-height:0;padding:16px 18px 18px;display:flex;overflow-y:auto}@property --panel-fade{syntax:"<length>";inherits:false;initial-value:0}@keyframes panel-fade-out{0%{--panel-fade:40px}to{--panel-fade:0px}}@supports (animation-timeline:scroll()){.panel-body{-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--panel-fade)), transparent);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--panel-fade)), transparent);animation:linear both panel-fade-out;animation-timeline:scroll(self);animation-range:calc(100% - 40px) 100%}}.panel-footer{scrollbar-gutter:stable;border-top:1px solid var(--bower-line);flex-direction:column;flex:none;gap:10px;padding:14px 18px 18px;display:flex;overflow:hidden}.panel-header{border-bottom:1px solid var(--bower-line);flex:none;align-items:center;gap:6px;padding:10px 18px 10px 10px;display:flex}.panel-back{width:var(--bower-control-sm);height:var(--bower-control-sm);border-radius:var(--bower-radius-sm);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.panel-back:hover{background:var(--bower-accent-subtle);color:var(--bower-ink)}.panel-header-title{font-size:var(--bower-font-size-md);color:var(--bower-ink);margin:0;font-weight:500}.panel-hint{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);line-height:1.5}.panel-tabs{border-bottom:1px solid var(--bower-line);display:flex}.panel-tab{text-align:center;font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:12px 0;font-family:inherit}.panel-tab.active{color:var(--bower-ink);border-bottom-color:var(--bower-accent)}.panel-tab:focus-visible{outline-offset:-2px}.panel-tab.disabled{color:var(--bower-text-muted);opacity:.55;cursor:default;pointer-events:none}.canvas{box-sizing:border-box;border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);background:var(--bower-canvas-well,var(--bower-canvas));width:100%;height:100%;position:relative;overflow:hidden}.canvas-centered{justify-content:center;align-items:center;display:flex}.canvas-image{object-fit:contain;width:100%;height:100%;display:block}.canvas-image.dimmed{opacity:.35}.canvas-overlay{flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.canvas-status{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary)}.photo-upload-body{flex-direction:column;gap:18px;width:min(520px,100% - 48px);display:flex}.photo-upload-drop{border:1px dashed var(--bower-line-strong);border-radius:var(--bower-radius-lg);background:var(--bower-surface);color:inherit;font:inherit;text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;transition:border-color .15s;display:flex}.photo-upload-drop:hover{border-color:var(--bower-accent)}.photo-upload-plus{font-size:var(--bower-font-size-3xl);color:var(--bower-accent-text);line-height:1}.photo-upload-title{font-size:var(--bower-font-size-lg);color:var(--bower-ink);font-weight:600}.photo-upload-formats{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted)}.photo-upload-tips{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);gap:4px;margin:0;padding-left:20px;line-height:1.5;display:grid}.photo-upload-sample{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);margin:0}.photo-upload-sample button{color:var(--bower-accent-text);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.photo-upload-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0}.canvas-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);text-align:center;padding:0 24px}.spinner{border:3px solid var(--bower-line-strong);border-top-color:var(--bower-accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite studio-spin}@keyframes studio-spin{to{transform:rotate(360deg)}}.dropzone{border:1px dashed var(--bower-line-strong);border-radius:var(--bower-radius-lg);background:var(--bower-surface-elevated);cursor:pointer;justify-content:center;align-items:center;height:150px;display:flex;overflow:hidden}.dropzone:hover{border-color:var(--bower-accent)}.dropzone-hint{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);text-align:center;padding:0 16px}.dropzone-preview{object-fit:cover;width:100%;height:100%}.params{flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:5px;display:flex}.field-label{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary)}.info-tip{vertical-align:-2px;color:var(--bower-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:4px;padding:0;display:inline-flex;position:relative}.info-tip:before{content:"";position:absolute;inset:-10px}.info-tip:hover,.info-tip[aria-describedby]{color:var(--bower-ink)}.field-hint{color:var(--bower-text-muted);margin-left:6px}.field select{width:100%;height:var(--bower-control-md);background:var(--bower-surface-elevated);color:var(--bower-ink);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);font-size:var(--bower-font-size-sm);cursor:pointer;padding:0 10px;font-family:inherit;transition:border-color .15s}@media (pointer:coarse){.field select{font-size:var(--bower-font-size-base)}}.field select:hover:not(:disabled,:focus){border-color:var(--bower-line-strong)}.field select:focus{border-color:var(--bower-focus-ring);box-shadow:0 0 0 1px var(--bower-focus-ring);outline:none}.select-control{display:flex;position:relative}.select-control select{appearance:none;padding-right:36px}.select-control .picker-chevron{color:var(--bower-text-muted);pointer-events:none;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.select-control:has(select:disabled) .picker-chevron{opacity:.5}@supports (appearance:base-select){.select-control select{appearance:base-select}.select-control select::picker(select){appearance:base-select}.select-control select{align-items:center}.select-control select::picker-icon{display:none}.select-control select::picker(select){background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);max-height:min(360px,60vh);margin-block:6px;padding:6px;box-shadow:0 12px 28px #00000073}.select-control option{border-radius:var(--bower-radius-sm);color:var(--bower-ink);font-size:var(--bower-font-size-sm);padding:4px 10px}.select-control option:hover,.select-control option:focus-visible{background:var(--bower-surface-elevated);outline:none}.select-control option:checked{background:var(--bower-accent-subtle);color:var(--bower-accent-text)}.select-control option::checkmark{display:none}.select-control option:disabled{display:none}.select-control optgroup{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);padding-top:6px;font-weight:500}}.palette-picker{position:relative}.picker-chevron{color:var(--bower-text-secondary);flex:none}.swatch-strip{border-radius:var(--bower-radius-xs);border:1px solid var(--bower-line-strong);flex:none;width:64px;height:18px;display:flex;overflow:hidden}.swatch-seg{flex:1}.palette-popover{z-index:20;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);padding:8px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 12px 28px #00000073}.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.palette-tile{border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);cursor:pointer;text-align:left;background:0 0;flex-direction:column;gap:7px;padding:9px;font-family:inherit;transition:border-color .15s;display:flex}.palette-tile:hover{border-color:var(--bower-line-strong);background:var(--bower-surface)}.palette-tile.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle)}.palette-tile-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.palette-tile-name{font-size:var(--bower-font-size-sm);color:var(--bower-ink)}.palette-tile .swatch-strip{width:100%;height:20px;margin-top:auto}.picker-chip{background:var(--bower-surface-elevated);width:100%;color:var(--bower-ink);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);font-family:inherit;font-size:var(--bower-font-size-sm);text-align:left;cursor:pointer;align-items:center;gap:9px;padding:6px 10px 6px 6px;transition:border-color .15s;display:flex}.picker-chip:hover:not(:disabled){border-color:var(--bower-line-strong)}.picker-chip.empty{border-style:dashed;border-color:var(--bower-line-strong);background:0 0}.picker-chip.empty:hover:not(:disabled){border-color:var(--bower-text-muted)}.picker-chip[aria-expanded=true]{border-color:var(--bower-accent)}.palette-chip-strip{display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #00000038}.palette-chip-strip>span{flex:1}.picker-chip:disabled{opacity:.5;cursor:not-allowed}.picker-chip .picker-chevron{color:var(--bower-text-muted);flex:none}.picker-chip-media,.picker-chip-plus{border-radius:var(--bower-radius-sm);flex:none;width:46px;height:36px}.picker-chip-plus{background:var(--bower-surface-elevated);color:var(--bower-text-muted);justify-content:center;align-items:center;display:flex}.picker-chip-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.picker-chip-name.placeholder{color:var(--bower-text-secondary)}.catalog-media{background:var(--bower-canvas);display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000038}.catalog-media img,.catalog-media .catalog-placeholder{object-fit:cover;width:100%;height:100%;display:block}.catalog-media.is-image:after{content:"";pointer-events:none;background:linear-gradient(#ffffff1f,#fff0 30%,#0000 55%,#0000004d);position:absolute;inset:0}.room-sketch-line{fill:none;stroke:var(--bower-line-strong);stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.style-modal{background:var(--bower-surface);border:1px solid var(--bower-line);border-radius:var(--bower-radius-xl);flex-direction:column;width:min(960px,100%);height:min(720px,100%);display:flex;overflow:hidden;box-shadow:0 28px 70px #0000008c}.style-modal-header{border-bottom:1px solid var(--bower-line);align-items:center;gap:12px;padding:12px 16px;display:flex}.style-modal-title{font-size:var(--bower-font-size-md);color:var(--bower-ink);flex:none;margin:0;font-weight:600}.style-search{min-width:0;height:var(--bower-control-sm);background:var(--bower-surface-elevated);color:var(--bower-ink);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);font-family:inherit;font-size:var(--bower-font-size-sm);flex:0 260px;margin-left:auto;padding:0 10px}.style-search:focus{outline:2px solid var(--bower-focus-ring);outline-offset:-1px}.style-modal-close{width:var(--bower-control-sm);height:var(--bower-control-sm);color:var(--bower-text-secondary);border-radius:var(--bower-radius-md);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:flex}.style-modal-close:hover{color:var(--bower-ink);background:var(--bower-surface-floating)}.style-sections{background:var(--bower-canvas-well,var(--bower-canvas));flex-direction:column;flex:1;gap:18px;min-height:0;padding:16px;display:flex;overflow-y:auto}.style-section{flex-direction:column;gap:8px;display:flex}.style-section-title{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted)}.style-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.style-card{background:var(--bower-surface-elevated);color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-sm);text-align:left;cursor:pointer;border:2px solid #0000;border-radius:10px;flex-direction:column;padding:0;transition:border-color .15s,transform .15s;display:flex;position:relative;overflow:hidden}.style-card:hover{border-color:var(--bower-line-strong);transform:translateY(-1px)}.style-card:focus-visible{outline:2px solid var(--bower-focus-ring);outline-offset:2px}.style-card.selected{border-color:var(--bower-accent)}.style-card-frame{display:block;position:relative}.style-card-media{aspect-ratio:4/3;width:100%;box-shadow:none}.style-card-check{background:var(--bower-accent);width:20px;height:20px;color:var(--bower-on-accent);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:7px;right:7px;box-shadow:0 1px 4px #00000059}.style-card-label{justify-content:space-between;align-items:baseline;gap:6px;padding:8px 10px;display:flex}.style-card-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.style-card-tag{font-size:var(--bower-font-size-xs);color:var(--bower-accent-text);flex:none}.style-empty{color:var(--bower-text-muted);font-size:var(--bower-font-size-sm);margin:8px 0}@media (prefers-reduced-motion:reduce){.studio-back,.picker-chip,.field select,.palette-tile,.panel-row,.lighting-tile,.occasion-tile,.variation-choice,.surface-option,.studio-compare,.versions-graph,.style-modal-close,.style-card{transition:none}.style-card:hover{transform:none}}@media (width<=560px){.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.style-modal-title{display:none}.style-search{flex:1;margin-left:0}}.palette-check{color:var(--bower-accent);flex:none}.studio-generate{box-sizing:border-box;height:var(--bower-control-lg);border-radius:var(--bower-radius-md);background:var(--bower-accent);color:var(--bower-on-accent);font-size:var(--bower-font-size-sm);text-align:center;cursor:pointer;border:none;flex:none;justify-content:center;align-items:center;font-family:inherit;font-weight:600;text-decoration:none;display:flex}a.studio-generate:hover,.studio-generate:hover:not(:disabled){background:var(--bower-accent-hover)}.studio-generate:disabled{opacity:.5;cursor:not-allowed}.studio-error{font-size:var(--bower-font-size-sm);color:var(--bower-danger-text);margin:0}.prompt-bar-shell{z-index:20;flex-direction:column;align-items:center;gap:4px;width:min(640px,100% - 144px);display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.prompt-bar{background:var(--bower-surface-elevated);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex:none;align-items:center;gap:10px;width:100%;padding:8px 10px 8px 14px;transition:width .16s,border-radius .16s;display:flex;box-shadow:0 6px 18px #00000059}.prompt-bar-shell.compact:not(:focus-within) .prompt-bar{border-radius:26px;width:min(320px,100%)}.prompt-bar-shell.compact:not(:focus-within) .prompt-bar-scope{display:none}.prompt-bar:focus-within{border-color:var(--bower-focus-ring);box-shadow:0 6px 18px #00000059, 0 0 0 1px var(--bower-focus-ring)}.prompt-bar-spark{color:var(--bower-accent);flex:none;display:inline-flex}.prompt-bar-scope{border-radius:var(--bower-radius-full);border:1px solid var(--bower-line-strong);background:var(--bower-surface);max-width:34%;color:var(--bower-text-secondary);font-size:var(--bower-font-size-xs);flex:none;align-items:center;gap:8px;padding:3px 4px 3px 9px;line-height:1.4;display:inline-flex}.prompt-bar-scope-object,.prompt-bar-scope-region,.prompt-bar-scope-mask{border-color:var(--bower-accent);background:var(--bower-accent-subtle);color:var(--bower-accent)}.prompt-bar-scope-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prompt-bar-scope-button{width:16px;height:16px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.prompt-bar-scope-button:before{content:"";position:absolute;inset:-6px}.prompt-bar-scope-button:hover{background:color-mix(in srgb, var(--bower-accent) 25%, transparent)}.prompt-bar-mask{min-height:var(--bower-control-xs);font-family:inherit;font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);border:1px dashed var(--bower-line-strong);border-radius:var(--bower-radius-full);cursor:pointer;background:0 0;flex:none;align-items:center;gap:5px;padding:3px 10px;line-height:1.4;display:inline-flex}.prompt-bar-mask:hover:not(:disabled){color:var(--bower-accent);border-color:var(--bower-accent)}.prompt-bar-mask:disabled{color:var(--bower-text-disabled);cursor:default}.prompt-bar-shell.compact:not(:focus-within) .prompt-guide{display:none}.prompt-guide{box-sizing:border-box;width:min(360px,100%);font-size:var(--bower-font-size-sm);color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;gap:8px;padding:12px 14px;line-height:1.45;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 12px 28px #00000073}.prompt-guide-scope{border-bottom:1px solid var(--bower-line);color:var(--bower-text-secondary);margin:0;padding-bottom:8px}.prompt-guide-title{margin:0;font-weight:600}.prompt-guide-examples{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.prompt-guide-do{color:var(--bower-success-text)}.prompt-guide-avoid{color:var(--bower-text-muted)}.prompt-guide-note{color:var(--bower-text-secondary);margin:0}.prompt-bar-input{min-width:0;height:var(--bower-control-sm);text-overflow:ellipsis;color:var(--bower-ink);font-size:var(--bower-font-size-md);background:0 0;border:none;flex:1;font-family:inherit}@media (pointer:coarse){.prompt-bar-input{font-size:var(--bower-font-size-base)}}.prompt-bar-input::placeholder{color:var(--bower-text-muted)}.prompt-bar-input:focus{outline:none}.prompt-bar-input:disabled{cursor:not-allowed}.prompt-bar-send{width:var(--bower-control-md);height:var(--bower-control-md);background:var(--bower-accent);color:var(--bower-on-accent);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.prompt-bar-send:hover:not(:disabled){background:var(--bower-accent-hover)}.prompt-bar-send:disabled{opacity:.45;cursor:not-allowed}.prompt-bar-spinner{border:2px solid color-mix(in srgb, var(--bower-on-accent) 40%, transparent);border-top-color:var(--bower-on-accent);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite studio-spin}.panel-section{flex-direction:column;gap:8px;display:flex}.panel-section-title{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary)}.edit-recolor{flex-direction:column;gap:8px;display:flex}.edit-recolor-hint{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);margin:0;line-height:1.5}.panel-link{color:var(--bower-accent-text);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.panel-rows{flex-direction:column;gap:8px;display:flex}.panel-row{background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);color:var(--bower-ink);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:12px;font-family:inherit;transition:border-color .15s;display:flex}.panel-row:hover:not(:disabled){border-color:var(--bower-line-strong)}.panel-row:disabled{opacity:.5;cursor:not-allowed}.panel-row-icon{color:var(--bower-accent);flex:none;display:inline-flex}.panel-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.panel-row-label{font-size:var(--bower-font-size-sm);line-height:1.3}.panel-row-description{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted);line-height:1.4}.panel-row-chevron{color:var(--bower-text-muted);flex:none}.enhance-relight{flex-direction:column;gap:10px;display:flex}.lighting-picker{flex-direction:column;gap:12px;display:flex}.lighting-group{flex-direction:column;gap:6px;display:flex}.lighting-group-title{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted)}.lighting-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.lighting-tile{background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);color:var(--bower-ink);text-align:left;cursor:pointer;flex-direction:column;gap:4px;padding:10px;font-family:inherit;transition:border-color .15s;display:flex}.lighting-tile:hover:not(:disabled){border-color:var(--bower-line-strong)}.lighting-tile-media{aspect-ratio:4/3;border-radius:var(--bower-radius-sm);width:100%;margin-bottom:4px}.lighting-tile.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle)}.lighting-tile:disabled{opacity:.5;cursor:not-allowed}.lighting-tile-name{font-size:var(--bower-font-size-sm);line-height:1.3}.enhance-decorate{flex-direction:column;gap:10px;display:flex}.decorate-picker{flex-direction:column;gap:12px;display:flex}.occasion-picker{flex-direction:column;gap:12px;max-height:320px;display:flex;overflow-y:auto}.occasion-group{flex-direction:column;gap:6px;display:flex}.occasion-group-title{font-size:var(--bower-font-size-xs);color:var(--bower-text-muted)}.occasion-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.occasion-tile{background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);color:var(--bower-ink);text-align:left;cursor:pointer;padding:9px 10px;font-family:inherit;transition:border-color .15s}.occasion-tile:hover:not(:disabled){border-color:var(--bower-line-strong)}.occasion-tile.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle)}.occasion-tile:disabled{opacity:.5;cursor:not-allowed}.occasion-tile-name{font-size:var(--bower-font-size-sm);line-height:1.3}.intensity-choices{gap:6px;display:flex}.selection-container{isolation:isolate;--moveable-color:var(--bower-accent);width:100%;height:100%;position:relative}.selection-image{cursor:crosshair;-webkit-user-select:none;user-select:none}.selection-target{box-sizing:border-box;border:1px solid var(--bower-accent);border-radius:var(--bower-radius-xs);pointer-events:none;background:0 0;position:absolute;box-shadow:0 0 0 1px #0006}.selection-draft{box-sizing:border-box;border:1.5px dashed var(--bower-accent);border-radius:var(--bower-radius-xs);pointer-events:none;background:0 0;position:absolute;box-shadow:0 0 0 1px #0006}.selection-outlines{pointer-events:none;position:absolute;overflow:visible}.selection-outline{fill:none;stroke:color-mix(in srgb, var(--bower-accent) 55%, transparent);stroke-width:1px}.selection-outline-surface{stroke:color-mix(in srgb, var(--bower-accent) 26%, transparent);stroke-dasharray:3 3}.selection-outline-hover{fill:color-mix(in srgb, var(--bower-accent) 32%, transparent);stroke:var(--bower-accent-hover);stroke-width:2px}.selection-outline-hover-surface{fill:color-mix(in srgb, var(--bower-accent) 14%, transparent)}.selection-outline-selected{fill:color-mix(in srgb, var(--bower-accent) 22%, transparent);stroke:var(--bower-accent);stroke-width:2px}.selection-outline-selected-surface{fill:color-mix(in srgb, var(--bower-accent) 10%, transparent)}.selection-anchor{pointer-events:none;position:absolute}.selection-hover{box-sizing:border-box;border:1.5px solid var(--bower-accent);background:color-mix(in srgb, var(--bower-accent) 22%, transparent);border-radius:var(--bower-radius-xs);pointer-events:none;position:absolute}.selection-hover-outlined{background:0 0;border-color:#0000}.selection-hover-label{font-size:var(--bower-font-size-2xs);color:var(--bower-on-accent);background:var(--bower-accent);border-radius:var(--bower-radius-sm);white-space:nowrap;padding:2px 7px;position:absolute;top:-22px;left:0}.selection-loading{border:2px solid #ffffff59;border-top-color:var(--bower-accent);pointer-events:none;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;animation:.7s linear infinite studio-spin;position:absolute}.selection-toolbar{background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);z-index:30;align-items:center;gap:2px;padding:4px;display:flex;box-shadow:0 10px 26px #00000080}.selection-toolbar-label{font-size:var(--bower-font-size-sm);color:var(--bower-accent);border-right:1px solid var(--bower-line-strong);white-space:nowrap;margin-right:2px;padding:6px 10px 6px 8px}.selection-tool{font-size:var(--bower-font-size-sm);color:var(--bower-ink);border-radius:var(--bower-radius-sm);cursor:pointer;min-height:var(--bower-control-sm);background:0 0;border:none;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;display:inline-flex}.selection-tool:hover{background:var(--bower-surface-elevated)}.selection-tool svg{flex:none}.credit-cost{align-items:center;margin-left:6px;font-weight:600;display:inline-flex}.credit-cost-shown{align-items:center;gap:2px;display:inline-flex}.credit-cost-shown svg{width:13px;height:13px}.credit-cost-spoken{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.selection-tool .credit-cost,.prompt-bar-cost .credit-cost{font-size:var(--bower-font-size-xs);color:var(--bower-warning-text);margin-left:0}.prompt-bar-cost{flex:none;display:inline-flex}.mask-canvas{z-index:4;opacity:.5;touch-action:none;cursor:crosshair;position:absolute}.mask-canvas-brush{cursor:none}.mask-canvas-object{cursor:pointer}.mask-outline{z-index:5;pointer-events:none;position:absolute;overflow:visible}.mask-outline path{fill:none;stroke:var(--bower-accent-hover);stroke-width:1.5px;stroke-dasharray:4 3}.mask-brush-cursor{z-index:6;box-sizing:border-box;pointer-events:none;visibility:hidden;border:1.5px solid #fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000080}.mask-brush-cursor-subtract{border-style:dashed}.mask-toolbar-shell{z-index:30;flex-direction:column;align-items:center;gap:6px;max-width:calc(100% - 24px);display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.mask-toolbar{background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:4px;display:flex;box-shadow:0 10px 26px #00000080}.mask-toolbar-group{align-items:center;gap:2px;display:flex}.mask-toolbar-group+.mask-toolbar-group{border-left:1px solid var(--bower-line);padding-left:6px}.mask-tool{min-width:var(--bower-control-sm);font-family:inherit;font-size:var(--bower-font-size-sm);color:var(--bower-ink);border-radius:var(--bower-radius-sm);cursor:pointer;min-height:var(--bower-control-sm);background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:6px;display:inline-flex}.mask-tool:hover:not(:disabled){background:var(--bower-surface-elevated)}.mask-tool.active{color:var(--bower-accent-text);background:var(--bower-accent-subtle)}.mask-tool:disabled{color:var(--bower-text-disabled);cursor:default}.mask-mode-option{min-width:var(--bower-control-sm);font-family:inherit;font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);border-radius:var(--bower-radius-sm);cursor:pointer;min-height:var(--bower-control-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:inline-flex}.mask-mode-option.active{color:var(--bower-ink);background:var(--bower-surface-elevated)}.mask-size{color:var(--bower-text-secondary);gap:6px;padding-right:4px}.mask-size input{width:84px;accent-color:var(--bower-accent)}.mask-size input:disabled{opacity:.4;pointer-events:none}.mask-toolbar-hint{font-size:var(--bower-font-size-sm);color:var(--bower-text-secondary);background:var(--bower-surface-floating);border-radius:var(--bower-radius-sm);margin:0;padding:3px 9px}.mask-toolbar-hint b{color:var(--bower-ink);font-weight:600}@media (hover:none){.mask-toolbar-keys{display:none}}@media (width<=1280px){.prompt-bar-shell{width:calc(100% - 56px)}.prompt-bar-mask{padding:3px 7px}.prompt-bar-mask span{display:none}}.selection-error{left:50%;bottom:calc(var(--canvas-bar-zone,0px) + 12px);max-width:80%;font-size:var(--bower-font-size-sm);color:var(--bower-on-danger);background:var(--bower-danger);border-radius:var(--bower-radius-md);z-index:30;padding:8px 12px;position:absolute;transform:translate(-50%)}.layout-progress{z-index:6;box-sizing:border-box;white-space:nowrap;max-width:28px;height:28px;font-size:var(--bower-font-size-xs);color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-full);pointer-events:auto;cursor:default;flex-direction:row-reverse;align-items:center;gap:8px;padding:0 6px;line-height:1;transition:max-width .3s,padding-left .3s;animation:.25s ease-out layout-progress-in;display:flex;position:absolute;top:12px;right:12px;overflow:hidden;box-shadow:0 4px 12px #0006}.layout-progress:hover,.layout-progress.is-open{max-width:calc(100% - 24px);padding-left:12px}.layout-progress-spinner{box-sizing:border-box;border:2px solid var(--bower-line-strong);border-top-color:var(--bower-accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite studio-spin}.selection-outlines-reveal .selection-outline{animation:1.8s ease-out selection-outline-reveal}@keyframes layout-progress-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes selection-outline-reveal{0%{opacity:0}35%{opacity:1;stroke-width:2px}}@media (prefers-reduced-motion:reduce){.layout-progress{transition:none;animation:none}.selection-outlines-reveal .selection-outline{animation:none}}.variation-choices{gap:6px;display:flex}.variation-choice{background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;flex:1;padding:7px 0;transition:border-color .15s,background-color .15s}.variation-choice:hover:not(:disabled){border-color:var(--bower-line-strong);background:var(--bower-surface)}.variation-choice.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle)}.variation-choice:disabled{cursor:not-allowed;opacity:.55}.intensity-choice{flex-direction:column;align-items:center;gap:5px;padding:6px 6px 7px;display:flex}.intensity-preview{aspect-ratio:4/3;border-radius:var(--bower-radius-sm);background:var(--bower-canvas);width:100%;display:block}.intensity-accent{fill:var(--bower-accent-text)}.intensity-garland{fill:none;stroke:var(--bower-accent-text);stroke-width:1.25px;vector-effect:non-scaling-stroke}.studio-credit-block{font-size:var(--bower-font-size-sm);color:var(--bower-warning-text);margin:0;line-height:1.5}.surface-panel{flex-direction:column;gap:12px;display:flex}.surface-options{flex-wrap:wrap;gap:6px;display:flex}.surface-option{background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-full);color:var(--bower-ink);font-family:inherit;font-size:var(--bower-font-size-sm);cursor:pointer;min-height:var(--bower-control-sm);padding:6px 10px;transition:border-color .15s,background-color .15s}.surface-option:hover:not(:disabled){border-color:var(--bower-line-strong);background:var(--bower-surface)}.surface-option.selected{border-color:var(--bower-accent);background:var(--bower-accent-subtle)}.surface-option:disabled{opacity:.5;cursor:not-allowed}.surface-option:has(>.material-preview){border-radius:var(--bower-radius-md);text-align:left;flex:calc(50% - 3px);align-items:center;gap:8px;padding:3px 10px 3px 3px;line-height:1.25;display:inline-flex}.material-preview{border-radius:var(--bower-radius-xs);flex:none;width:28px;height:28px}.material-preview-ground{fill:var(--bower-line-strong)}.material-preview-face{fill:var(--bower-surface);stroke:var(--bower-line-strong);stroke-linejoin:round}.surface-material-chip{min-height:var(--bower-control-lg);padding-left:12px}.surface-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.surface-swatches{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.surface-swatch{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-sm);cursor:pointer;width:26px;height:26px;padding:0}.surface-swatch:hover:not(:disabled){border-color:var(--bower-text-muted)}.surface-swatch.selected{box-shadow:0 0 0 2px var(--bower-accent);border-color:var(--bower-accent)}.surface-swatch:disabled{opacity:.5;cursor:not-allowed}.surface-swatch-custom{font-family:inherit;font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 8px 0 0;display:inline-flex}.surface-swatch-custom:disabled{opacity:.5;cursor:not-allowed}.surface-swatch-custom-chip{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-sm);background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);width:26px;height:26px}.surface-swatch-custom.selected .surface-swatch-custom-chip,.surface-swatch-custom[aria-expanded=true] .surface-swatch-custom-chip{box-shadow:0 0 0 2px var(--bower-accent);border-color:var(--bower-accent)}.color-popover{z-index:30;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;gap:8px;padding:10px;display:flex;box-shadow:0 12px 28px #00000073}.color-popover .react-colorful{width:200px;height:180px}.color-popover .react-colorful__saturation{border-radius:var(--bower-radius-sm) var(--bower-radius-sm) 0 0}.color-popover .react-colorful__last-control{border-radius:0 0 var(--bower-radius-sm) var(--bower-radius-sm)}.color-popover-hex{height:var(--bower-control-sm);background:var(--bower-surface-elevated);color:var(--bower-ink);border:1px solid var(--bower-line);border-radius:var(--bower-radius-sm);font-family:var(--mono);font-size:var(--bower-font-size-sm);text-transform:uppercase;padding:0 8px}.color-popover-hex:focus{border-color:var(--bower-focus-ring);outline:none}.surface-note{font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);margin:0;line-height:1.45}.studio-topbar-right{align-items:center;gap:10px;display:flex;position:relative}.studio-compare{font-size:var(--bower-font-size-xs);color:var(--bower-ink);background:var(--bower-surface-elevated);border:1px solid var(--bower-line);border-radius:var(--bower-radius-md);cursor:pointer;min-height:var(--bower-control-sm);align-items:center;gap:6px;padding:6px 12px;font-family:inherit;transition:border-color .15s;display:inline-flex}.studio-compare:hover:not(:disabled,.active,[aria-expanded=true]){border-color:var(--bower-line-strong)}.studio-compare[aria-expanded=true]{border-color:var(--bower-accent)}.studio-compare svg{color:var(--bower-accent)}.studio-compare.active{color:var(--bower-on-accent);background:var(--bower-accent);border-color:var(--bower-accent)}.studio-compare.active svg{color:currentColor}.studio-compare:disabled{color:var(--bower-text-muted);opacity:.55;cursor:default}.studio-compare:disabled svg{color:var(--bower-text-muted)}.download-menu{position:relative}.download-busy{border:2px solid var(--bower-line-strong);border-top-color:var(--bower-accent);border-radius:50%;width:10px;height:10px;animation:.8s linear infinite studio-spin}.download-popover{z-index:20;background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-lg);flex-direction:column;gap:2px;width:248px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #00000073}.download-row{height:var(--bower-control-md);font-size:var(--bower-font-size-sm);color:var(--bower-ink);border-radius:var(--bower-radius-sm);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-family:inherit;display:flex}.download-row:hover:not(:disabled){background:var(--bower-surface-elevated)}.download-row:disabled{color:var(--bower-text-muted);cursor:default}.download-row-main{align-items:baseline;gap:8px;min-width:0;display:inline-flex}.download-row-size{font-size:var(--bower-font-size-xs);font-variant-numeric:tabular-nums;color:var(--bower-text-muted)}.download-row-cost{font-size:var(--bower-font-size-sm);color:var(--bower-warning-text);align-items:center;gap:4px;font-weight:600;display:inline-flex}.download-row-status{font-size:var(--bower-font-size-xs);color:var(--bower-text-secondary);align-items:center;gap:6px;display:inline-flex}.download-spinner{border:2px solid var(--bower-line-strong);border-top-color:var(--bower-accent);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite studio-spin}.download-hint,.download-note,.download-error{font-size:var(--bower-font-size-sm);margin:4px 10px 6px;line-height:1.4}.download-hint{color:var(--bower-text-muted)}.download-note{color:var(--bower-warning-text)}.download-error{color:var(--bower-danger-text)}.compare-container{touch-action:none;cursor:ew-resize;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative;overflow:hidden}.compare-image{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.compare-reference{will-change:clip-path;bottom:auto;right:auto}.compare-divider{pointer-events:none;background:#ffffffe6;width:2px;margin-left:-1px;position:absolute;box-shadow:0 0 8px #00000073}.compare-handle{width:34px;height:34px;color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);pointer-events:auto;cursor:ew-resize;border-radius:50%;justify-content:center;align-items:center;margin:-17px 0 0 -17px;display:flex;position:absolute;top:50%;left:50%;box-shadow:0 6px 18px #00000080}.version-slot{flex:none;position:relative}.version-pin{width:20px;height:20px;color:var(--bower-ink);border:1px solid var(--bower-line-strong);cursor:pointer;background:#181512b8;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:4px;left:4px}.version-pin:before{content:"";position:absolute;inset:-2px}.version-pin:hover{color:var(--bower-accent);border-color:var(--bower-accent-hover)}.version-pin.pinned{color:var(--bower-on-accent);background:var(--bower-accent);border-color:var(--bower-accent)}.zoom-stage{touch-action:none}.zoom-readout{z-index:5;min-height:var(--bower-control-xs);font-family:inherit;font-size:var(--bower-font-size-2xs);font-variant-numeric:tabular-nums;color:var(--bower-ink);background:var(--bower-surface-floating);border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-full);cursor:pointer;padding:3px 9px;position:absolute;bottom:10px;left:10px;box-shadow:0 4px 12px #0006}@media (width<=1280px){.zoom-readout{top:10px;bottom:auto}}.zoom-readout:hover{border-color:var(--bower-accent)}.zoom-pan-ready,.zoom-pan-ready *{cursor:grab}.zoom-panning,.zoom-panning *{cursor:grabbing}.page{box-sizing:border-box;place-items:center;min-height:100svh;padding:24px;display:grid}.card{box-sizing:border-box;border:1px solid var(--bower-line);border-radius:var(--bower-radius-lg);background:var(--bower-surface);width:min(468px,100%);padding:24px;box-shadow:0 10px 30px #2a242014}.card-brand{height:30px;color:var(--bower-accent);margin-bottom:24px;display:block}.card h1{font-size:var(--bower-font-size-3xl);margin:0 0 20px}.subtitle{color:var(--bower-text-secondary);margin-bottom:20px}.form{gap:14px;display:grid}.form label{text-align:left;font-size:var(--bower-font-size-md);color:var(--bower-ink);gap:6px;display:grid}.form input{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);color:var(--bower-ink);font-size:var(--bower-font-size-base);padding:10px 12px}.form button{border-radius:var(--bower-radius-md);font-size:var(--bower-font-size-base);background:var(--bower-accent);color:var(--bower-on-accent);cursor:pointer;border:none;margin-top:6px;padding:10px 12px}.form button:disabled{opacity:.6;cursor:not-allowed}.form-note{text-align:left;font-size:var(--bower-font-size-sm);color:var(--bower-text-muted);margin:0;line-height:1.45}.auth-note{margin-top:16px}.auth-note+.auth-note{margin-top:8px}.auth-step-forward:not([hidden]){animation:.2s ease-out auth-step-forward}.auth-step-back:not([hidden]){animation:.2s ease-out auth-step-back}@keyframes auth-step-forward{0%{opacity:0;transform:translate(12px)}}@keyframes auth-step-back{0%{opacity:0;transform:translate(-12px)}}@media (prefers-reduced-motion:reduce){.auth-step:not([hidden]){animation:none}}.auth-choices{gap:12px;max-width:400px;margin:0 auto;display:grid}.choice-button{border:1px solid var(--bower-line-strong);background:var(--bower-surface);height:40px;color:var(--bower-ink);font-size:var(--bower-font-size-md);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:10px;display:flex;position:relative}.choice-button svg{position:absolute;left:12px}.choice-button:hover{background:var(--bower-accent-subtle)}.email-link{gap:8px;margin-top:20px;display:grid}.secondary-button{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);color:var(--bower-ink);font-size:var(--bower-font-size-base);cursor:pointer;background:0 0;padding:10px 12px}.secondary-button:disabled{opacity:.6;cursor:not-allowed}.auth-note a{color:var(--bower-accent-text)}.link-button{color:var(--bower-accent);font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:0;text-decoration:underline}.back-link{color:var(--bower-text-secondary);align-items:center;gap:6px;margin:0 0 12px;text-decoration:none;display:flex}.back-link:hover{color:var(--bower-ink)}.password-field{gap:6px;display:grid}.password-field-head{justify-content:space-between;align-items:baseline;display:flex}.form .forgot-link{color:var(--bower-accent);font-size:var(--bower-font-size-sm);cursor:pointer;background:0 0;border:none;margin:0;padding:0}.form .forgot-link:hover{color:var(--bower-accent-hover);text-decoration:underline}.auth-switch{margin-top:-12px}.mode-link{font-size:inherit;margin:0;font-weight:600;text-decoration:none}.message{font-size:var(--bower-font-size-md);text-align:left;margin-top:14px}.message.success{color:var(--bower-success-text)}.message.error{color:var(--bower-danger-text)}.welcome-card{text-align:center}.top-actions{justify-content:flex-end;margin-bottom:12px;display:flex}.logout-btn{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);color:var(--bower-ink);cursor:pointer;background:0 0;padding:6px 10px}.logout-btn:disabled{opacity:.6;cursor:not-allowed}.welcome-card h1{margin-bottom:16px}.google-signin-wrapper{justify-content:center;display:flex}.google-loading{text-align:center;color:var(--bower-text-secondary);font-size:var(--bower-font-size-md);padding:12px}.google-btn{border:1px solid var(--bower-line-strong);border-radius:var(--bower-radius-md);background:var(--bower-surface);width:100%;color:var(--bower-ink);font-size:var(--bower-font-size-base);cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:10px 12px;display:flex}.google-btn:hover{background:var(--bower-accent-subtle)}.google-btn:disabled{opacity:.6;cursor:not-allowed}.consent-banner{z-index:1000;border:1px solid var(--bower-line);background:var(--bower-surface-floating);width:min(480px,100vw - 32px);color:var(--bower-ink);font-size:var(--bower-font-size-sm);border-radius:12px;padding:16px;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2a24201f}.consent-banner-text{margin:0 0 12px;line-height:1.45}.consent-banner-text a{color:var(--bower-accent-text)}.consent-banner-actions{gap:8px;display:flex}.consent-banner-button{height:var(--bower-control-md);border:1px solid var(--bower-line-strong);background:var(--bower-surface);color:var(--bower-ink);font-size:var(--bower-font-size-sm);cursor:pointer;border-radius:8px;flex:1;font-weight:500}.consent-banner-button:hover{background:var(--bower-accent-subtle)}.consent-banner-button:focus-visible{outline:2px solid var(--bower-focus-ring);outline-offset:2px}
