:root{--red: #c8102e;--red-press: #9e0c24;--red-hover: #b20e29;--red-tint: rgba(200, 16, 46, .08);--red-tint-2: rgba(200, 16, 46, .16);--green: #00732f;--green-tint: rgba(0, 115, 47, .1);--gold: #c8a951;--gold-ink: #8a6f22;--gold-tint: rgba(200, 169, 81, .14);--work: #b5761f;--work-tint: rgba(181, 118, 31, .12);--fail: #c0272d;--fail-tint: rgba(192, 39, 45, .1);--ink: #14181c;--body: #3d454d;--muted: #8a949e;--slate: #5f7181;--slate-press: #4c5c6a;--surface: #ffffff;--surface-2: #fafbfc;--band: #f2f4f6;--rule: #d5dbe1;--rule-strong: #b3bcc5;--on-red: #ffffff;--on-slate: #ffffff;--overlay: rgba(20, 24, 28, .55);--focus: #0b63c5;--skeleton: #edf0f2;--skeleton-sheen: rgba(255, 255, 255, .85);--font-ar: "IBM Plex Sans Arabic", system-ui, sans-serif;--font-ar-display: "Amiri", "Noto Naskh Arabic", serif;--font-la: "IBM Plex Sans", "Helvetica Neue", Helvetica, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--fs-display-1: 3.5rem;--lh-display-1: 1.34;--fs-display-2: 2.75rem;--lh-display-2: 1.38;--fs-h1: 2.25rem;--lh-h1: 1.44;--fs-h2: 1.75rem;--lh-h2: 1.5;--fs-h3: 1.375rem;--lh-h3: 1.56;--fs-title: 1.125rem;--lh-title: 1.62;--fs-body-lg: 1.0625rem;--lh-body-lg: 1.9;--fs-body: .9375rem;--lh-body: 1.85;--fs-body-sm: .875rem;--lh-body-sm: 1.78;--fs-caption: .8125rem;--lh-caption: 1.65;--fs-micro: .6875rem;--lh-micro: 1.45;--fs-readout: .8125rem;--lh-readout: 1.4;--fw-reg: 400;--fw-med: 500;--fw-semi: 600;--fw-bold: 700;--track-label: .14em;--track-btn: .06em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 40px;--sp-9: 48px;--sp-10: 64px;--sp-11: 80px;--sp-12: 96px;--container: 1440px;--gutter: 48px;--r-xs: 3px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 16px;--r-pill: 999px;--bw: 2px;--sh-1: 0 1px 2px rgba(20, 24, 28, .05);--sh-2: 0 4px 18px rgba(20, 24, 28, .06);--sh-3: 0 12px 40px rgba(20, 24, 28, .08);--sh-4: 0 24px 64px rgba(20, 24, 28, .12);--sh-focus: 0 0 0 3px rgba(11, 99, 197, .35);--sh-gold: 0 0 0 1px var(--gold), 0 0 18px rgba(200, 169, 81, .28);--dur-1: .12s;--dur-2: .18s;--dur-3: .26s;--dur-4: .42s;--dur-5: .7s;--dur-loop-slow: 2.4s;--dur-loop-amb: 16s;--ease-std: cubic-bezier(.2, .6, .2, 1);--ease-out: cubic-bezier(0, .6, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-emph: cubic-bezier(.16, 1, .3, 1);--stagger: 40ms;--z-base: 0;--z-raised: 10;--z-sticky: 100;--z-rail: 200;--z-dropdown: 300;--z-toast: 400;--z-modal: 500;--z-modal-top: 510}[data-theme=dark]{--red: #f04e63;--red-hover: #f3667a;--red-press: #d93a50;--red-tint: rgba(240, 78, 99, .14);--red-tint-2: rgba(240, 78, 99, .24);--green: #3fbf72;--green-tint: rgba(63, 191, 114, .16);--gold: #e0c06a;--gold-ink: #e8ce86;--gold-tint: rgba(224, 192, 106, .16);--work: #e0a44e;--work-tint: rgba(224, 164, 78, .16);--fail: #f26b70;--fail-tint: rgba(242, 107, 112, .16);--ink: #f2f5f7;--body: #c3cbd2;--muted: #8a939c;--slate: #8fa1b0;--slate-press: #a6b6c3;--surface: #171b1f;--surface-2: #1e242a;--band: #101317;--rule: #39424b;--rule-strong: #525d68;--on-red: #1a0a0e;--on-slate: #0f1317;--overlay: rgba(5, 7, 9, .7);--focus: #5aa9ff;--sh-focus: 0 0 0 3px rgba(90, 169, 255, .4);--skeleton: #232a31;--skeleton-sheen: rgba(255, 255, 255, .07);--sh-1: 0 1px 2px rgba(0, 0, 0, .4);--sh-2: 0 4px 18px rgba(0, 0, 0, .42);--sh-3: 0 12px 40px rgba(0, 0, 0, .5);--sh-4: 0 24px 64px rgba(0, 0, 0, .6);--sh-gold: 0 0 0 1px var(--gold), 0 0 18px rgba(224, 192, 106, .24);color-scheme:dark}[data-theme=hc]{--red: #a80020;--red-hover: #8e001b;--red-press: #750016;--red-tint: rgba(168, 0, 32, .14);--red-tint-2: rgba(168, 0, 32, .24);--green: #005423;--green-tint: rgba(0, 84, 35, .16);--gold: #6e5300;--gold-ink: #5a4400;--gold-tint: rgba(110, 83, 0, .14);--work: #7a4a00;--work-tint: rgba(122, 74, 0, .16);--fail: #96000a;--fail-tint: rgba(150, 0, 10, .14);--ink: #000000;--body: #101418;--muted: #3e464e;--slate: #2c3742;--slate-press: #1a222a;--surface: #ffffff;--surface-2: #ffffff;--band: #edeff2;--rule: #000000;--rule-strong: #000000;--bw: 3px;--focus: #0033aa;--sh-focus: 0 0 0 4px rgba(0, 51, 170, .55);--skeleton: #dde1e5;--skeleton-sheen: rgba(255, 255, 255, .95);--sh-1: none;--sh-2: none;--sh-3: none;--sh-4: 0 0 0 2px #000;--sh-gold: 0 0 0 2px var(--gold)}:root,[data-theme=dark],[data-theme=hc]{--paper: var(--band);--paper-raised: var(--surface);--maroon: var(--red);--maroon-deep: var(--red-press);--maroon-soft: var(--red-hover);--rose: var(--red-hover);--state-ok: var(--green);--state-done: var(--green);--state-work: var(--work);--state-fail: var(--fail);--sans: var(--font-ar);--naskh: var(--font-ar-display)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-ar);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--body);background:var(--band);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;min-height:100vh}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;white-space:nowrap}button:disabled{opacity:.55;cursor:not-allowed}a{color:var(--red);text-decoration:none;cursor:pointer}a:hover{color:var(--red-press)}[contenteditable]{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--red-tint-2)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--rule-strong);border-radius:var(--r-pill)}::-webkit-scrollbar-track{background:transparent}@keyframes lg-drift{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-9%,6%,0) scale(1.16)}to{transform:translateZ(0) scale(1)}}@keyframes lg-drift-b{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(11%,-8%,0) scale(1.1)}to{transform:translateZ(0) scale(1)}}@keyframes lg-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes lg-gold-ring{0%,to{box-shadow:0 0 0 1px var(--gold),0 0 0 0 var(--gold-tint)}50%{box-shadow:0 0 0 1px var(--gold),0 0 0 10px #c8a95100}}@keyframes lg-indeterminate{0%{transform:translate(-100%) scaleX(.35)}to{transform:translate(100%) scaleX(.35)}}@keyframes lg-spin{to{transform:rotate(360deg)}}@keyframes lg-connector{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes lg-halo{0%,to{box-shadow:0 0 0 0 var(--red-tint-2)}50%{box-shadow:0 0 0 9px #c8102e00}}@keyframes lg-wave-gen{0%,to{transform:scaleY(.22);opacity:.5}50%{transform:scaleY(1);opacity:1}}@keyframes lg-wave-play{0%,to{transform:scaleY(.4)}35%{transform:scaleY(1)}70%{transform:scaleY(.6)}}@keyframes lg-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes lg-check{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes lg-pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}@keyframes lg-dots{0%,80%,to{opacity:.25}40%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.55}}@keyframes riseIn{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}[data-motion=still] *,[data-motion=still] *:before,[data-motion=still] *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.shell{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.grow{flex:1}.rule-line{flex:1;height:1px;background:var(--rule)}.mono{font-family:var(--font-mono);direction:ltr;unicode-bidi:isolate}.eyebrow{direction:ltr;font:var(--fw-semi) var(--fs-micro) / 1 var(--font-la);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--red)}.spin{display:inline-block;border-radius:var(--r-pill);border:2px solid var(--rule);border-top-color:var(--work);animation:lg-spin .9s linear infinite}.shimmer{background:linear-gradient(90deg,var(--skeleton) 20%,var(--skeleton-sheen) 40%,var(--skeleton) 60%);background-size:220% 100%;animation:lg-shimmer 1.3s linear infinite}.sk{height:13px;border-radius:var(--r-xs)}.indet{height:3px;border-radius:var(--r-pill);background:var(--work-tint);overflow:hidden}.indet>div{height:100%;width:100%;background:var(--work);animation:lg-indeterminate 1.5s var(--ease-in-out) infinite}.indet.gold{background:var(--gold-tint)}.indet.gold>div{background:var(--gold)}.ai-mark{color:var(--gold-ink);flex:none}.ai-lit{border-color:var(--gold)!important;box-shadow:var(--sh-gold)}.util{background:var(--surface);border-bottom:1px solid var(--rule)}.util .shell{min-height:36px;padding:5px var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--sp-4)}.util-left{display:flex;align-items:center;gap:var(--sp-2)}.util-tag{font:var(--fw-med) var(--fs-caption) / 1 var(--font-ar);color:var(--muted);margin-left:var(--sp-1)}.util-home{display:inline-flex;align-items:center;gap:var(--sp-2);font:var(--fw-med) var(--fs-caption) / 1 var(--font-ar);color:var(--slate);cursor:pointer;transition:color var(--dur-2) var(--ease-std)}.util-home:hover{color:var(--red)}.pill{font:var(--fw-med) var(--fs-caption) / 1 var(--font-ar);padding:6px 12px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;color:var(--slate);transition:background var(--dur-2) var(--ease-std),color var(--dur-2) var(--ease-std)}.pill:hover:not(:disabled){background:var(--band);color:var(--ink)}.pill.on{background:var(--red);border-color:var(--red);color:var(--on-red)}.wordmark{font:var(--fw-bold) var(--fs-title) / 1.3 var(--font-ar-display);color:var(--ink);text-align:center}.util-right{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-3);font:var(--fw-reg) var(--fs-caption) / 1 var(--font-ar);color:var(--muted)}.util-sep{width:1px;height:11px;background:var(--rule)}.util-btn{width:26px;height:26px;border-radius:var(--r-pill);border:var(--bw) solid var(--rule);background:var(--surface);color:var(--slate);display:grid;place-items:center;font-size:var(--fs-micro);font-weight:var(--fw-bold);transition:border-color var(--dur-2),color var(--dur-2)}.util-btn:hover:not(:disabled){border-color:var(--slate);color:var(--ink)}.util-btn.on{background:var(--ink);border-color:var(--ink);color:var(--surface)}.nav{background:var(--surface);border-bottom:1px solid var(--rule)}.nav .shell{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:68px;gap:var(--sp-4)}.brand{display:flex;align-items:center;gap:11px}.brand-logo{height:46px;width:auto;flex:none;display:block}.brand-text{display:flex;flex-direction:column}.brand-text>b{font:var(--fw-bold) var(--fs-body-lg) / 1.3 var(--font-ar-display);color:var(--ink)}.brand-text>span{direction:ltr;font:var(--fw-semi) .5rem / 1.4 var(--font-la);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.nav nav{display:flex;align-items:center;gap:28px}.nav nav a{font:var(--fw-med) var(--fs-body-sm) / 1 var(--font-ar);color:var(--muted);padding:4px 0;border-bottom:2px solid transparent;transition:color var(--dur-2) var(--ease-std)}.nav nav a:hover{color:var(--ink)}.nav nav a.on{color:var(--ink);font-weight:var(--fw-semi);border-bottom-color:var(--red)}.user-chip{display:flex;align-items:center;gap:9px;height:34px;background:transparent;border:var(--bw) solid var(--rule);padding:0 5px 0 12px;border-radius:var(--r-pill);justify-self:end;transition:border-color var(--dur-2)}.user-chip:hover{border-color:var(--rule-strong)}.user-chip>span:first-child{font:var(--fw-reg) var(--fs-caption) / 1 var(--font-ar);color:var(--ink)}.avatar{width:26px;height:26px;border-radius:var(--r-pill);background:var(--slate);color:var(--on-slate);font:var(--fw-semi) var(--fs-micro) / 26px var(--font-ar);text-align:center;flex:none}.panel{background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--sh-2);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--rule)}.panel-head.tight{padding:14px 18px}.h-title{font:var(--fw-semi) var(--fs-caption) / 1.4 var(--font-ar);color:var(--red);white-space:nowrap}.h-note{font:var(--fw-reg) var(--fs-caption) / 1 var(--font-ar);color:var(--muted)}.empty-note{font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:var(--muted)}.err-note{font:var(--fw-med) var(--fs-caption) / 1.7 var(--font-ar);color:var(--fail)}.chip{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 12px;border-radius:var(--r-pill);border:var(--bw) solid var(--rule);background:var(--band);color:var(--slate);font:var(--fw-med) var(--fs-caption) / 1 var(--font-ar);white-space:nowrap}.chip:before{content:"";width:7px;height:7px;border-radius:var(--r-pill);background:currentColor;flex:none}.chip.solid{background:var(--ink);color:var(--surface);border-color:var(--ink);font-weight:var(--fw-med)}.chip.solid:before{display:none}.chip.ready{background:var(--green-tint);color:var(--green);border-color:var(--green)}.chip.generating{background:var(--work-tint);color:var(--work);border-color:var(--work)}.chip.generating:before{animation:lg-dots 1.4s var(--ease-in-out) infinite}.chip.failed{background:var(--fail-tint);color:var(--fail);border-color:var(--fail)}.chip.draft{background:var(--band);color:var(--slate);border-color:var(--rule)}.chip.draft:before{background:var(--muted)}.chip.ai{background:var(--surface);color:var(--gold-ink);border-color:var(--gold)}.chip.ai:before{background:var(--gold)}.btn{background:var(--red);color:var(--on-red);border:none;border-radius:var(--r-sm);box-shadow:var(--sh-2);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);text-decoration:none;transition:background var(--dur-2) var(--ease-std),transform var(--dur-1) var(--ease-std)}.btn:hover:not(:disabled){background:var(--red-hover);color:var(--on-red)}.btn:active:not(:disabled){background:var(--red-press);transform:translateY(1px)}.btn:disabled{background:var(--rule);color:var(--muted);box-shadow:none;opacity:1}.btn.lg{height:48px;padding:0 30px;font:var(--fw-semi) 1rem / 1 var(--font-ar)}.btn.md{height:44px;padding:0 var(--sp-4);font:var(--fw-semi) var(--fs-body) / 1 var(--font-ar);width:100%}.btn.sm{height:36px;padding:0 var(--sp-4);font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);box-shadow:none}.btn-out{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:36px;background:var(--surface);border:var(--bw) solid var(--rule-strong);border-radius:var(--r-sm);padding:0 14px;font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);color:var(--slate);text-decoration:none;transition:border-color var(--dur-2),color var(--dur-2),background var(--dur-2)}.btn-out:hover:not(:disabled){border-color:var(--slate);color:var(--ink)}.btn-out.xs{height:32px;padding:0 12px;font-size:var(--fs-micro)}.btn-out.danger{border-color:var(--fail);color:var(--fail)}.btn-out.danger:hover:not(:disabled){background:var(--fail-tint);color:var(--fail)}.btn-out.ok{border-color:var(--green);color:var(--green)}.btn-txt{display:inline-flex;align-items:center;gap:5px;background:transparent;border:none;font:var(--fw-semi) var(--fs-micro) / 1 var(--font-ar);color:var(--slate);padding:6px 8px;border-radius:var(--r-xs);transition:color var(--dur-2),background var(--dur-2)}.btn-txt:hover:not(:disabled){color:var(--red);background:var(--red-tint)}.btn-gen{height:32px;padding:0 12px;border:0;border-radius:var(--r-sm);background:var(--red-tint);color:var(--red);font:var(--fw-semi) var(--fs-micro) / 1 var(--font-ar);display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background var(--dur-2)}.btn-gen:hover:not(:disabled){background:var(--red-tint-2)}.icon-round{width:32px;height:32px;border-radius:var(--r-pill);border:var(--bw) solid var(--rule);background:var(--surface);color:var(--slate);display:grid;place-items:center;flex:none;transition:border-color var(--dur-2),color var(--dur-2)}.icon-round:hover:not(:disabled){border-color:var(--rule-strong);color:var(--ink)}.icon-round.danger:hover:not(:disabled){border-color:var(--fail);color:var(--fail)}.seg{display:inline-flex;gap:3px;border:var(--bw) solid var(--rule);border-radius:var(--r-sm);background:var(--surface);padding:3px;direction:ltr}.seg button{border:none;height:34px;padding:0 18px;border-radius:var(--r-xs);font:var(--fw-med) var(--fs-caption) / 1 var(--font-mono);background:transparent;color:var(--muted);transition:background var(--dur-2) var(--ease-std),color var(--dur-2) var(--ease-std)}.seg button:hover:not(:disabled):not(.on){color:var(--ink)}.seg button.on{background:var(--red);color:var(--on-red);font-weight:var(--fw-semi)}.stepper{display:inline-flex;align-items:center;border:var(--bw) solid var(--rule-strong);border-radius:var(--r-sm);background:var(--surface);overflow:hidden;height:42px}.stepper button{width:42px;height:42px;border:none;background:var(--band);color:var(--ink);font:var(--fw-semi) var(--fs-title) / 1 var(--font-ar);transition:background var(--dur-2)}.stepper button:hover:not(:disabled){background:var(--rule)}.stepper>span{min-width:96px;text-align:center;font:var(--fw-semi) var(--fs-body-lg) / 1 var(--font-ar);color:var(--ink)}.field-lbl{font:var(--fw-med) .75rem / 1 var(--font-ar);color:var(--muted)}.bar{height:5px;border-radius:var(--r-pill);background:var(--rule);overflow:hidden;display:flex;flex-direction:row-reverse}.bar>div{height:100%;background:var(--green);border-radius:var(--r-pill);transition:width var(--dur-4) var(--ease-std)}.edit{border-radius:var(--r-xs);padding:4px 6px;margin:-4px -6px;transition:background var(--dur-2)}.edit:hover{background:var(--band)}.edit:focus{background:var(--surface);box-shadow:var(--sh-focus)}.boxed{border:var(--bw) solid var(--rule);border-radius:var(--r-sm);padding:11px 13px;background:var(--surface);font:var(--fw-reg) var(--fs-body) / var(--lh-body) var(--font-ar);color:var(--ink);transition:border-color var(--dur-2),box-shadow var(--dur-2)}.boxed:focus{border-color:var(--focus);box-shadow:var(--sh-focus)}.brief-screen{max-width:900px;margin:0 auto;padding:var(--sp-9) 28px var(--sp-12)}.hero{position:relative;margin:0 -28px var(--sp-8);padding:var(--sp-10) 28px var(--sp-9);background:#0e1418;overflow:hidden;border-radius:var(--r-lg)}.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.hero:before{top:-30%;right:-8%;width:60%;height:150%;background:radial-gradient(circle,rgba(200,16,46,.42),transparent 62%);filter:blur(44px);animation:lg-drift var(--dur-loop-amb) var(--ease-in-out) infinite}.hero:after{bottom:-40%;left:-6%;width:55%;height:150%;background:radial-gradient(circle,rgba(0,115,47,.32),transparent 60%);filter:blur(48px);animation:lg-drift-b 21s var(--ease-in-out) infinite}.hero>*{position:relative;z-index:1}.hero h1{font:var(--fw-bold) var(--fs-display-2) / var(--lh-display-2) var(--font-ar-display);color:#fff;margin:0 0 var(--sp-3);text-align:center}.hero-sub{display:flex;align-items:center;gap:14px;justify-content:center}.hero-sub>span{font:var(--fw-reg) var(--fs-body-lg) / var(--lh-body-lg) var(--font-ar);color:#ffffffc2;text-align:center}.hero-sub>i{height:1px;width:70px;background:#ffffff38;display:block;flex:none}.brief-body{padding:var(--sp-4);margin:var(--sp-4) var(--sp-6) 0;min-height:150px;border:var(--bw) solid var(--rule-strong);border-radius:var(--r-md);background:var(--surface-2);font:var(--fw-reg) var(--fs-body-lg) / var(--lh-body-lg) var(--font-ar);color:var(--ink);transition:border-color var(--dur-2),box-shadow var(--dur-2),background var(--dur-2)}.brief-body:focus{background:var(--surface);border-color:var(--focus);box-shadow:var(--sh-focus)}.brief-body:empty:before{content:attr(data-placeholder);color:var(--muted)}.brief-foot{display:flex;flex-wrap:wrap;align-items:flex-end;gap:28px;margin-top:var(--sp-5);padding:18px var(--sp-6);background:var(--band);border-top:1px solid var(--rule)}.foot-group{display:flex;flex-direction:column;gap:7px}.foot-group>span{font:var(--fw-med) .75rem / 1 var(--font-ar);color:var(--muted)}.sec-head{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.proj-card{background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--sh-2);margin-bottom:var(--sp-3);overflow:hidden;animation:lg-rise var(--dur-3) var(--ease-emph) both}.proj-card:nth-child(2){animation-delay:calc(var(--stagger) * 1)}.proj-card:nth-child(3){animation-delay:calc(var(--stagger) * 2)}.proj-card:nth-child(4){animation-delay:calc(var(--stagger) * 3)}.proj-card:nth-child(5){animation-delay:calc(var(--stagger) * 4)}.proj-card:nth-child(n+6){animation-delay:calc(var(--stagger) * 5)}.proj{display:flex;align-items:center;gap:18px;padding:var(--sp-4);border:none;cursor:pointer;width:100%;background:transparent;text-align:right;transition:background var(--dur-2)}.proj:hover:not(:disabled){background:var(--surface-2)}.proj-mark{width:44px;height:78px;border-radius:var(--r-sm);flex:none;background:#1b2126;background-image:repeating-linear-gradient(125deg,rgba(255,255,255,.06) 0 2px,transparent 2px 9px);border:var(--bw) solid var(--rule);display:grid;place-items:center;font:var(--fw-bold) var(--fs-body-lg) / 1 var(--font-ar-display);color:#ffffffb8}.proj-t{font:var(--fw-semi) var(--fs-body-lg) / 1.6 var(--font-ar);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-m{display:flex;align-items:center;gap:var(--sp-2);font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--muted)}.proj-actions{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-4) var(--sp-4) 78px}.strip{background:var(--surface);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:var(--z-sticky)}.strip .shell{padding:var(--sp-4) var(--gutter) var(--sp-3)}.strip-scroll{display:flex;gap:var(--sp-3);overflow-x:auto;padding:var(--sp-1) 2px var(--sp-2)}.strip-item{flex:none;width:64px;text-align:center;cursor:pointer;background:none;border:none;padding:0}.ring{position:relative;width:64px;height:114px;border-radius:9px;padding:0;margin:0 auto;border:var(--bw) solid var(--rule);overflow:hidden;transition:transform var(--dur-3) var(--ease-emph),box-shadow var(--dur-3) var(--ease-emph)}.strip-item:hover .ring{transform:scale(1.05) translateY(-3px)}.ring.ready{border-color:var(--rule)}.ring.fail{border-color:var(--fail);background:var(--fail-tint)}.ring.empty{border:var(--bw) dashed var(--rule-strong);background:var(--band)}.ring.busy{border-color:var(--gold);background:var(--surface-2);animation:lg-gold-ring var(--dur-loop-slow) var(--ease-in-out) infinite}.ring.on{border:2px solid var(--red);box-shadow:var(--sh-3);transform:scale(1.04)}.ring>div{width:100%;height:100%}.thumb{position:relative;width:100%;height:100%;display:grid;place-items:center;font:var(--fw-semi) var(--fs-body-lg) / 1 var(--font-ar-display);color:#ffffffbf;background:#1b2126;background-image:repeating-linear-gradient(125deg,rgba(255,255,255,.07) 0 2px,transparent 2px 9px);overflow:hidden}.thumb.empty,.ring.fail .thumb,.ring.busy .thumb{background:transparent;background-image:none;color:var(--muted)}.thumb img,.thumb video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.strip-name{font:var(--fw-med) var(--fs-micro) / 1.5 var(--font-ar);color:var(--ink);margin-top:6px}.strip-meta{font:var(--fw-reg) .625rem / 1.5 var(--font-ar)}.ws{max-width:var(--container);margin:0 auto;padding:var(--sp-5) var(--gutter) var(--sp-12);display:grid;grid-template-columns:minmax(0,1fr) 316px;gap:var(--sp-5);align-items:start}.ws-main{min-width:0;display:flex;flex-direction:column;gap:var(--sp-4)}.rail{display:flex;flex-direction:column;gap:var(--sp-4);position:sticky;top:200px}.rail-body{padding:var(--sp-4) 18px;display:flex;flex-direction:column;gap:13px}.rail-acts{display:flex;flex-direction:column;gap:var(--sp-2)}.rail-acts .btn-out{width:100%;height:38px}.notice{display:flex;gap:0;border:1px solid var(--work);border-radius:var(--r-md);overflow:hidden;background:var(--work-tint);align-items:flex-start}.notice:before{content:"";width:4px;background:var(--work);flex:none;align-self:stretch}.notice.bad{border-color:var(--fail);background:var(--fail-tint)}.notice.bad:before{background:var(--fail)}.notice>.mark{flex:none;width:26px;height:26px;border-radius:var(--r-pill);border:1.5px solid var(--work);color:var(--work);font:var(--fw-bold) var(--fs-body-sm) / 23px var(--font-ar);text-align:center;margin:14px 0 0;margin-inline-start:14px}.notice.bad>.mark{border-color:var(--fail);color:var(--fail)}.notice>div:last-child{padding:13px 14px;flex:1}.notice b{font:var(--fw-semi) var(--fs-body-sm) / 1.7 var(--font-ar);color:var(--ink);display:block}.notice p{font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:var(--body);margin:2px 0 0}.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);padding:18px var(--sp-5)}.cf{display:flex;flex-direction:column;gap:7px}.cf-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.cf-val{border:var(--bw) solid var(--rule);border-radius:var(--r-sm);padding:11px 13px;background:var(--surface);font:var(--fw-reg) var(--fs-body) / var(--lh-body) var(--font-ar);color:var(--ink);transition:border-color var(--dur-2),box-shadow var(--dur-2)}.cf-val:focus{border-color:var(--focus);box-shadow:var(--sh-focus)}.scene{background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--sh-2);overflow:hidden;scroll-margin-top:210px;animation:lg-rise var(--dur-3) var(--ease-emph) both}.scene.on{border-color:var(--red);box-shadow:0 0 0 2px var(--red-tint),var(--sh-2)}.scene.busy{border-color:var(--gold)}.scene.fail{border-color:var(--fail)}.scene-head{display:flex;align-items:center;gap:var(--sp-3);padding:14px var(--sp-5);border-bottom:1px solid var(--rule);background:var(--band);flex-wrap:wrap}.scene.busy>.scene-head{background:var(--gold-tint);border-bottom-color:var(--gold)}.scene.fail>.scene-head{background:var(--fail-tint);border-bottom-color:var(--fail)}.scene-head>b{width:26px;height:26px;border-radius:7px;background:var(--ink);color:var(--surface);display:grid;place-items:center;font:var(--fw-semi) .75rem / 1 var(--font-mono);flex:none}.scene-title{font:var(--fw-semi) var(--fs-body) / 1 var(--font-ar);color:var(--ink)}.scene-head>i{direction:ltr;font:var(--fw-reg) .75rem / 1 var(--font-mono);color:var(--slate);background:var(--surface);border:var(--bw) solid var(--rule);padding:3px var(--sp-2);border-radius:5px;font-style:normal}.scene-body{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--sp-5);padding:18px var(--sp-5)}.scene-text{display:flex;flex-direction:column;gap:14px;min-width:0;padding:0}.blk{display:flex;flex-direction:column;gap:7px;border:none;padding:0}.blk-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.two{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.script{border:var(--bw) solid var(--rule);border-radius:var(--r-sm);padding:13px 14px;background:var(--surface);font:var(--fw-reg) 1rem / 1.9 var(--font-ar);color:var(--ink);margin:0;transition:border-color var(--dur-2),box-shadow var(--dur-2)}.script:focus{border-color:var(--focus);box-shadow:var(--sh-focus)}.osc{font:var(--fw-bold) var(--fs-body-lg) / 1.6 var(--font-ar-display);color:var(--ink);background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-sm);padding:10px 13px;text-align:center;transition:border-color var(--dur-2),box-shadow var(--dur-2)}.osc:focus{border-color:var(--focus);box-shadow:var(--sh-focus)}.vo{display:flex;align-items:center;gap:var(--sp-3);border:var(--bw) solid var(--rule);border-radius:var(--r-md);background:var(--band);padding:13px 14px}.vo-play{flex:none;width:38px;height:38px;border-radius:var(--r-pill);background:var(--red);color:var(--on-red);border:none;display:grid;place-items:center;box-shadow:var(--sh-2);transition:background var(--dur-2)}.vo-play:hover:not(:disabled){background:var(--red-hover)}.vo-play:disabled{background:var(--surface);border:var(--bw) solid var(--rule-strong);color:var(--muted);box-shadow:none}.wave{flex:1;min-width:0;height:38px;cursor:pointer;display:flex;align-items:center;gap:2px}.wave i{flex:1;min-width:1px;max-width:7px;border-radius:2px;background:var(--rule-strong);transform-origin:center;transition:background var(--dur-2) var(--ease-std)}.wave i.on{background:var(--red)}.wave.live i{animation:lg-wave-play .9s var(--ease-in-out) infinite}.wave.gen{flex:none;width:110px;height:22px;cursor:default;gap:1px}.wave.gen i{background:var(--gold);animation:lg-wave-gen 1.2s var(--ease-in-out) infinite}.vo-time{flex:none;text-align:left;direction:ltr;font-family:var(--font-mono)}.vo-time b{font:var(--fw-med) .75rem / 1.4 var(--font-mono);color:var(--slate);display:block}.vo-time span{font:var(--fw-reg) var(--fs-micro) / 1.4 var(--font-mono);color:var(--muted)}.vo-quote{font:var(--fw-reg) var(--fs-caption) / 1.85 var(--font-ar);color:var(--body);margin-top:9px}.pend{border:var(--bw) solid var(--gold);background:var(--gold-tint);border-radius:var(--r-md);padding:14px;display:flex;align-items:center;gap:var(--sp-3);font:var(--fw-semi) var(--fs-caption) / 1.7 var(--font-ar);color:var(--gold-ink)}.dashed{border:var(--bw) dashed var(--rule-strong);border-radius:var(--r-md);padding:var(--sp-4);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);background:var(--band);flex-wrap:wrap}.dashed.bad{border:var(--bw) solid var(--fail);background:var(--fail-tint)}.cues-btn{display:flex;align-items:center;gap:var(--sp-2);background:transparent;border:none;padding:var(--sp-1) 0;font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);color:var(--slate)}.cues-btn:hover:not(:disabled){color:var(--red)}.cues-btn svg{transition:transform var(--dur-2) var(--ease-std)}.cues-btn.open svg{transform:rotate(-90deg)}.cues{margin-top:var(--sp-2);border:var(--bw) solid var(--rule);border-radius:var(--r-sm);overflow:hidden}.cue{display:flex;align-items:center;gap:var(--sp-3);padding:9px 14px;border-bottom:1px solid var(--rule);background:var(--surface)}.cue:last-child{border-bottom:none}.cue>span:first-child{flex:none;direction:ltr;font:var(--fw-med) var(--fs-micro) / 1 var(--font-mono);color:var(--muted);min-width:88px}.cue>span:last-child{font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:var(--body)}.vis-col{padding:0;border:none}.vis-inner{padding:0;display:flex;flex-direction:column;gap:9px}.vis-tabs{display:flex;gap:3px;background:var(--band);border:var(--bw) solid var(--rule);border-radius:7px;padding:2px}.vis-tabs button{flex:1;height:30px;border:none;border-radius:5px;background:transparent;color:var(--muted);font:var(--fw-reg) var(--fs-caption) / 1 var(--font-ar);transition:background var(--dur-2),color var(--dur-2)}.vis-tabs button.on{background:var(--surface);color:var(--ink);font-weight:var(--fw-semi);box-shadow:var(--sh-1)}.vis-tabs button.on.ai{color:var(--gold-ink)}.vis-box{position:relative;aspect-ratio:9 / 16;border-radius:9px;overflow:hidden;background:#1b2126;background-image:repeating-linear-gradient(125deg,rgba(255,255,255,.06) 0 2px,transparent 2px 9px);border:var(--bw) solid var(--rule)}.vis-box.empty{background:var(--band);background-image:none;border:var(--bw) dashed var(--rule-strong)}.vis-box.busy{background:var(--surface-2);background-image:none;border:var(--bw) solid var(--gold);animation:lg-gold-ring var(--dur-loop-slow) var(--ease-in-out) infinite}.vis-box.fail{background:var(--fail-tint);background-image:none;border:var(--bw) solid var(--fail)}.vis-box video,.vis-box img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.vis-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:var(--sp-3);text-align:center;font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--muted)}.vis-box.busy .vis-state{color:var(--gold-ink)}.vis-box.fail .vis-state{color:var(--fail)}.vis-state .badmark{width:30px;height:30px;border-radius:var(--r-pill);border:1.6px solid var(--fail);color:var(--fail);font:var(--fw-bold) var(--fs-body) / 28px var(--font-ar)}.vis-acts{position:absolute;inset-inline:0;bottom:0;padding:7px;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);display:flex;gap:5px}.vis-acts button{width:30px;height:30px;border-radius:var(--r-pill);border:0;background:#ffffffeb;color:#14181c;display:grid;place-items:center}.alts{display:flex;gap:var(--sp-2);margin-top:var(--sp-2);overflow-x:auto;padding-bottom:var(--sp-1)}.alt{flex:none;width:68px;height:120px;border-radius:var(--r-sm);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-1);background:#1b2126;border:var(--bw) solid var(--rule);padding:0;background-size:cover;background-position:center;transition:transform var(--dur-2) var(--ease-emph),border-color var(--dur-2)}.alt:hover{transform:translateY(-2px)}.alt.on{border:2px solid var(--red)}.alt b{font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar-display);color:#fffc}.alt>span{font:var(--fw-reg) .5625rem / 1.4 var(--font-ar);color:var(--muted)}.alt.up{border:var(--bw) dashed var(--rule-strong);background:var(--band)}.alt.up:hover{background:var(--surface);border-color:var(--red)}.alt.up>span{font:var(--fw-semi) .5625rem / 1.2 var(--font-ar);color:var(--slate)}.log-wrap{padding:6px 18px 14px;max-height:420px;overflow-y:auto}.log{display:flex;align-items:flex-start;gap:var(--sp-3);padding:10px 0;border-bottom:1px solid var(--rule)}.log:last-child{border-bottom:none}.log .dot{flex:none;width:7px;height:7px;border-radius:var(--r-pill);margin-top:7px}.log p{font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar);color:var(--body);margin:0}.log-meta{display:flex;align-items:center;gap:9px;margin-top:2px}.log-meta>span:first-child{direction:ltr;font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-mono);color:var(--muted)}.log-meta>span:last-child{font:var(--fw-semi) var(--fs-micro) / 1.5 var(--font-ar)}.toast{position:fixed;bottom:18px;left:var(--sp-6);z-index:var(--z-toast);width:344px;max-width:calc(100vw - 48px);background:var(--ink);border:none;border-radius:var(--r-md);box-shadow:var(--sh-4);padding:14px var(--sp-4);display:flex;gap:var(--sp-3);align-items:center;animation:lg-rise var(--dur-3) var(--ease-emph) both}.toast .mark{flex:none;width:34px;height:34px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.18);background:#ffffff0f;display:grid;place-items:center}.toast b{font:var(--fw-med) var(--fs-body-sm) / 1.6 var(--font-ar);color:#fff;display:block}.toast .bar{height:5px;margin:7px 0 5px;background:#ffffff2e}.toast .bar>div{background:var(--green)}.toast p{direction:ltr;font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-mono);color:#fff9;margin:0}.toast .icon-round{border-color:#ffffff47;color:#fffc;background:transparent}.toast .icon-round:hover:not(:disabled){border-color:#fff;color:#fff}.pipeline-stepper{display:flex;align-items:flex-start;justify-content:center;gap:0;padding:18px var(--sp-8);background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.pipeline-stage{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);flex:1;min-width:0;text-align:center}.pipeline-track{display:flex;align-items:center;width:100%}.pipeline-dot{width:30px;height:30px;border-radius:var(--r-pill);display:grid;place-items:center;font:var(--fw-semi) .75rem / 1 var(--font-mono);flex:none;background:var(--band);border:2px solid var(--rule);color:var(--muted);transition:background var(--dur-4) var(--ease-std),border-color var(--dur-4) var(--ease-std)}.pipeline-stage.done .pipeline-dot{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 0 0 4px var(--green-tint);animation:lg-pop var(--dur-4) var(--ease-emph) both}.pipeline-stage.partial .pipeline-dot{background:var(--surface);border-color:var(--green);color:var(--green)}.pipeline-stage.active .pipeline-dot{background:var(--red);border-color:var(--red);color:#fff;animation:lg-halo var(--dur-loop-slow) var(--ease-in-out) infinite}.pipeline-stage.needs-action .pipeline-dot{background:var(--fail-tint);border-color:var(--fail);color:var(--fail)}.pipeline-stage.pending .pipeline-dot{background:var(--band);border-color:var(--rule);color:var(--muted)}.pipeline-label{font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);color:var(--ink);white-space:nowrap}.pipeline-detail{font:var(--fw-reg) var(--fs-micro) / 1 var(--font-ar);color:var(--muted)}.pipeline-stage.done .pipeline-detail,.pipeline-stage.partial .pipeline-detail{color:var(--green)}.pipeline-stage.active .pipeline-detail{color:var(--red);font-family:var(--font-mono);direction:ltr}.pipeline-stage.needs-action .pipeline-detail{color:var(--fail)}.pipeline-line{flex:1;height:2px;background:var(--rule);transition:background var(--dur-5) var(--ease-std)}.pipeline-line.filled{background:var(--green)}.pipeline-line.edge{background:transparent}.pipeline-stage.active .pipeline-line:not(.edge){background:linear-gradient(90deg,var(--green),var(--red) 50%,var(--rule) 50%,var(--rule));background-size:220% 100%;animation:lg-connector 1.6s linear infinite}.spin-sm{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:var(--r-pill);animation:lg-spin .8s linear infinite}.preview-screen{max-width:1180px;margin:0 auto;padding:var(--sp-7) var(--gutter) var(--sp-11)}.pv-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap}.pv-head .t{font:var(--fw-bold) var(--fs-h2) / var(--lh-h2) var(--font-ar-display);color:var(--ink)}.pv-head .d{font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--muted)}.pv-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--sp-8);align-items:start}.pv-stage{display:flex;flex-direction:column;align-items:center;gap:18px}.player{position:relative;width:428px;max-width:100%;background:#0e1418;border:var(--bw) solid var(--rule);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-4)}.player video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#0e1418}.player .big{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border:none;background:transparent;width:100%;height:100%}.player .big>i{width:76px;height:76px;border-radius:var(--r-pill);background:#ffffffeb;color:var(--ink);display:grid;place-items:center;box-shadow:var(--sh-3);transition:transform var(--dur-2) var(--ease-emph),background var(--dur-2)}.player .big:hover>i{background:#fff;transform:scale(1.06)}.pbar{position:absolute;bottom:0;right:0;left:0;padding:var(--sp-4) 18px;background:linear-gradient(to top,rgba(0,0,0,.66),transparent);direction:ltr}.pbar .track{height:4px;border-radius:var(--r-pill);background:#ffffff47;overflow:hidden;margin-bottom:var(--sp-3);cursor:pointer}.pbar .track>div{height:100%;background:#fff}.pbar .row{display:flex;align-items:center;gap:var(--sp-3);color:#fff}.pbar button{background:none;border:none;color:#fff;padding:0;display:flex}.pbar time{font:var(--fw-med) .75rem / 1 var(--font-mono)}.meta-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:9px 0;border-bottom:1px solid var(--rule)}.meta-row>span:first-child{font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar);color:var(--muted)}.meta-row>span:last-child{direction:ltr;font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-mono);color:var(--ink)}.sc-row{display:flex;align-items:center;gap:var(--sp-3);padding:10px 0;border-bottom:1px solid var(--rule)}.sc-row .m{flex:none;width:26px;height:46px;border-radius:5px;background:#1b2126;background-image:repeating-linear-gradient(125deg,rgba(255,255,255,.06) 0 2px,transparent 2px 9px);border:var(--bw) solid var(--rule);display:grid;place-items:center;font:var(--fw-semi) var(--fs-micro) / 1 var(--font-mono);color:#ffffffbf}.sc-row .t{flex:1;min-width:0;font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar);color:var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--overlay);display:grid;place-items:center;padding:var(--sp-6)}.modal{background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-xl);box-shadow:var(--sh-4);width:100%;max-width:560px;max-height:86vh;display:flex;flex-direction:column;animation:lg-rise var(--dur-3) var(--ease-emph) both}.modal.wide{max-width:900px}.modal-body{padding:var(--sp-6);overflow-y:auto}.modal input{width:100%;border:var(--bw) solid var(--rule-strong);border-radius:var(--r-sm);padding:13px 14px;font:var(--fw-reg) var(--fs-body-lg) / 1.6 var(--font-ar);color:var(--ink);background:var(--surface);transition:border-color var(--dur-2),box-shadow var(--dur-2)}.modal input:focus{outline:none;border-color:var(--focus);box-shadow:var(--sh-focus)}.arch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-4)}.arch video{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--r-sm);border:var(--bw) solid var(--rule);background:var(--band);display:block}.arch p{font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar);color:var(--body);margin:7px 0 0}.foot{background:var(--slate);color:#ffffffdb;margin-top:var(--sp-11)}.foot .shell{padding:var(--sp-8) var(--gutter);display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-8);flex-wrap:wrap}.foot b{display:block;direction:ltr;font:var(--fw-semi) var(--fs-micro) / 1 var(--font-la);letter-spacing:var(--track-label);text-transform:uppercase;color:#ffffff9e;margin-bottom:var(--sp-3)}.foot p{font:var(--fw-reg) var(--fs-caption) / 1.9 var(--font-ar);margin:0;color:#ffffffdb}.site-foot{background:var(--slate);margin-top:var(--sp-11)}.site-foot .shell{padding:var(--sp-6) var(--gutter);display:flex;align-items:center;justify-content:center;gap:var(--sp-4);flex-wrap:wrap}.site-foot span{font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:#ffffffd1;text-align:center}.site-foot a{display:inline-flex;align-items:center;gap:var(--sp-2);font:var(--fw-med) var(--fs-caption) / 1.8 var(--font-ar);color:#fff;cursor:pointer;transition:opacity var(--dur-2) var(--ease-std)}.site-foot a:hover{opacity:.72}.site-foot-sep{width:1px;height:13px;background:#ffffff47}@media(max-width:1280px){:root{--gutter: 28px}.ws{grid-template-columns:minmax(0,1fr) 288px}}@media(max-width:1100px){.ws{grid-template-columns:minmax(0,1fr)}.rail{position:static}.scene-body{grid-template-columns:minmax(0,1fr)}.vis-inner{max-width:300px}.pv-grid{grid-template-columns:minmax(0,1fr)}.pipeline-stepper{overflow-x:auto}}@media(max-width:760px){:root{--gutter: 16px}.util .shell,.nav .shell{grid-template-columns:1fr auto;gap:var(--sp-2)}.util-right,.wordmark{display:none}.nav nav{gap:var(--sp-5)}.hero{margin-inline:-16px}.hero h1{font-size:var(--fs-h1);line-height:var(--lh-h1)}.brief-screen{padding:var(--sp-7) var(--sp-4) var(--sp-10)}.ws{padding:18px var(--sp-4) var(--sp-12)}.cf-grid,.two{grid-template-columns:1fr}.toast{left:var(--sp-3);right:var(--sp-3);width:auto}.brief-foot{gap:var(--sp-5)}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.app-shell{min-block-size:100vh;background:var(--band);display:flex;flex-direction:column}.topbar{position:sticky;inset-block-start:0;z-index:200;block-size:56px;flex:none;display:flex;align-items:center;gap:var(--sp-4);padding-inline:var(--sp-5);background:var(--surface);border-block-end:1px solid var(--rule)}.topbar-brand{display:flex;align-items:center;gap:var(--sp-3);flex:none}.brand-glyph{inline-size:34px;block-size:34px;flex:none;border-radius:var(--r-sm);background:var(--red);color:var(--on-red);display:grid;place-items:center;font:var(--fw-bold) 15px / 1 var(--font-ar-display)}.topbar-brand .brand-text{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.topbar-brand .brand-text b{font:var(--fw-semi) var(--fs-body-sm) / 1.25 var(--font-ar);color:var(--ink);white-space:nowrap}.topbar-brand .brand-text span{font:var(--fw-med) var(--fs-micro) / 1.2 var(--font-ar);color:var(--muted);white-space:nowrap}.topbar-rule{inline-size:1px;block-size:26px;background:var(--rule);flex:none}.topbar-rule.short{block-size:22px}.workspace-pick{flex:none;max-inline-size:230px;gap:var(--sp-2)}.workspace-dot{inline-size:6px;block-size:6px;border-radius:var(--r-pill);background:var(--green);flex:none}.workspace-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right{display:flex;align-items:center;gap:var(--sp-2);flex:none}.topbar-right .seg{padding:2px}.topbar-right .seg button{block-size:28px;padding-inline:12px}.app-grid{display:grid;grid-template-columns:236px minmax(0,1fr);align-items:start;flex:1;min-block-size:0}.sidebar{position:sticky;inset-block-start:56px;align-self:start;block-size:calc(100vh - 56px);background:var(--surface);border-inline-end:1px solid var(--rule);padding:var(--sp-5) var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1);overflow-y:auto}.sidebar-eyebrow{padding:0 var(--sp-3) var(--sp-2)}.sidebar-row{all:unset;cursor:pointer;display:flex;align-items:center;gap:var(--sp-3);padding:9px var(--sp-3);border-radius:var(--r-sm);font:var(--fw-med) var(--fs-body-sm) / 1.4 var(--font-ar);color:var(--slate);transition:background var(--dur-2) var(--ease-std),color var(--dur-2) var(--ease-std)}.sidebar-row:hover{background:var(--band);color:var(--ink)}.sidebar-row:focus-visible{box-shadow:var(--sh-focus)}.sidebar-row.on{background:var(--red-tint);color:var(--red);font-weight:var(--fw-semi)}.sidebar-num{flex:none;inline-size:18px;font-size:var(--fs-micro);color:var(--muted)}.sidebar-row.on .sidebar-num{color:var(--red)}.sidebar-label{flex:1;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.router-card{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--surface-2);padding:var(--sp-3);display:flex;flex-direction:column;gap:6px;flex:none}.router-label{font:var(--fw-med) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.router-model{font-size:var(--fs-caption);color:var(--ink)}.router-note{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--muted)}.sidebar-lang{display:none}.app-main{min-inline-size:0;max-inline-size:1320px;padding:var(--sp-7) var(--sp-7) var(--sp-11)}.app-main.auth{max-inline-size:none;padding:0 var(--sp-5);flex:1;display:grid;place-items:center;min-block-size:0}.app-main.wide{max-inline-size:none;padding:var(--sp-5) var(--sp-5) var(--sp-5);block-size:calc(100vh - 56px);display:flex;flex-direction:column;min-block-size:0}@media(max-width:900px){.app-grid{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;block-size:auto;flex-direction:row;flex-wrap:wrap;border-inline-end:0;border-block-end:1px solid var(--rule)}.sidebar-eyebrow,.router-card{display:none}.app-main{padding:var(--sp-5) var(--sp-4) var(--sp-9)}}.signin{inline-size:100%;display:grid;place-items:center;padding-block:var(--sp-6)}.signin-card{inline-size:min(408px,100%);background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--sh-3);padding:var(--sp-7);display:flex;flex-direction:column;gap:var(--sp-5)}.signin-brand{display:flex;align-items:center;gap:var(--sp-3)}.signin-brand .brand-text{display:flex;flex-direction:column;gap:2px}.signin-brand .brand-text b{font:var(--fw-semi) var(--fs-body-sm) / 1.25 var(--font-ar);color:var(--ink)}.signin-brand .brand-text span{font:var(--fw-med) var(--fs-micro) / 1.2 var(--font-ar);color:var(--muted)}.signin-title{margin:0;font:var(--fw-bold) var(--fs-h3) / var(--lh-h3) var(--font-ar-display);color:var(--ink)}.signin-form{display:flex;flex-direction:column;gap:var(--sp-4)}.signin-error{display:flex;flex-direction:column;gap:4px;border:var(--bw) solid var(--fail);border-inline-start-width:3px;background:var(--fail-tint);border-radius:var(--r-sm);padding:var(--sp-3);font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--fail)}.signin-error .mono{font-size:var(--fs-micro);opacity:.85}.signin-foot{margin:0;padding-block-start:var(--sp-4);border-block-start:1px solid var(--rule);display:flex;align-items:center;gap:var(--sp-2);font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.signin-foot .mono{border:1px solid var(--rule);border-radius:var(--r-pill);padding:2px 8px;color:var(--slate)}.pending-surface{max-inline-size:620px;margin:var(--sp-10) auto;border:var(--bw) dashed var(--rule-strong);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-9) var(--sp-7);display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center}.pending-surface b{font:var(--fw-bold) var(--fs-h3) / var(--lh-h3) var(--font-ar-display);color:var(--ink)}.pending-surface p{margin:0;max-inline-size:44ch;font:var(--fw-reg) var(--fs-body) / var(--lh-body) var(--font-ar);color:var(--body)}.builder-page{display:flex;flex-direction:column;gap:var(--sp-4);flex:1;min-block-size:0}.builder-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);flex-wrap:wrap}.builder-title{display:flex;flex-direction:column;gap:6px;min-inline-size:0}.h1-edit{font:var(--fw-bold) var(--fs-h3) / var(--lh-h3) var(--font-ar-display);color:var(--ink);background:transparent;border:0;inline-size:22ch;max-inline-size:100%}.key-edit{font-size:var(--fs-micro);color:var(--muted);background:transparent;border:0;inline-size:16ch}.version-pill{border:1px solid var(--rule);border-radius:var(--r-pill);padding:3px 10px;font-size:var(--fs-micro);color:var(--slate)}.builder-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.version-note{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--muted);max-inline-size:34ch;text-wrap:pretty}.pick{block-size:32px;padding:0 var(--sp-3);border:var(--bw) solid var(--rule);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:var(--fw-med) var(--fs-micro) / 1 var(--font-ar)}.pick:focus{outline:none;box-shadow:var(--sh-focus)}.builder-frame{display:grid;grid-template-columns:236px minmax(0,1fr) 340px;border:var(--bw) solid var(--rule);border-radius:var(--r-lg);background:var(--surface);overflow:hidden;box-shadow:var(--sh-2);flex:1;min-block-size:520px}@media(max-width:1240px){.builder-frame{grid-template-columns:200px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;flex:none;block-size:auto}.builder-inspector{grid-column:1 / -1;border-inline-start:0;border-block-start:1px solid var(--rule);max-block-size:360px}}.builder-palette,.builder-inspector{display:flex;flex-direction:column;min-inline-size:0;min-block-size:0;background:var(--surface-2)}.builder-palette{border-inline-end:1px solid var(--rule)}.builder-inspector{border-inline-start:1px solid var(--rule)}.pane-head{flex:none;padding:var(--sp-4) var(--sp-4) var(--sp-3);border-block-end:1px solid var(--rule);display:flex;flex-direction:column;gap:3px}.pane-head b{font:var(--fw-semi) var(--fs-body-sm) / 1.5 var(--font-ar);color:var(--ink)}.pane-head span{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--muted)}.pane-scroll{flex:1;min-block-size:0;overflow-y:auto}.pane-foot{flex:none;border-block-start:1px solid var(--rule);padding:var(--sp-3) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2)}.palette-group{border-block-end:1px solid var(--rule)}.palette-group-head{all:unset;box-sizing:border-box;cursor:pointer;inline-size:100%;display:flex;align-items:center;gap:var(--sp-2);padding:10px var(--sp-4);font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);color:var(--slate)}.palette-group-head:hover{color:var(--ink)}.palette-group-head .caret{flex:none;inline-size:12px;font-size:var(--fs-micro);color:var(--muted)}.palette-items{display:flex;flex-direction:column;padding:0 var(--sp-2) var(--sp-2)}.palette-item{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:var(--sp-2);padding:8px var(--sp-3);border-radius:var(--r-sm);border:1px solid transparent;transition:border-color var(--dur-2),background var(--dur-2)}.palette-item:hover:not(:disabled){border-color:var(--rule);background:var(--surface)}.palette-item:focus-visible{box-shadow:var(--sh-focus)}.palette-item:disabled{cursor:not-allowed;opacity:.5}.palette-item-label{flex:1;min-inline-size:0;font:var(--fw-reg) var(--fs-caption) / 1.4 var(--font-ar);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-item-ports{flex:none;display:flex;align-items:center;gap:3px}.port-legend{gap:var(--sp-2)}.legend-row{display:flex;align-items:center;gap:var(--sp-2)}.legend-row .mono{font-size:var(--fs-micro);color:var(--body)}.legend-glyph{inline-size:14px;display:grid;place-items:center;flex:none}.builder-canvas{display:flex;flex-direction:column;min-inline-size:0;min-block-size:0;background:var(--band)}.canvas-strip{flex:none;display:flex;align-items:center;gap:var(--sp-3);padding:9px var(--sp-4);border-block-end:1px solid var(--rule);background:var(--surface);flex-wrap:wrap}.canvas-hint{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--muted)}.canvas-body{position:relative;flex:1;min-block-size:320px;min-inline-size:0}.canvas-empty{position:absolute;inset-block-start:42%;inline-size:100%;text-align:center;pointer-events:none;font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:var(--muted)}.react-flow{--xy-background-color: var(--band);--xy-edge-stroke: var(--rule-strong);--xy-edge-stroke-selected: var(--red);--xy-connectionline-stroke: var(--slate);--xy-attribution-background-color: transparent;background:var(--band);font-family:var(--font-ar)}.react-flow__renderer{direction:ltr}.react-flow__edge-path{stroke-width:1.5;stroke-opacity:.55}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:hover .react-flow__edge-path{stroke-width:2.5;stroke-opacity:1}.react-flow__connectionline .react-flow__edge-path{stroke:var(--slate);stroke-dasharray:4 3}.react-flow__controls,.react-flow__minimap{border:var(--bw) solid var(--rule);border-radius:var(--r-md);box-shadow:var(--sh-2);overflow:hidden}.react-flow__controls-button{background:var(--surface);border-bottom:1px solid var(--rule);color:var(--body);fill:var(--body)}.react-flow__controls-button:hover{background:var(--band)}.react-flow__attribution{font:var(--fw-reg) var(--fs-micro) / 1 var(--font-la);opacity:.5}.node-card{inline-size:190px;block-size:104px;box-sizing:border-box;display:flex;flex-direction:column;gap:5px;padding:11px 13px;background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-md);box-shadow:var(--sh-1);text-align:start;transition:border-color var(--dur-2) var(--ease-std),box-shadow var(--dur-2) var(--ease-std)}.node-card.sev-warn{border-color:var(--work)}.node-card.sev-err{border-color:var(--fail)}.node-card.is-selected{border-color:var(--red);box-shadow:var(--sh-3)}.node-card.is-gate{border-inline-start:3px solid var(--gold)}.node-card-head{display:flex;align-items:center;gap:var(--sp-2);inline-size:100%}.node-dot{flex:none;inline-size:8px;block-size:8px;border-radius:var(--r-pill);background:var(--green)}.node-dot.sev-warn{background:var(--work)}.node-dot.sev-err{background:var(--fail)}.node-label{flex:1;min-inline-size:0;font:var(--fw-semi) var(--fs-body-sm) / 1.4 var(--font-ar);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-type{font-size:var(--fs-micro);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;inline-size:100%}.node-model{align-self:flex-start;max-inline-size:100%;border:1px solid var(--rule);border-radius:var(--r-xs);padding:2px 6px;font-size:var(--fs-micro);color:var(--slate);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-flow__handle.port-handle{inline-size:22px;block-size:22px;min-inline-size:0;min-block-size:0;background:transparent;border:0;border-radius:var(--r-pill);display:grid;place-items:center;z-index:20}.react-flow__handle.port-handle.react-flow__handle-left{left:0}.react-flow__handle.port-handle.react-flow__handle-right{right:0}.react-flow__handle.port-handle:hover .port-stack{transform:scale(1.25)}.port-stack{display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none;transition:transform var(--dur-1) var(--ease-std)}.validation{flex:none;border-block-start:var(--bw) solid var(--rule);background:var(--surface)}.validation-head{display:flex;align-items:center;gap:var(--sp-3);padding:8px var(--sp-4);border-block-end:1px solid var(--rule);flex-wrap:wrap}.validation-head b{font:var(--fw-semi) var(--fs-caption) / 1 var(--font-ar);color:var(--slate)}.validation-head .count{font-size:var(--fs-micro)}.validation-head .count.err{color:var(--fail)}.validation-head .count.warn{color:var(--work)}.validation-blocked{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--fail)}.validation-list{max-block-size:126px;overflow-y:auto}.validation-clean{margin:0;padding:var(--sp-4);font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--green)}.validation-row{all:unset;box-sizing:border-box;cursor:pointer;inline-size:100%;display:flex;align-items:center;gap:var(--sp-3);padding:9px var(--sp-4);border-block-end:1px solid var(--rule);background:var(--surface-2)}.validation-row.sev-err{background:var(--fail-tint)}.validation-row.sev-warn{background:var(--work-tint)}.validation-row:focus-visible{box-shadow:var(--sh-focus)}.validation-row .mark{flex:none;inline-size:16px;text-align:center;font-size:var(--fs-micro);color:var(--slate)}.validation-row.sev-err .mark{color:var(--fail)}.validation-row.sev-warn .mark{color:var(--work)}.validation-msg{flex:1;min-inline-size:0;font:var(--fw-reg) var(--fs-caption) / 1.5 var(--font-ar);color:var(--body)}.validation-node{flex:none;font-size:var(--fs-micro);color:var(--muted)}.inspector-head{gap:var(--sp-2)}.inspector-ids{gap:var(--sp-3);font-size:var(--fs-micro);color:var(--muted)}.inspector-section{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3);border-block-end:1px solid var(--rule)}.inspector-section:last-child{border-block-end:0}.ports-table{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.port-row{display:flex;align-items:center;gap:var(--sp-3);padding:8px var(--sp-3);border-block-end:1px solid var(--rule)}.port-row:last-child{border-block-end:0}.port-row .mono{font-size:var(--fs-micro);color:var(--ink)}.port-dir{color:var(--muted)!important}.port-state{flex:none;inline-size:12px;text-align:center}.ports-none{padding:8px var(--sp-3);color:var(--muted)}.out-schema{display:block;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface);padding:10px;font-size:var(--fs-micro);color:var(--body);white-space:pre-wrap;word-break:break-word}.inspector-foot{background:var(--surface);gap:4px}.foot-label{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.foot-model{font-size:var(--fs-caption);color:var(--ink)}.foot-note{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.btn-txt.danger{color:var(--fail)}.btn-txt.danger:hover:not(:disabled){background:var(--fail-tint);color:var(--fail)}.form-grid{display:flex;flex-direction:column;gap:var(--sp-3)}.form-field{display:flex;flex-direction:column;gap:var(--sp-1)}.field-lbl{display:flex;align-items:center;gap:var(--sp-2);font:var(--fw-med) var(--fs-micro) / 1.5 var(--font-ar);color:var(--slate)}.field-val{font-size:var(--fs-micro);color:var(--ink)}.field-hint{font:var(--fw-reg) var(--fs-micro) / 1.6 var(--font-ar);color:var(--muted)}.form-req{color:var(--red)}.fld{inline-size:100%;box-sizing:border-box;border:var(--bw) solid var(--rule);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);padding:8px 10px;font:var(--fw-reg) var(--fs-caption) / 1.5 var(--font-ar);transition:border-color var(--dur-2),box-shadow var(--dur-2)}.fld:focus{outline:none;border-color:var(--focus);box-shadow:var(--sh-focus)}.fld.num{font-family:var(--font-mono);direction:ltr}.range-row{display:flex;flex-direction:column;gap:2px}.range{inline-size:100%;accent-color:var(--red);cursor:pointer;margin:0}.range-bounds{display:flex;justify-content:space-between;font-size:var(--fs-micro);color:var(--muted);direction:ltr}.switch{position:relative;inline-size:38px;block-size:20px;flex:none;align-self:flex-start;border:0;padding:0;border-radius:var(--r-pill);cursor:pointer;background:var(--rule-strong);transition:background var(--dur-2) var(--ease-std)}.switch.on{background:var(--green)}.switch:focus-visible{box-shadow:var(--sh-focus)}.switch-knob{position:absolute;inset-block-start:2px;inset-inline-start:2px;inline-size:16px;block-size:16px;border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--sh-1);transition:inset-inline-start var(--dur-2) var(--ease-std)}.switch.on .switch-knob{inset-inline-start:20px}.text-card{border:var(--bw) solid var(--rule);border-radius:var(--r-sm);background:var(--surface);overflow:hidden;transition:border-color var(--dur-2),box-shadow var(--dur-2)}.text-card:focus-within{border-color:var(--focus);box-shadow:var(--sh-focus)}.text-card-head,.text-card-foot{display:flex;align-items:center;gap:var(--sp-2);padding:5px var(--sp-3);background:var(--surface-2);font-size:var(--fs-micro);color:var(--muted)}.text-card-head{border-block-end:1px solid var(--rule)}.text-card-foot{border-block-start:1px solid var(--rule);font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar)}.text-card-foot .mono{color:var(--slate)}.text-count{color:var(--muted)}.text-area{display:block;inline-size:100%;box-sizing:border-box;border:0;background:transparent;color:var(--ink);padding:var(--sp-3);resize:vertical;font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar)}.text-area.mono{font-family:var(--font-mono)}.text-area:focus{outline:none}.input-list{display:flex;flex-direction:column;gap:var(--sp-2)}.input-row{display:flex;gap:var(--sp-2);align-items:center}.input-key{flex:1;min-inline-size:0}.input-type{flex:none;inline-size:92px}.input-row .btn-out{flex:none}.run-node{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-2) 0;border-bottom:1px solid var(--rule)}.run-node:last-child{border-bottom:0}.output-block{border-inline-start:3px solid var(--gold);background:var(--gold-tint);border-radius:var(--r-sm);padding:var(--sp-3);white-space:pre-wrap;font:var(--fw-reg) var(--fs-body) / var(--lh-body) var(--font-ar);color:var(--ink)}.stack{display:flex;flex-direction:column;gap:var(--sp-4)}.row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.pad{padding:var(--sp-4) var(--sp-5)}.surface{display:flex;flex-direction:column;gap:var(--sp-6);max-inline-size:1280px}.surface.tight{gap:var(--sp-5)}.surface-head{display:flex;flex-direction:column;gap:6px;min-inline-size:0}.surface-head h1{margin:0;font:var(--fw-bold) var(--fs-h2) / var(--lh-h2) var(--font-ar-display);color:var(--ink)}.surface-head h1.sm{font-size:var(--fs-h3);line-height:var(--lh-h3)}.surface-head p{margin:0;max-inline-size:66ch;font:var(--fw-reg) var(--fs-body) / var(--lh-body) var(--font-ar);color:var(--body)}.surface-head p.note{font:var(--fw-reg) var(--fs-caption) / 1.7 var(--font-ar);color:var(--muted)}.surface-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);flex-wrap:wrap}.tbl-head,.tbl-row{display:grid;grid-template-columns:var(--cols);gap:var(--sp-3);align-items:center;padding:10px var(--sp-5);border-block-end:1px solid var(--rule)}.tbl-head{background:var(--surface-2)}.tbl-row:last-child{border-block-end:0}.tbl-row.bad{background:var(--fail-tint)}.tbl-row.gold{background:var(--gold-tint)}.tbl-row.work{background:var(--work-tint)}.end{text-align:end}.cell-mono{font-size:var(--fs-caption);color:var(--ink)}.cell-sub{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.clip{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{flex:none;inline-size:9px;block-size:9px;border-radius:var(--r-pill);background:var(--muted)}.dot.ok{background:var(--green)}.dot.run{background:var(--work)}.dot.await{background:var(--gold)}.dot.bad{background:var(--fail)}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--sp-4)}.tpl-card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:var(--sp-4);background:var(--surface);border:var(--bw) solid var(--rule);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1);transition:border-color var(--dur-2),box-shadow var(--dur-2)}.tpl-card:hover{border-color:var(--red);box-shadow:var(--sh-3)}.tpl-card:focus-visible{box-shadow:var(--sh-focus)}.tpl-card b{font:var(--fw-semi) var(--fs-body-lg) / 1.5 var(--font-ar);color:var(--ink)}.tpl-tags{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.tpl-stats{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3);padding-block-start:var(--sp-3);border-block-start:1px solid var(--rule)}.stat{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.stat>span:first-child{font:var(--fw-reg) var(--fs-micro) / 1.4 var(--font-ar);color:var(--muted)}.stat>span:last-child{font:var(--fw-med) var(--fs-caption) / 1.3 var(--font-ar);color:var(--ink)}.stat .mono{font-size:var(--fs-caption)}.cap-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--rule);border-radius:var(--r-pill);padding:2px 9px}.cap-pill .mono{font-size:var(--fs-micro);color:var(--body)}.brief{display:flex;flex-direction:column;gap:var(--sp-5);max-inline-size:720px}.form-body{padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5)}.form-body label{display:flex;flex-direction:column;gap:7px}.form-body label>span:first-child{font:var(--fw-med) var(--fs-caption) / 1.4 var(--font-ar);color:var(--slate)}.form-foot{display:flex;align-items:center;gap:var(--sp-3);padding-block-start:var(--sp-4);border-block-start:1px solid var(--rule)}.form-foot.bare{padding-block-start:0;border-block-start:0}.back-link{align-self:flex-start}.run-foot{padding:10px var(--sp-5);background:var(--surface-2);display:flex;align-items:center;gap:var(--sp-3)}.run-foot .indet{flex:1}.run-foot span{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.art-list{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3)}.art-card{border:var(--bw) solid var(--gold);border-inline-start-width:5px;border-radius:var(--r-md);background:var(--gold-tint);overflow:hidden}.art-card.plain{border-color:var(--rule);border-inline-start-width:var(--bw);background:var(--surface)}.art-body{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.art-body>p{margin:0;font:var(--fw-reg) 1rem / 1.9 var(--font-ar);color:var(--ink)}.art-body pre{margin:0;white-space:pre-wrap;word-break:break-word;font-size:var(--fs-micro);color:var(--ink)}.art-foot{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.art-foot .mono{font-size:var(--fs-micro);color:var(--gold-ink)}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:var(--sp-5);align-items:start}.split>*{min-inline-size:0}.pick-row{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:7px;inline-size:100%;padding:13px var(--sp-4);border-block-end:1px solid var(--rule);border-inline-start:3px solid transparent}.pick-row:hover{background:var(--surface-2)}.pick-row:focus-visible{box-shadow:var(--sh-focus)}.pick-row.on{border-inline-start-color:var(--red);background:var(--red-tint)}.pick-row .line{display:flex;align-items:center;gap:var(--sp-2);inline-size:100%}.pick-row .title{flex:1;min-inline-size:0;font:var(--fw-semi) var(--fs-body-sm) / 1.4 var(--font-ar);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-row .wait{flex:none;font-size:var(--fs-micro);color:var(--gold-ink)}.pick-row .sub{flex:none;font-size:var(--fs-micro);color:var(--slate)}.pick-grid{all:unset;box-sizing:border-box;inline-size:100%;cursor:pointer;display:grid;grid-template-columns:var(--cols);align-items:center;gap:var(--sp-2);padding:10px var(--sp-4);border-block-end:1px solid var(--rule)}.pick-grid:hover{background:var(--surface-2)}.pick-grid:focus-visible{box-shadow:var(--sh-focus)}.pick-grid.on{background:var(--red-tint)}.blank{padding:var(--sp-8) var(--sp-5);display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center}.blank .glyph{inline-size:34px;block-size:34px;border-radius:var(--r-sm);border:var(--bw) dashed var(--rule-strong);display:grid;place-items:center;font:var(--fw-reg) 15px / 1 var(--font-mono);color:var(--muted)}.blank b{font:var(--fw-semi) var(--fs-body-sm) / 1.5 var(--font-ar);color:var(--ink)}.blank p{margin:0;max-inline-size:40ch;font:var(--fw-reg) var(--fs-caption) / 1.8 var(--font-ar);color:var(--muted)}.q-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-block-end:1px solid var(--rule);background:var(--surface-2)}.q-fact{display:flex;flex-direction:column;gap:3px;min-inline-size:0}.q-fact>span:first-child{font:var(--fw-reg) var(--fs-micro) / 1.4 var(--font-ar);color:var(--muted)}.q-fact .who{display:flex;align-items:center;gap:var(--sp-2)}.q-body{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-5)}.q-field{display:flex;flex-direction:column;gap:var(--sp-2)}.q-actions{display:flex;flex-direction:column;gap:var(--sp-3);padding-block-start:var(--sp-4);border-block-start:1px solid var(--rule)}.q-actions label{display:flex;flex-direction:column;gap:7px}.q-actions label>span{font:var(--fw-med) var(--fs-caption) / 1.4 var(--font-ar);color:var(--slate)}.q-buttons{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.decided{border:var(--bw) solid var(--green);background:var(--green-tint);border-radius:var(--r-md);padding:var(--sp-4);display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.decided.no{border-color:var(--fail);background:var(--fail-tint)}.decided b{flex:1;min-inline-size:0;font:var(--fw-semi) var(--fs-body-sm) / 1.6 var(--font-ar);color:var(--green)}.decided.no b{color:var(--fail)}.decided span{font:var(--fw-reg) var(--fs-caption) / 1.6 var(--font-ar);color:var(--body)}.prompt-body{border:var(--bw) solid var(--rule);border-radius:var(--r-sm);background:var(--surface-2);padding:var(--sp-4);font:var(--fw-reg) .875rem / 2 var(--font-ar);color:var(--ink);white-space:pre-wrap;word-break:break-word}.ref-token{background:var(--red-tint);color:var(--red);border-radius:var(--r-xs);padding:1px 3px;font-family:var(--font-mono);font-size:.75rem;direction:ltr;unicode-bidi:isolate}.chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.var-chip{background:var(--red-tint);color:var(--red);border-radius:var(--r-xs);padding:2px 7px;font-size:var(--fs-micro)}.two-up{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--sp-4)}.code-box{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface-2);padding:9px;font-size:var(--fs-micro);color:var(--body);white-space:pre-wrap;word-break:break-word;display:block}.prov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(370px,1fr));gap:var(--sp-4)}.prov-card{display:flex;flex-direction:column}.prov-body{padding:var(--sp-4) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3);flex:1}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.kv{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.kv>span:first-child{font:var(--fw-reg) var(--fs-micro) / 1.4 var(--font-ar);color:var(--muted)}.kv>span:last-child{font:var(--fw-reg) var(--fs-caption) / 1.5 var(--font-ar);color:var(--ink)}.kv .mono{font-size:var(--fs-caption)}.prov-models{display:flex;flex-direction:column;gap:var(--sp-2);padding-block-start:var(--sp-3);border-block-start:1px solid var(--rule)}.model-chip{border:1px solid var(--green);border-radius:var(--r-xs);padding:3px 8px;font-size:var(--fs-micro);color:var(--ink);background:var(--green-tint)}.model-chip.off{border-color:var(--rule);color:var(--muted);background:var(--surface-2)}.hop{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule);border-radius:var(--r-sm);padding:3px 9px;background:var(--surface-2)}.hop .n{font-size:var(--fs-micro);color:var(--muted)}.hop .m{font-size:var(--fs-micro);color:var(--ink)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--sp-4)}.stat-tile{padding:var(--sp-5);display:flex;flex-direction:column;gap:5px}.stat-tile>span:first-child{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}.stat-value{font:var(--fw-med) var(--fs-h3) / 1.2 var(--font-mono);color:var(--ink)}.stat-value.good{color:var(--green)}.stat-foot{font-size:var(--fs-micro);color:var(--muted)}.bars{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.bar-row{display:flex;flex-direction:column;gap:6px}.bar-label{display:flex;align-items:baseline;gap:var(--sp-3)}.bar-label>:first-child{flex:1;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--fw-reg) var(--fs-caption) / 1.4 var(--font-ar);color:var(--ink)}.bar-label>.mono:first-child{font-size:var(--fs-micro)}.bar-label>:last-child{flex:none;font-size:var(--fs-micro);color:var(--body)}.bar-track{display:block;block-size:8px;border-radius:var(--r-pill);background:var(--band);overflow:hidden}.bar-track.thin{block-size:6px}.bar-fill{display:block;block-size:100%;border-radius:var(--r-pill);background:var(--red)}.bar-fill.slate{background:var(--slate)}.bar-fill.green{background:var(--green)}.bar-fill.fail{background:var(--fail)}.trace-row{padding-inline-start:calc(var(--sp-4) + var(--depth) * 26px)}.trace-dot{flex:none;inline-size:7px;block-size:7px;border-radius:2px;background:var(--slate)}.trace-dot.root{background:var(--ink)}.trace-dot.call{border-radius:var(--r-pill);background:var(--green)}.trace-dot.bad{background:var(--fail)}.cell{display:grid;place-items:center;block-size:26px;border-radius:var(--r-xs);font-family:var(--font-mono);font-size:var(--fs-caption);background:var(--surface-2);color:var(--muted)}.cell.allow{background:var(--green-tint);color:var(--green)}.cell.wild{background:var(--red-tint);color:var(--red);font-weight:var(--fw-semi)}.legend{padding:10px var(--sp-5);background:var(--surface-2);display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap}.legend>span{display:flex;align-items:center;gap:6px}.legend span span:last-child{font:var(--fw-reg) var(--fs-micro) / 1.5 var(--font-ar);color:var(--muted)}@media(max-width:720px){.tbl-head,.tbl-row,.pick-grid{padding-inline:var(--sp-4)}.surface-head h1{font-size:var(--fs-h3);line-height:var(--lh-h3)}}
