@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.grid{display:grid}.hidden{display:none}.grow{flex-grow:1}.resize{resize:both}.rounded{border-radius:.25rem}.lowercase{text-transform:lowercase}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{color-scheme:dark;--bg: #0b0d10;--panel: #15181d;--panel-2: #1e2329;--line: #2a3038;--muted: #98a2af;--text: #f2f5f8;--soft: #c6ced7;--accent: #25c2a0;--warn: #f2a23a;--danger: #f05252;--shadow: rgb(0 0 0 / .42);--select-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2398a2af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{width:min(1440px,100%);margin:0 auto;padding:22px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}h1{margin:0;font-size:22px;font-weight:650;letter-spacing:0}.subtle{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.top-actions{display:flex;align-items:center;gap:8px}.app-layout{display:grid;grid-template-columns:clamp(280px,22vw,340px) minmax(0,1fr);align-items:start;min-height:100vh}.app-layout.sidebar-closed{grid-template-columns:48px minmax(0,1fr)}.gallery-content{min-width:0}.sidebar{position:sticky;top:0;z-index:4;display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;min-height:0;overflow:hidden;border-right:1px solid var(--line);background:#101419}.sidebar.collapsed{grid-template-rows:minmax(0,1fr);background:#0f1318}.sidebar-rail{display:flex;justify-content:center;min-height:0;padding:10px 7px}.sidebar-rail-button{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;width:32px;min-height:96px;border:1px solid var(--line);border-radius:6px;background:#15181d;color:var(--text);font-size:12px;font-weight:650;line-height:1}.sidebar-rail-label{text-orientation:mixed;writing-mode:vertical-rl}.sidebar-rail-button:hover,.sidebar-rail-button:focus-visible{border-color:#4a5564;outline:none}.sidebar-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;border-bottom:1px solid var(--line);background:linear-gradient(#171c22,#101419);padding:12px}.sidebar-header>div:first-child{min-width:0}.sidebar-title{margin:0;font-size:14px;font-weight:650;letter-spacing:0}.sidebar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.sidebar-body{min-height:0;overflow:auto;padding:10px}.sidebar-toggle{min-height:32px;padding-inline:10px;font-size:12px}.button-icon{flex:0 0 auto;color:currentColor}.toolbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,220px) minmax(150px,220px) minmax(130px,180px) minmax(118px,150px) auto;gap:8px;align-items:center;margin-bottom:18px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.jobs-panel{display:grid;gap:10px;margin-bottom:18px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:10px}.sidebar .jobs-panel{margin-bottom:0;border:0;background:transparent;padding:0}.jobs-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.jobs-panel.compact .jobs-header{display:none}.jobs-title{margin:0;font-size:13px;font-weight:650;letter-spacing:0}.jobs-list{display:grid;gap:8px}.jobs-empty{border:1px dashed #33404a;border-radius:6px;color:var(--muted);padding:12px;font-size:12px;line-height:1.35}.job-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start;border:1px solid var(--line);border-radius:6px;background:#0d1014;padding:10px}.jobs-panel.compact .job-row{grid-template-columns:minmax(0,1fr)}.job-main{min-width:0}.job-title,.job-meta,.job-progress-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-title{font-size:13px;font-weight:650}.job-meta,.job-progress-text,.job-error{color:var(--muted);font-size:11px}.job-meta,.job-progress-text{margin-top:4px}.job-error{margin-top:4px;color:#ff9a9a;white-space:pre-wrap;word-break:break-word}.job-pill{min-width:74px;border:1px solid var(--line);border-radius:999px;color:var(--muted);padding:4px 8px;text-align:center;font-size:11px;font-weight:650;text-transform:capitalize}.job-pill.running{border-color:#1f6f5f;color:#8ff0d2}.job-pill.queued{border-color:#6c5528;color:#ffd38a}.job-pill.succeeded{border-color:#1f6f3a;color:#8fe0a0}.job-pill.failed{border-color:#7a2f2f;color:#ff9a9a}.job-side{display:grid;justify-items:end;gap:6px}.jobs-panel.compact .job-side{display:flex;flex-wrap:wrap;align-items:center}.job-percent{color:var(--text);font-size:18px;font-weight:700;line-height:1}.job-retry{min-height:30px;padding:0 12px;font-size:12px}.jobs-panel.compact .job-retry{min-height:28px}.progress-bar{grid-column:1 / -1;height:4px;overflow:hidden;border-radius:999px;background:#050607}.progress-fill{height:100%;width:0;border-radius:inherit;background:var(--accent)}.progress-bar.indeterminate .progress-fill{width:38%;animation:progress-indeterminate 1.2s ease-in-out infinite}.generation-progress .progress-bar{grid-column:auto;height:6px}.input,.select,.textarea{width:100%;min-width:0;min-height:36px;border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--text);outline:none;padding:8px 10px;font-size:13px;line-height:1.35}.textarea{min-height:96px;line-height:1.45;resize:vertical}.select{appearance:none;padding-right:40px;background:var(--select-caret) right 12px center / 16px 16px no-repeat,linear-gradient(90deg,transparent calc(100% - 38px),#12161b calc(100% - 38px)),#0d1014;cursor:pointer}.select:hover{border-color:#4a5564}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.select:focus{box-shadow:0 0 0 2px #25c2a029}.select:disabled{cursor:not-allowed;opacity:.6}@media(forced-colors:active){.select{appearance:auto;padding-right:10px;background:#0d1014}}.segments{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:6px;background:#0d1014}.segment{min-height:28px;border:0;border-radius:4px;background:transparent;color:var(--muted);padding:0 10px;font-size:12px}.segment.active{background:var(--panel-2);color:var(--text)}.selected-tags,.track-presets,.refinement-presets,.benchmark-lane-presets,.curation-tag-groups,.lora-readiness-presets,.review-queue-presets{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.track-presets{padding-top:2px}.refinement-presets,.benchmark-lane-presets,.curation-tag-groups,.lora-readiness-presets,.review-queue-presets{padding-top:0}.curation-tag-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.curation-tag-group{display:grid;min-width:0;gap:6px;border:1px solid #26313b;border-radius:6px;background:#0d1014;padding:8px}.curation-tag-heading{display:flex;min-width:0;align-items:center;gap:6px;color:var(--soft);font-size:11px;font-weight:650}.curation-tag-heading span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.curation-tag-list{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.curation-tag{min-height:26px;max-width:100%;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:#101419;color:var(--muted);padding:0 8px;font-size:11px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.curation-tag.active{border-color:#2c7590;background:#10222a;color:#bdefff}.curation-tag:hover,.curation-tag:focus-visible{border-color:#4a5564;outline:none}.track-preset,.refinement-preset,.benchmark-lane-preset,.lora-readiness-preset,.review-queue-preset{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;max-width:min(100%,180px);border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--soft);padding:0 10px;font-size:12px}.track-preset{max-width:min(100%,210px)}.refinement-preset{min-height:28px;max-width:min(100%,160px);background:#101419;color:var(--muted)}.benchmark-lane-preset{min-height:28px;max-width:min(100%,220px);border-color:#30495b;background:#0f171d;color:#bddced}.lora-readiness-preset{min-height:28px;max-width:min(100%,280px);border-color:#51462a;background:#17140d;color:#f0d99b}.review-queue-preset{min-height:28px;max-width:min(100%,240px);border-color:#513a3a;background:#171111;color:#e7c2c2}.track-preset span,.refinement-preset span,.benchmark-lane-preset span,.lora-readiness-preset span,.review-queue-preset span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-preset.active{border-color:#1f6f5f;background:#12231f;color:#9debd7}.refinement-preset.active{border-color:#8d7442;background:#221d12;color:#f2d590}.benchmark-lane-preset.active{border-color:#2c7590;background:#10222a;color:#bdefff}.lora-readiness-preset.ready{border-color:#2f7458;background:#102018;color:#9debc5}.lora-readiness-preset.needs-review{border-color:#8c7441;background:#211b10;color:#f0d99b}.lora-readiness-preset.not-ready{border-color:#7c4040;background:#211111;color:#efc1c1}.lora-readiness-preset.active{box-shadow:inset 0 0 0 1px currentColor}.review-queue-preset.active{border-color:#8f4949;background:#2a1515;color:#ffd0d0}.track-preset:hover,.track-preset:focus-visible,.refinement-preset:hover,.refinement-preset:focus-visible,.benchmark-lane-preset:hover,.benchmark-lane-preset:focus-visible,.lora-readiness-preset:hover,.lora-readiness-preset:focus-visible,.review-queue-preset:hover,.review-queue-preset:focus-visible{border-color:#4a5564;outline:none}.tag-filter-chip,.tag-filter-clear{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;background:#101419;color:var(--soft)}.tag-filter-chip{max-width:min(100%,300px);gap:6px;min-height:28px;padding:0 8px;font-size:12px}.tag-filter-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-filter-clear{width:28px;height:28px;padding:0}.tag-filter-chip:hover,.tag-filter-chip:focus-visible,.tag-filter-clear:hover,.tag-filter-clear:focus-visible{border-color:#4a5564;outline:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.grid[data-size=compact]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.grid[data-size=medium]{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.grid[data-size=large]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.grid[data-size=xl]{grid-template-columns:repeat(auto-fill,minmax(460px,1fr));gap:16px}.card{position:relative;display:block;width:100%;min-height:190px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:inherit;text-align:left}.card.card-popover-open{z-index:6;overflow:visible}.card:hover,.card:focus-within{border-color:#4a5564;outline:none}.card-button{display:block;width:100%;min-height:190px;border:0;background:transparent;color:inherit;padding:0;text-align:left}.card-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.card-action{position:absolute;top:8px;right:8px;z-index:2;min-height:28px;border:1px solid rgb(255 255 255 / .18);border-radius:6px;background:#080a0dd1;color:var(--text);padding:0 9px;font-size:12px;font-weight:650;backdrop-filter:blur(8px)}.card-action:hover,.card-action:focus-visible{border-color:var(--accent);outline:none}.feedback-controls{position:relative;display:inline-flex;align-items:flex-start;color:var(--text)}.feedback-card{position:absolute;top:8px;left:8px;z-index:3}.feedback-detail{flex:0 0 auto}.feedback-buttons{display:inline-flex;gap:4px;padding:3px;border:1px solid rgb(255 255 255 / .14);border-radius:6px;background:#080a0dd1;backdrop-filter:blur(8px)}.feedback-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:26px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--soft);padding:0}.feedback-button:hover,.feedback-button:focus-visible{border-color:#4a5564;color:var(--text);outline:none}.feedback-button.active.good{border-color:#1f9f85;background:#123f37;color:#8ff0d2}.feedback-button.active.keeper{border-color:#a86d08;background:#3b2708;color:#ffd166}.feedback-button.active.bad{border-color:#7a2f2f;background:#3a1719;color:#ffb5b5}.feedback-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:12;display:grid;gap:8px;width:min(340px,calc(100vw - 32px));border:1px solid var(--line);border-radius:8px;background:#101419;box-shadow:0 18px 42px var(--shadow);padding:10px}.feedback-popover.align-right{right:0;left:auto}.feedback-popover-floating{position:fixed;right:auto;z-index:1200}.feedback-popover-floating.align-right{right:auto}.feedback-note{min-height:82px;font-size:12px}.feedback-quick-tags{display:flex;flex-wrap:wrap;gap:4px}.feedback-chip{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;line-height:1.2;letter-spacing:.01em;cursor:pointer;border:1px solid var(--line);background:#1a2129;color:var(--ink);transition:background-color .12s ease,border-color .12s ease,color .12s ease}.feedback-chip:hover:not(:disabled){border-color:#4a5564;background:#232b35}.feedback-chip:disabled{opacity:.5;cursor:not-allowed}.feedback-chip.positive{border-color:#5ed38473;color:#b2e8c3}.feedback-chip.positive:hover:not(:disabled){background:#5ed38426;border-color:#5ed384bf}.feedback-chip.negative{border-color:#e86d6d73;color:#f1b2b2}.feedback-chip.negative:hover:not(:disabled){background:#e86d6d26;border-color:#e86d6dbf}.feedback-error{color:#ffb5b5;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.feedback-popover-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.feedback-popover-actions .button{min-height:30px;padding:0 8px;font-size:12px}.thumb{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#050607}.missing{display:grid;width:100%;aspect-ratio:1;place-items:center;color:var(--danger);font-size:12px}.card-meta{position:absolute;inset-inline:0;bottom:0;padding:34px 10px 10px;background:linear-gradient(transparent,#000000d6)}.card-title,.card-subtitle,.card-prompt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-title{font-size:12px;font-weight:650}.card-subtitle,.card-prompt,.card-cost,.card-quality{margin-top:3px;color:var(--soft);font-size:11px}.card-prompt{color:var(--muted)}.card-cost{color:var(--accent);font-weight:650}.card-quality{display:inline-flex;align-items:center;gap:6px;max-width:100%;overflow:hidden;border:1px solid #34404d;border-radius:5px;background:#0d1014cc;padding:2px 6px;color:var(--soft);font-weight:650}.card-quality span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-quality span:first-child{flex:0 0 auto;text-transform:capitalize}.card-quality.passed{border-color:#1f6f3a;color:#9be7aa}.card-quality.rejected{border-color:#7a3a2f;color:#ffb79d}.card-quality.unchecked{border-color:#6c5528;color:#ffd38a}.card-tags{display:flex;gap:4px;margin-top:6px;overflow:hidden}.card-tag{min-width:0;max-width:120px;overflow:hidden;border:1px solid rgb(255 255 255 / .2);border-radius:4px;padding:2px 5px;color:var(--ink);font-size:10px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.card-cost.estimated{color:var(--warn)}.message{display:grid;min-height:220px;place-items:center;color:var(--muted)}.load-more{display:flex;justify-content:center;margin:18px 0 8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;max-width:100%;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);padding:0 14px;line-height:1.2;text-align:center;white-space:nowrap}.button:hover{border-color:#4a5564}.button.primary{border-color:#1f9f85;background:#127a67}.button.secondary{background:#0d1014}.button:disabled{cursor:not-allowed;opacity:.55}.modal{position:fixed;inset:0;z-index:20;display:none;background:#000000e6;padding:24px;backdrop-filter:blur(2px)}.modal.open{display:flex;align-items:center;justify-content:center;animation:modal-backdrop-in .16s ease-out}.composer{position:fixed;inset:0;z-index:30;display:none;justify-content:end;background:#000000a8;backdrop-filter:blur(2px)}.composer.open{display:flex}.composer-panel{display:flex;flex-direction:column;gap:0;width:min(760px,calc(100vw - 24px));height:100%;overflow:auto;border-left:1px solid var(--line);background:#12161b;box-shadow:-24px 0 48px var(--shadow);padding:0}.composer-header,.assistant-header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;border-bottom:1px solid var(--line);background:linear-gradient(#171c22,#12161b);padding:18px 20px}.composer-header>div:first-child,.assistant-header>div:first-child{min-width:0}.composer-title,.assistant-title{margin:0;font-size:18px;font-weight:650;letter-spacing:0;line-height:1.2}.composer-header .subtle,.assistant-header .subtle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-panel>.form-grid{padding:18px 20px 0}.composer-panel>.form-grid .textarea{min-height:76px}.composer-panel>details{margin:14px 20px 0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#0f1318}.composer-panel>details summary{padding:10px 12px}.composer-panel>details[open] summary{border-bottom:1px solid var(--line)}.composer-panel>details .advanced-editor{width:calc(100% - 24px);margin:12px}.composer-panel>.notice,.composer-panel>.status,.composer-panel>.generation-progress{margin:14px 20px 0}.generation-progress{display:grid;gap:8px;border:1px solid var(--line);border-radius:6px;background:#0d1014;padding:10px}.generation-progress-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:baseline}.generation-percent{color:var(--text);font-size:24px;font-weight:750;line-height:1}.generation-progress-message{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.composer-footer{position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;border-top:1px solid var(--line);background:linear-gradient(#12161beb,#12161b);box-shadow:0 -16px 24px #0000003d;padding:14px 20px}.composer-footer .button{flex:1 1 160px}.detail-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px;min-width:0}.detail-actions .button,.detail-actions .close{white-space:nowrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:5px;min-width:0}.field span{color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;line-height:1.25;text-transform:uppercase}.span-2{grid-column:1 / -1}.advanced-editor{min-height:190px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.source-editor{display:grid;gap:10px}.source-dropzone{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px;align-items:stretch;width:100%;min-height:118px;border:1px solid #31414a;border-radius:8px;background:#0b1014;color:var(--text);padding:10px;text-align:left;cursor:pointer}.source-dropzone:hover,.source-dropzone:focus-visible,.source-dropzone.is-dragging{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #25c2a024}.source-dropzone.has-source{border-color:#2c6e61;background:#0a1213}.source-dropzone.is-busy{cursor:progress;opacity:.78}.source-preview{position:relative;display:grid;min-height:96px;overflow:hidden;place-items:center;border:1px solid var(--line);border-radius:6px;background:#080a0d;color:var(--muted);font-size:11px;line-height:1.3;text-align:center}.source-preview:before{content:"IMG";display:grid;width:42px;height:42px;place-items:center;border:1px solid #2c3942;border-radius:6px;color:#7f8c99;font-size:11px;font-weight:750;letter-spacing:.08em}.source-preview:has(img):before{display:none}.source-preview img{display:block;width:100%;height:100%;object-fit:contain}.source-meta{display:grid;min-width:0;align-content:center;gap:7px}.source-title{overflow:hidden;color:var(--text);font-size:14px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.source-subtitle,.source-path-chip{color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.source-path-chip{display:inline-flex;max-width:100%;width:fit-content;border:1px solid var(--line);border-radius:999px;background:#11181d;color:var(--soft);padding:4px 8px}.source-inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.source-inline-actions .button{min-height:32px;padding-inline:12px}.source-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-content:start}.source-path-input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.mask-editor{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:#0b1014;padding:10px}.mask-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:10px;align-items:center}.mask-mode{width:fit-content}.mask-size-control{display:grid;grid-template-columns:auto minmax(90px,1fr) 48px;gap:8px;align-items:center;min-width:0;color:var(--muted);font-size:12px}.mask-size-control input{min-width:0}.mask-size-control span{color:var(--soft);font-size:12px;font-weight:650;line-height:1;text-align:right;text-transform:none}.mask-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.mask-actions .button,.mask-mode .segment{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px}.mask-canvas-shell{position:relative;display:grid;width:100%;aspect-ratio:4 / 3;min-height:360px;max-height:min(62vh,720px);overflow:hidden;place-items:center;border:1px solid #31414a;border-radius:6px;background:#050607;touch-action:none}.mask-canvas-shell.disabled{border-style:dashed}.mask-canvas-shell.has-source{min-height:0}.mask-source-image,.mask-canvas{position:absolute;inset:0;width:100%;height:100%}.mask-canvas{opacity:.46;cursor:crosshair}.mask-empty{z-index:1;border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--muted);padding:10px 12px;font-size:12px}.mask-path-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.notice,.status{border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--soft);padding:9px 10px;font-size:12px;line-height:1.4}.notice{color:var(--warn)}.status.error{border-color:#6f2b2b;color:#ffb5b5}.status.success{border-color:#1f6f5f;color:#8ff0d2}.modal-body{display:grid;grid-template-columns:minmax(0,1fr) clamp(420px,28vw,600px);gap:16px;width:min(1900px,calc(100vw - 48px));height:calc(100vh - 48px);overflow:hidden}.preview,.details{min-height:0;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#080a0d}.preview{display:flex;align-items:center;justify-content:center;contain:layout paint;overflow:hidden;padding:clamp(8px,1.1vw,16px)}.preview img,.preview video{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;contain:layout paint;object-fit:contain}.details{display:flex;flex-direction:column;background:#12161b;overflow:hidden;padding:0}.detail-top{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;flex-shrink:0;margin:0;border-bottom:1px solid var(--line);background:linear-gradient(#171c22,#12161b);padding:14px 16px}.detail-top>div:first-child{display:grid;gap:4px;min-width:0}.detail-top .subtle{margin:0;font-size:12px}.detail-content{min-height:0;overflow:auto;padding:2px 16px 16px}.detail-content>.section:first-child{border-top:0;margin-top:0}.detail-title{margin:0;font-size:15px;font-weight:650;letter-spacing:0;line-height:1.25;overflow-wrap:anywhere}.close{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--muted);padding:6px 10px;line-height:1.2;white-space:nowrap}.section{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.section h3{margin:0 0 8px;color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;line-height:1.25;text-transform:uppercase}.text-block{margin:0;color:var(--text);font-size:13px;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.kv{display:grid;grid-template-columns:110px minmax(0,1fr);gap:7px 12px;margin:0;font-size:12px;line-height:1.35}.kv dt{color:var(--muted)}.kv dd{margin:0;color:var(--soft);overflow-wrap:anywhere}pre{max-height:min(420px,44vh);overflow:auto;margin:0;border:1px solid var(--line);border-radius:6px;background:#0d1014;color:var(--soft);padding:10px;font-size:11px;line-height:1.45;overflow-wrap:anywhere;tab-size:2;white-space:pre-wrap}details summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}details pre{margin-top:8px}.detail-content>details{margin-top:14px}.models{display:grid;gap:6px}.model-row{display:grid;grid-template-columns:minmax(72px,.32fr) minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:8px;font-size:11px;line-height:1.3;min-width:0}.model-role,.model-status{color:var(--muted)}.model-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-status.present{color:var(--accent)}.model-status.missing{color:var(--warn)}.input-list{display:grid;gap:8px}.input-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:stretch;border:1px solid var(--line);border-radius:6px;padding:8px}.input-thumb{display:grid;min-height:82px;overflow:hidden;place-items:center;border-radius:4px;background:#080a0d;color:var(--muted);font-size:11px}.input-thumb img{width:100%;height:100%;object-fit:contain}.input-meta{min-width:0;font-size:12px;line-height:1.4}.frame-picker{display:grid;gap:10px}.frame-picker-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.frame-picker input[type=range]{width:100%;min-width:0}.frame-time{min-width:64px;color:var(--soft);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;text-align:right}.frame-picker-actions{display:flex;flex-wrap:wrap;gap:8px}@keyframes modal-backdrop-in{0%{background:#0000;backdrop-filter:blur(0)}}@keyframes lightbox-in{0%{opacity:0;transform:translateY(10px) scale(.985)}}@keyframes media-focus-in{0%{opacity:.58;transform:scale(.992)}}@keyframes progress-indeterminate{0%{transform:translate(-120%)}to{transform:translate(280%)}}@media(max-width:860px){.shell,.modal{padding:14px}.topbar{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.top-actions .button{flex:1 1 0}.toolbar,.job-row{grid-template-columns:1fr}.job-pill{justify-self:start}.job-side{justify-items:start}.modal-body{grid-template-columns:1fr;grid-template-rows:minmax(0,.56fr) minmax(230px,.44fr);height:calc(100vh - 28px);width:calc(100vw - 28px);gap:10px}.preview img,.preview video{max-height:100%}.detail-top{grid-template-columns:1fr;padding:12px}.detail-actions{justify-content:flex-start}.detail-actions .button,.detail-actions .close{flex:1 1 140px}.composer-panel{border-left:0;width:100%}.composer-header,.assistant-header{grid-template-columns:1fr;padding:14px}.composer-header .close,.assistant-header .close{justify-self:start}.composer-panel>.form-grid{padding:14px 14px 0}.composer-panel>details,.composer-panel>.notice,.composer-panel>.status{margin-right:14px;margin-left:14px}.composer-footer{padding:12px 14px}.composer-footer .button{flex-basis:100%}.form-grid,.source-dropzone,.source-controls,.mask-toolbar,.mask-path-row{grid-template-columns:1fr}.mask-actions{justify-content:stretch}.mask-actions .button{flex:1 1 120px}.mask-canvas-shell{min-height:300px}.frame-picker-controls{grid-template-columns:1fr}.frame-time{text-align:left}}@media(prefers-reduced-motion:reduce){.modal.open,.modal-body,.preview img,.preview video,.progress-bar.indeterminate .progress-fill{animation:none}}.assistant{position:fixed;inset:0;z-index:30;display:none;justify-content:end;background:#000000a8;backdrop-filter:blur(2px)}.assistant.open{display:flex}.assistant-panel{display:flex;flex-direction:column;width:min(680px,calc(100vw - 24px));height:100%;border-left:1px solid var(--line);background:#12161b;box-shadow:-24px 0 48px var(--shadow)}.assistant-body{display:grid;align-content:start;gap:14px;min-height:0;overflow:auto;padding:18px 20px}.assistant-body code{border-radius:4px;background:#0d1014;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.assistant-turn{display:grid;gap:8px}.assistant-user{justify-self:start;max-width:92%;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);padding:8px 11px;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.assistant-proposal,.assistant-edit{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:#0d1014;padding:12px}.assistant-field{display:grid;gap:4px}.assistant-field span{color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.assistant-text{margin:0;color:var(--text);font-size:13px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}.assistant-rationale{margin:0;color:var(--muted);font-size:12px;font-style:italic;line-height:1.4}.assistant-actions{display:flex;flex-wrap:wrap;gap:8px}.assistant-actions .button{flex:1 1 130px}.assistant-note .textarea{min-height:54px}.assistant-empty{border:1px dashed #33404a;border-radius:8px;color:var(--muted);padding:16px;font-size:13px;line-height:1.45;text-align:center}.assistant-thinking{color:var(--muted);font-size:12px}.assistant-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;border-top:1px solid var(--line);background:linear-gradient(#12161beb,#12161b);padding:14px 20px}.assistant-composer .textarea{min-height:58px}.assistant-composer .button{align-self:stretch;padding-inline:20px}@media(max-width:860px){.assistant-panel{width:100%;border-left:0}.assistant-actions .button{flex-basis:100%}}.identity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.identity-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:16px;transition:border-color .15s}.identity-card:hover{border-color:var(--accent)}.identity-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.identity-card-title{margin:0;font-size:14px;font-weight:650}.identity-card-token{font-size:11px;color:var(--accent);font-family:monospace}.identity-card-body{flex:1}.identity-card-detail{margin:0 0 4px;font-size:12px;color:var(--soft);line-height:1.4}.identity-card-notes{margin:6px 0 0;font-size:11px;color:var(--muted);line-height:1.35}.identity-card-badges{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.identity-badge{font-size:10px;padding:1px 6px;border-radius:6px;background:var(--bg);color:var(--muted);border:1px solid var(--line)}.identity-badge-spec{color:var(--accent);border-color:var(--accent);background:#25c2a014}.identity-card-actions{display:flex;gap:6px;align-items:center}.identity-card-actions .button{padding:5px 10px;font-size:12px}.danger-hover:hover{border-color:var(--danger);color:var(--danger)}.identity-empty{text-align:center;padding:48px 24px;color:var(--muted)}.identity-error{color:var(--danger);font-size:13px;padding:8px 12px;border:1px solid var(--danger);border-radius:6px;background:#f0525214;margin-bottom:14px}.identity-builder-layout{display:grid;grid-template-columns:3fr 2fr;gap:24px;margin-top:14px}@media(max-width:960px){.identity-builder-layout{grid-template-columns:1fr}}.identity-builder-form{display:flex;flex-direction:column;gap:14px}.identity-meta-fields{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.identity-builder-preview{position:sticky;top:22px;align-self:start}.identity-builder-stats{margin-top:10px;font-size:12px;color:var(--muted)}.identity-builder-stats p{margin:0}.identity-builder-total{margin-top:4px;color:var(--accent);font-weight:500}.cli-commands{margin-top:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);overflow:hidden}.cli-commands-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:transparent;color:var(--muted);font-size:12px;font-weight:600;text-align:left}.cli-commands-toggle:hover{color:var(--text);background:#ffffff08}.cli-commands-list{display:flex;flex-direction:column;gap:1px;background:var(--line);border-top:1px solid var(--line)}.cli-command-row{padding:10px 14px;background:var(--panel)}.cli-command-info{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.cli-command-label{font-size:12px;font-weight:600;color:var(--text)}.cli-command-desc{font-size:11px;color:var(--muted)}.cli-command-code{display:flex;align-items:center;gap:8px;background:#0d1014;border:1px solid var(--line);border-radius:4px;padding:6px 10px}.cli-command-code code{flex:1;font-size:11px;color:var(--accent);word-break:break-all;line-height:1.4}.cli-command-copy{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:none;background:transparent;color:var(--muted);font-size:10px;border-radius:4px}.cli-command-copy:hover{color:var(--text);background:#ffffff0f}.training-panel{margin-top:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:14px}.training-panel h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text)}.training-panel h4{display:flex;align-items:center;gap:6px;margin:12px 0 6px;font-size:12px;font-weight:600;color:var(--text)}.training-status-badge{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;background:#ffffff08;margin-bottom:12px}.training-status-text{font-size:13px;font-weight:600}.training-status-text.ready{color:var(--success, #4ade80)}.training-status-text.needs-review{color:var(--warning, #fbbf24)}.training-status-text.not-ready{color:var(--muted)}.status-icon-ready{color:var(--success, #4ade80)}.status-icon-warning{color:var(--warning, #fbbf24)}.status-icon-blocked{color:var(--muted)}.training-lifecycle{display:flex;gap:0;margin-bottom:12px;position:relative}.lifecycle-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;position:relative;font-size:10px;color:var(--muted);text-align:center}.lifecycle-step.complete{color:var(--accent)}.lifecycle-step.current{color:var(--text);font-weight:600}.lifecycle-dot{width:10px;height:10px;border-radius:50%;background:var(--line);border:2px solid var(--line);position:relative;z-index:1}.lifecycle-step.complete .lifecycle-dot{background:var(--accent);border-color:var(--accent)}.lifecycle-step.current .lifecycle-dot{background:var(--text);border-color:var(--text);box-shadow:0 0 0 3px #ffffff1a}.lifecycle-step:not(:last-child):after{content:"";position:absolute;top:5px;left:calc(50% + 7px);right:calc(-50% + 7px);height:2px;background:var(--line);z-index:0}.lifecycle-step.complete:not(:last-child):after{background:var(--accent)}.training-metrics{display:flex;flex-direction:column;gap:6px}.training-progress-row{display:flex;align-items:center;gap:8px}.training-progress-label{flex:0 0 110px;font-size:11px;color:var(--muted)}.training-progress-bar{flex:1;height:6px;background:var(--line);border-radius:3px;overflow:hidden}.training-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}.training-progress-fill.met{background:var(--success, #4ade80)}.training-progress-count{flex:0 0 40px;font-size:11px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.training-progress-count.met{color:var(--success, #4ade80)}.training-blockers{margin-top:8px}.training-blockers ul,.training-recommendations ul{margin:0;padding-left:16px;font-size:11px;color:var(--muted);line-height:1.5}.training-blockers li{color:var(--warning, #fbbf24)}.training-commands{margin-top:8px}.training-commands .cli-command-row{padding:8px 0;background:transparent}.training-commands .cli-command-code{margin-top:4px}.training-error{color:var(--danger);font-size:12px}.training-refresh{margin-top:10px;width:100%}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.topbar-left{display:flex;align-items:center;gap:12px}.identity-status-error{color:var(--danger);font-size:13px}.identity-status-success{color:var(--accent);font-size:13px}.identity-status-dirty{color:var(--soft);font-size:12px;font-style:italic}.field-error{color:var(--danger);font-size:12px;margin-top:-2px}.identity-form{display:flex;flex-direction:column;gap:12px}.identity-accordion-bar{display:flex;justify-content:flex-end}.identity-accordion-toggle-all{border:none;background:none;color:var(--accent);font-size:11px;padding:0;cursor:pointer}.identity-accordion-toggle-all:hover{text-decoration:underline}.identity-accordion{border:1px solid var(--line);border-radius:8px;background:var(--panel);overflow:hidden}.identity-accordion.open{border-color:#3a4550}.identity-accordion-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:transparent;color:var(--text);font-size:13px;font-weight:650;cursor:pointer;text-align:left}.identity-accordion-header:hover{background:#ffffff08}.identity-accordion-chevron{flex:0 0 auto;color:var(--muted);font-size:12px;line-height:1}.identity-accordion-label{flex:1}.identity-accordion-body{border-top:1px solid var(--line);padding:14px}.form-section{display:flex;flex-direction:column;gap:10px}.field-row{display:flex;flex-direction:column;gap:4px}.field-label{font-size:12px;font-weight:550;color:var(--soft)}.prompt-preview{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:16px}.prompt-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.prompt-preview-copy{font-size:11px;padding:3px 8px}.prompt-preview-title{margin:0;font-size:13px;font-weight:650;display:flex;align-items:center;gap:8px}.prompt-preview-loading{font-size:11px;color:var(--muted);font-weight:400}.prompt-preview-error{color:var(--danger);font-size:12px;margin:0 0 8px}.prompt-preview-block{margin-bottom:12px}.prompt-preview-block:last-child{margin-bottom:0}.prompt-preview-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:8px;margin-bottom:4px}.prompt-preview-word-count{font-weight:400;text-transform:none;letter-spacing:normal;font-size:11px;color:var(--accent);opacity:.7}.prompt-preview-text{margin:0;font-size:13px;line-height:1.6;color:var(--text);word-break:break-word;white-space:pre-wrap}.prompt-preview-negative{color:var(--muted)}.list-editor{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:14px}.list-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.list-editor-count{font-size:13px;font-weight:600;color:var(--soft)}.list-editor-items{display:flex;flex-direction:column;gap:2px}.list-editor-item{border:1px solid transparent;border-radius:6px;transition:border-color .15s}.list-editor-item.expanded{border-color:var(--line);background:var(--panel-2)}.list-editor-item-header{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:none;border-radius:6px;background:transparent;color:var(--text);font-size:13px;cursor:pointer;text-align:left}.list-editor-item-header:hover{background:var(--panel-2)}.list-editor-item-label{font-weight:550;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-editor-item-id{font-size:11px;color:var(--muted);font-family:monospace}.list-editor-item-body{display:flex;flex-direction:column;gap:8px;padding:8px 8px 12px 30px}.list-editor-item-body .textarea{min-height:64px}.list-editor-item-actions{display:flex;gap:8px;align-items:center;margin-top:4px}.list-editor-reorder{display:flex;gap:2px;margin-right:auto}.list-editor-reorder-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--line);border-radius:5px;background:#0d1014;color:var(--muted);padding:0}.list-editor-reorder-btn:hover:not(:disabled){border-color:#4a5564;color:var(--text)}.list-editor-reorder-btn:disabled{opacity:.3;cursor:not-allowed}.campaign-combo-count{font-size:11px;color:var(--accent);background:#25c2a01f;padding:1px 7px;border-radius:8px;margin-left:auto}.list-editor-empty{text-align:center;padding:16px;color:var(--muted);font-size:13px}.id-modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#000000c7;backdrop-filter:blur(2px)}.id-modal-panel{display:flex;flex-direction:column;gap:12px;width:min(420px,calc(100vw - 48px));border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 24px 64px var(--shadow);padding:20px}.id-modal-title{margin:0;font-size:16px;font-weight:650;color:var(--text)}.id-modal-message{margin:0;font-size:13px;line-height:1.5;color:var(--soft)}.id-modal-message code{border-radius:4px;background:#0d1014;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.id-modal-validation{margin:0;font-size:12px;line-height:1.35;color:var(--danger)}.id-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.id-modal-danger{border-color:#7a2f2f;background:#5c1f1f;color:#ffb5b5}.id-modal-danger:hover{border-color:var(--danger);background:#7a2f2f}.campaign-multi-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.campaign-toggle-all{border:none;background:none;color:var(--accent);font-size:11px;padding:0;cursor:pointer}.campaign-toggle-all:hover{text-decoration:underline}.campaign-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:4px 12px;border:1px solid var(--line);border-radius:6px;background:#0d1014;padding:8px 10px;max-height:180px;overflow-y:auto}.campaign-checkbox-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--soft);cursor:pointer;padding:2px 0}.campaign-checkbox-item input[type=checkbox]{accent-color:var(--accent);margin:0;cursor:pointer}.campaign-checkbox-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.campaign-checkbox-standalone{flex-direction:row;align-items:center;gap:8px}.campaign-checkbox-standalone input[type=checkbox]{accent-color:var(--accent);margin:0;cursor:pointer}.campaign-no-items{color:var(--muted);font-size:12px;font-style:italic}.lane-row-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.login-screen{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);padding:24px}.login-card{width:min(380px,100%);display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:32px 28px}.login-mark{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--panel-2);color:var(--accent)}.login-title{margin:4px 0 0;font-size:22px;letter-spacing:.5px}.login-subtitle{margin:0;color:var(--muted);font-size:14px}.login-actions{width:100%;margin-top:8px;display:flex;flex-direction:column;gap:8px}.login-button{width:100%;justify-content:center;gap:8px}.login-empty{color:var(--muted);font-size:13px;margin:0}
