:root{--matrix-bg: #0b0f14;--matrix-bg-elevated: #121820;--matrix-fg: #e8eef5;--matrix-muted: #8b9aab;--matrix-accent: #3dd6c6;--matrix-accent-fg: #041210;--matrix-danger: #f07178;--matrix-warn: #e6b450;--matrix-radius: 10px;--matrix-font-sans: "IBM Plex Sans", "Segoe UI", sans-serif;--matrix-font-mono: "IBM Plex Mono", ui-monospace, monospace}.matrix-safe-banner{background:color-mix(in srgb,var(--matrix-warn) 18%,transparent);color:var(--matrix-fg);border:1px solid color-mix(in srgb,var(--matrix-warn) 40%,transparent);border-radius:var(--matrix-radius);padding:.75rem 1rem;font-family:var(--matrix-font-sans)}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}:root{color-scheme:dark;--matrix-border: #1a222c;--matrix-border-strong: #2a3440;--matrix-hover: #151c24;--matrix-sidebar: #080b0f;--z-topbar: 2;--z-overlay: 20;--z-toast: 40}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--matrix-bg);color:var(--matrix-fg);font-family:var(--matrix-font-sans);font-size:13px;line-height:1.45}code,.prompt-editor{font-family:var(--matrix-font-mono)}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{border-radius:8px;border:1px solid var(--matrix-border-strong);background:#0a0e13;padding:.5rem .7rem}input::placeholder,textarea::placeholder{color:#6b7a8a}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid color-mix(in srgb,var(--matrix-accent) 55%,transparent);outline-offset:1px}button{border-radius:8px;border:1px solid var(--matrix-border-strong);background:transparent;color:var(--matrix-fg);padding:.4rem .7rem;cursor:pointer;font-weight:500}button:hover:not(:disabled){background:var(--matrix-hover)}button:disabled{opacity:.4;cursor:not-allowed}button:active:not(:disabled){transform:scale(.98)}button.primary{background:var(--matrix-accent);color:var(--matrix-accent-fg);border-color:transparent;font-weight:600}button.primary:hover:not(:disabled){background:color-mix(in srgb,var(--matrix-accent) 88%,white)}button.secondary{background:var(--matrix-hover)}button.danger{background:var(--matrix-danger);color:#1a0d0e;border-color:transparent}button.danger-ghost{color:var(--matrix-danger);border-color:color-mix(in srgb,var(--matrix-danger) 35%,transparent)}label{display:grid;gap:.28rem;font-weight:500;font-size:12px;color:var(--matrix-muted)}label input,label textarea,label select{color:var(--matrix-fg);font-size:13px;font-weight:400}h1,h2{margin:0;font-weight:600;letter-spacing:-.02em;color:var(--matrix-fg)}h1{font-size:15px}h2{font-size:13px}.muted{color:var(--matrix-muted)}.error{color:var(--matrix-danger);margin:.4rem 0 0}.page-lead{margin:.2rem 0 0;color:var(--matrix-muted);font-weight:400;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.grid{display:grid;gap:.85rem}.app-frame{display:grid;grid-template-columns:220px minmax(0,1fr);height:100dvh;overflow:hidden}.sidebar{display:flex;flex-direction:column;gap:.85rem;background:var(--matrix-sidebar);border-right:1px solid var(--matrix-border);padding:.85rem .7rem .7rem}.brand{display:flex;align-items:center;gap:.5rem;padding:.15rem .35rem}.brand-mark{width:20px;height:20px;border-radius:6px;background:var(--matrix-accent);color:var(--matrix-accent-fg);font-weight:600;font-size:11px;display:grid;place-items:center}.brand-name{font-weight:600;letter-spacing:-.03em;font-size:13px}.seg{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:2px;border-radius:8px;background:#0b1016;border:1px solid var(--matrix-border)}.seg-btn{display:flex;align-items:center;justify-content:center;gap:.35rem;border:0;border-radius:6px;padding:.38rem .3rem;font-size:12px;color:var(--matrix-muted);background:transparent}.seg-btn:hover:not(:disabled){background:var(--matrix-hover);color:var(--matrix-fg)}.seg-btn.is-active{background:#151c24;color:var(--matrix-fg);font-weight:600}.sidebar-list{display:flex;flex-direction:column;gap:.35rem;flex:1;min-height:0;overflow:auto}.new-product{display:flex;align-items:center;justify-content:center;gap:.35rem;width:100%;color:var(--matrix-muted);border-style:dashed}.new-product:hover:not(:disabled){color:var(--matrix-fg);border-color:var(--matrix-accent)}.sidebar-create{display:grid;gap:.35rem}.sidebar-empty{margin:.5rem .2rem;color:var(--matrix-muted)}.sidebar-list ul{list-style:none;margin:.2rem 0 0;padding:0;display:grid;gap:1px}.product-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.42rem .55rem;border:0;border-radius:7px;text-align:left;background:transparent}.product-row:hover:not(:disabled){background:var(--matrix-hover)}.product-row.is-active{background:var(--matrix-hover);box-shadow:inset 2px 0 0 var(--matrix-accent)}.product-row-name{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-row-meta{color:var(--matrix-muted);font-size:11px;font-variant-numeric:tabular-nums}.sign-out{display:flex;align-items:center;gap:.4rem;margin-top:auto;border:0;color:var(--matrix-muted);padding:.4rem .5rem}.icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border-color:transparent;color:var(--matrix-muted);background:transparent}.icon-btn:hover:not(:disabled){color:var(--matrix-fg)}.main{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{z-index:var(--z-topbar);display:flex;align-items:center;gap:1rem;min-height:48px;padding:0 1rem 0 1.15rem;border-bottom:1px solid var(--matrix-border);flex-shrink:0}.topbar-title{display:flex;align-items:baseline;gap:.5rem;min-width:0}.ver{font-size:11px;color:var(--matrix-muted);font-variant-numeric:tabular-nums}.topbar-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.inline-field{display:flex;align-items:center;gap:.4rem;font-weight:500;color:var(--matrix-muted);font-size:12px}.main-body{flex:1;min-height:0;overflow:auto;padding:1rem 1.15rem 1.25rem;display:flex;flex-direction:column}.topbar-title h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabs{display:flex;gap:.1rem;margin-left:auto;flex-shrink:0}.tab{background:transparent;color:var(--matrix-muted);border:0;border-bottom:2px solid transparent;border-radius:0;font-weight:500;padding:.85rem .65rem;display:inline-flex;align-items:center;gap:.35rem}.tab:hover:not(:disabled){color:var(--matrix-fg);background:transparent}.tab.is-active{color:var(--matrix-fg);border-bottom-color:var(--matrix-accent)}.tab-count{font-size:11px;color:var(--matrix-muted);font-variant-numeric:tabular-nums}.empty-main{padding:3rem .5rem}.page{display:grid;gap:1.1rem;max-width:720px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.span-2{grid-column:span 2}.panel{background:var(--matrix-bg-elevated);border:1px solid var(--matrix-border);border-radius:8px;padding:1rem 1.05rem}.panel+.panel,.panel+details.panel{margin-top:.75rem}.status-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--matrix-border);border-radius:8px;background:var(--matrix-bg-elevated)}.status-card button{display:inline-flex;align-items:center;gap:.35rem}.family-name{text-transform:capitalize;font-size:15px}.extra-models{display:grid;gap:.45rem}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;margin-top:.5rem;border-top:1px solid var(--matrix-border)}.danger-zone .page-lead{max-width:42ch}.editor-shell{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--matrix-border);border-radius:8px;background:var(--matrix-bg-elevated);overflow:hidden}.editor-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .95rem;border-bottom:1px solid var(--matrix-border);flex-shrink:0}.editor-meta p{margin:.15rem 0 0;color:var(--matrix-muted);font-size:12px}.status-quiet{color:var(--matrix-muted);font-size:12px}.prompt-editor{flex:1;width:100%;min-height:0;resize:none;border:0;border-radius:0;background:transparent;padding:1rem 1.05rem 1.25rem;line-height:1.6;font-size:13px}textarea{width:100%;min-height:120px;resize:vertical}.check-row{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:13px;color:var(--matrix-fg)}.check-row input{width:auto}.switch{display:flex;align-items:center;gap:.55rem;cursor:pointer;font-weight:500;font-size:13px;color:var(--matrix-fg)}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{width:34px;height:18px;background:#1a222c;border:1px solid var(--matrix-border-strong);border-radius:99px;position:relative;flex-shrink:0}.switch-track:after{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:99px;background:var(--matrix-muted);transition:transform .15s ease,background .15s ease}.switch input:checked+.switch-track{background:color-mix(in srgb,var(--matrix-accent) 28%,#121820);border-color:var(--matrix-accent)}.switch input:checked+.switch-track:after{transform:translate(16px);background:var(--matrix-accent)}.switch input:focus-visible+.switch-track{outline:2px solid color-mix(in srgb,var(--matrix-accent) 55%,transparent);outline-offset:1px}.files-panel{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.files-panel>.page-lead{margin-bottom:.85rem}button.dropzone{display:grid;justify-items:center;gap:.4rem;width:100%;background:color-mix(in srgb,var(--matrix-bg-elevated) 70%,transparent);color:var(--matrix-muted);border:1px dashed var(--matrix-border-strong);font-weight:500;padding:.9rem}button.dropzone strong{color:var(--matrix-fg)}button.dropzone-large{flex:1;place-content:center;padding:2.5rem 1rem}button.dropzone:hover:not(:disabled){border-color:color-mix(in srgb,var(--matrix-accent) 55%,var(--matrix-border-strong));color:var(--matrix-fg);background:color-mix(in srgb,var(--matrix-accent) 6%,var(--matrix-bg-elevated))}.drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:grid;place-content:center;justify-items:center;gap:.4rem;background:color-mix(in srgb,var(--matrix-bg) 72%,var(--matrix-accent) 28%);border:1px dashed var(--matrix-accent);border-radius:8px;pointer-events:none}.file-list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.35rem}.file-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;align-items:center;padding:.6rem .7rem;border:1px solid var(--matrix-border);border-radius:8px;background:var(--matrix-bg-elevated)}.file-item.is-job{grid-template-columns:minmax(0,1fr)}.file-item-body{min-width:0}.file-item-top{display:flex;justify-content:space-between;gap:.75rem}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.confirm-copy{margin:.25rem 0 0;color:var(--matrix-danger);font-size:12px}.progress{height:3px;background:#1a222c;border-radius:99px;overflow:hidden;margin-top:.35rem}.progress>div{height:100%;background:var(--matrix-accent)}.results{list-style:none;padding:0;margin:.85rem 0 0;display:grid;gap:.3rem}button.result{width:100%;text-align:left;background:#0a0e13;display:grid;gap:.12rem}button.result:hover:not(:disabled){border-color:var(--matrix-accent)}.picker{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--matrix-border)}.file-row{align-items:flex-start}.plan{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--matrix-border)}details.panel summary{cursor:pointer;font-weight:600;margin-bottom:.7rem}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:.5rem .35rem;border-bottom:1px solid var(--matrix-border);vertical-align:top}th{color:var(--matrix-muted);font-weight:550;font-size:11px}.chip{display:inline-block;padding:.08rem .42rem;border-radius:99px;font-size:11px;font-weight:550;border:1px solid var(--matrix-border-strong);color:var(--matrix-muted)}.chip-ready{color:var(--matrix-accent-fg);background:var(--matrix-accent);border-color:transparent}.chip-sample{color:#1a1408;background:var(--matrix-warn);border-color:transparent}.chip-missing{color:var(--matrix-danger);border-color:color-mix(in srgb,var(--matrix-danger) 45%,transparent)}.login-screen{min-height:100dvh;display:grid;place-items:center;padding:2rem 1rem}.login-card{width:min(360px,100%);display:grid;gap:.75rem;background:var(--matrix-bg-elevated);border:1px solid var(--matrix-border);border-radius:10px;padding:1.25rem 1.15rem 1.15rem}.login-brand{padding:0}.login-card h1{font-size:1.2rem}.login-card .page-lead{margin-bottom:.2rem}.toasts{position:fixed;right:1rem;bottom:1rem;z-index:var(--z-toast);display:grid;gap:.4rem;width:min(340px,calc(100vw - 2rem))}.toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;align-items:start;padding:.65rem .7rem;border-radius:8px;border:1px solid var(--matrix-border);background:var(--matrix-bg-elevated);animation:toast-in .18s ease}.toast-ok{border-color:color-mix(in srgb,var(--matrix-accent) 35%,var(--matrix-border))}.toast-error{border-color:color-mix(in srgb,var(--matrix-danger) 40%,var(--matrix-border))}.toast span{min-width:0}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){button:active:not(:disabled),.switch-track:after,.toast{transition:none;animation:none;transform:none}}@media (max-width: 840px){.app-frame{grid-template-columns:1fr;height:auto;overflow:visible}.sidebar{border-right:0;border-bottom:1px solid var(--matrix-border)}.form-grid,.span-2{grid-template-columns:1fr;grid-column:auto}.tabs{margin-left:0;overflow-x:auto}.editor-shell{min-height:60dvh}}
