:root{--n-0:#0b0d0e;--n-1:#121517;--n-2:#181c1f;--n-3:#1f2427;--n-4:#272d31;--n-5:#333a3f;--n-6:#4a5359;--n-7:#78838a;--n-8:#a8b2b8;--n-9:#d6dcdf;--n-10:#f2f5f6;--canvas:var(--n-0);--surface-1:var(--n-1);--surface-2:var(--n-2);--surface-3:var(--n-3);--surface-sunken:#08090a;--image-ground:#0e1011;--image-ground-strong:#050607;--ink:var(--n-9);--ink-strong:var(--n-10);--ink-muted:#949ea4;--ink-faint:var(--n-7);--line:#262c30;--line-strong:#394248;--accent-base:#32b6a6;--accent-lift:#4ad3c1;--accent-sink:#1c8578;--accent-ink:#04201d;--accent-wash:#32b6a624;--accent-edge:#32b6a657;--focus-ring:0 0 0 2px var(--canvas), 0 0 0 4px var(--accent-base);--state-blocked-fg:#ff9b8f;--state-blocked-bg:#d6402f29;--state-blocked-border:#ff9b8f52;--state-blocked-rail:#e05a48;--state-action-fg:#f7bf6a;--state-action-bg:#d9911f29;--state-action-border:#f7bf6a4d;--state-action-rail:#dd9a2c;--state-running-fg:#8cc4f5;--state-running-bg:#3884cd29;--state-running-border:#8cc4f547;--state-running-rail:#4a90d9;--state-ok-fg:#7bd6a4;--state-ok-bg:#2d965f29;--state-ok-border:#7bd6a447;--state-ok-rail:#3aa86b;--state-idle-fg:var(--n-8);--state-idle-bg:#78838a24;--state-idle-border:#a8b2b838;--state-idle-rail:var(--n-6);--elev-raised:0 1px 2px #0006;--elev-overlay:0 8px 24px -8px #0009, 0 2px 6px #00000057;--elev-modal:0 32px 64px -16px #000000b8, 0 8px 20px -8px #0000007a;--scrim:#000000a8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--n-0:#eef0f2;--n-1:#fff;--n-2:#f7f8f9;--n-3:#eff1f3;--n-4:#e4e7ea;--n-5:#d3d8dc;--n-6:#aeb6bc;--n-7:#6d777e;--n-8:#4c565d;--n-9:#2b3338;--n-10:#14191c;--canvas:var(--n-0);--surface-1:var(--n-1);--surface-2:var(--n-2);--surface-3:var(--n-3);--surface-sunken:#e5e8ea;--image-ground:#e8eaec;--image-ground-strong:#dcdfe2;--ink:var(--n-9);--ink-strong:var(--n-10);--ink-muted:#545e65;--ink-faint:#646e75;--line:#dde1e5;--line-strong:#b9c1c7;--accent-base:#10756a;--accent-lift:#0c5b53;--accent-sink:#0a4b45;--accent-ink:#fff;--accent-wash:#10756a1a;--accent-edge:#10756a47;--state-blocked-fg:#97231a;--state-blocked-bg:#fdeceb;--state-blocked-border:#f0bab5;--state-blocked-rail:#c0392b;--state-action-fg:#7a4a06;--state-action-bg:#fdf3e0;--state-action-border:#ecca92;--state-action-rail:#c8890f;--state-running-fg:#1a4f86;--state-running-bg:#e8f1fb;--state-running-border:#b4d0ec;--state-running-rail:#2c7ac4;--state-ok-fg:#14603c;--state-ok-bg:#e6f5ec;--state-ok-border:#a9d8bf;--state-ok-rail:#2e8b57;--state-idle-fg:var(--n-8);--state-idle-bg:#eaedef;--state-idle-border:#d5dade;--state-idle-rail:var(--n-6);--elev-raised:0 1px 2px #14191c12;--elev-overlay:0 8px 24px -8px #14191c29, 0 2px 6px #14191c0f;--elev-modal:0 32px 64px -16px #14191c3d, 0 8px 20px -8px #14191c1f;--scrim:#14191c6b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--pad-y:var(--space-3);--pad-x:var(--space-4);--gap:var(--space-3);--row-h:44px;--control-h:32px;--z-sticky:100;--z-drawer:300;--z-modal:400;--z-toast:500;--radius-xs:3px;--radius-sm:5px;--radius-md:7px;--radius-lg:10px;--radius-xl:14px;--radius-2xl:18px;--radius-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.32s;--font-ui:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:26px;--text-display:clamp(28px, 1.6vw + 1rem, 36px)}[data-density=compact]{--pad-y:var(--space-2);--pad-x:var(--space-3);--gap:var(--space-2);--row-h:36px;--control-h:28px}[data-density=roomy]{--pad-y:var(--space-5);--pad-x:var(--space-5);--gap:var(--space-4);--row-h:52px;--control-h:36px}:root{--bg:var(--canvas);--surface:var(--surface-1);--surface-alt:var(--surface-2);--surface-soft:var(--image-ground);--surface-hover:var(--surface-3);--surface-selected:var(--accent-wash);--surface-selected-soft:var(--accent-wash);--surface-header:var(--surface-2);--surface-muted:var(--surface-3);--input:var(--surface-2);--disabled-bg:var(--surface-2);--text:var(--ink);--text-strong:var(--ink-strong);--muted:var(--ink-muted);--border:var(--line);--border-strong:var(--line-strong);--accent:var(--accent-base);--accent-hover:var(--accent-lift);--accent-contrast:var(--accent-ink);--focus:var(--accent-edge);--status-bg:var(--state-idle-bg);--attention-bg:var(--state-action-bg);--attention-border:var(--state-action-border);--success-bg:var(--state-ok-bg);--success-border:var(--state-ok-border);--success-text:var(--state-ok-fg);--danger:var(--state-blocked-fg);--danger-hover:var(--state-blocked-rail);--danger-bg:var(--state-blocked-bg);--danger-bg-soft:var(--state-blocked-bg);--danger-bg-strong:var(--state-blocked-bg);--danger-border:var(--state-blocked-border);--danger-border-strong:var(--state-blocked-rail);--info-bg:var(--state-running-bg);--info-text:var(--state-running-fg);--notice-bg:var(--state-action-bg);--notice-text:var(--state-action-fg);--loading-bg:var(--state-running-bg);--loading-text:var(--state-running-fg);--waiting-bg:var(--state-idle-bg);--waiting-text:var(--state-idle-fg);--floating-bg:color-mix(in srgb, var(--surface-1) 92%, transparent);--floating-bg-strong:color-mix(in srgb, var(--surface-1) 96%, transparent);--floating-bg-soft:color-mix(in srgb, var(--surface-1) 72%, transparent);--floating-text:var(--ink-strong);--overlay-bg:var(--scrim);--shadow:#0000006b;--shadow-soft:#00000052;--shadow-xs:none;--shadow-sm:var(--elev-raised);--shadow-md:var(--elev-raised);--shadow-lg:var(--elev-overlay);--shadow-xl:var(--elev-modal);--shadow-glow-accent:0 0 0 1px var(--accent-edge);--ring-accent:0 0 0 3px var(--accent-wash);--gradient-brand:radial-gradient(120% 90% at 8% 0%, color-mix(in srgb, var(--accent-base) 22%, transparent) 0%, transparent 55%), radial-gradient(90% 70% at 100% 100%, color-mix(in srgb, var(--accent-base) 12%, transparent) 0%, transparent 60%), var(--canvas);--gradient-brand-strong:linear-gradient(135deg, var(--accent-sink) 0%, var(--accent-base) 100%);--noise-overlay:none;--skeleton-base-start:var(--surface-2);--skeleton-base-end:var(--surface-3);--skeleton-start:transparent;--skeleton-end:var(--surface-3);--skeleton-sheen:color-mix(in srgb, var(--ink) 8%, transparent);--theme-studio-fg:var(--state-running-fg);--theme-studio-bg:var(--state-running-bg);--theme-studio-bg-soft:var(--state-running-bg);--theme-studio-border:var(--state-running-border);--theme-studio-rail:var(--state-running-rail);--theme-action-fg:var(--state-action-fg);--theme-action-bg:var(--state-action-bg);--theme-action-bg-soft:var(--state-action-bg);--theme-action-border:var(--state-action-border);--theme-action-rail:var(--state-action-rail);--theme-detail-fg:var(--ink);--theme-detail-bg:var(--surface-3);--theme-detail-bg-soft:var(--surface-2);--theme-detail-border:var(--line);--theme-detail-rail:var(--ink-faint);--theme-default-fg:var(--state-idle-fg);--theme-default-bg:var(--state-idle-bg);--theme-default-bg-soft:var(--state-idle-bg);--theme-default-border:var(--state-idle-border);--theme-default-rail:var(--state-idle-rail)}:is(.ds-btn,.ds-segmented__item,.ds-menu__item,.ds-tile,.ds-tile__action,.job-row__main,.jobs-rail__link,.system-pill,.version-list__item,.workspace__banner-link,.sheet-card){min-height:0;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:flex-start;gap:0;margin:0;padding:0;text-decoration:none;transform:none}.ds-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000;font-weight:550;line-height:1;display:inline-flex;position:relative}.ds-btn:disabled,.ds-btn[aria-disabled=true]{cursor:not-allowed;opacity:.45}.ds-btn--primary{background:var(--accent-base);border-color:var(--accent-base);color:var(--accent-ink)}.ds-btn--primary:not(:disabled):hover{background:var(--accent-lift);border-color:var(--accent-lift)}.ds-btn--secondary{background:var(--surface-2);border-color:var(--line);color:var(--ink-strong)}.ds-btn--secondary:not(:disabled):hover{background:var(--surface-3);border-color:var(--line-strong)}.ds-btn--ghost{color:var(--ink-muted)}.ds-btn--ghost:not(:disabled):hover{background:var(--surface-3);color:var(--ink-strong)}.ds-btn--danger{background:var(--state-blocked-bg);border-color:var(--state-blocked-border);color:var(--state-blocked-fg)}.ds-btn--danger:not(:disabled):hover{border-color:var(--state-blocked-rail);background:color-mix(in srgb, var(--state-blocked-rail) 22%, transparent)}.ds-btn--sm{min-height:26px;padding:0 var(--space-2);font-size:var(--text-sm)}.ds-btn--lg{min-height:38px;padding:0 var(--space-4)}.ds-btn--icon{width:var(--control-h);padding:0}.ds-btn--icon.ds-btn--sm{width:26px}.ds-btn--icon.ds-btn--lg{width:38px}.ds-btn--block{width:100%}.ds-btn__spinner{animation:.9s linear infinite spin}.ds-btn--pending .ds-btn__label{opacity:.5}.ds-btn .ds-btn__key{min-width:16px;height:16px;margin-left:calc(var(--space-1) * -1);color:inherit;opacity:.55;background:0 0;border-color:currentColor;border-bottom-width:1px;padding:0 3px;font-size:10px}.ds-btn--sm .ds-btn__key{min-width:15px;height:15px;font-size:9px}.ds-btn--pending .ds-btn__key{opacity:.3}.ds-split{display:inline-flex;position:relative}.ds-split>.ds-btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ds-split__caret{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.ds-menu{z-index:var(--z-sticky);min-width:220px;padding:var(--space-1);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface-1);box-shadow:var(--elev-overlay);animation:ds-enter var(--duration-fast) var(--ease-out);position:absolute;inset:calc(100% + 4px) 0 auto auto}.ds-menu__item{align-items:center;gap:var(--space-2);width:100%;min-height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.ds-menu__item:hover{background:var(--surface-3);color:var(--ink-strong)}.ds-menu__hint{color:var(--ink-faint);font-size:var(--text-xs);margin-left:auto}.ds-menu__divider{height:1px;margin:var(--space-1) 0;background:var(--line)}.ds-chip{align-items:center;gap:var(--space-1);min-height:20px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;font-weight:600;display:inline-flex}.ds-chip:before{content:"";background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.ds-chip--bare:before{display:none}.ds-chip--blocked{background:var(--state-blocked-bg);border-color:var(--state-blocked-border);color:var(--state-blocked-fg)}.ds-chip--action{background:var(--state-action-bg);border-color:var(--state-action-border);color:var(--state-action-fg)}.ds-chip--running{background:var(--state-running-bg);border-color:var(--state-running-border);color:var(--state-running-fg)}.ds-chip--running:before{animation:ds-pulse-dot 1.6s var(--ease-in-out) infinite}@keyframes ds-pulse-dot{50%{opacity:.35}}.ds-chip--ok{background:var(--state-ok-bg);border-color:var(--state-ok-border);color:var(--state-ok-fg)}.ds-chip--idle{background:var(--state-idle-bg);border-color:var(--state-idle-border);color:var(--state-idle-fg)}.ds-chip--accent{background:var(--accent-wash);border-color:var(--accent-edge);color:var(--accent-base)}.ds-chip--changed{animation:ds-pulse-once var(--duration-slow) var(--ease-out)}.ds-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1);flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.ds-card--interactive{transition:border-color var(--duration-fast) var(--ease-out)}.ds-card--interactive:hover{border-color:var(--line-strong)}.ds-card--selected{border-color:var(--accent-base);box-shadow:inset 0 0 0 1px var(--accent-base)}.ds-card__rail{width:3px;position:absolute;inset:0 auto 0 0}.ds-card--rail-blocked .ds-card__rail{background:var(--state-blocked-rail)}.ds-card--rail-action .ds-card__rail{background:var(--state-action-rail)}.ds-card--rail-running .ds-card__rail{background:var(--state-running-rail)}.ds-card--rail-ok .ds-card__rail{background:var(--state-ok-rail)}.ds-card--rail-idle .ds-card__rail{background:var(--state-idle-rail)}.ds-card__header,.ds-card__body,.ds-card__footer{padding:var(--pad-y) var(--pad-x);min-width:0}.ds-card__header{justify-content:space-between;align-items:center;gap:var(--gap);padding-bottom:0;display:flex}.ds-card__footer{align-items:center;gap:var(--space-2);border-top:1px solid var(--line);background:var(--surface-2);display:flex}.ds-card__media{background:var(--image-ground)}.ds-tile{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--image-ground);cursor:pointer;width:100%;transition:border-color var(--duration-fast) var(--ease-out);padding:0;display:block;position:relative;overflow:hidden}.ds-tile:hover{border-color:var(--line-strong)}.ds-tile--selected{border-color:var(--accent-base);box-shadow:inset 0 0 0 2px var(--accent-base)}.ds-tile__frame{width:100%;aspect-ratio:var(--tile-aspect,3 / 4);background:var(--image-ground);display:block;position:relative}.ds-tile__img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity var(--duration-normal) var(--ease-out);position:absolute;inset:0}.ds-tile__img--loaded{opacity:1}.ds-tile__img--cover{object-fit:cover}.ds-tile__media,.ds-tile__media>*{object-fit:contain;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;inset:0}.ds-tile__skeleton{background:var(--surface-2);position:absolute;inset:0;overflow:hidden}.ds-tile__skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--skeleton-sheen), transparent);animation:ds-run 1.4s var(--ease-in-out) infinite;position:absolute;inset:0;transform:translate(-100%)}.ds-tile__failed{place-items:center;gap:var(--space-1);color:var(--ink-faint);font-size:var(--text-xs);display:grid;position:absolute;inset:0}.ds-tile__actions{inset:auto var(--space-1) var(--space-1) auto;gap:var(--space-1);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);display:flex;position:absolute}.ds-tile:hover .ds-tile__actions,.ds-tile:focus-within .ds-tile__actions,.ds-tile__actions:focus-within,.ds-tile--selected .ds-tile__actions{opacity:1}.ds-tile__action{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--floating-bg-strong);width:26px;height:26px;color:var(--ink-strong);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;padding:0;display:inline-flex}.ds-tile__action:hover{background:var(--surface-1);border-color:var(--line-strong)}.ds-tile__action.is-on{background:var(--accent-base);border-color:var(--accent-base);color:var(--accent-ink)}.ds-tile__select{inset:var(--space-1) auto auto var(--space-1);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);position:absolute}.ds-tile:hover .ds-tile__select,.ds-tile:focus-within .ds-tile__select,.ds-tile--selected .ds-tile__select{opacity:1}.ds-tile__badges{inset:var(--space-1) var(--space-1) auto var(--space-1);justify-content:flex-end;align-items:flex-start;gap:var(--space-1);pointer-events:none;display:flex;position:absolute}.ds-tile__caption{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-top:1px solid var(--line);background:var(--surface-1);font-size:var(--text-xs);color:var(--ink-muted);text-align:left;display:flex}.ds-tile__caption-main{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dam-image--missing[data-missing]{box-sizing:border-box;border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-muted);font-size:var(--text-sm);justify-content:center;align-items:center;min-width:12px;min-height:12px;line-height:1;display:inline-flex;overflow:hidden}.dam-image--missing[data-missing=gone]:after{content:"⊘"}.dam-image--missing[data-missing=unreachable]{border-style:dotted}.dam-image--missing[data-missing=unreachable]:after{content:"↻"}.ds-toolbar{align-items:center;gap:var(--gap);min-height:var(--row-h);padding:var(--space-2) 0;flex-wrap:wrap;display:flex}.ds-toolbar__spacer{flex:auto}.ds-toolbar--sticky{z-index:var(--z-sticky);background:var(--canvas);border-bottom:1px solid var(--line);position:sticky;top:0}.ds-segmented{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);gap:2px;padding:2px;display:inline-flex}.ds-segmented__item{align-items:center;gap:var(--space-2);min-height:26px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--ink-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;font-weight:550;display:inline-flex}.ds-segmented__item:hover{color:var(--ink-strong)}.ds-segmented__item[aria-pressed=true],.ds-segmented__item[aria-selected=true]{background:var(--surface-1);color:var(--ink-strong);box-shadow:var(--elev-raised)}.ds-segmented__count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-faint)}.ds-segmented__item[aria-pressed=true] .ds-segmented__count,.ds-segmented__item[aria-selected=true] .ds-segmented__count{color:var(--accent-base)}.ds-selectionbar{bottom:var(--space-4);z-index:var(--z-sticky);align-items:center;gap:var(--gap);margin-top:var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--floating-bg-strong);box-shadow:var(--elev-overlay);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:ds-enter var(--duration-fast) var(--ease-out);flex-wrap:wrap;display:flex;position:sticky}.ds-selectionbar__count{align-items:baseline;gap:var(--space-1);color:var(--ink-strong);font-weight:600;display:inline-flex}.ds-selectionbar__count strong{font-family:var(--font-mono);font-size:var(--text-lg)}.ds-selectionbar__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.ds-key{border:1px solid var(--line-strong);border-radius:var(--radius-xs);background:var(--surface-2);min-width:18px;height:18px;color:var(--ink-muted);font-family:var(--font-mono);border-bottom-width:2px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;line-height:1;display:inline-flex}.ds-keyrow{align-items:center;gap:var(--space-1);color:var(--ink-faint);font-size:var(--text-xs);display:inline-flex}.ds-drawer__scrim{z-index:var(--z-drawer);background:var(--scrim);animation:ds-fade var(--duration-fast) var(--ease-out);position:fixed;inset:0}@keyframes ds-fade{0%{opacity:0}}.ds-drawer{z-index:var(--z-drawer);border-left:1px solid var(--line);background:var(--surface-1);width:min(460px,100vw);box-shadow:var(--elev-modal);animation:ds-drawer-in var(--duration-normal) var(--ease-out);flex-direction:column;display:flex;position:fixed;inset:0 0 0 auto}@keyframes ds-drawer-in{0%{opacity:0;transform:translate(16px)}}.ds-drawer__head{justify-content:space-between;align-items:center;gap:var(--gap);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);display:flex}.ds-drawer__title{font-size:var(--text-lg);color:var(--ink-strong);margin:0;font-weight:600}.ds-drawer__body{padding:var(--space-4);flex:auto;overflow-y:auto}.ds-toasts{inset:auto var(--space-4) var(--space-4) auto;z-index:var(--z-toast);gap:var(--space-2);width:min(420px, calc(100vw - var(--space-6)));pointer-events:none;flex-direction:column;display:flex;position:fixed}.ds-toast{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--floating-bg-strong);box-shadow:var(--elev-overlay);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;animation:ds-enter var(--duration-normal) var(--ease-out);display:flex}.ds-toast--error{border-color:var(--state-blocked-border)}.ds-toast--success{border-color:var(--state-ok-border)}.ds-toast__icon{flex:none;margin-top:1px}.ds-toast--error .ds-toast__icon{color:var(--state-blocked-fg)}.ds-toast--success .ds-toast__icon{color:var(--state-ok-fg)}.ds-toast--info .ds-toast__icon{color:var(--state-running-fg)}.ds-toast__body{flex:auto;min-width:0}.ds-toast__message{color:var(--ink-strong);overflow-wrap:anywhere;margin:0}.ds-toast__detail{margin:var(--space-1) 0 0;color:var(--ink-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.ds-toast__actions{align-items:center;gap:var(--space-1);flex:none;display:flex}.ds-dialog__scrim{z-index:var(--z-modal);padding:var(--space-4);background:var(--scrim);animation:ds-fade var(--duration-fast) var(--ease-out);place-items:center;display:grid;position:fixed;inset:0}.ds-dialog{border:1px solid var(--line-strong);border-radius:var(--radius-xl);background:var(--surface-1);width:min(480px,100%);box-shadow:var(--elev-modal);animation:ds-enter var(--duration-normal) var(--ease-out);--pad-y:var(--space-5);--pad-x:var(--space-5)}.ds-dialog__body{padding:var(--pad-y) var(--pad-x)}.ds-dialog__title{margin:0 0 var(--space-2);font-size:var(--text-xl);color:var(--ink-strong);font-weight:600}.ds-dialog__message{color:var(--ink-muted);margin:0}.ds-dialog__targets{margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);max-height:180px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink-muted);list-style:none;overflow-y:auto}.ds-dialog__targets li+li{margin-top:var(--space-1)}.ds-dialog__field{margin-top:var(--space-4);display:block}.ds-dialog__field span{margin-bottom:var(--space-1);color:var(--ink-muted);font-size:var(--text-sm);font-weight:600;display:block}.ds-dialog__field textarea,.ds-dialog__field input{width:100%;min-height:72px;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink);font:inherit;resize:vertical}.ds-dialog__foot{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--pad-x);border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--radius-xl) var(--radius-xl);display:flex}.ds-empty{justify-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-5);border:1px dashed var(--line);border-radius:var(--radius-lg);background:var(--surface-1);text-align:center;display:grid}.ds-empty__icon{border-radius:var(--radius-lg);background:var(--surface-3);width:40px;height:40px;color:var(--ink-faint);place-items:center;display:grid}.ds-empty__title{font-size:var(--text-lg);color:var(--ink-strong);margin:0;font-weight:600}.ds-empty__body{max-width:46ch;color:var(--ink-muted);margin:0}.ds-skeleton{border-radius:var(--radius-sm);background:var(--surface-2);position:relative;overflow:hidden}.ds-skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--skeleton-sheen), transparent);animation:ds-run 1.4s var(--ease-in-out) infinite;position:absolute;inset:0;transform:translate(-100%)}.ds-skeleton-grid{grid-template-columns:repeat(auto-fill, minmax(var(--tile-min,200px), 1fr));gap:var(--gap);display:grid}.ds-skeleton-rows{gap:var(--space-2);display:grid}.ds-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ds-visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ds-stack{gap:var(--gap);min-width:0;display:grid}.ds-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.ds-eyebrow{color:var(--ink-faint);font-size:var(--text-xs);letter-spacing:.09em;text-transform:uppercase;margin:0;font-weight:600}.ds-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell{background:var(--canvas);min-height:100vh;color:var(--ink);flex-direction:column;display:flex}.topbar{z-index:var(--z-sticky);align-items:center;gap:var(--space-4);padding:0 var(--space-5);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:48px;display:flex;position:sticky;top:0}.topbar__nav{align-items:center;gap:var(--space-1);scrollbar-width:none;min-width:0;display:flex;overflow-x:auto}.topbar__nav::-webkit-scrollbar{display:none}.topbar__brand{margin-right:var(--space-4);padding-right:var(--space-4);border-right:1px solid var(--line);color:var(--ink-strong);font-size:var(--text-sm);letter-spacing:.02em;white-space:nowrap;font-weight:700}.nav-tab{align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-muted);white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);font-weight:550;text-decoration:none;display:inline-flex}.nav-tab:hover{background:var(--surface-2);color:var(--ink-strong)}.nav-tab--active{background:var(--surface-3);color:var(--ink-strong)}.nav-tab__badge{border-radius:var(--radius-pill);background:var(--state-action-bg);min-width:18px;height:16px;color:var(--state-action-fg);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex}.nav-tab--active .nav-tab__badge{background:var(--accent-base);color:var(--accent-ink)}.topbar__actions{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.app-main{width:100%;max-width:1720px;padding:var(--space-5) var(--space-5) var(--space-8);min-width:0;animation:ds-enter var(--duration-fast) var(--ease-out);flex:auto;margin:0 auto}.system-pill{align-items:center;gap:var(--space-2);height:26px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);font-weight:550;display:inline-flex}.system-pill:hover{border-color:var(--line-strong);color:var(--ink-strong)}.system-pill__dot{background:var(--state-idle-rail);border-radius:50%;width:6px;height:6px}.system-pill--waiting{border-color:var(--state-running-border);color:var(--state-running-fg)}.system-pill--waiting .system-pill__dot{background:var(--state-running-rail)}.system-pill--blocked{border-color:var(--state-blocked-border);color:var(--state-blocked-fg)}.system-pill--blocked .system-pill__dot{background:var(--state-blocked-rail)}.system-pill__bar{border-radius:var(--radius-pill);background:var(--surface-3);width:28px;height:2px;position:relative;overflow:hidden}.system-pill__bar:after{content:"";border-radius:inherit;width:40%;animation:ds-sweep 1.3s var(--ease-in-out) infinite;background:currentColor;position:absolute;inset:0 auto 0 0}@keyframes ds-sweep{0%{transform:translate(-100%)}to{transform:translate(280%)}}.system-pill__label{font-variant-numeric:tabular-nums}.jobs-layout{gap:var(--space-6);grid-template-columns:184px minmax(0,1fr);align-items:start;display:grid}.jobs-rail{top:calc(48px + var(--space-5));gap:var(--space-2);flex-direction:column;min-width:0;display:flex;position:sticky}.jobs-rail__heading{margin:0 0 var(--space-1);padding-left:var(--space-2);color:var(--ink-faint);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.jobs-rail__list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.jobs-rail__item--divided{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}.jobs-rail__link{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-2) 0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-muted);font-size:var(--text-sm);transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;font-weight:550;text-decoration:none;display:grid;position:relative}.jobs-rail__link:hover{background:var(--surface-2);color:var(--ink-strong)}.jobs-rail__link--active{background:var(--surface-3);color:var(--ink-strong)}.jobs-rail__link--active:before{content:"";border-radius:var(--radius-pill);background:var(--accent-base);width:2px;position:absolute;top:6px;bottom:6px;left:0}.jobs-rail__dot{background:var(--ink-faint);border-radius:50%;width:6px;height:6px}.jobs-rail__dot--action{background:var(--state-action-rail)}.jobs-rail__dot--running{background:var(--state-running-rail)}.jobs-rail__dot--ok{background:var(--state-ok-rail)}.jobs-rail__dot--idle{background:var(--state-idle-rail)}.jobs-rail__dot--muted{background:var(--line-strong)}.jobs-rail__count{color:var(--ink-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.jobs-rail__link--active .jobs-rail__count{color:var(--ink-muted)}.jobs-main{gap:var(--space-5);min-width:0}.jobs-head{align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);display:grid}.jobs-head__title{color:var(--ink-strong);font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:650}.jobs-head__count{color:var(--ink-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.jobs-head__blurb{color:var(--ink-muted);font-size:var(--text-sm);grid-column:1/-1;margin:0}.job-days{gap:var(--space-6);flex-direction:column;display:flex}.job-day__title{z-index:var(--z-sticky);grid-template-columns:auto minmax(var(--space-4), 1fr) auto;align-items:center;gap:var(--space-3);margin:0 0 var(--space-2);padding:var(--space-2) 0;background:linear-gradient(to bottom, var(--canvas) 70%, transparent);color:var(--ink-muted);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:700;display:grid;position:sticky;top:48px}.job-day__rule{background:var(--line);height:1px}.job-day__count{color:var(--ink-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:0;font-weight:700}.job-day:first-child .job-day__title{color:var(--ink-strong)}@media (width<=1023px){.jobs-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.jobs-rail{gap:0;position:static}.jobs-rail__heading{display:none}.jobs-rail__list{gap:var(--space-1);scrollbar-width:none;flex-direction:row;overflow-x:auto}.jobs-rail__list::-webkit-scrollbar{display:none}.jobs-rail__item--divided{margin:0 0 0 var(--space-2);padding:0 0 0 var(--space-2);border-top:0;border-left:1px solid var(--line)}.jobs-rail__link{white-space:nowrap}.jobs-rail__link--active:before{display:none}}@media (prefers-reduced-motion:reduce){.jobs-rail__link{transition:none}}.job-rows{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.job-row{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4) var(--space-3) 0;background:var(--surface-1);transition:background-color var(--duration-fast) var(--ease-out);grid-template-columns:3px auto auto minmax(0,1fr) auto auto;display:grid;position:relative}.job-row__thumbs{grid-template-columns:repeat(3,34px);align-content:center;gap:3px;display:grid}.job-row__thumb{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);object-fit:contain;width:34px;height:44px}.job-row__thumb-more{border:1px dashed var(--line);border-radius:var(--radius-sm);height:44px;color:var(--ink-faint);font-size:var(--text-xs);justify-content:center;align-items:center;display:flex}@media (width<=899px){.job-row{grid-template-columns:3px auto minmax(0,1fr) auto auto}.job-row__thumbs{display:none}}.job-row:hover{background:var(--surface-2)}.job-row--selected{background:var(--accent-wash)}.job-row__rail{background:var(--state-idle-rail);align-self:stretch}.job-row--blocked .job-row__rail{background:var(--state-blocked-rail)}.job-row--action .job-row__rail{background:var(--state-action-rail)}.job-row--running .job-row__rail{background:var(--state-running-rail)}.job-row--ok .job-row__rail{background:var(--state-ok-rail)}.job-row__check{padding-left:var(--space-3);align-items:center;display:flex}.job-row__check input{width:14px;height:14px;accent-color:var(--accent-base);cursor:pointer}.job-row__main{width:100%;min-width:0;padding:var(--space-1) 0;color:inherit;text-align:left;cursor:pointer;justify-content:start;justify-items:start;gap:1px;display:grid}.job-row__head{align-items:baseline;gap:var(--space-2);min-width:0;max-width:100%;display:flex}.job-row__title{min-width:0;color:var(--ink-strong);font-size:var(--text-md);letter-spacing:-.01em;margin:0;font-weight:600}.job-row__id{color:var(--ink-faint);letter-spacing:.06em;flex:none;font-size:10px}.job-row__why{max-width:100%;color:var(--ink-muted);font-size:var(--text-sm)}.job-row__counts{text-align:right;white-space:nowrap;justify-items:end;gap:1px;min-width:92px;display:grid}.job-row__count{color:var(--ink-muted);font-size:var(--text-sm)}.job-row__count strong{color:var(--accent-base);font-size:var(--text-lg);font-weight:650}.job-row__meta{color:var(--ink-faint);font-size:var(--text-xs)}.job-row__actions{align-items:center;gap:var(--space-1);display:flex}.marquee{z-index:20;pointer-events:none;border:1px solid var(--accent-base);border-radius:var(--radius-sm);background:var(--accent-wash);position:fixed}body.is-marquee-dragging{-webkit-user-select:none;user-select:none;cursor:crosshair}.activity-group__head{justify-content:space-between;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-weight:700;display:flex}.activity-group__counts{gap:var(--space-1);display:flex}.activity-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.activity-row{align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);display:flex;position:relative;overflow:hidden}.activity-row--failed{border-color:var(--state-blocked-border)}.activity-row__thumb{border-radius:var(--radius-sm);background:var(--image-ground);object-fit:cover;flex:none;width:32px;height:32px}.activity-row__thumb--empty{border:1px dashed var(--line);display:block}.activity-row__body{flex:auto;gap:1px;min-width:0;display:grid}.activity-row__title{color:var(--ink-strong);font-size:var(--text-sm);font-weight:550}.activity-row__meta{color:var(--ink-faint);font-size:var(--text-xs)}.activity-row__error{color:var(--state-blocked-fg);font-size:var(--text-xs);overflow-wrap:anywhere}.activity-row__bar{background:var(--surface-3);height:2px;position:absolute;inset:auto 0 0;overflow:hidden}.activity-row__bar:after{content:"";background:var(--state-running-rail);width:30%;animation:ds-sweep 1.6s var(--ease-in-out) infinite;position:absolute;inset:0 auto 0 0}.activity-group+.activity-group{margin-top:var(--space-4)}.sheet{grid-template-columns:repeat(auto-fill, minmax(var(--sheet-min,240px), 1fr));gap:var(--space-3);display:grid}.sheet-card{gap:var(--space-2);min-width:0;max-width:var(--sheet-max,380px);grid-template-columns:minmax(0,1fr);display:grid}.sheet-card--focused{outline:2px solid var(--accent-base);outline-offset:3px;border-radius:var(--radius-md)}.sheet-card__foot{align-items:center;gap:var(--space-2);min-width:0;display:flex}.sheet-card__label{min-width:0;color:var(--ink-muted);font-size:var(--text-xs)}.sheet-card__verdict{gap:var(--space-1);margin-left:auto;display:flex}.sheet-section{gap:var(--space-3);display:grid}.sheet-section__head{align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--line);font-size:var(--text-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);margin:0;font-weight:700;display:flex}.sheet-section__outfit{padding:1px var(--space-2);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--ink);letter-spacing:.04em}.ref-strip{align-items:flex-start;gap:var(--space-1) var(--space-4);padding:var(--space-1) var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);flex-wrap:wrap;display:flex}.ref-group{gap:var(--space-1);min-width:0;display:grid}.ref-group__head{align-items:center;gap:var(--space-2);color:var(--ink-faint);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;margin:0;display:flex}.ref-group__name{color:var(--ink);font-weight:600;font-size:var(--text-sm);text-transform:none;letter-spacing:0}.ref-group__code,.ref-group__facts{text-transform:none;letter-spacing:0}.ref-strip__unresolved{color:var(--ink-faint);font-size:var(--text-xs);align-self:center}.ref-thumbs{gap:var(--space-2);flex-wrap:wrap;display:flex}.ref-thumb{width:48px;color:var(--ink-faint);cursor:zoom-in;background:0 0;border:0;gap:2px;padding:0;display:grid}.ref-thumb img{aspect-ratio:3/4;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);object-fit:contain;width:100%}.ref-thumb--used img{border-color:var(--accent-base);box-shadow:0 0 0 1px var(--accent-base)}.ref-thumb--used .ref-thumb__label{color:var(--ink)}.ref-thumb:hover img,.ref-thumb:focus-visible img{border-color:var(--accent-base)}.ref-thumb__label{min-width:0;font-size:var(--text-xs);text-align:center;overflow-wrap:anywhere;line-height:1.25}.ref-viewer-strip{gap:var(--space-2);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.ref-viewer-strip .ref-thumb{cursor:pointer;width:64px}.ref-strip--compact{gap:var(--space-3);background:0 0;border:0;padding:0}.ref-strip--compact .ref-thumbs{gap:var(--space-1)}.ref-strip--compact .ref-thumb{width:44px}.ref-strip--compact .ref-thumb__label,.ref-strip--compact .ref-group__code,.ref-strip--compact .ref-group__facts{display:none}.ref-strip--compact .ref-group{gap:3px}.sheet-card__history{align-items:center;gap:var(--space-1);color:var(--ink-faint);font-size:var(--text-xs);display:inline-flex}.sheet-tile-media{object-fit:contain;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.review-toolbar-trailing{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.review-keyhints{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}@media (width<=1099px){.review-keyhints{display:none}}.sheet-card__verdicts{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sheet-card__verdict-row{align-items:baseline;gap:var(--space-1);min-width:0;font-size:var(--text-xs);display:flex}.sheet-card__verdict-view{color:var(--ink-muted);font-weight:600}.sheet-card__verdict-why{min-width:0;color:var(--ink-faint)}.verdict-dialog{width:min(620px,100%)}.verdict-dialog__body{gap:var(--space-4);padding:var(--space-4);max-height:min(72vh,760px);display:grid;overflow:auto}.verdict-dialog__section{gap:var(--space-2);min-width:0;display:grid}.verdict-dialog__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.verdict-dialog__head .ds-eyebrow{margin:0}.verdict-dialog__optional{font-size:var(--text-xs);color:var(--ink-faint)}.verdict-dialog__hint,.verdict-dialog__warn{font-size:var(--text-xs);color:var(--ink-faint);margin:0}.verdict-dialog__warn{color:var(--danger-base,var(--ink-strong))}.verdict-targets{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.verdict-target{align-content:start;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);cursor:pointer;grid-template-columns:minmax(0,1fr);display:grid}.verdict-target:hover{border-color:var(--line-strong)}.verdict-target.is-on{border-color:var(--accent-base);background:var(--accent-wash)}.verdict-target__head{align-items:center;gap:var(--space-2);min-width:0;display:flex}.verdict-target__head input{width:15px;height:15px;accent-color:var(--accent-base);flex:none;margin:0}.verdict-target__media{aspect-ratio:3/4;object-fit:contain;border-radius:var(--radius-sm);background:var(--surface-1);width:100%}.verdict-target__label{min-width:0;font-size:var(--text-sm);color:var(--ink-strong);font-weight:600}.verdict-target__detail{min-width:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-faint)}.verdict-reasons{gap:var(--space-1);flex-wrap:wrap;display:flex}.verdict-reason{align-items:center;gap:var(--space-1);padding:5px var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:var(--text-sm);cursor:pointer;display:inline-flex}.verdict-reason:hover{border-color:var(--line-strong)}.verdict-reason.is-on{border-color:var(--accent-base);background:var(--accent-base);color:var(--accent-ink)}.verdict-reason .verdict-reason__key{min-width:15px;height:15px;color:inherit;opacity:.55;background:0 0;border-color:currentColor;border-bottom-width:1px;padding:0 3px;font-size:9px}.verdict-dialog__field{gap:var(--space-1);display:grid}.verdict-dialog__field>span{font-size:var(--text-sm);color:var(--ink-muted);font-weight:600}.verdict-dialog__field em{color:var(--ink-faint);font-style:normal;font-weight:400}.verdict-dialog__field textarea{width:100%;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink);font:inherit;resize:vertical}.verdict-dialog__foot{bottom:calc(var(--space-4) * -1);justify-content:flex-end;align-items:center;gap:var(--space-2);margin:0 calc(var(--space-4) * -1) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);background:var(--surface-2);display:flex;position:sticky}.generated-preview-verdict{gap:var(--space-1);flex-wrap:wrap;display:flex}.generated-preview-verdict-hint,.generated-preview-modal-why,.generated-preview-modal-note{font-size:var(--text-xs);color:var(--ink-faint);margin:0}.generated-preview-modal-why{color:var(--ink-muted);font-weight:600}@media (width<=640px){.verdict-targets{grid-template-columns:minmax(0,1fr)}}.workspace{gap:var(--space-4);min-width:0;display:grid}.workspace__head{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.workspace__identity{justify-items:start;gap:var(--space-1);flex:auto;min-width:0;display:grid}.workspace__title{font-size:var(--text-2xl);letter-spacing:-.015em;color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-weight:650}.workspace__meta{align-items:center;gap:var(--space-2);color:var(--ink-faint);font-size:var(--text-sm);flex:none;display:flex}.workspace__head-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.workspace__why{color:var(--ink-muted);margin:0}.workspace__banner{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--state-action-border);border-radius:var(--radius-md);background:var(--state-action-bg);color:var(--state-action-fg);border-left-width:3px;display:flex}.workspace__banner--blocked{border-color:var(--state-blocked-border);background:var(--state-blocked-bg);color:var(--state-blocked-fg)}.workspace__progress{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1);display:grid}.workspace__progress-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);color:var(--ink-muted);display:flex}.workspace__progress-track{border-radius:var(--radius-pill);background:var(--surface-3);height:4px;overflow:hidden}.workspace__progress-fill{border-radius:inherit;background:var(--accent-base);height:100%;transition:width var(--duration-slow) var(--ease-out)}.workspace__banner-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.inspector-stack{gap:var(--space-4)}.inspector-title{font-size:var(--text-lg);color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-weight:600}.inspector-preview{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--image-ground);object-fit:contain;width:100%;max-height:46vh;display:block}.inspector-field{gap:var(--space-1);display:grid}.inspector-field>span{color:var(--ink-muted);font-size:var(--text-sm);font-weight:600}.inspector-field textarea,.inspector-field select{width:100%;min-height:var(--control-h);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink);font:inherit}.inspector-field textarea{resize:vertical;min-height:72px}.inspector-actions{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.inspector-details{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.inspector-details>summary{padding:var(--space-2) var(--space-3);color:var(--ink-muted);font-size:var(--text-sm);cursor:pointer;font-weight:600}.inspector-details[open]>summary{border-bottom:1px solid var(--line);color:var(--ink-strong)}.inspector-details>div,.inspector-details>.version-list{padding:var(--space-3)}.version-list{gap:var(--space-1);display:grid}.version-list__item{padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);gap:2px;display:grid}.version-list__item:hover{border-color:var(--line-strong)}.version-list__item--active{border-color:var(--accent-base);background:var(--accent-wash)}.version-list__label{align-items:center;gap:var(--space-2);color:var(--ink-strong);font-weight:600;display:flex}.version-list__meta,.version-list__detail{color:var(--ink-faint);font-size:var(--text-xs)}.cost-breakdown{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);display:grid}.outfit-nav-all{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);font-weight:600;display:flex}.outfit-nav-all:hover{border-color:var(--line-strong);color:var(--ink-strong)}.outfit-nav-all--active{border-color:var(--accent-edge);background:var(--accent-wash);color:var(--accent-base)}.library-layout{gap:var(--space-5);grid-template-columns:220px minmax(0,1fr);align-items:start;min-width:0;display:grid}.collections-rail{top:calc(48px + var(--space-4));gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1);min-width:0;display:grid;position:sticky}.collections-rail__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.collections-rail__form{gap:var(--space-2);display:grid}.collections-rail__form input{width:100%;min-height:var(--control-h);padding:0 var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink);font:inherit}.collections-rail__list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.collection-item{gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-md);transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);border:1px solid #0000;display:grid}.collection-item:hover{border-color:var(--line);background:var(--surface-2)}.collection-item__body{gap:1px;min-width:0;display:grid}.collection-item__title{color:var(--ink-strong);font-size:var(--text-sm);font-weight:600}.collection-item__meta{color:var(--ink-faint);font-size:var(--text-xs)}.collection-item__actions{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}@media (width<=1279px){.library-layout{grid-template-columns:minmax(0,1fr)}.collections-rail{position:static}.collections-rail__list{grid-auto-columns:minmax(200px,1fr);grid-auto-flow:column;overflow-x:auto}.job-row{grid-template-columns:3px auto minmax(0,1fr) auto auto}.job-row__thumbs{display:none}}@media (width<=1023px){.app-main{padding:var(--space-4) var(--space-3) var(--space-7)}.topbar{padding:0 var(--space-3)}.topbar__brand{display:none}.job-row{grid-template-columns:3px auto minmax(0,1fr) auto}.job-row__counts{display:none}.sheet{--sheet-min:180px}}*,:before,:after{box-sizing:border-box}:root{font-family:var(--font-ui);font-size:var(--text-base);color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.45}body{background:var(--canvas);min-width:320px;margin:0}code,kbd,samp,pre,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}::selection{background:var(--accent-base);color:var(--accent-ink)}:focus-visible{box-shadow:var(--focus-ring);outline:0}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-track{background:0 0}@keyframes ds-enter{0%{opacity:0;transform:translateY(2px)}}@keyframes ds-pulse-once{50%{box-shadow:0 0 0 4px var(--accent-wash)}}@keyframes ds-run{to{transform:translate(100%)}}@keyframes spin{to{transform:rotate(360deg)}}.ds-enter{animation:ds-enter var(--duration-fast) var(--ease-out)}.skip-link{left:var(--space-4);top:var(--space-4);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--accent-base);color:var(--accent-ink);font-weight:600;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.filter-bar{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:10px;padding:12px;display:grid;position:relative}.filter-bar-row{grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:10px;display:grid}.filter-search{background:var(--surface-muted,var(--surface));border:1px solid var(--border);height:40px;color:var(--muted);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.filter-search:focus-within{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in oklch, var(--accent) 18%, transparent);color:var(--text)}.filter-search input{font-size:var(--text-base,14px);color:var(--text-strong);background:0 0;border:0;outline:none;flex:1;min-width:0}.filter-search input::placeholder{color:var(--muted)}.filter-kbd{background:var(--surface-hover,var(--border));border:1px solid var(--border);height:22px;color:var(--muted);letter-spacing:.04em;border-radius:6px;align-items:center;padding:0 6px;font-family:inherit;font-size:11px;display:inline-flex}.filter-bar-selects{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.filter-combobox{position:relative}.filter-combobox-trigger{border:1px solid var(--border);background:var(--surface-muted,var(--surface));height:40px;color:var(--text);font:inherit;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.filter-combobox-trigger:hover{border-color:var(--border-strong,var(--border));background:var(--surface)}.filter-combobox.active .filter-combobox-trigger{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 12%, var(--surface));color:var(--text-strong)}.filter-combobox-icon{color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.filter-combobox.active .filter-combobox-icon{color:var(--accent)}.filter-combobox-text{flex-direction:column;align-items:flex-start;min-width:0;line-height:1.1;display:inline-flex}.filter-combobox-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.filter-combobox-value{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.filter-combobox.active .filter-combobox-value{color:var(--accent);font-weight:600}.filter-chevron{color:var(--muted);transition:transform var(--duration-fast) var(--ease-out)}.filter-chevron.open{transform:rotate(180deg)}.filter-combobox-popover{z-index:30;background:var(--surface);border:1px solid var(--border);min-width:260px;max-width:360px;animation:filter-popover-in .12s var(--ease-out,ease-out);border-radius:12px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 16px 40px -20px #00000059,0 4px 12px -6px #0000002e}@keyframes filter-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.filter-combobox-search{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:8px;padding:8px 10px;display:flex}.filter-combobox-search input{font:inherit;color:var(--text-strong);background:0 0;border:0;outline:none;flex:1;min-width:0}.filter-combobox-list{max-height:280px;margin:0;padding:4px;list-style:none;overflow-y:auto}.filter-combobox-option{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.filter-combobox-option:hover,.filter-combobox-option.highlight{background:var(--surface-hover,color-mix(in oklch, var(--accent) 6%, var(--surface)))}.filter-combobox-option.selected{color:var(--accent);font-weight:600}.filter-combobox-option.clear{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.filter-combobox-option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filter-combobox-option-count{color:var(--muted);background:var(--surface-hover,var(--border));border-radius:999px;padding:1px 6px;font-size:11px}.filter-combobox-option-hint{color:var(--muted);grid-column:1/-1;font-size:11px}.filter-combobox-empty{text-align:center;color:var(--muted);padding:12px;font-size:12px}.filter-bar-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;min-height:22px;display:flex}.filter-bar-meta-main{flex-wrap:wrap;flex:auto;align-items:center;gap:10px;min-width:0;display:flex}.filter-bar-meta-trailing{align-items:center;margin-left:auto;display:inline-flex}.filter-result-count{color:var(--muted);font-size:12px}.filter-result-count strong{color:var(--text-strong);font-variant-numeric:tabular-nums}.filter-chips{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.filter-chip{background:color-mix(in oklch, var(--accent) 10%, var(--surface));color:var(--accent);border:1px solid color-mix(in oklch, var(--accent) 30%, var(--border));animation:filter-chip-in .14s var(--ease-out,ease-out);border-radius:999px;align-items:center;gap:6px;padding:3px 4px 3px 10px;font-size:12px;font-weight:600;display:inline-flex}@keyframes filter-chip-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.filter-chip button{width:18px;height:18px;color:inherit;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.filter-chip button:hover{background:color-mix(in oklch, var(--accent) 18%, transparent)}.filter-clear{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:12px;text-decoration:underline}.filter-clear:hover{color:var(--text-strong)}@media (width<=820px){.filter-bar-row{grid-template-columns:1fr}.filter-bar-selects{justify-content:flex-start}.filter-combobox-value{max-width:130px}}@media (prefers-reduced-motion:reduce){.filter-combobox-popover,.filter-chip{animation:none}.filter-chevron{transition:none}}.job-picker{background:var(--surface-muted,var(--surface));border:1px solid var(--border);height:36px;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);isolation:isolate;border-radius:10px;align-items:stretch;display:inline-flex;position:relative}.job-picker.has-target{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 8%, var(--surface));box-shadow:0 0 0 2px color-mix(in oklch, var(--accent) 14%, transparent)}.job-picker-open{font:inherit;color:var(--text-strong);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.job-picker-open svg:first-child{color:var(--muted)}.job-picker-open:hover,.job-picker-open:hover svg:first-child{color:var(--accent)}.job-picker-open .chevron{color:var(--muted);transition:transform var(--duration-fast) var(--ease-out)}.job-picker-open .chevron.open{transform:rotate(180deg)}.job-picker-target{font:inherit;color:var(--text-strong);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:10px 0 0 10px;align-items:center;gap:8px;padding:0 12px 0 10px;display:inline-flex}.job-picker-target:hover{background:color-mix(in oklch, var(--accent) 12%, transparent)}.job-picker-target-text{flex-direction:column;align-items:flex-start;min-width:0;line-height:1.1;display:inline-flex}.job-picker-target-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.job-picker-target-title{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;font-weight:600;overflow:hidden}.job-picker-target svg:last-child{color:var(--muted)}.job-picker-clear{border:0;border-left:1px solid color-mix(in oklch, var(--accent) 25%, var(--border));width:24px;color:var(--muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;display:inline-flex}.job-picker-clear:hover{color:var(--danger,var(--text-strong));background:color-mix(in oklch, var(--accent) 14%, transparent)}.job-picker-confirm{background:var(--accent);color:var(--accent-contrast,white);font:inherit;letter-spacing:.01em;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out);border:0;border-radius:0 9px 9px 0;align-items:center;gap:6px;margin-left:4px;padding:0 14px 0 12px;font-size:13px;font-weight:700;display:inline-flex}.job-picker-confirm:hover:not(:disabled){background:color-mix(in oklch, var(--accent) 86%, black);box-shadow:0 6px 18px -8px color-mix(in oklch, var(--accent) 65%, transparent)}.job-picker-confirm:active:not(:disabled){transform:translateY(1px)}.job-picker-confirm:disabled{opacity:.55;cursor:not-allowed}.job-picker-confirm svg{transition:transform var(--duration-fast) var(--ease-out)}.job-picker-confirm:hover:not(:disabled) svg{transform:translate(2px)}.job-status-dot{width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in oklch, currentColor 18%, transparent);border-radius:999px;flex-shrink:0}.job-status-dot.tone-neutral{background:var(--muted)}.job-status-dot.tone-muted{background:color-mix(in oklch, var(--muted) 50%, transparent)}.job-status-dot.tone-accent{background:var(--accent)}.job-status-dot.tone-success{background:var(--success,#16a34a)}.job-status-dot.tone-danger{background:var(--danger,#dc2626)}.job-status-dot.tone-active{background:var(--accent);animation:1.6s ease-in-out infinite job-status-pulse}@keyframes job-status-pulse{0%,to{opacity:1}50%{opacity:.45}}.job-picker-popover{z-index:40;background:var(--surface);border:1px solid var(--border);min-width:320px;max-width:420px;animation:job-picker-pop .14s var(--ease-out,ease-out);transform-origin:0 100%;border-radius:12px;flex-direction:column;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 -22px 50px -22px #00000073,0 -6px 16px -8px #00000038}@keyframes job-picker-pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.job-picker-search{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:8px;padding:10px 12px;display:flex}.job-picker-search input{font:inherit;color:var(--text-strong);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:13px}.job-picker-list{max-height:320px;margin:0;padding:4px;list-style:none;overflow-y:auto}.job-picker-row{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:9px;align-items:flex-start;gap:10px;padding:10px;display:flex}.job-picker-row .job-status-dot{margin-top:6px}.job-picker-row:hover,.job-picker-row.highlight{background:color-mix(in oklch, var(--accent) 8%, var(--surface))}.job-picker-row.selected{background:color-mix(in oklch, var(--accent) 14%, var(--surface))}.job-picker-row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.job-picker-row-title{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.job-picker-row-meta{color:var(--muted);text-transform:lowercase;align-items:center;gap:6px;font-size:11px;display:inline-flex}.job-picker-row-id{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.job-picker-empty{text-align:center;color:var(--muted);padding:16px 12px;font-size:12px}@media (prefers-reduced-motion:reduce){.job-picker-popover,.job-status-dot.tone-active,.job-picker-confirm svg,.job-picker-open .chevron{transition:none;animation:none}}.gallery-view{gap:16px;display:grid}.gallery-editor-toggle{border:1px solid var(--border);background:var(--surface-muted,var(--surface));height:40px;color:var(--text);font:inherit;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border-radius:10px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.gallery-editor-toggle:hover{border-color:var(--border-strong,var(--border));background:var(--surface);color:var(--text-strong)}.gallery-editor-toggle svg{color:var(--muted)}.gallery-editor-toggle:hover svg{color:var(--accent)}.gallery-empty{justify-items:start;gap:8px;display:grid}.gallery-empty strong{color:var(--text-strong);font-size:14px}.gallery-empty span{color:var(--muted);font-size:12px}.gallery-editor-bar{z-index:20;border:1px solid var(--border-strong,var(--border));background:var(--surface);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex;position:sticky;bottom:16px;box-shadow:0 18px 40px -22px #00000073,0 4px 14px -6px #0000002e}.editor-variant-input{flex:0 240px;min-width:min(240px,100%)}.editor-mode-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.editor-mode-status{border:1px solid var(--border);background:var(--surface-selected-soft);min-height:42px;color:var(--text-strong);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;display:inline-flex}.editor-mode-status>span{gap:1px;display:grid}.editor-mode-status strong,.editor-mode-status span span{line-height:1.15}.editor-mode-status span span{color:var(--muted);font-size:12px}.gallery-pagination{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:8px 10px;display:flex}.gallery-pagination-summary,.gallery-pagination-total{color:var(--muted);font-size:12px;font-weight:700;line-height:1.3}.gallery-pagination-actions,.gallery-pagination-select{align-items:center;gap:8px;min-width:0;display:inline-flex}.gallery-pagination-actions{flex:none}.gallery-pagination-actions .icon-button{width:36px;min-height:36px;padding:0}.gallery-pagination-select span{color:var(--muted);font-size:12px;font-weight:800}.gallery-pagination-select select{border:1px solid var(--border);background:var(--surface-alt);width:76px;min-height:36px;color:var(--text-strong);font:inherit;border-radius:6px;padding:6px 28px 6px 10px;font-size:13px;font-weight:700}.gallery-matrix{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.gallery-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.gallery-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-3px)}.gallery-card.selected{border-color:var(--accent);background:var(--surface-selected);box-shadow:var(--shadow-md), var(--shadow-glow-accent)}.gallery-card-button img{transition:transform var(--duration-slow) var(--ease-out)}.gallery-card:hover .gallery-card-button img{transform:scale(1.03)}.gallery-select{z-index:2;background:var(--floating-bg-strong);border-radius:6px;place-items:center;width:44px;min-height:44px;padding:4px;display:grid;position:absolute;top:8px;left:8px}.gallery-select input{cursor:pointer;width:18px;min-height:18px;padding:0}.gallery-source-badge{z-index:2;background:var(--floating-bg);max-width:calc(100% - 16px);min-height:28px;color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:8px;right:8px;overflow:hidden}.gallery-card.selection-mode .gallery-source-badge{max-width:calc(100% - 72px)}.gallery-card-button{width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;border-radius:0;justify-content:stretch;align-items:stretch;gap:0;padding:0;display:grid}.gallery-card-button:hover{background:var(--surface-hover)}.gallery-card.selected .gallery-card-button{background:var(--surface-selected-soft)}.gallery-context-menu{z-index:30;border:1px solid var(--border);background:var(--floating-bg-strong);min-width:174px;box-shadow:0 12px 30px var(--shadow);border-radius:8px;gap:4px;padding:6px;display:grid;position:fixed}.gallery-context-menu button{width:100%;color:var(--text-strong);background:0 0;border-color:#0000;justify-content:flex-start}.gallery-context-menu button:hover,.gallery-context-menu button:focus-visible{border-color:var(--border);background:var(--surface-hover)}.gallery-card-button img,.gallery-placeholder,.modal-preview img{aspect-ratio:4/5;object-fit:cover;background:var(--surface-muted);width:100%;display:block}.gallery-placeholder{color:var(--muted);place-items:center;display:grid}.gallery-card-body{gap:4px;min-width:0;padding:10px;display:grid}.gallery-card-body strong,.history-row strong{color:var(--text-strong);overflow-wrap:anywhere}.gallery-card-body span,.history-row span{color:var(--muted);font-size:12px}.modal-backdrop{z-index:var(--z-modal);background:var(--overlay-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:modal-backdrop-in .22s var(--ease-out) both;place-items:center;padding:24px;display:grid;position:fixed;inset:0}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-shell-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.gallery-modal{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);width:min(1180px,100%);max-height:min(860px,100vh - 48px);box-shadow:var(--shadow-xl);animation:modal-shell-in .32s var(--ease-out) both;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.gallery-detail-modal{width:min(1220px,100vw - 32px);height:calc(100vh - 48px);max-height:calc(100vh - 48px)}.create-job-modal{width:min(460px,100vw - 32px)}.create-job-modal-body{gap:12px;padding:16px;display:grid}.create-job-selection-summary{background:var(--surface-selected-soft);width:fit-content;color:var(--text-strong);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.modal-head h2,.modal-detail h3{color:var(--text-strong);margin:0}.gallery-detail-modal .modal-title-block{min-width:0}.gallery-detail-modal .modal-head h2{overflow-wrap:anywhere;max-width:100%;font-size:21px;line-height:1.22}.gallery-detail-modal .modal-head .button-row{flex:none;justify-content:flex-end}.gallery-detail-modal .modal-head .button-row button{white-space:nowrap}.modal-body{grid-template-columns:minmax(260px,.7fr) minmax(360px,1.3fr);gap:16px;min-height:0;padding:16px;display:grid;overflow:auto}.gallery-detail-modal .modal-body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(420px,2fr) minmax(300px,1fr);gap:18px;overflow:hidden}.modal-preview{min-width:0;position:relative}.gallery-detail-modal .modal-preview{align-self:stretch;place-items:center;height:100%;min-height:0;display:grid;overflow:hidden}.modal-preview img,.modal-preview .gallery-placeholder{border:1px solid var(--border);border-radius:8px}.gallery-detail-modal .modal-preview img,.gallery-detail-modal .modal-preview .gallery-placeholder{aspect-ratio:auto;object-fit:contain;width:100%;height:100%}.variant-nav{pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;left:10px;right:10px;transform:translateY(-50%)}.variant-nav button{pointer-events:auto;width:42px;min-height:42px;box-shadow:0 8px 20px var(--shadow);padding:0}.modal-detail{align-content:start;gap:14px;min-width:0;display:grid}.gallery-detail-modal .modal-detail{max-height:100%;padding-right:2px;overflow:auto}.member-panel,.member-list{gap:8px;min-width:0;display:grid}.member-panel-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.member-panel-head span{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:800}.member-selection-status{color:var(--accent);align-items:baseline;gap:8px;display:inline-flex}.member-selection-status span{color:inherit}.member-selection-clear{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:800;text-decoration:underline}.member-selection-clear:hover,.member-selection-clear:focus-visible{color:var(--text)}.member-row{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.member-row.active{border-color:var(--accent);background:var(--surface-selected)}.member-image-button{width:100%;min-width:0;min-height:64px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:minmax(0,1fr) 52px;justify-content:stretch;align-items:center;gap:10px;padding:0;display:grid}.member-image-button:hover{background:var(--surface-hover);color:var(--accent)}.member-image-button[aria-pressed=true]{color:var(--text-strong)}.member-copy{gap:4px;min-width:0;display:grid}.member-copy strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:13px;line-height:1.25}.member-meta,.member-meta .status-stack{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.member-chip{background:var(--status-bg);color:var(--muted);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:800;line-height:1.2}.member-thumbnail{border:1px solid var(--border);background:var(--surface-muted);border-radius:6px;place-items:center;width:52px;height:64px;display:grid;overflow:hidden}.member-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.member-thumbnail.placeholder{color:var(--muted)}.status-stack,.generation-history{gap:6px;display:grid}.history-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;display:grid}.history-row.active{border-color:var(--accent);background:var(--surface-selected)}.history-select-button{min-width:0;min-height:44px;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;gap:4px;padding:6px;display:grid}.history-select-button:hover,.history-select-button:focus-visible{background:var(--surface-hover)}.history-select-button:disabled{cursor:not-allowed;opacity:.68}.history-row>.button-row{justify-content:flex-end}.history-row>.image-qa-panel{grid-column:1/-1}.image-qa-panel,.image-qa-run-body,.image-qa-section,.qa-history-modal-body{gap:10px;display:grid}.image-qa-panel{border-top:1px solid var(--border);padding-top:10px}.image-qa-head,.image-qa-actions,.image-qa-run-summary,.image-qa-run summary{align-items:center;gap:10px;display:flex}.image-qa-head{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;display:grid}.image-qa-head>div{min-width:0}.image-qa-head h3{margin:0}.image-qa-head .trace-muted{margin-top:3px}.image-qa-actions{place-items:center stretch;gap:6px;display:grid}.image-qa-actions.has-history{grid-template-columns:auto auto}.image-qa-actions .secondary{white-space:nowrap;gap:6px;min-height:34px;padding:5px 9px;font-size:13px;line-height:1.1}.image-qa-actions .filter-count{min-width:19px;min-height:19px;font-size:10px}.qa-detail-button-top{grid-row:2}.image-qa-actions.has-history .qa-detail-button-top{grid-column:2}.image-qa-run{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;padding:8px}.image-qa-current-run{border-color:var(--border-strong)}.image-qa-run-summary,.image-qa-run summary{color:var(--text-strong);flex-wrap:wrap;justify-content:flex-start;font-size:13px}.image-qa-run summary{cursor:pointer}.image-qa-run-meta{color:var(--muted);font-size:12px}.image-qa-run-summary strong,.image-qa-run summary strong{color:var(--text-strong)}.provenance{gap:var(--space-1,4px);border-bottom:1px solid var(--border);padding-bottom:.7rem;display:grid}.provenance-head{font-size:var(--text-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.35rem;margin:0 0 .15rem;font-weight:800;display:flex}.provenance-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);width:100%;color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.4rem;display:grid}.provenance-card:hover,.provenance-card:focus-visible{border-color:var(--border-strong);background:var(--surface-hover)}.provenance-thumb{aspect-ratio:3/4;border-radius:var(--radius-sm);background:var(--surface);width:44px;display:block;overflow:hidden}.provenance-thumb img{object-fit:cover;width:100%;height:100%;display:block}.provenance-thumb.placeholder{color:var(--muted);place-items:center;display:grid}.provenance-copy{gap:1px;min-width:0;display:grid}.provenance-copy strong{color:var(--text-strong);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.provenance-sub{font-size:var(--text-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.provenance-chip{border:1px solid var(--border);border-radius:var(--radius-xs);letter-spacing:.03em;color:var(--muted);justify-self:start;margin-top:2px;padding:0 .32rem;font-size:.62rem;font-weight:700}.provenance-go{color:var(--muted);flex:none}.qa-summary{gap:.4rem;display:grid}.qa-summary-row{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--muted);font-size:var(--text-xs);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.4rem;padding:.35rem .45rem;display:flex}.qa-summary-row:hover{border-color:var(--border-strong)}.qa-summary-verdict{color:var(--text-strong);font-weight:700}.qa-summary-verdict.pass{color:var(--accent)}.qa-summary-verdict.fail,.qa-summary-verdict.review{color:var(--notice-text)}.qa-summary-count{color:var(--notice-text);font-weight:600}.qa-summary-more{color:var(--muted);margin-left:auto;text-decoration:underline}.qa-history-modal{width:min(920px,100vw - 48px)}.qa-history-modal-body{min-height:0;padding:16px;overflow:auto}.qa-history-run{background:var(--surface)}.image-qa-run-body{gap:8px;padding-top:8px}.qa-run-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px}.qa-run-fields dt{font-size:9px}.qa-run-fields dd{font-size:11px;line-height:1.25}.image-qa-section h3{margin:0}.qa-finding-section{gap:4px}.qa-section-head,.qa-section-actions,.qa-gate-counts,.qa-detail-gate-head{align-items:center;gap:6px;display:flex}.qa-section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.qa-section-head h3{margin:0}.qa-section-actions{flex-wrap:wrap;flex:170px;justify-content:flex-end;min-width:0}.qa-gate-counts{flex-wrap:wrap}.qa-detail-button{min-height:30px;padding:4px 9px}.qa-gate-count{border-radius:999px;padding:2px 7px;font-size:11px;font-weight:800}.qa-gate-count-pass{background:var(--success-bg);color:var(--success-text)}.qa-gate-count-review{background:var(--notice-bg);color:var(--notice-text)}.qa-gate-count-fail{background:var(--danger-bg-strong);color:var(--danger)}.qa-finding-list{margin:0;padding-left:18px}.qa-finding-list li{color:var(--text);font-size:12px;line-height:1.45}.qa-gate-table-wrap{min-width:0;max-width:100%;overflow:visible}.qa-gate-table{border-collapse:collapse;width:100%;min-width:0;max-width:100%;color:var(--text);grid-template-columns:minmax(0,1fr) 78px 76px;font-size:12px;display:grid}.qa-gate-table colgroup{display:none}.qa-gate-table thead,.qa-gate-table tbody,.qa-gate-table tr{display:contents}.qa-gate-table th,.qa-gate-table td{border-bottom:1px solid var(--border);overflow-wrap:anywhere;text-align:left;min-width:0;padding:7px 5px}.qa-gate-table thead th{color:var(--muted);text-transform:uppercase;font-size:10px}.qa-gate-table tbody th{color:var(--text-strong);font-weight:800}.qa-gate-table tbody tr>:first-child{border-left:3px solid #0000}.qa-gate-table tbody th span,.qa-gate-table tbody th small{display:block}.qa-gate-table tbody th small{color:var(--muted);overflow-wrap:anywhere;font-size:11px;font-weight:700}.qa-gate-table .status,.qa-gate-table .mini-pill{white-space:nowrap;padding-left:6px;padding-right:6px}.qa-result-hint{cursor:help;display:inline-flex;position:relative}.qa-floating-tooltip{z-index:60;box-sizing:border-box;border:1px solid var(--border);background:var(--floating-bg-strong);box-shadow:0 12px 30px var(--shadow);color:var(--text);overflow-wrap:anywhere;pointer-events:none;text-transform:none;border-radius:6px;padding:8px;font-size:12px;font-weight:600;line-height:1.45;position:fixed}.qa-floating-tooltip-above{transform:translateY(-100%)}.qa-gate-row-pass>:first-child{border-left-color:var(--success-border)}.qa-gate-row-review>:first-child{border-left-color:var(--notice-text)}.qa-gate-row-fail>:first-child{border-left-color:var(--danger)}.qa-detail-gate.qa-gate-row-pass{border-left-color:var(--success-border)}.qa-detail-gate.qa-gate-row-review{border-left-color:var(--notice-text)}.qa-detail-gate.qa-gate-row-fail{border-left-color:var(--danger)}.qa-detail-modal{width:min(920px,100vw - 48px)}.qa-detail-modal-body,.qa-detail-gate-list,.qa-detail-gate{gap:12px;display:grid}.qa-detail-modal-body{min-height:0;padding:16px;overflow:auto}.qa-detail-gate{border:1px solid var(--border);background:var(--surface-alt);border-left:3px solid #0000;border-radius:8px;padding:10px}.qa-detail-gate-head{flex-wrap:wrap}.qa-detail-gate-head strong{color:var(--text-strong)}.qa-detail-gate p{color:var(--text);margin:0;font-size:13px;line-height:1.5}@media (width<=820px){.modal-head{flex-direction:column;align-items:stretch}.gallery-editor-bar{bottom:8px}.editor-mode-actions{margin-left:0}.gallery-pagination{flex-direction:column;align-items:stretch}.gallery-pagination-actions{justify-content:space-between}.grouping-controls input{flex:100%}.modal-body,.gallery-detail-modal .modal-body{grid-template-columns:1fr;overflow:auto}.gallery-detail-modal .modal-preview img,.gallery-detail-modal .modal-preview .gallery-placeholder{aspect-ratio:4/5;height:auto}.gallery-detail-modal .modal-preview{height:auto}.gallery-detail-modal .modal-detail{max-height:none;overflow:visible}.history-row{grid-template-columns:1fr}.history-row>.button-row{justify-content:flex-start}.image-qa-head{grid-template-columns:1fr}.image-qa-actions{flex-wrap:wrap;justify-content:flex-start;display:flex}.qa-run-fields{grid-template-columns:1fr}}.generation-ghost{color:var(--muted);place-items:center;display:grid;position:relative;overflow:hidden}.generation-ghost:before{content:"";background:linear-gradient(135deg, var(--skeleton-start), var(--skeleton-end)), linear-gradient(45deg, var(--skeleton-base-start), var(--skeleton-base-end));filter:blur(5px)grayscale();opacity:.9;border-radius:4px;position:absolute;inset:9px}.generation-ghost:after{content:"";background:linear-gradient(90deg, transparent, var(--skeleton-sheen), transparent);animation:1.4s ease-in-out infinite generation-sweep;position:absolute;inset:0;transform:translate(-100%)}.generation-ghost svg{z-index:1;animation:.9s linear infinite generation-spin;position:relative}.generation-ghost.failed{color:var(--danger);background:var(--danger-bg-soft)}.generation-ghost.failed:after,.generation-ghost.failed svg{animation:none}.generation-placeholder-row td{color:var(--muted)}@keyframes generation-spin{to{transform:rotate(360deg)}}@keyframes generation-sweep{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.generation-ghost:after,.generation-ghost svg{animation:none}}.plate-control{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2);max-width:300px;height:56px;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;display:grid;position:relative;overflow:visible}.plate-control:hover{border-color:var(--line-strong)}.plate-control:focus-within{border-color:var(--accent-base);box-shadow:0 0 0 3px var(--accent-wash)}.plate-control-plate{border:0;border-right:1px solid var(--line);border-radius:var(--radius-lg) 0 0 var(--radius-lg);background:var(--image-ground);width:52px;margin:0;padding:0;display:block;overflow:hidden}button.plate-control-plate{cursor:pointer}.plate-control-holder{place-items:center;width:100%;height:100%;display:grid}.plate-control-holder img{object-fit:cover;object-position:50% 14%;width:100%;height:100%;transition:transform var(--duration-normal) var(--ease-out);display:block}.plate-control-icon{color:var(--ink-faint);place-items:center;display:grid}.plate-control-field{align-items:center;gap:var(--space-2);min-width:0;padding:0 var(--space-2) 0 var(--space-3);transition:background var(--duration-fast) var(--ease-out);display:flex;position:relative}.plate-control-data{gap:1px;min-width:0;display:grid}.plate-control-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:5px;font-size:9px;font-weight:700;line-height:1.2;display:flex}.plate-control-value{font-size:var(--text-base);color:var(--ink-strong);white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:1.25;overflow:hidden}.is-empty .plate-control-value{color:var(--ink-muted);font-weight:500}.plate-control-detail{font-family:var(--font-mono);color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.3;overflow:hidden}.plate-control-tag{border-radius:var(--radius-pill);letter-spacing:.1em;opacity:.9;border:1px solid;padding:1px 5px;font-size:8px}.plate-control-tag--accent{color:var(--accent-base)}.plate-control-tag--warn{color:var(--state-action-fg)}.plate-control-chevron{color:var(--ink-faint);transition:color var(--duration-fast) var(--ease-out);flex:none}.plate-control-trigger{border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.plate-control-trigger:focus-visible{box-shadow:inset 0 0 0 1px var(--accent-base);outline:none}.plate-control-field:hover{background:var(--surface-3)}.plate-control-field:hover .plate-control-chevron{color:var(--ink)}.plate-control-open{padding:0 var(--space-3);border:0;border-left:1px solid var(--line);border-radius:0 var(--radius-lg) var(--radius-lg) 0;color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;align-items:center;gap:4px;font-size:9px;font-weight:700;display:inline-flex}.plate-control-open:hover,.plate-control-open:focus-visible{background:var(--accent-wash);color:var(--accent-lift)}.plate-control-open:focus-visible{box-shadow:inset 0 0 0 1px var(--accent-base);outline:none}.plate-control-open svg{transition:transform var(--duration-normal) var(--ease-spring)}.plate-control-open:hover svg{transform:translate(1px,-1px)}button.plate-control-plate:hover .plate-control-holder img{transform:scale(1.06)}.plate-control:has(.plate-control-open:hover) .plate-control-holder img{transform:scale(1.06)}.plate-control:has(button.plate-control-plate:hover) .plate-control-open{background:var(--accent-wash);color:var(--accent-lift)}.plate-menu{z-index:var(--z-drawer);min-width:280px;max-width:380px;padding:var(--space-1);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--elev-overlay);animation:plate-menu-in var(--duration-fast) var(--ease-out);position:absolute;top:calc(100% + 6px);left:-1px}@keyframes plate-menu-in{0%{opacity:0;transform:translateY(-4px)}}.plate-menu-item{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:0;display:flex}.plate-menu-item:hover:not(:disabled){background:var(--surface-3)}.plate-menu-item:disabled{cursor:not-allowed;opacity:.45}.plate-menu-item:focus-visible{box-shadow:inset 0 0 0 1px var(--accent-base);outline:none}.plate-menu-box{border:1px solid var(--line-strong);border-radius:var(--radius-xs);width:15px;height:15px;color:var(--accent-ink);transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);flex:none;place-items:center;margin-top:1px;display:grid}.is-checked .plate-menu-box{background:var(--accent-base);border-color:var(--accent-base)}.plate-menu-text{flex:1;gap:1px;min-width:0;display:grid}.plate-menu-mark{color:var(--accent-base);flex:none;align-self:center}.plate-menu-label{font-size:var(--text-base);color:var(--ink-strong);font-weight:600}.plate-menu-hint{font-family:var(--font-mono);color:var(--ink-muted);font-size:10px;line-height:1.35}@media (prefers-reduced-motion:reduce){.plate-control,.plate-control-field,.plate-control-open,.plate-control-open svg,.plate-control-holder img,.plate-menu-box{transition:none}button.plate-control-plate:hover .plate-control-holder img{transform:none}.plate-control:has(.plate-control-open:hover) .plate-control-holder img{transform:none}.plate-menu{animation:none}}.imported-plan{gap:16px;display:grid}.imported-plan-head,.selected-outfit-head,.theme-section header,.theme-section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.imported-plan-head h2,.selected-outfit-head h2,.theme-section h4,.theme-section-head h3,.section-head.tight h3,.combination-builder h3{color:var(--text-strong);margin:0}.imported-plan-stats{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 14px;min-width:0;display:flex}.plan-comment-panel,.combination-builder{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:14px}.plan-comment-panel{display:grid}.comment-field,.edit-grid label,.combination-fields label{gap:6px;display:grid}.combination-builder{gap:12px;display:grid}.section-head.tight{align-items:center}.combination-layout{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:12px;display:grid}.check-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.check-card{border:1px solid var(--border);background:var(--surface-soft);min-width:0;color:var(--text);border-radius:7px;align-items:flex-start;gap:9px;padding:9px;display:flex}.check-card strong,.check-card small{overflow-wrap:anywhere;display:block}.check-card strong{color:var(--text-strong);font-size:13px}.check-card small{color:var(--muted);margin-top:2px}.combination-fields{align-content:start;gap:10px;display:grid}.theme-picker legend{width:100%;color:var(--text-strong);padding:0;font-size:13px;font-weight:800}.theme-picker label{border:1px solid var(--border);background:var(--surface-alt);min-height:36px;color:var(--text-strong);border-radius:999px;align-items:center;gap:7px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-flex}.outfit-board{grid-template-columns:repeat(auto-fill,minmax(166px,1fr));gap:10px;display:grid}.outfit-card{border-color:var(--border);background:var(--surface);min-height:216px;color:var(--text);text-align:left;grid-template-rows:118px minmax(0,1fr);justify-content:stretch;align-items:stretch;gap:0;padding:0;display:grid;overflow:hidden}.outfit-card:hover,.outfit-card.active{border-color:var(--accent);background:var(--surface-selected-soft);color:var(--text-strong)}.outfit-card.active{box-shadow:inset 0 0 0 1px var(--accent)}.outfit-preview,.outfit-preview-cell,.selected-assets figure{min-width:0}.outfit-preview{background:var(--image-ground);border-bottom:1px solid var(--border);grid-template-rows:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.outfit-preview.multi{grid-template-columns:repeat(2,minmax(0,1fr))}.outfit-preview-cell{border-right:1px solid var(--border);min-height:0;display:block;overflow:hidden}.outfit-preview-cell:last-child{border-right:0}.outfit-preview img{object-fit:cover;object-position:center 35%;width:100%;height:100%;display:block}.selected-assets img{object-fit:contain;width:100%;height:100%;display:block}.asset-placeholder{color:var(--muted);place-items:center;font-size:12px;display:grid}.outfit-card-body{gap:6px;min-width:0;padding:10px;display:grid}.outfit-card-title,.outfit-card-code,.outfit-card-counts{overflow-wrap:anywhere}.outfit-card-title{color:var(--text-strong);font-weight:800;line-height:1.25}.outfit-card-code,.outfit-card-counts,.combination-summary{color:var(--muted);font-size:12px}.outfit-card-pills{flex-wrap:wrap;gap:5px;display:flex}.mini-pill{border:1px solid var(--border);background:var(--surface-alt);min-height:22px;color:var(--text-strong);border-radius:999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:800;display:inline-flex}.mini-pill.strong{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.selected-outfit{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);gap:18px;padding:0 0 18px;display:grid;position:relative;overflow:hidden}.selected-outfit-hero{background:linear-gradient(180deg, var(--surface-header) 0%, var(--surface) 100%);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"headline stats""actions actions";gap:16px;padding:22px 22px 16px;display:grid}.hero-headline{grid-area:headline;gap:4px;min-width:0;display:grid}.hero-headline h2{font-size:var(--text-2xl,22px);letter-spacing:0;color:var(--text-strong);margin:0;font-weight:800}.hero-subtitle{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 0;font-size:12px;display:flex}.hero-label{letter-spacing:.02em;background:var(--surface-muted);color:var(--text-strong);border-radius:4px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.hero-product-refs{letter-spacing:.02em;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.hero-stats{grid-area:stats;justify-content:flex-end;align-items:center;gap:18px;display:flex}.hero-stat{text-align:right;justify-items:end;line-height:1;display:grid}.hero-stat strong{color:var(--text-strong);letter-spacing:0;font-size:26px;font-weight:800}.hero-stat span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:10px;font-weight:700}.hero-actions{flex-wrap:wrap;grid-area:actions;align-items:center;gap:8px;display:flex}.outfit-rejection{margin:0 22px}.selected-outfit-assets{padding:0 22px}.theme-rail{flex-wrap:wrap;align-items:center;gap:10px;padding:0 22px;display:flex}.theme-rail-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:10px;font-weight:800}.theme-rail-track{flex-wrap:wrap;flex:1;gap:6px;display:flex}.theme-chip{border-radius:var(--radius-pill);border:1px solid var(--theme-tone-border,var(--border));background:var(--theme-tone-bg-soft,var(--surface-alt));min-height:30px;color:var(--theme-tone-fg,var(--text-strong));cursor:pointer;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);align-items:center;gap:6px;padding:5px 12px 5px 10px;font-size:12px;font-weight:700;display:inline-flex}.theme-chip:hover:not(:disabled){background:var(--theme-tone-bg,var(--surface-hover));transform:translateY(-1px)}.theme-chip.xs{min-height:22px;padding:2px 9px 2px 7px;font-size:11px}.theme-chip.ghost{color:var(--theme-tone-fg,var(--muted));opacity:.85;background:0 0;border-style:dashed}.theme-chip.ghost:hover:not(:disabled){opacity:1;background:var(--theme-tone-bg-soft,var(--surface-alt));border-style:solid}.theme-chip:disabled{opacity:.45;cursor:not-allowed}.theme-chip-label{letter-spacing:.01em}.theme-chip-count{border-radius:var(--radius-pill);background:var(--theme-tone-rail,var(--text-strong));min-width:18px;color:var(--surface);text-align:center;padding:1px 6px;font-size:10px;font-weight:800}.theme-dot{background:var(--theme-tone-rail,var(--accent));width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in srgb, var(--theme-tone-rail,var(--accent)) 22%, transparent);border-radius:999px;flex-shrink:0}.tone-studio{--theme-tone-fg:var(--theme-studio-fg);--theme-tone-bg:var(--theme-studio-bg);--theme-tone-bg-soft:var(--theme-studio-bg-soft);--theme-tone-border:var(--theme-studio-border);--theme-tone-rail:var(--theme-studio-rail)}.tone-action{--theme-tone-fg:var(--theme-action-fg);--theme-tone-bg:var(--theme-action-bg);--theme-tone-bg-soft:var(--theme-action-bg-soft);--theme-tone-border:var(--theme-action-border);--theme-tone-rail:var(--theme-action-rail)}.tone-detail{--theme-tone-fg:var(--theme-detail-fg);--theme-tone-bg:var(--theme-detail-bg);--theme-tone-bg-soft:var(--theme-detail-bg-soft);--theme-tone-border:var(--theme-detail-border);--theme-tone-rail:var(--theme-detail-rail)}.tone-default{--theme-tone-fg:var(--theme-default-fg);--theme-tone-bg:var(--theme-default-bg);--theme-tone-bg-soft:var(--theme-default-bg-soft);--theme-tone-border:var(--theme-default-border);--theme-tone-rail:var(--theme-default-rail)}.theme-stack{gap:14px;padding:0 22px;display:grid}.theme-empty{border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--muted);background:var(--surface-soft);align-items:center;gap:10px;padding:18px;font-size:13px;display:flex}.theme-block{border:1px solid var(--theme-tone-border,var(--border));border-radius:var(--radius-md);background:var(--theme-tone-bg-soft,var(--surface));gap:12px;padding:14px 14px 14px 22px;scroll-margin-top:80px;display:grid;position:relative;overflow:hidden}.theme-rail-bar{background:var(--theme-tone-rail,var(--accent));width:6px;position:absolute;top:0;bottom:0;left:0}.theme-block-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.theme-block-title{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.theme-block-title h3{letter-spacing:0;color:var(--text-strong);margin:0;font-size:17px;font-weight:800}.theme-block-title p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.4}.theme-badge{border-radius:var(--radius-sm);background:var(--theme-tone-rail,var(--accent));color:var(--surface);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.theme-badge .theme-dot{background:var(--surface);box-shadow:none}.theme-block-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.theme-stat{color:var(--text-strong);border-radius:var(--radius-pill);background:var(--theme-tone-bg,var(--surface-muted));border:1px solid var(--theme-tone-border,var(--border));padding:2px 8px;font-size:11px;font-weight:700}.set-count{display:inline-flex}.shot-grid .set-count{grid-column:1/-1}.set-count-trigger{border:1px solid var(--theme-tone-border,var(--border));border-radius:var(--radius-pill);background:var(--surface);min-height:32px;color:var(--text-strong);font:inherit;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);align-items:center;gap:8px;padding:3px 7px 3px 5px;display:inline-flex}.set-count-trigger:hover:not(:disabled){border-color:var(--theme-tone-rail,var(--accent));transform:translateY(-1px)}.set-count-trigger:focus-visible{outline:2px solid var(--theme-tone-rail,var(--accent));outline-offset:2px}.set-count-trigger[data-open]{border-color:var(--theme-tone-rail,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb, var(--theme-tone-rail,var(--accent)) 16%, transparent)}.set-count-trigger:disabled{opacity:.5;cursor:not-allowed}.set-count-trigger-gauge{border-radius:var(--radius-pill);background:var(--theme-tone-bg,var(--surface-muted));flex-shrink:0;width:6px;height:22px;position:relative;overflow:hidden}.set-count-trigger-gauge-fill{border-radius:var(--radius-pill);background:var(--theme-tone-rail,var(--accent));transition:height var(--duration-fast) var(--ease-out);position:absolute;inset:auto 0 0}.set-count-trigger[data-mixed] .set-count-trigger-gauge-fill{background:repeating-linear-gradient(-45deg, var(--theme-tone-rail,var(--accent)) 0 3px, transparent 3px 6px)}.set-count-trigger-text{text-align:left;gap:1px;line-height:1;display:grid}.set-count-trigger-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:800}.set-count-trigger-value{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:14px;font-weight:800}.set-count-trigger[data-mixed] .set-count-trigger-value{font-size:11px}.set-count-trigger-chevron{color:var(--muted);transition:transform var(--duration-normal) var(--ease-out), color var(--duration-fast) var(--ease-out)}.set-count-trigger[data-open] .set-count-trigger-chevron{color:var(--theme-tone-rail,var(--accent));transform:rotate(180deg)}.set-count-panel{z-index:1000;border:1px solid var(--theme-tone-border,var(--border));border-radius:var(--radius-lg);background:var(--floating-bg,var(--surface));width:244px;height:252px;box-shadow:0 22px 48px var(--shadow-soft), 0 4px 12px var(--shadow-soft);transform-origin:0 0;animation:set-count-panel-in .16s var(--ease-out);grid-template-rows:auto 1fr;margin:0;padding:0;display:grid;position:fixed}.set-count-panel[data-placement=up]{transform-origin:0 100%;--set-count-enter-y:7px}@keyframes set-count-panel-in{0%{opacity:0;transform:translateY(var(--set-count-enter-y,-7px)) scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.set-count-panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:8px;padding:11px 14px 9px;display:flex}.set-count-panel-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-strong);font-size:11px;font-weight:800}.set-count-panel-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.set-count-panel-body{grid-template-columns:auto 1fr;align-items:center;gap:16px;padding:14px;display:grid}.set-count-gauge{align-items:stretch;gap:9px;height:168px;display:flex}.set-count-axis{color:var(--muted);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:10px;font-weight:800;display:flex}.set-count-slider{writing-mode:vertical-rl;width:26px;height:100%;accent-color:var(--theme-tone-rail,var(--accent));cursor:ns-resize;direction:rtl;margin:0}.set-count-slider:focus-visible{outline:2px solid var(--theme-tone-rail,var(--accent));outline-offset:3px;border-radius:4px}.set-count-readout{align-content:center;justify-items:start;gap:5px;display:grid}.set-count-readout-value{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:38px;font-weight:800;line-height:.85}.set-count-readout-value[data-mixed]{font-size:20px}.set-count-readout-unit{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.set-count-stepper{gap:5px;margin-top:3px;display:inline-flex}.set-count-stepper button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:30px;height:30px;color:var(--text-strong);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);place-items:center;display:inline-grid}.set-count-stepper button:hover:not(:disabled){border-color:var(--theme-tone-rail,var(--accent));background:var(--surface-hover,var(--surface-alt))}.set-count-stepper button:disabled{opacity:.4;cursor:not-allowed}.set-count-readout-total{border-radius:var(--radius-pill);background:var(--theme-tone-bg-soft,var(--surface-muted));color:var(--text-strong);white-space:nowrap;align-items:center;gap:5px;margin-top:5px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.set-count-readout-total svg{color:var(--theme-tone-rail,var(--accent))}@media (prefers-reduced-motion:reduce){.set-count-panel{animation:none}.set-count-trigger,.set-count-trigger-chevron,.set-count-trigger-gauge-fill{transition:none}}.shot-stack{gap:8px;margin:0;display:grid}.shot-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:10px;padding:12px 14px;display:grid}.shot-card.rejected{opacity:.6;filter:grayscale(.4);border-style:dashed}.shot-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.shot-card-id{align-items:center;gap:8px;min-width:0;display:inline-flex}.shot-code{letter-spacing:.02em;border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--text-strong);padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700}.shot-candidates{color:var(--muted);align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.shot-card-actions{align-items:center;gap:6px;display:inline-flex}.shot-why{color:var(--text-strong);margin:0;font-size:13px;line-height:1.45}.shot-summary{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px 14px;margin:0;display:grid}.shot-summary>div{gap:1px;min-width:0;display:grid}.shot-summary dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.shot-summary dd{color:var(--text-strong);overflow-wrap:anywhere;margin:0;font-size:12px}.outfit-fold{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);margin:0 22px;overflow:hidden}.outfit-fold>summary{cursor:pointer;color:var(--text-strong);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;padding:12px 14px;font-size:12px;font-weight:800;list-style:none;display:flex}.outfit-fold>summary::-webkit-details-marker{display:none}.outfit-fold>summary>span{flex:1}.fold-chevron{transition:transform var(--duration-normal) var(--ease-out);color:var(--muted)}.outfit-fold[open] .fold-chevron{transform:rotate(180deg)}.outfit-fold[open]>summary{border-bottom:1px solid var(--border)}.outfit-fold-body{gap:14px;padding:14px;display:grid}.outfit-fold-body .outfit-editor{border-left:0;border-top:1px solid var(--border);padding-top:14px;padding-left:0}.vertex-facts{border-top:1px solid var(--border);padding-top:12px}.vertex-facts h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:800}.vertex-facts ul{color:var(--text);margin:0;padding-left:18px;font-size:12px}.combination-builder-card{border:1px dashed color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:var(--radius-lg);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 6%, var(--surface)) 0%, var(--surface) 100%);width:100%;color:var(--text);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);text-align:left;align-items:center;gap:14px;padding:14px 18px;display:flex}.combination-builder-card:hover:not(:disabled){border-color:var(--accent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, var(--surface)) 0%, var(--surface) 100%);transform:translateY(-1px)}.combination-builder-card:disabled{opacity:.55;cursor:not-allowed}.combination-builder-card-icon{border-radius:var(--radius-md);background:var(--accent);width:38px;height:38px;color:var(--accent-contrast);flex-shrink:0;place-items:center;display:inline-grid}.combination-builder-card-text{flex:1;gap:2px;min-width:0;display:grid}.combination-builder-card-text strong{color:var(--text-strong);font-size:14px;font-weight:800}.combination-builder-card-text small{color:var(--muted);font-size:12px}.combination-builder-card-cta{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--accent);color:var(--accent);white-space:nowrap;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:800;display:inline-flex}.combination-builder-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:4px;padding-bottom:12px;display:flex}.combination-builder-title{flex:1;grid-template-columns:auto 1fr;grid-template-areas:"step heading""step desc";align-items:start;gap:0 12px;min-width:0;display:grid}.combination-builder-step{color:var(--accent);grid-area:step;align-self:start;padding-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:800;line-height:1}.combination-builder-title h3{color:var(--text-strong);grid-area:heading;margin:0;font-size:18px;font-weight:800}.combination-builder-title p{color:var(--muted);grid-area:desc;margin:3px 0 0;font-size:12px}.combination-products{gap:8px;display:grid}.combination-section-label{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.combination-section-label>span:first-child{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.combination-section-label>small{color:var(--muted);font-size:11px}.check-card.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.product-pick{cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);flex-direction:column;align-items:stretch;gap:0;padding:0;position:relative;overflow:hidden}.product-pick:hover:not(.active){border-color:var(--border-strong);transform:translateY(-1px)}.product-pick.active{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent)}.product-pick>input[type=checkbox]{z-index:1;width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0;position:absolute;top:8px;left:8px}.product-pick-thumb{aspect-ratio:4/5;background:var(--surface-muted);width:100%;color:var(--muted);border-bottom:1px solid var(--border);place-items:center;display:grid;overflow:hidden}.product-pick-thumb img{object-fit:contain;width:100%;height:100%;display:block}.product-pick.active .product-pick-thumb{background:color-mix(in srgb, var(--accent) 6%, var(--surface-muted))}.product-pick-body{gap:2px;min-width:0;padding:8px 10px 10px;display:grid}.product-pick-body strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:12px;font-weight:800;line-height:1.25;display:block}.product-pick-body small{color:var(--muted);letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;display:block}.combination-name-field input{width:100%}.theme-picker{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.theme-pick{border-radius:var(--radius-pill);border:1px solid var(--theme-tone-border,var(--border));background:var(--surface);min-height:36px;color:var(--theme-tone-fg,var(--text-strong));cursor:pointer;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.theme-pick.tone-studio{--theme-tone-fg:var(--theme-studio-fg);--theme-tone-border:var(--theme-studio-border);--theme-tone-rail:var(--theme-studio-rail);--theme-tone-bg-soft:var(--theme-studio-bg-soft)}.theme-pick.tone-action{--theme-tone-fg:var(--theme-action-fg);--theme-tone-border:var(--theme-action-border);--theme-tone-rail:var(--theme-action-rail);--theme-tone-bg-soft:var(--theme-action-bg-soft)}.theme-pick.tone-detail{--theme-tone-fg:var(--theme-detail-fg);--theme-tone-border:var(--theme-detail-border);--theme-tone-rail:var(--theme-detail-rail);--theme-tone-bg-soft:var(--theme-detail-bg-soft)}.theme-pick.active{background:var(--theme-tone-bg-soft,var(--surface-selected-soft));border-color:var(--theme-tone-rail,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb, var(--theme-tone-rail,var(--accent)) 14%, transparent)}.theme-pick input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.theme-pick-dot{background:var(--theme-tone-rail,var(--muted));border-radius:999px;flex-shrink:0;width:10px;height:10px}.theme-pick:not(.active) .theme-pick-dot{opacity:.55}.theme-pick-name{letter-spacing:.01em}.selected-assets{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));align-content:start;gap:10px;display:grid}.selected-assets figure{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;margin:0;position:relative;overflow:hidden}.asset-tile-button{width:100%;color:inherit;background:0 0;border:0;border-radius:0;padding:0;display:block}.asset-tile-button:hover{background:var(--surface-selected)}.selected-assets img{aspect-ratio:4/5}.selected-assets figcaption{border-top:1px solid var(--border);min-height:34px;color:var(--muted);text-transform:uppercase;padding:7px;font-size:11px;font-weight:700}.asset-variant-badge{background:var(--floating-bg-strong);max-width:calc(100% - 16px);min-height:24px;color:var(--text-strong);text-transform:none;border-radius:6px;align-items:center;padding:3px 7px;font-size:11px;font-weight:800;display:inline-flex;position:absolute;top:8px;right:8px}.asset-member-list{gap:8px;display:grid}.asset-member{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);text-align:left;border-radius:7px;gap:3px;padding:9px 10px;display:grid}.asset-member:hover,.asset-member.active{border-color:var(--accent);background:var(--surface-selected);color:var(--text-strong)}.asset-member span:first-child{color:var(--text-strong);overflow-wrap:anywhere;font-weight:800}.asset-member span:last-child{color:var(--muted);text-transform:uppercase;font-size:12px}.imported-facts{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));align-content:start;gap:8px;margin:0;display:grid}.imported-facts div{border:1px solid var(--border);background:var(--surface-soft);border-radius:7px;min-height:78px;padding:9px}.imported-facts dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.imported-facts dd{color:var(--text-strong);overflow-wrap:anywhere;margin:4px 0 0;font-size:12px}.outfit-editor{border-left:1px solid var(--border);align-content:start;gap:12px;min-width:0;padding-left:16px;display:grid}.edit-grid{grid-template-columns:1fr;gap:8px;display:grid}.edit-grid label,.combination-fields label{color:var(--text-strong);font-size:12px;font-weight:800}.edit-grid input,.combination-fields input{min-width:0}.danger{color:var(--danger)}.danger:hover{border-color:var(--danger-border);background:var(--danger-bg-soft);color:var(--danger)}.imported-vertex,.theme-sections{border-top:1px solid var(--border);padding:14px 16px}.theme-sections{gap:12px;display:grid}.theme-section{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:12px}.theme-section h4{font-size:16px}.theme-section p{color:var(--muted);margin:4px 0 0}.shot-stack{gap:8px;margin-top:12px;display:grid}.theme-generation-gallery{border-top:1px solid var(--border);gap:10px;margin-top:12px;padding-top:12px;display:grid}.theme-generation-gallery-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.theme-generation-grid{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px;display:grid}.theme-generation-card{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;min-width:0;margin:0;overflow:hidden}.theme-generation-card-button{width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;border-radius:0;justify-content:stretch;align-items:stretch;gap:0;padding:0;display:grid}.theme-generation-card-button:hover{background:var(--surface-selected)}.theme-generation-preview{aspect-ratio:4/5;background:var(--surface-muted);object-fit:cover;border:0;width:100%;display:block}.theme-generation-caption{border-top:1px solid var(--border);align-content:start;gap:5px;min-height:86px;padding:8px;display:grid}.theme-generation-caption span:not(.status),.theme-generation-caption small{color:var(--muted);overflow-wrap:anywhere;font-size:11px;font-weight:700}.theme-generation-modal{width:min(980px,100%);height:min(860px,100vh - 48px);position:relative;overflow:hidden}.theme-generation-modal .modal-head{padding-right:66px}.theme-generation-close{width:38px;min-height:38px;color:var(--muted);position:absolute;top:14px;right:14px}.theme-generation-close:hover,.theme-generation-close:focus-visible{color:var(--text-strong)}.theme-generation-modal>.theme-generation-modal-body{grid-template-columns:minmax(260px,.9fr) minmax(260px,.6fr);align-items:stretch;height:100%;min-height:0;overflow:hidden}.theme-generation-modal .modal-preview{min-height:0;overflow:hidden}.theme-generation-modal-preview{aspect-ratio:4/5;border:1px solid var(--border);background:var(--surface-muted);object-fit:contain;border-radius:8px;width:100%;display:block}.theme-generation-nav{left:12px;right:12px}.theme-generation-nav button{border-color:var(--border);background:var(--floating-bg-soft);width:34px;min-height:34px;color:var(--floating-text);opacity:.62;box-shadow:0 5px 14px var(--shadow-soft)}.theme-generation-nav button:hover,.theme-generation-nav button:focus-visible{border-color:var(--border-strong);background:var(--floating-bg);color:var(--text-strong);opacity:1}.theme-generation-modal-detail dl{gap:8px;margin:0;display:grid}.theme-generation-modal-detail dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.theme-generation-modal-detail dd{color:var(--text-strong);overflow-wrap:anywhere;margin:3px 0 0;font-size:13px}.theme-generation-modal-detail{scrollbar-gutter:stable;height:100%;min-height:0;max-height:100%;padding-right:2px;overflow:hidden auto}.theme-generation-trace-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.theme-generation-trace-section{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;overflow:hidden}.theme-generation-trace-section summary{cursor:pointer;min-height:38px;color:var(--text-strong);text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:12px;font-weight:800;list-style:none;display:flex}.theme-generation-trace-section summary::-webkit-details-marker{display:none}.theme-generation-trace-section summary:before{content:"+";width:18px;min-width:18px;color:var(--muted);font-weight:900}.theme-generation-trace-section[open] summary{border-bottom:1px solid var(--border)}.theme-generation-trace-section[open] summary:before{content:"-"}.theme-generation-trace-section summary span:first-child{flex:1}.theme-generation-trace-content,.trace-stack{gap:10px;display:grid}.theme-generation-trace-content{padding:10px}.trace-info{color:var(--muted);place-items:center;display:inline-grid}.trace-muted{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.trace-fields{gap:7px;margin:0;display:grid}.trace-fields div{min-width:0}.trace-fields dt,.trace-reference-section h3,.trace-pill-section h3{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.trace-fields dd{color:var(--text-strong);overflow-wrap:anywhere;margin:2px 0 0;font-size:12px}.trace-pill-section,.trace-reference-section{gap:7px;display:grid}.trace-pill-section h3,.trace-reference-section h3{margin:0}.trace-pills{flex-wrap:wrap;gap:5px;display:flex}.trace-reference-grid{grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:8px;display:grid}.trace-reference-card{border:1px solid var(--border);background:var(--surface);border-radius:7px;min-width:0;margin:0;overflow:hidden}.trace-reference-card img,.trace-reference-preview,.trace-reference-placeholder{aspect-ratio:4/5;object-fit:contain;background:var(--surface-muted);width:100%;color:var(--muted);place-items:center;font-size:11px;font-weight:800;display:grid}.trace-reference-card figcaption{border-top:1px solid var(--border);gap:3px;padding:7px;display:grid}.trace-reference-card strong,.trace-reference-card span{color:var(--text-strong);overflow-wrap:anywhere;font-size:10px}.trace-reference-card span{color:var(--muted)}.theme-generation-raw{border:1px solid var(--border);background:var(--surface-alt);max-height:240px;color:var(--text-strong);white-space:pre-wrap;border-radius:7px;margin:0;padding:9px;font-size:11px;line-height:1.45;overflow:auto}.theme-generation-prompt{gap:6px;display:grid}.theme-generation-prompt h3{color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;gap:6px;margin:0;font-size:10px;font-weight:800;display:flex}.theme-generation-prompt h3 span:first-child{min-width:0}.theme-generation-prompt p{border:1px solid var(--border);background:var(--surface-soft);max-height:150px;color:var(--text-strong);white-space:pre-wrap;border-radius:7px;margin:0;padding:9px;font-size:12px;line-height:1.45;overflow:auto}.combination-summary{margin:0}input:disabled,textarea:disabled{background:var(--disabled-bg);color:var(--muted)}.outfit-card.rejected,.imported-shot.rejected,.selected-outfit.rejected{opacity:.6;filter:grayscale(.5)}.outfit-card.rejected{background:var(--surface-alt);border-style:dashed}.rejection-banner{background:var(--danger-bg-soft);border:1px solid var(--danger-border);border-radius:6px;grid-column:1/-1;margin-bottom:12px;padding:10px}.rejection-banner.mini{margin-top:8px;margin-bottom:0;padding:4px 8px}.rejection-banner label{color:var(--danger);text-transform:uppercase;gap:4px;font-size:11px;font-weight:800;display:grid}.rejection-banner input{background:var(--surface);border-color:var(--danger-border)}.mini-button{border:1px solid var(--border);background:var(--surface);min-height:24px;color:var(--text-strong);cursor:pointer;border-radius:4px;padding:0 8px;font-size:11px;font-weight:700}.mini-button.active{border-color:var(--accent);background:var(--surface-selected-soft)}.mini-button.danger.active{border-color:var(--danger-border);background:var(--danger-bg-soft);color:var(--danger)}.shot-editor{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;gap:10px;margin:8px 0;padding:10px;display:grid}.shot-editor label{color:var(--text-strong);text-transform:uppercase;gap:4px;font-size:11px;font-weight:800;display:grid}.shot-editor textarea{min-height:60px;font-size:12px}.shot-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.shot-grid input{padding:4px 8px;font-size:12px}.comment-field-action{margin:8px 0}.comment-field-display{cursor:pointer;border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;margin:8px 0;padding:12px;transition:border-color .15s;position:relative}.comment-field-display:hover{border-color:var(--accent)}.comment-label{color:var(--text-strong);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.comment-text{white-space:pre-wrap;margin:0;font-size:14px}.comment-hint{color:var(--muted);text-transform:uppercase;opacity:0;font-size:10px;font-weight:700;transition:opacity .15s;position:absolute;top:8px;right:10px}.comment-field-display:hover .comment-hint{opacity:1}.comment-field-editor{border:1px solid var(--accent);background:var(--surface);border-radius:8px;gap:8px;margin:8px 0;padding:12px;display:grid}.comment-field-editor label{color:var(--text-strong);text-transform:uppercase;font-size:11px;font-weight:800}.button-row.tight{justify-content:flex-end;gap:6px}.spacer{flex:1}@media (width<=980px){.imported-plan-head{display:grid}.imported-plan-stats{justify-content:flex-start;min-width:0}.combination-layout{grid-template-columns:1fr}.selected-outfit-hero{grid-template-columns:1fr;grid-template-areas:"headline""stats""actions"}.hero-stats{justify-content:flex-start}.theme-block-head{flex-direction:column;align-items:stretch}.theme-block-meta{justify-content:flex-start}}.model-board{gap:1rem;display:grid}.board-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.board-head-title h2{color:var(--text-strong);font-size:var(--text-3xl);letter-spacing:-.02em;margin:.15rem 0 0}.board-summary{font-size:var(--text-base);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0 0;display:flex}.board-summary strong{color:var(--text-strong)}.board-summary-dot{background:var(--border-strong);border-radius:50%;width:3px;height:3px}.board-summary-ready{color:var(--accent);font-weight:600}.board-summary-link{font:inherit;color:var(--notice-text);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.board-summary-link:hover{color:var(--text-strong)}.board-new{flex:none;align-items:center;gap:.4rem;display:inline-flex}.board-filters{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;align-items:center;gap:.75rem 1.1rem;padding:.7rem .85rem;display:flex}.board-search{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--input);min-width:12rem;color:var(--muted);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);flex:15rem;align-items:center;gap:.45rem;padding:0 .6rem;display:flex;position:relative}.board-search:focus-within{border-color:var(--accent);box-shadow:var(--ring-accent)}.board-search input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;flex:1;padding:.42rem 0}.board-search input:focus{outline:none}.board-search input::-webkit-search-cancel-button{display:none}.board-search-clear{background:var(--surface-muted);width:18px;height:18px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.board-search-clear:hover{background:var(--border);color:var(--text-strong)}.board-chips{border:0;align-items:center;gap:.3rem;margin:0;padding:0;display:flex}.board-chips legend{float:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-right:.5rem;padding:0;font-weight:700}.board-chip,.board-toggle{border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--muted);font-size:var(--text-sm);text-transform:capitalize;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);border:1px solid #0000;padding:.24rem .66rem;font-weight:600}.board-chip:hover,.board-toggle:hover{color:var(--text-strong);border-color:var(--border-strong)}.board-chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.board-toggles{gap:.3rem;display:flex}.board-toggle{text-transform:none}.board-toggle.active{background:var(--surface-selected);border-color:var(--accent);color:var(--accent)}.board-sort{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:center;gap:.4rem;margin-left:auto;font-weight:700;display:flex}.board-sort select{text-transform:none;letter-spacing:normal;font-weight:500}.board-result-count{font-size:var(--text-sm);color:var(--muted);margin:0}.board-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--muted);justify-items:center;gap:.75rem;padding:3rem 1rem;display:grid}.board-empty p{margin:0}.board-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:18px;display:grid}.model-plate{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-muted);min-width:0;box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.model-plate:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.model-plate:focus-within{border-color:var(--accent);box-shadow:var(--ring-accent)}.model-plate.inactive .model-plate-image{filter:grayscale();opacity:.55}.model-plate-open{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.model-plate-open:focus-visible{outline:none}.model-plate-frame{aspect-ratio:4/5;background:var(--surface-muted);display:block;position:relative;overflow:hidden}.model-plate-frame:after{content:"";transition:opacity var(--duration-normal) var(--ease-out);pointer-events:none;background:linear-gradient(#060a0e00 0%,#060a0e57 42%,#060a0ee0 100%);position:absolute;inset:40% 0 0}.model-plate-image{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-out);display:block}.model-plate:hover .model-plate-image{transform:scale(1.035)}.model-plate-empty{color:var(--muted);font-size:var(--text-sm);place-content:center;justify-items:center;gap:.4rem;display:grid;position:absolute;inset:0}.model-plate-caption{z-index:1;gap:.3rem;padding:.7rem .75rem;display:grid;position:absolute;bottom:0;left:0;right:0}.model-plate-name{flex-wrap:wrap;align-items:baseline;gap:.4rem;min-width:0;display:flex}.model-plate-code{letter-spacing:.01em;color:#fff;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.82rem;font-weight:700}.model-plate-label{font-size:var(--text-sm);color:#ffffffbd;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.model-plate-label:only-child{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere}.model-plate-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem .5rem;display:flex}.model-plate-facts{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:#ffffffa8;align-items:center;gap:.4rem;font-weight:600;display:flex}.model-plate-fact{align-items:center;gap:.22rem;display:inline-flex}.model-plate-dot{background:#ffffff73;border-radius:50%;width:2px;height:2px}.model-plate-flags{z-index:2;pointer-events:none;flex-wrap:wrap;gap:4px;display:flex;position:absolute;top:8px;left:8px}.model-flag{border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase;background:var(--floating-bg-strong);color:var(--text-strong);align-items:center;gap:.2rem;padding:3px 7px;font-weight:700;display:inline-flex}.model-flag.preferred{color:var(--accent)}.model-flag.muted{color:var(--muted)}.model-plate-readiness{border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;background:var(--floating-bg-strong);align-items:center;gap:.25rem;padding:3px 7px;font-weight:700;display:inline-flex}.model-plate-readiness.ready{color:var(--accent)}.model-plate-readiness.gap,.model-plate-readiness.empty{color:var(--notice-text);background:var(--notice-bg)}.model-plate-download{z-index:3;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--floating-bg-strong);width:32px;height:32px;color:var(--text-strong);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.model-plate:hover .model-plate-download,.model-plate-download:focus-visible{opacity:1}.model-plate-download:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.model-plate-download:disabled{opacity:1;cursor:wait}.model-plate-spinner{animation:.8s linear infinite model-spin}@keyframes model-spin{to{transform:rotate(360deg)}}@media (hover:none){.model-plate-download{opacity:1}}.model-detail-modal{width:min(1240px,100vw - 32px);height:calc(100vh - 48px);max-height:calc(100vh - 48px)}.model-detail-title{min-width:0;font-size:var(--text-xl);flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.model-detail-code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--text-base);border-radius:var(--radius-sm);background:var(--surface-selected);color:var(--accent);padding:2px 7px;font-weight:700}.model-detail-body{min-height:0;overflow:hidden}.model-detail{grid-template-columns:minmax(0,1fr) minmax(320px,384px);height:100%;min-height:0;display:grid}.model-stage{background:radial-gradient(circle at 50% 22%,#22282e 0%,#14181c 62%,#0d1013 100%);grid-template-rows:minmax(0,1fr) auto auto;gap:.6rem;min-width:0;min-height:0;padding:1rem;display:grid}.model-stage-frame{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;overflow:hidden}.model-stage-image{object-fit:contain;border-radius:var(--radius-md);width:auto;max-width:100%;height:auto;max-height:100%;animation:model-stage-in var(--duration-normal) var(--ease-out) both;box-shadow:0 24px 48px -16px #000000b3}@keyframes model-stage-in{0%{opacity:0}to{opacity:1}}.model-stage-empty{color:#ffffff8c;font-size:var(--text-base);text-align:center;justify-items:center;gap:.5rem;margin:0;display:grid}.model-stage-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.model-stage-caption{font-size:var(--text-sm);letter-spacing:.05em;text-transform:uppercase;color:#ffffffb8;align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.model-stage-download{border-radius:var(--radius-pill);color:#ffffffdb;font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);border:1px solid #ffffff38;align-items:center;gap:.35rem;padding:.28rem .7rem;font-weight:600;text-decoration:none;display:inline-flex}.model-stage-download:hover,.model-stage-download:focus-visible{background:#ffffff1f;border-color:#ffffff80}.stage-flip{border-radius:var(--radius-pill);border:1px solid #ffffff38;margin-right:auto;display:inline-flex;overflow:hidden}.stage-flip-side{color:#ffffff9e;font:inherit;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;padding:.28rem .85rem;font-weight:600}.stage-flip-side+.stage-flip-side{border-left:1px solid #ffffff2e}.stage-flip-side:hover:not(:disabled),.stage-flip-side:focus-visible{color:#fff;background:#ffffff1a}.stage-flip-side.on{color:#101010;background:#ffffffeb}.stage-flip-side:disabled{color:#ffffff47;cursor:not-allowed;text-decoration:line-through}.pose-strip{scrollbar-width:thin;gap:.6rem;margin:0;padding:.15rem 0 .35rem;list-style:none;display:flex;overflow-x:auto}.pose-strip>li{flex:none}.pose-strip-loose{border-left:1px dashed #ffffff38;margin-left:.4rem;padding-left:.9rem}.pose-strip-frame{border-radius:var(--radius-md);color:#ffffff9e;cursor:pointer;width:6.6rem;transition:border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:#ffffff0d;border:1px solid #ffffff24;gap:.3rem;padding:0 0 .35rem;display:grid;overflow:hidden}.pose-strip-image{aspect-ratio:4/5;background:#ffffff0a;width:100%;display:block}.pose-strip-image img,.pose-strip-blank{object-fit:cover;width:100%;height:100%;display:block}.pose-strip-blank{background:repeating-linear-gradient(-45deg,#ffffff0d 0 6px,#0000 6px 12px)}.pose-strip-frame:hover{color:#ffffffeb;border-color:#ffffff73}.pose-strip-frame.active{border-color:var(--accent);color:#fff;box-shadow:0 0 0 1px var(--accent)}.pose-strip-views{gap:2px;padding:0 .35rem;display:flex}.pose-strip-bar{height:3px;transition:background var(--duration-fast) var(--ease-out);background:#ffffff52;border-radius:2px;flex:1}.pose-strip-bar.current{background:var(--accent)}.pose-strip-bar.missing{background:0 0;box-shadow:inset 0 0 0 1px #ffffff3d}.pose-strip-bar.unknown{background:#ffffff2e}.pose-strip-label{letter-spacing:.02em;text-wrap:balance;overflow-wrap:anywhere;min-height:2.1em;padding:0 .35rem;font-size:.66rem;font-weight:600;line-height:1.05}@media (prefers-reduced-motion:reduce){.pose-strip-frame,.pose-strip-bar,.stage-flip-side{transition:none}}.model-rail{border-left:1px solid var(--border);background:var(--surface);align-content:start;gap:1rem;min-height:0;padding:1rem 1.1rem 1.5rem;display:grid;overflow-y:auto}.model-rail-heading{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-weight:800}.model-rail-warning{border:1px solid var(--attention-border);border-radius:var(--radius-md);background:var(--notice-bg);color:var(--notice-text);font-size:var(--text-sm);align-items:flex-start;gap:.4rem;margin:0;padding:.55rem .7rem;font-weight:600;display:flex}.model-rail-form,.model-rail-references{gap:.7rem;display:grid}.model-rail-references{border-top:1px solid var(--border);padding-top:1rem}.model-field{gap:.25rem;min-width:0;display:grid}.model-field>span{font-size:var(--text-sm);color:var(--text-strong);font-weight:600}.model-field small{color:var(--muted);font-size:var(--text-xs)}.model-field-row{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.model-field-row>.model-field{flex:6rem}.model-toggle{font-size:var(--text-base);cursor:pointer;align-items:center;gap:.5rem;display:flex}.model-rail-actions{flex-wrap:wrap;gap:.5rem;padding-top:.2rem;display:flex}.model-ref-list,.model-ref-rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.model-ref-group{gap:.35rem;display:grid}.model-ref-group-head{font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:.45rem;margin:0;display:flex}.model-ref-group-name{letter-spacing:.06em;text-transform:uppercase;color:var(--text-strong);font-weight:800}.model-ref-group-count{color:var(--muted)}.model-ref-group-gap,.model-ref-group-ok{align-items:center;gap:.2rem;font-weight:600;display:inline-flex}.model-ref-group-gap{color:var(--notice-text)}.model-ref-group-ok{color:var(--accent)}.model-ref-rows>li{align-items:center;gap:.4rem;display:flex}.model-ref-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);min-width:0;color:var(--text);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);flex:1;align-items:center;gap:.5rem;padding:.25rem .5rem .25rem .25rem;display:flex}.model-ref-row img{object-fit:cover;border-radius:var(--radius-xs);flex:none;width:30px;height:38px}.model-ref-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.model-ref-row:hover{border-color:var(--border-strong);background:var(--surface-hover)}.model-ref-row.selected{border-color:var(--accent);background:var(--surface-selected-soft);color:var(--text-strong);font-weight:600}.model-attach{border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-alt);gap:.5rem;padding:.7rem;display:grid}.model-attach-hint{font-size:var(--text-xs);color:var(--notice-text);margin:0}@media (width<=900px){.model-detail-modal{width:calc(100vw - 16px)}.model-detail{grid-template-rows:minmax(220px,46vh) minmax(0,1fr);grid-template-columns:minmax(0,1fr);overflow-y:auto}.model-rail{border-left:0;border-top:1px solid var(--border);overflow-y:visible}}@media (width<=640px){.board-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.board-sort{margin-left:0}.board-filters{gap:.6rem .8rem}}@media (prefers-reduced-motion:reduce){.model-plate-image,.model-stage-image,.model-plate-spinner{transition:none;animation:none}.model-plate:hover .model-plate-image{transform:none}}.plate-matrix{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.plate-row{border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);gap:.35rem;padding:.55rem .6rem .6rem;display:grid}.plate-row.complete{border-left-color:var(--accent)}.plate-row.partial{border-left-color:var(--notice-text)}.plate-row.empty{border-left-color:var(--border-strong);opacity:.82}.plate-row-head{flex-wrap:wrap;align-items:baseline;gap:.45rem;display:flex}.plate-row-name{color:var(--text-strong);font-weight:700;font-size:var(--text-sm)}.plate-row-spec{font-size:var(--text-xs);color:var(--muted);align-items:center;gap:.35rem;display:inline-flex}.plate-dot{background:var(--border-strong);border-radius:50%;width:3px;height:3px}.plate-row-state{font-size:var(--text-xs);align-items:center;gap:.2rem;margin-left:auto;font-weight:600;display:inline-flex}.plate-row-state.ok{color:var(--accent)}.plate-row-state.gap{color:var(--notice-text)}.plate-row-carries{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.4}.plate-cells{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-top:.2rem;display:grid}.plate-cell{min-width:0;position:relative}.plate-cell-open{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);gap:.25rem;padding:0;display:grid;overflow:hidden}.plate-cell-open img{aspect-ratio:3/4;object-fit:cover;background:var(--surface-alt);width:100%;display:block}.plate-cell-label{font-size:var(--text-xs);color:var(--muted);text-align:left;padding:0 .35rem .3rem}.plate-cell-open:hover{border-color:var(--border-strong);background:var(--surface-hover)}.plate-cell-open.selected{border-color:var(--accent);background:var(--surface-selected-soft)}.plate-cell-open.selected .plate-cell-label{color:var(--text-strong);font-weight:600}.plate-cell.missing{aspect-ratio:3/4;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;place-items:center;gap:.3rem;padding:0;display:grid}.plate-cell.missing:hover:not(:disabled){border-color:var(--accent);color:var(--text-strong)}.plate-cell.missing:disabled{cursor:default;opacity:.6}.plate-cell-slot{place-items:center;display:grid}.plate-cell-remove{opacity:0;transition:opacity var(--duration-fast) var(--ease-out);position:absolute;top:.25rem;right:.25rem}.plate-cell:hover .plate-cell-remove,.plate-cell-remove:focus-visible{opacity:1}.plate-strip{flex-wrap:wrap;gap:.2rem;margin-top:.3rem;display:flex}.plate-chip{border-radius:var(--radius-xs);letter-spacing:.06em;text-transform:uppercase;text-align:center;border:1px solid #0000;min-width:1.6rem;padding:.05rem .28rem;font-size:.62rem;font-weight:700;line-height:1.5}.plate-chip.complete{background:var(--surface-selected-soft);border-color:var(--accent);color:var(--accent)}.plate-chip.partial{border-color:var(--notice-text);color:var(--notice-text)}.plate-chip.empty{border-color:var(--border);color:var(--muted);opacity:.7}.model-loose{border:1px solid var(--notice-text);border-radius:var(--radius-md);background:var(--surface-alt);gap:.4rem;padding:.6rem;display:grid}.model-loose-head{font-size:var(--text-xs);color:var(--notice-text);align-items:center;gap:.3rem;margin:0;font-weight:700;display:inline-flex}.model-loose-note{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.4}.model-rail-hint{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.45}.pose-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.pose-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);position:relative;overflow:hidden}.pose-card.inactive{opacity:.6}.pose-card-button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:96px minmax(0,1fr);gap:.7rem;padding:0;display:grid}.pose-card-frame{background:var(--surface-alt);display:block}.pose-card-image{object-fit:cover;width:100%;height:100%;min-height:150px;display:block}.pose-card-empty{height:100%;min-height:150px;font-size:var(--text-xs);color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:.3rem;padding:.4rem;display:grid}.pose-card-body{align-content:start;gap:.3rem;min-width:0;padding:.7rem .7rem .7rem 0;display:grid}.pose-card-title{color:var(--text-strong);flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.pose-flag{border:1px solid var(--notice-text);border-radius:var(--radius-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--notice-text);align-items:center;gap:.2rem;padding:.05rem .3rem;font-size:.62rem;font-weight:700;display:inline-flex}.pose-card-spec{font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;gap:.6rem;display:flex}.pose-spec-item{align-items:center;gap:.25rem;display:inline-flex}.pose-card-carries{font-size:var(--text-xs);color:var(--muted);line-height:1.4}.pose-card-coverage{font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.15rem;font-weight:600;display:inline-flex}.pose-card-coverage.ok{color:var(--accent)}.pose-card-coverage.gap{color:var(--notice-text)}.pose-card-shortfall{border:1px solid var(--notice-text);border-radius:var(--radius-xs);color:var(--notice-text);padding:.02rem .3rem;font-weight:600}.pose-toggle{font-size:var(--text-sm);align-items:center;gap:.45rem;display:flex}.pose-toggle input{width:auto}@media (width<=640px){.pose-card-button{grid-template-columns:76px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.plate-cell-open,.plate-cell.missing,.plate-cell-remove{transition:none}}.registry-switch{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:4px;margin-bottom:1rem;padding:4px;display:inline-flex}.registry-switch-button{color:var(--muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:7px;padding:.35rem 1rem;font-size:.85rem;font-weight:700}.registry-switch-button:hover{color:var(--text-strong)}.registry-switch-button.active{background:var(--surface);color:var(--text-strong);box-shadow:var(--shadow-xs)}.models-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.models-head .muted-copy{color:var(--muted);margin:.25rem 0 0;font-size:.85rem}.models-matrix{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.model-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.model-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-3px)}.model-card.inactive{opacity:.6}.model-card-button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:stretch;gap:0;padding:0;display:grid}.model-card-button:hover{background:var(--surface-hover)}.model-card-image{aspect-ratio:4/5;object-fit:cover;background:var(--surface-muted);width:100%;transition:transform var(--duration-slow) var(--ease-out);display:block}.model-card:hover .model-card-image{transform:scale(1.03)}.model-card-image.placeholder{color:var(--muted);place-items:center;display:grid}.model-status-badge{z-index:2;text-transform:uppercase;letter-spacing:.04em;background:var(--floating-bg);color:var(--text-strong);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:800;position:absolute;top:8px;right:8px}.model-status-badge.active{color:#2ea043}.model-status-badge.inactive{color:var(--muted)}.model-card-body{gap:6px;min-width:0;padding:12px;display:grid}.model-card-body strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:.95rem}.model-card-meta{color:var(--muted);font-size:.75rem}.model-card-sub{color:var(--muted);overflow-wrap:anywhere;font-size:.75rem;font-style:italic}.models-editor-modal{width:min(640px,96vw)}.models-editor-body{gap:1rem;padding:1.25rem;display:grid;overflow-y:auto}.model-refs{border-top:1px solid var(--border);padding-top:1rem}.model-refs h3{margin:0 0 .5rem}.model-ref-grid{flex-wrap:wrap;gap:.6rem;margin:.5rem 0;display:flex}.model-ref{border:1px solid var(--border);border-radius:.5rem;width:96px;height:96px;position:relative;overflow:hidden}.model-ref.primary{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.model-ref img{object-fit:cover;width:100%;height:100%}.model-ref .primary-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--accent);color:#fff;padding:.1rem .3rem;font-size:.55rem;font-weight:700;position:absolute;bottom:0;left:0}.model-ref .mini-button{padding:.15rem;position:absolute;top:.2rem;right:.2rem}.attach-row{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.attach-row input{flex:1;min-width:12rem}@media (width<=540px){.models-form-grid{grid-template-columns:1fr}}.button-row,.inline-form{align-items:center;display:flex}.eyebrow{color:var(--muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-weight:700}.button-row{flex-wrap:wrap;gap:8px}.metric,.panel,.login-panel{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out)}.metric{padding:16px 16px 14px;position:relative;overflow:hidden}.metric:before{content:"";background:var(--accent);opacity:0;width:3px;height:100%;transition:opacity var(--duration-normal) var(--ease-out);position:absolute;inset:0 auto auto 0}.metric:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.metric:hover:before{opacity:.6}.metric span{color:var(--muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700;display:block}.metric strong{color:var(--text-strong);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:30px;font-weight:600;line-height:1.1;display:block}.inline-stat{color:var(--muted);white-space:nowrap;align-items:baseline;gap:4px;font-size:13px;display:inline-flex}.inline-stat strong{color:var(--text-strong);font-size:15px;line-height:1}.grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.wide{grid-column:1/-1}.panel{box-shadow:var(--shadow-sm);padding:20px}.panel h2{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--text-strong);margin:0 0 14px;font-weight:600}.panel-head-inline{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel-head-inline h2{margin-bottom:4px}.section-head,.detail-toolbar,.plan-head,.session-card-footer,.line,.shot-details{align-items:center;display:flex}.section-head,.detail-toolbar,.plan-head,.session-card-footer{justify-content:space-between;gap:12px}.job-detail-title h2,.job-review-main h2,.generated-review-section h3{color:var(--text-strong);margin:0}.job-id-chip{border:1px solid var(--border);background:var(--surface-muted);min-width:0;max-width:min(100%,300px);color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);border-radius:8px;align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.job-id-chip:hover{border-color:var(--border-strong);background:var(--surface)}.job-id-chip-value{text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all;flex:auto;min-width:0;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;overflow:hidden}.job-review-layout{align-items:flex-start;gap:16px;min-width:0;display:flex}.job-outfit-navigator,.job-review-main{min-width:0}.job-review-main{flex:auto}.job-outfit-navigator{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex:0 0 220px;gap:10px;max-height:calc(100vh - 100px);padding:12px;display:grid;position:sticky;top:84px;overflow:auto}.outfit-nav-list,.review-panel-stack,.generated-review-sections,.generated-inspector-stack,.inspector-stack{gap:12px;display:grid}.job-outfit-navigator .outfit-card{grid-template-rows:94px minmax(0,1fr);min-height:178px}.review-mode .job-outfit-navigator .outfit-card{grid-template-rows:minmax(44px,auto);grid-template-columns:44px minmax(0,1fr);align-items:stretch;min-height:0}.review-mode .job-outfit-navigator .outfit-preview{border-right:1px solid var(--border);border-bottom:0}.review-mode .job-outfit-navigator .outfit-card-body{align-content:center;gap:1px;padding:6px 32px 6px 9px}.review-mode .job-outfit-navigator .outfit-card-pills,.review-mode .job-outfit-navigator .outfit-card-counts{display:none}.review-mode .job-outfit-navigator .outfit-card-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.review-mode .job-outfit-navigator .outfit-card-code{font-size:11px}.outfit-nav-item{min-width:0;display:grid;position:relative}.review-mode .outfit-generated-indicator{min-width:22px;min-height:22px;box-shadow:none;padding:2px 5px;font-size:11px;top:50%;right:6px;transform:translateY(-50%)}.outfit-generated-indicator{z-index:3;border:1px solid var(--success-border);background:var(--success-bg);min-width:28px;min-height:28px;color:var(--success-text);box-shadow:0 2px 8px var(--shadow);border-radius:999px;justify-content:center;align-items:center;padding:4px 7px;font-size:12px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:8px;right:8px}.job-review-main{gap:12px;display:grid}.filter-count{background:var(--surface-muted);min-width:22px;min-height:22px;color:var(--text-strong);border-radius:999px;place-items:center;font-size:11px;display:inline-grid}.generated-review-preview{background:var(--surface-muted);object-fit:cover;width:100%;height:100%;display:block}.generated-review-preview.generation-ghost{place-items:center;display:grid}.generated-preview-modal{width:min(1240px,100vw - 28px);max-width:calc(100vw - 28px);height:calc(100vh - 28px);max-height:calc(100vh - 28px)}.generated-preview-modal .modal-head{grid-template-columns:minmax(0,1fr) auto;display:grid}.generated-preview-modal .modal-head>div{min-width:0}.generated-preview-modal .modal-head h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.generated-preview-modal .icon-button{flex:none}.generated-preview-modal-body{box-sizing:border-box;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:16px;min-height:0;padding:16px;display:grid;overflow:hidden}.generated-preview-modal-frame{place-items:center;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.generated-preview-modal-image{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-muted);object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.generated-preview-modal-image.generation-ghost{width:100%;height:min(520px,100%);display:grid}.generated-preview-modal-nav{z-index:2;pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%)}.generated-preview-modal-nav button{pointer-events:auto;width:44px;min-height:44px;box-shadow:0 8px 20px var(--shadow);padding:0}.generated-preview-flip{z-index:2;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);box-shadow:0 8px 20px var(--shadow);display:inline-flex;position:absolute;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)}.generated-preview-flip-side{color:var(--ink-muted);font:inherit;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;padding:.28rem .85rem;font-weight:600}.generated-preview-flip-side+.generated-preview-flip-side{border-left:1px solid var(--border)}.generated-preview-flip-side:hover:not(:disabled),.generated-preview-flip-side:focus-visible{background:var(--surface-3);color:var(--ink)}.generated-preview-flip-side.on{background:var(--ink);color:var(--surface)}.generated-preview-flip-side:disabled{color:var(--ink-faint);cursor:not-allowed;text-decoration:line-through}.generated-preview-modal-sidepanel{border-left:1px solid var(--border);align-content:start;gap:14px;min-width:0;padding-left:16px;display:grid;overflow:auto}.generated-preview-modal-section{gap:8px;min-width:0;display:grid}.generated-preview-modal-section h3{margin:0;font-size:14px}.generated-preview-modal-list{gap:6px;display:grid}.generated-preview-modal-sidepanel .ref-strip{gap:var(--space-3);flex-direction:column}.qa-reason{gap:var(--space-2);display:grid}.qa-reason-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.qa-reason-item{padding-left:var(--space-2);border-left:2px solid var(--state-blocked-fg);gap:2px;display:grid}.qa-reason-item--review{border-left-color:var(--state-action-fg)}.qa-reason-gate{align-items:baseline;gap:var(--space-2);font-size:var(--text-xs);color:var(--ink);text-transform:capitalize;font-weight:600;display:flex}.qa-reason-verdict{font-weight:500;font-size:var(--text-xs);color:var(--state-blocked-fg)}.qa-reason-item--review .qa-reason-verdict{color:var(--state-action-fg)}.qa-reason-evidence{font-size:var(--text-xs);color:var(--ink-muted);line-height:1.45}.qa-reason-error{font-size:var(--text-xs);color:var(--state-blocked-fg);margin:0}.generated-modal-list-item{border-color:var(--border);background:var(--surface-muted);width:100%;min-width:0;color:var(--text);text-align:left;grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:10px;display:grid}.generated-modal-list-item.active,.generated-modal-list-item:hover{border-color:var(--accent);background:var(--surface-selected-soft)}.generated-modal-list-item span{overflow-wrap:anywhere}.generated-modal-list-copy{gap:6px;min-width:0;display:grid}.generated-modal-list-preview{border:1px solid var(--border);background:var(--surface);object-fit:cover;opacity:.82;border-radius:8px;width:76px;height:88px;display:block;overflow:hidden}.generated-modal-list-item.active .generated-modal-list-preview,.generated-modal-list-item:hover .generated-modal-list-preview{border-color:var(--accent);opacity:.96}.generated-modal-list-preview.generation-ghost{display:grid}.status-unreviewed{background:var(--waiting-bg);color:var(--waiting-text)}.status-needs_work,.status-rejected{background:var(--danger-bg-strong);color:var(--danger)}.status-accepted{background:var(--success-bg);color:var(--success-text)}.job-review-main .outfit-editor{border-left:0;border-top:1px solid var(--border);padding-top:14px;padding-left:0}.session-card,.product-plan-detail,.plan-editor,.notes{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out)}.session-card h3,.product-plan-card strong,.product-plan-detail h3,.theme-block h3,.notes h2{color:var(--text-strong);margin:0}.dossier-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);gap:12px;padding:18px 18px 16px 22px;display:grid;position:relative;overflow:hidden}.dossier-card:before{content:"";background:var(--accent);width:4px;position:absolute;inset:0 auto 0 0}.dossier-card.is-success:before{background:var(--success-text)}.dossier-card.is-danger:before{background:var(--danger-border-strong)}.dossier-card.is-amber:before{background:var(--attention-border)}.dossier-card.is-info:before{background:var(--info-text)}.dossier-card.is-accent:before{background:var(--accent)}.dossier-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-3px)}.dossier-card.is-attention{background:var(--attention-bg);border-color:var(--attention-border)}@keyframes dossier-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.dossier-card:hover{transform:none}}@media (width<=820px){.dossier-masthead{flex-wrap:wrap;gap:10px 16px}.dossier-masthead-rule{flex-basis:100%;order:3}.dossier-scope{order:4}.dossier-grid{grid-template-columns:1fr}}.metric.small{padding:10px}.metric.small strong{font-size:20px}.cost-breakdown-list{gap:6px;display:grid}.cost-breakdown-list>div{color:var(--muted);justify-content:space-between;gap:12px;font-size:13px;display:flex}.cost-breakdown-list strong{color:var(--text-strong);white-space:nowrap;font-size:13px}.product-plan-card small,.product-plan-card span,.theme-head p,.notes li{color:var(--muted)}.product-plan-detail,.plan-editor,.notes{padding:16px}.plan-editor{gap:12px;display:grid}.plan-editor textarea{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:13px}.plan-editor.compact{gap:8px}.raw-plan-editor{border-top:1px solid var(--border);padding-top:10px}.raw-plan-editor summary{cursor:pointer;color:var(--text-strong);font-weight:800}.raw-plan-editor textarea{width:100%;min-height:180px;margin-top:10px}.facts{gap:9px;margin:0;display:grid}.facts div{border-bottom:1px solid var(--border);padding-bottom:8px}.facts dt{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.facts dd{margin:2px 0 0}.annotations{margin-top:14px}.annotations summary{cursor:pointer;color:var(--text-strong);font-weight:800}.theme-block{gap:10px;margin-top:16px;display:grid}.theme-head p{margin:4px 0 0}.shot{border:1px solid var(--border);border-radius:8px;padding:12px}.line,.shot-details{flex-wrap:wrap;gap:8px}.pill{background:var(--surface-muted);min-height:26px;color:var(--text-strong);border-radius:999px;align-items:center;padding:3px 9px;font-size:12px;font-weight:800;display:inline-flex}.pill.strong{background:var(--success-bg);color:var(--success-text)}.why{margin:10px 0}.notes ul{margin:8px 0 0;padding-left:18px}.stack-form{gap:8px;display:grid}.inline-form{flex-wrap:wrap;gap:8px;margin-bottom:14px}.inline-form label{width:100%}label{color:var(--text-strong);font-size:13px;font-weight:700}input,textarea,select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--input);min-height:42px;color:var(--text);font:inherit;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);padding:9px 12px}input:hover,textarea:hover,select:hover{border-color:var(--border-strong)}textarea{resize:vertical;min-height:108px}button,.table-link{border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent);min-height:42px;color:var(--accent-contrast);cursor:pointer;font:inherit;letter-spacing:-.005em;box-shadow:var(--shadow-xs);transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-flex;transform:translateY(0)}button:hover,.table-link:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}button:active,.table-link:active{box-shadow:var(--shadow-xs);transition-duration:60ms;transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}button:disabled:hover{box-shadow:none;transform:none}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.table-link:focus-visible,.tab:focus-visible,.text-link:focus-visible{border-color:var(--accent);box-shadow:var(--ring-accent);outline:0}.secondary,.icon-button{background:var(--surface);color:var(--text-strong);border-color:var(--border)}.secondary:hover,.icon-button:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-strong)}.danger{color:var(--danger);border-color:var(--danger-border);background:var(--danger-bg)}.danger:hover{color:var(--danger-hover);border-color:var(--danger-border-strong);background:var(--danger-bg-strong)}.icon-button{width:44px;padding:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:620px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 8px}th{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}td{font-size:14px}.status{border-radius:var(--radius-pill);background:var(--status-bg);min-height:24px;color:var(--text-strong);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;padding:2px 10px 2px 8px;font-weight:700;display:inline-flex;position:relative}.status:before{content:"";opacity:.7;background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-completed,.status-approved,.status-pass,.status-qa-pass,.status-submitted,.status-available{background:var(--success-bg);color:var(--success-text)}.status-failed,.status-fail,.status-qa-fail{background:var(--danger-bg-strong);color:var(--danger)}.status-running,.status-generating,.status-queued,.status-pending,.status-pending_upload{background:var(--info-bg);color:var(--info-text)}.status-waiting,.status-draft{background:var(--waiting-bg);color:var(--waiting-text)}.status-warning,.status-review,.status-qa-review{background:var(--notice-bg);color:var(--notice-text)}.status-action{min-height:26px;box-shadow:none;cursor:pointer;border:0;border-radius:999px;padding:2px 9px;font-size:12px}.status-action:hover,.status-action[aria-current=page]{background:var(--attention-bg);color:var(--notice-text)}.job-detail{color:var(--muted);overflow-wrap:anywhere;max-width:260px}.cell-subtext{max-width:260px;color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.text-link{min-height:32px;color:var(--accent);overflow-wrap:anywhere;border-radius:4px;align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--accent-hover);text-decoration:underline}.error-text{color:var(--danger)}.generation-preview{aspect-ratio:4/3;border:1px solid var(--border);background:var(--surface-muted);object-fit:cover;border-radius:6px;width:84px;display:block}.muted-copy{color:var(--muted);margin:0 0 14px}.notice,.loading,.field-error{border-radius:6px;margin:0 0 14px;padding:10px 12px}.notice{background:var(--notice-bg);color:var(--notice-text)}.loading{background:var(--loading-bg);color:var(--loading-text);align-items:center;gap:8px;display:inline-flex}.loading svg{animation:.9s linear infinite spin}.field-error{background:var(--danger-bg-strong);color:var(--danger)}.login-screen{background:var(--bg);grid-template-columns:1.05fr 1fr;min-height:100vh;padding:0;display:grid;position:relative;overflow:hidden}.login-screen:before{content:"";background:var(--gradient-brand);pointer-events:none;z-index:0;position:absolute;inset:0}.login-brand-side{z-index:1;background:var(--gradient-brand-strong);color:#f4fffd;align-content:space-between;padding:48px 56px;display:grid;position:relative;overflow:hidden}.login-brand-side:before{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#ffffff2e 0%,#0000 60%);border-radius:50%;width:60%;position:absolute;inset:-20% -10% auto auto}.login-brand-side:after{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#ffffff1a 0%,#0000 60%);border-radius:50%;width:50%;position:absolute;inset:auto auto -10% -10%}.login-brand-mark{z-index:1;font-size:var(--text-lg);letter-spacing:-.01em;color:inherit;align-items:center;gap:12px;width:fit-content;margin:0;font-weight:700;line-height:1.2;display:inline-flex;position:relative}.login-brand-mark .mark-glyph{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff24;border:1px solid #ffffff38;place-items:center;width:40px;height:40px;display:grid}.login-brand-headline{z-index:1;gap:18px;max-width:460px;display:grid;position:relative}.login-brand-headline h2{font-size:var(--text-display);letter-spacing:-.03em;margin:0;font-weight:700;line-height:1.05}.login-brand-headline p{color:#f4fffdc7;font-size:var(--text-lg);max-width:38ch;margin:0;line-height:1.55}.login-brand-meta{z-index:1;border-top:1px solid #ffffff29;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:28px;display:grid;position:relative}.login-brand-meta div{gap:4px;display:grid}.login-brand-meta strong{font-size:var(--text-2xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:700}.login-brand-meta span{color:#f4fffda8;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.login-form-side{z-index:1;place-items:center;padding:32px;display:grid;position:relative}.login-theme-toggle{z-index:2;position:absolute;top:24px;right:24px}.login-panel{width:min(420px,100%);box-shadow:var(--shadow-xl);border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);animation:login-rise .6s var(--ease-out) both;gap:14px;padding:36px 32px;display:grid}.login-panel-eyebrow{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);align-items:center;gap:6px;margin:0;font-weight:700;display:inline-flex}.login-panel-heading{font-size:var(--text-3xl);letter-spacing:-.02em;color:var(--text-strong);margin:0 0 4px;font-weight:700;line-height:1.1}.login-panel-sub{color:var(--muted);font-size:var(--text-md);margin:0 0 12px;line-height:1.5}.login-panel label{margin-bottom:-4px}.login-panel button[type=submit]{min-height:46px;font-size:var(--text-md);margin-top:6px}@keyframes login-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.import-report{gap:14px;display:grid}.import-report.warning{border-color:var(--attention-border);background:var(--attention-bg)}.import-report.embedded{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.import-report-head{align-items:flex-start}.import-report-head h2{color:var(--text-strong);margin:0 0 4px;font-size:17px}.import-report-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.import-report-toggle{min-width:132px}.import-report-summary{grid-template-columns:repeat(3,minmax(110px,1fr));gap:8px;display:grid}.import-report-highlights{border-left:3px solid var(--attention-border);gap:6px;padding-left:12px;display:grid}.import-report-highlights ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.import-report-highlights li{color:var(--muted);grid-template-columns:minmax(116px,max-content) minmax(0,1fr);align-items:start;gap:10px;font-size:13px;display:grid}.import-report-highlights strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:14px}.import-report-highlights span{overflow-wrap:anywhere}.import-report-details,.import-report-failures{gap:8px;display:grid}.import-report-failures h3{color:var(--text-strong);align-items:center;gap:7px;margin:0;font-size:15px;display:inline-flex}.import-report-modal{width:min(960px,100%)}.import-report-modal-body{min-height:0;padding:16px;overflow:auto}.import-report-modal-body .import-report.embedded{border-top:0;margin-top:0;padding-top:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.panel,.session-card,.dossier-card,.metric,.product-plan-detail,.plan-editor,.notes,.generated-review-section,.review-mode-tabs,.tab-action-bar,.review-panel-head,.plan-context-summary{animation:slide-up .36s var(--ease-out) both}@media (width<=960px){.login-screen{grid-template-columns:1fr}.login-brand-side{padding:32px 28px}.login-brand-headline h2{font-size:clamp(28px,6vw,38px)}.login-brand-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.login-brand-meta strong{font-size:var(--text-xl)}}@media (width<=820px){.app-shell{padding:16px 16px 32px}.topbar,.grid-two{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-head,.product-plan-body{grid-template-columns:1fr}.plan-head{flex-direction:column;align-items:stretch}.stats.compact,.session-stats,.import-report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.import-report-head,.import-report-actions{align-items:stretch}.import-report-actions,.import-report-toggle{width:100%}.import-report-highlights li{grid-template-columns:1fr;gap:2px}.job-detail-header{grid-template-columns:minmax(0,1fr);align-items:stretch;position:static}.job-detail-statuses{justify-content:flex-start}.job-review-layout{flex-direction:column}.job-outfit-navigator{flex:none;width:100%;max-height:none;position:static;overflow:visible}.outfit-nav-list{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.review-mode .outfit-nav-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid;overflow-x:visible}.review-mode .job-outfit-navigator .outfit-nav-item{flex:0 auto}.job-outfit-navigator .outfit-nav-item{flex:0 0 176px}.review-filter,.tab-action-bar{flex-direction:column;align-items:stretch}.plan-context-summary{grid-template-columns:minmax(0,1fr)}.plan-context-metrics{justify-content:flex-start}.review-filter button,.tab-action-bar button{width:100%}.review-action-grid{grid-template-columns:1fr}.generated-review-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}.generated-preview-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:calc(100vh - 20px);max-height:calc(100vh - 20px)}.generated-preview-modal-body{grid-template-rows:minmax(220px,1fr) auto;grid-template-columns:minmax(0,1fr);padding:10px;overflow:auto}.generated-preview-modal-frame{max-height:none}.generated-preview-modal-image{max-height:100%}.generated-preview-modal-image.generation-ghost{height:100%;min-height:220px}.generated-preview-modal-sidepanel{border-top:1px solid var(--border);border-left:0;max-height:none;padding-top:10px;padding-left:0}}
