:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--z-menu:50;--z-toast:100;--z-drawer:120;--z-render-panel:140;--z-canvas-toolbar:150;--z-modal:160;--z-tooltip:200;--bg:#0a0d14;--surface-1:#11141d;--surface-2:#161a26;--surface-3:#1c2230;--surface-hover:#20273a;--border:#232a3b;--border-strong:#2e364c;--swatch-canvas:#f4f5f7;--text:#eef0f7;--text-soft:#c4c9d6;--muted:#8189a0;--muted-2:#5f6781;--skeleton:color-mix(in srgb, var(--muted) 24%, transparent);--skeleton-sheen:color-mix(in srgb, var(--muted) 44%, transparent);--accent:#6366f1;--accent-hover:#7c7fff;--accent-soft:#6366f124;--accent-soft-strong:#6366f147;--accent-glow:0 0 0 1px #6366f166, 0 0 0 4px #6366f11f;--ring:#818cf8;--ring-gap:var(--bg);--link:#7c7fff;--guide:#ff2d9b;--on-accent:#fff;--accent-fill:#5f62f0;--accent-fill-hover:#5154e6;--success:#10b981;--success-soft:#10b9812e;--warning:#f59e0b;--warning-soft:#f59e0b29;--danger:#ef4444;--danger-fill:#da3030;--danger-fill-hover:#c92222;--danger-soft:#ef444429;--danger-text:#f87171;--status-running-fg:#c7d2fe;--status-clean-fg:#6ee7b7;--status-error-fg:#fca5a5;--badge-warn-fg:#1f1300;--step-done-fg:#0a1f17;--font:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--fs-2xs:10px;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:15px;--fs-2xl:18px;--fs-display:24px;--fs-prose:16px;--fs-title:32px;--space-2xs:2px;--space-xs:4px;--space-sm:6px;--space-md:8px;--space-lg:10px;--space-xl:12px;--space-2xl:14px;--space-3xl:16px;--space-4xl:20px;--space-5xl:24px;--space-6xl:32px;--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-pill:999px;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--t-fast:.12s;--t-med:.2s;--t-slow:.32s;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 18px #00000059, 0 2px 4px #00000040;--shadow-lg:0 18px 50px #0000008c, 0 4px 12px #0000004d;--topbar-h:54px;--sidebar-w:304px;--inspector-w:320px;--insp-head-h:44px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}html,body{background:var(--bg);color:var(--text);font:var(--fs-md)/1.5 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{background:radial-gradient(1200px 600px at 80% -10%, #6366f11a, transparent 60%), radial-gradient(800px 400px at -10% 10%, #ec48990f, transparent 60%), var(--bg)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}:where(p,li) a:where(:not([class])){color:var(--link);text-underline-offset:3px;text-decoration:underline}:where(p,li) a:where(:not([class])):hover{color:var(--text)}:where(button,a[href],[role=tab],[role=button],summary,input:not([type=range]):not([type=color]),select,textarea,[contenteditable=true]):focus-visible{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring);outline:none}main[tabindex="-1"]:focus{outline:none}.muted{color:var(--muted)}.err{color:var(--danger-text)}.err.small{font-size:var(--fs-sm)}.boot{min-height:100vh;font-size:var(--fs-lg);justify-content:center;align-items:center;padding:64px;display:flex}.skeleton{background-color:var(--skeleton);border-radius:var(--r-sm);flex:none;position:relative;overflow:hidden}.skeleton.fill{border-radius:inherit;position:absolute;inset:0}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--skeleton-sheen), transparent);animation:shimmer 1.4s var(--ease) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.boot-skeleton .sk-brand{width:100px;height:20px}.boot-skeleton .sk-crumbs{width:140px;height:16px}.boot-skeleton .sk-avatar{border-radius:50%;width:28px;height:28px}.boot-skeleton .sk-meta{width:230px;height:12px}.boot-skeleton .sk-zoom{width:150px;height:18px}.boot-skeleton .sk-cta{border-radius:var(--r-md);width:190px;height:38px}.boot-skeleton .sk-head{width:96px;height:14px;margin:0 var(--space-xs)}.boot-skeleton .sk-tabs{border-radius:var(--r-md);height:34px}.boot-skeleton .sk-drop{border-radius:var(--r-lg);height:116px}.boot-skeleton .sk-tile{border-radius:var(--r-md);height:70px}.boot-skeleton .sk-rail{width:10px;height:104px;margin:var(--space-3xl) auto;border-radius:var(--r-pill)}.boot-skeleton .sk-row-title{width:260px;height:18px}.boot-skeleton .sk-row-hide{border-radius:var(--r-md);width:62px;height:32px}.boot-skeleton .sk-empty{width:360px;height:20px;margin:0 auto}.boot-skeleton .sk-handle{width:12px;height:12px}.boot-skeleton .sk-pill{border-radius:var(--r-pill);justify-self:start;width:86px;height:18px}.boot-skeleton .sk-insp-icon{border-radius:var(--r-sm);flex:none;width:28px;height:28px}.boot-skeleton .sk-insp-title{flex:1;max-width:150px;height:14px}.boot-skeleton .sk-section{width:60%;height:20px;margin:var(--space-2xl) var(--space-3xl)}.boot-skeleton .screenshot-card{pointer-events:none}kbd{padding:1px var(--space-sm);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-soft);background:#ffffff12;border:1px solid #ffffff14}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) var(--inspector-w);grid-template-rows:var(--topbar-h) 1fr;height:100vh;transition:grid-template-columns .18s var(--ease);display:grid;overflow:hidden}.app.sidebar-collapsed{--sidebar-w:36px}.app.inspector-collapsed{--inspector-w:36px}.topbar{grid-column:1/-1}.sidebar{scrollbar-gutter:stable;grid-area:2/1;overflow-y:auto}.canvas-area{scrollbar-gutter:stable;grid-area:2/2;overflow-y:auto}.inspector{grid-area:2/3;position:relative;overflow-y:auto}.sidebar.rail,.inspector.rail{background:var(--surface-1);border:0;padding:0;overflow:hidden}.rail-left{box-shadow:inset -1px 0 0 var(--border)}.rail-right{box-shadow:inset 1px 0 0 var(--border)}.rail .rail-btn{cursor:pointer;width:100%;height:100%;color:var(--text-soft);padding:var(--space-3xl) 0;align-items:center;gap:var(--space-2xl);transition:background var(--t-fast) var(--ease);background:0 0;border:0;flex-direction:column;display:flex}.rail .rail-btn:hover{background:var(--surface-2);color:var(--text)}.rail .rail-btn .chev{display:inline-flex;transform:none}.rail .rail-btn .chev svg{display:block;transform:none}.rail .rail-btn .chev.rot-left svg{transform:rotate(180deg)}.rail .rail-count{background:var(--surface-3);color:var(--text-soft);font-size:var(--fs-2xs);padding:var(--space-2xs) var(--space-sm);border-radius:var(--r-pill);font-weight:600;line-height:1}.rail .rail-label{writing-mode:vertical-rl;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);-webkit-user-select:none;user-select:none;font-weight:700;transform:rotate(180deg)}.sidebar-head .collapse-btn{margin-left:auto}.chev.rot-left{display:inline-flex;transform:rotate(180deg)}.inspector-head{align-items:center;gap:var(--space-md);height:var(--insp-head-h);padding:0 var(--space-lg) 0 var(--space-md);border-bottom:1px solid var(--border);background:var(--surface-1);flex:none;display:flex}.insp-title{align-items:center;gap:var(--space-sm);min-width:0;font-size:var(--fs-lg);color:var(--text);flex:1;font-weight:600;display:flex}.insp-title>svg{color:var(--muted);flex:none}.insp-title .name,.insp-switch .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.insp-crumb{text-overflow:ellipsis;white-space:nowrap;min-width:4ch;font-family:inherit;font-size:var(--fs-md);color:var(--muted);cursor:pointer;transition:color var(--t-fast) var(--ease);background:0 0;border:0;flex:0 4 auto;padding:0;font-weight:500;overflow:hidden}.insp-crumb:hover{color:var(--text-soft)}.insp-sep{color:var(--muted);font-weight:400;font-size:var(--fs-md);flex:none}.insp-switch{flex:0 auto;min-width:0;max-width:34%}.inspector-body{scrollbar-gutter:stable;flex:1;min-height:0;position:relative;overflow-y:auto}@media (width<=1180px){.app{--sidebar-w:248px;--inspector-w:288px}}@media (width<=900px){.app{--sidebar-w:216px;--inspector-w:264px}}.topbar .meta,.topbar-actions .btn{white-space:nowrap;flex:none}.topbar-actions{flex:none}@media (width<=1180px){.topbar{gap:var(--space-xl);padding:0 var(--space-xl)}.topbar-actions kbd,.topbar .zoom-glyph,.topbar .divider,.topbar .credits-chip>span{display:none}.topbar .zoom input[type=range]{width:64px}}@media (width<=960px){.topbar{gap:var(--space-md);padding:0 var(--space-lg)}.topbar .zoom input[type=range]{width:48px}.topbar .account-label{display:none}.topbar .crumbs{flex:0 auto;min-width:14ch;overflow:hidden}.topbar:has(.topbar-status:not(:empty)) .meta{display:none}.topbar .brand>span:not(.logo){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=900px){.app-bar.topbar>.zoom{display:none}}#mobile-gate{display:none}@media (pointer:coarse) and (hover:none){#app{display:none}#mobile-gate{min-height:100vh;padding:var(--space-6xl) var(--space-4xl);display:flex;overflow-y:auto}}html.force-desktop #mobile-gate,html.public-page #mobile-gate{display:none}html.force-desktop #app,html.public-page #app{display:block}#mobile-gate{-webkit-tap-highlight-color:transparent}.gate-panel,.fail-panel{background:linear-gradient(140deg, var(--surface-1), var(--surface-2));border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--space-6xl);text-align:center;max-width:34rem;margin:auto;position:relative;overflow:hidden}.gate-panel:before,.fail-panel:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#6366f12e,#0000 60%);position:absolute;inset:-50%}.gate-panel>*,.fail-panel>*{position:relative}.gate-logo{border-radius:12px;width:44px;height:44px;display:inline-block}.gate-logo:after{border-radius:7px;inset:8px}.gate-panel h1,.fail-panel h1{font-size:var(--fs-display);letter-spacing:-.02em;text-wrap:balance;margin:var(--space-4xl) 0 var(--space-xl)}.gate-panel p{color:var(--muted);font-size:var(--fs-md)}.gate-panel .gate-action{color:var(--text-soft);margin:var(--space-4xl) 0}.gate-status{margin-top:var(--space-2xl);min-height:1.2em;font-size:var(--fs-sm);color:var(--muted);transition:opacity var(--t-med) var(--ease);display:block}.gate-status.fading{opacity:0}.gate-panel .gate-credit{margin-top:var(--space-4xl);font-size:var(--fs-sm)}.gate-credit a,.site-foot a{color:inherit;text-underline-offset:3px;transition:color var(--t-fast) var(--ease);text-decoration:underline}.gate-credit a:hover,.site-foot a:hover{color:var(--text-soft)}.boot-fail,#boot-dead{min-height:100vh;padding:var(--space-6xl) var(--space-4xl);display:flex;overflow-y:auto}#boot-dead{display:none}#boot-dead.show{z-index:100;display:flex;position:fixed;inset:0}@media (pointer:coarse) and (hover:none){#boot-dead.show{display:none}}html.force-desktop #boot-dead.show,html.public-page #boot-dead.show{display:flex}.fail-panel.tone-danger:before{background:radial-gradient(closest-side,#ef444426,#0000 60%)}.fail-panel.tone-warning:before{background:radial-gradient(closest-side,#f59e0b26,#0000 60%)}.fail-mark{border-radius:var(--r-md);border:1px solid #0000;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.tone-danger .fail-mark{background:var(--danger-soft);color:var(--status-error-fg);border-color:#ef44444d}.tone-warning .fail-mark{background:var(--warning-soft);color:var(--warning);border-color:#f59e0b4d}.fail-body{color:var(--muted);font-size:var(--fs-md);text-wrap:pretty}.fail-hint{color:var(--text-soft);font-size:var(--fs-md);margin-top:var(--space-xl);text-wrap:pretty}.fail-hint code{margin-left:var(--space-sm);padding:var(--space-2xs) var(--space-sm);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);display:inline-block}.fail-actions{gap:var(--space-lg);margin-top:var(--space-5xl);flex-wrap:wrap;justify-content:center;display:flex}.fail-details{margin-top:var(--space-5xl);text-align:left}.fail-details summary{font-size:var(--fs-sm);color:var(--muted);cursor:pointer;text-align:center;border-radius:var(--r-sm);padding:var(--space-xs);list-style:none}.fail-details summary::-webkit-details-marker{display:none}.fail-details summary:hover{color:var(--text-soft)}.fail-details dl{gap:var(--space-sm) var(--space-xl);margin-top:var(--space-xl);padding:var(--space-xl);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);font-family:var(--font-mono);font-size:var(--fs-xs);grid-template-columns:auto minmax(0,1fr);display:grid}.fail-details dt{color:var(--muted)}.fail-details dd{color:var(--text-soft);overflow-wrap:anywhere}.app-bar{align-items:center;gap:var(--space-2xl);padding:0 var(--space-3xl);-webkit-backdrop-filter:saturate(140%)blur(16px);border-bottom:1px solid var(--border);z-index:20;background:#0b0e16d9;display:flex;position:sticky;top:0}.home-bar{height:52px}.home-bar .btn{white-space:nowrap}@media (width<=560px){.home-bar{gap:var(--space-md);padding:0 var(--space-3xl)}.home-bar .brand>span:not(.logo){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.home-bar .credits-chip>span{display:none}}.crumbs{align-items:center;gap:var(--space-2xs);min-width:0;display:flex}.crumb-sep{color:var(--muted-2);font-size:var(--fs-md);flex:none}.crumb{align-items:center;gap:var(--space-sm);min-width:0;padding:var(--space-xs) var(--space-md);border-radius:var(--r-sm);font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;display:inline-flex;overflow:hidden}a.crumb{color:var(--muted);min-width:4ch;transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);flex:0 4 auto;font-weight:500}a.crumb:hover{color:var(--text-soft);background:var(--surface-hover)}.crumb-here{color:var(--text);flex:0 auto;max-width:240px;font-weight:600}.crumb-rename{cursor:text;transition:background var(--t-fast) var(--ease);background:0 0;border:0}.crumb-rename .crumb-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.crumb-rename svg{color:var(--muted);opacity:0;transition:opacity var(--t-fast) var(--ease);flex:none}.crumb-rename:hover{background:var(--surface-hover)}.crumb-rename:hover svg,.crumb-rename:focus-visible svg{opacity:1}.crumb-input{width:240px;padding:var(--space-xs) var(--space-md);font-size:var(--fs-md);font-weight:600}.account-cluster{align-items:center;gap:var(--space-md);flex:none;display:flex}.brand{color:var(--text);align-items:center;gap:var(--space-lg);letter-spacing:-.01em;font-weight:700;font-size:var(--fs-xl);background:0 0;border:0;border-radius:10px;flex:none;padding:0;transition:opacity .12s;display:flex}.brand:hover{opacity:.8}.brand .logo,.gate-logo{background:conic-gradient(from 200deg,#6366f1,#ec4899,#f59e0b,#6366f1);border-radius:8px;width:28px;height:28px;position:relative;box-shadow:0 6px 18px #6366f159,inset 0 0 0 1px #ffffff14}.brand .logo:after,.gate-logo:after{content:"";background:var(--surface-1);border-radius:5px;position:absolute;inset:5px;box-shadow:inset 0 0 0 1px #ffffff0f}.topbar .divider{background:var(--border);width:1px;height:24px}.topbar .meta{color:var(--muted);font-size:var(--fs-sm);align-items:baseline;display:flex}.topbar .meta b{color:var(--text-soft);font-weight:600;font-family:var(--font-mono)}.topbar .meta-seg+.meta-seg:before{content:"·";color:var(--muted-2);margin:0 var(--space-md)}.topbar-status{color:var(--muted);font-size:var(--fs-xs);font-family:var(--font-mono);padding-left:var(--space-xl);border-left:1px solid var(--border);margin-left:var(--space-xs);white-space:nowrap;text-overflow:ellipsis;max-width:22ch;overflow:hidden}.topbar-status:empty{display:none}.save-status{align-items:center;gap:var(--space-sm);font-size:var(--fs-xs);white-space:nowrap;display:inline-flex}.save-status.warn{color:var(--warning)}.save-status.danger{color:var(--status-error-fg)}.save-status:not(.warn,.danger){position:absolute}.topbar-spacer{flex:1}.topbar-locale{align-items:center;display:flex}.topbar-locale select{width:auto;padding:var(--space-xs) var(--space-sm);font-size:var(--fs-sm);border-radius:var(--r-sm);color:var(--text-soft)}.topbar .zoom{align-items:center;gap:var(--space-md);display:flex}.topbar .zoom-glyph{color:var(--muted);display:inline-flex}.topbar .zoom input[type=range]{appearance:none;cursor:pointer;background:0 0;width:88px;height:14px}.topbar .zoom input[type=range]::-webkit-slider-runnable-track{border-radius:var(--r-pill);background:var(--surface-3);height:3px}.topbar .zoom input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);width:11px;height:11px;transition:background var(--t-fast) var(--ease);border-radius:50%;margin-top:-4px}.topbar .zoom input[type=range]:hover::-webkit-slider-thumb{background:var(--accent-hover)}.topbar .zoom input[type=range]::-moz-range-track{border-radius:var(--r-pill);background:var(--surface-3);height:3px}.topbar .zoom input[type=range]::-moz-range-thumb{background:var(--accent);border:0;border-radius:50%;width:11px;height:11px}.topbar .zoom input[type=range]:focus-visible{border-radius:var(--r-pill);box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--ring);outline:none}.topbar-actions{align-items:center;gap:var(--space-md);display:flex}.btn{--bg:var(--surface-2);--bd:var(--border);--fg:var(--text-soft);background:var(--bg);border:1px solid var(--bd);color:var(--fg);border-radius:var(--r-md);padding:var(--space-md) var(--space-xl);font-size:var(--fs-md);justify-content:center;align-items:center;gap:var(--space-sm);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);font-weight:600;display:inline-flex}.btn>svg,.icon-btn>svg{flex-shrink:0}.btn:hover:not(:where(:disabled,[aria-disabled=true])){--bg:var(--surface-hover);--fg:var(--text);--bd:var(--border-strong)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn--sm{padding:var(--space-sm) var(--space-lg);font-size:var(--fs-sm)}.btn--lg{padding:var(--space-lg) var(--space-3xl);font-size:var(--fs-lg)}.btn.primary{--bg:var(--accent-fill);--bd:var(--accent-fill);--fg:var(--on-accent);box-shadow:0 6px 18px #6366f159}.btn.primary:hover:not(:disabled){--bg:var(--accent-fill-hover);--bd:var(--accent-fill-hover);--fg:var(--on-accent);box-shadow:0 8px 22px #6366f173}.btn.primary:focus-visible:not(:disabled){box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring), 0 6px 18px #6366f159}.btn.primary kbd{color:var(--on-accent);background:#00000024;border-color:#fff3}.btn.danger{--bg:var(--danger-fill);--bd:var(--danger-fill);--fg:var(--on-accent)}.btn.danger:hover:not(:disabled){--bg:var(--danger-fill-hover);--bd:var(--danger-fill-hover);--fg:var(--on-accent)}.btn.outline{--bg:transparent;--bd:var(--border-strong);--fg:var(--text-soft)}.btn.outline:hover:not(:disabled){--bg:var(--surface-hover);--fg:var(--text);--bd:var(--border-strong)}.btn.ghost{--bg:transparent;--bd:transparent;--fg:var(--muted)}.btn.ghost:hover:not(:disabled){--bg:var(--surface-hover);--fg:var(--text);--bd:transparent}.btn.ghost.danger{--bg:transparent;--bd:transparent;--fg:var(--danger-text)}.btn.ghost.danger:hover:not(:disabled){--bg:var(--danger-soft);--bd:transparent;--fg:var(--danger-text)}.btn.outline.danger{--bg:var(--danger-soft);--bd:var(--danger);--fg:var(--danger-text)}.btn.outline.danger:hover:not(:disabled){--bg:var(--danger-fill);--bd:var(--danger-fill);--fg:var(--on-accent)}.btn.subtle{--bg:var(--surface-3);--bd:transparent;--fg:var(--text-soft)}.btn.link{--bg:transparent;--bd:transparent;--fg:var(--accent);box-shadow:none;padding-left:0;padding-right:0}.btn.link:focus-visible{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.btn.link:hover:not(:disabled){--bg:transparent;--fg:var(--accent-hover);text-decoration:underline}.icon-btn{color:var(--muted);border-radius:var(--r-sm);width:28px;height:28px;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled):not([aria-disabled=true]){color:var(--text);background:var(--surface-hover)}.icon-btn.danger:hover:not(:disabled):not([aria-disabled=true]){color:var(--danger);background:var(--danger-soft)}.icon-btn:disabled,.icon-btn[aria-disabled=true]{color:var(--muted-2);cursor:not-allowed}.chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-soft);font-size:var(--fs-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--r-pill);cursor:pointer;align-items:center;gap:var(--space-xs);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);font-weight:600;display:inline-flex}.chip:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-strong)}.chip.active{color:var(--accent-hover);border-color:var(--accent);background:var(--accent-soft)}.chip.shuffle{color:var(--accent-hover);border-color:var(--accent-soft-strong);background:var(--accent-soft)}.chip.shuffle:hover{background:var(--accent-soft-strong)}.chip-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.sidebar{background:var(--surface-1);border-right:1px solid var(--border);padding:var(--space-2xl) var(--space-xl) 80px;gap:var(--space-xl);flex-direction:column;display:flex}.sidebar-head{align-items:center;gap:var(--space-md);padding:0 var(--space-xs);display:flex}.sidebar-head h2{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}.sidebar-head .count{color:var(--muted);font-size:var(--fs-xs)}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--space-2xs);gap:var(--space-2xs);display:flex;position:relative}.segmented .seg{min-width:0;color:var(--muted);padding:var(--space-sm) var(--space-xs);border-radius:var(--r-sm);font-weight:600;font-size:var(--fs-md);justify-content:center;align-items:center;gap:var(--space-xs);min-height:28px;transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;border:none;flex:1 1 0;display:inline-flex;overflow:hidden}.segmented .seg .seg-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.segmented .seg:hover{color:var(--text);background:var(--surface-hover)}.segmented .seg.active{background:var(--surface-3);color:var(--text);box-shadow:0 1px 2px #0006,inset 0 0 0 1px #ffffff0a}.segmented .seg.active:focus-visible{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring), inset 0 0 0 1px #ffffff0a}.segmented .seg>svg{flex-shrink:0}.segmented .seg .pill{background:var(--surface-hover);color:var(--muted);padding:1px var(--space-sm);border-radius:var(--r-pill);font-size:var(--fs-xs);flex-shrink:0}.segmented .seg.active .pill{background:var(--accent-soft);color:var(--accent-hover)}.dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);padding:var(--space-3xl) var(--space-2xl);text-align:center;background:var(--surface-2);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.dropzone .dz-icon{background:var(--surface-3);width:36px;height:36px;color:var(--text-soft);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.dropzone p{color:var(--muted);font-size:var(--fs-sm)}.dropzone .dz-note{margin-top:var(--space-md);font-size:var(--fs-xs)}.dropzone.dragover{border-color:var(--accent);background:var(--accent-soft)}.file-btn{align-items:center;gap:var(--space-sm);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--space-md) var(--space-xl);font-size:var(--fs-sm);color:var(--text-soft);cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);font-weight:600;display:inline-flex}.file-btn:hover{background:var(--surface-hover);color:var(--text)}.file-btn input{display:none}.slides{gap:var(--space-sm);flex-direction:column;display:flex}.slides .hint{padding:var(--space-lg) var(--space-sm);font-size:var(--fs-sm);color:var(--muted);text-align:center}.slide-tile{background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--r-md);align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-xs);cursor:grab;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);grid-template-columns:1fr auto;display:grid;position:relative}.slide-tile:hover{background:var(--surface-3)}.slide-tile.dragging{opacity:.4;cursor:grabbing}.slide-tile.drop-before:before,.slide-tile.drop-after:after{content:"";background:var(--accent);border-radius:var(--r-pill);height:2px;box-shadow:0 0 0 2px var(--accent-soft);pointer-events:none;position:absolute;left:0;right:0}.slide-tile.drop-before:before{top:calc(var(--space-sm) / -2 - 1px)}.slide-tile.drop-after:after{bottom:calc(var(--space-sm) / -2 - 1px)}.slide-tile.busy{opacity:.55;pointer-events:none}.slide-tile.selected{border-color:var(--accent);background:var(--accent-soft)}.slide-tile .handle{color:var(--muted-2);opacity:.5;width:14px;transition:opacity var(--t-fast) var(--ease);justify-content:center;align-items:center;display:flex}.slide-tile:hover .handle{opacity:1}.slide-tile .thumb{border-radius:var(--r-sm);background:#000;flex-shrink:0;width:56px;height:56px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0a}.slide-tile .thumb img{object-fit:cover;object-position:top;width:100%;height:100%;transition:opacity var(--t-med) var(--ease);display:block}.slide-tile .thumb img.pending{opacity:0}.slide-tile .thumb[aria-busy=true]{background:var(--surface-3)}.slide-tile.focused{box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft-strong)}.slide-tile .tile-check{top:calc(50% - 28px);left:calc(var(--space-xs) + 14px + var(--space-sm));z-index:1;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:absolute}.slide-tile .tile-check .check-ind{border:1.5px solid var(--text-soft);background:var(--bg);width:16px;height:16px;box-shadow:0 0 0 1px var(--bg);color:var(--on-accent);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.slide-tile .tile-check:hover .check-ind{border-color:var(--text);background:var(--surface-hover)}.slide-tile .tile-check[aria-checked=true] .check-ind{background:var(--accent-fill);border-color:var(--accent-fill)}.slide-tile .tile-check[aria-checked=true]:hover .check-ind{background:var(--accent-fill-hover);border-color:var(--accent-fill-hover)}.slide-tile .tile-check:focus-visible{box-shadow:none}.slide-tile .tile-check:focus-visible .check-ind{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.slide-tile .meta{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.slide-tile .meta .name{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.slide-tile .meta .name-input{font:inherit;font-size:var(--fs-md);color:var(--text);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-sm);padding:0 var(--space-2xs);cursor:text;min-width:0;font-weight:600}.slide-tile .meta .sub{font-size:var(--fs-xs);color:var(--muted);align-items:center;gap:var(--space-sm);display:flex}.slide-tile .tile-body{align-items:center;gap:var(--space-sm);border-radius:var(--r-sm);grid-template-columns:auto 56px 1fr;min-width:0;display:grid}.slide-tile .tile-body:focus-visible{box-shadow:none}.slide-tile:has(.tile-body:focus-visible){box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.slide-tile .actions{align-items:center;display:flex;position:relative}.slide-tile .actions .icon-btn{opacity:0}.slide-tile:hover .actions .icon-btn,.slide-tile:focus-within .actions .icon-btn,.slide-tile.selected .actions .icon-btn{opacity:1}.menu{margin-top:var(--space-sm);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:var(--space-xs);z-index:50;min-width:180px;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;top:100%;right:0}.menu.up{margin-top:0;margin-bottom:var(--space-sm);top:auto;bottom:100%}.menu button:not(:where(.btn)){color:var(--text-soft);padding:var(--space-md) var(--space-lg);border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:pointer;text-align:left;align-items:center;gap:var(--space-md);background:0 0;border:none;display:flex}.menu button:not(:where(.btn)):hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.menu button:not(:where(.btn)):disabled{color:var(--muted-2);cursor:not-allowed}.menu .danger{color:var(--danger-text)}.menu .danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger-text)}.tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2xs) var(--space-sm);border-radius:var(--r-xs);background:var(--surface-3);color:var(--muted);align-items:center;gap:var(--space-xs);width:fit-content;font-weight:700;display:inline-flex}.tag.ios,.tag.examples{color:#c4b5fd;background:#c4b5fd1f}.tag.android,.tag.uploads{color:#86efac;background:#86efac1f}.tag.phone{color:#93c5fd;background:#93c5fd1f}.tag.tablet{color:#fdba74;background:#fdba741f}.canvas-area{padding:var(--space-3xl) var(--space-5xl) 80px;gap:var(--space-3xl);flex-direction:column;display:flex}.welcome{background:linear-gradient(140deg, var(--surface-1), var(--surface-2));border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--space-6xl) var(--space-6xl);position:relative;overflow:hidden}.welcome:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#6366f12e,#0000 60%);position:absolute;inset:-50%}.welcome h1{font-size:var(--fs-display);letter-spacing:-.02em;margin-bottom:var(--space-sm)}.welcome p{color:var(--muted);font-size:var(--fs-md);max-width:60ch}.welcome .steps{margin-top:var(--space-5xl);gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid;position:relative}.welcome .step{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-2xl);gap:var(--space-lg);transition:border-color var(--t-fast) var(--ease), opacity var(--t-fast) var(--ease);grid-template-columns:30px 1fr;align-items:start;display:grid}.welcome .step.done{opacity:.55}.welcome .step .mark{background:var(--surface-3);border:1px solid var(--border);width:28px;height:28px;color:var(--muted);font-weight:700;font-size:var(--fs-sm);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.welcome .step.done .mark{background:var(--success);color:var(--step-done-fg);border-color:var(--success)}.welcome .step .lbl{font-size:var(--fs-md);color:var(--text);font-weight:600}.welcome .step .hint{font-size:var(--fs-sm);color:var(--muted);margin-top:var(--space-2xs);font-weight:400;display:block}.device-rows{gap:var(--space-3xl);flex-direction:column;display:flex}.device-row{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-xl);transition:border-color var(--t-fast) var(--ease);overflow:hidden}.device-row.drop-active{border-color:var(--accent)}.device-row.drop-active .device-row-body{background:var(--accent-soft)}.device-row-header{align-items:center;gap:var(--space-lg);padding:var(--space-lg) var(--space-2xl);background:var(--surface-2);border-bottom:1px solid var(--border);z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.device-row-title{align-items:baseline;gap:var(--space-lg);flex-wrap:wrap;flex:1;min-width:0;display:flex}.device-row-title>.tag,.device-row-title>.badge{align-self:center}.device-row-title h3{font-size:var(--fs-lg);font-weight:600}.device-row-title .dims{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--muted)}.device-row-body{gap:var(--space-2xl);padding:var(--space-3xl);scroll-snap-type:x proximity;transition:background var(--t-fast) var(--ease);align-items:flex-start;display:flex;overflow-x:auto}.device-row-body>*{scroll-snap-align:start}.device-row.drop-active .device-row-body{scroll-snap-type:none}.empty-row{padding:var(--space-5xl) var(--space-2xl);text-align:center;color:var(--muted);font-size:var(--fs-md);flex:1}div.empty-row{align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.empty{padding:80px var(--space-6xl);text-align:center;color:var(--muted);font-size:var(--fs-md)}.badge{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2xs) var(--space-sm);border-radius:var(--r-pill);font-weight:600}.badge.fallback-inline{background:var(--warning-soft);color:var(--warning)}.badge.override{background:var(--accent-soft);color:var(--accent)}.badge.varies{background:var(--surface-3);color:var(--text-soft);white-space:nowrap}.badge.scene{background:var(--accent-soft);color:var(--accent);align-items:center;gap:var(--space-2xs);display:inline-flex}.screenshot-card{background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);cursor:pointer;flex-shrink:0;overflow:hidden}.screenshot-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.screenshot-card.focused{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft-strong), var(--shadow-md)}.screenshot-card.dragging-card{opacity:.4}.screenshot-card.drop-target{border-color:var(--accent);box-shadow:-3px 0 0 var(--accent)}.screenshot-card.span-next{margin-right:calc(var(--space-xs) - var(--space-2xl));border-top-right-radius:0;border-bottom-right-radius:0}.screenshot-card.span-prev{border-top-left-radius:0;border-bottom-left-radius:0}.screenshot-card:is(.span-next,.span-prev):hover{transform:none}.seam{--seam-gap:var(--space-2xl);z-index:2;margin-left:calc(-1 * var(--space-2xl));flex:0 0 0;align-self:stretch;position:relative}.screenshot-card.span-next+.seam{--seam-gap:var(--space-xs)}.seam-toggle{top:50%;left:calc(var(--space-2xl) - var(--seam-gap) / 2);border:1px solid var(--border-strong);background:var(--surface-2);width:24px;height:24px;color:var(--muted);cursor:pointer;opacity:0;transition:opacity var(--t-fast) var(--ease), color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.device-row-body:hover .seam-toggle,.seam-toggle:focus-visible{opacity:1}.device-row-body:has(.canvas.dragging) .seam-toggle{opacity:0;pointer-events:none}.seam-toggle:not([aria-disabled=true]):hover{color:var(--text);background:var(--surface-hover)}.seam-toggle[aria-pressed=true]{color:var(--on-accent);background:var(--accent-fill);border-color:var(--accent-fill)}.seam-toggle[aria-pressed=true]:hover{background:var(--accent-fill-hover);border-color:var(--accent-fill-hover);color:var(--on-accent)}.seam-toggle[aria-disabled=true]{color:var(--muted-2);cursor:not-allowed}.card-preview-wrap{background:#000;position:relative;overflow:hidden}.card-chrome{height:36px;padding:0 var(--space-md) 0 var(--space-sm);font-size:var(--fs-xs);align-items:center;gap:var(--space-xs);border-bottom:1px solid var(--border);background:var(--surface-1);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.card-actions{gap:var(--space-2xs);justify-content:flex-end;align-items:center;display:flex}.card-actions>*{white-space:nowrap;flex:none}.card-actions .icon-btn{width:24px;height:24px}.card-actions .card-act{opacity:0;transition:opacity var(--t-fast) var(--ease)}.screenshot-card:hover .card-actions .card-act,.screenshot-card.focused .card-actions .card-act,.card-actions .card-act.always{opacity:1}.screenshot-card:has(:focus-visible) .card-actions .card-act{opacity:1}.card-actions .card-act.retry{color:var(--status-error-fg)}.card-chrome.compact .badge.override{display:none}html.force-desktop .card-actions .card-act{opacity:1}.drag-handle{width:18px;height:22px;color:var(--muted-2);cursor:grab;border-radius:var(--r-sm);justify-content:center;align-items:center;display:inline-flex}.drag-handle:hover{color:var(--text-soft);background:var(--surface-hover)}.drag-handle:active{cursor:grabbing}.card-status{align-items:center;gap:var(--space-xs);min-width:0;max-width:100%;padding:var(--space-2xs) var(--space-sm);border-radius:var(--r-pill);background:var(--surface-3);color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;justify-self:start;font-weight:600;display:inline-flex}.card-status-label{text-overflow:ellipsis;overflow:hidden}.card-status:before{content:"";opacity:.7;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.card-status.status-running,.card-status.status-pending{background:var(--accent-soft-strong);color:var(--status-running-fg)}.card-status.status-running:before{animation:1.1s infinite pulse}.card-status.status-clean{background:var(--success-soft);color:var(--status-clean-fg)}.card-status.status-dirty{background:var(--warning-soft);color:var(--warning)}.card-status.status-error{background:var(--danger-soft);color:var(--status-error-fg)}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.canvas{transform-origin:0 0;touch-action:none;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.canvas>*{pointer-events:none}.canvas .text-block{text-align:center;position:absolute}.canvas .image-layer{position:absolute}.canvas .text-body{outline-offset:calc(4 * var(--ui-px,1px));border-radius:calc(3 * var(--ui-px,1px));transition:outline-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);outline:0 solid #0000}.canvas .text-body[data-hovered],.canvas .image-layer[data-hovered]{outline:calc(1.5 * var(--ui-px,1px)) dashed #fffffff2;box-shadow:0 0 0 calc(5.5 * var(--ui-px,1px)) #00000059}.canvas .text-block.selected,.canvas .text-block.editing{z-index:4}.canvas .visiting{z-index:3}.canvas .text-block.selected .text-body,.canvas .text-block.editing .text-body{outline:calc(2 * var(--ui-px,1px)) solid var(--accent);box-shadow:0 0 0 calc(6 * var(--ui-px,1px)) #0000006b}.canvas .text-block.editing .text-body{pointer-events:auto;-webkit-user-select:text;user-select:text;cursor:text}.canvas .text-block [contenteditable]{outline:none}.canvas .text-block [contenteditable]:focus{background:#ffffff0f}.canvas .device-stage{position:absolute}.canvas .device{outline-offset:calc(4 * var(--ui-px,1px));position:absolute;inset:0}.canvas .image-layer{outline-offset:calc(4 * var(--ui-px,1px))}.canvas .device[data-hovered]{outline:calc(1.5 * var(--ui-px,1px)) dashed #fffffff2;box-shadow:0 0 0 calc(5.5 * var(--ui-px,1px)) #00000059}.canvas .image-layer.selected,.canvas .device.selected{outline:calc(2 * var(--ui-px,1px)) solid var(--accent);box-shadow:0 0 0 calc(6 * var(--ui-px,1px)) #0000006b}.canvas .resize-frame{pointer-events:none;z-index:6;position:absolute;inset:0}.canvas .resize-frame .rh{width:calc(9 * var(--ui-px,1px));height:calc(9 * var(--ui-px,1px));background:var(--surface);border:calc(2 * var(--ui-px,1px)) solid var(--accent);border-radius:calc(2 * var(--ui-px,1px));box-shadow:0 0 0 calc(1 * var(--ui-px,1px)) #00000080;position:absolute;transform:translate(-50%,-50%)}.canvas .resize-frame .rh-rot{width:calc(10 * var(--ui-px,1px));height:calc(10 * var(--ui-px,1px));background:var(--accent);border-color:var(--surface);border-radius:50%}.canvas .device-shadow{position:absolute;inset:0}.canvas .align-guide{pointer-events:none;z-index:5;background:var(--guide);position:absolute}.canvas .align-guide.v{width:calc(2 * var(--ui-px,1px));top:0;bottom:0;transform:translate(-50%)}.canvas .align-guide.h{height:calc(2 * var(--ui-px,1px));left:0;right:0;transform:translateY(-50%)}.canvas .marquee{pointer-events:none;z-index:5;border:calc(1 * var(--ui-px,1px)) solid var(--accent);background:var(--accent-soft);box-shadow:0 0 0 calc(1 * var(--ui-px,1px)) #00000059;position:absolute}.canvas .lens-layer{outline-offset:calc(4 * var(--ui-px,1px));position:absolute}.canvas .lens-body{position:absolute;inset:0;overflow:hidden}.canvas .lens-view{position:absolute}.canvas .lens-view .screenshot{width:100%;height:100%;display:block}.canvas .lens-ring{border-radius:inherit;position:absolute;inset:0}.canvas .lens-layer[data-hovered]{outline:calc(1.5 * var(--ui-px,1px)) dashed #fffffff2;box-shadow:0 0 0 calc(5.5 * var(--ui-px,1px)) #00000059}.canvas .lens-layer.selected{outline:calc(2 * var(--ui-px,1px)) solid var(--accent);box-shadow:0 0 0 calc(6 * var(--ui-px,1px)) #0000006b}.canvas .lens-layer.fitting{outline:calc(2 * var(--ui-px,1px)) dashed var(--guide)}.canvas .lens-mark{z-index:1;position:absolute}.canvas .lens-mark .lens-sharp{max-width:none;display:block;position:absolute}.canvas .lens-link{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.canvas>.lens-pick{z-index:7;pointer-events:auto;touch-action:none;cursor:crosshair;position:absolute;inset:0}.canvas .lens-pick-rect{z-index:2;border:calc(2 * var(--ui-px,1px)) solid var(--accent);background:var(--accent-soft);box-shadow:0 0 0 calc(1 * var(--ui-px,1px)) #00000059;position:absolute}.canvas .screenshot{transition:opacity var(--t-med) var(--ease)}.canvas .sk-screen{z-index:1;position:absolute}.canvas-skeleton .sk-bar{border-radius:var(--r-pill)}.canvas-skeleton .sk-device{z-index:2;position:absolute}.canvas .frame-img{z-index:2;width:100%;height:100%;position:absolute;inset:0}.canvas .safe-area-overlay{pointer-events:none;z-index:4;border-radius:var(--r-lg);border:8px dashed #ffffff8c;position:absolute}.inspector{background:var(--surface-1);border-left:1px solid var(--border);flex-direction:column;padding:0;display:flex}.insp-section{border-bottom:1px solid var(--border);padding:var(--space-4xl) var(--space-3xl) var(--space-2xl);gap:var(--space-md);flex-direction:column;display:flex}.insp-section:last-child{border-bottom:none}.insp-section.collapsed{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.insp-head{align-items:center;gap:var(--space-md);display:flex}.insp-head .head-spacer{flex:1}.insp-head .head-count{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.insp-head-btn{background:var(--surface-1);cursor:pointer;font-family:inherit;font-size:var(--fs-md);color:var(--text);text-align:left;padding:var(--space-sm) var(--space-3xl);margin:calc(-1 * var(--space-sm)) calc(-1 * var(--space-3xl));padding-bottom:var(--space-xs);margin-bottom:calc(-1 * var(--space-xs));transition:background var(--t-fast) var(--ease);z-index:1;border:none;font-weight:600;position:sticky;top:0}.insp-head-btn:hover{background:var(--surface-hover)}.insp-head-btn:focus-visible{box-shadow:inset 0 0 0 2px var(--ring);outline:none}.insp-head-btn .chev{color:var(--muted);transition:transform var(--t-fast) var(--ease);flex:none;display:inline-flex}.insp-head-btn .chev.collapsed{transform:rotate(-90deg)}.insp-head-btn:hover .chev{color:var(--text-soft)}.insp-row{gap:var(--space-sm);flex-direction:column;display:flex}.insp-row>label{font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.insp-row.inline{align-items:center;gap:var(--space-lg);flex-direction:row}.insp-row.inline>label{text-transform:none;letter-spacing:0;font-size:var(--fs-md);color:var(--text-soft);flex:1;font-weight:500}.bg-swatches{gap:var(--space-sm);grid-template-columns:repeat(6,1fr);display:grid}.bg-group{gap:var(--space-sm);flex-direction:column;display:flex}.bg-group+.bg-group,.bg-swatches+.bg-group,.bg-group+.bg-swatches{margin-top:var(--space-xl)}.bg-group-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.bg-medium{margin-bottom:var(--space-xl);display:flex}.bg-medium .seg-btn{flex:1;min-width:0}.bg-swatch.photo{background:var(--surface-2);overflow:hidden}.bg-swatch.photo img{object-fit:cover;width:100%;height:100%;display:block}.bg-swatch{aspect-ratio:1;border-radius:var(--r-sm);border:1px solid var(--border);cursor:pointer;transition:transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);background-position:50%;background-size:cover;padding:0}.bg-swatch:hover:not([aria-disabled=true]){transform:translateY(-1px)}.bg-swatch[aria-disabled=true]{opacity:.35;cursor:not-allowed}.bg-swatch.active{border-color:var(--accent);box-shadow:var(--accent-glow)}.bg-swatch.active:focus-visible{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.bg-swatch.inherit{background:var(--surface-2);color:var(--muted);font-size:var(--fs-lg);justify-content:center;align-items:center;line-height:1;display:flex}.look-grid{gap:var(--space-md);--look-label-h:18px;grid-template-columns:repeat(2,1fr);display:grid}.look-card{aspect-ratio:4/5;border-radius:var(--r-md);border:1px solid var(--border);transition:transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);position:relative;overflow:hidden}.look-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0000004d}.look-pick{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block;position:absolute;inset:0}.look-pick:focus-visible{outline:none}.look-pick:focus-visible:after{content:"";z-index:1;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 2px var(--ring);position:absolute;inset:0}.look-canvas{inset:0 0 var(--look-label-h) 0;perspective:240px;--look-head:8px;--look-sub:6px;background-position:50%;background-size:cover;display:block;position:absolute;overflow:hidden}.look-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.look-device{aspect-ratio:1320/2868;border-radius:3px;position:absolute;left:50%}.look-line{display:block;position:absolute;overflow:hidden}.look-sample{font-size:var(--fs-2xl);width:100%;padding:0 var(--space-md);font-weight:800;position:absolute;top:50%;left:0;transform:translateY(-50%)}.look-label{padding:0 var(--space-sm);height:var(--look-label-h);line-height:var(--look-label-h);font-size:var(--fs-2xs);color:var(--text);text-align:center;background:var(--surface-2);white-space:nowrap;text-overflow:ellipsis;font-weight:600;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.look-del{top:var(--space-2xs);right:var(--space-2xs);z-index:1;color:var(--on-accent);opacity:0;transition:opacity var(--t-fast) var(--ease);background:#00000073;position:absolute}.look-del:hover{color:var(--on-accent);background:#000000a6}.look-card:hover .look-del{opacity:1}.look-card:has(:focus-visible) .look-del{opacity:1}@media (hover:none){.look-del{opacity:1}}input[type=text],input[type=number],input[type=search],input:not([type]),select,textarea{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-md);padding:var(--space-md) var(--space-lg);width:100%;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);outline:none}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input:not([type]):focus,select:focus,textarea:focus{border-color:var(--accent)}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input:not([type]):focus,select:focus-visible,textarea:focus{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}input::placeholder,textarea::placeholder{color:var(--muted)}input[type=color]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--space-2xs);cursor:pointer;width:44px;height:32px}input[type=checkbox]{accent-color:var(--accent)}input[type=range]{width:100%;accent-color:var(--accent)}.device-list{gap:var(--space-xs);flex-direction:column;display:flex}.ai-open{align-items:center;gap:var(--space-sm);width:100%;margin-top:var(--space-md);padding:var(--space-md) var(--space-lg);border:1px dashed var(--border-strong);border-radius:var(--r-sm);color:var(--muted);font:inherit;font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;display:flex}.ai-open:hover:not(:disabled){border-color:var(--accent);color:var(--text-soft)}.ai-open svg{color:var(--accent)}.ai-open:disabled{opacity:.55;cursor:not-allowed}.ai-open:disabled svg{color:var(--muted-2)}.ai-copy{gap:var(--space-md);margin-top:var(--space-md);padding:var(--space-lg);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;display:flex}.ai-copy-label{font-size:var(--fs-xs);color:var(--muted)}.ai-copy-note{font-size:var(--fs-xs);color:var(--muted);margin:0}.ai-copy-note a{color:var(--text-soft)}.ai-copy-actions{justify-content:flex-end;gap:var(--space-md);display:flex}.ai-options{gap:var(--space-sm);flex-direction:column;display:flex}.ai-option{gap:var(--space-2xs);padding:var(--space-md) var(--space-lg);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-sm);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);flex-direction:column;display:flex}.ai-option:hover{border-color:var(--accent);background:var(--surface-3)}.ai-option b{font-size:var(--fs-md);color:var(--text);font-weight:600}.ai-option span{font-size:var(--fs-sm);color:var(--muted)}.translate-source{gap:var(--space-2xs);padding:var(--space-md) var(--space-lg);background:var(--surface-2);border-left:2px solid var(--border-strong);border-radius:var(--r-sm);flex-direction:column;display:flex}.translate-source-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.translate-source p{font-size:var(--fs-md);color:var(--text-soft);margin:0}.translate-source.stale{border-left-color:var(--warning)}.translate-source.stale .translate-source-label{color:var(--warning)}.scope-targets.translating{color:var(--text-soft)}.locale-list{gap:var(--space-xs);flex-direction:column;display:flex}.locale-row{align-items:center;gap:var(--space-sm);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.locale-row:hover{background:var(--surface-3)}.locale-row.active{border-color:var(--accent);background:var(--accent-soft)}.locale-pick{gap:var(--space-2xs);min-width:0;padding:var(--space-md) var(--space-lg);text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;flex-direction:column;display:flex}.locale-name{font-size:var(--fs-md);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.locale-sub{font-size:var(--fs-xs);color:var(--muted)}.locale-row.active .locale-sub{color:var(--text-soft)}.locale-del{opacity:0;margin-right:var(--space-xs);transition:opacity var(--t-fast) var(--ease)}.locale-row:hover .locale-del{opacity:1}.locale-row:has(:focus-visible) .locale-del{opacity:1}@media (hover:none){.locale-del{opacity:1}}.locale-ai{color:var(--accent)}.locale-ai:disabled{color:var(--muted-2)}.device-group-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:var(--space-xs);font-weight:700}.device-chip{align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);grid-template-columns:20px 1fr auto;display:grid}.device-chip:hover{background:var(--surface-3)}.device-chip.checked{border-color:var(--accent);background:var(--accent-soft)}.device-chip .platform-icon{color:var(--muted);display:inline-flex}.device-chip.checked .platform-icon{color:var(--accent-hover)}.device-chip .label-col{text-align:center;flex-direction:column;min-width:0;display:flex}.device-chip .label-col .name{font-size:var(--fs-md);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.device-chip .label-col .dims{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--muted)}.device-chip .check-ind{border:1.5px solid var(--border-strong);width:16px;height:16px;color:var(--on-accent);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.device-chip.checked .check-ind{background:var(--accent-fill);border-color:var(--accent-fill)}.device-chip .label-col .dims{justify-content:center;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.device-chip .store-warn{font-family:var(--font);color:var(--warning);background:var(--warning-soft);border-radius:var(--r-sm);align-items:center;gap:3px;padding:0 4px;display:inline-flex}.device-chip .store-warn.blocking{color:var(--danger-text);background:var(--danger-soft)}.device-chip.store-refused{border-color:var(--danger-soft)}.insp-tags{gap:var(--space-sm);flex-wrap:wrap;display:flex}.insp-status{font-size:var(--fs-sm);color:var(--muted);padding:var(--space-md) var(--space-lg);border-radius:var(--r-md);background:var(--surface-2);border:1px dashed var(--border);min-height:32px}.insp-status.visually-hidden{min-height:0}.insp-actions{gap:var(--space-md);display:flex}.insp-actions .btn{flex:1;justify-content:center}.align-row{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.align-sep{width:1px;height:var(--space-3xl);margin:0 var(--space-xs);background:var(--border)}.insp-mixed{font-size:var(--fs-xs);color:var(--muted)}.progress{background:var(--surface-3);border-radius:var(--r-pill);height:4px;margin-top:var(--space-xs);overflow:hidden}.progress .bar{background:linear-gradient(90deg, var(--accent), #ec4899);width:0%;height:100%;transition:width var(--t-med) var(--ease);position:relative}.progress .bar.indeterminate{width:35%;animation:1.2s ease-in-out infinite indet}@keyframes indet{0%{transform:translate(-100%)}to{transform:translate(300%)}}.checkbox-inline{gap:var(--space-lg);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:row!important;align-items:center!important;display:flex!important}.checkbox-inline em{color:var(--muted);font-style:normal;font-size:var(--fs-sm)}.insp-row>label.checkbox-inline,.insp-row.inline>label.checkbox-inline{text-transform:none;letter-spacing:0;font-size:var(--fs-md);color:var(--text-soft);flex:1;font-weight:400}.safe-area-block{gap:var(--space-lg);flex-direction:column;display:flex}.safe-area-row{align-items:center;gap:var(--space-xs);display:flex;position:relative}.safe-area-grid{gap:var(--space-sm);flex-direction:column;display:flex}.safe-area-cell{align-items:center;gap:var(--space-sm);display:flex}.safe-area-cell>label{font-size:var(--fs-sm);color:var(--text-soft);flex:0 0 44px;font-weight:500}.safe-area-cell>input[type=number]{min-width:0;padding:var(--space-md) var(--space-lg);font-size:var(--fs-md);-moz-appearance:textfield;flex:1 1 0}.safe-area-cell>input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.safe-area-cell>input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.safe-area-cell>.unit{font-size:var(--fs-xs);color:var(--muted)}.safe-area-cell>.reset-btn{margin-left:var(--space-2xs)}.info-icon{color:var(--muted);border-radius:var(--r-sm);cursor:pointer;width:24px;height:24px;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.info-icon:hover{color:var(--text);background:var(--surface-hover)}.info-popover{top:calc(100% + var(--space-sm));z-index:50;max-width:280px;padding:var(--space-lg) var(--space-xl);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-soft);font-size:var(--fs-sm);line-height:1.5;position:absolute;left:0;box-shadow:0 8px 24px #00000059}.info-popover strong{color:var(--text)}.range-row{gap:var(--space-sm);flex-direction:column;display:flex}.range-row .top{font-size:var(--fs-xs);color:var(--muted);justify-content:space-between;display:flex}.range-row .top .val{font-family:var(--font-mono);color:var(--text-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--r-pill);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:padding-box}.numfield{align-items:center;gap:var(--space-2xs);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);min-width:0;padding:0 var(--space-sm);height:28px;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);display:flex}.numfield:hover{border-color:var(--border-strong)}.numfield:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.nf-label{min-width:14px;font-size:var(--fs-xs);color:var(--muted);cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;padding:var(--space-sm) var(--space-2xs);margin:calc(-1 * var(--space-sm)) 0;flex:none;font-weight:600}.nf-label:hover{color:var(--text-soft)}.numfield .nf-input{width:auto;min-width:0;height:100%;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);text-align:right;background:0 0;border:none;border-radius:0;flex:auto;padding:0}.numfield .nf-input:focus{box-shadow:none;border:none}.numfield .nf-input:focus-visible{box-shadow:none;outline:none}.nf-unit{font-size:var(--fs-2xs);color:var(--muted);-webkit-user-select:none;user-select:none;flex:none}.numfield.is-disabled{opacity:.5}.numfield.is-disabled .nf-label{cursor:default}.field-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.field-grid>.field-wide{grid-column:1/-1}.field-grid>.grid-reset{align-items:center;display:flex}.insp-row.inline>.numfield{flex:none;width:120px}.insp-props{flex-direction:column;display:flex}.insp-section .section-body{gap:var(--space-xl);flex-direction:column;display:flex}.insp-row.override{position:relative}.insp-row.override>.reset-btn{flex:none}.reset-btn{border:1px solid var(--border);color:var(--muted);border-radius:var(--r-sm);cursor:pointer;width:24px;height:24px;transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;justify-content:center;align-items:center;display:inline-flex}.reset-btn:hover{color:var(--text-soft);border-color:var(--border-strong);background:var(--surface-2)}.seg-control{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--space-2xs);gap:var(--space-2xs);display:inline-flex}.seg-btn{color:var(--muted);padding:var(--space-xs) var(--space-lg);border-radius:var(--r-sm);cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.seg-btn:hover:not(.active,[aria-disabled=true]){color:var(--text-soft)}.seg-btn[aria-disabled=true]{color:var(--muted-2);cursor:not-allowed}.seg-btn.active{background:var(--surface-3);color:var(--text);box-shadow:0 1px 2px #00000040}.seg-btn.active:focus-visible{box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.tint-control{display:flex}.tint-control .seg-btn{gap:var(--space-sm);padding-left:var(--space-sm);padding-right:var(--space-sm);font-size:var(--fs-sm);white-space:nowrap;flex:1}.tint-dot{width:var(--space-lg);height:var(--space-lg);border:1px solid var(--border);border-radius:50%;flex:none}.slide-scope{padding:var(--space-lg) var(--space-3xl);background:var(--surface-2);border-bottom:1px solid var(--border);gap:var(--space-sm);flex-direction:column;display:flex}.slide-scope .seg-control{background:var(--surface-1)}.scope-targets .btn.link{height:auto;font-size:inherit;vertical-align:baseline;padding:0}.scope-label{font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.scope-control{display:flex}.scope-control .seg-btn{white-space:nowrap;min-width:0;padding-left:var(--space-2xs);padding-right:var(--space-2xs);font-size:var(--fs-sm);flex:1}.scope-targets{font-size:var(--fs-xs);color:var(--muted);margin:0;line-height:1.4}.scope-targets strong{color:var(--text-soft);font-weight:600}.scene-row{align-items:flex-start}.scene-hint{font-size:var(--fs-sm);color:var(--muted);margin:0;line-height:1.45}.toast-stack{left:0;right:0;bottom:var(--space-5xl);z-index:var(--z-toast);gap:var(--space-md);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed}.toast{pointer-events:auto;align-items:center;gap:var(--space-md);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:var(--space-md) var(--space-md) var(--space-md) var(--space-xl);font-size:var(--fs-md);color:var(--text-soft);max-width:min(360px, calc(100vw - var(--space-5xl)));animation:toast-in var(--t-med) var(--ease-out);display:flex}.toast--danger{border-left-color:var(--danger)}.toast--success{border-left-color:var(--success)}.toast--warning{border-left-color:var(--warning)}.toast--info{border-left-color:var(--accent)}.toast-msg{overflow-wrap:anywhere;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;flex:1;min-width:0;display:-webkit-box;overflow:hidden}.toast .toast-action{flex:none;padding-inline:0}.toast .toast-dismiss{flex:none}@keyframes toast-in{0%{opacity:0;transform:translateY(var(--space-md))}to{opacity:1;transform:translateY(0)}}.render-panel{left:50%;top:calc(var(--topbar-h) + var(--space-4xl));z-index:var(--z-render-panel);width:min(440px, calc(100vw - var(--space-6xl)));max-height:calc(100vh - var(--topbar-h) - var(--space-4xl) - var(--space-4xl));scrollbar-gutter:stable;gap:var(--space-lg);padding:var(--space-3xl);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);font-size:var(--fs-md);color:var(--text-soft);animation:render-panel-in var(--t-med) var(--ease-out);flex-direction:column;display:flex;position:fixed;overflow-y:auto;transform:translate(-50%)}@keyframes render-panel-in{0%{opacity:0;transform:translate(-50%, calc(-1 * var(--space-lg)))}to{opacity:1;transform:translate(-50%)}}.render-panel-head{align-items:center;gap:var(--space-lg);display:flex}.render-panel-glyph{color:var(--muted);display:flex}.render-panel--success .render-panel-glyph{color:var(--success)}.render-panel--danger .render-panel-glyph{color:var(--danger)}.render-panel--warn .render-panel-glyph{color:var(--warning)}.render-panel--running .render-panel-glyph{color:var(--accent)}.render-panel-title{min-width:0;font-size:var(--fs-lg);color:var(--text);flex:1;margin:0;font-weight:600}.render-panel-count{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.render-panel .progress{margin-top:0}.render-panel-sub{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.render-fails{gap:var(--space-xs);scrollbar-gutter:stable;flex-direction:column;max-height:min(220px,40vh);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.render-fail{gap:var(--space-2xs);text-align:left;width:100%;padding:var(--space-md) var(--space-lg);background:var(--surface-1);border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:var(--r-sm);cursor:pointer;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);flex-direction:column;display:flex}.render-fail:hover{background:var(--surface-hover);border-color:var(--border-strong)}.render-fail-name{font-size:var(--fs-md);color:var(--text);font-weight:600}.render-fail-err{font-size:var(--fs-sm);color:var(--status-error-fg);overflow-wrap:anywhere}.render-warns{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.render-warns li{padding:var(--space-md) var(--space-lg);background:var(--surface-1);border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-soft);overflow-wrap:anywhere}.render-panel-acts{gap:var(--space-md);justify-content:flex-end;display:flex}.render-panel-acts:empty{display:none}.canvas-toolbar{z-index:var(--z-canvas-toolbar);visibility:hidden;align-items:center;gap:var(--space-xs);padding:var(--space-xs);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-lg);flex-wrap:wrap;display:flex;position:fixed;top:0;left:0}.ct-gate{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:0}.canvas-toolbar .ct-sep{width:1px;margin-inline:var(--space-2xs);background:var(--border);align-self:stretch}.canvas-toolbar .ct-select{width:130px;height:28px;padding:0 var(--space-sm);background:var(--surface-3);border-color:var(--border-strong);border-radius:var(--r-sm);font-size:var(--fs-sm)}.canvas-toolbar .ct-select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.canvas-toolbar .ct-select.ct-narrow{width:74px}.canvas-toolbar .ct-colour{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-3);cursor:pointer;width:28px;height:28px;padding:2px}.canvas-toolbar .numfield{flex:none}.canvas-toolbar .numfield .nf-input{flex:0 0 4.5ch}.canvas-toolbar .seg-control{flex:none}.ct-add{display:contents}.canvas-toolbar .btn{height:28px;padding-block:0}.ct-pop{top:calc(100% + var(--space-sm));width:300px;max-height:var(--ct-pop-max,380px);padding:var(--space-md);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-lg);position:absolute;left:0;overflow-y:auto}.canvas-toolbar.pop-up .ct-pop{top:auto;bottom:calc(100% + var(--space-sm))}.canvas-toolbar.pop-end .ct-pop{left:auto;right:0}.ct-pop>.asset-grid{max-height:260px;margin-top:0;overflow-y:auto}.ct-pop>.asset-empty,.ct-pop .sticker-picker{margin-top:0}.asset-empty{margin:0 0 var(--space-sm);font-size:var(--fs-xs);color:var(--muted)}.tooltip{z-index:var(--z-tooltip);max-width:240px;padding:var(--space-sm) var(--space-lg);background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-md);color:var(--text-soft);font-size:var(--fs-sm);pointer-events:none;opacity:0;line-height:1.4;position:fixed}.tooltip.placed{animation:tooltip-in var(--t-fast) var(--ease-out) forwards}@keyframes tooltip-in{0%{opacity:0;transform:translateY(calc(-1 * var(--space-2xs)))}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.screenshot-card:hover{transform:none!important}.skeleton:after{display:none}}.layer-tree{border-bottom:1px solid var(--border);background:var(--surface-1)}.layer-tree>.insp-section{padding:var(--space-md) var(--space-3xl) var(--space-lg);gap:var(--space-md);border-bottom:none}.layer-tree .layer-pick{padding:var(--space-xs) var(--space-md)}.layer-tree>.insp-section>.section-body{gap:var(--space-md)}.layer-tree>.insp-section>.insp-head-btn{position:static}.layer-row.slide-row{margin-bottom:var(--space-xs)}.layer-row.slide-row .layer-pick{font-weight:600}.layer-row.slide-row .tag{margin-right:var(--space-sm);flex:none}.layer-list{gap:var(--space-2xs);flex-direction:column;display:flex}.layer-row{align-items:center;gap:var(--space-xs);border-radius:var(--r-sm);padding-right:var(--space-2xs);border:1px solid #0000;display:flex}.layer-row:hover{background:var(--surface-2)}.layer-row.selected{border-color:var(--accent);background:var(--accent-soft)}.layer-pick{align-items:center;gap:var(--space-sm);min-width:0;color:var(--text-soft);font:inherit;font-size:var(--fs-md);text-align:left;padding:var(--space-sm) var(--space-md);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;flex:1;display:flex}.layer-row.selected .layer-pick{color:var(--text)}.layer-pick .layer-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-acts{opacity:0;transition:opacity var(--t-fast) var(--ease);gap:0;display:flex}.layer-row:hover .layer-acts,.layer-row.selected .layer-acts{opacity:1}.layer-row:has(:focus-visible) .layer-acts{opacity:1}@media (hover:none){.layer-acts{opacity:1}}.layer-add{gap:var(--space-xs);margin-top:var(--space-md);display:flex}.upload-well{cursor:pointer}.upload-well input[type=file]{display:none}.asset-grid{gap:var(--space-xs);margin-top:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(44px,1fr));display:grid}.asset-swatch{aspect-ratio:1;padding:var(--space-2xs);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer}.asset-swatch:hover{border-color:var(--accent)}.asset-swatch img{object-fit:contain;width:100%;height:100%}.history-actions{gap:var(--space-2xs);display:flex}.canvas .bg{z-index:0;position:absolute;inset:0}.bg-swatch.custom{background:var(--surface-3);color:var(--muted);place-items:center;display:grid}.bg-swatch.custom.active,.bg-swatch.custom:hover{color:var(--text)}.bg-editor{margin-top:var(--space-md);padding:var(--space-md);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);gap:var(--space-md);flex-direction:column;display:flex}.bg-editor .insp-row{margin:0}.bg-editor .stop-pos{width:56px}.bg-type{display:flex}.bg-type .seg-btn{padding:var(--space-xs) var(--space-2xs);flex:1;min-width:0}.blob-grid{align-items:center;gap:var(--space-xs);grid-template-columns:auto repeat(3,1fr) auto;display:grid}.blob-row{display:contents}.blob-row input[type=number]{width:100%;min-width:0}.blob-head span{font-size:var(--fs-xs);color:var(--muted);text-align:center}.bg-custom-note{font-size:var(--fs-xs);color:var(--muted);margin-top:var(--space-xs)}.asset-swatch.active{border-color:var(--accent)}.asset-swatch.upload-well{color:var(--muted);place-items:center;display:grid}.canvas .screen{z-index:1;position:absolute;overflow:hidden}.canvas .screen .screenshot{width:100%;height:100%;position:absolute;inset:0}.canvas .screen.fitting{outline:calc(2 * var(--ui-px,1px)) dashed var(--guide);outline-offset:calc(-2 * var(--ui-px,1px))}.insp-group{gap:var(--space-md);flex-direction:column;display:flex}.insp-group-head{justify-content:space-between;align-items:baseline;gap:var(--space-2xs) var(--space-md);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);flex-wrap:wrap;font-weight:600;display:flex}.insp-group-head .hint{text-transform:none;letter-spacing:0;font-weight:400;font-size:var(--fs-xs);color:var(--muted)}.font-select{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.font-select select{flex:1;min-width:0}.font-add{margin-top:var(--space-xs);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.font-add input[type=search]{background:var(--surface-2);border:0;border-bottom:1px solid var(--border);border-radius:0;width:100%}.font-add:has(input[type=search]:focus){border-color:var(--accent);box-shadow:0 0 0 2px var(--ring-gap), 0 0 0 4px var(--ring)}.font-add input[type=search]:focus{box-shadow:none}.font-add-list{scrollbar-gutter:stable;max-height:220px;overflow-y:auto}.font-add-row{justify-content:space-between;align-items:baseline;gap:var(--space-md);width:100%;padding:var(--space-sm) var(--space-md);color:var(--text-soft);font:inherit;font-size:var(--fs-md);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.font-add-row:hover{background:var(--surface-3);color:var(--text)}.font-add-row .cat{font-size:var(--fs-xs);color:var(--muted)}.font-add-empty{padding:var(--space-md);font-size:var(--fs-xs);color:var(--muted);margin:0}.sticker-picker{margin-top:var(--space-md)}.pack-control,.weight-control{overscroll-behavior-x:contain;max-width:100%;display:flex;overflow-x:auto}.pack-control .seg-btn,.weight-control .seg-btn{padding-left:var(--space-md);padding-right:var(--space-md);font-size:var(--fs-sm);white-space:nowrap;flex:none}.weight-control{margin-top:var(--space-xs)}.sticker-list{max-height:280px}.sticker-list .asset-grid{padding:var(--space-md);margin:0}.sticker-picker .asset-swatch{background:var(--surface-3)}.sticker-picker .asset-swatch img{background:var(--swatch-canvas);border-radius:var(--r-xs)}.sticker-more{width:100%;padding:var(--space-md);border:0;border-top:1px solid var(--border);color:var(--muted);font:inherit;font-size:var(--fs-xs);cursor:pointer;background:0 0}.sticker-more:hover{background:var(--surface-3);color:var(--text-soft)}.slot-acts{gap:var(--space-xs);flex-wrap:wrap;display:flex}.insp-note{font-size:var(--fs-xs);color:var(--muted);margin:var(--space-xs) 0 0;line-height:1.5}.insp-note.warn{color:var(--text-soft);border-left:2px solid var(--warning);padding-left:var(--space-lg);margin-top:var(--space-lg)}.insp-note code{font-family:var(--font-mono);color:var(--muted)}.insp-note.sample{font-family:var(--font-mono);color:var(--text-soft)}.home{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.home-body{width:100%;max-width:1120px;padding:var(--space-6xl) var(--space-5xl);margin:0 auto}.home-head{margin-bottom:var(--space-5xl)}.home-head h1{font-size:var(--fs-display);letter-spacing:-.02em;margin:0 0 var(--space-md);font-weight:700}.home-head p{font-size:var(--fs-md);max-width:56ch;margin:0}.home-limit{margin:var(--space-4xl) 0 0;font-size:var(--fs-sm)}.home-empty{align-items:center;gap:var(--space-3xl);padding:var(--space-6xl);border:1px dashed var(--border-strong);border-radius:var(--r-xl);color:var(--muted);flex-direction:column;display:flex}.home-empty p{font-size:var(--fs-md);margin:0}.landing{width:100%;max-width:1120px;padding:var(--space-6xl) var(--space-5xl);gap:var(--space-6xl);flex:1;grid-template-columns:minmax(0,1fr) minmax(0,420px);align-items:center;margin:0 auto;display:grid}.landing h1{font-size:var(--fs-title);letter-spacing:-.02em;margin:0 0 var(--space-3xl);font-weight:700;line-height:1.15}.landing-lede{font-size:var(--fs-prose);color:var(--text-soft);max-width:48ch;margin:0;line-height:1.6}.landing-cta{gap:var(--space-lg);margin-top:var(--space-5xl);flex-wrap:wrap;display:flex}.landing-note{margin:var(--space-3xl) 0 0;font-size:var(--fs-sm)}.landing-shot{justify-content:center;display:flex}.landing-slide{background:linear-gradient(160deg, var(--accent-fill), var(--surface-1) 85%);border:1px solid var(--border-strong);border-radius:var(--r-xl);width:100%;max-width:340px;box-shadow:var(--shadow-lg);padding:var(--space-4xl) var(--space-4xl);align-items:center;gap:var(--space-3xl);flex-direction:column;display:flex}.landing-slide-line{font-size:var(--fs-2xl);color:var(--on-accent);text-align:center;font-weight:700;line-height:1.2}.landing-phone{border:var(--space-md) solid var(--bg);border-radius:var(--r-xl);width:82%;box-shadow:var(--shadow-md);flex:none;overflow:hidden}.landing-phone img{width:100%;height:auto;display:block}@media (width<=800px){.landing{padding:var(--space-5xl) var(--space-3xl);grid-template-columns:minmax(0,1fr)}.landing-slide{max-width:250px;padding:var(--space-3xl)}}.project-grid{gap:var(--space-4xl);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:0;padding:0;list-style:none;display:grid}.project-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);position:relative;overflow:hidden}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.project-card:focus-within{border-color:var(--border-strong)}.project-open:focus-visible{box-shadow:none}.project-card:has(.project-open:focus-visible){box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--ring)}.project-open{z-index:1;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.project-thumb{aspect-ratio:4/5;background:var(--surface-2);border-bottom:1px solid var(--border);position:relative;overflow:hidden}.project-thumb img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.project-thumb-empty{background:linear-gradient(160deg, var(--surface-2), var(--surface-3));width:100%;height:100%;color:var(--muted-2);font-size:var(--fs-display);place-items:center;font-weight:700;display:grid}.project-meta{gap:var(--space-2xs);padding:var(--space-xl) var(--space-2xl) var(--space-2xl);flex-direction:column;display:flex}.project-name{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-sub{font-size:var(--fs-xs);color:var(--muted)}.project-rename{z-index:2;width:100%;padding:var(--space-2xs) var(--space-sm);font-size:var(--fs-md);font-weight:600;position:relative}.project-actions{top:var(--space-md);right:var(--space-md);z-index:2;gap:var(--space-xs);opacity:0;transition:opacity var(--t-fast) var(--ease);display:flex;position:absolute}.project-card:hover .project-actions,.project-card:focus-within .project-actions{opacity:1}.project-actions .btn{-webkit-backdrop-filter:blur(8px);background:#0a0d14b8}@media (hover:none){.project-actions{opacity:1}}.project-card .sk-project-name{width:62%;height:13px}.project-card .sk-project-sub{width:40%;height:11px}.account{display:inline-flex;position:relative}.account-btn{border:1px solid var(--border-strong);background:var(--surface-2);cursor:pointer;width:28px;height:28px;transition:border-color var(--t-fast) var(--ease);border-radius:50%;place-items:center;padding:0;display:grid;overflow:hidden}.account-btn:hover{border-color:var(--accent);background:var(--surface-hover)}.account>[aria-expanded=true]{border-color:var(--accent);box-shadow:var(--accent-glow)}.account-btn img{object-fit:cover;width:100%;height:100%;display:block}.account-initial{font-size:var(--fs-sm);color:var(--text-soft);font-weight:600}.menu .menu-item{color:var(--text-soft);padding:var(--space-md) var(--space-lg);border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:pointer;text-align:left;align-items:center;gap:var(--space-md);background:0 0;border:none;text-decoration:none;display:flex}.menu .menu-item:hover{background:var(--surface-hover);color:var(--text)}.menu-note{padding:var(--space-md) var(--space-lg) var(--space-sm);font-size:var(--fs-xs);color:var(--muted);max-width:30ch;margin:0}.menu-sep{background:var(--border);height:1px;margin:var(--space-xs) calc(-1 * var(--space-xs))}.account-menu{width:264px;padding:var(--space-sm)}.account-menu .menu-item{font-size:var(--fs-md);padding:var(--space-lg);gap:var(--space-xl)}.account-menu .menu-item svg{width:15px;height:15px;color:var(--muted);transition:color var(--t-fast) var(--ease);flex:none}.account-menu .menu-item:hover svg{color:var(--text-soft)}.account-menu .menu-sep{margin:var(--space-sm) calc(-1 * var(--space-sm))}.account-menu .menu-note{padding:0 var(--space-lg) var(--space-md);max-width:none}.menu-foot{gap:var(--space-lg);padding:var(--space-sm) var(--space-lg) var(--space-xs);flex-direction:column;display:flex}.menu-foot .menu-note{padding:0}.menu-foot .menu-note+.menu-note{margin-top:calc(-1 * var(--space-sm))}.menu-foot .btn{justify-content:center;width:100%}.account-menu .menu-credit{font-size:var(--fs-xs);color:var(--muted);padding:var(--space-md) var(--space-lg);gap:var(--space-sm)}.account-menu .menu-credit svg{width:11px;height:11px}.account-id{align-items:center;gap:var(--space-xl);padding:var(--space-lg);margin-bottom:var(--space-xs);border-radius:var(--r-sm);background:var(--surface-3);min-width:0;display:flex}.account-avatar{background:var(--surface-1);border:1px solid var(--border-strong);width:34px;height:34px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.account-avatar img{object-fit:cover;width:100%;height:100%;display:block}.account-avatar .account-initial{font-size:var(--fs-md)}.account-id-text{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.account-name{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.account-email{font-size:var(--fs-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-email:empty{display:none}.credits-chip{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-size:var(--fs-xs);transition:border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);text-decoration:none;display:inline-flex}.credits-chip:hover{border-color:var(--border-strong);color:var(--text-soft)}.credits-chip b{color:var(--text-soft);font-family:var(--font-mono);font-weight:600}.credits-chip svg{width:13px;height:13px;color:var(--accent)}.account-body{max-width:720px}.account-section{padding:var(--space-5xl) 0;border-top:1px solid var(--border)}.account-section:first-of-type{border-top:0;padding-top:0}.account-section h2{font-size:var(--fs-lg);margin:0 0 var(--space-3xl);font-weight:600}.account-section p{margin:var(--space-xl) 0 0;font-size:var(--fs-sm);max-width:56ch}.account-row{gap:var(--space-3xl);padding:var(--space-lg) 0;border-bottom:1px solid var(--border);font-size:var(--fs-md);grid-template-columns:160px 1fr;display:grid}.account-row-label{color:var(--muted)}.account-row-value{color:var(--text);overflow-wrap:anywhere;min-width:0}.credits-balance{align-items:center;gap:var(--space-sm);display:inline-flex}.credits-balance svg{width:14px;height:14px;color:var(--accent)}.credits-balance b{font-family:var(--font-mono)}.account-actions{gap:var(--space-lg);margin-top:var(--space-3xl);flex-wrap:wrap;display:flex}.packs{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.pack{gap:var(--space-sm);padding:var(--space-3xl) var(--space-xl);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);display:grid}.pack:hover:not(:disabled){border-color:var(--accent);background:var(--surface-3)}.pack:disabled{opacity:.55;cursor:not-allowed}.pack-name{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pack-credits{align-items:center;gap:var(--space-sm);font-size:var(--fs-2xl);font-family:var(--font-mono);color:var(--text);display:inline-flex}.pack-credits svg{width:14px;height:14px;color:var(--accent)}.pack-price{font-size:var(--fs-sm);color:var(--text-soft)}.receipts{flex-direction:column;display:flex}.receipt{align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0;border-bottom:1px solid var(--border);font-size:var(--fs-md);grid-template-columns:96px 1fr auto auto;display:grid}.receipt-date{color:var(--muted);font-size:var(--fs-sm)}.receipt-sum{font-family:var(--font-mono);color:var(--text-soft)}.receipt-state{font-size:var(--fs-xs);color:var(--warning);text-transform:uppercase;letter-spacing:.06em}.receipt.completed .receipt-state{display:none}.receipt-refund{font-size:var(--fs-xs);color:var(--warning);display:block}.sk-packs{border-radius:var(--r-md);height:120px}.pay-body{width:100%;max-width:560px;padding:var(--space-6xl) var(--space-4xl);margin:0 auto}.pay-body h1{font-size:var(--fs-display);margin:0 0 var(--space-xl)}.pay-body p{margin:0 0 var(--space-xl);font-size:var(--fs-md);max-width:56ch}.pay-body code{font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--surface-2);border-radius:var(--r-xs);color:var(--text-soft);padding:2px 5px}.legal-body{width:100%;max-width:680px;padding:var(--space-6xl) var(--space-4xl);margin:0 auto}.legal-body h1{font-size:var(--fs-title);letter-spacing:-.02em;margin:0 0 var(--space-5xl);font-weight:700}.legal-body h2{font-size:var(--fs-2xl);margin:var(--space-6xl) 0 var(--space-lg);color:var(--text)}.legal-body p{margin:0 0 var(--space-xl);font-size:var(--fs-prose);color:var(--text-soft);max-width:68ch;line-height:1.65}.legal-body b{color:var(--text);font-weight:600}.legal-body .account-actions{margin-top:var(--space-6xl)}.site-foot{border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--muted);margin-top:auto}.site-foot-inner{max-width:1120px;padding:var(--space-4xl) var(--space-5xl);justify-content:space-between;align-items:center;gap:var(--space-md) var(--space-5xl);flex-wrap:wrap;margin:0 auto;display:flex}.site-foot-links{gap:var(--space-md) var(--space-4xl);flex-wrap:wrap;display:flex}.site-foot .site-foot-links a{text-decoration:none}.site-foot .site-foot-links a:hover{text-decoration:underline}.pack--static{cursor:default}.legal-body .packs{margin-bottom:var(--space-xl)}.pricing-list{margin:0 0 var(--space-xl);padding-left:var(--space-5xl);color:var(--text-soft);font-size:var(--fs-prose);line-height:1.65}.feedback-form label{font-size:var(--fs-sm);color:var(--text-soft);margin:var(--space-xl) 0 var(--space-md);display:block}.feedback-form label:first-child{margin-top:0}.feedback-form textarea{resize:vertical;min-height:160px;font:inherit}.legal-body .feedback-err{margin:var(--space-sm) 0 0;font-size:var(--fs-sm);color:var(--danger-text)}.danger-zone h2{color:var(--danger-text)}.danger-confirm{margin-top:var(--space-3xl);padding:var(--space-3xl);border:1px solid var(--danger-soft);border-radius:var(--r-md);background:var(--surface-1)}.danger-confirm label{font-size:var(--fs-sm);color:var(--text-soft);margin-bottom:var(--space-md);display:block}.danger-confirm input{width:100%;max-width:260px}.danger-confirm .account-actions{margin-top:var(--space-xl)}.sk-account{border-radius:var(--r-lg);height:220px}.signin-body{flex:1;align-items:center;max-width:460px;display:flex}.signin-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;padding:var(--space-6xl) var(--space-5xl)}.signin-card h1{font-size:var(--fs-display);letter-spacing:-.02em;margin:0;font-weight:700}.signin-lede{margin:var(--space-xl) 0 0;font-size:var(--fs-md);max-width:46ch}.signin-providers{gap:var(--space-lg);margin-top:var(--space-5xl);flex-direction:column;display:flex}.signin-providers .btn{width:100%}.signin-fine{margin:var(--space-4xl) 0 0;font-size:var(--fs-sm)}.signin-consent{margin-top:var(--space-lg)}.signin-consent a{color:var(--text-soft)}.signin-back{text-align:center;margin-top:var(--space-5xl);font-size:var(--fs-sm);color:var(--muted);text-underline-offset:3px;transition:color var(--t-fast) var(--ease);text-decoration:underline;display:block}.signin-back:hover{color:var(--text-soft)}.history-scrim{z-index:var(--z-drawer);-webkit-backdrop-filter:blur(2px);background:#06080d8c;justify-content:flex-end;display:flex;position:fixed;inset:0}.history{background:var(--surface-1);border-left:1px solid var(--border);width:min(420px,100%);height:100%;box-shadow:var(--shadow-lg);scrollbar-gutter:stable;flex-direction:column;display:flex;overflow-y:auto}.history:focus{outline:none}.sheet-scrim{z-index:var(--z-modal);padding:var(--space-5xl);background:#06080d8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sheet{scrollbar-gutter:stable;background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--r-lg);width:min(520px,100%);max-height:100%;box-shadow:var(--shadow-lg);padding-bottom:var(--space-3xl);overflow-y:auto}.sheet:focus{outline:none}.sheet-head{padding:var(--space-3xl);border-bottom:1px solid var(--border);align-items:center;display:flex}.sheet-head h2{font-size:var(--fs-lg);flex:1;margin:0;font-weight:600}.sheet-group{padding:var(--space-3xl) var(--space-3xl) 0}.sheet-group h3{margin:0 0 var(--space-md);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.sheet-group dl{gap:var(--space-md) var(--space-3xl);grid-template-columns:minmax(120px,auto) 1fr;align-items:center;margin:0;display:grid}.sheet-group dt{gap:var(--space-xs);flex-wrap:wrap;display:flex}.sheet-group dd{font-size:var(--fs-md);color:var(--text-soft);margin:0}.replace-shot-body{gap:var(--space-xl);padding:var(--space-3xl) var(--space-3xl) 0;flex-direction:column;display:flex}.replace-shot-body p{font-size:var(--fs-sm);margin:0}.replace-shot-pair{justify-content:center;align-items:center;gap:var(--space-xl);display:flex}.replace-shot-pair figure{align-items:center;gap:var(--space-sm);flex-direction:column;margin:0;display:flex}.replace-shot-pair img{object-fit:contain;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);max-width:180px;height:180px}.replace-shot-pair figcaption{font-size:var(--fs-sm);color:var(--text-soft)}.replace-shot-warns{padding:var(--space-md) var(--space-lg) var(--space-md) var(--space-4xl);border-radius:var(--r-sm);background:var(--warning-soft);color:var(--warning);font-size:var(--fs-sm);margin:0}.replace-shot-scope{gap:var(--space-md);border:0;flex-direction:column;margin:0;padding:0;display:flex}.replace-shot-scope legend{margin-bottom:var(--space-md);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.replace-shot-scope label{align-items:baseline;gap:var(--space-md);font-size:var(--fs-md);display:flex}.replace-shot-scope em{color:var(--muted);margin-left:var(--space-sm);font-style:normal}.replace-shot-acts{gap:var(--space-md);justify-content:flex-end;display:flex}.history-head{align-items:center;gap:var(--space-xl);padding:var(--space-3xl);border-bottom:1px solid var(--border);background:var(--surface-1);z-index:1;display:flex;position:sticky;top:0}.history-head h2{font-size:var(--fs-lg);flex:1;margin:0;font-weight:600}.history-cta{padding:var(--space-3xl) var(--space-3xl) var(--space-xl)}.history-cta p{margin:var(--space-md) 0 0;font-size:var(--fs-sm)}.history-name{gap:var(--space-lg);flex-direction:column;display:flex}.history-name-acts{gap:var(--space-md);justify-content:flex-end;display:flex}.history-empty{padding:0 var(--space-3xl) var(--space-3xl)}.history-empty p{margin:0 0 var(--space-lg);font-size:var(--fs-sm)}.version-list{padding:0 var(--space-xl) var(--space-4xl);margin:0;list-style:none}.version-row{align-items:center;gap:var(--space-xl);padding:var(--space-lg) var(--space-xl);border-radius:var(--r-md);grid-template-columns:44px minmax(0,1fr) auto;display:grid}.version-row:hover{background:var(--surface-2)}.version-thumb{aspect-ratio:4/5;border-radius:var(--r-sm);background:var(--surface-3);width:44px;position:relative;overflow:hidden}.version-thumb img{object-fit:cover;width:100%;height:100%;display:block}.version-meta{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.version-title{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.version-sub{font-size:var(--fs-xs);color:var(--muted)}.version-tag{font-family:var(--font-mono);color:var(--text-soft);background:var(--surface-3);border-radius:var(--r-xs);padding:0 var(--space-xs)}.version-acts{gap:var(--space-sm);display:flex}.sk-version{width:70%;height:13px}.keep-banner{align-items:center;gap:var(--space-xl);margin:0 0 var(--space-4xl);padding:var(--space-xl) var(--space-2xl);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-md);font-size:var(--fs-md);color:var(--text-soft);display:flex}.keep-banner--urgent{border-left-color:var(--warning);background:var(--warning-soft)}.keep-banner-icon{color:var(--accent);flex:none;display:flex}.keep-banner--urgent .keep-banner-icon{color:var(--warning)}.keep-banner-msg{flex:1;margin:0}.keep-banner-msg strong{color:var(--text);font-weight:600}.keep-banner-cta,.keep-banner-dismiss{flex:none}.canvas-area>.keep-banner{margin:0}.canvas-area>.conflict-banner{z-index:5;background:linear-gradient(var(--warning-soft), var(--warning-soft)), var(--surface-2);position:sticky;top:0}
