:root,:root[data-theme=dark]{--bg:#0d0e11;--surface:#16181d;--surface-2:#1e2128;--surface-3:#282c35;--glass:#14161bb8;--glass-strong:#17191fe0;--glass-edge:inset 0 1px 0 #ffffff14;--viewport-inset:inset 0 2px 14px #00000059;--text:#f3f4f6;--text-dim:#a4a9b4;--text-mute:#6e7380;--border:#ffffff12;--border-strong:#ffffff24;--accent:#7e9cff;--accent-hover:#93acff;--accent-ink:#0b0e16;--accent-soft:#7e9cff26;--danger:#ff6b6b;--warning:#e7a13d;--heart:#ff5d7d;--bg-ambient:radial-gradient(1100px 480px at 50% -120px, #7e9cff12, transparent 70%);--backdrop:#000;--ss-ink:#fff;--media-scrim:#0000008c;--media-ink:#fff;--shadow-1:0 1px 2px #0006;--shadow-2:0 10px 30px #00000073;--shadow-pop:0 16px 44px #0009;--brand-grad:linear-gradient(140deg, #7e9cff, #b58bff);--brand-ink:#fff}:root[data-theme=light]{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f1f5;--surface-3:#e6e8ee;--glass:#ffffffc7;--glass-strong:#ffffffeb;--glass-edge:inset 0 1px 0 #ffffffb3;--viewport-inset:none;--text:#181a20;--text-dim:#565b68;--text-mute:#9398a6;--border:#10121b14;--border-strong:#10121b29;--accent:#4f6bff;--accent-hover:#3f5cff;--accent-ink:#fff;--accent-soft:#4f6bff1f;--danger:#e5484d;--warning:#b06f0a;--heart:#ff4d6d;--bg-ambient:radial-gradient(1100px 480px at 50% -120px, #4f6bff0d, transparent 70%);--backdrop:#fff;--ss-ink:#14161c;--shadow-1:0 1px 2px #10121b12;--shadow-2:0 10px 30px #10121b1a;--shadow-pop:0 16px 44px #10121b29;--brand-grad:linear-gradient(140deg, #4f6bff, #9b6bff);--brand-ink:#fff}.ss-stage[data-backdrop=dark]{--backdrop:#000;--ss-ink:#fff}.ss-stage[data-backdrop=light]{--backdrop:#fff;--ss-ink:#14161c}:root{--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s8:48px;--s10:72px;--s1h:6px;--s2h:10px;--s3h:14px;--icon-xs:14px;--icon-sm:22px;--icon-md:28px;--icon-lg:38px;--control-h:36px;--control-pad-x:var(--s3);--control-radius:var(--r-sm);--control-bg:var(--bg);--control-border:var(--border-strong);--topbar-bar-h:58px;--topbar-h:74px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--t-xs:11px;--t-sm:13px;--t-base:14px;--t-md:15px;--t-lg:17px;--t-xl:22px;--t-2xl:34px;--ease:cubic-bezier(.2, .7, .2, 1);--ease-spring:cubic-bezier(.34, 1.35, .4, 1);--ease-out:cubic-bezier(.32, .72, 0, 1);--dur:.16s;--dur-slow:.32s;--dur-pop:.26s;--glass-blur:blur(24px) saturate(1.7);--font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Segoe UI", system-ui, sans-serif;--rate-happy:#57c98b;--rate-neutral:#b9bcc6;--rate-sad:#ff6b6b}*{box-sizing:border-box}html,body,#root{height:100%}body{background-color:var(--bg);background-image:var(--bg-ambient);color:var(--text);font-family:var(--font);font-size:var(--t-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-repeat:no-repeat;margin:0;line-height:1.45}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font-family:inherit}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}img[data-state=error]{opacity:.45;animation:none}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-soft)}@keyframes menu-in{0%{opacity:0;transform:scale(.97)translateY(-4px)}}@keyframes dlg-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.96)}}@keyframes scrim-in{0%{opacity:0}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}}@keyframes check-in{0%{transform:scale(.4)}}@media (prefers-reduced-motion:reduce){.menu-pop,.ctxmenu,.ui-select-content,.dlg,.dlg-scrim,.actionbar,.bulk-toast,.import-toast,.modal,.compare-drop-label{animation:none!important}}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:var(--r-pill);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}::-webkit-scrollbar-track{background:0 0}.app{flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.brand{align-items:center;gap:var(--s2);font-family:inherit;font-weight:500;font-size:var(--t-lg);letter-spacing:-.01em;color:inherit;background:0 0;border:0;padding:0;display:flex}.brand-mark{background:var(--brand-grad);width:22px;height:22px;box-shadow:var(--shadow-1);border-radius:7px}.brand-logo{object-fit:contain;border-radius:var(--r-sm);width:auto;max-width:160px;height:24px;display:block}.brand-logo--loading{background:var(--surface-2);opacity:.6;width:96px;animation:brand-logo-pulse 1.2s var(--ease) infinite}@keyframes brand-logo-pulse{50%{opacity:.3}}.spacer{margin-left:auto}.icon-btn{appearance:none;background:var(--surface-2);width:34px;height:34px;color:var(--text-dim);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;font-size:var(--t-sm);letter-spacing:.02em;transition:all var(--dur) var(--ease);place-items:center;font-weight:600;line-height:1;display:grid}.icon-btn:hover:not(:disabled){color:var(--text);border-color:var(--border-strong);background:var(--surface-3)}.icon-btn:active:not(:disabled){transition-duration:60ms;transform:scale(.94)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn--danger{color:var(--text-dim)}.icon-btn--danger:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.main{scrollbar-gutter:stable;min-height:0;padding-top:var(--topbar-h);flex:1;overflow-y:auto}.main--scene,.main--compare,.main--editor{scrollbar-gutter:auto;overflow:hidden}.section{padding:var(--s6);max-width:1320px;margin:0 auto}.section-head{align-items:center;gap:var(--s4);margin-bottom:var(--s3);display:flex}.section-title{font-size:var(--t-xl);letter-spacing:-.02em;align-items:center;gap:var(--s2);font-weight:700;display:flex}.section-meta{color:var(--text-mute);font-size:var(--t-sm)}.btn{appearance:none;cursor:pointer;font-weight:650;font-size:var(--t-sm);border-radius:var(--r-pill);align-items:center;gap:var(--s2);transition:all var(--dur) var(--ease);border:1px solid #0000;padding:9px 18px;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:active:not(:disabled){transition-duration:60ms;transform:scale(.97)}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-2);transform:translateY(-1px)}.btn-soft{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-soft:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.btn-ghost{color:var(--text-dim);border-color:var(--border);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.08);box-shadow:var(--shadow-2);transform:translateY(-1px)}.file-btn{position:relative;overflow:hidden}.file-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.ab-btn{appearance:none;cursor:pointer;font:inherit;font-size:var(--t-sm);align-items:center;gap:var(--s2);color:var(--text-dim);background:var(--surface-2);padding:var(--s1h) var(--s3);border:1px solid var(--border);border-radius:var(--r-md);transition:all var(--dur) var(--ease);font-weight:600;display:inline-flex}.ab-btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong);color:var(--text)}.ab-btn:active:not(:disabled){transition-duration:60ms;transform:scale(.96)}.ab-btn:disabled{opacity:.4;cursor:not-allowed}.photo-grid{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));display:grid}.photo-card{aspect-ratio:4/5;border-radius:var(--r-lg);background:var(--surface-2);cursor:pointer;box-shadow:var(--shadow-1);transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border:0;padding:0;position:relative;overflow:hidden}.photo-card:hover{box-shadow:var(--shadow-2);transform:translateY(-3px)}.photo-card img,.photo-card canvas{transition:transform .6s var(--ease-out)}.photo-card:hover img,.photo-card:hover canvas{transform:scale(1.045)}.photo-card canvas,.photo-card img{object-fit:cover;width:100%;height:100%;display:block}.rendered-preview{width:100%;height:100%;position:relative}.rendered-preview>canvas.rp-master,.rendered-preview>img{width:100%;height:100%;display:block;position:absolute;inset:0}.rendered-preview>canvas.rp-master[data-fit=cover],.rendered-preview>img{object-fit:cover}.rendered-preview>canvas.rp-master[data-fit=contain]{object-fit:contain}.rendered-preview>canvas.rp-master[data-fit=scale-down]{object-fit:scale-down}.rendered-preview .rp-master{transition:filter .2s}.rendered-preview .rp-master[data-stale=true]{filter:blur(10px);transition:filter .2s .18s}@media (prefers-reduced-motion:reduce){.rendered-preview .rp-master{transition:none}}.rendered-preview .rp-fill{position:absolute;inset:0}@keyframes preview-breathe{0%,to{opacity:1}50%{opacity:.6}}@media (prefers-reduced-motion:reduce){.preview-pending{animation:none}}.photo-card:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--border);pointer-events:none;position:absolute;inset:0}.trash-card{cursor:default}.trash-card:hover{box-shadow:none;transform:none}.trash-card img,.trash-card .rp-master{opacity:.45}.trash-card .ss-cover-play{display:none}.trash-restore{z-index:2;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.trash-delete-forever{z-index:2;backdrop-filter:blur(6px);opacity:0;background:#00000073;border-radius:6px;transition:opacity .12s;position:absolute;top:8px;right:8px}.trash-card:hover .trash-delete-forever,.trash-delete-forever:focus-visible{opacity:1}@media (hover:none){.trash-delete-forever{opacity:1}}.dropzone{justify-content:center;align-items:center;gap:var(--s2);border:1.5px dashed var(--border-strong);border-radius:var(--r-xl);padding:var(--s10) var(--s5);text-align:center;cursor:pointer;color:var(--text-dim);transition:all var(--dur) var(--ease);-webkit-appearance:none;appearance:none;font:inherit;background:0 0;flex-direction:column;width:100%;display:flex}.dropzone:hover{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.dropzone.is-dragover{border-color:var(--accent);color:var(--text);background:var(--accent-soft);box-shadow:0 0 0 6px var(--accent-soft)}.dropzone strong{color:var(--text);font-size:var(--t-md)}.dz-icon{font-size:var(--t-2xl);opacity:.8;margin-bottom:var(--s1)}.dz-hint{margin-top:var(--s2);opacity:.7;font-style:italic}.import-buttons{gap:var(--s2);margin-top:var(--s2);display:inline-flex}.import-buttons-inline{margin-top:0}.import-buttons .file-btn{position:relative;overflow:hidden}.import-buttons .file-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.grid-drop-host{position:relative}.grid-drop-overlay{justify-content:center;align-items:center;gap:var(--s2);border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);-webkit-backdrop-filter:blur(6px);border-radius:var(--r-xl);color:var(--text);font-size:var(--t-md);pointer-events:none;z-index:5;flex-direction:column;display:flex;position:absolute;inset:0}.import-toast-stack{right:var(--s5);bottom:var(--s5);gap:var(--s2);z-index:60;flex-direction:column;display:flex;position:fixed}.import-toast{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:var(--s3) var(--s5);min-width:260px;max-width:380px;color:var(--text);box-shadow:var(--shadow-2), var(--glass-edge);animation:toast-in var(--dur-pop) var(--ease-spring)}.import-toast strong{font-size:var(--t-sm,14px)}.import-toast-pct{color:var(--text-mute)}.import-toast-skipped{color:var(--text-mute);font-size:var(--t-sm)}.import-toast-current{margin-top:var(--s1);opacity:.7;font-size:12px}.import-toast-bar{height:4px;margin-top:var(--s2);background:#ffffff14;border-radius:2px;overflow:hidden}.import-toast-bar-fill{background:var(--accent);height:100%;transition:width .2s linear}.import-toast-done{gap:var(--s3);align-items:center;display:flex}.import-toast-line{gap:var(--s2);align-items:baseline;display:flex}.import-toast-line .import-toast-cancel{margin-left:auto}.import-toast-cancel{color:var(--text-dim);font-size:var(--t-sm);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;padding:2px 8px}.import-toast-cancel:hover{color:var(--text);background:#ffffff0f}.import-toast-done .import-toast-cancel{margin-left:auto;padding:2px 6px;font-size:18px;line-height:1}.empty{justify-content:center;align-items:center;gap:var(--s3);min-height:48vh;padding:var(--s10) var(--s5);text-align:center;color:var(--text-mute);flex-direction:column;display:flex}.empty-icon{opacity:.5;font-size:32px}.stage{flex:1;place-items:center;min-height:0;padding:0;display:grid;position:relative}.zoom-viewport{touch-action:none;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);min-height:0;box-shadow:var(--viewport-inset);contain:layout style paint;position:relative;overflow:hidden}.zoom-viewport.panning{box-shadow:none}.zoom-inner{transform-origin:50%;transition:transform 60ms linear;position:absolute;inset:0}.zoom-inner.panning{will-change:transform;transition:none}.zoom-inner canvas,.zoom-inner img{object-fit:scale-down;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.zoom-inner canvas.pane-live{object-fit:contain;image-rendering:auto}.zoom-controls{top:var(--s3);right:var(--s3);padding:var(--s1h) var(--s2);border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--border-strong);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-pop), var(--glass-edge);opacity:1;z-index:30;align-items:center;gap:5px;display:flex;position:absolute}.zoom-btn{color:var(--text-dim);border-radius:var(--r-pill);min-width:30px;height:30px;font-size:var(--t-md);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0 9px;font-weight:600;line-height:1;display:inline-flex}.zoom-btn:hover{background:var(--surface-3);color:var(--text)}.zoom-btn:active:not(:disabled){transform:scale(.94)}.zoom-btn:disabled{opacity:.4;cursor:default}.zoom-btn.zoom-text{font-size:var(--t-sm)}.zoom-btn[data-active=true]{background:var(--accent-soft);color:var(--accent)}.zoom-sep{background:var(--border-strong);width:1px;height:20px;margin:0 2px}.zoom-range{width:84px;accent-color:var(--accent);cursor:pointer}@keyframes pill-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.seg button{appearance:none;cursor:pointer;color:var(--text-dim);font-size:var(--t-sm);padding:var(--s1h) var(--s3h);border-radius:var(--r-sm);transition:all var(--dur) var(--ease);background:0 0;border:0;font-weight:600}.seg button:hover{color:var(--text)}.seg button:active{transform:scale(.96)}.seg button[data-active=true]{background:var(--surface-3);color:var(--text);box-shadow:var(--shadow-1)}.order-nag{align-items:center;gap:var(--s2);margin-bottom:var(--s3);width:fit-content;padding:var(--s2) var(--s3);border-radius:var(--r-md);background:color-mix(in srgb, var(--warning) 12%, transparent);border:1px solid color-mix(in srgb, var(--warning) 40%, transparent);color:var(--warning);font-size:var(--t-sm);font-weight:600;display:inline-flex}.order-grid{gap:var(--s2);display:grid}.order-row{--order-actions-w:114px;grid-template-columns:48px 1.6fr .9fr .55fr .8fr .8fr var(--order-actions-w);align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);display:grid}.order-row:hover{border-color:var(--border-strong);box-shadow:var(--shadow-1)}.order-row--no-prices{grid-template-columns:48px 1.6fr .9fr .55fr var(--order-actions-w)}.order-row.head{padding:0 var(--s4);color:var(--text-mute);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.05em;background:0 0;border:0}.order-row.head:hover{box-shadow:none;border-color:#0000}.order-thumb{border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--border);width:48px;height:48px;color:var(--text-mute);flex:none;place-items:center;display:grid;overflow:hidden}.order-thumb>*{width:100%;height:100%}.order-thumb--pick{cursor:pointer;transition:border-color var(--dur) var(--ease);padding:0}.order-thumb--pick:hover:not(:disabled){border-color:var(--accent);color:var(--text-dim)}.order-thumb--pick:active:not(:disabled){transform:scale(.94)}.order-thumb--pick:disabled{cursor:default}.order-thumb--pick.is-empty{border-style:dashed}.order-row .filename{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.order-row-actions{gap:var(--s1h);justify-content:flex-end;display:flex}.order-row-actions>*{flex:none}.row-total{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-dim)}.order-item{flex-direction:column;gap:2px;min-width:0;display:flex}.order-item-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.order-item-sub{align-items:center;gap:var(--s2);color:var(--text-mute);font-size:var(--t-xs);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.order-item-file{color:var(--text-mute);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:none;overflow:hidden}.order-item-flag{border-radius:var(--r-pill);background:color-mix(in srgb, var(--warning) 16%, transparent);color:var(--warning);flex:none;padding:1px 7px;font-weight:650}.order-size-none{color:var(--text-mute);text-align:center}.field{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--t-sm);width:100%;transition:border-color var(--dur) var(--ease);padding:7px 10px}.field:focus{border-color:var(--accent)}.name-input{border:0;border-bottom:1.5px solid var(--border-strong);color:var(--text);font:inherit;font-size:var(--t-xl);letter-spacing:-.02em;min-width:180px;transition:border-color var(--dur) var(--ease);background:0 0;padding:2px 2px 4px;font-weight:700}.name-input:focus{border-color:var(--accent)}.name-input::placeholder{color:var(--text-mute)}.order-summary{margin-top:var(--s5);width:min(360px,100%);padding:var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-left:auto}.order-total{align-items:baseline;column-gap:var(--s4);row-gap:var(--s2);text-align:right;font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;display:grid}.order-total .order-total-rule{background:var(--border);height:1px;margin:var(--s1) 0;grid-column:1/-1}.order-total b{font-size:var(--t-2xl);letter-spacing:-.02em}.order-total .order-total-grand{color:var(--text);font-weight:600}.order-total .order-total-due{color:var(--accent);font-weight:650}.order-summary .btn{width:100%;margin-top:var(--s4);justify-content:center}.order-row--attention{box-shadow:inset 3px 0 0 var(--warning)}.order-row--attention:hover{box-shadow:inset 3px 0 0 var(--warning), var(--shadow-1)}.field--attention{background:var(--surface-2);color:var(--text);border-radius:var(--r-sm);width:100%;font-size:var(--t-sm);border:1px solid var(--warning);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--warning) 22%, transparent);transition:border-color var(--dur) var(--ease);padding:7px 10px}.field--attention:focus{border-color:var(--accent);box-shadow:none}.field--attention::placeholder{color:color-mix(in srgb, var(--warning) 70%, transparent)}.order-thumb--pick.is-empty{border-color:var(--warning);color:var(--warning);background:color-mix(in srgb, var(--warning) 8%, var(--surface-2))}.addord{gap:var(--s4);grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}.addord-list{gap:var(--s2h);flex-direction:column;min-width:0;display:flex}.addord-items{gap:var(--s1);flex-direction:column;max-height:46vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.addord-item{appearance:none;text-align:left;cursor:pointer;width:100%;padding:var(--s2) var(--s2h);border-radius:var(--r-sm);color:var(--text);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border:1px solid #0000;flex-direction:column;gap:1px;display:flex}.addord-item:hover{background:var(--surface-2)}.addord-item.is-on{background:var(--accent-soft);border-color:var(--accent)}.addord-item:active{transform:scale(.98)}.addord-item-name{font-weight:550}.addord-item-meta{font-size:var(--t-xs);color:var(--text-mute)}.addord-config{gap:var(--s4);flex-direction:column;min-width:0;display:flex}.addord-field{gap:var(--s2);flex-direction:column;min-width:0;display:flex}.addord-field--row{align-items:center;gap:var(--s3);flex-direction:row}.addord-field--row .field{width:90px}.addord-label{font-size:var(--t-xs);color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em}.addord-sizes{gap:var(--s1h);flex-wrap:wrap;display:flex}.addord-size{appearance:none;cursor:pointer;font-size:var(--t-sm);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border);transition:all var(--dur) var(--ease);padding:5px 11px}.addord-size:hover{border-color:var(--border-strong);color:var(--text)}.addord-size.is-on{background:var(--accent-soft);border-color:var(--accent);color:var(--text);font-weight:600}.addord-size:active{transform:scale(.96)}.photopick{gap:var(--s3);flex-direction:column;min-width:0;min-height:0;display:flex}.photopick-head{align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.photopick-search{max-width:260px}.photopick-count{font-variant-numeric:tabular-nums;margin-left:auto}.photopick-grid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-content:start;padding:2px;display:grid;overflow-y:auto}.photopick-cell{appearance:none;cursor:pointer;border-radius:var(--r-md);background:var(--surface-2);transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease);border:2px solid #0000;padding:0;position:relative;overflow:hidden}.photopick-thumb{aspect-ratio:4/3;width:100%;display:block;position:relative;overflow:hidden}.photopick-thumb>*{width:100%;height:100%;position:absolute;inset:0}.photopick-cell:hover{border-color:var(--border-strong)}.photopick-cell.is-on{border-color:var(--accent)}.photopick-cell:active{transform:scale(.98)}.photopick-name{padding:var(--s1) var(--s2h) var(--s2);font-size:var(--t-xs);color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;text-align:left;display:block;overflow:hidden}.photopick-cell.is-on .photopick-name{color:var(--text)}.photopick-tick{top:var(--s2);right:var(--s2);background:var(--accent);width:22px;height:22px;color:var(--accent-ink);box-shadow:var(--shadow-1);border-radius:50%;place-items:center;display:grid;position:absolute}.linephoto-dlg{flex-direction:column;max-height:92vh;display:flex}.linephoto-dlg .dlg-title,.linephoto-dlg .dlg-actions{flex:none}.linephoto-dlg .dlg-body{flex:1;min-height:0;display:flex;overflow:hidden}.linephoto-dlg .photopick{flex:1;min-height:0}.linephoto-dlg .photopick-grid{flex:1;min-height:0;overflow-y:auto}.addord-note{align-items:center;gap:var(--s2);color:var(--text-mute);font-size:var(--t-sm);margin:0;display:flex}.addord-desc{color:var(--text-dim);font-size:var(--t-sm);margin:0}.addord-price{align-items:baseline;gap:var(--s2);margin:0;display:flex}.addord-price b{font-size:var(--t-lg);font-variant-numeric:tabular-nums}@media (width<=720px){.addord{grid-template-columns:minmax(0,1fr)}}.p3d-preview{gap:var(--s4);grid-template-columns:1fr 240px;align-items:stretch;display:grid}.p3d-stage{aspect-ratio:3/2;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);min-height:320px;position:relative;overflow:hidden}.p3d-controls{gap:var(--s3);flex-direction:column;display:flex}.p3d-field{gap:var(--s1h);flex-direction:column;display:flex}.p3d-field>span{font-size:var(--t-xs);color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em}@media (width<=720px){.p3d-preview{grid-template-columns:1fr}}.login{min-height:100vh;padding:var(--s5);place-items:center;display:grid}.login-card{gap:var(--s3);text-align:center;flex-direction:column;width:340px;max-width:100%;display:flex}.login-card h1{justify-content:center;align-items:center;gap:var(--s2);font-size:var(--t-2xl);letter-spacing:-.03em;margin-bottom:var(--s3);display:flex}.login-row{gap:var(--s2);display:flex}.login-err{color:var(--danger);font-size:var(--t-sm)}.login-divider{align-items:center;gap:var(--s2);color:var(--text-dim);font-size:var(--t-sm);display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.onboard-split{grid-template-columns:minmax(360px,460px) 1fr;min-height:100vh;display:grid}.onboard-aside{background:var(--brand-grad);color:var(--brand-ink);padding:var(--s8) var(--s6);justify-content:space-between;gap:var(--s6);flex-direction:column;display:flex}.onboard-brand{align-items:center;gap:var(--s2);font-size:var(--t-lg);letter-spacing:-.02em;font-weight:600;display:flex}.onboard-pitch{gap:var(--s5);flex-direction:column;display:flex}.onboard-pitch-title{font-size:var(--t-2xl);letter-spacing:-.03em;max-width:14ch;margin:0;line-height:1.1}.onboard-points{gap:var(--s3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.onboard-points li{padding-left:var(--s5);font-size:var(--t-md);opacity:.95;position:relative}.onboard-points li:before{content:"✓";font-weight:700;position:absolute;left:0}.onboard-aside-foot{font-size:var(--t-sm);opacity:.8;margin:0}.onboard-main{padding:var(--s8) var(--s6);place-items:center;display:grid;overflow:auto}.onboard-panel{gap:var(--s5);flex-direction:column;width:100%;max-width:380px;display:flex}.onboard-panel--wide{max-width:880px}.onboard-steps{align-items:center;gap:var(--s4);margin:0;padding:0;list-style:none;display:flex}.onboard-step{align-items:center;gap:var(--s2);color:var(--text-mute);font-size:var(--t-sm);display:flex}.onboard-dot{border-radius:var(--r-pill);background:var(--border-strong);width:9px;height:9px;transition:background var(--dur) var(--ease)}.onboard-step[data-active=true]{color:var(--text);font-weight:600}.onboard-step[data-active=true] .onboard-dot,.onboard-step[data-done=true] .onboard-dot{background:var(--accent)}.onboard-head{gap:var(--s1h);flex-direction:column;display:flex}.onboard-title{font-size:var(--t-2xl);letter-spacing:-.02em;margin:0}.onboard-sub{color:var(--text-dim);font-size:var(--t-sm);margin:0}.onboard-body{gap:var(--s3);flex-direction:column;display:flex}.onboard-link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.onboard-plans{gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.plan-pill{align-items:center;gap:var(--s1h);padding:var(--s1) var(--s3);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--text);font-size:var(--t-sm);white-space:nowrap;transition:border-color var(--dur) var(--ease);border:1px solid #0000;text-decoration:none;display:inline-flex}.plan-pill:hover{border-color:var(--accent)}.plan-pill strong{color:var(--accent);font-weight:600}.plan-pill-sep{color:var(--text-mute)}.plan-pill-dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.upgrade-nudge{align-items:flex-start;gap:var(--s4);padding:var(--s5);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;display:flex}.upgrade-nudge-text{color:var(--text-dim);font-size:var(--t-sm);max-width:56ch;margin:0}.inline-checkout{gap:var(--s4);flex-direction:column;width:100%;display:flex}.checkout-testmode{padding:var(--s1h) var(--s3);border-radius:var(--r-sm);color:#1a1a1a;font-weight:600;font-size:var(--t-xs);text-align:center;background:#f6c343;margin:0}.checkout-biz{align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--text-dim);cursor:pointer;display:flex}.checkout-biz input{accent-color:var(--accent);width:16px;height:16px}.checkout-screen{z-index:200;background:var(--bg);padding:var(--s8) var(--s5);justify-content:center;display:flex;position:fixed;inset:0;overflow-y:auto}.checkout-2pane{align-self:flex-start;gap:var(--s8);grid-template-columns:1fr 1fr;width:100%;max-width:880px;display:grid}.checkout-aside{gap:var(--s5);flex-direction:column;display:flex}.checkout-brand{align-items:center;gap:var(--s2);font-size:var(--t-lg);letter-spacing:-.02em;font-weight:600;display:flex}.checkout-aside-body{gap:var(--s4);flex-direction:column;display:flex}.checkout-title{font-size:var(--t-2xl);letter-spacing:-.02em;margin:0}.checkout-price{font-size:var(--t-2xl);letter-spacing:-.02em;font-weight:700}.checkout-price-per{font-size:var(--t-sm);color:var(--text-dim);font-weight:400}.checkout-includes{gap:var(--s2);color:var(--text-dim);font-size:var(--t-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.checkout-includes li{padding-left:var(--s4);position:relative}.checkout-includes li:before{content:"✓";color:var(--accent);font-weight:700;position:absolute;left:0}.checkout-total{justify-content:space-between;align-items:baseline;gap:var(--s3);padding-top:var(--s3);border-top:1px solid var(--border);font-size:var(--t-sm);color:var(--text-dim);display:flex}.checkout-total strong{font-size:var(--t-md);color:var(--text)}.checkout-main{gap:var(--s4);flex-direction:column;display:flex}.checkout-cancel{color:var(--text-dim);cursor:pointer;font:inherit;background:0 0;border:0;align-self:center;text-decoration:underline}.checkout-trust{text-align:center;color:var(--text-mute);font-size:var(--t-xs);margin:0}@media (width<=760px){.checkout-2pane{gap:var(--s6);grid-template-columns:1fr;max-width:460px}}.onboard-centered{align-items:center;gap:var(--s6);min-height:100vh;padding:var(--s8) var(--s5);background:var(--bg);flex-direction:column;display:flex}.onboard-centered .onboard-panel{max-width:460px}.onboard-centered .onboard-steps{justify-content:center}.onboard-centered .onboard-head{text-align:center}@media (width<=860px){.onboard-split{grid-template-columns:1fr}.onboard-aside{display:none}}.photo-card.is-selected{box-shadow:0 0 0 2.5px var(--accent);transform:scale(.98)}.photo-card.is-selected:after{box-shadow:none}.card-select{cursor:pointer;color:#fff;backdrop-filter:blur(6px);opacity:0;width:22px;height:22px;transition:opacity var(--dur) var(--ease);background:#00000073;border:1.5px solid #ffffff8c;border-radius:50%;place-items:center;padding:0;line-height:0;display:grid;position:absolute;top:10px;left:10px}.photo-card:hover .card-select,.photo-card.is-selected .card-select{opacity:1}.photo-card.is-selected .card-select{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:check-in .2s var(--ease-spring)}.card-heart{cursor:pointer;width:28px;height:28px;font-size:var(--t-base);backdrop-filter:blur(6px);color:#ffffffb3;opacity:0;transition:all var(--dur) var(--ease);background:#00000073;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px}.image-filename-badge{top:var(--s2);right:var(--s2);z-index:2;max-width:calc(100% - var(--s5));font-size:var(--t-xs);font-variant-numeric:tabular-nums;color:#ffffffd9;backdrop-filter:blur(6px);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;opacity:1;transition:opacity var(--dur) var(--ease);background:#0006;border-radius:4px;padding:2px 7px;position:absolute;overflow:hidden}.photo-grid[data-filename-badge=hover] .image-filename-badge{opacity:0}.photo-grid[data-filename-badge=hover] .photo-card:hover .image-filename-badge,.photo-grid[data-filename-badge=hover] .photo-card.is-selected .image-filename-badge,.photo-grid[data-filename-badge=hover] .photo-card.is-cursor .image-filename-badge{opacity:1}.photo-grid[data-filename-badge=never] .image-filename-badge{display:none}.image-filename-search{width:200px;max-width:28vw}.image-filename-search::-webkit-search-cancel-button{cursor:pointer}.photo-card:hover .card-heart{opacity:1}.card-heart[data-fav=true]{opacity:1;color:var(--heart)}.card-heart:hover{transform:scale(1.12)}.actionbar{max-width:calc(100vw - 2 * var(--s3));background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-pill);box-shadow:var(--shadow-pop), var(--glass-edge);z-index:40;animation:pill-in var(--dur-pop) var(--ease-spring);flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;padding:7px 8px 7px 14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.actionbar .count{font-weight:700;font-size:var(--t-sm);margin-right:var(--s1);white-space:nowrap}.actionbar .ab-btn{appearance:none;cursor:pointer;border-radius:var(--r-pill);color:var(--text-dim);font-size:var(--t-sm);transition:all var(--dur) var(--ease);white-space:nowrap;background:0 0;border:0;flex-shrink:0;align-items:center;gap:5px;padding:7px 10px;font-weight:600;display:flex}.actionbar .ab-btn:hover:not(:disabled){color:var(--text);background:color-mix(in srgb, var(--text) 8%, transparent)}.actionbar .ab-btn:disabled{opacity:.35;cursor:not-allowed}.actionbar .ab-primary{background:var(--accent);color:var(--accent-ink)}.actionbar .ab-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--accent-ink)}.actionbar .ab-primary:disabled{color:var(--text-dim);background:0 0}.actionbar .ab-div{background:var(--border-strong);align-self:stretch;width:1px;margin:4px 2px}.bulk-toolbar{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);margin-bottom:var(--s3);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);flex-wrap:wrap;display:flex}.bulk-toolbar .bulk-count{font-weight:700;font-size:var(--t-sm);color:var(--text);margin-right:var(--s2)}.bulk-toolbar>button,.bulk-toolbar .menu-button>button{appearance:none;cursor:pointer;white-space:nowrap;align-items:center;gap:var(--s1);padding:var(--s1h) var(--s2h);border-radius:var(--r-md);background:var(--surface-3);border:1px solid var(--border);color:var(--text);font-size:var(--t-sm);transition:all var(--dur) var(--ease);font-weight:600;display:inline-flex}.bulk-toolbar>button:hover:not(:disabled),.bulk-toolbar .menu-button>button:hover:not(:disabled){background:var(--surface-4,var(--surface-3));border-color:var(--border-strong)}.bulk-toolbar>button:disabled,.bulk-toolbar .menu-button>button:disabled{opacity:.4;cursor:not-allowed}.menu-button{display:inline-block;position:relative}.menu-pop{z-index:50;background:var(--glass);min-width:180px;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-pop), var(--glass-edge);transform-origin:0 0;animation:menu-in var(--dur) var(--ease-spring);position:absolute;top:calc(100% + 4px);left:0}.menu-search{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;padding:var(--s1h) var(--s2h);border:0;border-bottom:1px solid var(--border-strong);border-top-left-radius:var(--r-md);border-top-right-radius:var(--r-md);color:var(--text);font-size:var(--t-sm);background:0 0;display:block}.menu-search::placeholder{color:var(--text-dim)}.menu-search:focus{outline:none}.menu-button ul[role=menu]{max-height:320px;padding:var(--s1);margin:0;list-style:none;overflow-y:auto}.menu-button ul[role=menu] li{margin:0}.menu-button ul[role=menu] button{appearance:none;cursor:pointer;text-align:left;width:100%;padding:var(--s1h) var(--s2h);color:var(--text);font-size:var(--t-sm);background:0 0;border:0;border-radius:4px;display:block}.menu-button ul[role=menu] button:hover{background:color-mix(in srgb, var(--text) 9%, transparent)}.menu-empty{padding:var(--s2) var(--s2h);color:var(--text-dim);font-size:var(--t-sm)}.menu-group-label{padding:var(--s2h) var(--s2h) var(--s1);color:var(--text-mute);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.04em}.currency-trigger{width:280px;max-width:100%;height:var(--control-h);padding:0 var(--control-pad-x);justify-content:space-between;align-items:center;gap:var(--s2);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);color:var(--text);font-size:var(--t-sm);cursor:pointer;text-align:left;display:flex}.currency-trigger:after{content:"▾";color:var(--text-dim)}.currency-trigger:focus-visible{outline:2px solid var(--accent-soft);border-color:var(--accent)}.currency-trigger:disabled{opacity:.4;cursor:not-allowed}.currency-trigger+.menu-pop,.menu-button:has(.currency-trigger) .menu-pop{min-width:280px}.menu-button ul[role=menu] button.is-current{color:var(--accent);font-weight:650}.bulk-toast{z-index:45;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3h);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-pill);box-shadow:var(--shadow-pop), var(--glass-edge);color:var(--text);font-size:var(--t-sm);animation:pill-in var(--dur-pop) var(--ease-spring);font-weight:600;display:flex;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.bulk-toast button{appearance:none;cursor:pointer;color:var(--text-dim);padding:var(--s1) var(--s2);border-radius:var(--r-pill);font-size:var(--t-sm);background:0 0;border:0;font-weight:600}.bulk-toast button:hover{color:var(--text);background:color-mix(in srgb, var(--text) 8%, transparent)}.compare-grid{gap:var(--s4);flex:1;min-height:0;display:grid}.compare-grid.n2{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.compare-grid.n3{grid-template-rows:1fr;grid-template-columns:repeat(3,1fr)}.compare-grid.n4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.compare-grid.n1{grid-template-rows:1fr;grid-template-columns:1fr}.compare-grid.n5,.compare-grid.n6{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr)}.compare-grid.n7,.compare-grid.n8{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr)}.compare-section{height:calc(100dvh - var(--topbar-h));--rail-head-clear:calc(var(--control-h) + 2 * var(--s2) + 1px);min-height:0;display:grid;position:relative;overflow:hidden}.compare-section[data-dock=left]{grid-template-columns:var(--rail-w,160px) 6px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"hdr hdr hdr""rail div area"}.compare-section[data-dock=right]{grid-template-columns:1fr 6px var(--rail-w,160px);grid-template-rows:auto 1fr;grid-template-areas:"hdr hdr hdr""area div rail"}.compare-section[data-dock=bottom]{grid-template-columns:1fr;grid-template-rows:auto 1fr 6px var(--rail-h,150px);grid-template-areas:"hdr""area""div""rail"}.compare-section[data-dock=left][data-panel=open]{grid-template-columns:var(--rail-w,160px) 6px 1fr var(--compare-panel-w,300px);grid-template-areas:"hdr hdr hdr hdr""rail div area panel"}.compare-section[data-dock=right][data-panel=open]{grid-template-columns:1fr var(--compare-panel-w,300px) 6px var(--rail-w,160px);grid-template-areas:"hdr hdr hdr hdr""area panel div rail"}.compare-section[data-dock=bottom][data-panel=open]{grid-template-columns:1fr var(--compare-panel-w,300px);grid-template-rows:auto 1fr 6px var(--rail-h,150px);grid-template-areas:"hdr hdr""area panel""div div""rail rail"}.compare-header{grid-area:hdr}.compare-rail{grid-area:rail}.compare-area{grid-area:area}.compare-panel{grid-area:panel}.compare-section>.rail-resize-handle{grid-area:div}.compare-section[data-dock=bottom]>.rail-resize-handle{cursor:row-resize}.compare-panel{background:var(--surface);border-left:1px solid var(--border);min-width:0;min-height:0;animation:compare-panel-in var(--dur) var(--ease-out);flex-direction:column;display:flex}@keyframes compare-panel-in{0%{transform:translate(100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){.compare-panel{animation:none}}.compare-panel-head{align-items:center;gap:var(--s2);padding:var(--s3) var(--s3) var(--s3) var(--s4);border-bottom:1px solid var(--border);flex:none;display:flex}.compare-panel-title{flex-direction:column;gap:2px;min-width:0;display:flex}.compare-panel-title strong{font-size:var(--t-md)}.compare-panel-title .section-meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compare-panel-history{align-items:center;gap:var(--s1);margin-left:auto;display:flex}.compare-panel-body{min-height:0;padding:var(--s3) var(--s4);flex:auto;overflow-y:auto}.compare-panel-tabs{gap:var(--s1);background:var(--surface-2);border-radius:var(--r-md);margin:var(--s3) var(--s4) 0;flex:none;padding:2px;display:flex}.compare-panel-tab{padding:var(--s1) var(--s2h);border-radius:calc(var(--r-md) - 2px);cursor:pointer;color:var(--text);font-size:var(--t-sm);background:0 0;border:0;flex:1}.compare-panel-tab:active{transition:transform 60ms var(--ease);transform:scale(.97)}.compare-panel-tab.is-active{background:var(--accent);color:var(--accent-ink)}.crop-all-chips{gap:var(--s1h);flex-wrap:wrap;display:flex}.crop-all-chip{padding:var(--s1h) var(--s2h);font-size:var(--t-xs);cursor:pointer;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill)}.crop-all-chip:hover:not(:disabled){border-color:var(--border-strong);color:var(--text)}.crop-all-chip:active:not(:disabled){transition:transform 60ms var(--ease);transform:scale(.96)}.crop-all-chip.is-current{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.crop-all-chip:disabled{opacity:.5;cursor:default}.crop-all-note{margin:var(--s2) 0 0;line-height:1.45}.crop-all-custom{align-items:center;gap:var(--s1h);margin-top:var(--s2h);display:flex}.crop-all-custom .ui-input{text-align:center;flex:auto;width:0;min-width:0}.crop-all-custom span{color:var(--text-mute);font-size:var(--t-xs)}.crop-all-custom .btn{flex:none}.crop-all-clear{margin-top:var(--s2h);gap:var(--s2)}.pane-live{pointer-events:none;z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0}.compare-panel-match{justify-content:center;gap:var(--s2);width:100%;margin-bottom:var(--s3)}.compare-panel-foot{padding:var(--s2h) var(--s4) var(--s3);border-top:1px solid var(--border);flex:none}.compare-panel-foot .section-meta{line-height:1.4;display:block}.edit-slider.is-mixed .edit-slider-label,.edit-slider.is-mixed .edit-slider-num{color:var(--text-mute)}.rail-resize-handle{cursor:col-resize;user-select:none;touch-action:none;background:0 0;position:relative}.rail-resize-handle:after{content:"";background:var(--border);transition:background var(--dur) var(--ease);position:absolute}.rail-resize-handle[aria-orientation=vertical]:after{width:2px;top:0;bottom:0;left:50%;transform:translate(-50%)}.rail-resize-handle[aria-orientation=horizontal]:after{height:2px;top:50%;left:0;right:0;transform:translateY(-50%)}.rail-resize-handle:hover:after,.rail-resize-handle:active:after{background:var(--accent)}.dock-grip{cursor:grab;touch-action:none;background:var(--surface-3);color:var(--border-strong);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border:0;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.dock-grip[data-axis=vertical]{width:100%;height:16px}.dock-grip[data-axis=horizontal]{width:16px;height:100%}.dock-grip:hover{color:var(--accent)}.dock-grip:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dock-grip:active{cursor:grabbing}.dock-grip-dots{background-image:radial-gradient(currentColor 1px,#0000 1.3px);background-position:50%;background-size:4px 4px}.dock-grip[data-axis=vertical] .dock-grip-dots{width:32px;height:8px}.dock-grip[data-axis=horizontal] .dock-grip-dots{width:8px;height:32px}.dock-zone{z-index:40;pointer-events:none;border:2px dashed var(--border-strong);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--text-dim);font-size:var(--t-sm);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute}.dock-zone[data-active=true]{border-style:solid;border-color:var(--accent);background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text)}.dock-zone[data-edge=left]{left:0;top:var(--rail-head-clear,0px);width:var(--rail-w,160px);bottom:0}.dock-zone[data-edge=right]{right:0;top:var(--rail-head-clear,0px);width:var(--rail-w,160px);bottom:0}.dock-zone[data-edge=bottom]{height:var(--rail-h,150px);bottom:0;left:0;right:0}.compare-header{align-items:center;gap:var(--s4);height:var(--rail-head-clear);box-sizing:border-box;padding:0 var(--s4);border-bottom:1px solid var(--border);display:flex}.compare-count{color:var(--text-mute);font-size:var(--t-sm);font-variant-numeric:tabular-nums}.compare-rail{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.compare-section[data-dock=bottom] .compare-rail{flex-direction:row}.rail-head{background:var(--surface-2);flex:none;min-width:0;min-height:0;display:flex}.rail-head[data-axis=vertical]{flex-direction:column;container-type:inline-size}.rail-head[data-axis=horizontal]{flex-direction:row;height:100%}.rail-head .rating-filter{gap:var(--s1);padding:var(--s1);background:0 0;border:0;border-radius:0;min-width:0;min-height:0;display:flex}.rail-head[data-axis=vertical] .rating-filter{border-bottom:1px solid var(--border);flex-direction:row;width:100%}.rail-head[data-axis=horizontal] .rating-filter{border-right:1px solid var(--border);flex-direction:column;height:100%}.rail-head .rating-chip{justify-content:center;gap:var(--s1);min-width:0;min-height:0;padding:var(--s1h) var(--s1);font-size:var(--t-xs);flex:1 1 0}@container (width<=168px){.rail-head[data-axis=vertical] .rating-chip{padding:var(--s1) 2px;flex-direction:column;gap:2px}}.rail-head .rating-chip[data-state=on]{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent);color:var(--text);opacity:1}.rail-head .rating-chip[data-state=off]{box-shadow:none;opacity:.5;background:0 0}.rail-head .rating-chip[data-state=off] .rating-chip-face{filter:grayscale()}.rail-head .rating-chip[data-state=off]:hover{opacity:.8}.rail-head .rating-chip-count{font-variant-numeric:tabular-nums}.photo-strip{gap:var(--s2);min-width:0;min-height:0;padding:var(--s2);scroll-behavior:smooth;flex:auto;display:flex}.photo-strip[data-orientation=vertical]{flex-direction:column;overflow:hidden auto}.photo-strip[data-orientation=horizontal]{flex-direction:row;overflow:auto hidden}.photo-strip[data-orientation=vertical] .photo-strip-item{width:100%}.photo-strip[data-orientation=horizontal] .photo-strip-item,.photo-strip[data-orientation=horizontal] .photo-strip-thumb{width:auto;height:100%}.photo-strip-item{text-align:left;cursor:grab;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);flex-direction:column;flex:none;padding:0;display:flex;position:relative;overflow:hidden}.photo-strip-item:hover{border-color:var(--border-strong)}.photo-strip-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.photo-strip-item:active{transition:transform 60ms var(--ease);transform:scale(.97)}.photo-strip-item[data-selected=true]{outline:2px solid var(--accent);outline-offset:2px}.photo-strip-item[data-in-use=true]{border-color:var(--text-dim);box-shadow:inset 0 0 0 1px var(--text-dim)}.photo-strip-thumb{width:100%;aspect-ratio:var(--strip-thumb-aspect,3 / 2);display:block;position:relative}.photo-strip-item[data-in-use=true] .photo-strip-thumb:after{content:"";pointer-events:none;background:var(--text-dim);opacity:.18;position:absolute;inset:0}.photo-strip-badge{z-index:1;background:var(--text-dim);min-width:18px;height:18px;color:var(--bg);border-radius:var(--r-pill);font-size:var(--t-xs);font-variant-numeric:tabular-nums;box-shadow:var(--shadow-1);justify-content:center;align-items:center;padding:0 5px;font-weight:600;line-height:1;display:inline-flex;position:absolute;top:4px;left:4px}.photo-strip-rating{z-index:1;background:var(--rate-neutral);border-radius:50%;width:8px;height:8px;position:absolute;bottom:4px;right:4px;box-shadow:0 0 0 1px #0000004d}.photo-strip-rating.rate-happy{background:var(--rate-happy)}.photo-strip-rating.rate-neutral{background:var(--rate-neutral)}.photo-strip-rating.rate-sad{background:var(--rate-sad)}.photo-strip-name{font-size:var(--t-xs);color:var(--text-dim);padding:var(--s1) var(--s1h);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compare-area{min-height:0;padding:var(--s4);transition:background var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex-direction:column;display:flex;position:relative}.compare-area>.dropzone{cursor:default;flex:1}.compare-area>.dropzone:hover:not(.is-dragover){border-color:var(--border-strong);color:var(--text-dim);background:0 0}.compare-cell-remove{top:var(--s2);left:var(--s2);z-index:4;cursor:pointer;background:var(--media-scrim);width:24px;height:24px;color:var(--media-ink);opacity:0;transition:opacity var(--dur) var(--ease);border:none;border-radius:50%;position:absolute}.compare-cell:hover .compare-cell-remove,.compare-cell-remove:focus-visible{opacity:1}.compare-cell-remove:hover{background:var(--media-scrim);color:var(--media-ink);filter:brightness(1.25)}.compare-cell-remove:active{transition:transform 60ms var(--ease);transform:scale(.94)}@media (hover:none){.compare-cell-remove{opacity:1}}.compare-area.is-dragover:not([data-drop-mode=swap]){background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.compare-area.is-dragover[data-drop-mode=show] .compare-cell{opacity:.55}.compare-drop-label-wrap{pointer-events:none;z-index:5;place-items:center;display:grid;position:absolute;inset:0}.compare-drop-label-wrap--low{padding-bottom:var(--s4);align-items:end}.compare-drop-label{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3h);border-radius:var(--r-pill);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);box-shadow:var(--shadow-2), var(--glass-edge);color:var(--text);font-size:var(--t-sm);white-space:nowrap;animation:menu-in var(--dur-pop) var(--ease-spring);font-weight:600;display:inline-flex}.compare-drop-label-wrap--low .compare-drop-label{animation-name:toast-in}.compare-drop-label__count{background:var(--accent);color:var(--accent-ink);border-radius:var(--r-pill);padding:1px var(--s2);font-size:var(--t-xs);font-variant-numeric:tabular-nums;font-weight:700}.compare-drop-label__detail{color:var(--text-dim);font-weight:500}.compare-cell{cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);min-width:0;min-height:0;transition:opacity var(--dur) var(--ease);place-items:center;display:grid;position:relative;overflow:hidden}.compare-cell.selected:after,.compare-cell[data-drop-target=true]:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 3px var(--accent);pointer-events:none;z-index:3;position:absolute;inset:0}.compare-cell[data-drop-target=true]:after{background:var(--accent-soft)}.compare-cell .zoom-viewport{width:100%;height:100%}.compare-cell .card-rating{z-index:2}.zoom-controls-head{position:static;top:auto;right:auto}.tool.rate-happy[data-active=true]{color:var(--rate-happy);background:color-mix(in srgb, var(--rate-happy) 13%, transparent)}.tool.rate-neutral[data-active=true]{color:var(--rate-neutral);background:color-mix(in srgb, var(--rate-neutral) 15%, transparent)}.tool.rate-sad[data-active=true]{color:var(--rate-sad);background:color-mix(in srgb, var(--rate-sad) 13%, transparent)}.actionbar .ab-btn.rate-happy{color:var(--rate-happy)}.actionbar .ab-btn.rate-neutral{color:var(--rate-neutral)}.actionbar .ab-btn.rate-sad{color:var(--rate-sad)}.actionbar .ab-btn[class*=rate-]{padding:var(--s1h) var(--s1h);font-size:var(--t-md)}.card-rating{border-radius:var(--r-pill);backdrop-filter:blur(6px);background:#00000073;align-items:center;gap:2px;padding:3px;display:flex;position:absolute;bottom:10px;left:10px}.card-rating .face{cursor:pointer;color:#ffffff8c;width:24px;height:24px;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;line-height:0;display:none}.card-rating .face[data-active=true],.photo-card:hover .card-rating .face,.compare-cell:hover .card-rating .face{display:grid}.card-rating .face:hover{background:#ffffff29}.card-rating .face:not([data-active=true]):hover{color:#fff}.face-happy[data-active=true]{color:var(--rate-happy)}.face-neutral[data-active=true]{color:var(--rate-neutral)}.face-sad[data-active=true]{color:var(--rate-sad)}.compare-cell .card-rating{left:10px}.settings-wrap{position:relative}.settings-pop{z-index:50;gap:var(--s2);width:max-content;padding:var(--s3);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-pop), var(--glass-edge);transform-origin:100% 0;animation:menu-in var(--dur) var(--ease-spring);flex-direction:column;display:flex;position:absolute;top:calc(100% + 10px);right:0}.settings-label{font-size:var(--t-xs);color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em}.photo-card.is-cursor{box-shadow:0 0 0 2px var(--text)}.photo-card.is-selected.is-cursor{box-shadow:0 0 0 2.5px var(--accent), inset 0 0 0 2px #ffffffa6}.kbd-row{justify-content:space-between;align-items:center;gap:var(--s4);color:var(--text-dim);font-size:var(--t-sm);display:flex}.kbd{font-family:var(--font);font-size:var(--t-xs);color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);white-space:nowrap;border-bottom-width:2px;border-radius:6px;padding:3px 8px}.edit-slider{gap:var(--s1);flex-direction:column;padding:2px 0;display:flex}.edit-slider-head{justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.edit-slider-label{font-size:var(--t-sm);color:var(--text);cursor:ew-resize;user-select:none}.edit-slider-value{align-items:center;gap:var(--s1);display:inline-flex}.edit-slider-track{align-items:center;width:100%;height:18px;display:flex;position:relative}.edit-slider-track input[type=range]{z-index:1;width:100%;accent-color:var(--accent);position:relative}.edit-slider-tick{background:var(--border-strong);pointer-events:none;z-index:0;width:2px;height:10px;position:absolute;top:50%;transform:translate(-1px,-50%)}.preview-pending{background:#41485a linear-gradient(100deg,#ffffff0a 20%,#ffffff38 50%,#ffffff0a 80%) 0 0/200% 100%;animation:1.2s ease-in-out infinite preview-shimmer}.preview-failed{background:var(--surface-2);color:var(--text-mute);place-items:center;display:grid}@keyframes preview-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.crop-container{pointer-events:auto;touch-action:none;user-select:none;cursor:move;z-index:2;position:absolute;inset:0}.crop-container--ruler,.crop-container--ruler .crop-mask,.crop-container--ruler .crop-handle{cursor:crosshair}.crop-frame{pointer-events:none;outline:1px solid #fff;position:absolute;box-shadow:inset 0 0 0 1px #00000073}.crop-mask{cursor:grab;background:#00000080;position:absolute}.crop-mask:active{cursor:grabbing}.crop-grid{pointer-events:none;background-image:linear-gradient(#ffffff59 1px,#0000 1px),linear-gradient(90deg,#ffffff59 1px,#0000 1px);background-position:0 0;background-size:33.33% 33.33%;position:absolute;inset:0}.crop-handle{z-index:3;background:#fff;border:1px solid #00000080;border-radius:2px;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 3px #0006}.crop-handle--n,.crop-handle--s{cursor:ns-resize}.crop-handle--e,.crop-handle--w{cursor:ew-resize}.crop-handle--nw,.crop-handle--se{cursor:nwse-resize}.crop-handle--ne,.crop-handle--sw{cursor:nesw-resize}.crop-ruler-toggle{top:var(--s3);left:var(--s3);z-index:4;align-items:center;gap:var(--s1);padding:var(--s1h) var(--s2h);border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-size:var(--t-sm);cursor:pointer;display:inline-flex;position:absolute}.crop-ruler-toggle:hover{background:var(--surface-3)}.crop-ruler-toggle.is-active{background:var(--accent);color:var(--accent-ink);border-color:#0000}.crop-select{-webkit-appearance:none;appearance:none;border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-size:var(--t-sm);cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--text-dim) 50%), linear-gradient(135deg, var(--text-dim) 50%, transparent 50%);background-position:calc(100% - 14px) 52%,calc(100% - 9px) 52%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding:6px 26px 6px 10px}.crop-num{width:56px;padding:var(--s1h) var(--s2);border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-size:var(--t-sm);font-variant-numeric:tabular-nums;text-align:right}.crop-num:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.wm-overlay{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.wm-btn[data-wm=off]:not(:disabled){color:var(--text)}.wm-preview{border-radius:var(--r-sm);border:1px solid var(--border,#d1d5db);background:linear-gradient(135deg,#4b5563,#1f2937);width:240px;height:160px;position:relative;overflow:hidden}.edit-slider-num{text-align:right;background:var(--surface-2);width:48px;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;font-size:var(--t-sm);padding:1px 6px}.edit-slider-num:focus{outline:1px solid var(--accent);outline-offset:1px}.edit-slider-unit{color:var(--text-mute);font-size:var(--t-xs);min-width:16px}.adjust-panel{gap:var(--s4);padding:var(--s2) var(--s2) var(--s4);flex-direction:column;display:flex}.adjust-auto{gap:var(--s2);padding-bottom:var(--s3);border-bottom:1px solid var(--border);display:flex}.adjust-auto-btn{padding:var(--s1h) var(--s2h);font-size:var(--t-xs);flex:1;justify-content:center}.adjust-auto-btn.is-active{background:color-mix(in srgb, var(--accent) 18%, var(--surface-2));border-color:color-mix(in srgb, var(--accent) 55%, var(--border));color:var(--text)}.adjust-auto-btn.is-active:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 26%, var(--surface-2));border-color:color-mix(in srgb, var(--accent) 70%, var(--border))}.adjust-group{gap:var(--s2);flex-direction:column;display:flex}.adjust-group-label{font-size:var(--t-xs);color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;margin:0;font-weight:600}.adjust-module{gap:var(--s1);flex-direction:column;display:flex}.adjust-module-label{font-size:var(--t-xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;opacity:.75;padding-left:2px;font-weight:500}.packages-panel{gap:var(--s4);flex-direction:column;display:flex}.packages-panel__reorder{flex-direction:column;gap:2px;display:flex}.packages-panel__reorder .btn{padding:0 var(--s2);min-width:28px;font-size:var(--t-xs);height:calc((var(--row-content-h) - 2px) / 2);line-height:1}.packages-panel__enabled{align-items:center;gap:var(--s1h);font-size:var(--t-sm);color:var(--text-dim);display:inline-flex}.package-row-editor{border-top:1px solid var(--border);padding:var(--s4);gap:var(--s4);background:var(--surface-2);flex-direction:column;display:flex}.package-row-editor__top{gap:var(--s4);grid-template-columns:200px 1fr;display:grid}.package-row-editor__hero{gap:var(--s2);flex-direction:column;display:flex}.package-row-editor__hero-img{object-fit:cover;border-radius:var(--r-md);background:var(--surface-3);width:200px;height:113px;overflow:hidden}.package-row-editor__hero-empty{border-radius:var(--r-md);background:var(--surface-3);width:200px;height:113px;color:var(--text-dim);font-size:var(--t-sm);place-items:center;display:grid}.package-row-editor__hero-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.package-row-editor__fields{gap:var(--s3);flex-direction:column;display:flex}.package-row-editor__field{gap:var(--s1);font-size:var(--t-sm);color:var(--text-dim);flex-direction:column;display:flex}.package-row-editor__field--price .ui-input{width:160px}.package-row-editor__items{gap:var(--s2);flex-direction:column;display:flex}.package-row-editor__items-head{font-size:var(--t-sm);color:var(--text-dim);font-weight:600}.package-row-editor__items-empty{color:var(--text-mute);font-size:var(--t-sm);padding:var(--s2) 0}.package-row-editor__item{gap:var(--s2);align-items:center;display:flex}.package-row-editor__item .ui-input{flex:1;width:auto}.package-row-editor__footer{justify-content:flex-end;display:flex}.hero-image-picker-overlay{z-index:1000;padding:var(--s4);background:#10121b80;place-items:center;display:grid;position:fixed;inset:0}.hero-image-picker{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);flex-direction:column;width:min(900px,100%);max-height:min(80vh,700px);display:flex;overflow:hidden}.hero-image-picker__head{padding:var(--s3) var(--s4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.hero-image-picker__body{padding:var(--s4);flex:1;overflow-y:auto}.hero-image-picker__empty{color:var(--text-dim);font-size:var(--t-sm);text-align:center;padding:var(--s8) var(--s4)}.hero-image-picker__grid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.hero-image-picker__thumb{aspect-ratio:4/3;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;padding:0;overflow:hidden}.hero-image-picker__thumb:hover{border-color:var(--accent)}.hero-image-picker__thumb img{object-fit:cover;width:100%;height:100%;display:block}.pricing-section{padding:var(--s6);max-width:1320px;margin:0 auto}.pricing-section--loading{color:var(--text-dim)}.pricing-section__grid{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.package-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex-direction:column;display:flex;overflow:hidden}.package-card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.package-card__hero{aspect-ratio:16/9;background:var(--surface-2);position:relative;overflow:hidden}.package-card__hero-img{object-fit:cover;width:100%;height:100%;display:block}.package-card__hero-fallback{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, var(--surface-2)), var(--surface-2));place-items:center;width:100%;height:100%;display:grid}.package-card__hero-glyph{color:color-mix(in srgb, var(--accent) 60%, var(--text));letter-spacing:-.04em;font-size:clamp(56px,14vw,96px);font-weight:700;line-height:1}.package-card__body{padding:var(--s4);gap:var(--s3);flex-direction:column;flex:1;display:flex}.package-card__name{font-size:var(--t-lg);color:var(--text);margin:0;font-weight:700}.package-card__desc{color:var(--text-dim);font-size:var(--t-sm);margin:0;line-height:1.5}.package-card__items{gap:var(--s1h);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.package-card__item{color:var(--text);font-size:var(--t-sm);padding-left:var(--s3);position:relative}.package-card__item:before{content:"•";color:var(--accent);position:absolute;left:0}.package-card__item-note{color:var(--text-dim)}.package-card__price{padding-top:var(--s2);font-size:var(--t-xl);color:var(--text);font-variant-numeric:tabular-nums;margin-top:auto;font-weight:700}.section-boundary-fallback{justify-content:center;align-items:center;gap:var(--s3);text-align:center;min-height:50vh;padding:var(--s6);flex-direction:column;display:flex}.order-details{margin-top:var(--s5);border-top:1px solid var(--border);padding-top:var(--s4)}.order-details>summary{cursor:pointer;color:var(--text-dim);font-size:var(--t-sm);align-items:center;gap:var(--s2);padding:var(--s1) var(--s2);border-radius:var(--r-sm);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);list-style:none;display:inline-flex}.order-details>summary::-webkit-details-marker{display:none}.order-details>summary:before{content:"›";font-size:var(--t-md);transition:transform var(--dur) var(--ease);line-height:1;display:inline-block}.order-details[open]>summary:before{transform:rotate(90deg)}.order-details>summary:hover{color:var(--text);background:var(--surface-2)}.order-details>summary:active{transform:scale(.97)}.order-details-grid{gap:var(--s4);margin-top:var(--s4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:780px;display:grid}.order-details-grid .formfield{border-top:0;grid-template-columns:1fr;padding:0}.order-details-grid .ui-input{width:100%}.order-details-grid{grid-auto-rows:auto auto;align-items:start}.order-details-grid .formfield{grid-row:span 2;grid-template-rows:subgrid;gap:var(--s1h);display:grid}.order-details-grid .formfield-label{align-content:start}.order-details-grid .formfield-control{align-self:start}.order-line-extra{gap:var(--s4);margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:minmax(0,1fr) 160px;display:grid}.order-line-extra-field{gap:var(--s1);flex-direction:column;min-width:0;display:flex}.order-line-extra-field>span:first-child{font-size:var(--t-xs);color:var(--text-dim)}.order-line-extra-field .section-meta{font-size:var(--t-xs);color:var(--text-mute)}.order-line-extra-field--money .field{text-align:right;font-variant-numeric:tabular-nums}.icon-btn.is-on{background:var(--surface-3);color:var(--text)}@media (width<=700px){.order-line-extra{grid-template-columns:minmax(0,1fr)}}.app-notice{top:var(--topbar-h);z-index:45;align-items:center;gap:var(--s2h);padding:var(--s1h) var(--s4);border-radius:var(--r-pill);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-2), var(--glass-edge);color:var(--text);font-size:var(--t-sm);white-space:nowrap;animation:pill-in var(--dur-pop) var(--ease-spring);display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.app-notice .btn{padding:var(--s1) var(--s3);font-size:var(--t-sm)}.file-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.dropzone.is-readonly{opacity:.6}.dropzone.is-readonly:hover{border-color:var(--border-strong);color:var(--text-dim);background:0 0}.offline-status{align-items:center;gap:var(--s1h);font-size:var(--t-sm);color:var(--text-dim);white-space:nowrap;display:inline-flex}.offline-status svg{flex-shrink:0;width:16px;height:16px}.offline-status[data-state=preparing],.offline-status[data-state=skipped]{color:var(--text-mute)}.offline-status[data-state=preparing]{animation:offline-status-breathe 1.8s var(--ease) infinite}@keyframes offline-status-breathe{0%,to{opacity:1}50%{opacity:.62}}@media (prefers-reduced-motion:reduce){.offline-status[data-state=preparing]{animation:none}}.offline-status[data-state=offline]{color:var(--text)}.offline-status[data-state=offline] svg{color:var(--text-dim)}.offline-status[data-state=failed],.offline-status[data-state=blocked]{color:var(--danger)}.offline-status--retry{appearance:none;cursor:pointer;font:inherit;transition:transform 60ms var(--ease);background:0 0;border:0;padding:0}.offline-status--retry:active{transform:scale(.96)}.shoot-na-actions{gap:var(--s2h);flex-wrap:wrap;justify-content:center;display:flex}.topbar{align-items:center;gap:var(--s4);height:var(--topbar-bar-h);padding:0 var(--s4);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-2), var(--glass-edge);top:var(--s2);left:var(--s3);right:var(--s3);z-index:50;display:flex;position:absolute;container:topbar/inline-size}.topbar-left{align-items:center;gap:var(--s2h);flex:0 10 auto;min-width:34px;display:flex}.topbar-center{flex:auto;justify-content:center;align-items:center;min-width:0;display:flex}.topbar-right{align-items:center;gap:var(--s3);flex:none;display:flex}.back-link{color:var(--text);align-items:center;gap:var(--s2);font-size:var(--t-sm);appearance:none;cursor:pointer;transition:opacity var(--dur) var(--ease);background:0 0;border:0;padding:0;font-family:inherit;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{opacity:.8}.crumb-link{color:var(--text);align-items:center;gap:var(--s2);font-size:var(--t-sm);padding:var(--s1h) var(--s2) var(--s1h) var(--s3);border-radius:var(--r-pill);transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;font-weight:600;text-decoration:none;display:inline-flex}.crumb-link:hover{background:var(--surface-2)}@container topbar (width<=1180px){.crumb-word{display:none}}.shoot-title{font-weight:500;font-size:var(--t-sm);color:var(--text-dim);padding-left:var(--s2h);border-left:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:34ch;overflow:hidden}.nav-pill{gap:var(--s1);min-width:0;padding-left:var(--s1);display:flex}.nav-pill-item{appearance:none;cursor:pointer;color:var(--text-dim);font-weight:600;font-size:var(--t-sm);padding:var(--s1h) var(--s3);border-radius:var(--r-pill);white-space:nowrap;transition:color var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border:0;align-items:center;text-decoration:none;display:inline-flex}.nav-pill-item:hover{color:var(--text);background:var(--surface-2)}.nav-pill-item[aria-current=page],.nav-pill-item[aria-current=true]{color:var(--accent);background:var(--accent-soft)}.nav-pill-badge{margin-left:var(--s1h);min-width:18px;height:18px;padding:0 var(--s1h);border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font-size:var(--t-xs);font-variant-numeric:tabular-nums;animation:badge-pop var(--dur-pop) var(--ease-spring);place-items:center;font-weight:700;display:inline-grid;position:relative}.nav-pill-badge[data-unpriced]:after{content:"";border-radius:var(--r-pill);background:var(--warning);width:7px;height:7px;box-shadow:0 0 0 1.5px var(--surface);position:absolute;top:-2px;right:-2px}@keyframes badge-pop{0%{transform:scale(.55)}}@media (prefers-reduced-motion:reduce){.nav-pill-badge{animation:none}}.nav-more{flex:none;position:relative}.nav-pill-item[hidden]{display:none}.nav-more-pop{top:calc(100% + var(--s2));z-index:60;min-width:190px;padding:var(--s1h);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-2), var(--glass-edge);animation:menu-in var(--dur-pop) var(--ease-spring);flex-direction:column;gap:2px;display:flex;position:absolute;left:0}.nav-more-pop .nav-pill-item{justify-content:flex-start;width:100%}@media (prefers-reduced-motion:reduce){.nav-more-pop{animation:none}}.ss-stage{border:1px solid var(--border);border-radius:var(--r-xl);min-height:64vh;transition:background var(--dur-slow) var(--ease);background:var(--backdrop);position:relative;overflow:hidden}.ss-stage.fs{z-index:200;border:0;border-radius:0;min-height:100vh;position:fixed;inset:0}.ss-immersive{z-index:200;border:0;border-radius:0;min-height:0;position:fixed;inset:0}.ss-immersive.hide-chrome{cursor:none}.ss-topbar{z-index:2;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);opacity:1;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);background:linear-gradient(#0000008c,#0000);display:flex;position:absolute;top:0;left:0;right:0}.ss-immersive.hide-chrome .ss-topbar{opacity:0;transform:translateY(-12px)}.ss-stage[data-backdrop=light] .ss-topbar{background:linear-gradient(#00000047,#0000)}.ss-meta{flex-direction:column;line-height:1.2;display:flex}.ss-title{color:var(--ss-ink);font-weight:650;font-size:var(--t-lg);letter-spacing:-.01em}.ss-sub{color:#ffffffb3;font-size:var(--t-xs);font-variant-numeric:tabular-nums}.ss-icon{appearance:none;cursor:pointer;width:var(--icon-lg);height:var(--icon-lg);color:var(--ss-ink);backdrop-filter:blur(8px);transition:background var(--dur) var(--ease);background:#ffffff24;border:0;border-radius:50%;flex:none;place-items:center;font-size:18px;line-height:1;display:grid}.ss-icon:hover{background:#ffffff47}.ss-layer{opacity:0;grid-template:100%/100%;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.ss-stage>.ui-empty{z-index:1;color:var(--ss-ink);position:relative}.ss-stage>.ui-empty .ui-empty-title,.ss-stage>.ui-empty .ui-empty-icon{color:inherit}.ss-stage>.ui-empty .ui-empty-desc{color:inherit;opacity:.7}.ss-img{will-change:transform, opacity}.ss-stage[data-fit=contain] .ss-img,.ss-stage:not([data-fit]) .ss-img{object-fit:contain;max-width:88%;max-height:88%;box-shadow:0 24px 70px #00000080}.ss-stage[data-backdrop=light][data-fit=contain] .ss-img{box-shadow:0 24px 70px #0000002e}.ss-stage[data-fit=cover] .ss-img{object-fit:cover;object-position:center;width:100%;height:100%}@keyframes ss-kenburns{0%{transform:var(--kb-from,scale(1.03) translateX(0))}to{transform:var(--kb-to,scale(1.09) translateX(-2.6%))}}.ss-img.kb{animation:ss-kenburns var(--kb-dur,4.8s) linear forwards}.ss-stage.paused .ss-img.kb{animation-play-state:paused}.ss-chrome{align-items:center;gap:var(--s2);padding:var(--s4) var(--s5) var(--s5);opacity:1;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);background:linear-gradient(#0000,#00000080);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.ss-stage[data-backdrop=light] .ss-chrome{background:linear-gradient(#0000,#00000038)}.ss-stage.hide-chrome .ss-chrome{opacity:0;transform:translateY(12px)}.ss-transport{align-items:center;gap:var(--s3);display:flex}.ss-transport button{appearance:none;cursor:pointer;width:40px;height:40px;color:var(--ss-ink);font-size:var(--t-base);backdrop-filter:blur(8px);transition:all var(--dur) var(--ease);background:#ffffff24;border:0;border-radius:50%;place-items:center;display:grid}.ss-transport button:hover{background:#ffffff42}.ss-transport button:active{transform:scale(.92)}.ss-progress{border-radius:var(--r-pill);background:#ffffff38;width:min(560px,80%);height:3px;overflow:hidden}.ss-progress span{background:var(--ss-ink);border-radius:var(--r-pill);width:0;height:100%;display:block}.ss-branded{justify-content:center;align-items:center;gap:var(--s3);text-align:center;width:100%;height:100%;padding:var(--s8);flex-direction:column;display:flex}.ss-branded-logo{object-fit:contain;width:auto;max-width:min(60vw,520px);max-height:clamp(64px,14vh,160px);margin-bottom:var(--s2)}.ss-branded-title{letter-spacing:-.02em;font-size:clamp(28px,5vw,64px);font-weight:700;line-height:1.05}.ss-branded-sub{opacity:.72;font-size:clamp(15px,2vw,24px);font-weight:450}.ss-stage[data-backdrop=dark] .ss-branded,.ss-stage[data-backdrop=light] .ss-branded{color:var(--ss-ink)}.ss-branded{position:relative;overflow:hidden}.ss-bookend-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ss-branded[data-fit=contain] .ss-bookend-bg{object-fit:contain}.ss-bookend-scrim{background:linear-gradient(to bottom, transparent 45%, var(--media-scrim));pointer-events:none;position:absolute;inset:0}.ss-branded-logo,.ss-branded-title,.ss-branded-sub{z-index:1;position:relative}.ss-branded:has(.ss-bookend-bg) .ss-branded-title,.ss-branded:has(.ss-bookend-bg) .ss-branded-sub{color:var(--media-ink);text-shadow:0 1px 4px var(--media-scrim)}.ss-branded:has(.ss-bookend-bg) .ss-branded-sub{opacity:.9}.ss-stage .empty{z-index:1;position:relative}.ss-list{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.ss-card{text-align:left;background:var(--surface);border-radius:var(--r-xl);cursor:pointer;box-shadow:var(--shadow-1);transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);border:0;flex-direction:column;display:flex;position:relative;overflow:hidden}.ss-card:hover{box-shadow:var(--shadow-2);transform:translateY(-3px)}.ss-cover canvas,.ss-cover img{transition:transform .6s var(--ease-out)}.ss-card:hover .ss-cover canvas,.ss-card:hover .ss-cover img{transform:scale(1.045)}.ss-cover-zoom{transition:transform .6s var(--ease-out);place-items:center;display:grid;position:absolute;inset:0}.ss-card:hover .ss-cover-zoom{transform:scale(1.045)}.ss-card:hover .ss-cover .ss-cover-zoom canvas,.ss-card:hover .ss-cover .ss-cover-zoom img{transform:none}.ss-card.is-selected{box-shadow:0 0 0 2.5px var(--accent)}.ss-card.is-cursor{box-shadow:0 0 0 1.5px var(--border-strong)}.ss-card.is-selected.is-cursor{box-shadow:0 0 0 2.5px var(--accent)}.ss-card.is-selected:hover{box-shadow:0 0 0 2.5px var(--accent), var(--shadow-2)}.ss-card.is-cursor:hover{box-shadow:0 0 0 1.5px var(--border-strong), var(--shadow-2)}.ss-card.is-selected.is-cursor:hover{box-shadow:0 0 0 2.5px var(--accent), var(--shadow-2)}.ss-card.trash-card.is-selected:hover{box-shadow:0 0 0 2.5px var(--accent)}.ss-card.trash-card.is-cursor:hover{box-shadow:0 0 0 1.5px var(--border-strong)}.ss-card.trash-card.is-selected.is-cursor:hover{box-shadow:0 0 0 2.5px var(--accent)}.ss-card:hover .grid-card-checkbox{opacity:1}@media (hover:none){.ss-card .grid-card-checkbox{opacity:1}}.ss-cover{aspect-ratio:16/10;background:var(--surface-2);place-items:center;display:grid;position:relative;overflow:hidden}.ss-cover canvas,.ss-cover img{object-fit:cover;width:100%;height:100%;display:block}.ss-cover-empty{color:var(--text-mute);font-size:var(--t-sm)}.ss-cover-count{border-radius:var(--r-pill);background:var(--media-scrim);backdrop-filter:blur(6px);color:var(--media-ink);font-size:var(--t-xs);font-variant-numeric:tabular-nums;padding:2px 9px;position:absolute;bottom:8px;right:8px}.ss-cover-play{border-radius:var(--r-pill);background:var(--media-scrim);backdrop-filter:blur(6px);width:52px;height:52px;color:var(--media-ink);padding-left:calc(var(--s1) / 2);box-shadow:var(--shadow-2);opacity:0;transition:opacity var(--dur) var(--ease);place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ss-cover-play svg{fill:currentColor}.ss-card:hover .ss-cover-play{opacity:1}.ss-card-body{padding:var(--s3) var(--s4) var(--s4);gap:var(--s3);flex-direction:column;display:flex}.ss-card-name{font-weight:650;font-size:var(--t-md);letter-spacing:-.01em}.ss-card-actions{gap:var(--s2);display:flex}.ss-card-actions .btn{padding:var(--s2) var(--s3);flex:1;justify-content:center}.ss-new{justify-content:center;align-items:center;gap:var(--s2);border:1.5px dashed var(--border-strong);min-height:180px;color:var(--text-dim);box-shadow:none;background:0 0}.ss-new:hover{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.ss-new-plus{opacity:.8;font-size:28px}.ss-edit-head{align-items:center;gap:var(--s3);margin-bottom:var(--s3);display:flex}.ss-edit-head .rate-happy{color:var(--rate-happy)}.ss-edit-head .rate-neutral{color:var(--rate-neutral)}.ss-edit-head .rate-sad{color:var(--rate-sad)}.ss-name-field{flex:auto;min-width:0}.ss-name-field .formfield{border:0;padding:0;display:block}.ss-name-field .formfield-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ss-name-field .ui-input{width:100%;font-size:var(--t-md);font-weight:650}.ss-credit{color:#fff9;font-size:var(--t-xs);text-align:center;max-width:min(560px,80%)}.ss-slide{aspect-ratio:4/3;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border);cursor:grab;flex:none;width:156px;position:relative;overflow:hidden}.ss-slide:active{cursor:grabbing}.ss-slide.dragging{opacity:.35}.ss-drop-ind{background:var(--accent);width:3px;box-shadow:0 0 10px var(--accent);pointer-events:none;border-radius:2px;flex:none;align-self:stretch}.ss-slide canvas,.ss-slide img{object-fit:cover;width:100%;height:100%;display:block}.ss-slide-num{z-index:2;border-radius:var(--r-pill);backdrop-filter:blur(6px);min-width:20px;height:20px;color:var(--media-ink);font-size:var(--t-xs);font-variant-numeric:tabular-nums;background:#0000008c;place-items:center;padding:0 5px;display:grid;position:absolute;top:6px;left:6px}.ss-slide-x{z-index:2;cursor:pointer;appearance:none;backdrop-filter:blur(6px);width:22px;height:22px;color:var(--media-ink);opacity:0;transition:opacity var(--dur) var(--ease), background var(--dur) var(--ease);background:#0000008c;border:0;border-radius:50%;place-items:center;padding:0;line-height:0;display:grid;position:absolute;top:6px;right:6px}.ss-slide-x>svg{display:block}.ss-slide-x:hover{background:var(--danger);color:var(--media-ink)}.ss-slide:hover .ss-slide-x{opacity:1}.ss-pick-grid{gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(110px,1fr));display:grid}.ss-pick{aspect-ratio:4/3;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);cursor:grab;transition:border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);padding:0;position:relative;overflow:hidden}.ss-pick:active{cursor:grabbing}.ss-pick canvas,.ss-pick img{object-fit:cover;width:100%;height:100%;display:block}.ss-pick:hover{border-color:var(--border-strong)}.ss-pick.in{border-color:var(--accent)}.ss-pick.in canvas,.ss-pick.in img{opacity:.55}.ss-pick.selected{box-shadow:0 0 0 2.5px var(--accent)}.ss-pick-check{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.ss-pick-action{backdrop-filter:blur(6px);width:22px;height:22px;color:var(--media-ink);cursor:pointer;opacity:0;transition:opacity var(--dur) var(--ease);background:#0000008c;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:6px;right:6px}.ss-pick:hover .ss-pick-action,.ss-pick.selected .ss-pick-action{opacity:1}.ss-timeline{padding:var(--s3) var(--s2) var(--s5);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);border:1px dashed #0000;flex-wrap:wrap;align-content:flex-start;align-items:stretch;gap:20px 0;display:flex;position:relative}.ss-timeline.dropping{border-color:var(--border-strong);background:color-mix(in srgb, var(--accent) 6%, transparent)}.ss-timeline .ss-slide{width:var(--tl-tile-w,156px)}.ss-tl-slot{width:var(--tl-slot-w,20px);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:none;align-self:stretch;align-items:center;gap:3px;min-height:44px;padding:0;display:flex}.ss-tl-slot-line{background:var(--border-strong);opacity:0;width:1px;min-height:4px;transition:opacity var(--dur) var(--ease);flex:auto}.ss-tl-slot-plus{background:var(--surface-3);width:18px;height:18px;color:var(--text-dim);opacity:0;transition:opacity var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.ss-tl-slot:hover .ss-tl-slot-line,.ss-tl-slot:focus-visible .ss-tl-slot-line{opacity:1}.ss-tl-slot.is-drop .ss-tl-slot-line{opacity:1;background:var(--accent);width:3px;box-shadow:0 0 10px var(--accent);border-radius:2px}.ss-tl-slot.is-drop .ss-tl-slot-plus{opacity:1;background:var(--accent);color:var(--accent-ink)}.ss-tl-slot.is-empty.is-drop{border-color:var(--accent);background:var(--accent-soft)}.ss-tl-slot:hover .ss-tl-slot-plus,.ss-tl-slot:focus-visible .ss-tl-slot-plus{opacity:1;background:var(--accent);color:var(--accent-ink)}.ss-tl-slot:active .ss-tl-slot-plus{transform:scale(.9)}.ss-tl-slot.is-empty{margin-left:var(--tl-slot-w,20px);width:var(--tl-tile-w,156px);justify-content:center;gap:var(--s1);border:1px dashed var(--border-strong);border-radius:var(--r-md);aspect-ratio:4/3;min-width:84px}.ss-tl-slot.is-empty .ss-tl-slot-line{display:none}.ss-tl-slot.is-empty .ss-tl-slot-plus{opacity:1}.ss-tl-slot.is-empty:hover{border-color:var(--accent)}.ss-tl-slot-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute);font-size:9px;font-weight:700}.ss-photo-picker__grid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-height:52vh;display:grid;overflow-y:auto}.ss-design__stage{aspect-ratio:16/9;border-radius:var(--r-lg);background:var(--backdrop);place-items:center;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.ss-design__text{z-index:1;align-items:center;gap:var(--s2);width:100%;padding:var(--s5);flex-direction:column;display:flex;position:relative}.ss-design__input{width:100%;max-width:90%;padding:2px var(--s2);border-radius:var(--r-sm);text-align:center;color:inherit;font:inherit;transition:background var(--dur) var(--ease), box-shadow var(--dur) var(--ease);background:0 0;border:0;outline:0}.ss-design__input::placeholder{color:currentColor;opacity:.45}.ss-design__input:hover{background:#ffffff14}.ss-design__input:focus{box-shadow:0 0 0 2px var(--accent);background:#ffffff24}.ss-design__stage .ss-branded-title{font-size:clamp(18px,4.4cqw,44px)}.ss-design__stage .ss-branded-sub{font-size:clamp(11px,1.9cqw,20px)}.ss-design__stage:not(.has-bg){color:var(--ss-ink)}.ss-design__stage.has-bg .ss-branded-title,.ss-design__stage.has-bg .ss-branded-sub{color:var(--media-ink)}.ss-design__tools{margin-top:var(--s4);gap:var(--s4);flex-direction:column;display:flex}.ss-design__section{gap:var(--s2);flex-direction:column;display:flex}.ss-design__toollabel{font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-weight:700}.ss-design__grid{gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(104px,1fr));max-height:30vh;display:grid;overflow-y:auto}.ss-design__choice{border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;background:var(--surface-2);aspect-ratio:16/9;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:0;overflow:hidden}.ss-design__choice img{object-fit:cover;width:100%;height:100%;display:block}.ss-design__choice:hover{border-color:var(--border-strong)}.ss-design__choice.is-on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.ss-design__choice--upload{justify-content:center;align-items:center;gap:var(--s1);border-style:dashed;border-color:var(--border-strong);color:var(--text-dim);font-size:var(--t-xs);flex-direction:column;display:flex}.ss-design__choice--upload:hover{border-color:var(--accent);color:var(--text)}.ss-design__choice--upload input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ss-design__bg-loading{background:var(--surface-3);position:absolute;inset:0}.ss-design__swatches{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.ss-design__swatch{cursor:pointer;border:1px solid var(--border-strong);width:26px;height:26px;transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:50%;padding:0}.ss-design__swatch:hover{transform:scale(1.12)}.ss-design__swatch.is-on{box-shadow:0 0 0 2px var(--accent)}.ss-design__custom{align-items:center;gap:var(--s1h);padding:var(--s1) var(--s2h) var(--s1) var(--s1);border:1px solid var(--border-strong);border-radius:var(--r-pill);cursor:pointer;color:var(--text-dim);font-size:var(--t-xs);display:inline-flex}.ss-design__custom:hover{color:var(--text);border-color:var(--accent)}.ss-design__custom input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ss-design__swatch--custom{background:conic-gradient(#f43f5e,#eab308,#22c55e,#3b82f6,#a855f7,#f43f5e);display:block}.ss-design__clear{cursor:pointer;padding:var(--s1) var(--s2);color:var(--text-dim);font-size:var(--t-xs);border-radius:var(--r-sm);background:0 0;border:0}.ss-design__clear:hover{color:var(--text);background:var(--surface-2)}.ss-design__error{color:var(--danger);font-size:var(--t-sm);margin:0}.ss-tl-runlabel{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:9px;font-weight:700;position:absolute;overflow:hidden}.ss-tl-mark{flex:none;align-self:stretch;width:0}.ss-tl-divider{width:1px;min-height:44px;margin:0 var(--s1h);background:var(--border-strong);flex:none;align-self:stretch}.ss-tl-empty{color:var(--text-mute);font-size:var(--t-sm);padding:0 var(--s2);align-self:center}.ss-tl-hint{margin:var(--s2) 0 0;color:var(--text-mute);font-size:var(--t-sm)}.ss-pick-upload{justify-content:center;align-items:center;gap:var(--s1);border:1px dashed var(--border-strong);color:var(--text-dim);font-size:var(--t-xs);cursor:pointer;flex-direction:column;display:flex}.ss-pick-upload:hover{border-color:var(--accent);color:var(--text)}.ss-pick-upload input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ss-bookend-tile-caption{z-index:2;padding:var(--s1) var(--s1h);background:linear-gradient(to top, var(--media-scrim), transparent);color:var(--media-ink);font-size:var(--t-xs);text-align:center;text-overflow:ellipsis;white-space:nowrap;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.ss-zone{margin-bottom:var(--s3)}.ss-zone-head{align-items:center;gap:var(--s2);padding:var(--s1) 0 var(--s2);font-size:var(--t-sm);display:flex}.ss-zone-head b{font-weight:650}.ss-zone-head .ab-btn{padding:4px var(--s2h)}.ss-zone-strip{align-items:stretch;gap:var(--s3);min-height:84px;padding:var(--s2);border:1px dashed var(--border);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-wrap:wrap;display:flex}.ss-zone-strip.dropping{border-color:var(--accent);background:var(--accent-soft)}.ss-zone-empty{width:100%;min-height:68px;color:var(--text-mute);font-size:var(--t-sm);place-items:center;display:grid}.ss-bookend-tile{cursor:pointer}.ss-bookend-tile:active{transform:scale(.97)}.ss-bookend-tile-text{width:100%;height:100%;padding:var(--s2);background:var(--backdrop);color:var(--ss-ink);font-size:var(--t-xs);text-align:center;place-items:center;line-height:1.25;display:grid;overflow:hidden}.ss-bookend-tile-caption{padding:var(--s1) var(--s1h);background:linear-gradient(to top, var(--media-scrim), transparent);color:var(--media-ink);font-size:var(--t-xs);text-align:center;text-overflow:ellipsis;white-space:nowrap;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.bookend-picker__grid{gap:var(--s3);margin-top:var(--s4);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.bookend-picker__thumb{gap:var(--s1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:left;transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;padding:0;display:flex;overflow:hidden}.bookend-picker__thumb:hover{border-color:var(--border-strong)}.bookend-picker__thumb:active{transform:scale(.97)}.bookend-picker__thumb .rendered-preview{aspect-ratio:16/9;width:100%;display:block}.bookend-picker__thumb-name{padding:0 var(--s2) var(--s2);font-size:var(--t-xs);color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bookend-picker__status{padding:var(--s5) 0;color:var(--text-dim)}.bookend-picker__upload{margin-top:var(--s4)}.bookend-picker__drop{justify-content:center;align-items:center;gap:var(--s2);padding:var(--s8) var(--s4);border:1px dashed var(--border-strong);border-radius:var(--r-lg);color:var(--text-dim);cursor:pointer;flex-direction:column;display:flex}.bookend-picker__drop:hover{border-color:var(--accent);color:var(--text)}.bookend-picker__drop input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.bookend-picker__hint{margin:var(--s2) 0 0;font-size:var(--t-xs);color:var(--text-mute)}.bookend-picker__error{margin:var(--s2) 0 0;font-size:var(--t-sm);color:var(--danger)}.ss-controller{max-width:1100px;padding:var(--s5);gap:var(--s4);flex-direction:column;margin:0 auto;display:flex}.ss-controller-head{align-items:center;gap:var(--s3);display:flex}.ss-controller-title{font-size:var(--t-xl);letter-spacing:-.01em;margin:0;font-weight:650}.ss-controller-empty{align-items:center;gap:var(--s2);padding:var(--s5);text-align:center;color:var(--text-dim);background:var(--surface);border:1px dashed var(--border);border-radius:var(--r-lg);flex-direction:column;display:flex}.ss-controller-preview{aspect-ratio:16/9;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--backdrop);width:100%;min-height:0;position:relative;overflow:hidden}.ss-controller-transport{justify-content:center;align-items:center;gap:var(--s3);padding:var(--s2) 0;display:flex}.ss-controller-transport button{appearance:none;border:1px solid var(--border);background:var(--surface);cursor:pointer;width:44px;height:44px;color:var(--text);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);border-radius:50%;place-items:center;display:grid}.ss-controller-transport button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.ss-controller-transport button:disabled{opacity:.35;cursor:not-allowed}.ss-controller-transport button.primary{background:var(--accent);width:56px;height:56px;color:var(--accent-ink);border-color:var(--accent)}.ss-controller-transport button.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.ss-controller-counter{margin-left:var(--s3);font-variant-numeric:tabular-nums;color:var(--text-dim);font-size:var(--t-sm)}.ss-controller-progress{border-radius:var(--r-pill);background:var(--surface-2);height:4px;overflow:hidden}.ss-controller-progress>span{background:var(--accent);width:0%;height:100%;transition:width .12s linear;display:block}.ss-controller-thumbs{gap:var(--s2);padding-bottom:var(--s2);display:flex;overflow-x:auto}.ss-controller-thumb{aspect-ratio:4/3;appearance:none;cursor:pointer;border-radius:var(--r-md);background:var(--surface-2);width:88px;transition:border-color var(--dur) var(--ease);border:2px solid #0000;flex:none;padding:0;position:relative;overflow:hidden}.ss-controller-thumb:hover{border-color:var(--border-strong)}.ss-controller-thumb.is-current{border-color:var(--accent)}.ss-controller-thumb .rendered-preview,.ss-controller-thumb img{object-fit:cover;width:100%;height:100%}.ss-controller-thumb-branded{width:100%;height:100%;font-weight:650;font-size:var(--t-lg);color:var(--text-dim);background:var(--surface);place-items:center;display:grid}.ss-controller-thumb-num{color:var(--media-ink);background:#0009;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:650;line-height:1;position:absolute;top:4px;left:4px}.ss-controller-credit{color:var(--text-dim);font-size:var(--t-xs);text-align:right}.alb-rail-section{gap:var(--s2);padding:var(--s3);border-bottom:1px solid var(--border);flex-direction:column;display:flex}.alb-rail-nav{justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.alb-rail-count{font-size:var(--t-sm);color:var(--text-dim)}.alb-settings{gap:var(--s3);padding:var(--s3);flex-direction:column;display:flex;overflow-y:auto;container-type:inline-size}.alb-settings .ui-select-trigger{width:100%;min-width:0;display:flex}.alb-settings .ui-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.alb-settings .ui-seg{flex-wrap:wrap;display:flex}.alb-settings__colour{width:100%;height:var(--control-h);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);cursor:pointer;padding:2px}.alb-settings__colour:active{transition:transform 60ms var(--ease);transform:scale(.97)}.alb-cover-hint{white-space:nowrap;font-size:var(--t-sm);color:var(--text);background:var(--glass);backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:var(--r-pill);padding:var(--s1h) var(--s4);box-shadow:var(--shadow-2), var(--glass-edge);display:block}.alb-rail-hint{font-size:var(--t-xs);color:var(--text-mute);margin:0}.scene-bar{align-items:center;gap:var(--s2);margin-bottom:var(--s3);display:flex}.scene-stage{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.scene-backdrop{width:100%;height:100%;display:block;position:absolute;inset:0}.scene-backdrop-skeleton{background:var(--surface-3);background-image:linear-gradient(100deg,#0000 30%,#ffffff14 50%,#0000 70%);background-size:200% 100%;animation:1.2s ease-in-out infinite preview-shimmer;position:absolute;inset:0}.wall-art-handle{background:var(--accent);border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%)}.wall-art-handle.nw{cursor:nwse-resize;top:0;left:0}.wall-art-handle.ne{cursor:nesw-resize;top:0;left:100%}.wall-art-handle.sw{cursor:nesw-resize;top:100%;left:0}.wall-art-handle.se{cursor:nwse-resize;top:100%;left:100%}.ss-cover-empty .icon,.ss-cover-empty svg{opacity:.5}.scene-picker-backdrop{z-index:150;padding:var(--s5);backdrop-filter:blur(3px);animation:scrim-in var(--dur) var(--ease);background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.scene-picker{gap:var(--s4);width:min(720px,100%);max-height:80vh;padding:var(--s5);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-pop), var(--glass-edge);animation:menu-in var(--dur-pop) var(--ease-spring);flex-direction:column;display:flex;overflow:auto}.scene-picker-head{align-items:center;gap:var(--s3);display:flex}.scene-picker-grid{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.scene-picker-item{text-align:left;gap:var(--s2);cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.scene-picker-item .ss-cover{border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease)}.scene-picker-item:hover .ss-cover{border-color:var(--accent);transform:translateY(-2px)}.scene-picker-name{font-size:var(--t-sm);color:var(--text-dim);font-weight:600}.calib-backdrop{z-index:60;animation:scrim-in var(--dur) var(--ease);background:#00000080;place-items:center;display:grid;position:fixed;inset:0}.calib{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-lg);padding:var(--s4);gap:var(--s3);width:min(680px,92vw);box-shadow:var(--shadow-pop), var(--glass-edge);animation:menu-in var(--dur-pop) var(--ease-spring);flex-direction:column;display:flex}.calib-head{gap:var(--s1);flex-direction:column;display:flex}.calib-surface{border-radius:var(--r-md);cursor:crosshair;touch-action:none;background-position:50%;background-size:cover;width:100%;position:relative}.calib-line{width:100%;height:100%;position:absolute;inset:0}.calib-line line{stroke:var(--accent);stroke-width:3px}.calib-controls{align-items:center;gap:var(--s2);display:flex}.calib-controls label{font-size:var(--t-xs);color:var(--text-dim);flex-direction:column;display:inline-flex}.backdrop-thumb{aspect-ratio:4/3;background:var(--surface-3);width:100%;position:relative;overflow:hidden}.calib-name{gap:var(--s1);font-size:var(--t-xs);color:var(--text-dim);flex-direction:column;display:flex}.calib-name input{font-size:var(--t-sm)}.scene-picker-tabs{gap:var(--s2);padding:0 var(--s3) var(--s2);display:flex}.scene-picker-tabs .btn.active{background:var(--accent-soft)}.scene-template-slot{box-sizing:border-box;cursor:move;background:#00000026;border:2px dashed #ffffffb3;position:absolute}.scene-template-slot.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.scene-boundary-fallback{justify-content:center;align-items:center;gap:var(--s3);background:var(--surface);flex-direction:column;display:flex;position:absolute;inset:0}.settings-view{min-height:calc(100dvh - var(--topbar-h));flex-direction:column;display:flex}.settings-shell{flex:1;min-height:0;display:flex}.settings-nav{gap:var(--s2);width:220px;padding:var(--s4);border-right:1px solid var(--border);flex-direction:column;display:flex;overflow-y:auto}.settings-nav-group{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin-top:var(--s3)}.settings-nav-btn{text-align:left;padding:var(--s2) var(--s3);border-radius:var(--r-md);color:inherit;cursor:pointer;transition:background var(--dur) var(--ease);background:0 0;border:0}.settings-nav-btn:hover{background:color-mix(in srgb, var(--text) 6%, transparent)}.settings-nav-btn:active{transform:scale(.98)}.settings-nav-btn[aria-current=true]{background:var(--surface-2);font-weight:600}.settings-panel{min-width:0;padding:var(--s5);flex:1;overflow-y:auto}.settings-body{gap:var(--s4);flex-direction:column;max-width:520px;display:flex}.settings-body--wide{max-width:920px}.settings-body--wide .formsection-body>*+*{margin-top:var(--s4)}.perm-matrix{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.perm-group{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s3);margin:0}.perm-group-legend{margin:0 0 var(--s2);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.perm-item{padding:var(--s1) 0}.perm-item .formfield-label{flex:1}.perm-item[data-disabled=true]{opacity:.5}.perm-actions{align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.member-list{gap:var(--s3);flex-direction:column;display:flex}.member-row{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s3) var(--s4)}.member-row-main{align-items:center;gap:var(--s3);display:flex}.member-row-id{flex-direction:column;flex:1 1 0;min-width:0;display:flex}.member-name,.member-row-id .settings-sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.member-name{font-weight:600}.member-meta{align-items:center;gap:var(--s2);color:var(--text-dim);font-size:var(--t-xs);flex-wrap:wrap;margin-top:2px;display:flex}.member-meta>*+:before{content:"·";margin-right:var(--s2);color:var(--text-dim);opacity:.6}.member-provider,.member-last-active{white-space:nowrap}.member-row-status{align-items:center;gap:var(--s3);flex-shrink:0;display:flex}.member-row-actions{align-items:center;gap:var(--s2);margin-top:var(--s3);flex-wrap:wrap;justify-content:flex-end;display:flex}.member-row-actions .btn{white-space:nowrap}.member-row-error{margin-top:var(--s2)}.member-status{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--r-pill);border:1px solid var(--border);padding:2px 9px;font-weight:700}.member-status--active{color:var(--accent)}.member-status--invited{color:var(--text-dim)}.member-status--disabled{color:var(--danger)}.member-role{color:var(--text-dim);font-size:var(--t-sm);text-transform:capitalize}.member-badge--owner{background:var(--accent-soft);color:var(--accent);font-size:var(--t-xs);padding:var(--s1) var(--s2);border-radius:var(--r-pill);font-weight:600;line-height:1}.member-perms{gap:var(--s2);margin-top:var(--s2);flex-wrap:wrap;display:flex}.member-perm-tag{font-size:var(--t-xs);color:var(--text-dim);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);padding:2px 9px}.member-perm-tag--all{color:var(--accent)}.perm-edit{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--border);gap:var(--s4);flex-direction:column;display:flex}.chips-input{align-items:center;gap:var(--s2);min-height:var(--control-h);padding:var(--s2) var(--s2h);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);transition:border-color var(--dur) var(--ease);flex-wrap:wrap;display:flex}.chips-input:focus-within{border-color:var(--accent)}.chips-input input{min-width:160px;color:var(--text);font:inherit;padding:var(--s1) 0;background:0 0;border:0;outline:0;flex:1}.chip{align-items:center;gap:var(--s1);background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-pill);padding:2px var(--s2h);font-size:var(--t-sm);line-height:1.4;display:inline-flex}.chip[aria-invalid=true]{border-color:var(--danger);color:var(--danger)}.chip-error{background:#ff6b6b14}.chip-error-text{color:var(--danger);font-size:var(--t-xs)}.chip-remove{color:inherit;cursor:pointer;font-size:var(--t-base);opacity:.7;transition:opacity var(--dur) var(--ease);background:0 0;border:0;padding:0 2px;line-height:1}.chip-remove:hover{opacity:1}.wm-logo-row{align-items:center;gap:var(--s4);flex-wrap:wrap;display:flex}.wm-logo-current{object-fit:contain;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);width:auto;max-width:240px;height:48px;padding:var(--s2);flex-shrink:0;display:block}.wm-logo-current--loading{background:var(--surface-2);min-width:96px}.member-avatar{border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);flex-shrink:0;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.member-avatar-monogram{font-size:var(--t-sm);color:var(--text-dim);text-transform:uppercase;font-weight:600}.storage-meter{background:var(--surface-2);border-radius:var(--r-pill);height:8px;margin:var(--s3) 0;position:relative;overflow:hidden}.storage-meter-bar{background:var(--accent);border-radius:inherit;height:100%;transition:width .2s ease-out,left .2s ease-out;position:absolute;top:0}.storage-meter-bar:not(.storage-meter-bar--trash){left:0}.storage-meter-bar--trash{background:var(--text-mute);opacity:.55}.storage-meter[data-tone=warn] .storage-meter-bar:not(.storage-meter-bar--trash){background:#d6a300}.storage-meter[data-tone=red] .storage-meter-bar:not(.storage-meter-bar--trash){background:#c0392b}.storage-meter-msg{color:var(--text-dim);font-size:var(--t-sm);margin-top:var(--s2)}.storage-meter[data-tone=red]~.storage-meter-msg{color:#c0392b}.about-panel{gap:var(--s5);padding:var(--s2) 0;flex-direction:column;display:flex}.about-header{align-items:baseline;gap:var(--s3);flex-wrap:wrap;display:flex}.about-name{font-size:var(--t-2xl,28px);color:var(--text-h,var(--text));letter-spacing:-.01em;margin:0;font-weight:700;line-height:1.1}.about-version{padding:2px var(--s2);font-size:var(--t-sm);color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);font-variant-numeric:tabular-nums;align-items:center;font-weight:500;display:inline-flex}.about-footer{gap:var(--s1);padding-top:var(--s4);border-top:1px solid var(--border);flex-direction:column;display:flex}.about-copyright,.about-legal{font-size:var(--t-sm);color:var(--text-dim);margin:0;line-height:1.5}.about-legal{color:var(--text-mute,var(--text-dim))}.section-toggle-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.section-toggle-row{justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s3) var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color .12s,background .12s;display:flex}.section-toggle-row:hover{border-color:var(--border-strong)}.section-toggle-meta{align-items:center;gap:var(--s3);min-width:0;display:flex}.section-toggle-label{font-size:var(--t-md,14px);color:var(--text);font-weight:500}.section-toggle-required{padding:2px var(--s2);font-size:var(--t-xs,11px);color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.04em;align-items:center;font-weight:500;display:inline-flex}.preset-name{appearance:none;padding:var(--s1) var(--s1h);color:var(--text);font:inherit;text-align:left;border-radius:var(--r-sm);cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;font-weight:500;display:inline-block;overflow:hidden}.preset-name:hover:not(:disabled){background:var(--surface-3)}.preset-name:focus-visible{outline:2px solid var(--accent);outline-offset:0}.preset-name:disabled{cursor:default}.storage-trash{margin-top:var(--s5)}.storage-trash-header{justify-content:space-between;align-items:center;gap:var(--s3);margin-bottom:var(--s2);display:flex}.billing-current{font-size:var(--t-md)}.billing-status{text-transform:capitalize;color:var(--danger)}.billing-interval{margin-bottom:var(--s3)}.billing-plans{gap:var(--s3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.billing-plans[data-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=680px){.billing-plans,.billing-plans[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}.billing-plan{gap:var(--s2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s4);flex-direction:column;display:flex}.billing-plan[aria-current=true]{border-color:var(--border-strong);background:var(--surface-2)}.billing-plan[data-popular]{border-color:var(--accent);box-shadow:var(--shadow-1);position:relative}.billing-plan-badge{top:calc(-1 * var(--s2h));left:var(--s4);background:var(--accent);color:var(--accent-ink);font-size:var(--t-xs);padding:var(--s1) var(--s2);border-radius:var(--r-pill);font-weight:600;line-height:1;position:absolute}.billing-plan-save{color:var(--accent);font-size:var(--t-sm);margin-top:calc(-1 * var(--s1));font-weight:600}.billing-plan-name{font-weight:600}.billing-plan-price{font-size:var(--t-xl);white-space:nowrap;font-weight:700}.billing-plan-per{font-size:var(--t-sm);color:var(--text-dim);font-weight:400}.billing-plan-feats{gap:var(--s1);color:var(--text-dim);font-size:var(--t-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.billing-plan .btn{margin-top:auto}.billing-cancel-link{padding:var(--s1) 0;color:var(--text-mute);cursor:pointer;font-size:var(--t-sm);background:0 0;border:0;align-self:flex-start;text-decoration:underline}.billing-cancel-link:hover:not(:disabled){color:var(--text-dim)}.billing-cancel-link:disabled{opacity:.5;cursor:default}.cancel-save{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--border);gap:var(--s2);flex-direction:column;align-items:flex-start;display:flex}.plan-change-deltas{gap:var(--s1h);font-size:var(--t-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.plan-change-warn{border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--surface-2);padding:var(--s3);gap:var(--s2h);flex-direction:column;display:flex}.plan-change-warn-h{margin:0;font-weight:600}.plan-change-reassure{color:var(--text-dim);font-size:var(--t-sm);margin:0}.billing-scheduled{justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;display:flex}.billing-scheduled .storage-meter-msg{flex:16rem;margin:0}.billing-scheduled .btn{flex-shrink:0}.billing-cancel-notice{align-items:flex-start;gap:var(--s3);padding:var(--s4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;display:flex}.billing-cancel-notice .storage-meter-msg,.billing-cancel-notice .plan-change-deltas{margin:0}.price-matrix-scroll{overflow-x:auto}.price-matrix{border-collapse:collapse;font-size:var(--t-sm)}.price-matrix th{text-align:left;color:var(--text-dim);padding:var(--s1h) var(--s2);white-space:nowrap;font-weight:600}.price-matrix td{padding:var(--s1) var(--s2)}.price-matrix-format{white-space:nowrap;font-weight:600}.price-matrix-cell{width:76px;height:30px;padding:0 var(--s2);text-align:right}.price-matrix-tax{align-items:center;gap:var(--s2);color:var(--text-dim);display:inline-flex}.ladder-tools{align-items:flex-end;gap:var(--s2);padding-top:var(--s2);flex-wrap:wrap;display:flex}.ladder-add{align-items:flex-end;gap:var(--s2);flex-wrap:wrap;display:flex}.ladder-add .formfield{min-width:0}.ladder-add .ui-input[type=number]{width:88px}.package-row-editor__qty{width:64px}.catalogue-back{margin-bottom:var(--s2)}.catalogue-note{margin:var(--s3) 0}.catalogue-detail .formsection{max-width:920px}.catalogue-detail .price-matrix-tax .ui-input{width:96px}.catalogue-detail .package-row-editor{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);max-width:920px}.catalogue-index .formsection{max-width:920px}.catalogue-list{gap:var(--s2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.catalogue-list__row{--row-h:56px;--row-content-h:calc(var(--row-h) - 2px - 2 * var(--s2));align-items:center;gap:var(--s3);min-height:var(--row-h);padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);display:flex;position:relative}.catalogue-list__row:hover{background:var(--surface-3)}.catalogue-list__row--target:hover{border-color:var(--border-strong)}.catalogue-list__row--target:active{transition-duration:60ms;transform:scale(.995)}.catalogue-list__row--target:has(.catalogue-list__name:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.catalogue-list__row--target .catalogue-list__name{cursor:pointer;text-decoration:none}.catalogue-list__row--target .catalogue-list__name:after{content:"";border-radius:inherit;position:absolute;inset:0}.catalogue-list__row--target .catalogue-list__name:focus-visible{outline:none}.catalogue-list__meta{flex:1;min-width:0}.catalogue-list__name{color:var(--text);font-size:var(--t-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.catalogue-list__name--link{cursor:pointer;text-decoration:none}.catalogue-list__name--link:hover{text-decoration:underline}.catalogue-list__name--link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.catalogue-list__sub.section-meta{font-size:var(--t-xs)}.catalogue-list__status{text-align:right}.catalogue-list__row .btn{line-height:1.2}.catalogue-list__control .ui-select-trigger{max-width:260px}.catalogue-list__control .ui-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.catalogue-list__thumb{width:var(--row-content-h);height:var(--row-content-h);border-radius:var(--r-sm);object-fit:cover;background:var(--surface-3);color:var(--text-dim);flex:none;place-items:center;font-weight:600;display:grid;overflow:hidden}.catalogue-list__thumb--empty{font-size:var(--t-md)}.catalogue-actions{gap:var(--s2);margin-top:var(--s4);display:flex}.orderdoc-split{gap:var(--s6);grid-template-columns:minmax(380px,560px) minmax(0,1fr);align-items:start;display:grid}.orderdoc-split>.settings-body{max-width:none}.orderdoc-preview{top:var(--s5);gap:var(--s2);flex-direction:column;display:flex;position:sticky}.orderdoc-page{aspect-ratio:595/842;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-2);overflow:hidden}.orderdoc-frame{border:0;width:100%;height:100%;display:block}.orderdoc-preview-error{padding:var(--s5);color:var(--text-dim);font-size:var(--t-sm)}@media (width<=1100px){.orderdoc-split{grid-template-columns:minmax(0,1fr)}.orderdoc-preview{position:static}}.scene-defaults-field .formfield{gap:var(--s2);grid-template-columns:minmax(0,1fr)}.scene-defaults-row{gap:var(--s2);flex-wrap:wrap;align-items:end;display:flex}.scene-defaults-row>label{gap:var(--s1h);flex-direction:column;display:flex}.scene-defaults-row>label>span{font-size:var(--t-xs);color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em}.scene-defaults-row .ui-select-trigger{width:100%;min-width:0}.scene-defaults-row>:first-child{flex:1.5 150px}.scene-defaults-row>:nth-child(2){flex:.8 110px}.scene-defaults-row>:nth-child(3){flex:1.1 130px}.scene-defaults-row .ui-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.examples-section{padding:var(--s3) var(--s4)}.examples-section--loading{opacity:.6}.examples-viewer{z-index:1000;backdrop-filter:blur(8px);animation:scrim-in var(--dur) var(--ease);background:#000000c7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.examples-viewer__chrome{flex-direction:column;justify-content:center;align-items:center;width:min(92vw,1400px);height:min(92vh,1000px);display:flex;position:relative}.examples-viewer__head{align-items:center;gap:var(--s2);padding:var(--s2);color:#fff;display:flex;position:absolute;top:0;left:0;right:0}.examples-viewer__filename{color:#ffffffb3}.examples-viewer__scene-badge{background:var(--accent);color:#fff;padding:2px var(--s2);border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:600}.examples-viewer__close{color:#fff;margin-left:auto;font-size:24px}.examples-viewer__image{object-fit:contain;border-radius:var(--r-md);max-width:90vw;max-height:80vh}.examples-viewer__edge{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:50%;width:44px;height:44px;font-size:28px;position:absolute;top:50%;transform:translateY(-50%)}.examples-viewer__edge:hover:not(:disabled){background:#ffffff47}.examples-viewer__edge:active:not(:disabled){transform:translateY(-50%)scale(.92)}.examples-viewer__edge:disabled{opacity:.3;cursor:default}.examples-viewer__edge--prev{left:8px}.examples-viewer__edge--next{right:8px}.examples-library-panel__dropzone{border:1px dashed var(--border);border-radius:var(--r-md);padding:var(--s3);gap:var(--s2);background:var(--surface-2);flex-direction:column;display:flex}.examples-library-panel__dropzone.is-dragover{border-color:var(--accent);background:var(--accent-soft,var(--surface-3))}.examples-library-panel__upload-row{gap:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.examples-library-panel__hint{color:var(--text-mute)}.examples-library-panel__batches{gap:var(--s1);margin:var(--s2) 0;flex-direction:column;display:flex}.examples-library-panel__batch{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--s1h) var(--s2h);font-size:var(--t-sm)}.examples-library-panel__list-head{gap:var(--s3);margin:var(--s3) 0 var(--s1);justify-content:space-between;align-items:baseline;display:flex}.examples-library-panel__count{font-weight:600}.examples-library-panel__empty{padding:var(--s3);text-align:center;color:var(--text-mute)}.examples-library-panel__list{gap:var(--s1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.examples-library-row{gap:var(--s2);padding:var(--s1h) var(--s2);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);align-items:center;display:flex}.examples-library-row__meta{flex:1;min-width:0}.examples-library-row[draggable=true]{cursor:grab}.examples-library-row[draggable=true]:active{cursor:grabbing}.examples-library-row__position{text-align:right;font-variant-numeric:tabular-nums;width:20px;font-size:var(--t-xs);flex:none}.examples-library-row__thumb{border-radius:var(--r-sm);background:var(--surface-3);flex:none;width:56px;height:56px;overflow:hidden}.examples-library-row__thumb img{object-fit:cover;width:100%;height:100%}.examples-library-row__title{appearance:none;width:100%;padding:var(--s1) var(--s1h);color:var(--text);font:inherit;text-align:left;border-radius:var(--r-sm);cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;margin:0;font-weight:500;display:block;overflow:hidden}.examples-library-row__title:hover:not(:disabled){background:var(--surface-3)}.examples-library-row__title:focus-visible{outline:2px solid var(--accent);outline-offset:0}.examples-library-row__title:disabled{cursor:default}.examples-library-row__title-input{appearance:none;width:100%;padding:var(--s1) var(--s1h);background:var(--surface-3);color:var(--text);border:1px solid var(--accent);border-radius:var(--r-sm);font:inherit;outline:none;margin:0;font-weight:500;display:block}.examples-library-row__sub{padding:0 var(--s1h);font-size:12px}.examples-library-row__scene-badge{font-weight:600}.examples-library-row__delete{white-space:nowrap}.example-count-badge{bottom:var(--s2);left:var(--s2);z-index:2;background:var(--media-scrim);color:var(--media-ink);font-size:var(--t-xs);font-variant-numeric:tabular-nums;border-radius:var(--r-pill);padding:2px var(--s2);pointer-events:none;font-weight:600;position:absolute}.example-scene-badge{bottom:var(--s2);right:var(--s2);z-index:2;background:var(--accent);color:var(--accent-ink);text-transform:uppercase;letter-spacing:.06em;border-radius:var(--r-pill);padding:2px var(--s2);pointer-events:none;font-size:10px;font-weight:700;position:absolute}.examples-viewer__strip{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);max-width:100%;display:flex;overflow-x:auto}.examples-viewer__frame{aspect-ratio:1;border-radius:var(--r-sm);opacity:.55;cursor:pointer;width:56px;transition:opacity var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border:2px solid #0000;flex:none;padding:0;overflow:hidden}.examples-viewer__frame:hover{opacity:.85}.examples-viewer__frame.is-current{opacity:1;border-color:var(--media-ink)}.examples-viewer__frame:active{transform:scale(.96)}.examples-viewer__position{color:var(--media-ink);opacity:.72;font-size:var(--t-xs);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:var(--s1)}.examples-viewer__label{color:var(--media-ink);font-weight:600}.examples-library-set{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.examples-library-set__head{align-items:center;gap:var(--s2);padding:var(--s1h) var(--s2);display:flex}.examples-library-set__head[draggable=true]{cursor:grab}.examples-library-set__head[draggable=true]:active{cursor:grabbing}.examples-library-set__head.is-drop-candidate{outline:1px dashed var(--border-strong);outline-offset:-2px}.examples-library-set__grip,.examples-library-row__grip{color:var(--text-mute);cursor:grab;opacity:.55;transition:opacity var(--dur) var(--ease);flex:none;align-items:center;display:inline-flex}.examples-library-set:hover .examples-library-set__grip,.examples-library-row:hover .examples-library-row__grip{opacity:1}.examples-library-set__grip:active,.examples-library-row__grip:active{cursor:grabbing}.examples-library-set__drop-hint{padding:var(--s3) var(--s2);border:1px dashed var(--border-strong);border-radius:var(--r-sm);text-align:center}.examples-library-panel__new-set{flex:none}.examples-library-panel__loose{margin-top:var(--s3);justify-content:center;align-items:center;gap:var(--s2);padding:var(--s4);border:1px dashed var(--border-strong);border-radius:var(--r-md);color:var(--text-dim);font-size:var(--t-sm);animation:pill-in var(--dur) var(--ease-spring);display:flex}.examples-library-panel__loose.is-drop-target{border-color:var(--accent);color:var(--text);background:var(--accent-soft);border-style:solid}.examples-library-set__disclosure{appearance:none;border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.examples-library-set__disclosure:hover{background:var(--surface-3);color:var(--text)}.examples-library-set__disclosure:active{transition-duration:60ms;transform:scale(.94)}.examples-library-set__cover{border-radius:var(--r-sm);background:var(--surface-3);flex:none;width:56px;height:56px;overflow:hidden}.examples-library-set__cover img{object-fit:cover;width:100%;height:100%}.examples-library-set__cover.is-empty{color:var(--text-mute);border:1px dashed var(--border-strong);place-items:center;display:grid}.examples-library-set__meta{flex:1;min-width:0}.examples-library-set__name{appearance:none;width:100%;padding:var(--s1) var(--s1h);color:var(--text);font:inherit;font-size:var(--t-md);text-align:left;border-radius:var(--r-sm);cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;margin:0;font-weight:600;display:block;overflow:hidden}.examples-library-set__name:hover:not(:disabled){background:var(--surface-3)}.examples-library-set__name:focus-visible{outline:2px solid var(--accent);outline-offset:0}.examples-library-set__name:disabled{cursor:default}.examples-library-set__sub{font-size:var(--t-xs);padding:0 var(--s1h)}.examples-library-set__images{padding:0 var(--s2) var(--s2) var(--s6);gap:var(--s1);flex-direction:column;margin:0;list-style:none;display:flex}.examples-library-set__head.is-dragging,.examples-library-row.is-dragging{opacity:.45}.examples-library-set__head.is-drop-target,.examples-library-row.is-drop-target{outline:2px solid var(--accent);outline-offset:-1px;border-radius:var(--r-sm)}.name-example-dialog__files{margin:var(--s3) 0 0;padding-left:var(--s5);font-variant-numeric:tabular-nums;flex-direction:column;gap:2px;display:flex}.ss-pills{align-items:center;gap:var(--s2);margin:var(--s3h) 0 var(--s1);flex-wrap:wrap;display:flex}.ss-pill{appearance:none;cursor:pointer;font:inherit;font-size:var(--t-sm);align-items:center;gap:var(--s1h);height:30px;padding:0 var(--s2h) 0 var(--s3);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease);font-weight:500;display:inline-flex}.ss-pill:hover{border-color:var(--border-strong);background:var(--surface-2)}.ss-pill:active{transition-duration:60ms;transform:scale(.96)}.ss-pill:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ss-pill[aria-expanded=true]{border-color:var(--border-strong);background:var(--surface-2)}.ss-pill__key{color:var(--text-mute);font-size:var(--t-xs);font-weight:500}.ss-pill__chev{color:var(--text-mute);display:inline-flex}.ss-pill--music{background:var(--accent-soft);color:var(--accent);border-color:#0000;max-width:260px;font-weight:600}.ss-pill--music .ss-pill__val{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ss-pill--music:hover{background:var(--accent-soft);border-color:var(--accent)}.ss-pills-meta{color:var(--text-mute);font-size:var(--t-sm);white-space:nowrap;margin-left:auto}.menu-button ul[role=menu] .ss-pill-menu button{justify-content:space-between;align-items:center;gap:var(--s3);min-width:140px;display:flex}.menu-button ul[role=menu] .ss-pill-menu button[aria-checked=true]{font-weight:600}.ss-pill-menu button .ss-pill-menu__check{color:var(--accent);display:inline-flex}.music-dialog .dlg-body{gap:var(--s3);flex-direction:column;display:flex}.music-list{border:1px solid var(--border);border-radius:var(--r-md);max-height:360px;margin:0;padding:0;list-style:none;overflow-y:auto}.music-list__empty{padding:var(--s4);color:var(--text-mute);font-size:var(--t-sm);text-align:center}.music-row{align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);display:flex}.music-row+.music-row{border-top:1px solid var(--border)}.music-row[data-selected]{background:var(--accent-soft)}.music-row__play,.music-row__play--blank{border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.music-row__play{appearance:none;cursor:pointer;color:var(--text);background:var(--surface-2);border:1px solid var(--border);transition:background var(--dur) var(--ease), transform var(--dur) var(--ease)}.music-row__play:hover{background:var(--surface-3)}.music-row__play:active{transition-duration:60ms;transform:scale(.94)}.music-row__play.is-playing{background:var(--accent);color:var(--accent-ink);border-color:#0000}.music-row__play.is-loading{opacity:.6}.music-row__play--blank,.music-row__play--blank:hover{cursor:default;background:0 0;border:1px solid #0000}.music-row__pick{appearance:none;cursor:pointer;font:inherit;color:var(--text);align-items:center;gap:var(--s3);text-align:left;min-width:0;transition:transform var(--dur) var(--ease);background:0 0;border:0;flex:1;padding:0;display:flex}.music-row__pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.music-row__pick:active{transition-duration:60ms;transform:scale(.97)}.music-row__text{flex-direction:column;flex:1;min-width:0;display:flex}.music-row__name{font-weight:600;font-size:var(--t-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.music-row__sub{color:var(--text-mute);font-size:var(--t-xs);margin-top:1px}.music-row__dur{color:var(--text-mute);font-size:var(--t-xs);font-variant-numeric:tabular-nums}.music-row__radio{border:1.5px solid var(--border-strong);width:18px;height:18px;transition:border var(--dur) var(--ease);border-radius:50%;flex:none}.music-row__pick[aria-checked=true] .music-row__radio{border:5px solid var(--accent)}.music-upload{gap:var(--s2);flex-direction:column;display:flex}.music-upload__drop{justify-content:center;align-items:center;gap:var(--s2);border:1px dashed var(--accent);border-radius:var(--r-md);background:var(--surface-2);min-height:150px;color:var(--text);cursor:pointer;transition:transform var(--dur) var(--ease);flex-direction:column;display:flex;position:relative}.music-upload__drop:active{transition-duration:60ms;transform:scale(.97)}.music-upload__drop input{opacity:0;width:1px;height:1px;position:absolute}.music-upload__error{color:var(--danger);font-size:var(--t-sm);margin:0}.music-library__status{margin:var(--s2) 0 0;display:block}.music-library__status+.music-upload__error,.music-upload__error+.music-upload__error{margin-top:var(--s1)}.music-summary{align-items:center;gap:var(--s3);display:flex}.music-summary__name{font-weight:600}.music-library__list{margin:var(--s2) 0 0;gap:var(--s1);flex-direction:column;padding:0;list-style:none;display:flex}.music-library__head{margin:var(--s3) 0 var(--s1);justify-content:space-between;align-items:baseline;font-weight:600;display:flex}.music-library__builtin{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--border)}.music-library__builtin .section-meta{margin:0 0 var(--s2);display:block}.music-library-row{gap:var(--s2h);padding:var(--s1h) var(--s2);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);grid-template-columns:36px minmax(160px,1fr) auto auto;align-items:center;display:grid}.music-library-row--builtin{background:0 0;grid-template-columns:36px minmax(160px,1fr) auto}.music-library-row--builtin .music-library-row__title{cursor:default}.music-library-row .music-row__play{background:var(--surface);border-color:var(--border-strong);width:36px;height:36px}.music-library-row .music-row__play.is-playing{background:var(--accent);border-color:#0000}.music-library-row__meta{color:var(--text-mute);font-size:var(--t-xs);white-space:nowrap;font-variant-numeric:tabular-nums}.music-library-row__title,.music-library-row__title-input{width:100%;font:inherit;color:var(--text);border-radius:var(--r-sm);padding:var(--s1) var(--s1h);margin:0;font-weight:500;display:block}.music-library-row__title{appearance:none;text-align:left;cursor:text;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;overflow:hidden}.music-library-row__title:hover:not(:disabled){background:var(--surface-3)}button.music-library-row__title{transition:background var(--dur) var(--ease), transform var(--dur) var(--ease)}button.music-library-row__title:not(:disabled):active{transition-duration:60ms;transform:scale(.97)}.music-library-row__title:disabled{cursor:default}.music-library-row__title:focus-visible{outline:2px solid var(--accent);outline-offset:0}.music-library-row__title-input{appearance:none;background:var(--surface-3);border:1px solid var(--accent);outline:none}.music-library-row__sub{color:var(--text-mute);font-size:var(--t-xs);padding:0 var(--s1h)}.onboarding-takeover{z-index:100;background:var(--bg);padding:var(--s5);place-items:center;display:grid;position:fixed;inset:0}.onboarding-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:480px;padding:var(--s6);box-shadow:var(--shadow-2);animation:menu-in var(--dur-pop) var(--ease-spring)}.onboarding-step{gap:var(--s4);flex-direction:column;display:flex}.onboarding-step h2{color:var(--text);font-size:var(--t-xl);letter-spacing:-.01em;margin:0;font-weight:600}.onboarding-actions{justify-content:flex-end;gap:var(--s2);margin-top:var(--s2);display:flex}.onboarding-step .formfield{align-items:stretch;gap:var(--s2);border-top:0;flex-direction:column;padding:0;display:flex}.onboarding-step .ui-input{width:100%;max-width:none}.savestat{align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--text-mute);display:inline-flex}.savestat--saving,.savestat--ok{color:var(--text-dim)}.savestat--err{color:var(--danger)}.savestat-dot{background:var(--text-mute);border-radius:50%;width:6px;height:6px}.savestat-dot--ok{background:var(--rate-happy)}.savestat-retry{margin-left:var(--s2);color:var(--accent);cursor:pointer;background:0 0;border:0;font-weight:600}.formsection{border:1px solid var(--border);background:var(--surface);border-radius:var(--r-lg);padding:var(--s5);margin-bottom:var(--s4);max-width:680px}.formsection-title{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-mute);margin:0}.formsection-desc{font-size:var(--t-sm);color:var(--text-dim);margin:var(--s1) 0 0}.formsection-body{margin-top:var(--s4);container-type:inline-size}.formfield{gap:var(--s2) var(--s5);padding:var(--s4) 0;border-top:1px solid var(--border);grid-template-columns:minmax(0,220px) minmax(0,1fr);align-items:center;display:grid}.formsection-body>.formfield:first-child{border-top:0;padding-top:0}.formfield-label label{font-size:var(--t-sm);color:var(--text)}.formfield-help{font-size:var(--t-xs);color:var(--text-mute);margin-top:2px;display:block}.formfield-error{color:var(--danger);font-size:var(--t-xs);margin:var(--s1) 0 0}.formfield-warning{color:var(--warning);font-size:var(--t-xs);margin:var(--s1) 0 0}.ui-input{width:280px;max-width:100%;height:var(--control-h);padding:0 var(--control-pad-x);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);color:var(--text);font-size:var(--t-sm)}.ui-input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.ui-input--multiline{height:auto;min-height:var(--control-h);padding-top:var(--s2);padding-bottom:var(--s2);resize:vertical;font-family:inherit;line-height:1.4}.ui-input--readonly{color:var(--text-dim);background:var(--surface-2);cursor:default}.ui-input--disabled,.ui-input:disabled{opacity:.4;cursor:not-allowed}.ui-input--disabled:focus,.ui-input:disabled:focus{border-color:var(--control-border);outline:none}@container (width<=430px){.formfield{grid-template-columns:1fr}.ui-input{width:100%}}@media (width<=640px){.formfield{grid-template-columns:1fr}}.ui-seg{background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:var(--s1);gap:var(--s1);display:inline-flex}.ui-seg-item{padding:var(--s2) var(--s3h);border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--text-dim);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:0;font-weight:500}.ui-seg-item:hover{color:var(--text)}.ui-seg-item:active{transform:scale(.96)}.ui-seg-item[data-state=checked]{background:var(--surface-3);color:var(--text);box-shadow:var(--shadow-1)}.ui-seg[data-disabled],.ui-seg:has([data-disabled]){opacity:.4}.ui-seg-item[data-disabled]{cursor:not-allowed}.ui-switch{appearance:none;border-radius:var(--r-pill);background:var(--surface-3);cursor:pointer;border:0;width:40px;height:24px;padding:0;position:relative;overflow:hidden}.ui-switch[data-state=checked]{background:var(--accent)}.ui-switch:disabled{opacity:.55;cursor:not-allowed}.ui-switch-thumb{width:20px;height:20px;transition:transform var(--dur-pop) var(--ease-spring);background:#fff;border-radius:50%;display:block;position:absolute;top:2px;transform:translate(2px)}.ui-switch[data-state=checked] .ui-switch-thumb{transform:translate(18px)}.ui-select-trigger{align-items:center;gap:var(--s2);height:var(--control-h);padding:0 var(--control-pad-x);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);min-width:160px;color:var(--text);font-size:var(--t-sm);cursor:pointer;display:inline-flex}.ui-select-trigger[data-disabled]{opacity:.4;cursor:not-allowed}.ui-select-trigger[data-placeholder]{color:var(--text-mute)}.ui-select-icon{color:var(--text-mute);margin-left:auto}.ui-select-content{min-width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-pop), var(--glass-edge);padding:var(--s1);z-index:80;transform-origin:top;animation:menu-in var(--dur) var(--ease-spring)}.ui-select-item{padding:var(--s2) var(--s3);border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--text);cursor:pointer;outline:none}.ui-select-item[data-highlighted]{background:var(--accent-soft)}.ui-sechead{align-items:baseline;gap:var(--s3);margin-bottom:var(--s4);display:flex}.ui-sechead-title{font-size:var(--t-xl);letter-spacing:-.02em;margin:0;font-weight:700}.ui-sechead-meta{font-size:var(--t-sm);color:var(--text-mute)}.ui-sechead-spacer{flex:1}.ui-empty{align-items:center;gap:var(--s2);text-align:center;padding:var(--s10) var(--s5);flex-direction:column;display:flex}.ui-empty-icon{width:var(--icon-lg);height:var(--icon-lg);color:var(--text-mute);justify-content:center;align-items:center;display:flex}.ui-empty-title{margin:0;font-weight:600}.ui-empty-desc{color:var(--text-dim);font-size:var(--t-sm);max-width:420px;margin:0}.ui-empty-action{margin-top:var(--s3)}.settings-sub{font-size:var(--t-xs);color:var(--text-mute);margin-top:2px;font-weight:400}.rating-filter{gap:var(--s1);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);padding:var(--s1);display:inline-flex}.rating-chip{align-items:center;gap:var(--s1h);padding:var(--s2) var(--s3h);border-radius:var(--r-sm);cursor:pointer;color:var(--text-dim);font-size:var(--t-sm);font-variant-numeric:tabular-nums;transition:opacity var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border:0;display:inline-flex}.rating-chip-face{display:inline-flex}.rating-chip[data-state=on]{background:var(--surface-3);box-shadow:var(--shadow-1);color:var(--text)}.rating-chip[data-state=off]{opacity:.45}.rating-chip[data-state=off]:hover{opacity:.8}.empty-rating-tally{gap:var(--s5);margin:var(--s1) 0 var(--s3);font-size:var(--t-md);font-variant-numeric:tabular-nums;display:flex}.empty-rating-tally-item{align-items:center;gap:var(--s1h);display:inline-flex}.ctxmenu{z-index:200;background:var(--glass);border:1px solid var(--border-strong);border-radius:var(--r-md);min-width:180px;max-width:280px;-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-pop), var(--glass-edge);padding:var(--s1);font-size:var(--t-sm);transform-origin:0 0;animation:menu-in var(--dur) var(--ease-spring);position:fixed}.ctxmenu-item{align-items:center;gap:var(--s2);width:100%;padding:var(--s2) var(--s3);border-radius:var(--r-sm);color:var(--text);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;display:flex}.ctxmenu-item:focus,.ctxmenu-item:hover:not([aria-disabled=true]){background:var(--accent-soft);outline:none}.ctxmenu-item--danger{color:var(--danger)}.ctxmenu-item[aria-disabled=true]{color:var(--text-mute);cursor:default}.ctxmenu-item-icon{color:var(--text-mute);display:inline-flex}.ctxmenu-item--danger .ctxmenu-item-icon{color:var(--danger)}.ctxmenu-sep{background:var(--border);height:1px;margin:var(--s1) 0}.ctxmenu-item--submenu{padding-right:var(--s2)}.ctxmenu-sub-indicator{color:var(--text-mute);margin-left:auto;font-size:1.2em;line-height:1}.ctxmenu-item--submenu[aria-expanded=true]{background:var(--accent-soft)}.ctxmenu-label{padding:var(--s1) var(--s3);color:var(--text-mute);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.05em}.ctxmenu-sizes{gap:var(--s1);padding:var(--s1);grid-template-columns:repeat(3,1fr);display:grid}.ctxmenu-size{padding:var(--s1h) var(--s2);border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:var(--t-xs);cursor:pointer;text-align:center}.ctxmenu-size:hover{border-color:var(--border-strong);background:var(--surface-2)}.ctxmenu-size.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.is-selected{box-shadow:0 0 0 2.5px var(--accent)}.is-cursor{box-shadow:0 0 0 1.5px var(--border-strong)}.is-selected.is-cursor{box-shadow:0 0 0 2.5px var(--accent)}.grid-card-checkbox{color:#fff;backdrop-filter:blur(6px);cursor:pointer;opacity:0;width:22px;height:22px;transition:opacity var(--dur) var(--ease);z-index:1;background:#00000073;border:1.5px solid #ffffff8c;border-radius:50%;place-items:center;padding:0;line-height:0;display:grid;position:absolute;top:10px;left:10px}.is-selected .grid-card-checkbox,.grid-card-checkbox:focus-visible{opacity:1}.is-selected .grid-card-checkbox{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:check-in .2s var(--ease-spring)}.dlg-scrim{z-index:60;backdrop-filter:blur(2px);animation:scrim-in var(--dur) var(--ease);background:#00000080;position:fixed;inset:0}.dlg{z-index:61;width:var(--dlg-w,380px);background:var(--glass-strong);max-width:calc(100vw - 32px);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-pop), var(--glass-edge);padding:var(--s5);animation:dlg-in var(--dur-pop) var(--ease-spring);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.dlg-title{font-size:var(--t-xl);letter-spacing:-.02em;margin:0;font-weight:700}.dlg-msg{color:var(--text-dim);font-size:var(--t-base);margin:var(--s3) 0 0;line-height:1.5}.dlg-body{margin-top:var(--s4)}.dlg-actions{justify-content:flex-end;gap:var(--s2);margin-top:var(--s5);display:flex}.dlg .formfield{gap:var(--s1h);padding:var(--s4) 0 0;border-top:0;grid-template-columns:1fr}.dlg .dlg-body>.formfield:first-child{padding-top:0}.dlg .ui-input,.dlg .ui-select-trigger{width:100%}
