body{margin:0}.app-root.web a{color:#14566a}.app-root.web a:hover{color:#1b6c80}.app-root.web{--bg:#F1F5F9;--bg-alt:#F8FAFC;--bg-soft:#FFFFFF;--bg-hover:#E2E8F0;--muted-bg:#F1F5F9;--border:#E2E8F0;--border-strong:#CBD5E1;--text:#0F172A;--text-soft:#475569;--muted:#5b6678;--accent:#1b6c80;--accent-fill:#1b6c80;--accent-strong:#14566a;--on-accent:#ffffff;--on-accent-tint:#1e40af;--fpt-orange:#F36F21;--green:#16A34A;--red:#DC2626;--purple:#2f70bb;--on-red-tint:#7f1d1d;--on-green-tint:#14532d;--on-amber-tint:#9a3412;--on-purple-tint:#6b21a8;--on-blue-tint:#1e40af;--on-teal-tint:#115e59;--tone-blue-fill:#1b6c80;--tone-green-fill:#15803d;--tone-orange-fill:#EA580C;--tone-purple-fill:#2f70bb;--tone-teal-fill:#0f766e;--tone-red-fill:#DC2626;--tone-gray-fill:#5b6678;--glass-bg:rgba(255,255,255,.65);--glass-card:rgba(255,255,255,.88);--glass-border:rgba(15,23,42,.12);--glass-shadow:0 1px 2px rgba(2,6,23,.06),0 8px 24px rgba(2,6,23,.12),0 24px 48px -16px rgba(2,6,23,.14);--glass-shadow-sm:0 1px 2px rgba(2,6,23,.05),0 4px 12px -2px rgba(2,6,23,.1);--radius:10px;--type-caption2:.68rem;--type-caption:.72rem;--type-footnote:.75rem;--type-subhead:.8rem;--type-callout:.875rem;--type-body:.9rem;--type-headline:1rem;--type-title3:1.15rem;--type-title2:1.5rem;--type-title1:1.5rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--control-h-2xs:22px;--control-h-xs:28px;--control-h-sm:32px;--control-h:36px;--control-h-lg:44px;--motion-enter:.24s;--motion-ease:cubic-bezier(.16,1,.3,1);--chip:32px;--chip-lg:44px;--sidebar-w:256px;--font-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Chakra Petch","Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;font:15px/1.55 var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;height:var(--frame-h,100vh);overflow:hidden}.app-root.web[data-theme=dark]{--bg:#0A0F1E;--bg-alt:#0f172a;--bg-soft:#141929;--bg-hover:#1e293b;--muted-bg:#1a2133;--border:#243050;--border-strong:#334155;--text:#F0F4FF;--text-soft:#a3b3c6;--muted:#94a3b8;--accent:#5fb4c8;--accent-fill:#1b6c80;--accent-strong:#93c5fd;--on-accent-tint:#bfdbfe;--red:#e5566f;--purple:#6ea3e6;--on-red-tint:#f87171;--on-green-tint:#4ade80;--on-amber-tint:#fb923c;--on-purple-tint:#6ea3e6;--on-blue-tint:#93c5fd;--on-teal-tint:#5eead4;--glass-bg:rgba(20,25,41,.65);--glass-card:rgba(20,25,41,.82);--glass-border:rgba(255,255,255,.1)}.app-root.web,.app-root.web *{box-sizing:border-box}.app-root.web button,.app-root.web select{font-family:inherit;color:inherit}.app-root.web :where(button,a,input,select,textarea,[contenteditable]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web h1,.app-root.web h2,.app-root.web h3{font-family:var(--font-display)}.app-root.web .glass{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px #fff9}.app-root.web[data-theme=dark] .glass{box-shadow:var(--glass-shadow),inset 0 1px #ffffff0f}.app-root.web .w-sidebar{position:fixed;left:0;top:0;bottom:0;z-index:40;width:var(--sidebar-w);display:flex;flex-direction:column;border-width:0 1px 0 0}.app-root.web .w-logo{display:flex;align-items:center;gap:12px;padding:28px 24px 24px}.app-root.web .w-logo-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff;box-shadow:0 1px 2px #0206171a;flex-shrink:0}.app-root.web .w-logo-name{display:block;font-size:1.2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.app-root.web .w-logo-sub{display:block;font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.app-root.web .w-nav{flex:1;overflow-y:auto;padding:0 12px}.app-root.web .w-nav-sec{padding:0 12px;margin:14px 0 4px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.app-root.web .w-nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--text-soft);font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.app-root.web .w-nav-item svg{width:20px;height:20px;flex-shrink:0;color:var(--muted)}.app-root.web .w-nav-item:hover{background:var(--muted-bg);color:var(--text)}.app-root.web .w-nav-item.active{background:color-mix(in oklab,var(--accent) 10%,transparent);color:var(--text);font-weight:600}.app-root.web .w-nav-item.active svg{color:var(--accent)}.app-root.web .w-nav-item .count-badge{margin-left:auto}.app-root.web .w-user{display:flex;align-items:center;gap:10px;padding:16px 20px 24px;border-top:1px solid var(--border)}.app-root.web .w-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:var(--tone-blue-fill);flex-shrink:0}.app-root.web .w-user-mail{display:block;font-size:.75rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .w-user-role{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .w-user-text{min-width:0}.app-root.web .w-main{margin-left:var(--sidebar-w);height:var(--frame-h,100vh);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column}.app-root.web .w-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:60px;padding:10px 24px;border-width:0 0 1px;border-radius:0}.app-root.web .w-mlogo{display:none}.app-root.web .w-crumb{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--text-soft);min-width:0}.app-root.web .w-project{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-soft);font-weight:600;color:var(--text);cursor:pointer}.app-root.web .w-project svg{width:14px;height:14px;color:var(--muted)}.app-root.web .w-crumb strong{color:var(--text);font-weight:600}.app-root.web .w-top-spacer{flex:1;min-width:8px}.app-root.web .w-icon-btn{position:relative;width:36px;height:36px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--border);background:var(--bg-soft);cursor:pointer;flex-shrink:0}.app-root.web .w-icon-btn:hover{background:var(--muted-bg)}.app-root.web .w-icon-btn svg{width:18px;height:18px}.app-root.web .tb-bell-dot{position:absolute;top:6px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--red)}.app-root.web .demo-bar{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 6px 0 8px;border-radius:12px;border:1px dashed color-mix(in oklab,#EA580C 55%,transparent);background:color-mix(in oklab,#EA580C 6%,var(--bg-soft));min-width:0;flex-wrap:nowrap}.app-root.web .demo-tag{font-size:var(--type-caption2);font-weight:700;letter-spacing:.08em;color:#fff;background:var(--tone-orange-fill);padding:3px 6px;border-radius:6px;flex-shrink:0}.app-root.web .demo-label{font-size:var(--type-caption);color:var(--text-soft);font-weight:600;white-space:nowrap}.app-root.web .demo-select{height:28px;max-width:200px;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-soft);font-size:var(--type-subhead);font-weight:600;padding:0 6px;max-width:240px;min-width:0;cursor:pointer}.app-root.web .demo-sep{width:1px;height:20px;background:var(--border-strong);flex-shrink:0}.app-root.web .demo-reset{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--text-soft);cursor:pointer;flex-shrink:0}.app-root.web .demo-reset:hover{background:color-mix(in oklab,var(--text) 8%,transparent);color:var(--text)}.app-root.web .demo-reset svg{width:16px;height:16px}.app-root.web .w-content{flex:1;width:100%;max-width:1360px;margin:0 auto;padding:28px 32px 56px}.app-root.web .w-page{display:flex;flex-direction:column;gap:20px;min-width:0}.app-root.web .w-bottom{display:none}.app-root.web .count-badge{min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:inline-grid;place-items:center;font-size:var(--type-caption);font-weight:700;background:var(--red);color:#fff}.app-root.web .w-kv{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:16px;align-items:center;padding:.65rem 0}.app-root.web .w-kv+.w-kv{border-top:1px solid var(--border)}.app-root.web .w-kv-k{font-size:var(--type-subhead);color:var(--text-soft);font-weight:600}.app-root.web .w-kv-v{font-size:var(--type-callout);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1023px){.app-root.web .demo-tag{order:1}.app-root.web .demo-select{order:2}.app-root.web .demo-reset{order:3}.app-root.web .demo-bar .seg{order:4}.app-root.web .demo-sep{display:none}.app-root.web .seg-btn{padding:0 8px}.app-root.web .w-kv{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.app-root.web .w-kv-k{grid-column:1 / -1}}.app-root.web .pane-header{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.app-root.web .pane-text{flex:1 1 320px;min-width:0}.app-root.web .pane-title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .pane-titleline{display:flex;align-items:baseline;gap:0 8px;min-width:0}.app-root.web .pane-titleline .pane-title{min-width:0;flex:0 1 auto}.app-root.web .pane-back{padding:0;border:0;background:transparent;color:var(--text-soft);font-family:var(--font-display);font-size:1.5rem;font-weight:600;line-height:1.2;cursor:pointer;flex-shrink:0}.app-root.web .pane-back:hover{color:var(--accent)}.app-root.web .pane-sep{width:16px;height:16px;color:var(--muted);align-self:center;flex-shrink:0}.app-root.web .pane-desc{margin:6px 0 0;font-size:.875rem;color:var(--text-soft)}.app-root.web .pane-aside{flex-shrink:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.app-root.web .pane-meta{font-size:var(--type-subhead);color:var(--muted)}.app-root.web .pane-body{background:var(--glass-card);border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--glass-shadow-sm);padding:0 24px;min-width:0}.app-root.web .pane-foot{position:sticky;bottom:16px;z-index:5;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.app-root.web .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 16px;border-radius:8px;border:1px solid transparent;background:transparent;font-size:.875rem;font-weight:500;white-space:nowrap;flex-shrink:0;cursor:pointer;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.app-root.web .btn svg{width:16px;height:16px;flex-shrink:0}.app-root.web .btn:hover{transform:scale(1.03)}.app-root.web .btn:active{transform:scale(.97)}.app-root.web .btn-primary{background:var(--accent-fill);color:#fff}.app-root.web .btn-primary:hover{background:color-mix(in oklab,var(--accent-fill) 90%,#000)}.app-root.web .btn-secondary{background:var(--bg-soft);border-color:var(--border-strong);color:var(--text);box-shadow:0 1px 2px #0206170d}.app-root.web .btn-secondary:hover{background:var(--muted-bg)}.app-root.web .btn-ghost{color:var(--text)}.app-root.web .btn-ghost:hover{background:var(--muted-bg)}.app-root.web .btn-tinted{background:color-mix(in oklab,var(--accent) 12%,transparent);color:var(--on-accent-tint)}.app-root.web .btn-tinted:hover{background:color-mix(in oklab,var(--accent) 18%,transparent)}.app-root.web .btn-xs{height:28px;padding:0 10px;font-size:.78rem}.app-root.web .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.app-root.web .dw-sec{padding:var(--space-5) 0;border-top:1px solid var(--border-strong)}.app-root.web .dw-sec:first-child{border-top:none}.app-root.web .dw-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap}.app-root.web .dw-sec-title{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .dw-sec-meta{font-size:var(--type-subhead);color:var(--muted)}.app-root.web .dw-type{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:6px;font-size:var(--type-caption);font-weight:700;flex-shrink:0}.app-root.web .dw-type--story{background:color-mix(in oklab,var(--accent) 14%,transparent);color:var(--on-blue-tint)}.app-root.web .dw-type--bug{background:color-mix(in oklab,#dc2626 12%,transparent);color:var(--on-red-tint)}.app-root.web .dw-type--task{background:color-mix(in oklab,#f36f21 14%,transparent);color:var(--on-amber-tint)}.app-root.web .dw-type--rfp{background:color-mix(in oklab,#0d9488 14%,transparent);color:var(--on-teal-tint,var(--text))}.app-root.web .dw-type--epic{background:color-mix(in oklab,#2f70bb 12%,transparent);color:var(--on-purple-tint)}.app-root.web .dw-id{font-family:var(--font-mono);font-size:var(--type-subhead);font-weight:600;color:var(--text-soft);flex-shrink:0}.app-root.web .dw-key{display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:6px;font-family:var(--font-mono);font-size:var(--type-caption);font-weight:600;background:color-mix(in oklab,var(--purple) 12%,transparent);color:var(--on-purple-tint);flex-shrink:0}.app-root.web .dw-mail{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px 0 3px;border-radius:12px;font-size:var(--type-subhead);background:color-mix(in oklab,var(--text) 6%,transparent);border:1px solid var(--border);white-space:nowrap}.app-root.web .dw-mail-av{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:700;background:var(--tone-gray-fill);color:#fff}.app-root.web .dw-mail--me{border-color:color-mix(in oklab,var(--accent) 45%,transparent);background:color-mix(in oklab,var(--accent) 10%,transparent)}.app-root.web .dw-mails{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.app-root.web .dw-tag{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:13px;font-size:var(--type-caption);font-weight:600;border:1px solid var(--border-strong);color:var(--text-soft);background:color-mix(in oklab,var(--bg-soft) 60%,transparent);white-space:nowrap}.app-root.web .dw-tag svg{width:13px;height:13px}.app-root.web .dw-tag--dw{border-color:color-mix(in oklab,var(--purple) 40%,transparent);color:var(--on-purple-tint);background:color-mix(in oklab,var(--purple) 8%,transparent);font-family:var(--font-mono)}.app-root.web .dw-tag--ok{border-color:color-mix(in oklab,#48b02c 45%,transparent);color:var(--on-green-tint);background:color-mix(in oklab,#48b02c 10%,transparent)}.app-root.web .dw-tag--wait{border-color:color-mix(in oklab,#f36f21 45%,transparent);color:var(--on-amber-tint);background:color-mix(in oklab,#f36f21 10%,transparent)}.app-root.web .dw-tag--info{border-color:color-mix(in oklab,var(--accent) 40%,transparent);color:var(--on-blue-tint);background:color-mix(in oklab,var(--accent) 8%,transparent)}.app-root.web .dw-tag--off{color:var(--text-soft)}.app-root.web .dw-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--muted)}.app-root.web .dw-dot--run,.app-root.web .dw-dot--check{background:var(--accent);animation:dw-pulse 1.4s ease-in-out infinite}.app-root.web .dw-dot--gate{background:#f36f21}.app-root.web .dw-dot--ask{background:var(--purple);animation:dw-pulse 1.4s ease-in-out infinite}.app-root.web .dw-dot--human{background:var(--tone-teal-fill)}.app-root.web .dw-dot--done{background:#48b02c}.app-root.web .dw-chevron{width:18px;height:18px;color:var(--muted);flex-shrink:0}.app-root.web .dw-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:3rem 1rem;color:var(--text-soft);text-align:center}.app-root.web .dw-empty svg{width:40px;height:40px;color:#48b02c}.app-root.web .dw-rows>*+*{border-top:1px solid var(--border)}.app-root.web .dw-note{font-size:var(--type-footnote);color:var(--muted);margin:0}.app-root.web .dw-label{font-size:var(--type-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft)}.app-root.web .dw-mono{font-family:var(--font-mono);font-size:var(--type-subhead)}.app-root.web .dw-line{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.app-root.web .dw-board{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);min-height:100%}.app-root.web .dw-col{padding:var(--space-5) var(--space-5) var(--space-5) 0;min-width:0}.app-root.web .dw-col--right{padding:var(--space-5) 0 var(--space-5) var(--space-5);border-left:1px solid var(--border-strong)}.app-root.web .dw-search-wrap{position:relative}.app-root.web .dw-search-wrap svg{position:absolute;left:10px;top:9px;width:14px;height:14px;color:var(--muted)}.app-root.web .dw-search{width:100%;height:var(--control-h-sm);padding:0 var(--space-3) 0 2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-soft);color:var(--text);font-size:var(--type-callout);margin-bottom:var(--space-3)}.app-root.web .dw-tickets{display:flex;flex-direction:column;gap:var(--space-2)}.app-root.web .dw-ticket{padding:.7rem .8rem;cursor:grab;-webkit-user-select:none;user-select:none;animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-ticket:active{cursor:grabbing}.app-root.web .dw-ticket.is-dragging{opacity:.35}.app-root.web .dw-ticket.is-blocked{cursor:not-allowed;opacity:.62}.app-root.web .dw-ticket.is-shake{animation:dw-shake .45s ease}.app-root.web .dw-ticket-top{display:flex;align-items:center;gap:var(--space-2);min-width:0}.app-root.web .dw-ticket-state{font-size:var(--type-caption);color:var(--muted)}.app-root.web .dw-grip{margin-left:auto;width:16px;height:16px;color:var(--muted);flex-shrink:0}.app-root.web .dw-ticket-title{margin-top:6px;font-size:var(--type-callout);font-weight:600;line-height:1.35}.app-root.web .dw-ticket-why{display:flex;gap:6px;align-items:flex-start;margin-top:6px;font-size:var(--type-footnote);color:var(--text-soft)}.app-root.web .dw-ticket-why svg{width:13px;height:13px;margin-top:2px;flex-shrink:0}.app-root.web .dw-ticket-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:8px}.app-root.web .dw-meta{font-size:var(--type-footnote);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:212px;padding:var(--space-6);border-radius:var(--radius);border:2px dashed color-mix(in oklab,var(--accent) 45%,transparent);background:color-mix(in oklab,var(--accent) 5%,transparent);text-align:center;overflow:hidden;transition:transform var(--motion-enter) var(--motion-ease),background .2s ease,border-color .2s ease}.app-root.web .dw-drop>*{pointer-events:none}.app-root.web .dw-drop.is-over{transform:scale(1.015);border-style:solid;border-color:var(--accent);background:color-mix(in oklab,var(--accent) 13%,transparent)}.app-root.web .dw-drop-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:#fff;background:var(--tone-purple-fill);margin-bottom:6px;transition:transform var(--motion-enter) var(--motion-ease)}.app-root.web .dw-drop.is-over .dw-drop-icon{transform:translateY(-4px) scale(1.08)}.app-root.web .dw-drop-icon svg{width:26px;height:26px}.app-root.web .dw-drop-title{font-size:var(--type-headline);font-weight:700}.app-root.web .dw-drop-sub{font-size:var(--type-subhead);color:var(--text-soft);max-width:46ch}.app-root.web .dw-drop-card{position:relative;z-index:1;display:flex;flex-direction:column;gap:6px;width:min(360px,100%);padding:.8rem .9rem;text-align:left;animation:dw-absorb .7s var(--motion-ease) both}.app-root.web .dw-ripple{position:absolute;left:50%;top:50%;width:260px;height:260px;margin:-130px 0 0 -130px;border-radius:50%;border:2px solid var(--accent);animation:dw-ripple 1.1s ease-out infinite;pointer-events:none}.app-root.web .dw-ripple--2{animation-delay:.35s}.app-root.web .dw-drop-status{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:var(--type-subhead);font-weight:600;color:var(--on-accent-tint)}.app-root.web .dw-spin{width:16px;height:16px;border-radius:50%;border:2px solid color-mix(in oklab,var(--accent) 25%,transparent);border-top-color:var(--accent);animation:dw-spin .8s linear infinite;flex-shrink:0}.app-root.web .dw-nostart{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-4);border-radius:var(--radius);border:1px solid var(--border-strong);background:color-mix(in oklab,var(--text) 4%,transparent);font-size:var(--type-callout);color:var(--text-soft)}.app-root.web .dw-nostart svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.app-root.web .dw-run{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);width:100%;padding:.75rem var(--space-2);border:0;border-radius:var(--radius);background:transparent;text-align:left;cursor:pointer}.app-root.web .dw-run:hover{background:color-mix(in oklab,var(--text) 5%,transparent)}.app-root.web .dw-run.is-new{animation:dw-rise .5s var(--motion-ease) backwards;background:color-mix(in oklab,var(--accent) 7%,transparent)}.app-root.web .dw-run-title{min-width:0;font-size:var(--type-callout);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-run-node{display:inline-flex;align-items:center;gap:6px;font-size:var(--type-subhead);font-weight:600;white-space:nowrap}.app-root.web .dw-prog{width:84px;height:6px;border-radius:3px;background:color-mix(in oklab,var(--text) 10%,transparent);overflow:hidden}.app-root.web .dw-prog>span{display:block;height:100%;border-radius:3px;background:var(--accent);transition:width .6s var(--motion-ease)}.app-root.web .dw-dag-box{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in oklab,var(--bg-soft) 45%,transparent);overflow-x:auto;overflow-y:hidden}.app-root.web .dw-dag-box--sm .dw-dag{padding:12px 14px}.app-root.web .dw-dag-box--sm .dw-node{width:148px;padding:.45rem .6rem;gap:2px;cursor:pointer}.app-root.web .dw-dag-box--sm .dw-dag-arrow{width:22px}.app-root.web .dw-dag-box--sm .dw-dag-stack{gap:8px;padding:6px}.app-root.web .dw-dag{display:flex;align-items:center;width:max-content;min-width:100%;padding:16px 18px}.app-root.web .dw-dag-col{display:flex;align-items:center;flex-shrink:0}.app-root.web .dw-dag-arrow{width:34px;height:2px;background:var(--border-strong);position:relative;flex-shrink:0}.app-root.web .dw-dag-arrow:after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left:7px solid var(--border-strong);border-right:0}.app-root.web .dw-dag-stack{display:flex;flex-direction:column;gap:10px;padding:8px;border-radius:var(--radius)}.app-root.web .dw-dag-stack.is-par{border:1px dashed var(--border-strong);padding:6px 8px 8px}.app-root.web .dw-par-label{font-size:var(--type-caption2);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center}.app-root.web .dw-node{position:relative;width:180px;padding:.6rem .7rem;border-radius:var(--radius);border:1.5px solid color-mix(in oklab,var(--purple) 35%,transparent);background:var(--bg-soft);display:flex;flex-direction:column;gap:3px;font:inherit;color:var(--text);text-align:left;transition:border-color .2s ease,box-shadow .2s ease}.app-root.web button.dw-node{cursor:pointer}.app-root.web button.dw-node:hover{box-shadow:0 2px 10px #0f172a14}.app-root.web .dw-node.is-sel{box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 32%,transparent)}.app-root.web .dw-node-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.app-root.web .dw-node-name{font-size:var(--type-subhead);font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-node-line{font-size:var(--type-caption);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-node-prog{height:4px;border-radius:2px;background:color-mix(in oklab,var(--text) 10%,transparent);overflow:hidden;margin-top:4px}.app-root.web .dw-node-prog>span{display:block;height:100%;background:var(--accent);transition:width .5s var(--motion-ease)}.app-root.web .dw-node.is-rec{border-color:#f36f21;border-width:2px}.app-root.web .dw-node.is-human{border-style:dashed;border-color:color-mix(in oklab,var(--tone-teal-fill) 75%,transparent)}.app-root.web .dw-node.is-red{border-color:var(--red);background:color-mix(in oklab,var(--red) 7%,var(--bg-soft))}.app-root.web .dw-node.s-done{border-color:color-mix(in oklab,#48b02c 65%,transparent)}.app-root.web .dw-node.s-gate{border-color:#f36f21;border-width:2px}.app-root.web .dw-node.s-run,.app-root.web .dw-node.s-check{border-color:var(--accent);border-width:2px}.app-root.web .dw-node.s-ask{border-color:var(--purple);border-width:2px}.app-root.web .dw-node.s-human{border-color:var(--tone-teal-fill);border-width:2px;border-style:dashed}.app-root.web .dw-node.s-queued{opacity:.55}.app-root.web .dw-state{display:inline-flex;align-items:center;gap:5px;font-size:var(--type-caption);font-weight:600;color:var(--text-soft);white-space:nowrap}.app-root.web .dw-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--type-footnote);color:var(--text-soft)}.app-root.web .dw-legend span{display:inline-flex;align-items:center;gap:6px}.app-root.web .dw-sw{width:16px;height:11px;border-radius:4px;background:var(--neutral-card);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--text) 14%,transparent)}.app-root.web .dw-sw--rec{background:var(--brand-card)}.app-root.web .dw-sw--human{background:var(--teal-card)}.app-root.web .dw-sw--red{background:var(--bad-card)}.app-root.web .dw-wait{display:flex;align-items:center;gap:var(--space-3);padding:.8rem 1rem;border-radius:var(--radius);border:1px solid color-mix(in oklab,var(--accent) 35%,transparent);background:color-mix(in oklab,var(--accent) 8%,transparent);animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-wait.is-human{border-color:var(--text)}.app-root.web .dw-wait.is-human .dw-wait-ico{color:var(--text)}.app-root.web .dw-wait.is-held{border-color:var(--border-strong)}.app-root.web .dw-wait.is-done{border-color:color-mix(in oklab,#48b02c 45%,transparent);background:color-mix(in oklab,#48b02c 9%,transparent)}.app-root.web .dw-wait-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:#fff;flex-shrink:0}.app-root.web .dw-wait-ico svg{width:17px;height:17px}.app-root.web .dw-wait-text{flex:1;min-width:0;font-size:var(--type-callout);line-height:1.45}.app-root.web .dw-wait-text strong{display:block;font-size:var(--type-body)}.app-root.web .dw-budget{display:inline-flex;align-items:center;gap:8px;font-size:var(--type-caption);font-weight:600;color:var(--text-soft);white-space:nowrap}.app-root.web .dw-budget-bar{width:96px;height:6px;border-radius:3px;background:color-mix(in oklab,var(--text) 10%,transparent);overflow:hidden}.app-root.web .dw-budget-bar>span{display:block;height:100%;background:var(--tone-green-fill);transition:width .5s var(--motion-ease)}.app-root.web .dw-budget-bar.is-warn>span{background:var(--tone-orange-fill)}.app-root.web .dw-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.app-root.web .dw-split>:first-child{padding-right:var(--space-5)}.app-root.web .dw-split>:last-child{padding-left:var(--space-5);border-left:1px solid var(--border-strong)}.app-root.web .dw-stack{display:flex;flex-direction:column;gap:var(--space-4)}.app-root.web .dw-node-hd{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.app-root.web .dw-node-hd-name{font-size:var(--type-headline);font-weight:700}.app-root.web .dw-term{display:flex;flex-direction:column;gap:1px;padding:.6rem .75rem;border-radius:var(--radius);background:#0f172a;color:#dbe4f0;font-family:var(--font-mono);font-size:12px;line-height:1.6;min-height:120px;max-height:250px;overflow-y:auto}.app-root.web .dw-term-line{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;animation:dw-rise .3s var(--motion-ease) backwards}.app-root.web .dw-term-t,.app-root.web .dw-term-empty{color:#7f8ea3}.app-root.web .dw-term-cursor{display:inline-block;width:7px;height:13px;background:#7fb4ec;vertical-align:-2px;animation:dw-blink 1s steps(2) infinite}.app-root.web .dw-dod{display:flex;flex-direction:column;gap:6px}.app-root.web .dw-dod-item{display:flex;gap:8px;align-items:center;font-size:var(--type-subhead)}.app-root.web .dw-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--border-strong);display:grid;place-items:center;flex-shrink:0;color:#fff;transition:background .2s ease,border-color .2s ease}.app-root.web .dw-check svg{width:12px;height:12px;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .25s var(--motion-ease)}.app-root.web .dw-check.is-ok{background:var(--tone-green-fill);border-color:var(--tone-green-fill)}.app-root.web .dw-check.is-ok svg{opacity:1;transform:none}.app-root.web .dw-docs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.app-root.web .dw-doc{display:flex;gap:10px;align-items:flex-start;padding:.5rem .7rem;border-radius:var(--radius);background:var(--neutral-card)}.app-root.web .dw-doc.is-done{background:var(--ok-card)}.app-root.web .dw-doc.is-off{opacity:.55}.app-root.web .dw-doc-mark{flex-shrink:0;display:grid;place-items:center;width:20px;height:20px;margin-top:1px;color:var(--text-soft)}.app-root.web .dw-doc.is-done .dw-doc-mark{color:var(--ok-ink)}.app-root.web .dw-doc-mark{position:relative}.app-root.web .dw-doc-mark svg{width:16px;height:16px}.app-root.web .dw-doc-mark .dw-fmt-icon{width:17px;height:20px}.app-root.web .dw-fmt-icon{flex-shrink:0;display:block}.app-root.web .dw-fmt-icon.is-faded{opacity:.38;filter:saturate(.35)}.app-root.web .dw-doc-tick{position:absolute;right:-5px;bottom:-4px;display:grid;place-items:center;width:12px;height:12px;border-radius:50%;background:var(--ok-ink);color:#fff;box-shadow:0 0 0 2px var(--ok-card)}.app-root.web .dw-doc-tick svg{width:8px;height:8px}.app-root.web .dw-doc-body{display:flex;flex-direction:column;gap:2px;min-width:0}.app-root.web .dw-doc-name{font-size:var(--type-subhead);font-weight:600;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.app-root.web .dw-doc-fmt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft)}.app-root.web .dw-pick-id:has(.dw-pick-docs){flex-wrap:wrap;row-gap:2px}.app-root.web .dw-pick-docs{flex-basis:100%;font-size:12px;color:var(--text-soft);white-space:normal;overflow-wrap:anywhere;display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px}.app-root.web .dw-pick-doc{display:inline-flex;align-items:center;gap:4px}.app-root.web .dw-pick-doc .dw-fmt-icon{width:12px;height:14px}.app-root.web .dw-files{display:flex;flex-wrap:wrap;gap:8px}.app-root.web .dw-file{display:inline-flex;align-items:center;gap:8px;height:var(--control-h-sm);padding:0 12px;border-radius:var(--radius);border:1px solid var(--border-strong);font-size:var(--type-subhead);font-weight:600;background:color-mix(in oklab,var(--bg-soft) 70%,transparent)}.app-root.web .dw-file svg{width:15px;height:15px;color:var(--text-soft)}.app-root.web .dw-q{display:flex;align-items:center;gap:var(--space-3);padding:.45rem 0;font-size:var(--type-callout)}.app-root.web .dw-q+.dw-q{border-top:1px solid var(--border)}.app-root.web .dw-q-state{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .dw-q-state svg{width:15px;height:15px}.app-root.web .dw-q-state.is-yes{color:var(--on-green-tint)}.app-root.web .dw-log{display:flex;flex-direction:column;max-height:420px;overflow-y:auto}.app-root.web .dw-log-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--space-3);align-items:flex-start;padding:.55rem 0;animation:dw-rise .3s var(--motion-ease) backwards}.app-root.web .dw-log-row+.dw-log-row{border-top:1px solid var(--border)}.app-root.web .dw-av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff}.app-root.web .dw-av--dw{background:var(--tone-purple-fill);border-radius:8px}.app-root.web .dw-av--person{background:var(--tone-gray-fill)}.app-root.web .dw-log-who{font-size:var(--type-subhead);font-weight:700}.app-root.web .dw-log-text{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-log-time{font-size:var(--type-caption);color:var(--muted);white-space:nowrap;font-family:var(--font-mono)}.app-root.web .dw-child{display:flex;align-items:center;gap:var(--space-3);padding:.45rem 0;font-size:var(--type-subhead)}.app-root.web .dw-child+.dw-child{border-top:1px solid var(--border)}.app-root.web .dw-wiki-path{display:block;font-weight:600;margin-bottom:4px;word-break:break-word}.app-root.web .dw-wiki-fm{display:block;font-family:var(--font-mono);font-size:12px;color:var(--text-soft)}.app-root.web .dw-wiki-fm:first-of-type{margin-top:2px}.app-root.web .dw-wiki-h{display:block;font-weight:600;margin-top:2px}.app-root.web .dw-wiki-sep{display:block;font-family:var(--font-mono);font-size:12px;color:var(--muted)}.app-root.web .dw-page{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-3);row-gap:4px;align-items:center;padding:.5rem 0;font-size:var(--type-subhead)}.app-root.web .dw-page>.dw-tag{grid-column:2;justify-self:start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-page+.dw-page{border-top:1px solid var(--border)}.app-root.web .dw-page-path{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-child-state{margin-left:auto;font-size:var(--type-caption);font-weight:600;color:var(--text-soft)}.app-root.web .dw-inbox-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:var(--space-3);align-items:center;width:100%;padding:.75rem var(--space-2);border:0;border-radius:var(--radius);background:transparent;text-align:left;cursor:pointer;animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-inbox-row:hover{background:color-mix(in oklab,var(--text) 5%,transparent)}.app-root.web .dw-inbox-title{display:block;font-size:var(--type-callout);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-inbox-sub{display:block;font-size:var(--type-subhead);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-bubble{padding:.8rem 1rem;border-radius:var(--radius);border:1px solid color-mix(in oklab,var(--purple) 30%,transparent);background:color-mix(in oklab,var(--purple) 6%,transparent);font-size:var(--type-body);line-height:1.55}.app-root.web .dw-edit{min-height:72px;padding:.7rem .85rem;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg-soft);font-size:var(--type-callout);line-height:1.6;white-space:pre-line;color:var(--text)}.app-root.web .dw-edit:focus{border-color:var(--accent);outline:none}.app-root.web .dw-inline{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius);background:color-mix(in oklab,var(--text) 4%,transparent);animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-ac{display:flex;gap:var(--space-3);align-items:flex-start;padding:.45rem 0;font-size:var(--type-callout)}.app-root.web .dw-ac+.dw-ac{border-top:1px solid var(--border)}.app-root.web .dw-ac svg{width:18px;height:18px;flex-shrink:0;color:var(--tone-green-fill);margin-top:2px}.app-root.web .dw-ac-ev{display:block;font-size:var(--type-footnote);color:var(--muted)}.app-root.web .dw-thread{border:1px solid var(--border);border-radius:var(--radius);padding:.7rem .85rem;display:flex;flex-direction:column;gap:8px;background:color-mix(in oklab,var(--bg-soft) 60%,transparent)}.app-root.web .dw-thread-head{display:flex;align-items:center;gap:8px;font-size:var(--type-subhead);font-weight:700}.app-root.web .dw-thread-text{font-size:var(--type-callout)}.app-root.web .dw-thread-reply{margin-left:.5rem;padding:.4rem .75rem;border-radius:8px;background:color-mix(in oklab,var(--purple) 8%,transparent);font-size:var(--type-callout);color:var(--text-soft)}.app-root.web .dw-pr{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .dw-pr-head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.app-root.web .dw-pr-title{font-size:var(--type-headline);font-weight:700}.app-root.web .dw-why{font-size:var(--type-footnote);color:var(--muted)}.app-root.web .dw-banner{display:flex;gap:var(--space-3);align-items:flex-start;padding:.8rem 1rem;border-radius:var(--radius);font-size:var(--type-callout);line-height:1.5}.app-root.web .dw-banner svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.app-root.web .dw-banner--warn{background:color-mix(in oklab,#f36f21 10%,transparent);border:1px solid color-mix(in oklab,#f36f21 35%,transparent);color:var(--on-amber-tint)}.app-root.web .dw-sso-band{flex:none;align-items:center;margin-bottom:16px}.app-root.web .dw-sso-band span{flex:1}.app-root.web .dw-banner--bad{background:var(--pill-bad-bg);border:1px solid color-mix(in oklab,var(--red) 30%,transparent);color:var(--pill-bad-ink);margin:0 0 12px}.app-root.web .dw-banner--ok{background:color-mix(in oklab,#48b02c 10%,transparent);border:1px solid color-mix(in oklab,#48b02c 40%,transparent);color:var(--on-green-tint)}.app-root.web .dw-wiki{padding:.8rem 1rem;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg-soft);font-size:var(--type-callout);line-height:1.6}.app-root.web .dw-wiki-add{color:var(--on-green-tint);background:color-mix(in oklab,#48b02c 10%,transparent);display:block;padding:0 6px;border-radius:4px}.app-root.web .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#0a0f1e73;animation:dw-fade .2s ease-out}.app-root.web .modal-dialog{width:min(1080px,calc(100vw - 3rem));max-height:min(90vh,100% - 3rem);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius);background:#ffffffeb;border:1px solid rgba(255,255,255,.4);box-shadow:0 12px 40px #00000026,0 4px 12px #00000014,inset 0 1px #fff9;animation:dw-pop .28s var(--motion-ease)}.app-root.web[data-theme=dark] .modal-dialog{background:#141929f0;border-color:#ffffff1a}.app-root.web .modal-dialog--md{width:min(680px,calc(100vw - 3rem))}.app-root.web .modal-head{flex-shrink:0;display:flex;align-items:center;gap:.85rem;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border)}.app-root.web .modal-head-text{flex:1;min-width:0}.app-root.web .modal-title{margin:0;font-size:var(--type-title3);font-weight:700;line-height:1.25}.app-root.web .modal-sub{margin:2px 0 0;font-size:var(--type-subhead);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .modal-close{width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius);border:1px solid var(--border);background:color-mix(in oklab,var(--bg-soft) 80%,transparent);cursor:pointer;color:var(--text-soft);flex-shrink:0}.app-root.web .modal-close svg{width:16px;height:16px}.app-root.web .modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-6)}.app-root.web .modal-body>*{flex-shrink:0}.app-root.web .modal-foot{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}.app-root.web .modal-foot-note{margin-right:auto;font-size:var(--type-footnote);color:var(--muted);max-width:52ch}.app-root.web .dw-pf{display:flex;flex-direction:column}.app-root.web .dw-pf-row{display:flex;gap:var(--space-3);align-items:flex-start;padding:.75rem 0;animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-pf-row+.dw-pf-row{border-top:1px solid var(--border)}.app-root.web .dw-pf-ico{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;margin-top:1px;color:#fff}.app-root.web .dw-pf-ico svg{width:14px;height:14px}.app-root.web .dw-pf-ico.is-done{background:var(--tone-green-fill);animation:dw-pop .3s var(--motion-ease)}.app-root.web .dw-pf-ico.is-warn{background:var(--tone-orange-fill);animation:dw-pop .3s var(--motion-ease)}.app-root.web .dw-pf-ico.is-wait{border:2px solid var(--border-strong)}.app-root.web .dw-pf-title{font-size:var(--type-callout);font-weight:600}.app-root.web .dw-pf-detail{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-diff{display:flex;flex-direction:column;gap:4px;margin:4px 0 0;padding-left:1.1rem;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-alt{display:flex;align-items:center;gap:var(--space-3);padding:.6rem .8rem;border-radius:var(--radius);border:1px dashed var(--border-strong);font-size:var(--type-subhead)}.app-root.web .dw-alt svg{width:16px;height:16px;flex-shrink:0}.app-root.web .dw-alt-text{flex:1;min-width:0}.app-root.web .dw-pick{display:flex;flex-direction:column;gap:6px}.app-root.web .dw-pick-head,.app-root.web .dw-pick-main{display:grid;grid-template-columns:minmax(170px,1fr) 122px 246px minmax(0,1.3fr) 36px;align-items:center;column-gap:var(--space-4)}.app-root.web .dw-pick-head{padding:0 var(--space-3);font-size:var(--type-footnote);color:var(--muted)}.app-root.web .dw-pick-row{display:flex;flex-direction:column;gap:6px;padding:.55rem var(--space-3);border-radius:var(--radius);background:var(--neutral-card);transition:background .4s ease}.app-root.web .dw-pick-row.is-red{background:var(--bad-card)}.app-root.web .dw-pick-row.is-hot{background:var(--run-card)}.app-root.web .dw-pick-id{display:flex;align-items:center;gap:var(--space-2);min-width:0}.app-root.web .dw-pick-name{font-size:var(--type-callout);font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-pick-main>.seg{justify-self:start}.app-root.web .dw-pick-tags{display:flex;flex-wrap:wrap;gap:4px 6px;min-width:0}.app-root.web .dw-pick-more{width:32px;padding:0;font-size:1.1rem;line-height:1;justify-self:end}.app-root.web .dw-pick-more[aria-expanded=true],.app-root.web .dw-pick-more.has-value{background:var(--run-card)}.app-root.web .dw-pick-msgs{display:flex;flex-direction:column;gap:2px}.app-root.web .dw-rec{display:block;font-size:var(--type-footnote);color:var(--on-amber-tint)}.app-root.web .dw-red-msg{display:block;font-size:var(--type-footnote);font-weight:600;color:var(--on-red-tint)}.app-root.web .dw-pick-more-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:var(--space-3);align-items:end;padding-top:6px;animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-pick-field{display:flex;flex-direction:column;gap:4px;min-width:0}.app-root.web .dw-pick-field .dw-search,.app-root.web .dw-pick-acc .dw-search{margin-bottom:0;padding-left:var(--space-3)}.app-root.web .dw-pick-field textarea.dw-search{height:auto;min-height:56px;padding-top:6px;resize:vertical;font-family:inherit}.app-root.web .dw-pick-acc{display:grid;grid-template-columns:auto minmax(0,1fr) auto 72px;align-items:center;gap:var(--space-3);padding:.7rem var(--space-3);border-radius:var(--radius);background:var(--navy-card)}.app-root.web .dw-pick-notes{margin:0;padding:.6rem var(--space-3) .6rem 2rem;border-radius:var(--radius);background:var(--neutral-card)}.app-root.web .dw-pick-cap{font-size:var(--type-footnote);color:var(--muted)}.app-root.web .dw-flows{display:flex;flex-direction:column;gap:6px;padding:.6rem var(--space-3);border-radius:var(--radius);background:var(--purple-card)}.app-root.web .dw-flow-row,.app-root.web .dw-flow-single{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.app-root.web .dw-flow-chip{display:inline-flex;align-items:center;gap:4px;border:0;border-radius:999px;padding:.3rem .8rem;font:inherit;font-size:var(--type-footnote);background:var(--glass-card);color:var(--text);cursor:pointer}.app-root.web .dw-flow-chip.active{background:var(--run-card);font-weight:600}.app-root.web .dw-flow-mark{font-weight:700;color:var(--brand)}.app-root.web .dw-pick-add{display:flex;flex-direction:column;gap:8px;padding:.7rem var(--space-3);border-radius:var(--radius);background:var(--teal-card)}.app-root.web .dw-pick-add-after{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--type-footnote)}@media (max-width:640px){.app-root.web .dw-dag-box--sm .dw-dag{padding:8px 10px}.app-root.web .dw-dag-box--sm .dw-node{width:auto;min-width:0;padding:.3rem .5rem}.app-root.web .dw-dag-box.dw-dag-box--sm .dw-node .dw-node-name{display:none}.app-root.web .dw-dag-box--sm .dw-dag-arrow{width:12px}.app-root.web .dw-dag-box--sm .dw-dag-stack{gap:6px;padding:4px}.app-root.web .dw-dag-box--sm .dw-par-label{display:none}}.app-root.web.is-mobile .dw-dag-box--sm .dw-dag{padding:8px 10px}.app-root.web.is-mobile .dw-dag-box--sm .dw-node{width:auto;min-width:0;padding:.3rem .5rem}.app-root.web.is-mobile .dw-dag-box.dw-dag-box--sm .dw-node .dw-node-name{display:none}.app-root.web.is-mobile .dw-dag-box--sm .dw-dag-arrow{width:12px}.app-root.web.is-mobile .dw-dag-box--sm .dw-dag-stack{gap:6px;padding:4px}.app-root.web.is-mobile .dw-dag-box--sm .dw-par-label{display:none}.app-root.web .seg{position:relative;display:inline-flex;gap:2px;padding:2px;border-radius:var(--radius);background:color-mix(in oklab,var(--text) 5%,transparent);border:1px solid var(--border);flex-shrink:0}.app-root.web .seg-btn{height:26px;padding:0 10px;border:0;border-radius:10px;background:transparent;font-size:var(--type-subhead);font-weight:600;color:var(--text-soft);cursor:pointer;transition:background .16s ease,color .16s ease;white-space:nowrap}.app-root.web .seg-btn:hover{color:var(--text)}.app-root.web .seg-btn.active{background:var(--bg-soft);color:var(--text);box-shadow:0 1px 3px #0f172a29}.app-root.web .dw-tool{position:relative;display:inline-block;width:20px;height:20px;border-radius:6px;background:#fff center/14px 14px no-repeat;box-shadow:inset 0 0 0 1px #0f172a29;flex-shrink:0;vertical-align:middle;cursor:default}.app-root.web .dw-tool--hachimi{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 440 440'%3E%0A  %0A  %3Cpath fill='%23042D56' fill-rule='evenodd' d='M413 89 391 159 323 206 305 195 375 148 388 107 287 107 152 193 121 175 147 80 212 36 306 36 290 89ZM248 110 268 98 281 55 217 55 163 92 142 166 153 171Z'/%3E%0A  %3Cpath fill='%23042D56' fill-rule='evenodd' d='M123 379 15 312 15 218 80 174 151 211 153 216 170 307 130 380 126 382ZM91 232 69 219 61 223 46 232 46 258 67 271 74 269 91 259Z'/%3E%0A  %3Cpath fill='%23042D56' fill-rule='evenodd' d='M235 387 274 310 250 211 296 211 314 226 334 305 333 313 289 405 227 405Z'/%3E%0A  %3Cpath fill='%23F17919' fill-rule='evenodd' d='M245 273 254 308 212 392 145 392 190 309 171 211 230 211Z'/%3E%0A  %3Cpath fill='%23F17919' fill-rule='evenodd' d='M349 287 339 243 426 312 316 394 354 312Z'/%3E%0A%3C/svg%3E")}.app-root.web .dw-tool--claude{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23D97757' d='M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z'/%3E%3C/svg%3E")}.app-root.web .dw-tool--codex{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3ClinearGradient id='g' gradientUnits='userSpaceOnUse' x1='12' x2='12' y1='3' y2='21'%3E%3Cstop stop-color='%23B1A7FF'/%3E%3Cstop offset='.5' stop-color='%237A9DFF'/%3E%3Cstop offset='1' stop-color='%233941FF'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url%28%23g%29' d='M9.064 3.344a4.578 4.578 0 012.285-.312c1 .115 1.891.54 2.673 1.275.01.01.024.017.037.021a.09.09 0 00.043 0 4.55 4.55 0 013.046.275l.047.022.116.057a4.581 4.581 0 012.188 2.399c.209.51.313 1.041.315 1.595a4.24 4.24 0 01-.134 1.223.123.123 0 00.03.115c.594.607.988 1.33 1.183 2.17.289 1.425-.007 2.71-.887 3.854l-.136.166a4.548 4.548 0 01-2.201 1.388.123.123 0 00-.081.076c-.191.551-.383 1.023-.74 1.494-.9 1.187-2.222 1.846-3.711 1.838-1.187-.006-2.239-.44-3.157-1.302a.107.107 0 00-.105-.024c-.388.125-.78.143-1.204.138a4.441 4.441 0 01-1.945-.466 4.544 4.544 0 01-1.61-1.335c-.152-.202-.303-.392-.414-.617a5.81 5.81 0 01-.37-.961 4.582 4.582 0 01-.014-2.298.124.124 0 00.006-.056.085.085 0 00-.027-.048 4.467 4.467 0 01-1.034-1.651 3.896 3.896 0 01-.251-1.192 5.189 5.189 0 01.141-1.6c.337-1.112.982-1.985 1.933-2.618.212-.141.413-.251.601-.33.215-.089.43-.164.646-.227a.098.098 0 00.065-.066 4.51 4.51 0 01.829-1.615 4.535 4.535 0 011.837-1.388zm3.482 10.565a.637.637 0 000 1.272h3.636a.637.637 0 100-1.272h-3.636zM8.462 9.23a.637.637 0 00-1.106.631l1.272 2.224-1.266 2.136a.636.636 0 101.095.649l1.454-2.455a.636.636 0 00.005-.64L8.462 9.23z'/%3E%3C/svg%3E");background-size:16px 16px}.app-root.web .dw-tool--copilot{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f2328' fill-rule='evenodd' d='M19.245 5.364c1.322 1.36 1.877 3.216 2.11 5.817.622 0 1.2.135 1.592.654l.73.964c.21.278.323.61.323.955v2.62c0 .339-.173.669-.453.868C20.239 19.602 16.157 21.5 12 21.5c-4.6 0-9.205-2.583-11.547-4.258-.28-.2-.452-.53-.453-.868v-2.62c0-.345.113-.679.321-.956l.73-.963c.392-.517.974-.654 1.593-.654l.029-.297c.25-2.446.81-4.213 2.082-5.52 2.461-2.54 5.71-2.851 7.146-2.864h.198c1.436.013 4.685.323 7.146 2.864zm-7.244 4.328c-.284 0-.613.016-.962.05-.123.447-.305.85-.57 1.108-1.05 1.023-2.316 1.18-2.994 1.18-.638 0-1.306-.13-1.851-.464-.516.165-1.012.403-1.044.996a65.882 65.882 0 00-.063 2.884l-.002.48c-.002.563-.005 1.126-.013 1.69.002.326.204.63.51.765 2.482 1.102 4.83 1.657 6.99 1.657 2.156 0 4.504-.555 6.985-1.657a.854.854 0 00.51-.766c.03-1.682.006-3.372-.076-5.053-.031-.596-.528-.83-1.046-.996-.546.333-1.212.464-1.85.464-.677 0-1.942-.157-2.993-1.18-.266-.258-.447-.661-.57-1.108-.32-.032-.64-.049-.96-.05zm-2.525 4.013c.539 0 .976.426.976.95v1.753c0 .525-.437.95-.976.95a.964.964 0 01-.976-.95v-1.752c0-.525.437-.951.976-.951zm5 0c.539 0 .976.426.976.95v1.753c0 .525-.437.95-.976.95a.964.964 0 01-.976-.95v-1.752c0-.525.437-.951.976-.951zM7.635 5.087c-1.05.102-1.935.438-2.385.906-.975 1.037-.765 3.668-.21 4.224.405.394 1.17.657 1.995.657h.09c.649-.013 1.785-.176 2.73-1.11.435-.41.705-1.433.675-2.47-.03-.834-.27-1.52-.63-1.813-.39-.336-1.275-.482-2.265-.394zm6.465.394c-.36.292-.6.98-.63 1.813-.03 1.037.24 2.06.675 2.47.968.957 2.136 1.104 2.776 1.11h.044c.825 0 1.59-.263 1.995-.657.555-.556.765-3.187-.21-4.224-.45-.468-1.335-.804-2.385-.906-.99-.088-1.875.058-2.265.394zM12 7.615c-.24 0-.525.015-.84.044.03.16.045.336.06.526l-.001.159a2.94 2.94 0 01-.014.25c.225-.022.425-.027.612-.028h.366c.187 0 .387.006.612.028-.015-.146-.015-.277-.015-.409.015-.19.03-.365.06-.526a9.29 9.29 0 00-.84-.044z'/%3E%3C/svg%3E")}.app-root.web .dw-tool--other{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19l7-7 3 3-7 7-3-3z'/%3E%3Cpath d='M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z'/%3E%3Cpath d='M2 2l7.586 7.586'/%3E%3Ccircle cx='11' cy='11' r='2'/%3E%3C/svg%3E");background-size:13px 13px}.app-root.web .dw-tool[data-tip]:hover:after,.app-root.web .dw-tool[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;left:50%;top:calc(100% + 6px);transform:translate(-50%);z-index:60;white-space:nowrap;padding:5px 9px;border-radius:7px;background:#0f172a;color:#f8fafc;font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.3;letter-spacing:0;text-transform:none;box-shadow:0 6px 18px #02061747;pointer-events:none}.app-root.web .dw-tool[data-tip]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web .dw-node .dw-node-name{display:flex;align-items:center;gap:6px;min-width:0;overflow:visible;white-space:nowrap}.app-root.web .dw-node-name-t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-node-tool{display:flex;align-items:center;gap:6px;min-width:0;margin:3px 0 1px}.app-root.web .dw-node-tool-d{font-size:var(--type-caption);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.app-root.web .dw-cfg-acct{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}.app-root.web .dw-engine{font-size:var(--type-footnote);color:var(--text-soft)}.app-root.web .dw-prompt{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;padding:var(--space-3);border-radius:var(--radius);background:color-mix(in oklab,var(--text) 4%,transparent);animation:dw-rise var(--motion-enter) var(--motion-ease) backwards}.app-root.web .dw-prompt-fixed{font-size:var(--type-footnote);color:var(--text-soft);font-family:var(--font-mono);line-height:1.5}.app-root.web .tbl{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in oklab,var(--bg-soft) 60%,transparent)}.app-root.web table{border-collapse:collapse;width:100%;min-width:760px;font-size:var(--type-callout)}.app-root.web th,.app-root.web td{text-align:left;vertical-align:middle;padding:.6rem .8rem;border-bottom:1px solid var(--border)}.app-root.web th{font-size:var(--type-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);background:color-mix(in oklab,var(--bg-soft) 85%,transparent)}.app-root.web tr:last-child td{border-bottom:0}.app-root.web td.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.app-root.web .dw-hl-bar{height:6px;border-radius:3px;background:color-mix(in oklab,var(--text) 10%,transparent);overflow:hidden;margin-top:8px}.app-root.web .dw-hl-bar>span{display:block;height:100%;background:var(--accent);transition:width .5s var(--motion-ease)}.app-root.web .dw-hl-bar.is-warn>span{background:#f36f21}.app-root.web .dw-hl-row{display:flex;align-items:flex-start;gap:var(--space-4);padding:.65rem 0;font-size:var(--type-subhead)}.app-root.web .dw-hl-row+.dw-hl-row{border-top:1px solid var(--border)}.app-root.web .dw-hl-k{flex:0 0 190px;color:var(--text-soft)}.app-root.web .dw-hl-v{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.app-root.web .dw-step{display:inline-flex;align-items:center;gap:8px}.app-root.web .dw-hl-num{min-width:32px;text-align:center;font-family:var(--font-mono);font-weight:700}@media (max-width:640px){.app-root.web .dw-hl-row{flex-direction:column;gap:6px}.app-root.web .dw-hl-k{flex:none}}.app-root.web .dw-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-4)}.app-root.web .dw-kpi-n{font-size:var(--type-title1);font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.app-root.web .dw-kpi-l{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-cfg-row{display:grid;grid-template-columns:190px minmax(170px,.8fr) minmax(0,1.3fr) auto;gap:var(--space-4);align-items:center;padding:.6rem 0}.app-root.web .dw-cfg-row+.dw-cfg-row{border-top:1px solid var(--border)}.app-root.web .dw-slot{display:flex;flex-direction:column;gap:8px;padding:.9rem 0}.app-root.web .dw-slot+.dw-slot{border-top:1px solid var(--border)}.app-root.web .dw-slot textarea.dw-search{width:100%;min-height:96px;resize:vertical;font-family:inherit;border-radius:var(--radius-md,10px)}.app-root.web .dw-slot pre{background:var(--surface-sunken,transparent);border:1px solid var(--border);border-radius:8px;padding:.4rem .6rem}.app-root.web .dw-cfg-head{font-size:var(--type-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);padding-bottom:.4rem;border-bottom:1px solid var(--border-strong)}.app-root.web .dw-cfg-dw{display:flex;align-items:center;gap:8px;min-width:0}.app-root.web .dw-cfg-dw span:last-child{font-size:var(--type-subhead);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-missing{display:inline-flex;align-items:center;gap:6px;font-size:var(--type-subhead);font-weight:600;color:var(--on-red-tint)}.app-root.web .dw-missing svg{width:14px;height:14px}.app-root.web .dw-cfg-pair{display:grid;grid-template-columns:1fr 1fr}.app-root.web .dw-cfg-pair>:first-child{padding-right:var(--space-5)}.app-root.web .dw-cfg-pair>:last-child{padding-left:var(--space-5);border-left:1px solid var(--border-strong)}.app-root.web .dw-toast{position:fixed;left:50%;bottom:28px;z-index:120;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:min(720px,calc(100vw - 2rem));padding:.7rem 1.1rem;border-radius:var(--radius);font-size:var(--type-callout);font-weight:600;color:var(--text);background:color-mix(in oklab,var(--bg-soft) 90%,transparent);border:1px solid var(--border);box-shadow:0 12px 32px #0f172a2e;animation:dw-toast .32s var(--motion-ease)}.app-root.web .dw-toast svg{width:18px;height:18px;color:var(--tone-green-fill);flex-shrink:0}@keyframes dw-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes dw-fade{0%{opacity:0}}@keyframes dw-pop{0%{opacity:0;transform:scale(.96)}}@keyframes dw-toast{0%{opacity:0;transform:translate(-50%,12px)}}@keyframes dw-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.45}}@keyframes dw-breathe{0%,to{opacity:.15;transform:scale(.9)}50%{opacity:.9;transform:scale(1.05)}}@keyframes dw-ripple{0%{transform:scale(.35);opacity:.6}to{transform:scale(1.25);opacity:0}}@keyframes dw-absorb{0%{opacity:0;transform:translateY(-70px) scale(1.12) rotate(-3deg)}55%{opacity:1;transform:translateY(6px) scale(.97) rotate(.5deg)}to{opacity:1;transform:none}}@keyframes dw-shake{0%,to{transform:none}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@keyframes dw-spin{to{transform:rotate(360deg)}}@keyframes dw-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.app-root.web,.app-root.web *,.app-root.web *:before,.app-root.web *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:1680px){.app-root.web .demo-label{display:none}.app-root.web .demo-select{max-width:190px}}@media (max-width:1023px){.app-root.web .w-sidebar{display:none}.app-root.web .w-main{margin-left:0}.app-root.web .w-mlogo{display:grid;width:32px;height:32px;border-radius:10px;place-items:center;background:#fff;box-shadow:0 1px 2px #0206171a;flex-shrink:0}.app-root.web .w-topbar{padding:8px 12px;gap:8px}.app-root.web .w-crumb .w-crumb-sep,.app-root.web .w-crumb .w-crumb-dw{display:none}.app-root.web .demo-bar{order:10;width:100%;justify-content:space-between;height:auto;padding:6px 8px;flex-wrap:wrap;gap:6px}.app-root.web .demo-select{max-width:none;flex:1 1 160px}.app-root.web .w-content{padding:16px 12px 96px}.app-root.web .w-bottom{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));border-width:1px 0 0;border-radius:0}.app-root.web .w-tab{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:10.5px;font-weight:600;cursor:pointer}.app-root.web .w-tab svg{width:22px;height:22px}.app-root.web .w-tab.active{color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}.app-root.web .w-tab .count-badge{position:absolute;top:0;right:calc(50% - 22px);min-width:18px;height:18px;font-size:10px;padding:0 5px}.app-root.web .pane-title,.app-root.web .pane-back{font-size:1.2rem}.app-root.web .pane-text{flex-basis:100%}.app-root.web .pane-body{padding:0 14px;border-radius:16px}.app-root.web .pane-foot{bottom:84px}.app-root.web .pane-foot .modal-foot-note{display:none}.app-root.web .dw-board,.app-root.web .dw-split,.app-root.web .dw-cfg-pair{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-col,.app-root.web .dw-col--right{padding:16px 0;border-left:none}.app-root.web .dw-col--right{border-top:1px solid var(--border-strong)}.app-root.web .dw-split>:first-child,.app-root.web .dw-split>:last-child,.app-root.web .dw-cfg-pair>:first-child,.app-root.web .dw-cfg-pair>:last-child{padding:12px 0;border-left:none}.app-root.web .dw-cfg-row{grid-template-columns:minmax(0,1fr);gap:8px}.app-root.web .dw-pick-head{display:none}.app-root.web .dw-pick-main{grid-template-columns:minmax(0,1fr) 36px;row-gap:8px}.app-root.web .dw-pick-main>.dw-pick-id{grid-column:1}.app-root.web .dw-pick-main>.dw-pick-more{grid-column:2;grid-row:1}.app-root.web .dw-pick-main>.seg,.app-root.web .dw-pick-main>.dw-pick-tags{grid-column:1 / -1}.app-root.web .dw-pick-more-box{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-pick-acc{grid-template-columns:minmax(0,1fr) 72px}.app-root.web .dw-pick-acc>input:first-of-type{grid-column:1 / -1}.app-root.web .dw-cfg-head{display:none}.app-root.web .dw-run{display:flex;flex-wrap:wrap;gap:6px 10px}.app-root.web .dw-run-title{flex:1 1 100%;order:3;white-space:normal}.app-root.web .dw-run-node{order:4}.app-root.web .dw-run .dw-prog{order:5;margin-left:auto}.app-root.web .dw-run .dw-chevron{display:none}.app-root.web .dw-inbox-row{grid-template-columns:auto minmax(0,1fr) auto}.app-root.web .dw-inbox-row .dw-tag{display:none}.app-root.web .dw-inbox-title,.app-root.web .dw-inbox-sub{white-space:normal}.app-root.web .dw-line .dw-budget{margin-left:0!important}.app-root.web .dw-wait{flex-wrap:wrap}.app-root.web .dw-wait-text{flex:1 1 200px}.app-root.web .dw-drop{min-height:150px;padding:16px}}@media (max-width:640px){.app-root.web .modal-overlay{align-items:stretch}.app-root.web .modal-dialog,.app-root.web .modal-dialog--md{width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}.app-root.web .modal-head,.app-root.web .modal-body,.app-root.web .modal-foot{padding-left:16px;padding-right:16px}.app-root.web .modal-foot .modal-foot-note{display:none}.app-root.web .modal-foot{justify-content:stretch}.app-root.web .modal-foot .btn{flex:1 1 auto}}.app-root.web.is-mobile .w-kv{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.app-root.web.is-mobile .w-kv-k{grid-column:1 / -1}.app-root.web.is-mobile .demo-label{display:none}.app-root.web.is-mobile .demo-select{max-width:190px}.app-root.web.is-mobile .w-sidebar{display:none}.app-root.web.is-mobile .w-main{margin-left:0}.app-root.web.is-mobile .w-mlogo{display:grid;width:32px;height:32px;border-radius:10px;place-items:center;background:#fff;box-shadow:0 1px 2px #0206171a;flex-shrink:0}.app-root.web.is-mobile .w-topbar{padding:8px 12px;gap:8px}.app-root.web.is-mobile .w-crumb .w-crumb-sep,.app-root.web.is-mobile .w-crumb .w-crumb-dw,.app-root.web.is-mobile .demo-sep{display:none}.app-root.web.is-mobile .seg-btn{padding:0 8px}.app-root.web.is-mobile .demo-bar{order:10;width:100%;justify-content:space-between;height:auto;padding:6px 8px;flex-wrap:wrap;gap:6px}.app-root.web.is-mobile .demo-select{max-width:none;flex:1 1 160px}.app-root.web.is-mobile .w-content{padding:16px 12px 96px}.app-root.web.is-mobile .w-bottom{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));border-width:1px 0 0;border-radius:0}.app-root.web.is-mobile .w-tab{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:10.5px;font-weight:600;cursor:pointer}.app-root.web.is-mobile .w-tab svg{width:22px;height:22px}.app-root.web.is-mobile .w-tab.active{color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}.app-root.web.is-mobile .w-tab .count-badge{position:absolute;top:0;right:calc(50% - 22px);min-width:18px;height:18px;font-size:10px;padding:0 5px}.app-root.web.is-mobile .pane-title,.app-root.web.is-mobile .pane-back{font-size:1.2rem}.app-root.web.is-mobile .pane-text{flex-basis:100%}.app-root.web.is-mobile .pane-body{padding:0 14px;border-radius:16px}.app-root.web.is-mobile .pane-foot{bottom:84px}.app-root.web.is-mobile .pane-foot .modal-foot-note{display:none}.app-root.web.is-mobile .dw-board,.app-root.web.is-mobile .dw-split,.app-root.web.is-mobile .dw-cfg-pair{grid-template-columns:minmax(0,1fr)}.app-root.web.is-mobile .dw-col,.app-root.web.is-mobile .dw-col--right{padding:16px 0;border-left:none}.app-root.web.is-mobile .dw-col--right{border-top:1px solid var(--border-strong)}.app-root.web.is-mobile .dw-split>:first-child,.app-root.web.is-mobile .dw-split>:last-child,.app-root.web.is-mobile .dw-cfg-pair>:first-child,.app-root.web.is-mobile .dw-cfg-pair>:last-child{padding:12px 0;border-left:none}.app-root.web.is-mobile .dw-cfg-row{grid-template-columns:minmax(0,1fr);gap:8px}.app-root.web.is-mobile .dw-pick-head{display:none}.app-root.web.is-mobile .dw-pick-main{grid-template-columns:minmax(0,1fr) 36px;row-gap:8px}.app-root.web.is-mobile .dw-pick-main>.dw-pick-id{grid-column:1}.app-root.web.is-mobile .dw-pick-main>.dw-pick-more{grid-column:2;grid-row:1}.app-root.web.is-mobile .dw-pick-main>.seg,.app-root.web.is-mobile .dw-pick-main>.dw-pick-tags{grid-column:1 / -1}.app-root.web.is-mobile .dw-pick-more-box{grid-template-columns:minmax(0,1fr)}.app-root.web.is-mobile .dw-pick-acc{grid-template-columns:minmax(0,1fr) 72px}.app-root.web.is-mobile .dw-pick-acc>input:first-of-type{grid-column:1 / -1}.app-root.web.is-mobile .dw-cfg-head{display:none}.app-root.web.is-mobile .dw-run{display:flex;flex-wrap:wrap;gap:6px 10px}.app-root.web.is-mobile .dw-run-title{flex:1 1 100%;order:3;white-space:normal}.app-root.web.is-mobile .dw-run-node{order:4}.app-root.web.is-mobile .dw-run .dw-prog{order:5;margin-left:auto}.app-root.web.is-mobile .dw-run .dw-chevron{display:none}.app-root.web.is-mobile .dw-inbox-row{grid-template-columns:auto minmax(0,1fr) auto}.app-root.web.is-mobile .dw-inbox-row .dw-tag{display:none}.app-root.web.is-mobile .dw-inbox-title,.app-root.web.is-mobile .dw-inbox-sub{white-space:normal}.app-root.web.is-mobile .dw-line .dw-budget{margin-left:0!important}.app-root.web.is-mobile .dw-wait{flex-wrap:wrap}.app-root.web.is-mobile .dw-wait-text{flex:1 1 200px}.app-root.web.is-mobile .dw-drop{min-height:150px;padding:16px}.app-root.web.is-mobile .modal-overlay{align-items:stretch}.app-root.web.is-mobile .modal-dialog,.app-root.web.is-mobile .modal-dialog--md{width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}.app-root.web.is-mobile .modal-head,.app-root.web.is-mobile .modal-body,.app-root.web.is-mobile .modal-foot{padding-left:16px;padding-right:16px}.app-root.web.is-mobile .modal-foot .modal-foot-note{display:none}.app-root.web.is-mobile .modal-foot{justify-content:stretch}.app-root.web.is-mobile .modal-foot .btn{flex:1 1 auto}.app-root.web.is-mobile .demo-tag{order:1}.app-root.web.is-mobile .demo-select{order:2}.app-root.web.is-mobile .demo-reset{order:3}.app-root.web.is-mobile .demo-bar .seg{order:4}.app-root.web .glass-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 2px #0206170d}.app-root.web .glass-card:hover{border-color:var(--border-strong);box-shadow:var(--glass-shadow-sm)}.app-root.web button.dw-file{font:inherit;color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web button.dw-file:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}.app-root.web .dw-viewer{width:min(1680px,calc(100vw - 2rem));height:min(94vh,1200px);max-height:none}.app-root.web .dw-v-doc{max-width:none;display:flex;flex-direction:column;gap:2px}.app-root.web .dw-v-p,.app-root.web .dw-v-ul,.app-root.web .dw-v-quote{max-width:120ch}.app-root.web .dw-v-seg{margin-left:auto;margin-right:var(--space-3)}.app-root.web .dw-v-svg{max-width:100%;height:auto;align-self:center}.app-root.web .dw-v-pdf{width:100%;flex:1 1 auto;min-height:70vh;border:0}.app-root.web .dw-v-h{margin:14px 0 6px;font-size:1.05rem;font-weight:700}.app-root.web .dw-v-h:first-child{margin-top:0}.app-root.web .dw-v-p{margin:0 0 8px;font-size:.92rem;line-height:1.65;color:var(--text)}.app-root.web .dw-v-ul{margin:0 0 8px;padding-left:1.2rem;display:flex;flex-direction:column;gap:4px;font-size:.92rem;line-height:1.55}.app-root.web .dw-v-sheet{overflow-x:auto;border:1px solid var(--border-strong);border-radius:10px}.app-root.web .dw-v-sheet table{border-collapse:collapse;width:100%;min-width:620px;font-size:.82rem}.app-root.web .dw-v-sheet th,.app-root.web .dw-v-sheet td{border:1px solid var(--border);padding:6px 9px;text-align:left}.app-root.web .dw-v-sheet th{background:color-mix(in oklab,#15803d 12%,var(--bg-soft));font-weight:700;color:var(--text)}.app-root.web .dw-v-ok{color:var(--on-green-tint);font-weight:600}.app-root.web .dw-v-pages{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;padding:8px 0}.app-root.web .dw-v-page{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;border-radius:10px;background:color-mix(in oklab,var(--text) 5%,transparent)}.app-root.web .dw-v-cap{font-size:.78rem;font-weight:600;color:var(--text-soft)}.app-root.web .dw-v-phone{width:170px;height:320px;border-radius:22px;border:2px solid var(--border-strong);background:var(--bg-soft);padding:14px 12px;display:flex;flex-direction:column;gap:9px}.app-root.web .dw-v-bar{height:10px;border-radius:5px;background:var(--border-strong);width:40%}.app-root.web .dw-v-line{height:12px;border-radius:6px;background:var(--border)}.app-root.web .dw-v-line.w60{width:60%}.app-root.web .dw-v-line.w80{width:80%}.app-root.web .dw-v-field{height:26px;border-radius:7px;border:1.5px dashed var(--border-strong)}.app-root.web .dw-v-card{height:48px;border-radius:9px;border:1.5px solid var(--border-strong)}.app-root.web .dw-v-chip{align-self:flex-start;font-size:10px;font-weight:600;padding:3px 8px;border-radius:9px;background:color-mix(in oklab,var(--accent) 14%,transparent);color:var(--on-accent-tint)}.app-root.web .dw-v-row{display:flex;gap:6px;margin-top:auto}.app-root.web .dw-v-btn{margin-top:auto;height:28px;border-radius:8px;background:var(--accent-fill);color:#fff;font-size:11px;font-weight:600;display:grid;place-items:center;flex:1}.app-root.web .dw-v-btn.ghost{background:transparent;border:1.5px solid var(--border-strong);color:var(--text)}.app-root.web .dw-v-diff{font-family:var(--font-mono);font-size:12px;line-height:1.7;border-radius:10px;overflow:hidden;border:1px solid var(--border-strong)}.app-root.web .dw-v-diff>div{padding:0 12px;white-space:pre-wrap}.app-root.web .dw-v-file{background:color-mix(in oklab,var(--text) 8%,transparent);font-weight:700;padding:6px 12px!important}.app-root.web .dw-v-ctx{color:var(--text-soft)}.app-root.web .dw-v-add{background:color-mix(in oklab,#16a34a 13%,transparent);color:var(--on-green-tint)}.app-root.web .dw-v-del{background:color-mix(in oklab,#dc2626 12%,transparent);color:var(--on-red-tint)}.app-root.web .dw-login{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:16px;background:color-mix(in oklab,var(--bg) 84%,transparent)}.app-root.web .dw-login-card{width:min(440px,100%);padding:28px;border-radius:20px;display:flex;flex-direction:column;gap:16px;background:var(--bg-soft);border:1px solid var(--border);box-shadow:0 24px 64px #0f172a38}.app-root.web .dw-login-card h1{margin:0;font-size:1.35rem}.app-root.web .dw-login-card p{margin:0;color:var(--text-soft);font-size:.875rem;line-height:1.55}.app-root.web .dw-login-brand{display:flex;align-items:center;gap:10px;font-weight:700}.app-root.web .dw-ms{width:18px;height:18px;flex-shrink:0}.app-root.web .dw-perm{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.5}.app-root.web .dw-perm svg{width:18px;height:18px;flex-shrink:0;margin-top:2px;color:var(--tone-green-fill)}.app-root.web .dw-login-actions{display:flex;gap:10px;flex-wrap:wrap}.app-root.web .dw-login-actions .btn{flex:1;justify-content:center}.app-root.web .dw-login-select{width:100%}.app-root.web .w-signout{margin-left:auto;flex-shrink:0}.app-root.web .dw-seg-off{opacity:.45;cursor:not-allowed}.app-root.web .dw-pill-row{display:flex;gap:8px;flex-wrap:wrap}.app-root.web .dw-mono-sm{font-family:var(--font-mono);font-size:12px}.app-root.web .dw-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--bg-alt)}.app-root.web .dw-form label{display:flex;flex-direction:column;gap:6px;font-size:.78rem;font-weight:600;color:var(--text-soft)}.app-root.web .dw-form .dw-wide{grid-column:1/-1}.app-root.web .dw-field{width:100%;box-sizing:border-box;padding:.55rem .75rem;border:1px solid var(--border-strong);border-radius:10px;background:var(--bg-soft);color:var(--text);font:inherit;font-weight:400}@media (max-width:720px){.app-root.web .dw-form{grid-template-columns:1fr}}.app-root.web{--hx-ok:var(--tone-green-fill);--hx-warn:var(--tone-orange-fill);--hx-crit:var(--tone-red-fill)}.app-root.web .hx-status{margin-top:20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 20px;border-radius:14px;border:1px solid var(--border);background:var(--bg-soft);border-color:color-mix(in oklab,var(--hx-c) 45%,var(--border))}.app-root.web .hx-status.is-ok{--hx-c:var(--hx-ok)}.app-root.web .hx-status.is-warn{--hx-c:var(--hx-warn)}.app-root.web .hx-status.is-crit{--hx-c:var(--hx-crit)}.app-root.web .hx-status-main{display:flex;flex-direction:column;gap:2px;min-width:200px}.app-root.web .hx-status-title{font-size:1.15rem;font-weight:700}.app-root.web .hx-status-sub{font-size:.82rem;color:var(--text-soft)}.app-root.web .hx-sys{display:flex;gap:22px;flex-wrap:wrap;margin-left:auto}.app-root.web .hx-sys div{display:flex;flex-direction:column;gap:2px}.app-root.web .hx-sys b{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.app-root.web .hx-sys span{font-size:.85rem;font-weight:600}.app-root.web .hx-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:14px}.app-root.web .hx-card{padding:16px 18px;border-radius:14px;border:1px solid var(--border);background:var(--bg-soft);display:flex;flex-direction:column;gap:10px;min-width:0}.app-root.web .hx-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-root.web .hx-label{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.app-root.web .hx-big{font-size:1.9rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.app-root.web .hx-big small{font-size:.9rem;font-weight:600;color:var(--text-soft);margin-left:4px}.app-root.web .hx-sub{font-size:.8rem;color:var(--text-soft)}.app-root.web .hx-gauge{position:relative;height:6px;border-radius:3px;background:var(--bg-hover)}.app-root.web .hx-gauge>span{display:block;height:100%;border-radius:3px;background:var(--hx-c)}.app-root.web .hx-gauge.has-tick:after{content:"";position:absolute;left:85%;top:-3px;bottom:-3px;width:2px;background:var(--text-soft);opacity:.55}.app-root.web .hx-tile.is-ok{--hx-c:var(--hx-ok)}.app-root.web .hx-tile.is-warn{--hx-c:var(--hx-warn)}.app-root.web .hx-tile.is-crit{--hx-c:var(--hx-crit)}.app-root.web .hx-spark{display:flex;align-items:flex-end;gap:2px;height:30px}.app-root.web .hx-spark i{display:block;flex:1;min-width:2px;border-radius:2px 2px 0 0;background:var(--hx-c);opacity:.35}.app-root.web .hx-spark i:last-child{opacity:1}.app-root.web .hx-st{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}.app-root.web .hx-st.is-ok{color:var(--on-green-tint);background:color-mix(in oklab,var(--hx-ok) 14%,transparent)}.app-root.web .hx-st.is-warn{color:var(--on-amber-tint);background:color-mix(in oklab,var(--hx-warn) 14%,transparent)}.app-root.web .hx-st.is-crit{color:var(--on-red-tint);background:color-mix(in oklab,var(--hx-crit) 14%,transparent)}.app-root.web .hx-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;margin-top:14px;align-items:start}.app-root.web .hx-slots{display:flex;gap:6px;flex-wrap:wrap}.app-root.web .hx-slot{width:26px;height:26px;border-radius:7px;border:1.5px dashed var(--border-strong)}.app-root.web .hx-slot.is-run{border:none;background:var(--accent);animation:dw-pulse 1.4s ease-in-out infinite}.app-root.web .hx-slot.is-wait{border:1.5px solid var(--hx-warn);background:color-mix(in oklab,var(--hx-warn) 18%,transparent)}.app-root.web .hx-rows{display:flex;flex-direction:column}.app-root.web .hx-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--border);font-size:.85rem}.app-root.web .hx-row:first-child{border-top:none}.app-root.web .hx-row-name{font-weight:600;min-width:130px}.app-root.web .hx-row-detail{flex:1;color:var(--text-soft);min-width:0}.app-root.web .hx-empty{font-size:.85rem;color:var(--text-soft);padding:6px 0}.app-root.web .hx-title{margin:0;font-size:.95rem;font-weight:700}.app-root.web .hx-title-meta{font-size:.78rem;color:var(--text-soft);font-weight:400;margin-left:8px}@media (min-width:1024px){.app-root.web .w-main{overflow:hidden}.app-root.web .w-content{max-width:none;min-height:0;display:flex;flex-direction:column;padding:20px 28px 24px}.app-root.web .w-page{flex:1;min-height:0}.app-root.web .w-page sc-if,.app-root.web .w-page sc-for{display:contents}.app-root.web .pane-header{flex:none}.app-root.web .pane-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:20px}.app-root.web .pane-foot{flex:none;position:static}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/plex-sans-vi-tuJ4lY6O.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/plex-sans-latin-BD64o3ke.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAA+gAA4AAAAAL4AAAA9IAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGlIbgnocgVoGYACDDBEQCrogr2ULglAAATYCJAOFHAQgBYM6B40mG/wnRUZtByc1kyhK5aYT/H9J4GSMU45fS1EJ3XVaTW8CzWBCbURMFHRSgj4lzF+DaSwFA4ZVrngK/vDO/Q1jR0O5mt0p7T8sLHRWDf77X9M7b36KsKrAuqyqiEHankjbslCAMtkjcquqZwZQBjnwkGXBE0yIMZEMYMioA7i4K6aE64Exb2R1o+umxMbIhpBMH3JwHbaNGI+2It5VourC3v0TeYKXp6+v53Ao8hKIRiQgEYhAUAKcGdXb/UId5MQmQjf/knYzhTawbizkfBPojWlS4dCbOVWS0/VvYdiiuVhzPNSmEiBlpFdrS7+Yl8qJR58hkfAkolZNS6q5VX+WU4DpuFNxrWNi6G+17y3V/pwcku4cUkBfJf25bMkh5OIPoEMGOGT0JsSAJsQNCDagzP//MV+3Bh3ujKiFWvCu3yL6N0VbVVpkWLR9TMAWndn3+/3S74UYkl0CoxkHRBa17fnv91v/6hggDwAgJASHhAiByMkhZmaIhQUyaBxuo01wkybhpk3D7bMf7rDDcAiQI1UZ/OgfnSXkPK5PkTyi23N4CADxMoNd/agCeCnnwLsHWRJ0B+Y6OgJgXCAbJUAysdBJSQjxsLGhCpETVIEiFBFCXBD9UdEhmBByZhZugC5b7qwgkKoJvIGbQUOGjRg1tlalo51eoezhvG3J2oa5eBODjA9PfBx8/JybgEagogLuTUAjIBgRbgjZDIe448j4Dgw6d84uUzDoiMvlxQUyuzEyRKWgt7IJ9UXcCRxk1qWCYDUkwT7imIft7r0JZtRGvO2ISZghCDKM6BKbggb0UgnACN7FbigrNssVI2muNAwHbJIAEwDpfaOhfazGA9R8AvryDqHQ15sQegOggTkBauBCcltWidK9iera2kCCwLcB8klUOlQ44lqgNdhhu+gIJ3BX3LfqPzVn4hhsqngFhjgms3o7ZBcc8F7oAnHoB+/MGAUEWJDqOzuVO96qQWCr8HIJH36kZILAh96Z/8daHIW+sVqgZonMQljIjRoxbEwarnTucgnkEyogouMpz0oZvpbFQza+HCtk4inipZgYRULPm5GvEn5W8Wfgo5SMSYA1gpQJViNKnRj1YjWIUytauVCVwlWJUC1ShTCN4jVJ0EKhlcq31KySrKXUJoVNsnapOmggOBdMHLQsKwRAEoBdAI5B4ofMJ5C4A74BgG6EUs7F4enNjXLRjFWbb3DU0h2j41JWo7Y6YzAGBzeEkVwsxG3rjScLw6eAW9Kdx8uNzeQVrCxxIVgsXiRkiUoI7wWZngWSfLZn5C0UEmw2QTAEeWxeALwrGZCcEUObWAyPUZjJlZ4kB/GhfB6enmR8xXX+9ln1uOfFPDvLjHnUF0hq/8SM2ZDN3vuvX5M5B0Z55/PbF5AOZwJpb6sg2ST1VA7Y5w0d0887r7+bOGemEa45aFNSGiA45MIdzSvX1ZtnkfrcrWsVMT8fTL3Ah152kCrt0t2X5DV6hK8vzprixZ2LgGu/fO9VU5xG2s+QeQpoJ+tZoG6UGkoyK2idYUZZPqmq8Dt782rWzkLza8gFJy8cMPLKwJy8FZSHM3c7HnyPLR68fXEkZy5VbCOVXAaoCwbKzJb3j43x0TtjefPABB++NZtjvPSS7X59ZWEJkqeGGcRbvKQddeDRPu1PmXOhRNBbklBga4s/QzrdD6UuW6CcVuBWGIztSj9JO8vEf9mlmaX0jSXRtW3qzgmdMOjquZQXpSvbq9xaDRZeySlVU3ltlUWZbZ4Vu8QYTv6J68w4xlPvvU+m7d3yOH6N3ORYodp9h4G5Tj6BuUY8PtbsBizz56YsSV6jKduoNxv1mU36BAMlNzZtfHXvsjAndObUqUibnDkjCs/affHOi7JpCw5dlMnkRiZcNGXCoCLw3K1j+HZ4cOJRbQhe0Dh3k1GfmTtJgTyDsQEMYZjQyZqzjfqSMlHPobGZlJbE0VItkEzRGn2le/NSsAbtBiz9jHmyK8PMW6ePXbhNZK9XsknYXg566XuKdVvyxGClr1zvFlRIiUpS/4/ej5clYQlY31Mc2nEI/hQ+qKGxsqOSCs3FWZn1ee0t0Yn/VvAUWZRxu4fnnwNmjaVFnpnpfnHisJJUnr4lMyVA6iFbDyeLiUizxdxoHxqywQPURQlKR+hG5aIleRI6henyJVHKpdJLXiaAsp/pYkT2z/I3S6VP/gjAyYQSf3W6d6VK7VOlSjf4x8ZQ/opUcWm8dEDgs2rDCb+YnPBER1VjauF3vDs31PswZKRPRmYa5LT73uFz+Hd8X89PRDr7nFrmg/PamxBMxhn8leniSrVKXOUCpY2jaVUqtbgyW6xWU1hAZVMveo3neeB4MWG1Bi67hRW1ZTk6VYZKqxR8L54S1uoIHXzCdcsv0c3u+SZX25Vof/8f2bCQ+5i4UeEn8mf/oBjnbq29iWu5a4XuLZic57NMv8vPyv+7KQsozfmY85qL530gmEwujVCUisYNetGEAUqbTNMm9AbR+GFJmUFTpRwq1hrD0ZdOBZ2C+hhr7B2wPhy9dTSaVrDbEhlp2e2uH32Umsxn28LyDNKMDBsA1H75k4C5/9lRXnWNOkAYDlxQ2XUfd9jzntCnB0TpzS31DbZRH6UvryfWz6hmlLnKNFXaj3Pb4gT7/uV1Oj28/7VPoNao49LirhPtfKi9qt37z3JxRj2TrktPUaeUfwVqNWj2YyeRrXrlqJRfJGvQbkC5cRs0hWCFqfWkfFeC2W7CsQidea+jNmffstYMqCnQJeuC7gz1Xzh3zr7j0J0bmRRla2xupGxU9U/syXYG+D0Vjkk9vxewo2Gdy03eh9kUoqhszfj371d/KWtaM2qFY1Ku6fGXtiph4b/6mG7c/b9nfP7g610XGutWsOcDu9mcc983dR5IcCwcfCDQCuBdg3iGx+bNiF/L7iXXg6jMeOpUpg84f3UDT454WPP/li3v2nrovBtNILhIZsmlav1TLou867mcLm/R5RT/WirXAsX/t0iXJX97c/98Yl0HnA1+JciU9dSX1/yywGb39rbbCn7ZOVzX5dVDp06leb8lEtBVN9yZrKa8vmdmJQOulaCrVv0RZbNWoo7r8LrRHszPyvh6PUA+z6DuIjfbsg4dAUZV3VIabbCytTMhk3+0WSbvtnVYaL/rBY4mQu3XQYNt8OKBlaqN5XGW2eVxokArkB2csXPEaF9hwX3bLONALRZgkuOwopj9Jekk/4p7Z43662fAS17Z1nnkGo+fObrx+v+1NI2ju2j467aP71+voVF+W3wh/d/UwwExeuZ6wYYbwluGx9adn9Fq7o1cj1q7aWm500vJJvBnM2FM+lxMCggA6DDwZ6C6YMA4EoGRx/wToVRcQyavy69X8ob85pjj6pft8hZMMZG7iAURham76NCJMeo269QnwGLU2TXSJKaYBpELqYFCQcJ0vggBXSsbAu6lDAwDfTWk2a6o2NxOr6tW2rydlLdgihkqG4i6MY3CFyun0GukhuHvk8dEF7tAvHFdGKDrTUJ0WlcKu0yd5i5P+3ffSAq7ZPJMfg/kvfkDMce1Uz4oH8IRZsqzkco/fRcdttIYdQd06jwthkaalA/hCJPIhqCuDKc1CvIsvswSZrEd5hQDO2pIxbYcay2nBUtmySyZBbcU6Zs2dWUtucsWv0W2+C15ttTPltlldur9yNT5Xy660YNe0fco4v+l/rX8Fi9/02ZjGn3R26c7q8mVo1EcmpfG3fGzHWgF7gG+pQ2WnCW05gEV96HhxR7iuDSWxGLYKtOqzxJ5iVboHfmAQtxHI5b76PduI8CSXUzP/PwR9a1wcpWn2mitPS2JWW5WxKcUESKKnNVr7Z8KoJEq3A/WiJOOpWrTGp6WxpzVkeQrosVJT0sjLqoGWv10QyyRE+0OLArh4yWe0VqxHyDiaD4ciIYslmLiLXfBnG4D8HCHGKkuIRpqvBBaohV6zUEWIJZC8ZYTmNNtAB7uiEdI0LFEz+BcgkLvRr9GoiBaAw4x0Ls5RFtyktkapRRkK6To8i/BDg0x0nvRr5EoiNaAIx6AqynD4bbC82twfIqReEnVnOrFtKsfez9MkxqZ7tnMCmCdyOUp1wn7joAA8uQcjXlso1D5n5WN/xrwovRlAN62et5K///LEa0PZoBsGAAM/LyzQFeW8//rgPS2JrsEyZlSSUlm0nDjGK2mWBKTiShKIB1xqeh0pCK7AqQ8kQbZIByvERMjNSvDqa7G2GIntpj44zJlQ5GlMDESsjKcqg5j49IYbaNDtIuW6XZh02AQr6J2aqJZmqKz9NxvolWo3loOpP8PlJdXpauV5nSejUewEsB17MdI1r/JNaBDetbpSpZaosNwBWDZf00REfpxEcP2qYhLsKdICNJapOEzFemkYkI2tgKH2qwhreTC97apYtVAh226dxhb2Ox231pWdcIVSJcrS6o8Os1qdMmzVou1QhWpUaddswpWBjWskRTvYIkoYaJjRBITSczYJFoWKczpUKRPk0eaNtSoaqvuum3deqhcD48QKZ5Ertih1YRhVNcpmjWTCK3tHta4VPPTdqhRLQwGAOI2lADT+0eSBPQWBmky5SpSYjU/MiGiJFDuDyuqphumZTucLrcH9CIohhMklU2jM5gsNofL4wuEIrFEKpMrlCq1RqvTG4wms8VqszucLrfHC4ZAYXAEEgWgMVgcnkAkkSlUGp3BZLE5XB5fIBSJJVKZXKHM9eVlYkfDyfer1BqtTm8wmswWq83ucLrcHq/PDyDChDIupNJGcF+QHzg3785PL0xy78ueYutgvnisP2v/RhItUWBu8pwCAXNFnUWAgnGd5wwcgps8r0DAIOA6GNi/9qfVGhxwYMquu+vjQnKYtCSyOwfNaRwEhA3AIFzlRVFV8F7EWdl7Vo5BWhIpR8UBnHjXCvj/6pe89rNyrzFg9wMYFBESGBQcHB4SuoOFsHxc568DNCx7xRGQwKDgbHGNht62wM8esz4sKDwiMDA0KDgkeD8JA/8AGhgWHnEODhPIRboUOvGdmY+Z1eaCQ4MAu6ZKWXFnd8yX79f6GSS0BWzYXa/HwWDGeyur/frXwQtEhgye+dovozHvj/5RrBQd3H1VFb1cDcLn/6BBsgsS2qKjfhXObL3WYMAW02ifmkMjGUnRuiatuFy55iceSToRL6o2IPleIqt8sxWdDCWCHafdlM4HEwJfy6Q+TmuN1FgqSGJRwVauwBa7C3EAAA==) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/plex-mono-400-latin-BJoXLJYV.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500 600;font-display:swap;src:url(data:font/woff2;base64,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) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500 600;font-display:swap;src:url(/assets/plex-mono-500-latin-C820gu2e.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/bricolage-vietnamese-d1hB1XZ3.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/bricolage-latin-CtikI8OQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.app-root.web{--bg:#f6f8f9;--bg-alt:#f4f6f8;--bg-soft:#ffffff;--bg-hover:#ebedee;--muted-bg:#f4f6f8;--border:#e8eaec;--border-strong:#cdced1;--rule:#f0f1f2;--text:#131416;--text-soft:#5d5f60;--muted:#5d5f60;--primary:#131416;--on-primary:#ffffff;--accent:#1b6c80;--accent-fill:#1b6c80;--accent-strong:#14566a;--on-accent:#ffffff;--on-accent-tint:#134e5c;--wait:#a86f0c;--positive:#1e7b4f;--green:#1e7b4f;--red:#c4242a;--purple:#2f70bb;--on-red-tint:#831c1e;--on-green-tint:#04250e;--on-amber-tint:#92400e;--on-purple-tint:#1f4f86;--on-blue-tint:#134e5c;--on-teal-tint:#134e5c;--pill-ok-bg:#dcfae5;--pill-ok-ink:#04250e;--pill-bad-bg:#ffedea;--pill-bad-ink:#831c1e;--pill-wait-bg:#fffbeb;--pill-wait-ink:#92400e;--pill-wait-edge:#fde68a;--pill-run-bg:#e3f1f4;--pill-run-ink:#134e5c;--pill-neutral-bg:#ebedee;--pill-neutral-ink:#353736;--tone-blue-fill:#1b6c80;--tone-green-fill:#1e7b4f;--tone-orange-fill:#a86f0c;--tone-purple-fill:#2f70bb;--tone-teal-fill:#1b6c80;--tone-red-fill:#c4242a;--tone-gray-fill:#5d5f60;--glass-bg:var(--bg-soft);--glass-card:var(--bg-soft);--glass-border:var(--border);--glass-shadow:none;--glass-shadow-sm:none;--float-shadow:0 12px 32px rgba(19,20,22,.12),0 2px 6px rgba(19,20,22,.06);--radius:8px;--radius-sm:6px;--radius-lg:8px;--radius-xl:12px;--radius-sheet:16px;--radius-pill:999px;--radius-chip:4px;--sidebar-w:228px;--sheet-inset:8px;--type-caption2:12px;--type-caption:12px;--type-footnote:12px;--type-subhead:13px;--type-callout:14px;--type-body:14px;--type-headline:16px;--type-title3:16px;--type-title2:22px;--type-title1:22px;--control-h-xs:28px;--control-h-sm:32px;--control-h:32px;--font-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Bricolage Grotesque","IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;font:14px/20px var(--font-sans);letter-spacing:0;background:var(--bg)}.app-root.web[data-theme=dark]{--bg:#0b0c0d;--bg-alt:#18191b;--bg-soft:#111213;--bg-hover:#222324;--muted-bg:#18191b;--border:#2a2b2d;--border-strong:#47494c;--rule:#1d1e20;--text:#ffffff;--text-soft:#b4b4b4;--muted:#949494;--primary:#ffffff;--on-primary:#111213;--accent:#5fb4c8;--accent-fill:#5fb4c8;--accent-strong:#8fd0de;--on-accent-tint:#8fd0de;--wait:#e0a840;--positive:#3fc07a;--green:#3fc07a;--red:#e5566f;--purple:#6ea3e6;--on-red-tint:#e5566f;--on-green-tint:#3fc07a;--on-amber-tint:#e0a840;--on-purple-tint:#8fb8ee;--on-blue-tint:#8fd0de;--on-teal-tint:#8fd0de;--pill-ok-bg:#172a1d;--pill-ok-ink:#3fc07a;--pill-bad-bg:#2c1a20;--pill-bad-ink:#e5566f;--pill-wait-bg:#2a2214;--pill-wait-ink:#e0a840;--pill-wait-edge:#5a4416;--pill-run-bg:#142629;--pill-run-ink:#8fd0de;--pill-neutral-bg:#222324;--pill-neutral-ink:#d4d4d4;--float-shadow:0 12px 32px rgba(0,0,0,.5)}.app-root.web *{letter-spacing:inherit}.app-root.web h1,.app-root.web h2,.app-root.web h3{font-family:var(--font-sans)}.app-root.web .num,.app-root.web td,.app-root.web .dw-id{font-variant-numeric:tabular-nums}.app-root.web a{color:var(--accent-strong)}.app-root.web a:hover{color:var(--accent)}.app-root.web .glass{background:transparent;border:0;box-shadow:none}.app-root.web .w-sidebar{width:var(--sidebar-w);background:var(--bg);border:0;box-shadow:none}.app-root.web .w-logo{gap:10px;height:48px;padding:0 18px;align-items:center;box-sizing:border-box}.app-root.web .w-logo-mark{width:24px;height:24px;border-radius:0;background:transparent;box-shadow:none;display:block}.app-root.web .w-logo-mark svg{width:24px;height:24px;display:block}.app-root.web .w-logo-name{font-size:14px;font-weight:600;line-height:18px;letter-spacing:0;white-space:nowrap}.app-root.web .w-logo-sub{font-size:12px;line-height:16px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-soft)}.app-root.web .w-nav{padding:0 8px}.app-root.web .w-nav-sec{padding:0 10px;margin:16px 0 6px;font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-soft)}.app-root.web .w-nav-item{height:32px;gap:10px;padding:0 10px;margin-bottom:2px;border-radius:var(--radius);font-size:14px;font-weight:400;color:var(--text-soft);transition:background-color .12s ease,color .12s ease}.app-root.web .w-nav-item svg{width:16px;height:16px;color:var(--text-soft)}.app-root.web .w-nav-item:hover{background:color-mix(in oklab,var(--text) 5%,transparent);color:var(--text)}.app-root.web .w-nav-item.active{background:var(--bg-hover);box-shadow:none;color:var(--text);font-weight:500}.app-root.web .w-nav-item.active svg{color:var(--text)}.app-root.web .w-user{padding:12px 16px 16px;border-top:0;gap:10px}.app-root.web .w-avatar{width:28px;height:28px;font-size:12px;font-weight:600;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.app-root.web .w-user-mail{font-size:13px;font-weight:500}.app-root.web .w-user-role{font-size:12px;text-transform:none;letter-spacing:0;color:var(--text-soft)}.app-root.web .w-main{background:var(--bg)}.app-root.web .w-topbar{min-height:48px;padding:8px var(--sheet-inset) 8px 0;background:var(--bg);border:0;box-shadow:none}.app-root.web .w-project,.app-root.web .w-icon-btn{height:32px;border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--border-strong);box-shadow:none}.app-root.web .w-project{font-weight:500;padding:0 10px}.app-root.web .w-icon-btn{width:32px}.app-root.web .w-lang{font-size:12px;font-weight:600;font-family:var(--font-mono)}.app-root.web .w-icon-btn svg{width:16px;height:16px}.app-root.web .w-icon-btn:hover,.app-root.web .w-project:hover{background:var(--bg-alt)}.app-root.web .w-crumb{font-size:14px}.app-root.web .w-crumb strong{font-weight:500}.app-root.web .w-content{max-width:none;margin:0 var(--sheet-inset) var(--sheet-inset) 0;width:auto;padding:24px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sheet)}.app-root.web .w-page{gap:24px}.app-root.web .pane-header{gap:12px}.app-root.web .pane-title{font-size:22px;line-height:28px;font-weight:600;letter-spacing:0}.app-root.web .pane-back{font-family:var(--font-sans);font-size:22px;line-height:28px;font-weight:400;letter-spacing:0;color:var(--text-soft)}.app-root.web .pane-back:hover{color:var(--text)}.app-root.web .pane-desc{margin-top:4px;font-size:14px;line-height:20px;color:var(--text-soft);max-width:none}.app-root.web .pane-body{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}.app-root.web .pane-foot{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--float-shadow)}.app-root.web .dw-sec{padding:20px 0;border-top:1px solid var(--border)}.app-root.web .dw-sec:first-child{padding-top:0}.app-root.web .dw-sec-title{font-size:16px;line-height:22px;font-weight:600;letter-spacing:0}.app-root.web .dw-sec-meta{font-size:13px;color:var(--text-soft)}.app-root.web .dw-label,.app-root.web .dw-par-label,.app-root.web .hx-label{font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--text-soft)}.app-root.web .glass-card,.app-root.web .hx-card,.app-root.web .hx-status,.app-root.web .tbl,.app-root.web .dw-dag-box,.app-root.web .dw-thread,.app-root.web .dw-bubble,.app-root.web .dw-wiki,.app-root.web .dw-edit,.app-root.web .dw-form,.app-root.web .dw-nostart,.app-root.web .dw-wait,.app-root.web .dw-alt,.app-root.web .dw-inline,.app-root.web .dw-prompt{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);box-shadow:none}.app-root.web .dw-dag-box{background:var(--bg-alt);border-color:var(--rule)}.app-root.web .glass-card:hover{border-color:var(--border-strong);box-shadow:none}.app-root.web .dw-banner{border-radius:var(--radius)}.app-root.web .dw-banner--warn{background:var(--pill-wait-bg);border:1px solid var(--pill-wait-edge);color:var(--pill-wait-ink)}.app-root.web .dw-banner--ok{background:var(--pill-ok-bg);border:1px solid color-mix(in oklab,var(--positive) 30%,transparent);color:var(--pill-ok-ink)}.app-root.web .dw-term{border:1px solid var(--border);box-shadow:none}.app-root.web .dw-node{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-soft);box-shadow:none}.app-root.web button.dw-node:hover{border-color:var(--text-soft);box-shadow:none}.app-root.web .dw-node.is-rec{border-color:var(--wait);border-width:1px}.app-root.web .dw-node.is-human{border-style:dashed;border-color:var(--border-strong)}.app-root.web .dw-node.is-red{border-color:var(--red);background:var(--pill-bad-bg)}.app-root.web .dw-dot{width:8px;height:8px;background:var(--border-strong)}.app-root.web .dw-dot--done{background:var(--text)}.app-root.web .dw-dot--run,.app-root.web .dw-dot--check{background:var(--accent);animation:none}.app-root.web .dw-dot--gate,.app-root.web .dw-dot--ask{background:var(--wait);animation:none}.app-root.web .dw-dot--human{background:transparent;box-shadow:inset 0 0 0 1.5px var(--text)}.app-root.web .dw-node.s-done{border-color:var(--border-strong)}.app-root.web .dw-node.s-run,.app-root.web .dw-node.s-check{border-color:var(--accent);border-width:1px}.app-root.web .dw-node.s-gate,.app-root.web .dw-node.s-ask{border-color:var(--wait);border-width:1px}.app-root.web .dw-node.s-human{border-color:var(--text-soft);border-width:1px;border-style:dashed}.app-root.web .dw-node.s-queued{opacity:1;color:var(--text-soft);background:var(--bg-alt);border-color:var(--border)}.app-root.web .dw-node.is-sel{border-color:var(--text);outline:1px solid var(--text);outline-offset:0;box-shadow:none}.app-root.web .dw-node-prog{background:var(--rule)}.app-root.web .dw-node-name,.app-root.web .dw-node-hd-name{font-weight:600}.app-root.web .dw-wait{border:1px solid var(--border);background:var(--bg-soft);box-shadow:none;animation:none}.app-root.web .dw-wait.is-run{border-color:var(--accent)}.app-root.web .dw-wait.is-wait{border-color:var(--wait)}.app-root.web .dw-wait.is-done{border-color:var(--positive);background:var(--bg-soft)}.app-root.web .dw-wait-ico{width:20px;height:20px;border-radius:0;background:transparent;color:var(--text-soft)}.app-root.web .dw-wait.is-run .dw-wait-ico{color:var(--accent)}.app-root.web .dw-wait.is-wait .dw-wait-ico{color:var(--wait)}.app-root.web .dw-wait.is-done .dw-wait-ico{color:var(--positive)}.app-root.web .dw-wait-ico svg{width:16px;height:16px}.app-root.web .dw-wait-text strong{font-size:14px;font-weight:600}.app-root.web .dw-handover{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 0}.app-root.web .dw-handover-text{min-width:0}.app-root.web .dw-handover-files{display:block;margin-top:2px;font-family:var(--font-mono);font-size:12px;color:var(--text-soft);overflow-wrap:anywhere}.app-root.web .dw-accept-act{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid var(--border)}.app-root.web .dw-accept-back{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 420px;justify-content:flex-end}.app-root.web .dw-accept-back select{width:auto;flex:0 0 180px;height:32px;padding:0 8px}.app-root.web .dw-accept-back input{width:auto;flex:1 1 220px;height:32px}.app-root.web .dw-accept-acs{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:4px 16px;border:0;padding:0;margin:0;justify-content:flex-end}.app-root.web .dw-accept-acs legend{float:left;margin-right:8px}.app-root.web .dw-accept-acs input{flex:none;width:auto;height:auto}.app-root.web .dw-kpi-escaped{color:var(--pill-bad-ink);font-weight:600}.app-root.web .dw-accept-hint{flex-basis:100%;text-align:right}.app-root.web .dw-empty strong{display:block;color:var(--text);font-weight:500}.app-root.web .dw-empty{display:block;padding:9px 12px;border:1px dashed color-mix(in oklab,var(--border) 50%,var(--border-strong));border-radius:var(--radius);color:var(--text-soft);text-align:left;font-size:14px}.app-root.web .dw-drop{border:1px dashed color-mix(in oklab,var(--border) 50%,var(--border-strong));background:var(--bg-alt);transition:border-color .12s ease,background-color .12s ease}.app-root.web .dw-drop.is-over{transform:none;border-style:solid;border-color:var(--accent);background:var(--pill-run-bg)}.app-root.web .dw-drop-title{font-size:16px;font-weight:600}.app-root.web .dw-search{padding-left:10px}.app-root.web .dw-ticket{animation:none}.app-root.web .tbl+.dw-label{margin-top:16px}.app-root.web .dw-kpi-n{font-size:28px;line-height:34px;font-weight:400;font-variant-numeric:tabular-nums}.app-root.web .dw-kpi-l{font-size:13px;color:var(--text-soft)}@media (max-width:640px){.app-root.web .dw-kpis>:last-child:nth-child(odd){grid-column:1 / -1}}.app-root.web .dw-key{height:20px;padding:0 6px;border-radius:var(--radius-chip);font-family:var(--font-mono);font-size:12px;font-weight:500;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.app-root.web .dw-id{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--text-soft)}.app-root.web .dw-type{height:20px;padding:0 6px;border-radius:var(--radius-chip);font-size:12px;font-weight:500;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.app-root.web .dw-type--bug{background:var(--pill-bad-bg);color:var(--pill-bad-ink)}.app-root.web .dw-type--story,.app-root.web .dw-type--task,.app-root.web .dw-type--rfp,.app-root.web .dw-type--epic{background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.app-root.web .dw-tag{height:22px;padding:0 8px;gap:5px;border-radius:var(--radius-pill);font-size:12px;font-weight:500;border:0;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink);flex:none}.app-root.web .dw-tag--ok{background:var(--pill-ok-bg);color:var(--pill-ok-ink)}.app-root.web .dw-tag--wait{background:var(--pill-wait-bg);color:var(--pill-wait-ink)}.app-root.web .dw-tag--info{background:var(--pill-run-bg);color:var(--pill-run-ink)}.app-root.web .dw-tag--bad{background:var(--pill-bad-bg);color:var(--pill-bad-ink)}.app-root.web .dw-tag--dw{background:var(--pill-neutral-bg);color:var(--pill-neutral-ink);font-family:var(--font-mono)}.app-root.web .dw-mail{height:24px;border-radius:var(--radius-pill);background:var(--bg-soft);border:1px solid var(--border);font-size:13px}.app-root.web .dw-mail-av{font-size:10px;font-weight:600;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.app-root.web .dw-mail--me{border-color:var(--border-strong);background:var(--bg-alt)}.app-root.web .dw-file{border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px}.app-root.web .count-badge{height:18px;min-width:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:600;background:#c4242a;color:#fff;box-shadow:none}.app-root.web .btn{height:32px;padding:0 12px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;box-shadow:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.app-root.web .btn:hover,.app-root.web .btn:active{transform:none}.app-root.web .btn-primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary);box-shadow:none}.app-root.web .btn-primary:hover{background:color-mix(in oklab,var(--primary) 86%,var(--bg-soft));box-shadow:none}.app-root.web .btn-secondary{background:var(--bg-soft);border-color:var(--border-strong);color:var(--text);box-shadow:none}.app-root.web .btn-ghost{background:transparent;border-color:transparent;color:var(--text);box-shadow:none}.app-root.web .btn-secondary:hover,.app-root.web .btn-ghost:hover{background:var(--bg-alt);box-shadow:none}.app-root.web .btn-tinted{background:var(--pill-run-bg);color:var(--pill-run-ink);border-color:transparent}.app-root.web .btn-tinted:hover{background:color-mix(in oklab,var(--pill-run-bg) 80%,var(--accent))}.app-root.web .btn-sm{height:32px;padding:0 12px}.app-root.web .btn-xs{height:28px;padding:0 10px;font-size:13px}.app-root.web .btn:disabled{opacity:1;color:var(--text-soft);background:var(--bg-alt);border-color:var(--border)}.app-root.web .seg{max-width:100%;overflow-x:auto;scrollbar-width:none;border-radius:var(--radius-sm);padding:2px;background:var(--bg-alt);border:1px solid var(--border)}.app-root.web .seg-btn{height:26px;border-radius:4px;padding:0 10px;font-size:13px}.app-root.web .seg-btn{border:1px solid transparent}.app-root.web .seg-btn.active{background:var(--bg-soft);color:var(--text);border-color:var(--border-strong);box-shadow:none}.app-root.web .dw-search,.app-root.web .dw-field,.app-root.web .demo-select{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--border-strong);font-size:14px}.app-root.web .dw-search{height:32px}.app-root.web .dw-field{padding:.45rem .7rem}.app-root.web .dw-field::placeholder,.app-root.web .dw-search::placeholder{color:var(--muted)}.app-root.web .modal-close{border-radius:var(--radius-sm);width:32px;height:32px}.app-root.web .tbl{background:var(--bg-soft)}.app-root.web th,.app-root.web td{padding:10px 12px}.app-root.web th{position:sticky;top:0;z-index:1;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--text-soft);background:var(--bg-soft);border-bottom:1px solid var(--border)}.app-root.web td{border-bottom:1px solid var(--rule)}.app-root.web tbody tr:last-child td{border-bottom:0}.app-root.web tbody tr:hover td{background:var(--bg-alt)}.app-root.web .dw-run,.app-root.web .dw-inbox-row{border-radius:var(--radius)}.app-root.web .dw-inbox-row{grid-template-columns:minmax(0,1fr) auto;animation:none}@media (max-width:1023px){.app-root.web .dw-inbox-row .dw-tag{display:inline-flex}}.app-root.web .dw-inbox-title{font-weight:500}.app-root.web .dw-run:hover,.app-root.web .dw-inbox-row:hover{background:var(--bg-alt);box-shadow:none}.app-root.web .modal-overlay{background:#13141666}.app-root.web .modal-dialog{border-radius:var(--radius-xl);background:var(--bg-soft);border:1px solid var(--border);box-shadow:var(--float-shadow)}.app-root.web[data-theme=dark] .modal-dialog{background:var(--bg-soft);border-color:var(--border);box-shadow:var(--float-shadow)}.app-root.web .modal-head,.app-root.web .modal-foot{background:var(--bg-soft);border-color:var(--border)}.app-root.web .dw-toast{border-radius:var(--radius);padding:10px 14px;background:var(--text);color:var(--bg-soft);border:0;box-shadow:var(--float-shadow)}.app-root.web .dw-login{background:var(--bg)}.app-root.web .dw-login-card{border-radius:var(--radius-xl);background:var(--bg-soft);border:1px solid var(--border);box-shadow:none}.app-root.web .w-bottom{background:var(--bg-soft);border:0;border-top:1px solid var(--border);border-radius:0;box-shadow:none}.app-root.web .w-bottom{padding-left:12px;padding-right:12px}.app-root.web .w-tab{border-radius:var(--radius);font-size:12px;font-weight:500;color:var(--text-soft)}.app-root.web .w-tab.active{background:var(--bg-hover);box-shadow:none;color:var(--text)}.app-root.web .w-mlogo{border-radius:0;background:transparent;box-shadow:none}.app-root.web .tbl--fit table{min-width:0}.app-root.web .tbl--fit td,.app-root.web .tbl--fit th{white-space:normal;vertical-align:top}.app-root.web .tbl--fit td .dw-meta{white-space:normal;overflow:visible;text-overflow:clip}.app-root.web .tbl--fit td .dw-pill-row{flex-direction:column;align-items:stretch;gap:6px}.app-root.web .tbl--fit td .dw-pill-row .btn{height:28px;padding:0 10px;font-size:13px;justify-content:flex-start}.app-root.web .tbl--fit td .seg{flex-wrap:wrap}.app-root.web .dw-sec-meta{max-width:64ch;text-align:right}@media (max-width:1023px){.app-root.web .dw-sec-meta{text-align:left}}.app-root.web .w-nav-sec,.app-root.web .w-user-role,.app-root.web .w-tab .count-badge,.app-root.web .dw-v-chip{font-size:11px}.app-root.web .w-nav-sec,.app-root.web .w-user-role{font-size:12px}.app-root.web .w-kv-v{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.5}.app-root.web .pane-title{white-space:normal;overflow:visible;text-overflow:clip}.app-root.web .dw-node-line,.app-root.web .dw-node-tool-d{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}.app-root.web .w-acct-btn{display:none}@media (max-width:1023px){.app-root.web .w-acct-btn{display:grid}}.app-root.web :where(button,a,input,select,textarea,[contenteditable],[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.app-root.web .dw-meta,.app-root.web .dw-note,.app-root.web .pane-meta,.app-root.web .dw-sec-meta{color:var(--text-soft)}.app-root.web ::-webkit-scrollbar{width:10px;height:10px}.app-root.web ::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--text) 18%,transparent);border-radius:999px;border:3px solid transparent;background-clip:padding-box}.app-root.web ::-webkit-scrollbar-track{background:transparent}@media (prefers-contrast:more){.app-root.web{--border:#94a3b8;--border-strong:#64748b}}@media (prefers-reduced-motion:reduce){.app-root.web *{animation:none!important;transition:none!important}}@media (max-width:1023px){.app-root.web .w-content{margin:0;border:0;border-radius:0;padding:16px 16px 96px}.app-root.web .w-topbar{padding:8px 16px;background:var(--bg-soft);border-bottom:1px solid var(--border)}.app-root.web .w-main{background:var(--bg-soft)}.app-root.web .pane-title,.app-root.web .pane-back{font-size:20px;line-height:26px}}.app-root.web{--brand:#f17919;--brand-strong:#c2560a;--brand-ink:#8a3c06;--brand-tint:#fff3e8;--brand-tint-2:#ffe4cc;--navy:#0b3d73;--navy-strong:#072a52;--navy-tint:#e8f0fa;--run:#1e6fd9;--run-ink:#0f4a99;--run-tint:#e6f0fd;--ok:#1e9e5a;--ok-ink:#0f5c33;--ok-tint:#e3f6eb;--bad:#d92d3a;--bad-tint:#fdecee;--bg:#eef3f9;--bg-alt:#f5f8fc;--bg-hover:#e3ebf5;--primary:var(--navy);--on-primary:#fff;--accent:var(--run);--accent-fill:var(--run);--accent-strong:var(--run-ink);--wait:var(--brand);--positive:var(--ok);--red:var(--bad);--pill-ok-bg:var(--ok-tint);--pill-ok-ink:var(--ok-ink);--pill-wait-bg:var(--brand-tint);--pill-wait-ink:var(--brand-ink);--pill-wait-edge:#fbc79a;--pill-run-bg:var(--run-tint);--pill-run-ink:var(--run-ink);--lift:0 6px 18px -6px rgba(11,61,115,.22),0 2px 4px rgba(11,61,115,.08);--brand-card:#ffe9d6;--ok-card:#d6f1e1;--bad-card:#fbdfe2;--run-card:#dbe9fc;--navy-card:#dde8f6;--purple-card:#ece5fb;--teal-card:#d8f1ee;--neutral-card:#ebf0f7}.app-root.web[data-theme=dark]{--brand:#ff9447;--brand-strong:#ffb27a;--brand-ink:#ffb27a;--brand-tint:#2e1f12;--brand-tint-2:#3d2814;--navy:#6fa8ef;--navy-strong:#9cc3f5;--navy-tint:#14233a;--run:#5aa2ff;--run-ink:#9cc6ff;--run-tint:#122238;--ok:#3fc07a;--ok-ink:#7fdca6;--ok-tint:#12291c;--bad:#ff6b76;--bad-tint:#2e1519;--bg:#0b0e14;--bg-alt:#141922;--bg-hover:#1c2330;--bg-soft:#10141b;--primary:#6fa8ef;--on-primary:#06111f;--pill-wait-edge:#5a3a16;--lift:0 6px 18px -6px rgba(0,0,0,.6);--brand-card:#3a2716;--ok-card:#17331f;--bad-card:#3a1a20;--run-card:#162b47;--navy-card:#182b46;--purple-card:#251d3d;--teal-card:#123430;--neutral-card:#1a202b}@keyframes dw-attn{0%,to{box-shadow:0 0 color-mix(in oklab,var(--brand) 45%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab,var(--brand) 0%,transparent)}}@keyframes dw-dot-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.7}}@keyframes dw-rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.app-root.web .w-logo-mark{width:32px;height:32px;object-fit:contain;border-radius:8px}.app-root.web .w-logo-name{color:var(--navy)}.app-root.web .w-nav-item{position:relative;transition:background-color .15s ease,color .15s ease,transform .15s ease}.app-root.web .w-nav-item:hover{background:color-mix(in oklab,var(--navy) 8%,transparent);color:var(--navy);transform:translate(2px)}.app-root.web .w-nav-item:hover svg{color:var(--navy)}.app-root.web .w-nav-item.active{background:var(--bg-soft);color:var(--navy);font-weight:600;box-shadow:0 1px 3px #0b3d731f}.app-root.web .w-nav-item.active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:3px;background:var(--brand)}.app-root.web .w-nav-item.active svg{color:var(--brand)}.app-root.web .w-nav-item .count-badge{margin-left:auto;background:var(--brand);animation:dw-attn 2.2s ease-in-out infinite}.app-root.web .w-tab .count-badge{position:absolute;top:2px;right:18%;background:var(--brand)}.app-root.web .w-tab.active{color:var(--navy)}.app-root.web .w-tab.active svg{color:var(--brand)}.app-root.web .w-avatar{background:var(--navy);color:#fff}.app-root.web .w-content{position:relative;overflow:hidden}.app-root.web .pane-title{color:var(--navy)}.app-root.web .pane-back{color:color-mix(in oklab,var(--navy) 55%,var(--text-soft))}.app-root.web .pane-back:hover{color:var(--brand)}.app-root.web .dw-sec-title{color:var(--navy)}@media (max-width:1023px){.app-root.web .w-mlogo{display:block;width:28px;height:28px;object-fit:contain}}.app-root.web .btn{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s ease,box-shadow .15s ease}.app-root.web .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:var(--lift)}.app-root.web .btn:not(:disabled):active{transform:translateY(0) scale(.97);box-shadow:none}.app-root.web .btn-primary{background:var(--navy);border-color:var(--navy);color:var(--on-primary)}.app-root.web .btn-primary:not(:disabled):hover{background:var(--navy-strong);border-color:var(--navy-strong)}.app-root.web .btn-ghost:not(:disabled):hover{box-shadow:none;background:var(--navy-tint);color:var(--navy)}.app-root.web .btn-accept{background:var(--ok);border-color:var(--ok);color:#fff}.app-root.web .btn-accept:not(:disabled):hover{background:color-mix(in oklab,var(--ok) 85%,#000)}.app-root.web .seg-btn.active{background:var(--navy);color:var(--on-primary);border-color:var(--navy)}.app-root.web .w-icon-btn,.app-root.web .w-project{transition:background-color .15s ease,border-color .15s ease,transform .12s ease}.app-root.web .w-icon-btn:hover,.app-root.web .w-project:hover{border-color:var(--navy);transform:translateY(-1px)}.app-root.web :where(input,select,textarea).dw-field:focus,.app-root.web .dw-search:focus{border-color:var(--run);box-shadow:0 0 0 3px color-mix(in oklab,var(--run) 22%,transparent);outline:none}.app-root.web .pane-header,.app-root.web .pane-body>*{animation:dw-rise-in .35s cubic-bezier(.16,1,.3,1) backwards}.app-root.web .pane-body>:nth-child(2){animation-delay:.05s}.app-root.web .pane-body>:nth-child(3){animation-delay:.1s}.app-root.web .pane-body>:nth-child(4){animation-delay:.15s}.app-root.web .dw-kpis{gap:16px}.app-root.web .dw-kpi-n{font-size:30px;line-height:36px;font-weight:600}.app-root.web .dw-inbox-row,.app-root.web .dw-run{position:relative;transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease}.app-root.web .dw-inbox-row:hover,.app-root.web .dw-run:hover{background:var(--bg-soft);transform:translateY(-1px);box-shadow:var(--lift)}.app-root.web .dw-inbox-row .dw-tag{background:var(--brand-tint);color:var(--brand-ink)}.app-root.web .dw-inbox-row--accept .dw-tag{background:var(--ok-tint);color:var(--ok-ink)}.app-root.web .dw-inbox-row--question .dw-tag{background:var(--run-tint);color:var(--run-ink)}.app-root.web .dw-inbox-row--hold .dw-tag{background:var(--bg-hover);color:var(--text-soft)}.app-root.web .dw-inbox-row--blocked .dw-tag,.app-root.web .dw-inbox-row--contest .dw-tag{background:var(--bad-tint);color:var(--bad)}.app-root.web .dw-prog{background:var(--rule)}.app-root.web .dw-prog>span{background:var(--run)}.app-root.web .dw-type--story{background:var(--run-tint);color:var(--run-ink)}.app-root.web .dw-type--task{background:var(--navy-tint);color:var(--navy)}.app-root.web .dw-type--epic{background:#f3e8ff;color:#5b21b6}.app-root.web[data-theme=dark] .dw-type--epic{background:#251a38;color:#c9a7ff}.app-root.web .dw-type--bug{background:var(--bad-tint);color:var(--bad)}.app-root.web .dw-key{background:var(--navy-tint);color:var(--navy)}.app-root.web .dw-tag--dw{background:var(--brand-tint);color:var(--brand-ink)}.app-root.web .dw-dag-box{background:var(--bg-alt);border:1px solid var(--border)}.app-root.web .dw-node{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.app-root.web button.dw-node:hover{transform:translateY(-2px);box-shadow:var(--lift)}.app-root.web .dw-node.s-done{background:var(--ok-tint);border-color:color-mix(in oklab,var(--ok) 45%,transparent)}.app-root.web .dw-node.s-run,.app-root.web .dw-node.s-check{background:var(--run-tint);border-color:var(--run);border-width:1px}.app-root.web .dw-node.s-gate,.app-root.web .dw-node.s-ask{background:var(--brand-tint);border-color:var(--brand);animation:dw-attn 2s ease-in-out 3}.app-root.web .dw-node.is-red{background:var(--bad-tint);border-color:var(--bad)}.app-root.web .dw-node.is-sel{outline:2px solid var(--navy);outline-offset:2px}.app-root.web .dw-dot--done{background:var(--ok)}.app-root.web .dw-dot--run,.app-root.web .dw-dot--check{background:var(--run);animation:dw-dot-pulse 1.2s ease-in-out infinite}.app-root.web .dw-dot--gate,.app-root.web .dw-dot--ask{background:var(--brand);animation:dw-dot-pulse 1.4s ease-in-out infinite}.app-root.web .dw-dot--human{box-shadow:inset 0 0 0 2px var(--navy)}.app-root.web .dw-dag-arrow{background:color-mix(in oklab,var(--navy) 35%,var(--border-strong))}.app-root.web .dw-dag-arrow:after{border-left-color:color-mix(in oklab,var(--navy) 35%,var(--border-strong))}.app-root.web .dw-wait{border-radius:12px}.app-root.web .dw-wait.is-run{background:var(--run-tint);border-color:color-mix(in oklab,var(--run) 55%,transparent)}.app-root.web .dw-wait.is-wait{background:var(--brand-tint);border-color:color-mix(in oklab,var(--brand) 55%,transparent)}.app-root.web .dw-wait.is-wait .dw-wait-ico{animation:dw-dot-pulse 1.6s ease-in-out infinite}.app-root.web .dw-wait.is-done{background:var(--ok-tint);border-color:color-mix(in oklab,var(--ok) 55%,transparent)}.app-root.web .dw-wait.is-human{background:var(--navy-tint);border-color:color-mix(in oklab,var(--navy) 55%,transparent)}.app-root.web .dw-wait-text strong{color:var(--navy)}.app-root.web .dw-wait.is-wait .dw-wait-text strong{color:var(--brand-ink)}.app-root.web .dw-sec.is-mine{padding:20px;margin:8px 0;border:1px solid color-mix(in oklab,var(--brand) 45%,transparent);border-radius:14px;background:var(--brand-tint);animation:dw-attn 2.4s ease-in-out 3}.app-root.web .dw-sec.is-mine .tbl{background:var(--bg-soft)}.app-root.web .dw-drop{background:var(--navy-tint);border:2px dashed color-mix(in oklab,var(--navy) 35%,transparent);transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.app-root.web .dw-drop.is-over{transform:scale(1.01);border-color:var(--brand);background:var(--brand-tint)}.app-root.web .dw-drop-title{color:var(--navy)}.app-root.web .dw-ticket{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.app-root.web .dw-ticket[draggable=true]{cursor:grab}.app-root.web .dw-ticket:hover{transform:translateY(-2px);box-shadow:var(--lift);border-color:color-mix(in oklab,var(--navy) 35%,transparent)}@media (prefers-reduced-motion:reduce){.app-root.web *,.app-root.web *:before{animation:none!important;transition:none!important}}.app-root.web .w-nav-item .count-badge,.app-root.web .w-tab .count-badge{background:#c2560a;color:#fff}.app-root.web .btn-accept{background:#157a44;border-color:#157a44;color:#fff}.app-root.web .btn-accept:not(:disabled):hover{background:#0f5c33;border-color:#0f5c33}.app-root.web .dw-type--bug,.app-root.web .dw-inbox-row--blocked .dw-tag,.app-root.web .dw-inbox-row--contest .dw-tag{color:#b4232f}.app-root.web[data-theme=dark] .w-nav-item .count-badge,.app-root.web[data-theme=dark] .w-tab .count-badge{background:var(--brand);color:#1a0d00}.app-root.web[data-theme=dark] .btn-accept{background:#3fc07a;border-color:#3fc07a;color:#06140c}.app-root.web[data-theme=dark] .btn-accept:not(:disabled):hover{background:#5ad192;border-color:#5ad192}.app-root.web[data-theme=dark] .dw-type--bug,.app-root.web[data-theme=dark] .dw-inbox-row--blocked .dw-tag,.app-root.web[data-theme=dark] .dw-inbox-row--contest .dw-tag{color:var(--bad)}.app-root.web .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-root.web .dw-model-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-top:16px;padding:16px;border-radius:12px;background:var(--navy-tint);border:1px solid color-mix(in oklab,var(--navy) 14%,transparent)}.app-root.web .dw-model-form label,.app-root.web .dw-model-field{display:flex;flex-direction:column;gap:6px;min-width:0}.app-root.web .dw-model-form .dw-model-wide{grid-column:span 2}.app-root.web .dw-model-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.app-root.web .dw-model-form .dw-meta{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.app-root.web .dw-model-form .dw-field:disabled{background:var(--bg-alt);color:var(--text-soft)}@media (max-width:640px){.app-root.web .dw-model-form{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-model-form .dw-model-wide{grid-column:auto}}.app-root.web .dw-dot--waiting{background:transparent;box-shadow:inset 0 0 0 2px var(--run)}.app-root.web .dw-node.s-waiting{background:var(--bg-soft);border:1px dashed var(--run)}.app-root.web .dw-question{white-space:pre-wrap;font-size:15px;line-height:1.6;border:1px solid color-mix(in oklab,var(--run) 45%,transparent);border-radius:10px;background:var(--run-tint)}.app-root.web textarea{font:inherit}.app-root.web .dw-form-label{display:block;margin:14px 0 6px;font-size:14px;font-weight:600;color:var(--text)}.app-root.web .dw-login-card form .dw-form-label:first-child{margin-top:0}.app-root.web .dw-login-card form>.btn{margin-top:16px}.app-root.web .dw-login-card form>p{margin-top:12px}.app-root.web .dw-health-answer{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-top:6px;font-size:15px;color:var(--text)}.app-root.web .dw-health-answer b{font-size:16px}.app-root.web .dw-health-answer--ok b{color:var(--ok-ink)}.app-root.web .dw-health-answer--warn b{color:var(--brand-ink)}.app-root.web .dw-health-answer--crit b{color:var(--bad)}.app-root.web .dw-health-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;align-self:center;background:var(--ok)}.app-root.web .dw-health-answer--warn .dw-health-dot{background:var(--brand);animation:dw-dot-pulse 1.6s ease-in-out infinite}.app-root.web .dw-health-answer--crit .dw-health-dot{background:var(--bad);animation:dw-dot-pulse 1.6s ease-in-out infinite}.app-root.web .dw-health-grid{margin-bottom:24px}.app-root.web .dw-health-alert{display:flex;flex-direction:column;gap:2px;margin:10px 0 0;font-size:13px;color:var(--text)}.app-root.web .dw-health-detail{margin:6px 0 0;font-size:13px;color:var(--text-soft);overflow-wrap:anywhere}.app-root.web .dw-health-more{margin-top:12px}.app-root.web .dw-health-alerts{list-style:none;margin:0;padding:0;display:grid;gap:8px}.app-root.web .dw-health-alerts li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:10px 14px;border-radius:10px;background:var(--brand-tint);border:1px solid var(--pill-wait-edge)}.app-root.web .dw-nowrap{white-space:nowrap}.app-root.web .dw-role-chips{display:flex;flex-wrap:wrap;gap:6px}.app-root.web .dw-role-chip{height:26px;padding:0 9px;border-radius:999px;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-soft);font-family:var(--font-mono);font-size:12px;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.app-root.web .dw-role-chip:hover:not(:disabled){border-color:var(--navy)}.app-root.web .dw-role-chip.on{background:var(--navy);border-color:var(--navy);color:var(--on-primary)}.app-root.web .dw-role-chip:disabled{cursor:default;opacity:.75}.app-root.web .btn-danger{background:var(--bad);border-color:var(--bad);color:#fff}.app-root.web .btn-danger:hover:not(:disabled){filter:brightness(.92)}.app-root.web .dw-members td b+.dw-tag,.app-root.web .dw-members td .dw-mono-sm+.dw-tag{margin-left:0;margin-top:4px}.app-root.web .dw-members td b+.dw-tag{margin-left:8px;margin-top:0}.app-root.web .dw-cov{display:grid;gap:6px;margin-bottom:10px}.app-root.web .dw-cov .dw-line{gap:8px;font-size:14px}.app-root.web .dw-cov-bar{height:8px;border-radius:999px;background:var(--bg-hover);overflow:hidden}.app-root.web .dw-cov-bar span{display:block;height:100%;border-radius:inherit;background:var(--brand);transition:width .4s ease}.app-root.web .dw-cov.is-full .dw-cov-bar span{background:var(--ok)}.app-root.web .dw-meta-wrap{margin:0;font-size:13px;color:var(--text-soft);overflow-wrap:anywhere}.app-root.web .dw-import{display:grid;gap:10px;margin-top:14px}.app-root.web .dw-import-map{list-style:none;margin:0;padding:0;display:grid;gap:4px}.app-root.web .dw-import-map li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:6px 10px;border-radius:8px;border:1px solid color-mix(in oklab,var(--brand) 35%,transparent);background:var(--brand-tint)}.app-root.web .dw-import-map li.is-mapped{border-color:color-mix(in oklab,var(--ok) 35%,transparent);background:var(--ok-tint)}.app-root.web .dw-import-map li.is-plain{border-color:var(--border);background:var(--bg-alt)}.app-root.web .dw-kpi-grid,.app-root.web .dw-pack-grid{margin:12px 0 20px}.app-root.web .dw-pack-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.app-root.web .dw-pack-types{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}.app-root.web .dw-pack-types span{font-size:12px;line-height:1;padding:5px 8px;border-radius:999px;background:color-mix(in oklab,var(--bg-soft) 65%,transparent);color:var(--text)}.app-root.web .dw-pack-ver{font-family:var(--font-mono);font-size:11px;color:var(--text-soft);font-variant-numeric:tabular-nums;padding:2px 7px;border-radius:999px;background:color-mix(in oklab,var(--bg-soft) 70%,transparent)}.app-root.web .dw-lib-usage{display:grid;gap:6px;max-width:420px;margin:4px 0 12px}.app-root.web .dw-pack-install{display:grid;gap:8px;padding:16px;border-radius:14px;border:1px dashed var(--border-strong);margin:12px 0}.app-root.web .dw-switch{position:relative;width:40px;height:22px;border-radius:999px;border:0;padding:0;background:var(--border-strong);cursor:pointer;transition:background .15s ease;flex:none}.app-root.web .dw-switch span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s ease}.app-root.web .dw-switch--on{background:var(--positive,#2e9e4f)}.app-root.web .dw-switch--on span{transform:translate(18px)}.app-root.web .dw-switch:focus-visible{outline:2px solid var(--focus,#1e5aa8);outline-offset:2px}@media (prefers-reduced-motion:reduce){.app-root.web .dw-switch,.app-root.web .dw-switch span{transition:none}}.app-root.web .dw-kpi-state{font-size:13px;font-weight:600;color:var(--text-soft)}.app-root.web .dw-kpi-card--gate .dw-kpi-state{color:var(--brand-ink)}.app-root.web .dw-kpi-rate{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1;color:var(--navy)}.app-root.web .dw-kpi-unit{font-size:15px;font-weight:600;color:var(--text-soft)}.app-root.web .dw-tile .dw-cov-bar{position:relative}.app-root.web .dw-kpi-card--auto .dw-cov-bar span{background:var(--ok)}.app-root.web .dw-kpi-card--cold .dw-cov-bar span{background:var(--border-strong)}.app-root.web .dw-kpi-floor{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.55}.app-root.web .dw-compare{display:grid;gap:12px}.app-root.web .dw-compare-docs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.app-root.web .dw-compare-doc{margin:0;max-height:420px;overflow:auto;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-soft);white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-sans);font-size:14px;line-height:1.55}@media (max-width:640px){.app-root.web .dw-compare-docs{grid-template-columns:1fr}}.app-root.web .dw-more-pages{display:none}@media (max-width:1023px){.app-root.web .dw-more-pages{display:block}}.app-root.web.is-mobile .dw-more-pages{display:block}.app-root.web .dw-more-list{display:grid;gap:8px;margin:8px 0 16px}.app-root.web .dw-more-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--border);background:var(--bg-soft);color:var(--text);font:inherit;font-size:15px;font-weight:600;text-align:left;cursor:pointer}.app-root.web .dw-more-item svg{width:20px;height:20px;color:var(--navy)}.app-root.web .dw-more-item:active{background:var(--navy-tint)}.app-root.web .dw-flow-cat td.dw-flow-cat-name{min-width:280px}@media (max-width:1119px){.app-root.web .tbl{overflow:visible;border:0;background:transparent}.app-root.web .tbl thead{display:none}.app-root.web .tbl table,.app-root.web .tbl tbody,.app-root.web .tbl tr,.app-root.web .tbl td{display:block;width:100%;min-width:0}.app-root.web .tbl tr{padding:12px 14px;margin-bottom:10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-soft)}.app-root.web .tbl td{border:0;padding:4px 0;overflow-wrap:anywhere}.app-root.web .tbl td[data-label]{display:grid;grid-template-columns:minmax(84px,36%) minmax(0,1fr);gap:4px 10px;align-items:baseline}.app-root.web .tbl td[data-label]:before{content:attr(data-label);font-size:12px;font-weight:600;color:var(--text-soft)}.app-root.web .tbl td .dw-line{flex-wrap:wrap}.app-root.web .dw-flow-cat td[data-label]:empty{display:none}.app-root.web .dw-flow-cat td.dw-flow-cat-name{min-width:0}.app-root.web .tbl--log tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}.app-root.web .tbl.tbl--log td,.app-root.web .tbl.tbl--log td[data-label]{display:block;width:auto}.app-root.web .tbl.tbl--log td[data-label]:before{display:none}.app-root.web .tbl--log td:last-child{flex:1 1 100%}.app-root.web .dw-members td.dw-member-flag{display:inline-flex;flex-direction:row-reverse;align-items:center;gap:8px;width:auto;margin-right:20px}.app-root.web .dw-members td.dw-member-flag:before{margin:0}}.app-root.web .dw-detail{margin:0;padding:12px 14px;max-height:220px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:13px;line-height:1.55;color:var(--text);background:var(--bad-tint);border:1px solid color-mix(in oklab,var(--bad) 40%,transparent);border-radius:8px}.app-root.web .hx-card,.app-root.web .hx-status,.app-root.web .glass-card,.app-root.web .dw-dag-box,.app-root.web .dw-wait,.app-root.web .dw-wait[class*=" is-"],.app-root.web .dw-sec.is-mine,.app-root.web .dw-node,.app-root.web .dw-node[class*=" s-"],.app-root.web .dw-node[class*=" is-"],.app-root.web .dw-bubble,.app-root.web .dw-bubble.dw-question,.app-root.web .dw-nostart,.app-root.web .dw-thread,.app-root.web .dw-form,.app-root.web .dw-model-form,.app-root.web .dw-compare-doc,.app-root.web .dw-empty{border:0}.app-root.web .hx-card,.app-root.web .glass-card,.app-root.web .dw-nostart,.app-root.web .dw-thread,.app-root.web .dw-form,.app-root.web .dw-model-form,.app-root.web .dw-compare-doc,.app-root.web .dw-empty{background:var(--neutral-card);box-shadow:none}.app-root.web .hx-status{background:color-mix(in oklab,var(--hx-c) 16%,var(--bg-soft))}.app-root.web .dw-sec.is-mine{background:var(--brand-card)}.app-root.web .dw-bubble{background:var(--purple-card)}.app-root.web .dw-bubble.dw-question{background:var(--run-card)}.app-root.web .dw-dag-box{background:var(--bg-alt)}.app-root.web .dw-node{background-color:var(--neutral-card)}.app-root.web .dw-node.s-done{background-color:var(--ok-card)}.app-root.web .dw-node.s-run,.app-root.web .dw-node.s-check,.app-root.web .dw-node.s-waiting{background-color:var(--run-card)}.app-root.web .dw-node.s-gate,.app-root.web .dw-node.s-ask,.app-root.web .dw-node.is-rec{background-color:var(--brand-card)}.app-root.web .dw-node.s-human,.app-root.web .dw-node.is-human{background-color:var(--teal-card)}.app-root.web .dw-node.is-red{background-color:var(--bad-card)}.app-root.web .dw-node.s-queued{background-color:var(--neutral-card);color:var(--text-soft)}.app-root.web .dw-wait,.app-root.web .dw-wait.is-run{background:var(--run-card)}.app-root.web .dw-wait.is-wait{background:var(--brand-card)}.app-root.web .dw-wait.is-done{background:var(--ok-card)}.app-root.web .dw-wait.is-human{background:var(--navy-card)}.app-root.web .dw-wait.is-held{background:var(--neutral-card)}.app-root.web .dw-health-alerts li,.app-root.web .dw-dag-stack.is-par,.app-root.web .dw-drop,.app-root.web .dw-detail,.app-root.web .dw-alt,.app-root.web .dw-inline,.app-root.web .dw-prompt,.app-root.web .dw-wiki,.app-root.web .dw-slot pre{border:0}.app-root.web .dw-banner--ok{background:var(--ok-card)}.app-root.web .dw-banner--warn,.app-root.web .dw-health-alerts li{background:var(--brand-card)}.app-root.web .dw-banner--bad,.app-root.web .dw-detail{background:var(--bad-card)}.app-root.web .dw-dag-stack.is-par,.app-root.web .dw-drop{background:var(--navy-tint)}.app-root.web .dw-drop.is-over{background:var(--navy-card)}.app-root.web .dw-alt,.app-root.web .dw-inline,.app-root.web .dw-prompt,.app-root.web .dw-wiki,.app-root.web .dw-slot pre{background:var(--neutral-card)}.app-root.web .dw-pack-install{border:0;background:var(--neutral-card)}.app-root.web{--hue-blue-bg:#d9e8fc;--hue-blue-ink:#1f5fbf;--hue-peach-bg:#fbe2d2;--hue-peach-ink:#a8461a;--hue-lavender-bg:#e7e1fb;--hue-lavender-ink:#5b3fc0;--hue-rose-bg:#fbdcde;--hue-rose-ink:#b3262f;--hue-mint-bg:#d0f1e5;--hue-mint-ink:#0f7a5a;--hue-sky-bg:#d3eefa;--hue-sky-ink:#0b6f8f;--hue-teal-bg:#cdeeec;--hue-teal-ink:#0f6e6a;--hue-lime-bg:#e2f2cc;--hue-lime-ink:#4a7a12;--hue-butter-bg:#faefc4;--hue-butter-ink:#7f6200;--hue-pink-bg:#f8dcef;--hue-pink-ink:#a3236f;--hue-sand-bg:#efe5d6;--hue-sand-ink:#7a5a2e;--hue-slate-bg:#e0e6ef;--hue-slate-ink:#3d5068}.app-root.web[data-theme=dark]{--hue-blue-bg:#16294a;--hue-blue-ink:#8bb8ff;--hue-peach-bg:#3a2418;--hue-peach-ink:#ffaa7f;--hue-lavender-bg:#251f42;--hue-lavender-ink:#bba9ff;--hue-rose-bg:#3b1a21;--hue-rose-ink:#ff8d96;--hue-mint-bg:#11332b;--hue-mint-ink:#62d8b0;--hue-sky-bg:#0f2d3a;--hue-sky-ink:#6fd0f0;--hue-teal-bg:#0f3030;--hue-teal-ink:#5fd0c8;--hue-lime-bg:#1f2e12;--hue-lime-ink:#a8d86a;--hue-butter-bg:#33290c;--hue-butter-ink:#f0cc5a;--hue-pink-bg:#3a1830;--hue-pink-ink:#f08acb;--hue-sand-bg:#2e261c;--hue-sand-ink:#d8b88a;--hue-slate-bg:#1e2633;--hue-slate-ink:#a9b8cc}.app-root.web .dw-art--blue{--art-bg:var(--hue-blue-bg);--art-ink:var(--hue-blue-ink)}.app-root.web .dw-art--peach{--art-bg:var(--hue-peach-bg);--art-ink:var(--hue-peach-ink)}.app-root.web .dw-art--lavender{--art-bg:var(--hue-lavender-bg);--art-ink:var(--hue-lavender-ink)}.app-root.web .dw-art--rose{--art-bg:var(--hue-rose-bg);--art-ink:var(--hue-rose-ink)}.app-root.web .dw-art--mint{--art-bg:var(--hue-mint-bg);--art-ink:var(--hue-mint-ink)}.app-root.web .dw-art--sky{--art-bg:var(--hue-sky-bg);--art-ink:var(--hue-sky-ink)}.app-root.web .dw-art--teal{--art-bg:var(--hue-teal-bg);--art-ink:var(--hue-teal-ink)}.app-root.web .dw-art--lime{--art-bg:var(--hue-lime-bg);--art-ink:var(--hue-lime-ink)}.app-root.web .dw-art--butter{--art-bg:var(--hue-butter-bg);--art-ink:var(--hue-butter-ink)}.app-root.web .dw-art--pink{--art-bg:var(--hue-pink-bg);--art-ink:var(--hue-pink-ink)}.app-root.web .dw-art--sand{--art-bg:var(--hue-sand-bg);--art-ink:var(--hue-sand-ink)}.app-root.web .dw-art--slate{--art-bg:var(--hue-slate-bg);--art-ink:var(--hue-slate-ink)}.app-root.web .dw-art[class]{position:relative;isolation:isolate;overflow:hidden;border:0;background:var(--art-bg)}.app-root.web .dw-art-motif{position:absolute;right:-10px;top:-8px;z-index:-1;width:min(48%,150px);height:auto;color:var(--art-ink);opacity:.18;pointer-events:none;transition:opacity .2s ease,transform .3s ease}.app-root.web .dw-art:hover .dw-art-motif{opacity:.26;transform:translate(-4px,-3px)}@media (prefers-reduced-motion:reduce){.app-root.web .dw-art-motif{transition:none}.app-root.web .dw-art:hover .dw-art-motif{transform:none}}.app-root.web .dw-art-ico{display:block;width:40px;height:40px;color:var(--art-ink);flex-shrink:0}.app-root.web .dw-art .dw-key{background:color-mix(in oklab,var(--bg-soft) 70%,transparent);color:var(--art-ink)}.app-root.web .dw-fork-label{display:inline-flex;align-items:center;width:fit-content;font-size:12px;font-weight:600;line-height:1.2;padding:4px 9px;border-radius:999px;background:var(--brand-card);color:var(--brand-ink)}.app-root.web .dw-fork-head{gap:12px;justify-content:flex-start;flex-wrap:wrap;margin-bottom:10px}.app-root.web .dw-fork-cost{display:grid;gap:10px;padding:16px 18px;border-radius:14px;background:var(--brand-card)}.app-root.web .dw-fork-cost ul{margin:0;padding-left:20px;display:grid;gap:4px}.app-root.web .dw-check-line{display:inline-flex;align-items:center;gap:8px;font-weight:600}.app-root.web .dw-fork-text{padding:12px 16px;border-radius:12px;background:var(--neutral-card);margin-top:10px}.app-root.web .dw-fork-text summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.app-root.web .dw-fork-text summary::-webkit-details-marker{display:none}.app-root.web .dw-fork-text textarea{width:100%;height:auto;min-height:180px;padding:10px 12px;margin-top:10px;font-family:var(--font-mono);font-size:13px;line-height:1.55;resize:vertical}.app-root.web .dw-fork-differs{font-size:12px;font-weight:600;color:var(--brand-ink)}.app-root.web .dw-fork-diff{margin:10px 0 0;padding:10px 12px;max-height:260px;overflow:auto;border-radius:10px;background:var(--bg-soft);font-family:var(--font-mono);font-size:12px;line-height:1.5;white-space:pre-wrap}.app-root.web .dw-fork-diff .is-add{display:block;background:var(--ok-tint);color:var(--ok-ink)}.app-root.web .dw-fork-diff .is-del{display:block;background:var(--bad-tint);color:var(--bad)}.app-root.web .dw-fork-diff .is-gap{display:block;color:var(--text-soft)}.app-root.web .dw-fork-actions{justify-content:flex-start;gap:8px;margin-top:12px}.app-root.web .dw-drop.dw-art[class]{gap:8px;min-height:240px;padding:28px 24px;border:0;border-radius:16px;text-align:center}.app-root.web .dw-drop.dw-art.is-over{background:color-mix(in oklab,var(--art-ink) 16%,var(--art-bg));transform:scale(1.01)}.app-root.web .dw-drop-art{width:min(320px,92%);height:auto;color:var(--art-ink);margin-bottom:8px}.app-root.web .dw-drop-ticket{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.app-root.web .dw-drop-arrow{opacity:.55;transition:opacity .2s ease}.app-root.web .dw-drop.is-over .dw-drop-ticket{transform:translate(20px,-4px) rotate(-3deg)}.app-root.web .dw-drop.is-over .dw-drop-arrow{opacity:1}.app-root.web .dw-drop.dw-art .dw-drop-title{color:var(--art-ink);font-size:18px;font-weight:700}.app-root.web .dw-drop.dw-art .dw-drop-sub{color:var(--text)}@media (prefers-reduced-motion:reduce){.app-root.web .dw-drop-ticket,.app-root.web .dw-drop-arrow{transition:none}}.app-root.web .dw-deploy-facts{list-style:none;margin:10px 0;padding:0;display:grid;gap:4px;font-size:14px}.app-root.web .dw-secret-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.app-root.web .dw-secret-card{display:grid;gap:8px;padding:14px 16px;border:0;border-radius:12px;background:var(--purple-card)}.app-root.web .dw-secret-var{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--text);overflow-wrap:anywhere}.app-root.web .pane-actions{margin-left:auto;flex-wrap:wrap}.app-root.web .dw-kv{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-1) var(--space-3);margin:0 0 var(--space-3)}.app-root.web .dw-kv dt{color:var(--text-soft)}.app-root.web .dw-kv dd{margin:0}.app-root.web .dw-link-once{word-break:break-all;flex:1 1 240px}.app-root.web .dw-progress{display:grid;gap:8px;padding:12px 14px;border-radius:12px;background:var(--run-card)}.app-root.web .dw-progress-todos{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:3px;font-size:.88rem}.app-root.web .dw-progress-todos .is-done{color:var(--text-soft);text-decoration:line-through}.app-root.web .dw-progress-todos .is-now{font-weight:600}.app-root.web .dw-progress-todos .is-off{color:var(--text-soft)}.app-root.web .dw-progress-log{display:grid;gap:6px;margin-top:4px}.app-root.web .dw-progress-steps{list-style:none;margin:0;padding:10px 12px;display:grid;gap:6px;font-size:.84rem;overflow-wrap:anywhere;border-radius:10px;background:color-mix(in oklab,var(--bg-soft) 72%,transparent)}.app-root.web .dw-egress{list-style:none;margin:6px 0;padding:0;display:grid;gap:6px}.app-root.web .dw-egress li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;overflow-wrap:anywhere}.app-root.web .dw-egress li .dw-mono-sm{flex:1 1 200px}.app-root.web .btn-secondary{background:var(--bg-soft);border:1px solid color-mix(in oklab,var(--navy) 55%,transparent);color:var(--navy);box-shadow:none}.app-root.web .btn-secondary:not(:disabled):hover{background:var(--navy-tint);border-color:var(--navy);color:var(--navy-strong)}.app-root.web .btn-ghost{background:var(--navy-tint);border:1px solid color-mix(in oklab,var(--navy) 24%,transparent);color:var(--navy);box-shadow:none}.app-root.web .btn-ghost:not(:disabled):hover{background:color-mix(in oklab,var(--navy) 16%,var(--bg-soft));color:var(--navy-strong);box-shadow:none}.app-root.web .btn-tinted{background:var(--run-tint);color:var(--run-ink);border:1px solid color-mix(in oklab,var(--run) 35%,transparent)}.app-root.web .btn-danger-soft{background:var(--bad-tint);border:1px solid color-mix(in oklab,var(--bad) 55%,transparent);color:color-mix(in oklab,var(--bad) 80%,#000)}.app-root.web[data-theme=dark] .btn-danger-soft{color:var(--bad)}.app-root.web .btn-danger-soft:not(:disabled):hover{background:var(--bad);border-color:var(--bad);color:#fff}.app-root.web .btn-primary:disabled{background:color-mix(in oklab,var(--navy) 32%,var(--bg-soft));border-color:transparent;color:color-mix(in oklab,var(--on-primary) 85%,transparent)}.app-root.web .btn-secondary:disabled,.app-root.web .btn-ghost:disabled,.app-root.web .btn-tinted:disabled,.app-root.web .btn-danger-soft:disabled{background:color-mix(in oklab,var(--navy) 9%,var(--bg-soft));border-color:color-mix(in oklab,var(--navy) 22%,transparent);color:color-mix(in oklab,var(--navy) 55%,var(--bg-soft))}.app-root.web .w-icon-btn{color:var(--navy);border-color:color-mix(in oklab,var(--navy) 40%,transparent);background:var(--navy-tint)}.app-root.web .w-icon-btn:hover{background:color-mix(in oklab,var(--navy) 16%,var(--bg-soft))}.app-root.web .w-project{border-color:color-mix(in oklab,var(--navy) 40%,transparent)}.app-root.web input[type=file]::file-selector-button{margin-right:12px;height:28px;padding:0 12px;border-radius:6px;border:1px solid color-mix(in oklab,var(--navy) 55%,transparent);background:var(--navy-tint);color:var(--navy);font:inherit;font-weight:500;cursor:pointer}.app-root.web input[type=file]::file-selector-button:hover{background:color-mix(in oklab,var(--navy) 16%,var(--bg-soft))}.app-root.web input[type=checkbox],.app-root.web input[type=radio]{accent-color:var(--navy)}.app-root.web .dw-hl-row{display:grid;grid-template-columns:96px minmax(0,1fr) 52px;align-items:start;gap:var(--space-3)}.app-root.web .dw-hl-row .dw-tag{justify-self:start}.app-root.web .dw-hl-v{display:block;line-height:1.6;overflow-wrap:anywhere}.app-root.web .dw-hl-v .dw-hl-ticket{vertical-align:baseline;margin-left:4px}.app-root.web .dw-hl-when{text-align:right;padding-top:2px}@media (max-width:640px){.app-root.web .dw-hl-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.app-root.web .dw-hl-row .dw-hl-when{order:2;margin-left:auto}.app-root.web .dw-hl-row .dw-hl-v{order:3;flex:1 1 100%}}.app-root.web p.dw-sec-meta{text-align:left;max-width:none;margin:0 0 var(--space-3)}.app-root.web .dw-cfg-acct{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 12px}.app-root.web .dw-model-form label.dw-check-line{flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;align-self:end;min-height:36px;font-weight:500}.app-root.web .dw-child .dw-meta{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.app-root.web .dw-state-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.app-root.web .dw-state-card{display:grid;gap:16px;justify-items:start;max-width:460px;padding:24px;border-radius:16px;background:var(--bg-soft);border:1px solid color-mix(in oklab,var(--bad) 40%,transparent)}.app-root.web .dw-state-card .dw-note{margin:0;color:var(--text);font-size:15px;line-height:1.5}@media (max-height:960px){.app-root.web .w-nav-item{padding-top:6px;padding-bottom:6px}.app-root.web .w-nav-sec{margin-top:10px}}.app-root.web .dw-cfg-row{grid-template-columns:170px minmax(0,1fr)}@media (max-width:640px){.app-root.web .dw-cfg-row{grid-template-columns:minmax(0,1fr);gap:6px}}.app-root.web .dw-proj-card{padding:18px 20px;border:0;border-radius:14px;background:var(--neutral-card);margin-bottom:var(--space-4)}.app-root.web .dw-proj-card .dw-model-form{background:var(--bg-soft)}.app-root.web p.dw-kpi-rate{margin:8px 0 2px}.app-root.web .dw-progress .dw-label{color:var(--text);font-weight:700}.app-root.web .dw-progress{min-width:0}.app-root.web .dw-progress .dw-line{flex-wrap:wrap;align-items:baseline;gap:4px 12px}.app-root.web .dw-progress .dw-meta{white-space:normal;overflow:visible;text-overflow:clip}.app-root.web .dw-progress-steps li,.app-root.web .dw-progress-todos li{overflow-wrap:anywhere;word-break:break-word}.app-root.web .dw-older{margin-top:12px}.app-root.web .dw-older>summary{cursor:pointer;display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:8px;background:var(--navy-tint);color:var(--navy);font-weight:500;font-size:14px;list-style:none}.app-root.web .dw-older>summary::-webkit-details-marker{display:none}.app-root.web .dw-older>summary:before{content:"▸";margin-right:8px}.app-root.web .dw-older[open]>summary:before{content:"▾"}.app-root.web .dw-older>.tbl{margin-top:10px}.app-root.web .w-subtabs{flex-shrink:0;display:flex;gap:12px;margin:0 0 16px -6px;max-width:calc(100% + 6px);box-shadow:inset 0 -1px 0 var(--border);overflow-x:auto;scrollbar-width:none}.app-root.web .w-subtab{position:relative;flex:none;height:38px;padding:0 6px;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:var(--text-soft);cursor:pointer;white-space:nowrap;transition:color .16s ease}.app-root.web .w-subtab:hover{color:var(--text)}.app-root.web .w-subtab.is-on{color:var(--navy)}.app-root.web .w-subtab.is-on:after{content:"";position:absolute;left:6px;right:6px;bottom:0;height:2px;border-radius:2px;background:var(--brand)}.app-root.web .w-subtab:focus-visible{outline:2px solid var(--navy);outline-offset:-2px;border-radius:4px}.app-root.web .w-subtabs--in{box-shadow:none;gap:8px}.app-root.web .w-subtabs--in .w-subtab{height:32px;font-size:13px}.app-root.web .w-subtabs--in .w-subtab.is-on:after{background:var(--navy)}.app-root.web .dw-set-row{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px 32px;align-items:start}@media (min-width:1400px){.app-root.web .dw-set-row{grid-template-columns:390px minmax(0,1fr)}}.app-root.web .dw-set-label .dw-sec-title{margin:0}.app-root.web .dw-set-label .pane-desc{margin-top:6px}.app-root.web .dw-set-now{display:flex;flex-direction:column;gap:2px;margin:12px 0 0;font-size:13px;font-weight:500;color:var(--text)}.app-root.web .dw-set-now span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-root.web .dw-set-panel .dw-model-form .dw-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-root.web .pane-desc{text-wrap:wrap}.app-root.web .dw-set-panel{min-width:0;container-type:inline-size;padding:16px;border-radius:12px;background:var(--neutral-card)}.app-root.web .dw-set-panel .dw-model-form{padding:0;border-radius:0;background:transparent}.app-root.web .dw-set-panel .dw-model-form{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-set-panel .dw-model-form .dw-model-wide{grid-column:auto}@container (min-width:548px){.app-root.web .dw-set-panel .dw-model-form{grid-template-columns:repeat(2,minmax(0,1fr))}.app-root.web .dw-set-panel .dw-model-form .dw-model-wide{grid-column:span 2}}@container (min-width:828px){.app-root.web .dw-set-panel .dw-model-form{grid-template-columns:repeat(3,minmax(0,1fr))}}.app-root.web .dw-set-panel>.dw-banner{margin:0 0 12px}.app-root.web .dw-set-panel .dw-model-form{margin-top:0}.app-root.web .dw-set-panel .dw-model-form label{justify-content:flex-end}.app-root.web .dw-set-panel>.dw-stack{padding:0;background:transparent}.app-root.web .dw-set-foot{align-items:center}.app-root.web .dw-set-foot>.dw-sec-meta{margin-right:auto}.app-root.web .dw-set-foot .btn-primary:disabled{background:var(--navy);color:var(--on-primary);opacity:.45}.app-root.web .dw-set-secret{display:flex;align-items:center;gap:8px}.app-root.web .dw-set-secret .dw-field{flex:1 1 auto;width:auto;min-width:0}.app-root.web .dw-egress li{flex-wrap:nowrap}.app-root.web .dw-egress li .dw-mono-sm{flex:1 1 auto;min-width:0}.app-root.web .dw-egress li .dw-field{width:auto;flex:0 0 150px}@media (max-width:999px){.app-root.web .dw-set-row{grid-template-columns:minmax(0,1fr)}}.app-root.web .dw-set-panel .dw-field{box-sizing:border-box;height:36px}.app-root.web .dw-set-panel .btn,.app-root.web .dw-egress li .btn,.app-root.web .dw-egress-add .btn{height:36px}.app-root.web .dw-egress li .dw-field,.app-root.web .dw-egress-add .dw-field{box-sizing:border-box;height:36px}.app-root.web .dw-egress-add{flex-wrap:nowrap}.app-root.web .dw-egress-add .dw-field{flex:1 1 auto;width:auto;min-width:0}.app-root.web .dw-egress-label{display:flex;align-items:center;gap:8px;margin-top:10px}.app-root.web .dw-egress--cols{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));column-gap:24px}.app-root.web .dw-egress-remove{flex:none;height:36px;padding:0 6px;border:0;background:none;font:inherit;font-size:13px;font-weight:600;color:var(--bad);cursor:pointer}.app-root.web .dw-egress-remove:hover{text-decoration:underline;text-underline-offset:3px}.app-root.web .dw-egress-remove:focus-visible{outline:2px solid var(--bad);outline-offset:-2px;border-radius:4px}.app-root.web .tbl--log td.dw-mono{white-space:nowrap}.app-root.web .dw-art--neutral{--art-bg:var(--neutral-card);--art-ink:var(--text-soft);--art-title:var(--text)}.app-root.web .dw-art--ok{--art-bg:var(--ok-card);--art-ink:var(--ok-ink)}.app-root.web .dw-art--warn{--art-bg:var(--brand-card);--art-ink:var(--brand-ink)}.app-root.web .dw-art--bad{--art-bg:var(--bad-card);--art-ink:var(--bad)}.app-root.web .dw-tile{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:14px;color:var(--text)}.app-root.web .dw-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:40px}.app-root.web .dw-tile-aside{display:flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap}.app-root.web .dw-tile-title{font-size:17px;line-height:1.25;font-weight:700;color:var(--art-title,var(--art-ink));overflow-wrap:anywhere}.app-root.web .dw-tile-body{display:flex;flex-direction:column;gap:8px;min-width:0}.app-root.web .dw-tile-foot{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:auto;padding-top:2px}.app-root.web .dw-tile-meta{margin-left:auto}.app-root.web .dw-tile-action{flex:none}.app-root.web .dw-tile .dw-art-motif{top:auto;bottom:0;right:0;width:50%;height:50%}.app-root.web .dw-tile .dw-art-motif{transform-origin:100% 100%;transition:transform .45s cubic-bezier(.2,.9,.3,1.35),opacity .3s ease}.app-root.web .dw-tile:hover .dw-art-motif{opacity:.28;transform:translate(-8px,-10px) scale(1.1)}@media (prefers-reduced-motion:reduce){.app-root.web .dw-tile .dw-art-motif{transition:none}.app-root.web .dw-tile:hover .dw-art-motif{transform:none}}.app-root.web .dw-tile--off{opacity:.72}.app-root.web .dw-pack-id{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.app-root.web .dw-tile .dw-kpi-n{color:var(--art-ink)}.app-root.web .dw-kpi-of{font-size:.55em;color:var(--text-soft)}.app-root.web .dw-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-bottom:8px}.app-root.web .dw-scope{gap:10px}.app-root.web .dw-levels{margin-top:12px}.app-root.web .dw-levels>.dw-sec-head{flex-direction:column;align-items:flex-start;gap:2px;margin:28px 0 4px}.app-root.web .dw-levels>.dw-sec-head .dw-sec-meta{max-width:none;text-align:left;text-wrap:pretty}.app-root.web .dw-set-row--compact{align-items:center}.app-root.web .dw-set-row--compact .dw-set-now{display:none}.app-root.web .dw-set-panel textarea.dw-field{height:auto;min-height:96px;resize:vertical;line-height:1.5}.app-root.web .dw-applied{padding:10px 12px;margin-bottom:10px;border-radius:10px;background:var(--bg-soft)}.app-root.web .dw-applied pre{margin:4px 0 0;white-space:pre-wrap;font-family:var(--font-mono);font-size:13px;color:var(--text)}.app-root.web .dw-over{color:var(--bad)}.app-root.web .dw-meter{display:grid;gap:6px;min-width:220px}.app-root.web .dw-meter .dw-line{justify-content:space-between;gap:12px}.app-root.web .dw-meter-track{height:8px;border-radius:999px;background:var(--neutral-card);overflow:hidden}.app-root.web .dw-meter-track span{display:block;height:100%;border-radius:inherit;background:var(--navy)}.app-root.web .dw-meter-track span.is-full{background:var(--bad)}@media (max-width:480px){.app-root.web .dw-kpis{grid-template-columns:minmax(0,1fr)}}.app-root.web input[type=file].dw-field{box-sizing:border-box;height:36px;padding:3px}.app-root.web input[type=file].dw-field::file-selector-button{height:28px;margin-right:12px;box-sizing:border-box}.app-root.web .dw-model-grid{margin-top:12px}.app-root.web .dw-model-dep{font-size:14px;font-weight:600;color:var(--text);overflow-wrap:anywhere}.app-root.web .dw-model-ep{font-size:12px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word}.app-root.web .dw-model-back{font-size:12px;font-weight:600;color:var(--brand-ink)}.app-root.web .dw-dialog .modal-sub{white-space:normal;overflow:visible;text-overflow:clip}.app-root.web .dw-mform{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.app-root.web .dw-mgroup{display:flex;flex-direction:column;gap:14px;margin:0;padding:16px;border-radius:12px;background:var(--neutral-card)}.app-root.web .dw-mgroup .dw-meta{white-space:normal;overflow:visible;text-overflow:clip}.app-root.web .dw-mgroup-title{margin:0;font-size:14px;font-weight:700;color:var(--navy)}.app-root.web .dw-mgroup label.dw-check-line{flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;font-weight:500}.app-root.web .dw-mgroup .dw-field{box-sizing:border-box;width:100%;height:36px}.app-root.web .dw-tile .dw-art-motif--logo{width:58%;height:58%;stroke:none}.app-root.web :is(.dw-health-grid,.dw-pack-grid,.dw-kpi-grid,.dw-model-grid){display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1359px){.app-root.web :is(.dw-health-grid,.dw-pack-grid,.dw-kpi-grid,.dw-model-grid){grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1099px){.app-root.web :is(.dw-health-grid,.dw-pack-grid,.dw-kpi-grid,.dw-model-grid){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:759px){.app-root.web :is(.dw-health-grid,.dw-pack-grid,.dw-kpi-grid,.dw-model-grid){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1360px){.app-root.web :is(.dw-pack-grid,.dw-kpi-grid){grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:559px){.app-root.web :is(.dw-health-grid,.dw-pack-grid,.dw-kpi-grid,.dw-model-grid){grid-template-columns:minmax(0,1fr)}}.app-root.web .dw-bento{display:block;position:relative;width:100%}.app-root.web .dw-bento-cell{position:absolute;display:flex;min-width:0;width:100%;transform-origin:center;transition:transform .35s cubic-bezier(.2,.9,.3,1.2);animation:dw-snap .6s cubic-bezier(.2,.9,.3,1.25) var(--d,0ms) backwards}.app-root.web .dw-bento.is-ready .dw-bento-cell{transition:transform .35s cubic-bezier(.2,.9,.3,1.2),left .45s cubic-bezier(.3,.8,.3,1),top .45s cubic-bezier(.3,.8,.3,1),width .45s cubic-bezier(.3,.8,.3,1),height .45s cubic-bezier(.3,.8,.3,1)}.app-root.web .dw-bento-cell>.dw-tile{flex:1 1 auto;min-width:0;height:100%}.app-root.web .dw-bento-cell:hover{transform:scale(1.025);z-index:2}.app-root.web .dw-bento-cell.is-pop{transform:scale(1.05);z-index:2}@keyframes dw-snap{0%{opacity:0;transform:scale(.82)}60%{opacity:1;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.app-root.web .dw-bento-cell,.app-root.web .dw-bento-cell.is-pop{animation:none;transition:none;transform:none}.app-root.web .dw-bento-cell:hover{transform:none}}.app-root.web .dw-tile--flip{padding:0;perspective:1200px}.app-root.web .dw-tile-faces{display:grid;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.3,.7,.2,1)}.app-root.web .dw-tile--flip.is-flipped .dw-tile-faces{transform:rotateY(180deg)}.app-root.web .dw-tile-face{grid-area:1 / 1;position:relative;isolation:isolate;display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.app-root.web .dw-tile-back{transform:rotateY(180deg)}.app-root.web .dw-tile-hint{margin-top:auto;font-size:12px;color:var(--text-soft)}.app-root.web .dw-tile-summary{position:relative;margin:6px 0 0;max-width:56%;font-size:13px;line-height:1.4;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-root.web .dw-tile-hit{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;border:0;background:transparent;cursor:pointer;border-radius:inherit}.app-root.web .dw-tile-hit:focus-visible{outline:2px solid var(--run);outline-offset:-3px}.app-root.web .dw-tile--flip.is-flipped .dw-tile-hit{pointer-events:none}@media (prefers-reduced-motion:reduce){.app-root.web .dw-tile-faces{transition:none}}.app-root.web .dw-tile--flip .dw-art-motif{bottom:12px;right:12px;width:calc(44% - 12px);height:calc(50% - 12px)}.app-root.web .dw-tile-empty{margin:0;font-size:14px;color:var(--text-soft)}.app-root.web .dw-dialog--wide{width:min(1100px,calc(100vw - 3rem))}.app-root.web .dw-mbody{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.app-root.web .dw-mbody>.dw-banner,.app-root.web .dw-mbody>.dw-mnotes{grid-column:1 / -1}.app-root.web .dw-mnotes{display:flex;flex-direction:column;gap:8px}.app-root.web .dw-mnotes:empty{display:none}.app-root.web .dw-prov{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-root.web .dw-prov-opt{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:12px;background:var(--bg-soft);color:var(--text);font:inherit;font-weight:600;font-size:14px;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .dw-prov-logo{display:flex;flex:none}.app-root.web .dw-prov-opt svg{width:22px;height:22px}.app-root.web .dw-prov-opt:hover{border-color:var(--navy)}.app-root.web .dw-prov-opt.is-on{border-color:var(--navy);background:var(--navy-tint);color:var(--navy);box-shadow:0 0 0 2px color-mix(in oklab,var(--navy) 22%,transparent)}.app-root.web .dw-prov-opt:focus-visible{outline:2px solid var(--run);outline-offset:2px}@media (max-width:820px){.app-root.web .dw-mbody{grid-template-columns:minmax(0,1fr)}}.app-root.web .dw-mgroup--conn{grid-row:1 / span 2}.app-root.web .dw-mnotes p{margin:0}@media (max-width:820px){.app-root.web .dw-mgroup--conn{grid-row:auto}}.app-root.web .dw-flowtools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin:4px 0}.app-root.web .dw-flowsearch{width:300px;max-width:100%;height:36px;box-sizing:border-box}.app-root.web .dw-seg-n{margin-left:4px;font-size:12px;font-weight:600;color:var(--muted)}.app-root.web .seg-btn.active .dw-seg-n{color:inherit;opacity:.8}.app-root.web .dw-flowgroup{margin-top:22px}.app-root.web .dw-flowgroup-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-bottom:10px}.app-root.web .dw-flowgroup-head .dw-sec-title{margin:0}.app-root.web .dw-flowgroup-head .btn{margin-left:auto}.app-root.web .dw-flowlines{display:grid;gap:10px}.app-root.web .dw-flowline{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head now" "strip strip";gap:10px 16px;align-items:center;width:100%;padding:14px 16px;border:0;border-radius:14px;background:var(--neutral-card);color:var(--text);text-align:left;font:inherit;cursor:pointer;transition:box-shadow .15s ease}.app-root.web .dw-flowline:hover{box-shadow:inset 0 0 0 2px color-mix(in oklab,var(--navy) 28%,transparent)}.app-root.web .dw-flowline:focus-visible{outline:2px solid var(--run);outline-offset:2px}.app-root.web .dw-flowline-head{grid-area:head;display:flex;align-items:center;gap:10px;min-width:0}.app-root.web .dw-flowline-title{min-width:0;font-size:var(--type-callout);font-weight:600;overflow-wrap:anywhere}.app-root.web .dw-flowline-now{grid-area:now;display:inline-flex;align-items:center;gap:6px;font-size:var(--type-subhead);font-weight:600;white-space:nowrap}.app-root.web .dw-strip{grid-area:strip;display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;margin:0;padding:0;list-style:none}.app-root.web .dw-strip-node{display:flex;align-items:center}.app-root.web .dw-strip-link{width:18px;height:2px;margin:0 3px;border-radius:1px;background:var(--border-strong)}.app-root.web .dw-strip-node--done>.dw-strip-link,.app-root.web .dw-strip-node--run>.dw-strip-link,.app-root.web .dw-strip-node--check>.dw-strip-link{background:var(--ok)}.app-root.web .dw-strip-pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1.5px solid var(--border-strong);border-radius:999px;background:var(--bg-soft);color:var(--text-soft);font-size:12px;font-weight:700}.app-root.web .dw-strip-node--done .dw-strip-pill{border-color:transparent;background:var(--ok-card);color:var(--ok-ink)}.app-root.web .dw-strip-node--run .dw-strip-pill,.app-root.web .dw-strip-node--check .dw-strip-pill{border-color:var(--run);background:var(--run-card);color:var(--run-ink)}.app-root.web .dw-strip-node--waiting .dw-strip-pill{border-style:dashed;border-color:var(--run);color:var(--run-ink)}.app-root.web .dw-strip-node--gate .dw-strip-pill,.app-root.web .dw-strip-node--ask .dw-strip-pill{border-color:var(--brand);background:var(--brand-card);color:var(--brand-ink)}.app-root.web .dw-strip-node--human .dw-strip-pill{border-color:var(--navy);background:var(--teal-card);color:var(--navy)}.app-root.web .dw-strip-node--skipped .dw-strip-pill{opacity:.5;text-decoration:line-through}.app-root.web .dw-strip-count{margin-left:auto;padding-left:14px;font-size:12px;font-weight:600;color:var(--text-soft)}@media (max-width:640px){.app-root.web .dw-flowline{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "now" "strip"}.app-root.web .dw-flowsearch{width:100%}.app-root.web .dw-strip-link{width:10px;margin:0 2px}.app-root.web .dw-strip-pill{padding:0 8px}.app-root.web .dw-strip-count{flex-basis:100%;margin-top:2px;padding-left:0;text-align:right}}.app-root.web .dw-graph{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .dw-graph-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.app-root.web .dw-graph-hint{margin:0;padding:8px 12px;border-radius:var(--radius-lg);background:var(--neutral-card);font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-graph-help{min-width:28px;padding:0 8px;font-weight:700}.app-root.web .dw-graph-tools{display:inline-flex;align-items:center;gap:6px}.app-root.web .dw-graph-zoom{min-width:3.2em;text-align:center;font-size:var(--type-footnote);font-variant-numeric:tabular-nums;color:var(--text-soft)}.app-root.web .dw-graph-frame{position:relative;overflow:hidden;border-radius:var(--radius);background:color-mix(in oklab,var(--bg-soft) 55%,transparent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22'%3E%3Ccircle cx='1' cy='1' r='1' fill='%238a94a6' fill-opacity='.3'/%3E%3C/svg%3E");background-size:22px 22px;cursor:grab;touch-action:pan-y;transition:height .3s var(--motion-ease)}.app-root.web .dw-graph-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.app-root.web .dw-graph-stage{position:absolute;left:0;top:0;transform-origin:0 0;transition:transform .38s var(--motion-ease)}.app-root.web .is-dragging .dw-graph-stage{transition:none}.app-root.web .dw-gedges{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.app-root.web .dw-gnode{position:absolute;margin:0;justify-content:center;box-sizing:border-box;animation:dw-gnode-in .45s var(--motion-ease) backwards;animation-delay:calc(var(--col,0) * 70ms);transition:opacity .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s var(--motion-ease)}.app-root.web .dw-gnode:hover{transform:translateY(-2px)}.app-root.web .dw-gnode.is-dim{opacity:.3}.app-root.web .dw-gnode.s-gate,.app-root.web .dw-gnode.s-ask{animation:dw-gnode-in .45s var(--motion-ease) backwards;animation-delay:calc(var(--col,0) * 70ms)}.app-root.web .dw-gnode.s-run,.app-root.web .dw-gnode.s-check{background:var(--run-card);background-image:none}.app-root.web .dw-gnode,.app-root.web .dw-gnode:hover,.app-root.web .dw-gnode.is-sel{box-shadow:none}.app-root.web .dw-gnode.is-sel{outline:3px solid color-mix(in oklab,var(--accent) 32%,transparent);outline-offset:0}.app-root.web .dw-gnode-round{margin-left:auto;flex-shrink:0;padding:0 7px;border-radius:999px;background:color-mix(in oklab,var(--text) 10%,transparent);color:var(--text);font-size:var(--type-caption2);font-weight:700;line-height:18px;white-space:nowrap}@keyframes dw-gnode-in{0%{opacity:0;transform:translateY(8px) scale(.97)}}.app-root.web .dw-gedge{fill:none;stroke:var(--border-strong);stroke-width:2;transition:opacity .2s ease,stroke-width .2s ease,stroke .2s ease}.app-root.web .dw-gedge:not(.is-loop){stroke-dasharray:1;stroke-dashoffset:0;animation:dw-gedge-draw .6s var(--motion-ease) backwards;animation-delay:calc(var(--col,0) * 70ms + .12s)}@keyframes dw-gedge-draw{0%{stroke-dashoffset:1}}.app-root.web .dw-gedge.is-done{stroke:#48b02c}.app-root.web .dw-gedge.is-live{stroke:var(--accent)}.app-root.web .dw-gedge.is-wait{stroke:var(--wait)}.app-root.web .dw-gedge.is-loop{stroke:var(--wait);stroke-width:1.75;stroke-dasharray:6 6;animation:dw-gloop-in .5s ease backwards;animation-delay:.5s}@keyframes dw-gloop-in{0%{opacity:0}}.app-root.web .dw-gedge.is-hot{stroke-width:3}.app-root.web .dw-gedge.is-dim,.app-root.web .dw-gflow.is-dim,.app-root.web .dw-gloop.is-dim{opacity:.12}.app-root.web .dw-gflow{fill:none;stroke:var(--on-accent);stroke-opacity:.85;stroke-width:2;stroke-dasharray:3 14;stroke-linecap:round;animation:dw-gflow 1.1s linear infinite;transition:opacity .2s ease}.app-root.web .dw-gedge.is-loop.is-live{animation:dw-gloop-run 1s linear infinite}@keyframes dw-gflow{to{stroke-dashoffset:-17}}@keyframes dw-gloop-run{to{stroke-dashoffset:-12}}.app-root.web .dw-garrow{fill:var(--border-strong)}.app-root.web .dw-garrow{animation:dw-gloop-in .2s ease backwards;animation-delay:.7s}.app-root.web .dw-garrow.is-done{fill:#48b02c}.app-root.web .dw-garrow.is-live{fill:var(--accent)}.app-root.web .dw-garrow.is-wait,.app-root.web .dw-garrow.is-loop{fill:var(--wait)}.app-root.web .dw-gloop{position:absolute;transform:translate(-50%,-50%);padding:2px 9px;border-radius:999px;border:1px solid color-mix(in oklab,var(--wait) 55%,transparent);background:var(--bg-soft);color:var(--text);font-size:var(--type-caption2);font-weight:700;white-space:nowrap;pointer-events:none;transition:opacity .2s ease;animation:dw-gloop-in .5s ease backwards;animation-delay:.6s}.app-root.web .dw-graph-par{position:absolute;pointer-events:none}.app-root.web .dw-graph-legend{padding-top:2px}.app-root.web .dw-graph-loopkey{display:inline-block;width:18px;height:0;margin-right:6px;vertical-align:middle;border-top:2px dashed var(--wait)}.app-root.web .dw-flowtop{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:var(--space-5);align-items:stretch}.app-root.web .dw-flowside{padding-right:var(--space-5);border-right:1px solid var(--border)}.app-root.web .dw-graph-sec{padding:0;border-top:0;display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.app-root.web .dw-fcols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border)}.app-root.web .dw-fcols--1{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-fcol{min-width:0;padding:0 var(--space-5);border-left:1px solid var(--border)}.app-root.web .dw-fcol:first-child{padding-left:0;border-left:0}.app-root.web .dw-fcol:last-child{padding-right:0}@media (max-width:1180px){.app-root.web .dw-flowtop{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-flowside{padding:0 0 var(--space-5);border-right:0;border-bottom:1px solid var(--border)}}@media (max-width:1000px){.app-root.web .dw-fcols{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-fcol{padding:0;border-left:0}.app-root.web .dw-fcol+.dw-fcol{padding-top:var(--space-5);margin-top:var(--space-5);border-top:1px solid var(--border)}}.app-root.web .fc{display:flex;flex-direction:column;gap:var(--space-5)}.app-root.web .fc-sec{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .fc-label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .fc-label .is-bad{color:var(--red);font-weight:700}.app-root.web .fc-label .is-wait{color:var(--wait);font-weight:700}.app-root.web .fc-head,.app-root.web .fc-hero,.app-root.web .fc-actions,.app-root.web .fc-write{border-radius:var(--radius-xl);background:var(--neutral-card)}.app-root.web .fc-head.is-ok,.app-root.web .fc-hero.is-ok{background:var(--ok-card)}.app-root.web .fc-head.is-run,.app-root.web .fc-hero.is-run{background:var(--run-card)}.app-root.web .fc-head.is-brand,.app-root.web .fc-hero.is-brand{background:var(--brand-card)}.app-root.web .fc-head.is-teal,.app-root.web .fc-hero.is-teal{background:var(--teal-card)}.app-root.web .fc-head{display:flex;flex-direction:column;gap:8px;padding:16px 18px}.app-root.web .fc-head-top{display:flex;align-items:center;gap:var(--space-3)}.app-root.web .fc-head-top .dw-state{margin-left:auto;white-space:nowrap}.app-root.web .fc-head-name{margin:0;min-width:0;font-size:var(--type-headline);font-weight:600;line-height:1.25}.app-root.web .fc-head-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:var(--type-footnote);color:var(--text-soft)}.app-root.web .fc-head-round{margin-left:auto;padding:0 8px;border-radius:999px;background:color-mix(in oklab,var(--text) 10%,transparent);color:var(--text);font-size:var(--type-caption2);font-weight:700;line-height:20px}.app-root.web .fc-links{display:flex;flex-direction:column;gap:8px}.app-root.web .fc-link-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}.app-root.web .fc-link-label{flex:0 0 90px;font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .fc-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:14px;border:1px solid var(--border-strong);background:transparent;color:var(--text);font:inherit;font-family:var(--font-mono);font-size:var(--type-subhead);font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .fc-chip:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}.app-root.web .fc-actions{display:flex;flex-direction:column;gap:12px;padding:14px 16px}.app-root.web .fc-action{display:flex;flex-direction:column;gap:8px}.app-root.web .fc-action-why{font-size:var(--type-callout);color:var(--text-soft)}.app-root.web .fc-action-do{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.app-root.web .fc-action-do .dw-field{width:auto;flex:1 1 130px;min-width:0;height:var(--control-h-sm,36px);padding-top:0;padding-bottom:0}.app-root.web .fc-pre{margin:0;padding:12px 14px;max-height:360px;overflow:auto;white-space:pre-wrap;border-radius:var(--radius-lg);background:var(--neutral-card);font-size:var(--type-footnote)}.app-root.web .fc-rounds{list-style:none;margin:0;padding:0}.app-root.web .fc-rounds>li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:10px 0}.app-root.web .fc-rounds>li+li{border-top:1px solid var(--border)}.app-root.web .fc-round-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--neutral-card);font-size:var(--type-caption);font-weight:700}.app-root.web .fc-rounds>li.is-done .fc-round-n{background:var(--ok-card)}.app-root.web .fc-round-body{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:var(--type-callout)}.app-root.web .fc-round-body ul{margin:0;padding-left:1.1rem;color:var(--text-soft);font-size:var(--type-subhead)}.app-root.web .fc-hero{display:flex;align-items:flex-start;gap:var(--space-3);padding:16px 18px}.app-root.web .fc-hero-ico{display:grid;place-items:center;flex-shrink:0;margin-top:2px;color:var(--text-soft)}.app-root.web .fc-hero-ico svg{width:18px;height:18px}.app-root.web .fc-hero-text{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:var(--type-callout);line-height:1.45}.app-root.web .fc-hero-text strong{font-size:var(--type-body)}.app-root.web .fc-facts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.app-root.web .fc-meter{height:8px;border-radius:4px;background:color-mix(in oklab,var(--text) 10%,transparent);overflow:hidden}.app-root.web .fc-meter>span{display:block;height:100%;border-radius:4px;background:var(--accent);transition:width .5s var(--motion-ease)}.app-root.web .fc-meter.is-wait>span{background:var(--wait)}.app-root.web .fc-meter.is-bad>span{background:var(--red)}.app-root.web .fc-list{list-style:none;margin:0;padding:0}.app-root.web .fc-row{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:var(--type-callout)}.app-root.web .fc-row+.fc-row{border-top:1px solid var(--border)}.app-root.web .fc-row-end{margin-left:auto;font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .fc-timeline{list-style:none;margin:0;padding:0}.app-root.web .fc-event{position:relative;display:grid;grid-template-columns:42px 12px minmax(0,1fr);gap:10px;padding-bottom:18px}.app-root.web .fc-event:last-child{padding-bottom:0}.app-root.web .fc-event:before{content:"";position:absolute;left:57px;top:16px;bottom:-2px;width:2px;background:var(--border-strong)}.app-root.web .fc-event:last-child:before{display:none}.app-root.web .fc-event-at{padding-top:1px;font-family:var(--font-mono);font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .fc-event-dot{width:12px;height:12px;margin-top:3px;border-radius:50%;background:var(--bg-soft);border:2.5px solid var(--accent);position:relative;z-index:1}.app-root.web .fc-event-body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:var(--type-callout);line-height:1.45}.app-root.web .fc-writes{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .fc-write{display:flex;flex-direction:column;gap:10px;padding:14px 16px}.app-root.web .fc-write.is-pending,.app-root.web .fc-write.is-held{background:var(--brand-card)}.app-root.web .fc-write.is-applied,.app-root.web .fc-write.is-confirmed{background:var(--ok-card)}.app-root.web .fc-write-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.app-root.web .fc-write-sum{margin:0;font-size:var(--type-body);font-weight:600}.app-root.web .fc-write-why{font-weight:400;color:var(--text-soft)}.app-root.web .fc-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.app-root.web .fc-items li{display:flex;align-items:baseline;gap:8px;font-size:var(--type-callout)}.app-root.web .fc-items li.is-bad{color:var(--red)}.app-root.web .fc-item-kind{flex-shrink:0;padding:0 8px;border-radius:10px;background:color-mix(in oklab,var(--text) 9%,transparent);font-size:var(--type-caption2);font-weight:700;line-height:18px}.app-root.web .fc-item-text{min-width:0;overflow-wrap:anywhere}.app-root.web .fc-write-foot{display:flex;flex-wrap:wrap;gap:8px}.app-root.web .fc-labelbox{display:flex;flex-direction:column;gap:2px}.app-root.web .fc-hint{margin:0;font-size:var(--type-subhead);color:var(--muted);line-height:1.4}.app-root.web .fc-action+.fc-action{padding-top:12px;border-top:1px solid color-mix(in oklab,var(--text) 10%,transparent)}.app-root.web .dw-menu{position:relative;display:inline-flex}.app-root.web .dw-menu-btn{min-width:36px;padding:0 10px;font-size:1.1rem;line-height:1}.app-root.web .dw-menu-list{position:fixed;z-index:60;min-width:220px;display:flex;flex-direction:column;padding:6px;border-radius:var(--radius-xl);border:1px solid var(--border-strong);background:var(--bg-soft);box-shadow:0 8px 24px #0f172a1f}.app-root.web .dw-menu-item{display:block;width:100%;padding:9px 12px;border:0;border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;font-size:var(--type-callout);text-align:left;cursor:pointer}.app-root.web .dw-menu-item:hover:not(:disabled),.app-root.web .dw-menu-item:focus-visible{background:color-mix(in oklab,var(--text) 7%,transparent);outline:none}.app-root.web .dw-menu-item.is-danger{color:var(--red)}.app-root.web .dw-menu-item:disabled{opacity:.5;cursor:default}.app-root.web .fc-fold-btn{align-self:flex-start;padding:4px 0;border:0;background:transparent;color:var(--accent-strong,var(--accent));font:inherit;font-size:var(--type-subhead);font-weight:600;cursor:pointer}.app-root.web .fc-fold-btn:after{content:" ▸";font-size:.8em}.app-root.web .fc-fold-btn[aria-expanded=true]:after{content:" ▾"}.app-root.web .fc-fold-btn:hover{text-decoration:underline}.app-root.web .fc-fold{border-top:1px solid var(--border);padding-top:var(--space-3)}.app-root.web .fc-fold>summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);cursor:pointer;list-style:none;font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .fc-fold>summary::-webkit-details-marker{display:none}.app-root.web .fc-fold>summary:before{content:"▸";margin-right:6px;font-size:.8em}.app-root.web .fc-fold[open]>summary:before{content:"▾"}.app-root.web .fc-fold>summary>span:first-child{margin-right:auto}.app-root.web .fc-fold-state{font-weight:600}.app-root.web .fc-fold-state.is-ok{color:var(--tone-green-fill)}.app-root.web .fc-fold-state.is-bad{color:var(--red)}.app-root.web .fc-fold>.fc-sec{margin-top:var(--space-4)}.app-root.web .dw-flowtop--solo{grid-template-columns:minmax(0,1fr)}.app-root.web .dw-code{border:1px solid var(--border-strong);border-radius:var(--radius-lg);overflow:hidden;background:var(--neutral-card);margin:6px 0}.app-root.web .dw-code-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:4px 8px 4px 12px;border-bottom:1px solid var(--border)}.app-root.web .dw-code-lang{font-family:var(--font-mono);font-size:var(--type-caption);color:var(--text-soft)}.app-root.web .dw-code-pre{margin:0;padding:12px 14px;overflow:auto;font-family:var(--font-mono);font-size:13px;line-height:1.6;-moz-tab-size:2;tab-size:2;white-space:pre}.app-root.web .dw-code-pre code{font:inherit;background:none;padding:0}.app-root.web .hljs-comment,.app-root.web .hljs-quote{color:var(--muted);font-style:italic}.app-root.web .hljs-keyword,.app-root.web .hljs-selector-tag,.app-root.web .hljs-built_in,.app-root.web .hljs-doctag{color:var(--tone-purple-fill);font-weight:600}.app-root.web .hljs-string,.app-root.web .hljs-regexp,.app-root.web .hljs-addition{color:var(--tone-green-fill)}.app-root.web .hljs-number,.app-root.web .hljs-literal,.app-root.web .hljs-symbol,.app-root.web .hljs-bullet{color:var(--tone-orange-fill)}.app-root.web .hljs-title,.app-root.web .hljs-function,.app-root.web .hljs-section,.app-root.web .hljs-name{color:var(--accent-strong,var(--accent));font-weight:600}.app-root.web .hljs-attr,.app-root.web .hljs-attribute,.app-root.web .hljs-variable,.app-root.web .hljs-property,.app-root.web .hljs-params{color:var(--text)}.app-root.web .hljs-type,.app-root.web .hljs-class .hljs-title,.app-root.web .hljs-tag{color:var(--tone-blue-fill)}.app-root.web .hljs-meta,.app-root.web .hljs-deletion{color:var(--tone-red-fill)}.app-root.web .dw-mm-wrap{display:flex;flex-direction:column;gap:var(--space-3);margin:6px 0}.app-root.web .dw-mm-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.app-root.web .dw-mm-hint{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-mm-tools{display:inline-flex;align-items:center;gap:6px}.app-root.web .dw-mm-zoom{min-width:3.2em;text-align:center;font-size:var(--type-subhead);font-variant-numeric:tabular-nums;color:var(--text-soft)}.app-root.web .dw-mm-frame{overflow:auto;max-height:calc(94vh - 230px);min-height:200px;padding:16px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-soft);cursor:grab;touch-action:pan-y}.app-root.web .dw-mm-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.app-root.web .dw-mm-host{margin:0 auto}.app-root.web .dw-mm-host svg{display:block;width:100%;height:auto;max-width:none!important}.app-root.web .dw-mm-loading{height:200px}.app-root.web .dw-mm .node,.app-root.web .dw-mm .cluster,.app-root.web .dw-mm .actor{animation:dw-mm-fade .45s var(--motion-ease) backwards;animation-delay:calc(var(--i,0) * 45ms);transition:opacity .2s ease}.app-root.web .dw-mm .edgeLabel,.app-root.web .dw-mm .messageText{animation:dw-mm-fade .4s ease backwards;animation-delay:calc(var(--i,0) * 45ms + .5s)}.app-root.web .dw-mm-edge{transition:opacity .2s ease,stroke-width .2s ease}.app-root.web .dw-mm-edge.is-drawing{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:dw-mm-draw .7s var(--motion-ease) forwards;animation-delay:calc(var(--i,0) * 55ms + .25s)}.app-root.web .dw-mm.has-hot .node:not(.is-hot),.app-root.web .dw-mm.has-hot .cluster{opacity:.25}.app-root.web .dw-mm.has-hot .dw-mm-edge:not(.is-hot){opacity:.12}.app-root.web .dw-mm-edge.is-hot{stroke-width:3px;stroke-dasharray:8 6;animation:dw-mm-flow .8s linear infinite}@keyframes dw-mm-fade{0%{opacity:0}}@keyframes dw-mm-draw{to{stroke-dashoffset:0}}@keyframes dw-mm-flow{to{stroke-dashoffset:-14}}.app-root.web .np-stats{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.app-root.web .np-stat{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:11px;font-size:var(--type-caption);line-height:1;white-space:nowrap}.app-root.web .np-stat b{font-weight:700;font-variant-numeric:tabular-nums}.app-root.web .np-stat-l{color:var(--text-soft)}.app-root.web .np-stat.is-time{background:color-mix(in oklab,#48b02c 15%,transparent)}.app-root.web .np-stat.is-time b{color:var(--on-green-tint)}.app-root.web .np-stat.is-calls{background:color-mix(in oklab,var(--accent) 13%,transparent)}.app-root.web .np-stat.is-calls b{color:var(--on-blue-tint)}.app-root.web .np-stat.is-tokens{background:color-mix(in oklab,var(--purple) 13%,transparent)}.app-root.web .np-stat.is-tokens b{color:var(--on-purple-tint)}.app-root.web .np-stat.is-cost{background:color-mix(in oklab,#f36f21 15%,transparent)}.app-root.web .np-stat.is-cost b{color:var(--on-amber-tint)}.app-root.web .np-stat-note{flex-basis:100%;font-size:var(--type-subhead);color:var(--muted)}.app-root.web .fc-fold-btn{justify-self:start}.app-root.web .np-step{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:2px 6px;margin:0 -6px;border-radius:6px}.app-root.web .np-step-ico{flex:0 0 14px;text-align:center;font-weight:700}.app-root.web .np-step.is-ok .np-step-ico{color:var(--tone-green-fill)}.app-root.web .np-step.is-failed{background:color-mix(in oklab,var(--tone-red-fill) 11%,transparent)}.app-root.web .np-step.is-failed .np-step-ico{color:var(--tone-red-fill)}.app-root.web .np-step.is-denied{background:color-mix(in oklab,#f36f21 12%,transparent)}.app-root.web .np-step.is-denied .np-step-ico{color:var(--on-amber-tint)}.app-root.web .np-step.is-run .np-step-ico{color:var(--accent)}.app-root.web .np-step-code{padding:0 7px;border-radius:9px;background:color-mix(in oklab,var(--text) 9%,transparent);font-family:var(--font-mono);font-size:var(--type-caption);line-height:18px;color:var(--text-soft)}.app-root.web .np-step.is-failed .np-step-code{background:color-mix(in oklab,var(--tone-red-fill) 16%,transparent);color:var(--on-red-tint)}.app-root.web .np-stat.is-bad{background:color-mix(in oklab,var(--tone-red-fill) 14%,transparent)}.app-root.web .np-stat.is-bad b{color:var(--on-red-tint)}.app-root.web .fc-tickets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.app-root.web .fc-ticket{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .fc-ticket:hover:not(:disabled){border-color:var(--accent);background:color-mix(in oklab,var(--accent) 6%,transparent)}.app-root.web .fc-ticket:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web .fc-ticket-top{display:flex;align-items:center;gap:8px}.app-root.web .fc-ticket-state{margin-left:auto;font-size:var(--type-caption);font-weight:600;color:var(--text-soft)}.app-root.web .fc-ticket-title{font-size:var(--type-callout);font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-root.web .fc-ticket-err{font-size:var(--type-subhead);color:var(--red)}.app-root.web .fc-ticket-meta{display:flex;align-items:center;gap:8px;min-width:0}.app-root.web .fc-ticket-who{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .tk-modal{width:min(1180px,calc(100vw - 2rem));height:min(90vh,980px);max-height:none}.app-root.web .tk-head{padding:18px var(--space-6) 14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.app-root.web .tk-head-top{display:flex;align-items:center;gap:10px}.app-root.web .tk-close{margin-left:auto}.app-root.web .tk-title{margin:0;font-size:var(--type-title3);font-weight:700;line-height:1.3}.app-root.web .tk-sub{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:var(--type-callout)}.app-root.web .tk-none{color:var(--muted)}.app-root.web .tk-person{display:inline-flex;align-items:center;gap:7px}.app-root.web .tk-av{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--neutral-card);font-size:11px;font-weight:700;color:var(--text)}.app-root.web .tk-body{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--space-6);padding:var(--space-5) var(--space-6);align-items:start}.app-root.web .tk-body>.dw-banner,.app-root.web .tk-body>.dw-note{grid-column:1 / -1}.app-root.web .tk-main{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.app-root.web .tk-sec{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .tk-h{margin:0;font-size:var(--type-subhead);font-weight:700;color:var(--text-soft)}.app-root.web .tk-side{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);background:var(--neutral-card)}.app-root.web .tk-facts{margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px}.app-root.web .tk-facts dt{margin-top:10px;font-size:var(--type-caption);font-weight:600;color:var(--text-soft)}.app-root.web .tk-facts dd{margin:0;font-size:var(--type-callout);overflow-wrap:anywhere}.app-root.web .tk-tags{display:flex;flex-wrap:wrap;gap:6px}.app-root.web .tk-when{color:var(--text-soft)}.app-root.web .tk-comments{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.app-root.web .tk-comments>li{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-lg)}.app-root.web .tk-comment-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:6px;font-size:var(--type-subhead);font-weight:600}.app-root.web .tk-comment-head time{font-weight:400;color:var(--text-soft)}.app-root.web .tk-rich{font-size:var(--type-callout);line-height:1.6;overflow-wrap:anywhere}.app-root.web .tk-rich>:first-child{margin-top:0}.app-root.web .tk-rich p,.app-root.web .tk-rich ul,.app-root.web .tk-rich ol,.app-root.web .tk-rich blockquote,.app-root.web .tk-rich pre,.app-root.web .tk-rich table{margin:0 0 10px}.app-root.web .tk-rich ul,.app-root.web .tk-rich ol{padding-left:1.4rem}.app-root.web .tk-rich h1,.app-root.web .tk-rich h2,.app-root.web .tk-rich h3,.app-root.web .tk-rich h4{margin:14px 0 6px;font-size:var(--type-body);font-weight:700}.app-root.web .tk-rich a{color:var(--accent-strong,var(--accent));text-decoration:underline}.app-root.web .tk-rich code,.app-root.web .tk-rich pre{font-family:var(--font-mono);font-size:.92em;background:var(--neutral-card);border-radius:6px}.app-root.web .tk-rich code{padding:1px 5px}.app-root.web .tk-rich pre{padding:10px 12px;overflow:auto;white-space:pre-wrap}.app-root.web .tk-rich blockquote{padding:2px 12px;border-left:3px solid var(--border-strong);color:var(--text-soft)}.app-root.web .tk-rich table{border-collapse:collapse;width:100%}.app-root.web .tk-rich th,.app-root.web .tk-rich td{border:1px solid var(--border);padding:5px 8px;text-align:left;vertical-align:top}.app-root.web .tk-rich th{background:var(--neutral-card)}.app-root.web .tk-img{display:inline-block;padding:1px 8px;border-radius:8px;background:var(--neutral-card);color:var(--text-soft);font-size:var(--type-subhead)}@media (max-width:900px){.app-root.web .tk-body{grid-template-columns:minmax(0,1fr)}.app-root.web .tk-side{order:-1}}.app-root.web .av{display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;font-weight:700;color:var(--text)}.app-root.web .av--brand{background:var(--brand-card)}.app-root.web .av--ok{background:var(--ok-card)}.app-root.web .av--run{background:var(--run-card)}.app-root.web .av--purple{background:var(--purple-card)}.app-root.web .av--teal{background:var(--teal-card)}.app-root.web .av--navy{background:var(--navy-card)}.app-root.web .dw-confirm-msg{margin:0;font-size:var(--type-callout);line-height:1.55}.app-root.web .dw-who{display:inline-flex;align-items:center;gap:10px;min-width:0}.app-root.web .dw-row-end{width:1%;white-space:nowrap;text-align:right}.app-root.web .dw-role-plain{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-invite-form{display:flex;flex-direction:column;gap:var(--space-4)}.app-root.web .dw-invite-form label{display:flex;flex-direction:column;gap:6px}.app-root.web .dw-flowtools .seg{max-width:100%;overflow-x:auto;scrollbar-width:none}.app-root.web .dw-proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-4);align-items:stretch}.app-root.web .dw-proj{display:flex}.app-root.web .dw-proj>.dw-tile{flex:1}.app-root.web .dw-proj-name{display:flex;flex-direction:column;gap:1px;min-width:0}.app-root.web .dw-proj-name b{font-size:var(--type-headline);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .dw-proj-name span{font-size:var(--type-subhead);font-weight:400;color:var(--text-soft)}.app-root.web .dw-proj-kv{margin:0;display:flex;flex-direction:column;gap:6px}.app-root.web .dw-proj-kv>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;align-items:baseline}.app-root.web .dw-proj-kv dt{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .dw-proj-kv dd{margin:0;overflow-wrap:anywhere}.app-root.web .dw-proj-admins{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.app-root.web .dw-admin-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px 0 4px;border-radius:14px;background:color-mix(in oklab,var(--bg-soft) 70%,transparent);font-size:var(--type-subhead)}.app-root.web .dw-admin-chip.is-off{opacity:.55;text-decoration:line-through}.app-root.web .dw-manage{display:flex;flex-direction:column;gap:var(--space-6)}.app-root.web .dw-manage-sec{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .dw-manage-h{margin:0;font-size:var(--type-callout);font-weight:700}.app-root.web .dw-admin-list{list-style:none;margin:0;padding:0}.app-root.web .dw-admin-list>li{display:flex;align-items:center;gap:var(--space-3);padding:10px 0}.app-root.web .dw-admin-list>li+li{border-top:1px solid var(--border)}.app-root.web .dw-admin-end{margin-left:auto;max-width:46%;text-align:right}.app-root.web .dw-admin-add{display:flex;gap:var(--space-3);align-items:center}.app-root.web .dw-admin-add .dw-field{flex:1 1 auto;min-width:0}.app-root.web .ib-group{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5)}.app-root.web .ib-group-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.app-root.web .ib-group-head h2{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .ib-count{font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .ib-hint{font-size:var(--type-subhead);color:var(--muted)}.app-root.web .ib-group--stuck .ib-group-head h2{color:var(--red)}.app-root.web .ib-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.app-root.web .ib-row{display:grid;grid-template-columns:132px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .ib-row:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,transparent)}.app-root.web .ib-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web .ib-group--stuck .ib-row{background:color-mix(in oklab,var(--tone-red-fill) 5%,transparent)}.app-root.web .ib-main{display:flex;flex-direction:column;gap:2px;min-width:0}.app-root.web .ib-title{font-size:var(--type-callout);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .ib-sub{font-size:var(--type-subhead);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .ib-go{font-size:1.3rem;line-height:1;color:var(--muted)}@media (max-width:700px){.app-root.web .ib-row{grid-template-columns:minmax(0,1fr) auto}.app-root.web .ib-row>.dw-tag{grid-column:1 / -1;justify-self:start}.app-root.web .ib-row>.dw-type{display:none}.app-root.web .ib-title,.app-root.web .ib-sub{white-space:normal}}.app-root.web .ib-row>.dw-tag{justify-self:start}.app-root.web .pj-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;padding:0;margin:0;background:none;border:0}.app-root.web .pj-form label{display:flex;flex-direction:column;gap:6px;min-width:0}.app-root.web .pj-form .pj-wide{grid-column:1 / -1}.app-root.web .pj-create{display:flex;flex-direction:column;gap:var(--space-6)}.app-root.web .pj-sec{display:flex;flex-direction:column;gap:var(--space-3)}.app-root.web .pj-hint{margin:2px 0 0;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .pj-preview{margin:0;padding:8px 12px;border-radius:var(--radius-lg);background:var(--ok-card);font-size:var(--type-callout);font-weight:600}@media (max-width:640px){.app-root.web .pj-form{grid-template-columns:minmax(0,1fr)}}.app-root.web .dw-cfg-seat{font-size:var(--type-subhead);font-weight:600;color:var(--text-soft)}.app-root.web .ib-detail{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--space-5);align-items:start}.app-root.web .ib-detail.is-single{grid-template-columns:minmax(0,760px)}.app-root.web .ib-ask{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:var(--radius-lg);background:var(--neutral-card);border:0}.app-root.web .ib-ask--stuck{background:var(--bad-card)}.app-root.web .ib-ask--answer{background:var(--run-card)}.app-root.web .ib-ask--decide{background:var(--brand-card)}.app-root.web .ib-ask-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.app-root.web .ib-ask-meta .dw-tag{background:color-mix(in oklab,var(--bg) 60%,transparent);border-color:transparent}.app-root.web .ib-node{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:13px;background:color-mix(in oklab,var(--bg) 60%,transparent);font-family:var(--font-mono);font-size:var(--type-caption);font-weight:600}.app-root.web .ib-ask-lead{margin:0;font-size:16px;line-height:24px;font-weight:600;overflow-wrap:anywhere}.app-root.web .ib-ask-text{margin:0;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.app-root.web .ib-ask-help{margin:0;font-size:14px;line-height:21px;color:var(--text-soft)}.app-root.web .ib-ask .dw-detail{background:color-mix(in oklab,var(--bg) 55%,transparent);border-color:transparent}.app-root.web .ib-ask .dw-deploy-facts{margin:0}.app-root.web .ib-act{display:flex;flex-direction:column;gap:12px;min-width:0}.app-root.web .ib-act .dw-edit{min-height:120px;width:100%}.app-root.web .ib-act .dw-line{margin-top:4px}@media (max-width:1023px){.app-root.web .ib-detail{grid-template-columns:minmax(0,1fr)}}.app-root.web .tk-head{gap:10px;padding:18px var(--space-6) 8px}.app-root.web .tk-ico{width:22px;height:22px;border-radius:4px;display:grid;place-items:center;color:#fff}.app-root.web .tk-ico svg{width:16px;height:16px}.app-root.web .tk-kind{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft)}.app-root.web .tk-title{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.01em}.app-root.web .tk-sub{gap:14px;color:var(--text-soft);font-size:var(--type-subhead)}.app-root.web .tk-sub .tk-person{color:var(--text);font-weight:500}.app-root.web .tk-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;background:var(--neutral-card);color:var(--text);font-size:12px;font-weight:500}.app-root.web .tk-fields{margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.app-root.web .tk-field{display:flex;flex-direction:column;gap:2px;padding:6px 0 12px;min-width:0}.app-root.web .tk-field dt{margin:0;font-size:12px;font-weight:500;color:var(--text-soft)}.app-root.web .tk-field dd{margin:0;font-size:var(--type-callout);overflow-wrap:anywhere}.app-root.web .tk-state{display:inline-flex;align-items:center;gap:7px;font-weight:600}.app-root.web .tk-state i{width:10px;height:10px;border-radius:50%;background:#b2b2b2}.app-root.web .tk-state--ok i{background:#393}.app-root.web .tk-state--info i{background:#007acc}.app-root.web .tk-state--bad i{background:#cc293d}.app-root.web .tk-body{gap:var(--space-6);padding:var(--space-4) var(--space-6) var(--space-5)}.app-root.web .tk-main,.app-root.web .tk-side{gap:var(--space-4)}.app-root.web .tk-side{padding:0;border-radius:0;background:none}.app-root.web .tk-sec{gap:0}.app-root.web .tk-sec .tk-h{margin:0;padding:0 0 6px;border-bottom:1px solid var(--border);font-size:var(--type-callout);font-weight:600;color:var(--text)}.app-root.web .tk-sec-body,.app-root.web .tk-sec>.tk-facts{padding:10px 0 0}.app-root.web .tk-facts{gap:0}.app-root.web .tk-facts .tk-field{padding:6px 0}.app-root.web .tk-comments{gap:var(--space-4)}.app-root.web .tk-comments>li{display:flex;gap:10px;padding:0;border:0;border-radius:0}.app-root.web .tk-av--lg{width:30px;height:30px;flex:none;font-size:13px}.app-root.web .tk-comment{min-width:0;flex:1}.app-root.web .tk-comment-head{justify-content:flex-start;gap:10px;margin-bottom:4px}.app-root.web .tk-comment-head strong{font-weight:600}@media (max-width:640px){.app-root.web .tk-fields{display:flex;flex-wrap:wrap;gap:0 var(--space-5)}.app-root.web .tk-fields .tk-field{padding:4px 0 8px}.app-root.web .tk-title{font-size:20px;line-height:28px}.app-root.web .tk-side{order:0}}.app-root.web .dw-perm{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px 0 6px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-soft);font-size:12px;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.app-root.web .dw-perm:hover:not(:disabled){border-color:var(--navy)}.app-root.web .dw-perm.on{background:var(--ok-card);border-color:transparent;color:var(--pill-ok-ink)}.app-root.web .dw-perm:disabled{cursor:default;opacity:.75}.app-root.web .dw-perm-mark{width:14px;height:14px;border-radius:4px;border:1.5px solid currentColor;display:grid;place-items:center;font-size:10px;line-height:1}.app-root.web .dw-perm.on .dw-perm-mark{background:var(--pill-ok-ink);border-color:var(--pill-ok-ink);color:var(--ok-card)}.app-root.web .dw-mark{width:1em;height:1em;vertical-align:-.125em}.app-root.web .dw-perm-mark .dw-mark{width:10px;height:10px;vertical-align:0}.app-root.web .mb-pick{display:flex;flex-direction:column;gap:6px;max-height:232px;overflow-y:auto;padding:1px}.app-root.web .mb-acct{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.app-root.web .mb-acct:hover{border-color:var(--navy)}.app-root.web .mb-acct.on{border-color:var(--navy);background:var(--navy-card)}.app-root.web .mb-acct-text{display:flex;flex-direction:column;min-width:0;flex:1}.app-root.web .mb-acct-text b{font-size:var(--type-callout);font-weight:600;overflow:hidden;text-overflow:ellipsis}.app-root.web .mb-acct-mark{width:18px;display:grid;place-items:center;color:var(--navy)}.app-root.web .mb-none{display:flex;flex-direction:column;gap:4px;padding:var(--space-5) var(--space-6)}.app-root.web .mb-none strong{font-size:var(--type-callout);font-weight:600}.app-root.web .mb-none span{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .kpi-floor{margin-left:auto}.app-root.web .kpi-pass{display:inline-flex;align-items:center;gap:10px}.app-root.web .kpi-pass .dw-cov-bar{width:72px;flex:none}.app-root.web .kpi-num{text-align:right;font-variant-numeric:tabular-nums}@media (max-width:759px){.app-root.web .kpi-floor{margin-left:0}}.app-root.web .kpi-pass .dw-cov-bar.is-ok span{background:var(--ok)}@media (max-width:640px){.app-root.web .dw-flowtools>.seg{max-width:100%;overflow-x:auto}}.app-root.web .tl-day{margin-top:var(--space-5)}.app-root.web .tl-day-head{display:flex;align-items:baseline;gap:10px;margin:0 0 6px;font-size:var(--type-callout);font-weight:700;color:var(--text)}.app-root.web .tl-day-n{font-size:var(--type-subhead);font-weight:400;color:var(--text-soft)}.app-root.web .tl-list{list-style:none;margin:0;padding:0}.app-root.web .tl-row{display:grid;grid-template-columns:48px 78px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:10px 0;border-top:1px solid var(--border);font-size:var(--type-subhead)}.app-root.web .tl-time{font-variant-numeric:tabular-nums;color:var(--text-soft)}.app-root.web .tl-row .dw-tag{justify-self:start}.app-root.web .tl-text{min-width:0;line-height:1.5;overflow-wrap:anywhere}.app-root.web .tl-ticket{padding:2px 0;border:0;background:none;font:inherit;font-weight:600;font-variant-numeric:tabular-nums;color:var(--navy);cursor:pointer;white-space:nowrap}.app-root.web .tl-ticket:hover{text-decoration:underline;text-underline-offset:3px}.app-root.web .tl-ticket:focus-visible{outline:2px solid var(--navy);outline-offset:2px;border-radius:4px}.app-root.web .tl-row .dw-tag{font-family:inherit}@media (max-width:640px){.app-root.web .tl-ticket{padding:10px 0 10px 12px;margin:-10px 0}}@media (max-width:640px){.app-root.web .tl-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"tag time tk" "text text text";gap:6px 10px}.app-root.web .tl-row .dw-tag{grid-area:tag}.app-root.web .tl-time{grid-area:time}.app-root.web .tl-ticket{grid-area:tk}.app-root.web .tl-text{grid-area:text}}.app-root.web .tl-day+.btn{margin-top:var(--space-4)}.app-root.web .sh-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:var(--space-5)}.app-root.web .sh-stat{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:var(--radius-lg);background:var(--neutral-card)}.app-root.web .sh-stat--share{background:var(--run-card)}.app-root.web .sh-stat--ok{background:var(--ok-card)}.app-root.web .sh-stat--bad{background:var(--bad-card)}.app-root.web .sh-stat--wait{background:var(--brand-card)}.app-root.web .sh-n{font-family:var(--font-display);font-size:30px;line-height:36px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy)}.app-root.web .sh-l{font-size:var(--type-subhead);color:var(--text-soft)}@media (max-width:900px){.app-root.web .sh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.app-root.web .sh-stats>.sh-stat:first-child{grid-column:1 / -1}}.app-root.web .pj-sec>.dw-label:first-child{font-size:var(--type-callout);font-weight:600;color:var(--text)}.app-root.web .au-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);width:min(880px,100%);min-height:480px;border-radius:var(--radius-xl);background:var(--bg-soft);border:1px solid var(--border);overflow:hidden}.app-root.web .au-brand{display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:32px;background:var(--navy-card)}.app-root.web .au-logo{display:flex;align-items:center;gap:12px}.app-root.web .au-logo img{width:36px;height:36px}.app-root.web .au-logo>span{display:flex;flex-direction:column;line-height:1.2}.app-root.web .au-logo strong{font-size:var(--type-callout);font-weight:700;letter-spacing:.02em;color:var(--navy)}.app-root.web .au-logo span span{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .au-brand-foot{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.app-root.web .au-brand-foot p{margin:0;font-size:var(--type-subhead);line-height:1.55;color:var(--text-soft)}.app-root.web .au-form{position:relative;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:40px 40px 32px}.app-root.web .au-form h1{margin:0;font-size:1.5rem;line-height:1.25}.app-root.web .au-form>p{margin:0;font-size:var(--type-callout);line-height:1.55;color:var(--text-soft)}.app-root.web .au-form form{display:flex;flex-direction:column}.app-root.web .au-form .dw-field{width:100%;height:40px}.app-root.web .au-lang{position:absolute;top:16px;right:16px;height:28px;min-width:34px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-soft);font-size:12px;font-weight:700;cursor:pointer}.app-root.web .au-lang:hover{border-color:var(--navy);color:var(--navy)}.app-root.web .au-pw{position:relative}.app-root.web .au-pw .dw-field{padding-right:64px}.app-root.web .au-pw-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);padding:4px 8px;border:0;border-radius:6px;background:transparent;color:var(--navy);font-size:13px;font-weight:600;cursor:pointer}.app-root.web .au-pw-toggle:hover{background:var(--navy-card)}.app-root.web .au-form form>.dw-banner{margin-top:14px}.app-root.web .au-submit{width:100%;height:40px;margin-top:18px!important;justify-content:center}.app-root.web .au-hint{margin:12px 0 0;font-size:var(--type-subhead);line-height:1.5;color:var(--text-soft)}@media (max-width:759px){.app-root.web .au-card{grid-template-columns:minmax(0,1fr);min-height:0}.app-root.web .au-brand{flex-direction:row;align-items:center;padding:16px 20px;gap:12px}.app-root.web .au-brand-foot p{display:none}.app-root.web .au-form{padding:28px 20px 24px}}@media (max-width:759px){.app-root.web .au-form h1{padding-right:40px}}.app-root.web .au-form a.btn{width:100%;height:40px;justify-content:center;text-decoration:none}.app-root.web .au-secondary{width:100%;margin-top:8px;justify-content:center}.app-root.web .ac-who{display:flex;align-items:center;gap:14px}.app-root.web .ac-who .pane-desc{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.app-root.web .ac-role{height:22px}.app-root.web .ac-more{display:none}.app-root.web.is-mobile .ac-more{display:block;margin-bottom:var(--space-5)}.app-root.web .ac-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--space-6);align-items:start}.app-root.web .ac-main,.app-root.web .ac-side{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.app-root.web .ac-seat{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:var(--radius-lg);background:var(--neutral-card)}.app-root.web .ac-seat--ok{background:var(--ok-card)}.app-root.web .ac-seat--out{background:var(--brand-card)}.app-root.web .ac-seat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-root.web .ac-seat-head h2{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .ac-seat-head .dw-tag{background:color-mix(in oklab,var(--bg) 60%,transparent);border-color:transparent}.app-root.web .ac-seat p{margin:0}.app-root.web .ac-seat-intro,.app-root.web .ac-seat-note{font-size:var(--type-subhead);line-height:1.55;color:var(--text-soft)}.app-root.web .ac-seat-state{font-size:var(--type-callout);line-height:1.55}.app-root.web .ac-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:4px 0 0}.app-root.web .ac-facts dt{font-size:12px;font-weight:500;color:var(--text-soft)}.app-root.web .ac-facts dd{margin:2px 0 0;font-size:var(--type-callout);font-weight:600;overflow-wrap:anywhere}.app-root.web .ac-seat-actions{margin-top:4px}.app-root.web .ac-codex{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .ac-codex strong{color:var(--text)}.app-root.web .ac-codex .dw-tag{margin-left:auto}.app-root.web .ac-card{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border:1px solid var(--border);border-radius:var(--radius-lg)}.app-root.web .ac-card h2{margin:0;font-size:var(--type-callout);font-weight:700}.app-root.web .ac-card>p{margin:0;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .ac-commit{padding:10px 12px;border-radius:var(--radius);background:var(--ok-card);font-size:var(--type-subhead)!important;color:var(--text)!important}@media (max-width:1023px){.app-root.web .ac-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.app-root.web .ac-facts{grid-template-columns:minmax(0,1fr)}}.app-root.web .cfg-nav{margin-bottom:var(--space-4);max-width:100%;overflow-x:auto}.app-root.web .cfg-dwname{flex-direction:column;align-items:flex-start;gap:2px}.app-root.web .cfg-role{font-size:var(--type-subhead);font-weight:400!important;color:var(--text-soft)}.app-root.web .dw-cfg-row.is-unset .dw-key{opacity:.65}.app-root.web .dw-sec>.dw-banner{margin-bottom:var(--space-3)}.app-root.web .fd{position:relative;display:flex;flex-direction:column;gap:2px;justify-content:center;min-height:76px;padding:14px 18px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);background:transparent;transition:border-color .12s ease,background .12s ease}.app-root.web .fd:hover,.app-root.web .fd.is-over{border-color:var(--navy);background:var(--navy-card)}.app-root.web .fd.has-file{border-style:solid;border-color:var(--navy);background:var(--navy-card)}.app-root.web .fd-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.app-root.web .fd-main{font-size:var(--type-callout);font-weight:600;overflow-wrap:anywhere}.app-root.web .fd-sub{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .lib-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:var(--space-5);align-items:start;margin-bottom:var(--space-5)}.app-root.web .lib-usage{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border-radius:var(--radius-lg);background:var(--neutral-card)}.app-root.web .lib-usage p{margin:0}.app-root.web .lib-usage-n{display:flex;align-items:baseline;gap:8px}.app-root.web .lib-usage-n strong{font-family:var(--font-display);font-size:28px;line-height:34px;color:var(--navy)}.app-root.web .lib-usage-n span{color:var(--text-soft)}.app-root.web .lib-add{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.app-root.web .lib-add .fd{width:100%}.app-root.web .lib-file{display:inline-flex;align-items:center;gap:10px;min-width:0}.app-root.web .lib-ext{display:inline-grid;place-items:center;min-width:42px;height:24px;padding:0 6px;border-radius:6px;background:var(--neutral-card);color:var(--text-soft);font-size:11px;font-weight:700;letter-spacing:.04em}@media (max-width:820px){.app-root.web .lib-top{grid-template-columns:minmax(0,1fr)}}.app-root.web .au-brand{position:relative;overflow:hidden;isolation:isolate}.app-root.web .au-art{position:absolute;z-index:-1;color:var(--navy);opacity:.1;pointer-events:none}.app-root.web .au-art .dw-art-ico{display:block;width:100%;height:100%;stroke-width:1}.app-root.web .au-art--flow{width:320px;height:320px;right:-70px;bottom:-60px}.app-root.web .au-art--code{width:150px;height:150px;right:34px;top:36px;transform:rotate(-8deg)}.app-root.web .au-art--story{width:130px;height:130px;left:-26px;top:46%;transform:rotate(10deg)}.app-root.web[data-theme=dark] .au-art{color:#9ec3ff;opacity:.09}@media (max-width:759px){.app-root.web .au-art--flow{width:120px;height:120px;right:-20px;bottom:-30px}.app-root.web .au-art--code,.app-root.web .au-art--story{display:none}}.app-root.web .ac-seat,.app-root.web .ac-codex{position:relative;overflow:hidden;isolation:isolate}.app-root.web .ac-art{position:absolute;z-index:-1;right:-24px;bottom:-34px;width:200px;height:200px;color:var(--text);opacity:.07;pointer-events:none}.app-root.web .ac-art svg{display:block;width:100%;height:100%}.app-root.web .ac-seat--ok .ac-art{color:var(--ok)}.app-root.web .ac-seat--out .ac-art{color:var(--brand)}.app-root.web .ac-seat--ok .ac-art,.app-root.web .ac-seat--out .ac-art{opacity:.16}.app-root.web .ac-art--codex{right:92px;top:50%;bottom:auto;width:84px;height:84px;transform:translateY(-50%)}@media (max-width:640px){.app-root.web .ac-art{width:150px;height:150px}}.app-root.web .ac-card .seg{align-self:flex-start;width:fit-content;max-width:100%}.app-root.web .ac-prov{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid var(--border);font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .ac-prov-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.app-root.web .ac-prov-head strong{color:var(--text);font-size:var(--type-callout)}.app-root.web .ac-flows{display:flex;flex-direction:column;gap:10px}.app-root.web .ac-flows-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-root.web .ac-flows-head h2{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .ac-flows-head span{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .ac-flow-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.app-root.web .ac-flow{display:grid;grid-template-columns:84px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .ac-flow:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,transparent)}.app-root.web .ac-flow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web .ac-flow-main{display:flex;flex-direction:column;gap:2px;min-width:0}.app-root.web .ac-flow-title{font-size:var(--type-callout);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .ac-flow-sub{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .ac-flow-go{font-size:1.3rem;line-height:1;color:var(--muted)}.app-root.web .ac-flows-empty{margin:0;padding:14px 16px;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--type-subhead);line-height:1.55;color:var(--text-soft)}@media (max-width:640px){.app-root.web .ac-flow-title{white-space:normal}}.app-root.web .ac-flow>.dw-type{justify-self:start}@media (max-width:640px){.app-root.web .ac-flow{grid-template-columns:minmax(0,1fr) auto}.app-root.web .ac-flow>.dw-type{grid-column:1 / -1}}.app-root.web .np-term{--term-bg:#0e1621;--term-fg:#dbe4f0;--term-dim:#7d8aa0;--term-ok:#4ade80;--term-bad:#f87171;--term-warn:#fbbf24;margin:0;padding:10px 12px;list-style:none;border-radius:var(--radius-lg);background:var(--term-bg);color:var(--term-fg);font-family:var(--font-mono);font-size:13px;line-height:1.55}.app-root.web .np-term .np-step{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:8px;margin:0 -8px;padding:3px 8px;border-radius:6px}.app-root.web .np-term .np-step>b{color:#fff;font-weight:600}.app-root.web .np-term .np-time{flex:none;color:var(--term-dim);font-variant-numeric:tabular-nums}.app-root.web .np-term .np-step-ico{flex:0 0 14px}.app-root.web .np-term .np-step.is-ok .np-step-ico{color:var(--term-ok)}.app-root.web .np-term .np-step.is-failed{background:#f8717124}.app-root.web .np-term .np-step.is-failed .np-step-ico{color:var(--term-bad)}.app-root.web .np-term .np-step.is-denied{background:#fbbf2424}.app-root.web .np-term .np-step.is-denied .np-step-ico{color:var(--term-warn)}.app-root.web .np-term .np-step.is-run .np-step-ico{color:#7cb7ff}.app-root.web .np-cmd{flex:1 1 auto;min-width:0;margin:0;font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--term-fg)}.app-root.web .np-prompt{color:var(--term-ok);-webkit-user-select:none;user-select:none}.app-root.web .np-term .np-step-code{flex:none;background:#ffffff1a;color:var(--term-dim)}.app-root.web .np-term .np-step.is-failed .np-step-code{background:#f8717138;color:#fecaca}@media (max-width:640px){.app-root.web .np-term .np-step{flex-wrap:wrap}}.app-root.web .np-term .np-line{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.app-root.web .np-term .np-line>b{margin-right:6px}.app-root.web .np-term .np-step-code{margin-left:auto}.app-root.web .dw-cfg-row .dw-cfg-acct{justify-content:flex-end}.app-root.web .dw-cfg-row .dw-cfg-acct>.dw-tag,.app-root.web .dw-cfg-row .dw-cfg-acct>.dw-meta{order:-1;margin-right:auto}@media (max-width:640px){.app-root.web .dw-cfg-row .dw-cfg-acct{justify-content:flex-start}.app-root.web .dw-cfg-row .dw-cfg-acct>.dw-tag{margin-right:0}}.app-root.web .bd{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--space-6);align-items:start}.app-root.web .bd-main{min-width:0;display:flex;flex-direction:column;gap:12px}.app-root.web .bd-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-root.web .bd-head h2{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .bd-head span{font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .bd-read{display:flex;align-items:center;gap:12px}.app-root.web .bd-tools{flex-wrap:wrap;gap:10px}.app-root.web .bd-tools .dw-flowsearch{flex:1 1 220px;min-width:0;max-width:none}.app-root.web .bd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg)}.app-root.web .bd-list:empty{display:none}.app-root.web .bd-row{display:grid;grid-template-columns:14px 84px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:12px 14px 12px 8px;border-top:1px solid var(--rule,var(--border));background:transparent;transition:background .15s ease}.app-root.web .bd-row:first-child{border-top:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.app-root.web .bd-row:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.app-root.web .bd-list--onetype .bd-row{grid-template-columns:14px minmax(0,1fr) auto}.app-root.web .bd-row.is-draggable{cursor:grab;user-select:none;-webkit-user-select:none}.app-root.web .bd-row.is-draggable:hover{background:color-mix(in oklab,var(--navy) 5%,transparent)}.app-root.web .bd-row.is-dragging{opacity:.4}.app-root.web .bd-row--refused{background:var(--neutral-card)}.app-root.web .bd-row--refused .bd-title{color:var(--text-soft)}.app-root.web .bd-grip{color:var(--muted);font-size:12px;letter-spacing:-2px;-webkit-user-select:none;user-select:none;text-align:center}.app-root.web .bd-row>.dw-type{justify-self:start}.app-root.web .bd-main-text{display:flex;flex-direction:column;gap:3px;min-width:0}.app-root.web .bd-title{font-size:var(--type-callout);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.app-root.web .bd-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .bd-why{font-size:var(--type-subhead);color:var(--pill-bad-ink)}.app-root.web .bd-act{display:flex;justify-content:flex-end}.app-root.web .bd-drop{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--run-card);transition:border-color .12s ease,background .12s ease}.app-root.web .bd-drop>*{pointer-events:none}.app-root.web .bd-drop .dw-drop-art{flex:none;width:112px;height:auto;color:var(--navy)}.app-root.web .bd-drop-text{display:flex;flex-direction:column;gap:4px;min-width:0}.app-root.web .bd-drop .dw-drop-title{font-size:var(--type-callout);font-weight:600}.app-root.web .bd-drop .dw-drop-sub{font-size:13px;line-height:1.45}.app-root.web .bd-drop.is-armed{border-color:var(--navy)}.app-root.web .bd-drop.is-over{border-style:solid;border-color:var(--navy);background:var(--navy-card)}.app-root.web .bd-flows{display:flex;flex-direction:column;gap:6px}.app-root.web .bd-flows .dw-run{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-lg)}.app-root.web .bd-flows-empty{margin:0;padding:14px 16px;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--type-subhead);line-height:1.55;color:var(--text-soft)}.app-root.web .bd-main{grid-column:1;grid-row:1 / span 2}.app-root.web .bd-dropcell{grid-column:2;grid-row:1;position:sticky;top:0;z-index:2;display:flex;flex-direction:column;gap:10px;background:var(--bg-soft)}.app-root.web .bd-flowcell{grid-column:2;grid-row:2;display:flex;flex-direction:column;gap:12px}.app-root.web .bd{grid-template-rows:auto 1fr}@media (max-width:1099px){.app-root.web .bd{grid-template-columns:minmax(0,1fr);grid-template-rows:none;gap:var(--space-4)}.app-root.web .bd-dropcell{grid-column:1;grid-row:1;padding:8px 0}.app-root.web .bd-main{grid-column:1;grid-row:2}.app-root.web .bd-flowcell{grid-column:1;grid-row:3}.app-root.web .bd-drop{flex-direction:row;align-items:center;padding:10px 14px}.app-root.web .bd-drop .dw-drop-art,.app-root.web .bd-drop .dw-drop-sub{display:none}}@media (pointer:coarse){.app-root.web .bd-dropcell .bd-drop{display:none}}@media (max-width:640px){.app-root.web .bd-row,.app-root.web .bd-list--onetype .bd-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:12px}.app-root.web .bd-grip{display:none}.app-root.web .bd-row>.dw-type{grid-column:1 / -1}.app-root.web .bd-main-text{grid-column:1}.app-root.web .bd-act{grid-column:2;align-self:end}}.app-root.web .bd-drop{flex-direction:column;align-items:flex-start;gap:10px}.app-root.web .bd-drop .dw-drop-art{width:200px}.app-root.web .bd-flows .dw-run{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.app-root.web .bd-flows .dw-run .dw-type{white-space:nowrap}.app-root.web .bd-flows .dw-run-title{order:3;flex:1 1 100%;white-space:normal;font-weight:600}.app-root.web .bd-flows .dw-run-node{order:4}.app-root.web .bd-flows .dw-run .dw-prog{order:5;margin-left:auto;width:64px}body.bd-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none}body.bd-dragging *{cursor:grabbing!important}.bd-ghost{position:fixed;z-index:400;max-width:360px;padding:8px 12px;border:1px solid var(--navy);border-radius:var(--radius-lg);background:var(--bg-soft);color:var(--text);font-size:13px;font-weight:600;line-height:1.35;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.95}@media (min-width:1100px){.app-root.web .pane-body.bd-pane{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.app-root.web .bd-pane>.bd{flex:1 1 auto;min-height:0;align-items:stretch;grid-template-rows:auto minmax(0,1fr);padding-bottom:20px}.app-root.web .bd-main{min-height:0;overflow:hidden}.app-root.web .bd-dropcell{position:static}.app-root.web .bd-flowcell{min-height:0}.app-root.web .bd-list,.app-root.web .bd-flows{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;margin-right:-6px}}.app-root.web .hm-need{padding:var(--space-5) 0 var(--space-4)}.app-root.web .hm-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.app-root.web .hm-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:18px 20px;border:0;border-radius:var(--radius-lg);background:var(--neutral-card);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:filter .15s ease}.app-root.web .hm-stat:hover{filter:brightness(.97)}.app-root.web .hm-stat:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-root.web .hm-stat--stuck{background:var(--bad-card)}.app-root.web .hm-stat--answer{background:var(--run-card)}.app-root.web .hm-stat--decide{background:var(--brand-card)}.app-root.web .hm-stat.is-zero{background:var(--neutral-card)}.app-root.web .hm-stat-n{font-family:var(--font-display);font-size:40px;line-height:44px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy)}.app-root.web .hm-stat.is-zero .hm-stat-n{color:var(--muted)}.app-root.web .hm-stat-l{font-size:var(--type-callout);font-weight:600}.app-root.web .hm-stat-h{font-size:var(--type-subhead);line-height:1.45;color:var(--text-soft)}.app-root.web .hm-calm{margin:0;padding:18px 20px;border-radius:var(--radius-lg);background:var(--ok-card);font-size:var(--type-callout);line-height:1.55}.app-root.web .hm-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6);padding:var(--space-4) 0}.app-root.web .hm-cols--low{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);padding-bottom:var(--space-5)}.app-root.web .hm-cols--low.is-single{grid-template-columns:minmax(0,1fr)}.app-root.web .hm-col{display:flex;flex-direction:column;gap:10px;min-width:0}.app-root.web .hm-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.app-root.web .hm-head h2{margin:0;font-size:var(--type-headline);font-weight:700}.app-root.web .hm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.app-root.web .hm-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.app-root.web .hm-item:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,transparent)}.app-root.web .hm-item--stuck{background:color-mix(in oklab,var(--tone-red-fill) 5%,transparent)}.app-root.web .hm-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.app-root.web .hm-item-title{font-size:var(--type-callout);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .hm-item-sub{font-size:var(--type-subhead);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-root.web .hm-go{font-size:1.3rem;line-height:1;color:var(--muted)}.app-root.web .hm-more{align-self:flex-start}.app-root.web .hm-figures{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0;font-size:var(--type-subhead);color:var(--text-soft)}.app-root.web .hm-figures b{color:var(--text);font-variant-numeric:tabular-nums}.app-root.web .hm-empty{margin:0;padding:14px 16px;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--type-subhead);line-height:1.55;color:var(--text-soft)}.app-root.web .hm-server{display:flex;flex-direction:column;align-items:flex-start;gap:10px;align-self:start;padding:16px 18px;border-radius:var(--radius-lg);background:var(--ok-card)}.app-root.web .hm-server.is-bad{background:var(--brand-card)}.app-root.web .hm-server .hm-head{align-self:stretch}.app-root.web .hm-server p{margin:0;font-size:var(--type-callout)}.app-root.web .hm-server ul{margin:0;padding-left:18px;font-size:var(--type-callout);line-height:1.6}.app-root.web .hm-server .dw-tag{background:color-mix(in oklab,var(--bg) 60%,transparent);border-color:transparent}@media (max-width:900px){.app-root.web .hm-cols,.app-root.web .hm-cols--low,.app-root.web .hm-stats{grid-template-columns:minmax(0,1fr)}.app-root.web .hm-stat{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.app-root.web .hm-stat-h{flex-basis:100%}.app-root.web .hm-stat-n{font-size:32px;line-height:36px}}.app-root.web .hm-cols.is-single{grid-template-columns:minmax(0,1fr)}@media (max-width:640px){.app-root.web .hm-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.app-root.web .hm-stat{flex-direction:column;align-items:flex-start;padding:12px}.app-root.web .hm-stat-h{display:none}.app-root.web .hm-stat-l{font-size:var(--type-subhead)}}.app-root.web .btn:disabled,.app-root.web .btn-primary:disabled,.app-root.web .btn-secondary:disabled,.app-root.web .btn-ghost:disabled,.app-root.web .btn-tinted:disabled,.app-root.web .btn-danger-soft:disabled,.app-root.web .dw-set-foot .btn-primary:disabled{opacity:1;background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-soft);cursor:not-allowed}.app-root.web .dw-dot--run,.app-root.web .dw-dot--check{animation:dw-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.app-root.web .dw-dot--run,.app-root.web .dw-dot--check{animation:none}}.app-root.web .dw-crew{display:inline-flex;align-items:center;gap:2px;padding:1px;border-radius:999px;background:var(--neutral-card)}.app-root.web .dw-crew.is-crew{background:var(--purple-card)}.app-root.web .dw-crew-btn{width:22px;height:22px;border:0;border-radius:999px;background:transparent;color:inherit;font:inherit;line-height:1;cursor:pointer}.app-root.web .dw-crew-btn:disabled{opacity:.35;cursor:default}.app-root.web .dw-crew-btn:not(:disabled):hover{background:#78788c2e}.app-root.web .dw-crew-n{min-width:26px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}.app-root.web .np-parts{display:flex;flex-direction:column;gap:6px;margin-top:8px}.app-root.web .np-part-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.app-root.web .np-part{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:6px 10px;border-radius:10px;background:var(--neutral-card)}
