:root{--v2-paper: #f7f8fa;--v2-surface: #ffffff;--v2-surface-2: #f1f3f6;--v2-surface-3: #e9ecf0;--v2-hover: #eef0f3;--v2-ink: #0f1720;--v2-ink-2: #2b3540;--v2-muted: #5c6772;--v2-faint: #8a939d;--v2-line: #e3e6ea;--v2-line-strong: #cfd4da;--v2-brand: #12657b;--v2-brand-hover: #0e5063;--v2-brand-soft: #e2eef1;--v2-brand-wash: #f0f6f7;--v2-brand-ink: #0b3c49;--v2-selection: #e8ecf1;--v2-selection-ink: var(--v2-ink);--v2-focus: #2f86a1;--v2-ok: #1f7a4d;--v2-ok-soft: #e3f3ea;--v2-warn: #9a6a12;--v2-warn-soft: #fbf1d9;--v2-danger: #b4342a;--v2-danger-soft: #fbe7e4;--v2-info: #1f5f9a;--v2-info-soft: #e5eef8;--v2-ember: #c05621;--v2-ember-soft: #fbeee6;--v2-shadow-xs: 0 1px 1px rgb(15 23 32 / .04);--v2-shadow-sm: 0 1px 2px rgb(15 23 32 / .06), 0 1px 1px rgb(15 23 32 / .03);--v2-shadow: 0 2px 4px rgb(15 23 32 / .06), 0 10px 26px -14px rgb(15 23 32 / .18);--v2-shadow-pop: 0 4px 12px rgb(15 23 32 / .1), 0 24px 56px -24px rgb(15 23 32 / .3);--v2-font: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--v2-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--v2-fs-xs: 11px;--v2-fs-sm: 12.5px;--v2-fs: 13.5px;--v2-fs-md: 15px;--v2-fs-lg: 18px;--v2-fs-xl: 22px;--v2-fs-2xl: 26px;--v2-fs-num: 24px;--v2-r-sm: 6px;--v2-r: 10px;--v2-r-lg: 12px;--v2-r-full: 999px;--v2-sp-1: 4px;--v2-sp-2: 8px;--v2-sp-3: 12px;--v2-sp-4: 16px;--v2-sp-5: 20px;--v2-sp-6: 24px;--v2-sp-8: 32px;--v2-sp-10: 40px;--v2-sp-12: 48px;--v2-control-h: 32px;--v2-header-h: 52px;--v2-sidebar-w: 224px;--v2-content-max: 1440px;--v2-form-max: 720px;--v2-prose-max: 68ch}:root[data-v2-theme=dark]{--v2-paper: #0d1117;--v2-surface: #161c24;--v2-surface-2: #1c232c;--v2-surface-3: #242c36;--v2-hover: #222a34;--v2-ink: #e8edf2;--v2-ink-2: #c5ccd4;--v2-muted: #98a2ac;--v2-faint: #6d7781;--v2-line: #262e38;--v2-line-strong: #3a434e;--v2-brand: #4fb6d2;--v2-brand-hover: #72c8de;--v2-brand-soft: rgb(79 182 210 / .16);--v2-brand-wash: rgb(79 182 210 / .09);--v2-brand-ink: #a9dcea;--v2-selection: #232c37;--v2-selection-ink: var(--v2-ink);--v2-focus: #6ec4dc;--v2-ok: #5cc08a;--v2-ok-soft: rgb(92 192 138 / .16);--v2-warn: #d9a94e;--v2-warn-soft: rgb(217 169 78 / .16);--v2-danger: #e0776b;--v2-danger-soft: rgb(224 119 107 / .16);--v2-info: #6ea6e0;--v2-info-soft: rgb(110 166 224 / .16);--v2-ember: #e08a4f;--v2-ember-soft: rgb(224 138 79 / .16);--v2-shadow-xs: 0 1px 1px rgb(0 0 0 / .3);--v2-shadow-sm: 0 1px 2px rgb(0 0 0 / .4);--v2-shadow: 0 2px 4px rgb(0 0 0 / .4), 0 10px 28px -18px rgb(0 0 0 / .85);--v2-shadow-pop: 0 4px 12px rgb(0 0 0 / .5), 0 24px 60px -24px rgb(0 0 0 / .8)}:root,:root[data-v2-theme=dark]{--v2-petrol: var(--v2-brand);--v2-petrol-hover: var(--v2-brand-hover);--v2-petrol-soft: var(--v2-brand-soft);--v2-petrol-wash: var(--v2-brand-wash);--v2-petrol-900: var(--v2-brand-ink)}.v2{--paper: var(--v2-paper);--surface: var(--v2-surface);--ink: var(--v2-ink);--muted: var(--v2-muted);--line: var(--v2-line);--line-strong: var(--v2-line-strong);--petrol: var(--v2-brand);--petrol-soft: var(--v2-brand-soft);--petrol-wash: var(--v2-brand-wash);--petrol-900: var(--v2-brand-ink);--ember: var(--v2-ember);--ember-soft: var(--v2-ember-soft);--ok: var(--v2-ok);--ok-soft: var(--v2-ok-soft);--warn: var(--v2-warn);--warn-soft: var(--v2-warn-soft);--danger: var(--v2-danger);--danger-soft: var(--v2-danger-soft);--shadow-card: var(--v2-shadow-sm);--shadow-pop: var(--v2-shadow-pop);--mono: var(--v2-mono)}.v2,.v2 *,.v2 *:before,.v2 *:after{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--v2-paper);color:var(--v2-ink)}html{color-scheme:light}:root[data-v2-theme=dark]{color-scheme:dark}#root,.v2{min-height:100vh}:root[data-v2-theme=dark] .v2 input,:root[data-v2-theme=dark] .v2 select,:root[data-v2-theme=dark] .v2 textarea{background:var(--v2-surface-2);color:var(--v2-ink)}:root[data-v2-theme=dark] .v2 table{background:var(--v2-surface)}.v2{flex:1 1 100%;width:100%;min-width:0;--v2-gutter: var(--v2-sp-6);--v2-page-top: var(--v2-sp-5);font-family:var(--v2-font);font-size:var(--v2-fs);line-height:1.5;color:var(--v2-ink);background:var(--v2-paper);min-height:100vh;-webkit-font-smoothing:antialiased}.v2 .native h1,.v2 .native h2,.v2 .native h3,.v2 .native h4{margin:0;min-width:0;overflow-wrap:anywhere;font-weight:600;line-height:1.25;color:var(--v2-ink);text-transform:none;letter-spacing:-.01em;display:block}.v2 .native h1{font-size:var(--v2-fs-xl);letter-spacing:-.02em}.v2 .native h2{font-size:var(--v2-fs-lg)}.v2 .native h3{font-size:var(--v2-fs-md)}.v2 .native h4{font-size:var(--v2-fs)}.v2 p{margin:0 0 var(--v2-sp-3);color:inherit;font-size:inherit}.v2 p:last-child{margin-bottom:0}.v2 a{color:inherit;text-decoration:none}.v2 .native a:hover{color:var(--v2-brand)}.v2 .native a.link,.v2 button.link{color:var(--v2-brand);text-decoration:underline;text-underline-offset:2px}.v2 button.link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;font:inherit;cursor:pointer;line-height:inherit}.v2 button.link:hover,.v2 .native a.link:hover{color:var(--v2-brand-hover)}.v2 button.link:disabled{color:var(--v2-faint);cursor:not-allowed;text-decoration:none}.v2 .native code,.v2 .native .mono{font-family:var(--v2-mono);font-size:.9em;color:inherit}.v2 .native label{font-size:inherit;color:inherit}.v2 .native kbd{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);padding:1px 5px;border:1px solid var(--v2-line-strong);border-bottom-width:2px;border-radius:4px;background:var(--v2-surface-2)}.v2 :focus-visible{outline:2px solid var(--v2-focus);outline-offset:2px}.v2 .native input:focus-visible,.v2 .native select:focus-visible,.v2 .native textarea:focus-visible{outline:none}.v2 .row{display:flex;align-items:center}.v2 .stack{display:flex;flex-direction:column}.v2 .wrap{flex-wrap:wrap}.v2 .between{justify-content:space-between}.v2 .center{justify-content:center}.v2 .start{align-items:flex-start}.v2 .grow{flex:1;min-width:0}.v2 .ml-auto{margin-left:auto}.v2 .nowrap{white-space:nowrap}.v2 .gap-1{gap:var(--v2-sp-1)}.v2 .gap-2{gap:var(--v2-sp-2)}.v2 .gap-3{gap:var(--v2-sp-3)}.v2 .gap-4{gap:var(--v2-sp-4)}.v2 .gap-5{gap:var(--v2-sp-5)}.v2 .gap-6{gap:var(--v2-sp-6)}.v2 .gap-8{gap:var(--v2-sp-8)}.v2 .gap-10{gap:var(--v2-sp-10)}.v2 .gap-12{gap:var(--v2-sp-12)}.v2 .mt-2{margin-top:var(--v2-sp-2)}.v2 .mt-4{margin-top:var(--v2-sp-4)}.v2 .mt-6{margin-top:var(--v2-sp-6)}.v2 .mt-8{margin-top:var(--v2-sp-8)}.v2 .mb-2{margin-bottom:var(--v2-sp-2)}.v2 .mb-4{margin-bottom:var(--v2-sp-4)}.v2 .mb-6{margin-bottom:var(--v2-sp-6)}.v2 .mb-8{margin-bottom:var(--v2-sp-8)}.v2 .v2grid{display:grid;gap:var(--v2-sp-4)}.v2 .v2cols-2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.v2 .v2cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.v2 .v2cols-4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.v2 .cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.v2 .cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.v2 .cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.v2 .cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.v2 .split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--v2-sp-5);align-items:start}.v2 .split-wide{grid-template-columns:minmax(0,1fr) 380px}.v2 .mute{color:var(--v2-muted)}.v2 .faint{color:var(--v2-faint)}.v2 .ink-2{color:var(--v2-ink-2)}.v2 .danger{color:var(--v2-danger)}.v2 .ok{color:var(--v2-ok)}.v2 .xs{font-size:var(--v2-fs-xs)}.v2 .sm{font-size:var(--v2-fs-sm)}.v2 .md{font-size:var(--v2-fs-md)}.v2 .bold{font-weight:600}.v2 .tabular{font-variant-numeric:tabular-nums}.v2 .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .eyebrow{font-size:var(--v2-fs-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--v2-muted)}.v2 .prose{max-width:var(--v2-prose-max)}.v2 .count{font-size:var(--v2-fs-xs);color:var(--v2-faint);font-variant-numeric:tabular-nums}.v2 .app-header{position:sticky;top:0;z-index:50;height:var(--v2-header-h);background:var(--v2-surface);border-bottom:1px solid var(--v2-line)}.v2 .app-header>.header-inner{height:100%;display:flex;align-items:center;gap:var(--v2-sp-3);padding:0 var(--v2-gutter)}.v2 .brand{display:flex;align-items:center;gap:var(--v2-sp-2);font-weight:700;letter-spacing:-.02em;font-size:var(--v2-fs-md)}.v2 .brand-mark{width:26px;height:26px;border-radius:7px;flex:none;background:var(--v2-brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:0}.v2 .header-crumb{display:flex;align-items:center;gap:var(--v2-sp-2);min-width:0;color:var(--v2-muted);font-size:var(--v2-fs-sm)}.v2 .header-crumb .sep{color:var(--v2-line-strong)}.v2 .topnav{display:flex;align-items:center;gap:2px}.v2 .topnav a,.v2 .topnav button{padding:6px 10px;border-radius:var(--v2-r-sm);border:0;background:none;font:inherit;font-weight:500;color:var(--v2-muted);cursor:pointer}.v2 .topnav a:hover,.v2 .topnav button:hover{background:var(--v2-hover);color:var(--v2-ink)}.v2 .topnav [aria-current=page]{color:var(--v2-ink);font-weight:600;background:var(--v2-selection)}.v2 .header-actions{display:flex;align-items:center;gap:var(--v2-sp-1);margin-left:auto}.v2 .account-trigger{max-width:200px;min-width:0;justify-content:flex-start;gap:8px;padding:4px 8px 4px 4px}.v2 .account-trigger .account-name{flex:1 1 auto;min-width:0;max-width:130px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.v2 .bell{position:relative}.v2 .bell-dot{position:absolute;top:4px;right:4px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:var(--v2-ember);color:#fff;font-size:10px;font-weight:700;line-height:15px;text-align:center}.v2 .app-body{display:flex;align-items:flex-start;gap:0;min-height:calc(100vh - var(--v2-header-h))}.v2 .app-body:has(>.sidebar){background:linear-gradient(to right,var(--v2-surface) calc(var(--v2-sidebar-w) - 1px),var(--v2-line) calc(var(--v2-sidebar-w) - 1px),var(--v2-line) var(--v2-sidebar-w),transparent var(--v2-sidebar-w))}.v2 .main{flex:1;min-width:0;max-width:none;padding:var(--v2-page-top) var(--v2-gutter) var(--v2-sp-12)}.v2 .main-inner{max-width:var(--v2-content-max)}.v2 .main-bare{padding:0}.v2 .main-bare .main-inner{max-width:none;height:calc(100vh - var(--v2-header-h))}.v2 .sidebar{width:var(--v2-sidebar-w);flex:none;position:sticky;top:var(--v2-header-h);height:calc(100vh - var(--v2-header-h));overflow-y:auto;scrollbar-width:thin;padding:var(--v2-sp-4) var(--v2-sp-3);background:var(--v2-surface);border-right:1px solid var(--v2-line);display:flex;flex-direction:column}.v2 .sidebar-group+.sidebar-group{margin-top:var(--v2-sp-4)}.v2 .sidebar-group>.eyebrow{display:block;padding:0 10px var(--v2-sp-1);font-size:10.5px;color:var(--v2-faint)}.v2 .sidebar a,.v2 .sidebar button.side-item{display:flex;align-items:center;gap:9px;width:100%;min-width:0;text-align:left;background:none;border:0;cursor:pointer;padding:6px 10px;border-radius:var(--v2-r-sm);font:inherit;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-ink-2);line-height:1.4}.v2 .sidebar a svg,.v2 .sidebar button.side-item svg{width:16px;height:16px;flex:none;color:var(--v2-muted)}.v2 .sidebar a:hover,.v2 .sidebar button.side-item:hover{background:var(--v2-hover);color:var(--v2-ink)}.v2 .sidebar a[aria-current=page]{background:var(--v2-selection);color:var(--v2-selection-ink);font-weight:600}.v2 .sidebar a[aria-current=page] svg{color:var(--v2-brand)}.v2 .side-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .sidebar .v2badge{margin-left:auto}.v2 .sidebar-foot{margin-top:auto;padding-top:var(--v2-sp-4)}.v2 .workspace-switcher{display:block;margin-bottom:var(--v2-sp-4);width:100%}.v2 .workspace-trigger{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:5px 8px;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);color:var(--v2-ink);font:inherit;cursor:pointer;text-align:left}.v2 .workspace-trigger:hover{border-color:var(--v2-line-strong)}.v2 .workspace-trigger .bold{font-size:var(--v2-fs-sm);line-height:1.3;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .workspace-menu{left:0;right:0;min-width:0;max-width:none}.v2 .workspace-menu button,.v2 .workspace-menu a{font-size:var(--v2-fs-sm);min-width:0}.v2 .org-mark{width:22px;height:22px;border-radius:6px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--v2-brand-ink);color:#fff;font-size:9px;font-weight:700;object-fit:cover}:root[data-v2-theme=dark] .v2 .org-mark{background:var(--v2-brand-soft);color:var(--v2-brand)}.v2 .consumer-context{max-width:280px;margin-bottom:24px}.v2 .page-header{display:flex;align-items:flex-start;gap:var(--v2-sp-4);margin-bottom:var(--v2-sp-5);min-height:36px}.v2 .page-header-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.v2 .page-header h1{display:flex;align-items:center;gap:var(--v2-sp-2)}.v2 .page-header .page-count{font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-faint)}.v2 .page-header .page-desc{color:var(--v2-muted);font-size:var(--v2-fs-sm);max-width:var(--v2-prose-max)}.v2 .page-actions{display:flex;align-items:center;gap:var(--v2-sp-2);flex:none}.v2 .breadcrumb{display:flex;align-items:center;gap:6px;font-size:var(--v2-fs-sm);color:var(--v2-muted);margin-bottom:var(--v2-sp-2);min-width:0}.v2 .breadcrumb a{color:var(--v2-muted)}.v2 .breadcrumb a:hover{color:var(--v2-ink)}.v2 .breadcrumb svg{color:var(--v2-faint);flex:none}.v2 .breadcrumb .current{color:var(--v2-ink);font-weight:500}.v2 .entity-header{display:flex;align-items:flex-start;gap:var(--v2-sp-4);margin-bottom:var(--v2-sp-4)}.v2 .entity-mark{width:44px;height:44px;border-radius:var(--v2-r);flex:none;display:grid;place-items:center;background:var(--v2-brand-soft);color:var(--v2-brand-ink);font-weight:700;font-size:var(--v2-fs-md);object-fit:cover;overflow:hidden}.v2 .entity-mark svg{width:22px;height:22px}.v2 .entity-mark.neutral{background:var(--v2-surface-2);color:var(--v2-muted);border:1px solid var(--v2-line)}.v2 .entity-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.v2 .entity-title{display:flex;align-items:center;gap:var(--v2-sp-2);flex-wrap:wrap}.v2 .entity-title h1{font-size:var(--v2-fs-xl)}.v2 .entity-meta{display:flex;align-items:center;gap:var(--v2-sp-3);flex-wrap:wrap;color:var(--v2-muted);font-size:var(--v2-fs-sm)}.v2 .entity-meta>*{display:inline-flex;align-items:center;gap:5px;min-width:0}.v2 .entity-meta svg{color:var(--v2-faint)}.v2 .entity-actions{display:flex;align-items:center;gap:var(--v2-sp-2);flex:none;padding-top:4px}.v2 .toolbar{display:flex;align-items:center;gap:var(--v2-sp-2);flex-wrap:wrap;margin-bottom:var(--v2-sp-3);min-height:var(--v2-control-h)}.v2 .toolbar .search{width:280px;max-width:100%}.v2 .toolbar-filters{display:flex;align-items:center;gap:var(--v2-sp-2);flex-wrap:wrap}.v2 .toolbar-end{display:flex;align-items:center;gap:var(--v2-sp-2);margin-left:auto}.v2 .toolbar select,.v2 .toolbar .v2sselect{width:auto;min-width:150px}.v2 .tabs{display:flex;gap:2px;border-bottom:1px solid var(--v2-line);overflow-x:auto;margin-bottom:var(--v2-sp-5);scrollbar-width:none}.v2 .tab{padding:8px 12px;margin-bottom:-1px;background:none;border:0;border-bottom:2px solid transparent;font:inherit;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-muted);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;width:auto}.v2 .tab:hover{color:var(--v2-ink)}.v2 .tab[aria-selected=true],.v2 .tab[aria-current=page]{color:var(--v2-ink);border-bottom-color:var(--v2-brand);font-weight:600}.v2 .tab .count{font-size:var(--v2-fs-xs);color:var(--v2-faint);background:var(--v2-surface-2);padding:0 6px;border-radius:999px;line-height:16px}.v2 .tab[aria-selected=true] .count,.v2 .tab[aria-current=page] .count{background:var(--v2-selection);color:var(--v2-ink-2)}.v2 .segmented{display:inline-flex;padding:2px;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);gap:2px}.v2 .segmented button{padding:4px 10px;border:0;border-radius:4px;background:none;font:inherit;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-muted);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}.v2 .segmented button:hover{color:var(--v2-ink)}.v2 .segmented button[aria-pressed=true]{background:var(--v2-surface);color:var(--v2-ink);font-weight:600;box-shadow:var(--v2-shadow-xs)}.v2 .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--v2-control-h);padding:0 12px;border-radius:var(--v2-r-sm);white-space:nowrap;cursor:pointer;border:1px solid var(--v2-line-strong);background:var(--v2-surface);color:var(--v2-ink);font:inherit;font-size:var(--v2-fs-sm);font-weight:500;line-height:1;width:auto;box-shadow:var(--v2-shadow-xs);transition:background .12s,border-color .12s,color .12s}.v2 .btn svg{width:15px;height:15px;flex:none}.v2 .btn:hover{background:var(--v2-hover)}.v2 .btn[disabled]{opacity:.5;cursor:not-allowed}.v2 .btn-primary{background:var(--v2-brand);border-color:var(--v2-brand);color:#fff}.v2 .btn-primary:hover{background:var(--v2-brand-hover);border-color:var(--v2-brand-hover);color:#fff}.v2 .btn-ghost{background:transparent;border-color:transparent;color:var(--v2-muted);box-shadow:none}.v2 .btn-ghost:hover{background:var(--v2-hover);color:var(--v2-ink)}.v2 .btn-danger{background:var(--v2-danger);border-color:var(--v2-danger);color:#fff}.v2 .btn-danger:hover{background:var(--v2-danger);filter:brightness(.92);color:#fff}.v2 .btn-danger-soft{background:var(--v2-surface);border-color:var(--v2-line-strong);color:var(--v2-danger)}.v2 .btn-danger-soft:hover{background:var(--v2-danger-soft);border-color:var(--v2-danger)}.v2 .btn-sm{height:28px;padding:0 9px;font-size:var(--v2-fs-sm)}.v2 .btn-sm svg{width:14px;height:14px}.v2 .btn-lg{height:36px;padding:0 16px;font-size:var(--v2-fs)}.v2 .btn-icon{padding:0;width:var(--v2-control-h)}.v2 .btn-icon.btn-sm{width:28px}.v2 .btn-block{width:100%}.v2 .btn-group{display:inline-flex;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);overflow:hidden}.v2 .btn-group .btn{border:0;border-radius:0;box-shadow:none}.v2 .btn-group .btn+.btn{border-left:1px solid var(--v2-line-strong)}.v2 .btn-group .btn[aria-pressed=true]{background:var(--v2-selection);font-weight:600}.v2 .card{background:var(--v2-surface);border:1px solid var(--v2-line);border-radius:var(--v2-r);box-shadow:var(--v2-shadow-xs);min-width:0}.v2 .card-muted{background:var(--v2-surface-2);box-shadow:none}.v2 .card-raised{box-shadow:var(--v2-shadow)}.v2 .card-danger{border-color:color-mix(in srgb,var(--v2-danger) 35%,var(--v2-line))}.v2 .card-head{display:flex;align-items:center;gap:var(--v2-sp-3);padding:10px var(--v2-sp-4);border-bottom:1px solid var(--v2-line);min-height:44px}.v2 .card-head h3{flex:1;min-width:0;overflow-wrap:anywhere;font-size:var(--v2-fs);font-weight:600;display:flex;align-items:center;gap:8px}.v2 .card-head h3 .count{font-weight:500}.v2 .card-head svg{color:var(--v2-muted)}.v2 .card-body{padding:var(--v2-sp-4)}.v2 .card-body+.card-body{border-top:1px solid var(--v2-line)}.v2 .card-foot{padding:var(--v2-sp-3) var(--v2-sp-4);border-top:1px solid var(--v2-line);background:var(--v2-surface-2);border-radius:0 0 var(--v2-r) var(--v2-r)}.v2 a.card:hover,.v2 .card-link:hover{border-color:var(--v2-line-strong);box-shadow:var(--v2-shadow-sm)}.v2 .card>.data-table>.table-wrap,.v2 .card>.data-table>.table-toolbar{border-left:0;border-right:0;border-radius:0}.v2 .card>.data-table>.table-wrap{border-bottom:0}.v2 .card>.data-table>.table-pager{border-left:0;border-right:0;border-bottom:0;border-radius:0 0 var(--v2-r) var(--v2-r)}.v2 .card>.data-table>.table-toolbar{border-top:0}.v2 .v2stat{padding:12px var(--v2-sp-4);display:flex;flex-direction:column;gap:2px}.v2 .v2stat-l{font-size:var(--v2-fs-sm);color:var(--v2-muted);display:flex;align-items:center;gap:6px}.v2 .v2stat-l svg{color:var(--v2-faint)}.v2 .v2stat-v{font-size:var(--v2-fs-num);font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.2;color:var(--v2-ink)}.v2 .v2stat-v.ok{color:var(--v2-ok)}.v2 .v2stat-v.warn{color:var(--v2-warn)}.v2 .v2stat-v.danger{color:var(--v2-danger)}.v2 .v2stat .sm{color:var(--v2-muted)}.v2 a.v2stat:hover{border-color:var(--v2-line-strong)}.v2 .stat-strip{display:grid;gap:var(--v2-sp-3);margin-bottom:var(--v2-sp-5)}.v2 .stat-strip .v2stat{margin:0}.v2 .section{display:flex;flex-direction:column;gap:var(--v2-sp-3)}.v2 .section+.section{margin-top:var(--v2-sp-6)}.v2 .section-head{display:flex;align-items:center;gap:var(--v2-sp-3);min-height:28px}.v2 .section-head h2{font-size:var(--v2-fs-md);flex:1;min-width:0}.v2 .section-head .sm{color:var(--v2-muted)}.v2 .sec-head{display:flex;align-items:center;gap:var(--v2-sp-3);margin-bottom:var(--v2-sp-3)}.v2 .sec-head h2{font-size:var(--v2-fs-md);flex:1}.v2 .form-page{display:grid;grid-template-columns:minmax(0,var(--v2-form-max)) minmax(240px,320px);gap:var(--v2-sp-6);align-items:start}.v2 .form-page-single{grid-template-columns:minmax(0,var(--v2-form-max))}.v2 .form-section{display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .form-section-head h2{font-size:var(--v2-fs-md);margin-bottom:2px}.v2 .form-section-head p{color:var(--v2-muted);font-size:var(--v2-fs-sm)}.v2 .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--v2-sp-4)}.v2 .form-grid .span-2{grid-column:1 / -1}.v2 .form-foot{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:var(--v2-sp-2);padding:var(--v2-sp-3) 0;margin-top:var(--v2-sp-4);background:var(--v2-paper);border-top:1px solid var(--v2-line)}.v2 .form-foot .form-foot-note{color:var(--v2-muted);font-size:var(--v2-fs-sm);margin-right:auto}.v2 .form-aside{position:sticky;top:calc(var(--v2-header-h) + var(--v2-page-top));display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .danger-zone{border:1px solid color-mix(in srgb,var(--v2-danger) 35%,var(--v2-line));border-radius:var(--v2-r)}.v2 .danger-zone-row{display:flex;align-items:center;gap:var(--v2-sp-4);padding:var(--v2-sp-4)}.v2 .danger-zone-row+.danger-zone-row{border-top:1px solid var(--v2-line)}.v2 .danger-zone-row .stack{flex:1;min-width:0}.v2 .native table{width:100%;border-collapse:collapse;background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none;font-size:var(--v2-fs)}.v2 .native th,.v2 .native td{text-align:left;vertical-align:middle}.v2 .native th{padding:7px 12px;white-space:nowrap;background:var(--v2-surface-2);color:var(--v2-muted);font-weight:600;font-size:var(--v2-fs-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--v2-line)}.v2 .native td{padding:8px 12px;border-bottom:1px solid var(--v2-line);font-size:var(--v2-fs)}.v2 .native tbody tr:last-child td{border-bottom:0}.v2 .native tbody tr:hover{background:var(--v2-surface-2)}.v2 .native td.num,.v2 .native th.num{text-align:right;font-variant-numeric:tabular-nums}.v2 .native td.actions,.v2 .native th.actions{width:1%;white-space:nowrap;text-align:right}.v2 .native td.actions .btn{visibility:hidden}.v2 .native tr:hover td.actions .btn,.v2 .native tr:focus-within td.actions .btn{visibility:visible}.v2 .native tbody tr.row-link{cursor:pointer}.v2 .native tbody tr.row-link:focus{outline:none}.v2 .native tbody tr.row-link:focus-visible{outline:2px solid var(--v2-focus);outline-offset:-2px}.v2 .native tbody tr[aria-selected=true] td{background:var(--v2-selection)}.v2 .data-table{min-width:0;max-width:100%}.v2 .table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--v2-line);border-radius:var(--v2-r);background:var(--v2-surface)}.v2 .table-toolbar{display:flex;align-items:center;gap:var(--v2-sp-2);flex-wrap:wrap;padding:8px 10px;border:1px solid var(--v2-line);border-bottom:0;background:var(--v2-surface);border-radius:var(--v2-r) var(--v2-r) 0 0}.v2 .table-toolbar+.table-wrap{border-top-left-radius:0;border-top-right-radius:0}.v2 .table-sort{display:flex;align-items:center;gap:5px;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;text-align:inherit;white-space:nowrap}.v2 th.num .table-sort{justify-content:flex-end}.v2 .table-sort:hover{color:var(--v2-ink)}.v2 .table-sort-icon{color:var(--v2-faint);font-size:11px;line-height:1}.v2 .table-pager{display:flex;align-items:center;gap:var(--v2-sp-3);flex-wrap:wrap;justify-content:flex-end;padding:6px 10px;border:1px solid var(--v2-line);border-top:0;background:var(--v2-surface);border-radius:0 0 var(--v2-r) var(--v2-r)}.v2 .table-pager select{width:auto;min-width:58px;height:26px;padding:0 22px 0 7px;font-size:var(--v2-fs-sm)}.v2 .table-page-buttons{display:flex;gap:2px}.v2 .table-page-buttons .btn-icon{width:26px;height:26px;padding:0;box-shadow:none}.v2 .table-wrap+.table-pager{border-top:1px solid var(--v2-line);margin-top:-1px}.v2 .cell-2{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.35}.v2 .cell-2>:first-child{font-weight:500;color:var(--v2-ink)}.v2 .cell-2>:last-child{font-size:var(--v2-fs-xs);color:var(--v2-faint)}.v2 .cell-person{display:flex;align-items:center;gap:10px;min-width:0}.v2 .native input,.v2 .native select,.v2 .native textarea{width:100%;height:var(--v2-control-h);padding:0 10px;font:inherit;font-size:var(--v2-fs);color:var(--v2-ink);background:var(--v2-surface);border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-xs)}.v2 .native textarea{height:auto;min-height:80px;padding:8px 10px;line-height:1.5;resize:vertical}.v2 .native select{padding-right:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a939d' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.v2 .native input::placeholder,.v2 .native textarea::placeholder{color:var(--v2-faint)}.v2 .native input:focus,.v2 .native select:focus,.v2 .native textarea:focus{outline:none;border-color:var(--v2-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--v2-focus) 22%,transparent)}.v2 .native input[aria-invalid=true],.v2 .native select[aria-invalid=true],.v2 .native textarea[aria-invalid=true]{border-color:var(--v2-danger)}.v2 .native input[type=checkbox],.v2 .native input[type=radio]{width:15px;height:15px;padding:0;accent-color:var(--v2-brand);cursor:pointer;box-shadow:none}.v2 .native input[type=range]{padding:0;accent-color:var(--v2-brand);border:0;box-shadow:none}.v2 .native input[type=file]{padding:0;height:auto;border:0;box-shadow:none}.v2 .native input[readonly]{background:var(--v2-surface-2);color:var(--v2-muted)}.v2 .field{display:flex;flex-direction:column;gap:5px;min-width:0}.v2 .field-row{display:flex;align-items:center;gap:var(--v2-sp-2)}.v2 .label{font-size:var(--v2-fs-sm);font-weight:600;color:var(--v2-ink);display:flex;align-items:center;gap:6px}.v2 .label .optional{font-weight:400;color:var(--v2-faint)}.v2 .hint{font-size:var(--v2-fs-sm);color:var(--v2-muted)}.v2 .err{font-size:var(--v2-fs-sm);color:var(--v2-danger)}.v2 .check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:6px 0}.v2 .check input{margin-top:3px}.v2 .check .stack{gap:1px}.v2 .check-list{display:flex;flex-direction:column}.v2 .check-list .check+.check{border-top:1px solid var(--v2-line)}.v2 .search{position:relative}.v2 .search input{padding-left:30px}.v2 .search>svg{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--v2-faint);pointer-events:none}.v2 .search .search-clear{position:absolute;right:4px;top:50%;transform:translateY(-50%)}.v2 .input-group{display:flex;align-items:stretch}.v2 .input-group>input,.v2 .input-group>.input-text{flex:1;min-width:0;border-top-right-radius:0;border-bottom-right-radius:0}.v2 .input-group>.btn{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.v2 .input-text{display:flex;align-items:center;height:var(--v2-control-h);padding:0 10px;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);font-family:var(--v2-mono);font-size:var(--v2-fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--v2-ink-2)}.v2 .copy-inline{display:inline-flex;align-items:center;gap:4px;min-width:0}.v2 .copy-inline .btn-icon{width:22px;height:22px;box-shadow:none;color:var(--v2-faint)}.v2 .copy-inline .btn-icon:hover{color:var(--v2-ink)}.v2 .copy-inline .btn-icon svg{width:13px;height:13px}.v2 .v2money{position:relative}.v2 .v2money .v2money-sign{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--v2-muted);pointer-events:none;font-variant-numeric:tabular-nums}.v2 .native .v2money input{padding-left:22px;font-variant-numeric:tabular-nums}.v2 .v2sselect{position:relative;width:100%}.v2 .v2sselect-trigger{display:flex;align-items:center;gap:var(--v2-sp-2);justify-content:space-between;width:100%;height:var(--v2-control-h);padding:0 10px;font:inherit;font-size:var(--v2-fs);text-align:left;color:var(--v2-ink);background:var(--v2-surface);cursor:pointer;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-xs)}.v2 .v2sselect-trigger:disabled{cursor:not-allowed;opacity:.6}.v2 .v2sselect-trigger:focus-visible{outline:none;border-color:var(--v2-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--v2-focus) 22%,transparent)}.v2 .v2sselect-trigger>svg{flex:none;color:var(--v2-faint)}.v2 .v2sselect-pop{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;min-width:240px;background:var(--v2-surface);border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-pop);padding:var(--v2-sp-2);display:flex;flex-direction:column;gap:var(--v2-sp-2)}.v2 .v2sselect-list{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto}.v2 .v2sselect-opt{display:flex;flex-direction:column;gap:1px;cursor:pointer;padding:6px 8px;border-radius:4px;min-width:0}.v2 .v2sselect-opt.on{background:var(--v2-selection)}.v2 .v2sselect-opt[aria-selected=true]{font-weight:600}.v2 .v2sselect-none{padding:8px;color:var(--v2-muted);font-size:var(--v2-fs-sm)}.v2 .mselect{position:relative;width:100%}.v2 .mselect-box{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:var(--v2-control-h);padding:3px 30px 3px 6px;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);background:var(--v2-surface);cursor:text;box-shadow:var(--v2-shadow-xs)}.v2 .mselect-box:focus-within{border-color:var(--v2-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--v2-focus) 22%,transparent)}.v2 .mselect-box>svg{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:var(--v2-faint);pointer-events:none}.v2 .mselect-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 4px 0 8px;border-radius:4px;background:var(--v2-selection);font-size:var(--v2-fs-sm);font-weight:500;max-width:100%}.v2 .mselect-chip button{display:inline-grid;place-items:center;width:16px;height:16px;border:0;border-radius:3px;background:none;color:var(--v2-muted);cursor:pointer;padding:0}.v2 .mselect-chip button:hover{background:var(--v2-surface);color:var(--v2-ink)}.v2 .native .mselect-box input{flex:1;min-width:80px;height:22px;border:0;box-shadow:none;padding:0 4px;background:transparent}.v2 .native .mselect-box input:focus{box-shadow:none}.v2 .mselect-pop{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;background:var(--v2-surface);border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-pop);padding:var(--v2-sp-1);max-height:280px;overflow-y:auto}.v2 .mselect-opt{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;border-radius:4px;background:none;font:inherit;text-align:left;cursor:pointer;color:var(--v2-ink)}.v2 .mselect-opt:hover,.v2 .mselect-opt.on{background:var(--v2-hover)}.v2 .mselect-opt .stack{min-width:0;flex:1;gap:0}.v2 .mselect-opt .sub{font-size:var(--v2-fs-xs);color:var(--v2-faint)}.v2 .mselect-opt svg{flex:none;color:var(--v2-brand);visibility:hidden}.v2 .mselect-opt[aria-selected=true] svg{visibility:visible}.v2 .switch{position:relative;display:inline-flex;align-items:center;gap:var(--v2-sp-2);cursor:pointer}.v2 .switch>input{position:absolute;opacity:0;width:0;height:0}.v2 .switch .track{width:32px;height:18px;border-radius:var(--v2-r-full);flex:none;background:var(--v2-line-strong);position:relative;transition:background .15s}.v2 .switch .track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:var(--v2-shadow-sm);transition:transform .15s}.v2 .switch>input:checked+.track{background:var(--v2-brand)}.v2 .switch>input:checked+.track:after{transform:translate(14px)}.v2 .switch>input:focus-visible+.track{outline:2px solid var(--v2-focus);outline-offset:2px}.v2 .codeblock{position:relative;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);overflow:hidden}.v2 .codeblock pre{margin:0;padding:var(--v2-sp-3) var(--v2-sp-4);overflow:auto;font-family:var(--v2-mono);font-size:var(--v2-fs-sm);line-height:1.55;color:var(--v2-ink-2)}.v2 .codeblock-head{display:flex;align-items:center;gap:var(--v2-sp-2);padding:4px 6px 4px 12px;border-bottom:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .codeblock-head .eyebrow{flex:1}.v2 .codeblock .copy-btn{position:absolute;top:6px;right:6px}.v2 .codeblock-head+pre+.copy-btn,.v2 .codeblock-head~.copy-btn{top:auto;position:static}.v2 .dropdown{position:relative;display:inline-block}.v2 .menu{position:absolute;z-index:60;min-width:min(200px,calc(100vw - 2 * var(--v2-sp-4)));max-width:min(320px,calc(100vw - 2 * var(--v2-sp-4)));margin-top:4px;background:var(--v2-surface);border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-pop);padding:4px}.v2 .menu-right{right:0}.v2 .menu a,.v2 .menu button{display:flex;align-items:center;gap:9px;width:100%;min-width:0;padding:6px 9px;border:0;background:none;border-radius:4px;font:inherit;font-size:var(--v2-fs-sm);color:var(--v2-ink);text-align:left;cursor:pointer}.v2 .menu a svg,.v2 .menu button svg{width:15px;height:15px;color:var(--v2-muted);flex:none}.v2 .menu a:hover,.v2 .menu button:hover{background:var(--v2-hover)}.v2 .menu button:disabled{color:var(--v2-faint);cursor:not-allowed;background:none}.v2 .menu .danger,.v2 .menu .danger svg{color:var(--v2-danger)}.v2 .menu .danger:hover{background:var(--v2-danger-soft)}.v2 .menu .sep{height:1px;background:var(--v2-line);margin:4px 0}.v2 .menu .menu-label{padding:6px 9px 3px}.v2 .menu-identity{display:flex;flex-direction:column;gap:1px;padding:6px 9px;min-width:0}.v2 .menu-identity strong{font-size:var(--v2-fs-sm);font-weight:600}.v2 .menu-identity span{color:var(--v2-muted);font-size:var(--v2-fs-xs)}.v2 .menu button[aria-current=true]{background:var(--v2-selection);font-weight:600}.v2 .menu-notices{width:min(300px,calc(100vw - 2 * var(--v2-sp-4)))}.v2 .menu-empty{padding:8px 10px;color:var(--v2-muted);font-size:var(--v2-fs-sm)}.v2 .overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:grid;place-items:center;background:#0f172073;padding:var(--v2-sp-6)}.v2 .modal{background:var(--v2-surface);border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-lg);box-shadow:var(--v2-shadow-pop);width:min(520px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.v2 .modal-lg{width:min(860px,100%)}.v2 .modal-head{display:flex;align-items:center;gap:var(--v2-sp-3);padding:var(--v2-sp-3) var(--v2-sp-4);border-bottom:1px solid var(--v2-line)}.v2 .modal-head h3{flex:1;font-size:var(--v2-fs-md)}.v2 .modal-body{padding:var(--v2-sp-4);overflow-y:auto}.v2 .modal-foot{display:flex;gap:var(--v2-sp-2);justify-content:flex-end;align-items:center;padding:var(--v2-sp-3) var(--v2-sp-4);border-top:1px solid var(--v2-line);background:var(--v2-surface-2)}.v2 .modal-foot .foot-note{margin-right:auto;font-size:var(--v2-fs-sm);color:var(--v2-muted)}.v2 .confirm-icon{width:36px;height:36px;border-radius:var(--v2-r);display:grid;place-items:center;flex:none}.v2 .confirm-icon.danger{background:var(--v2-danger-soft);color:var(--v2-danger)}.v2 .confirm-icon.warn{background:var(--v2-warn-soft);color:var(--v2-warn)}.v2 .confirm-icon.neutral{background:var(--v2-surface-2);color:var(--v2-muted)}.v2 .drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f172059}.v2 .drawer{position:fixed;top:0;right:0;bottom:0;z-index:101;width:min(520px,100%);background:var(--v2-surface);border-left:1px solid var(--v2-line);box-shadow:var(--v2-shadow-pop);display:flex;flex-direction:column;animation:v2drawer .18s ease-out}.v2 .drawer-lg{width:min(720px,100%)}@keyframes v2drawer{0%{transform:translate(24px);opacity:0}}.v2 .drawer-head{display:flex;align-items:flex-start;gap:var(--v2-sp-3);padding:var(--v2-sp-4);border-bottom:1px solid var(--v2-line)}.v2 .drawer-head .stack{flex:1;min-width:0;gap:2px}.v2 .drawer-head h2{font-size:var(--v2-fs-md)}.v2 .drawer-body{padding:var(--v2-sp-4);overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:var(--v2-sp-5)}.v2 .drawer-foot{display:flex;gap:var(--v2-sp-2);justify-content:flex-end;align-items:center;padding:var(--v2-sp-3) var(--v2-sp-4);border-top:1px solid var(--v2-line);background:var(--v2-surface-2)}.v2 .drawer-foot .foot-note{margin-right:auto;font-size:var(--v2-fs-sm);color:var(--v2-muted)}.v2 .toasts{position:fixed;bottom:var(--v2-sp-6);left:50%;transform:translate(-50%);z-index:200;display:flex;flex-direction:column;gap:var(--v2-sp-2);align-items:center;pointer-events:none}.v2 .toast{display:flex;align-items:center;gap:8px;background:var(--v2-ink);color:var(--v2-paper);padding:9px 14px;border-radius:var(--v2-r-sm);font-size:var(--v2-fs-sm);font-weight:500;box-shadow:var(--v2-shadow-pop);animation:v2toast .18s ease-out}.v2 .toast svg{width:15px;height:15px;color:var(--v2-ok)}.v2 .toast-err{background:var(--v2-danger);color:#fff}.v2 .toast-err svg{color:#fff}@keyframes v2toast{0%{opacity:0;transform:translateY(8px)}}.v2 .v2badge{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 7px;border-radius:var(--v2-r-full);font-size:var(--v2-fs-xs);font-weight:600;background:var(--v2-surface-2);color:var(--v2-muted);white-space:nowrap;line-height:1}.v2 .v2badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;flex:none}.v2 .v2badge-plain:before{display:none}.v2 .v2badge-primary{background:var(--v2-brand-soft);color:var(--v2-brand-ink)}.v2 .v2badge-ok{background:var(--v2-ok-soft);color:var(--v2-ok)}.v2 .v2badge-warn{background:var(--v2-warn-soft);color:var(--v2-warn)}.v2 .v2badge-danger{background:var(--v2-danger-soft);color:var(--v2-danger)}.v2 .v2badge-info{background:var(--v2-info-soft);color:var(--v2-info)}.v2 .v2badge-ember{background:var(--v2-ember-soft);color:var(--v2-ember)}.v2 .chip{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:var(--v2-r-full);border:1px solid var(--v2-line-strong);background:var(--v2-surface);font:inherit;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-muted);cursor:pointer;white-space:nowrap;width:auto}.v2 .chip:hover{background:var(--v2-hover);color:var(--v2-ink)}.v2 .chip[aria-pressed=true]{background:var(--v2-selection);border-color:transparent;color:var(--v2-ink);font-weight:600}.v2 .chip .count{margin-left:2px}.v2 .chips{display:flex;flex-wrap:wrap;gap:6px}.v2 .role-chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;background:var(--v2-surface-2);border:1px solid var(--v2-line);font-size:var(--v2-fs-xs);font-weight:500;color:var(--v2-ink-2);white-space:nowrap}.v2 .kind-chips,.v2 .filter-opts{display:flex;flex-wrap:wrap;gap:var(--v2-sp-2)}.v2 .filter-opt{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:var(--v2-r-full);border:1px solid var(--v2-line-strong);background:var(--v2-surface);font:inherit;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-muted);cursor:pointer;white-space:nowrap;width:auto}.v2 .filter-opt:hover{background:var(--v2-hover);color:var(--v2-ink)}.v2 .filter-opt[aria-pressed=true]{background:var(--v2-selection);border-color:transparent;color:var(--v2-ink);font-weight:600}.v2 .facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--v2-sp-4) var(--v2-sp-5);margin:0}.v2 .facts-1{grid-template-columns:1fr}.v2 .facts-2{grid-template-columns:repeat(2,minmax(0,1fr))}.v2 .facts-3{grid-template-columns:repeat(3,minmax(0,1fr))}.v2 .facts-4{grid-template-columns:repeat(4,minmax(0,1fr))}.v2 .fact{display:flex;flex-direction:column;gap:3px;min-width:0}.v2 .fact dt{font-size:var(--v2-fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--v2-faint)}.v2 .fact dd{margin:0;min-width:0;overflow-wrap:anywhere;color:var(--v2-ink)}.v2 .fact dd .sm{color:var(--v2-muted)}.v2 .facts-rows{display:flex;flex-direction:column;margin:0}.v2 .facts-rows .fact{flex-direction:row;align-items:baseline;gap:var(--v2-sp-3);padding:7px 0;border-top:1px solid var(--v2-line)}.v2 .facts-rows .fact:first-child{border-top:0;padding-top:0}.v2 .facts-rows .fact dt{flex:0 0 120px;text-transform:none;letter-spacing:0;font-size:var(--v2-fs-sm);font-weight:500;color:var(--v2-muted)}.v2 .facts-rows .fact dd{flex:1;text-align:right}.v2 .banner{display:flex;align-items:flex-start;gap:var(--v2-sp-3);padding:10px var(--v2-sp-4);border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface);margin-bottom:var(--v2-sp-4);font-size:var(--v2-fs-sm)}.v2 .banner svg{flex:none;margin-top:1px}.v2 .banner .stack{flex:1;min-width:0;gap:2px}.v2 .banner strong{font-weight:600}.v2 .banner-ok{background:var(--v2-ok-soft);border-color:color-mix(in srgb,var(--v2-ok) 30%,transparent)}.v2 .banner-ok svg{color:var(--v2-ok)}.v2 .banner-warn{background:var(--v2-warn-soft);border-color:color-mix(in srgb,var(--v2-warn) 30%,transparent)}.v2 .banner-warn svg{color:var(--v2-warn)}.v2 .banner-danger{background:var(--v2-danger-soft);border-color:color-mix(in srgb,var(--v2-danger) 30%,transparent)}.v2 .banner-danger svg{color:var(--v2-danger)}.v2 .banner-info{background:var(--v2-info-soft);border-color:color-mix(in srgb,var(--v2-info) 30%,transparent)}.v2 .banner-info svg{color:var(--v2-info)}.v2 .note{border-left:3px solid var(--v2-brand);background:var(--v2-brand-wash);padding:var(--v2-sp-3) var(--v2-sp-4);border-radius:0 var(--v2-r-sm) var(--v2-r-sm) 0;font-size:var(--v2-fs-sm)}.v2 .info-pop{display:inline-grid;place-items:center;width:18px;height:18px;border:0;background:none;color:var(--v2-faint);cursor:help;padding:0}.v2 .info-pop:hover{color:var(--v2-ink)}.v2 .empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--v2-sp-2);text-align:center;padding:var(--v2-sp-8) var(--v2-sp-4);color:var(--v2-muted)}.v2 .empty-icon{width:40px;height:40px;border-radius:var(--v2-r);display:grid;place-items:center;background:var(--v2-surface-2);color:var(--v2-faint);margin-bottom:4px}.v2 .empty h3{font-size:var(--v2-fs);color:var(--v2-ink)}.v2 .empty p{max-width:44ch;margin:0;font-size:var(--v2-fs-sm)}.v2 .empty .btn{margin-top:6px}.v2 .skeleton{background:linear-gradient(90deg,var(--v2-surface-2) 25%,var(--v2-surface-3) 37%,var(--v2-surface-2) 63%);background-size:400% 100%;animation:v2sk 1.4s ease infinite;border-radius:4px}@keyframes v2sk{0%{background-position:100% 50%}to{background-position:0 50%}}.v2 .sk-line{height:11px;margin-bottom:8px}.v2 .avatar{width:28px;height:28px;border-radius:50%;background:var(--v2-selection);display:grid;place-items:center;font-size:var(--v2-fs-xs);font-weight:600;color:var(--v2-ink-2);flex:none}.v2 .avatar-sm{width:22px;height:22px;font-size:9px}.v2 .entity-icon{width:28px;height:28px;flex:none;display:inline-grid;place-items:center;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);color:var(--v2-muted)}.v2 .divider{height:1px;background:var(--v2-line)}.v2 .bar{height:6px;border-radius:var(--v2-r-full);background:var(--v2-surface-2);overflow:hidden}.v2 .bar>i{display:block;height:100%;background:var(--v2-brand)}.v2 .list{border:1px solid var(--v2-line);border-radius:var(--v2-r);background:var(--v2-surface);overflow:hidden}.v2 .list-row{display:flex;align-items:center;gap:var(--v2-sp-3);padding:10px var(--v2-sp-4);border-bottom:1px solid var(--v2-line)}.v2 .list-row:last-child{border-bottom:0}.v2 .list-row:hover{background:var(--v2-surface-2)}.v2 .task-list .list-row{padding:8px var(--v2-sp-4)}.v2 .dot{width:8px;height:8px;border-radius:50%;background:var(--v2-faint);flex:none}.v2 .dot.ok{background:var(--v2-ok)}.v2 .dot.warn{background:var(--v2-warn)}.v2 .dot.danger{background:var(--v2-danger)}.v2 .pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--v2-mono);font-size:var(--v2-fs-sm)}.v2 .timeline{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.v2 .timeline li{display:grid;grid-template-columns:16px 1fr;gap:10px;padding:6px 0}.v2 .timeline li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--v2-line-strong);margin:6px 0 0 4px}@media(max-width:1100px){.v2 .split,.v2 .split-wide,.v2 .form-page{grid-template-columns:minmax(0,1fr)}.v2 .form-aside{position:static}.v2 .cols-4,.v2 .cols-5,.v2 .facts-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.v2{--v2-gutter: var(--v2-sp-4)}.v2 .app-body{flex-direction:column;align-items:stretch;min-height:0}.v2 .app-body:has(>.sidebar){background:none}.v2 .sidebar{position:static;width:100%;height:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--v2-sp-3);border-right:0;border-bottom:1px solid var(--v2-line)}.v2 .sidebar .workspace-switcher{grid-column:1 / -1;margin-bottom:0}.v2 .sidebar-group{margin-top:0!important}.v2 .sidebar-foot{grid-column:1 / -1;margin-top:0}.v2 .row.wrap>.row{flex-wrap:wrap}.v2 .hide-sm{display:none}.v2 .form-grid{grid-template-columns:minmax(0,1fr)}.v2 .cols-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.v2 .facts-3{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.v2 .entity-header{flex-wrap:wrap}.v2 .entity-actions{width:100%;padding-top:0}.v2 .page-header{flex-wrap:wrap}}@media(max-width:760px){.v2 .app-header{height:auto}.v2 .app-header>.header-inner{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.v2 .app-header .brand{margin-right:auto}.v2 .app-header .topnav{order:10;width:100%;min-width:0;justify-content:flex-start;margin-left:0;overflow-x:auto;scrollbar-width:thin}.v2 .topnav a{padding:8px;flex:none}.v2 .page-actions{flex-wrap:wrap}.v2 .cols-2,.v2 .cols-3,.v2 .cols-4,.v2 .cols-5,.v2 .facts-2,.v2 .facts-3,.v2 .facts-4{grid-template-columns:minmax(0,1fr)}.v2 .drawer{width:100%}}.v2 .card>.table-pager,.v2 .card>.data-table+.table-pager{border-left:0;border-right:0;border-bottom:0;border-radius:0 0 var(--v2-r) var(--v2-r)}.v2 .v2stat-v .mono{font-size:var(--v2-fs-md);overflow-wrap:anywhere}.v2 .toolbar>input,.v2 .toolbar-filters>input{width:220px}.v2 .native .toolbar select,.v2 .native .toolbar input[type=date],.v2 .native .toolbar-filters select{width:auto;min-width:150px}.v2 .language-select{width:auto;max-width:96px;min-height:28px;padding:3px 6px;border-radius:4px;font-size:12px}.v2 .table-pager>label{flex-shrink:0;white-space:nowrap}.v2 .native .model-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--v2-sp-4)}.v2 .native .model-card{display:flex;flex-direction:column;gap:var(--v2-sp-2);min-width:0;padding:var(--v2-sp-5);border:1px solid var(--v2-line);border-radius:var(--v2-r-lg);background:var(--v2-surface);color:inherit;text-decoration:none;box-shadow:var(--v2-shadow-xs);transition:border-color .12s,box-shadow .12s}.v2 .native .model-card:hover{color:inherit;border-color:var(--v2-line-strong);box-shadow:var(--v2-shadow-sm)}.v2 .native .model-card:focus-visible{outline:2px solid var(--v2-focus);outline-offset:2px}.v2 .native .model-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--v2-sp-2)}.v2 .native .model-card-title{font-size:var(--v2-fs-md);font-weight:600;line-height:1.3}.v2 .native .model-card-desc{color:var(--v2-ink-2);font-size:var(--v2-fs-sm);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.v2 .native .model-card-facts{display:flex;flex-wrap:wrap;gap:var(--v2-sp-1) var(--v2-sp-3);margin-top:auto;padding-top:var(--v2-sp-2);font-size:var(--v2-fs-xs);color:var(--v2-muted)}.v2 .native .model-card-foot{padding-top:var(--v2-sp-2);border-top:1px solid var(--v2-line)}.v2 .native .model-desc{margin:0;max-width:var(--v2-prose-max);line-height:1.55}.v2 .native .truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v2 .native .deployment-evidence{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--v2-fs-sm);line-height:1.55}.v2 .native .deployment-steps li.is-approved:before{background:var(--v2-ok)}.v2 .native .deployment-steps li.is-rejected:before{background:var(--v2-danger)}.v2 .native .deployment-steps li.is-pending:before{background:var(--v2-line-strong)}.v2 .native .pg{display:grid;grid-template-columns:260px minmax(0,1fr);height:calc(100vh - var(--v2-header-h));min-height:0;background:var(--v2-paper)}.v2 .native .pg-rail{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .pg-rail-head{display:flex;align-items:center;gap:var(--v2-sp-2);padding:var(--v2-sp-3);border-bottom:1px solid var(--v2-line)}.v2 .native .pg-rail-head .search{flex:1;min-width:0}.v2 .native .pg-rooms{flex:1;min-height:0;overflow-y:auto;margin:0;padding:var(--v2-sp-2);list-style:none;display:flex;flex-direction:column;gap:2px}.v2 .native .pg-room{position:relative;display:flex;align-items:center;border-radius:var(--v2-r-sm)}.v2 .native .pg-room:hover{background:var(--v2-hover)}.v2 .native .pg-room.is-selected{background:var(--v2-selection)}.v2 .native .pg-room-select{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;padding:7px 10px;border:0;background:none;color:inherit;font:inherit;font-size:var(--v2-fs-sm);text-align:left;cursor:pointer;border-radius:var(--v2-r-sm)}.v2 .native .pg-room.is-selected .pg-room-select{color:var(--v2-selection-ink);font-weight:600}.v2 .native .pg-room-select:focus-visible{outline:2px solid var(--v2-focus);outline-offset:-2px}.v2 .native .pg-room-menu{opacity:0;padding-right:4px}.v2 .native .pg-room:hover .pg-room-menu,.v2 .native .pg-room:focus-within .pg-room-menu,.v2 .native .pg-room-menu:has([aria-expanded=true]){opacity:1}.v2 .native .pg-room-rename{flex:1;padding:3px}.v2 .native .pg-room-rename input{width:100%}.v2 .native .pg-room-none{padding:var(--v2-sp-3)}.v2 .native .pg-rail-foot{padding:var(--v2-sp-2) var(--v2-sp-3);border-top:1px solid var(--v2-line)}.v2 .native .pg-main{display:flex;flex-direction:column;min-height:0;min-width:0}.v2 .native .pg-top{display:flex;flex-direction:column;gap:var(--v2-sp-2);padding:var(--v2-sp-3) var(--v2-sp-5);border-bottom:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .pg-top-row{display:flex;align-items:center;gap:var(--v2-sp-3);flex-wrap:wrap}.v2 .native .pg-project{width:260px;max-width:100%}.v2 .native .pg-top-end{display:flex;align-items:center;gap:var(--v2-sp-2);margin-left:auto}.v2 .native .pg-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--v2-sp-2);min-height:28px}.v2 .native .pg-chip{display:inline-flex;align-items:center;gap:5px;max-width:260px;height:28px;padding:0 10px;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-full);background:var(--v2-surface);color:var(--v2-ink-2);font:inherit;font-size:var(--v2-fs-sm);cursor:pointer}.v2 .native .pg-chip:hover:not(:disabled){background:var(--v2-hover);color:var(--v2-ink)}.v2 .native .pg-chip[aria-pressed=true]{background:var(--v2-selection);border-color:transparent;color:var(--v2-selection-ink);font-weight:600}.v2 .native .pg-chip:disabled{opacity:.5;cursor:not-allowed}.v2 .native .pg-chip:focus-visible{outline:2px solid var(--v2-focus);outline-offset:2px}.v2 .native .pg-transcript{flex:1;min-height:0;overflow-y:auto;padding:var(--v2-sp-5);display:flex;flex-direction:column;gap:var(--v2-sp-6)}.v2 .native .pg-turn{display:flex;flex-direction:column;gap:var(--v2-sp-3)}.v2 .native .pg-user{align-self:flex-end;max-width:min(720px,85%);padding:var(--v2-sp-3) var(--v2-sp-4);border:1px solid var(--v2-line);border-radius:var(--v2-r-lg);background:var(--v2-surface)}.v2 .native .pg-user-head,.v2 .native .pg-reply-head{display:flex;align-items:center;gap:var(--v2-sp-2);min-height:28px}.v2 .native .pg-user-body,.v2 .native .pg-reply-body{margin:var(--v2-sp-1) 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;font-size:var(--v2-fs-sm)}.v2 .native .pg-edit{display:flex;flex-direction:column;gap:var(--v2-sp-2);min-width:min(560px,70vw)}.v2 .native .pg-edit textarea{width:100%;resize:vertical}.v2 .native .pg-actions{display:inline-flex;align-items:center;gap:2px;margin-left:auto;opacity:0;transition:opacity .12s}.v2 .native .pg-user:hover .pg-actions,.v2 .native .pg-user:focus-within .pg-actions,.v2 .native .pg-reply:hover .pg-actions,.v2 .native .pg-reply:focus-within .pg-actions{opacity:1}.v2 .native .pg-replies{display:grid;gap:var(--v2-sp-3)}.v2 .native .pg-reply{display:flex;flex-direction:column;min-width:0;padding:var(--v2-sp-3) var(--v2-sp-4);border:1px solid var(--v2-line);border-radius:var(--v2-r-lg);background:var(--v2-surface-2)}.v2 .native .pg-reply.is-failed{border-color:color-mix(in srgb,var(--v2-danger) 40%,var(--v2-line))}.v2 .native .pg-reply-body.danger{color:var(--v2-danger)}.v2 .native .pg-reply-foot{display:flex;flex-wrap:wrap;gap:var(--v2-sp-1) var(--v2-sp-3);margin-top:var(--v2-sp-2);padding-top:var(--v2-sp-2);border-top:1px solid var(--v2-line)}.v2 .native .pg-reply-foot span{display:inline-flex;align-items:center;gap:4px}.v2 .native .pg-caret{display:inline-block;width:6px;height:1em;margin-left:2px;vertical-align:text-bottom;background:var(--v2-brand);animation:pg-caret 1s steps(2,start) infinite}@keyframes pg-caret{to{visibility:hidden}}.v2 .native .pg-composer{display:flex;flex-direction:column;gap:var(--v2-sp-2);padding:var(--v2-sp-3) var(--v2-sp-5) var(--v2-sp-4);border-top:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .pg-composer textarea{width:100%;resize:vertical;min-height:72px}.v2 .native .pg-composer-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--v2-sp-3)}@media(max-width:900px){.v2 .native .pg{grid-template-columns:minmax(0,1fr)}.v2 .native .pg-rail{display:none}.v2 .native .pg-user{max-width:100%}.v2 .native .pg-replies{grid-template-columns:minmax(0,1fr)!important}}.v2 .native .invite-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr) auto;gap:var(--v2-sp-3);align-items:end}.v2 .native .invite-row .field{min-width:0}.v2 .native .invite-row .label:empty{display:none}.v2 .native .invite-result{display:flex;flex-direction:column;gap:var(--v2-sp-2);padding:var(--v2-sp-3) 0;border-top:1px solid var(--v2-line)}.v2 .native .invite-result:first-child{border-top:0;padding-top:0}.v2 .native .invite-result-head{display:flex;align-items:center;gap:var(--v2-sp-2);min-width:0}.v2 .native .invite-result-head .email{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .native .invite-accept{max-width:560px;margin:var(--v2-sp-8) auto 0}.v2 .native .invite-accept .card-body>.stack>.row{justify-content:space-between}.v2 .native .role-editor{display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .native .role-editor .check-list{border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);padding:0 var(--v2-sp-3)}@media(max-width:760px){.v2 .native .invite-row{grid-template-columns:minmax(0,1fr) auto}.v2 .native .invite-row .field:nth-child(2){grid-column:1 / 2}}.v2 .native .form-aside .facts-rows .fact dt{flex-basis:110px}.v2 .native .overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--v2-sp-5);align-items:start}.v2 .native .overview-identity{display:flex;align-items:center;gap:var(--v2-sp-3);min-width:0}.v2 .native .overview-identity .stack{min-width:0;gap:2px}.v2 .native .overview-identity .name{font-weight:600;font-size:var(--v2-fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .native .task-row{display:flex;align-items:center;gap:var(--v2-sp-3);padding:9px var(--v2-sp-4);border-bottom:1px solid var(--v2-line);color:inherit;min-width:0}.v2 .native .task-row:last-child{border-bottom:0}.v2 .native .task-row:hover{background:var(--v2-surface-2);color:inherit}.v2 .native .task-row .task-icon{width:28px;height:28px;border-radius:var(--v2-r-sm);display:grid;place-items:center;background:var(--v2-warn-soft);color:var(--v2-warn);flex:none}.v2 .native .task-row .task-icon.info{background:var(--v2-info-soft);color:var(--v2-info)}.v2 .native .task-row .stack{flex:1;min-width:0;gap:1px}.v2 .native .task-row .stack>:last-child{font-size:var(--v2-fs-xs);color:var(--v2-faint)}.v2 .native .task-row>svg:last-child{color:var(--v2-faint);flex:none}.v2 .native .logo-field{display:flex;align-items:flex-start;gap:var(--v2-sp-4)}.v2 .native .logo-field .stack{flex:1;min-width:0}@media(max-width:1100px){.v2 .native .overview-grid{grid-template-columns:minmax(0,1fr)}}.v2 .native .card>.table-pager{border-left:0;border-right:0;border-bottom:0;border-top:1px solid var(--v2-line)}.v2 .native a.list-row,.v2 .native button.list-row{width:100%;color:inherit;text-decoration:none;background:transparent;border-left:0;border-right:0;border-top:0;font:inherit;text-align:left;cursor:pointer}.v2 .native a.list-row:hover,.v2 .native button.list-row:hover{background:var(--v2-surface-2)}.v2 .native .adm-task>svg:last-child{color:var(--v2-faint);flex:none}.v2 .native .adm-policy{display:grid;gap:var(--v2-sp-5);grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start}.v2 .native .adm-policy-list{max-height:640px;overflow:auto}.v2 .native .adm-policy-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:var(--v2-sp-3) var(--v2-sp-4);border:0;border-bottom:1px solid var(--v2-line);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.v2 .native .adm-policy-item:last-child{border-bottom:0}.v2 .native .adm-policy-item:hover{background:var(--v2-surface-2)}.v2 .native .adm-policy-item[aria-current=true]{background:var(--v2-selection)}.v2 .native .adm-policy-item code{overflow-wrap:anywhere}@media(max-width:900px){.v2 .native .adm-policy{grid-template-columns:minmax(0,1fr)}.v2 .native .adm-policy-list{max-height:260px}}.v2 .native .toolbar .adm-toolbar-input{width:220px}.v2 .native .toolbar .v2sselect{min-width:200px}.v2 .native .sandbox-contract{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--v2-sp-6);align-items:start}@media(max-width:900px){.v2 .native .sandbox-contract{grid-template-columns:minmax(0,1fr)}}.v2 .native .sandbox-schema{display:grid;gap:var(--v2-sp-2);align-content:start}.v2 .native .sandbox-schema-row{display:grid;grid-template-columns:minmax(0,1fr) 108px auto auto;gap:var(--v2-sp-2);align-items:center}.v2 .native .sandbox-schema-row.read{grid-template-columns:minmax(0,1fr) auto auto;min-height:var(--v2-control-h);padding:0 var(--v2-sp-3);border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);font-size:var(--v2-fs-sm)}.v2 .native .sandbox-type{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);color:var(--v2-muted);padding:1px 6px;border:1px solid var(--v2-line);border-radius:var(--v2-r-full);background:var(--v2-surface)}.v2 .native .sandbox-issues{display:grid;gap:var(--v2-sp-1);margin:0;padding:0;list-style:none}.v2 .native .sandbox-issue{padding:6px 9px;border:1px solid var(--v2-danger);border-radius:var(--v2-r-sm);background:var(--v2-danger-soft);font-size:var(--v2-fs-xs);color:var(--v2-ink)}.v2 .native .sandbox-issue-where{font-family:var(--v2-mono);color:var(--v2-muted)}.v2 .native .sandbox-endpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--v2-sp-6);align-items:start}@media(max-width:900px){.v2 .native .sandbox-endpoints{grid-template-columns:minmax(0,1fr)}}.v2 .native .sandbox-node-list{display:grid;gap:var(--v2-sp-1);margin:0;padding:0;list-style:none}.v2 .native .sandbox-node-list li{display:flex;align-items:center;flex-wrap:wrap;gap:var(--v2-sp-2);min-height:30px;padding:3px var(--v2-sp-3);border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);font-size:var(--v2-fs-sm)}.v2 .native .sandbox-node-error{flex-basis:100%}.v2 .native .sandbox-preview{display:grid;gap:var(--v2-sp-1);justify-items:start}.v2 .native .sandbox-preview img{max-width:100%;max-height:220px;object-fit:contain;border-radius:var(--v2-r-sm);border:1px solid var(--v2-line)}.v2 .native .sandbox-preview audio{width:100%}.v2 .native .sandbox-outputs .codeblock pre{padding-right:var(--v2-sp-10)}.v2 .native .sandbox-edge-list{margin:0;padding-left:var(--v2-sp-5);font-size:var(--v2-fs-sm)}.v2 .native .sandbox-studio{display:grid;grid-template-columns:208px minmax(0,1fr) 292px;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"top top top" "palette canvas inspector" "palette bottom bottom";height:calc(100vh - var(--v2-header-h));background:var(--v2-paper)}.v2 .native .sandbox-studio-state{padding:var(--v2-sp-10) var(--v2-sp-6)}.v2 .native .sandbox-topbar{grid-area:top;display:flex;align-items:center;gap:var(--v2-sp-4);min-height:48px;padding:0 var(--v2-sp-4);border-bottom:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .sandbox-topbar-where{flex:1;min-width:120px;overflow:hidden}.v2 .native .sandbox-topbar-where .breadcrumb{margin:0;white-space:nowrap}.v2 .native .sandbox-topbar-revision{display:flex;align-items:center;gap:var(--v2-sp-3);flex:none}.v2 .native .sandbox-topbar-revision select{width:auto;max-width:210px;height:28px;padding-top:0;padding-bottom:0;font-size:var(--v2-fs-sm)}.v2 .native .sandbox-topbar-actions{display:flex;align-items:center;gap:var(--v2-sp-2);flex:none}.v2 .native .sandbox-dirty{display:inline-flex;align-items:center;gap:6px;font-size:var(--v2-fs-xs);font-weight:600;color:var(--v2-warn);white-space:nowrap}.v2 .native .sandbox-dirty .dot{width:8px;height:8px;border-radius:50%;background:var(--v2-warn)}.v2 .native .sandbox-palette{grid-area:palette;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .sandbox-palette-body{display:flex;flex-direction:column;gap:var(--v2-sp-3);min-height:0;height:100%;padding:var(--v2-sp-3)}.v2 .native .sandbox-palette-body .search{width:100%}.v2 .native .sandbox-palette-groups{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .native .sandbox-palette-group{display:flex;flex-direction:column;gap:2px}.v2 .native .sandbox-palette-group>.eyebrow{padding:0 6px 4px}.v2 .native .sandbox-palette-item{display:flex;align-items:center;gap:8px;width:100%;min-height:28px;padding:4px 8px;border:1px solid transparent;border-radius:var(--v2-r-sm);background:transparent;color:var(--v2-ink-2);font:inherit;font-size:var(--v2-fs-sm);text-align:left;cursor:grab}.v2 .native .sandbox-palette-item svg{color:var(--v2-faint);flex:none}.v2 .native .sandbox-palette-item:hover{background:var(--v2-hover);color:var(--v2-ink);border-color:var(--v2-line)}.v2 .native .sandbox-palette-item:active{cursor:grabbing}.v2 .native .sandbox-palette-hint{padding:0 4px}.v2 .native .sandbox-canvas{grid-area:canvas;position:relative;display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--v2-surface-2)}.v2 .native .sandbox-flow{flex:1;min-height:0;position:relative}.v2 .native .sandbox-canvas .react-flow{position:relative;width:100%;height:100%}.v2 .native .sandbox-canvas .react-flow__attribution{background:transparent}.v2 .native .sandbox-canvas .react-flow__attribution a{color:var(--v2-faint)}.v2 .native .sandbox-canvas .react-flow__controls{box-shadow:var(--v2-shadow-sm);border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);overflow:hidden}.v2 .native .sandbox-canvas .react-flow__controls button{background:var(--v2-surface);border-bottom:1px solid var(--v2-line);color:var(--v2-ink);fill:var(--v2-ink);width:26px;height:26px}.v2 .native .sandbox-canvas .react-flow__controls button:hover{background:var(--v2-hover)}.v2 .native .sandbox-canvas .react-flow__edge-path{stroke:var(--v2-line-strong);stroke-width:1.5}.v2 .native .sandbox-canvas .react-flow__edge.selected .react-flow__edge-path{stroke:var(--v2-brand)}.v2 .native .sandbox-canvas .react-flow__connection-path{stroke:var(--v2-brand);stroke-width:1.5}.v2 .native .sandbox-canvas .react-flow__background{color:var(--v2-line)}.v2 .native .sandbox-inspector{grid-area:inspector;min-height:0;overflow-y:auto;scrollbar-width:thin;border-left:1px solid var(--v2-line);background:var(--v2-surface);padding:var(--v2-sp-4)}.v2 .native .sandbox-inspector .empty{padding:var(--v2-sp-8) var(--v2-sp-2)}.v2 .native .sandbox-inspector-body{display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .native .sandbox-inspector-head{display:flex;align-items:center;gap:var(--v2-sp-3);padding-bottom:var(--v2-sp-3);border-bottom:1px solid var(--v2-line)}.v2 .native .sandbox-inspector-foot{display:flex;justify-content:flex-end;padding-top:var(--v2-sp-3);border-top:1px solid var(--v2-line)}.v2 .native .sandbox-inspector textarea{font-family:var(--v2-mono);font-size:var(--v2-fs-sm);min-height:96px}.v2 .native .sandbox-bottom{grid-area:bottom;display:flex;flex-direction:column;height:300px;min-height:0;border-top:1px solid var(--v2-line);background:var(--v2-surface)}.v2 .native .sandbox-bottom.closed{height:auto}.v2 .native .sandbox-bottom-head{display:flex;align-items:center;padding:0 var(--v2-sp-3);border-bottom:1px solid var(--v2-line);flex:none}.v2 .native .sandbox-bottom-head .tabs{margin-bottom:0;border-bottom:0}.v2 .native .sandbox-bottom-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;padding:var(--v2-sp-4);display:flex;flex-direction:column;gap:var(--v2-sp-4)}.v2 .native .sandbox-bottom-body .banner{margin:0}.v2 .native .sandbox-run{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:var(--v2-sp-6);align-items:start}.v2 .native .sandbox-run-inputs{display:flex;flex-direction:column;gap:var(--v2-sp-3)}.v2 .native .sandbox-run-output{min-width:0}.v2 .native .sandbox-run-output .empty{padding:var(--v2-sp-6) var(--v2-sp-2)}.v2 .native .sandbox-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--v2-sp-3);font-size:var(--v2-fs-sm);color:var(--v2-muted)}.v2 .native .sandbox-node{width:200px;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);background:var(--v2-surface);color:var(--v2-ink);font-size:var(--v2-fs-xs);box-shadow:var(--v2-shadow-sm)}.v2 .native .sandbox-node.on{border-color:var(--v2-brand);box-shadow:0 0 0 2px var(--v2-brand-soft)}.v2 .native .sandbox-node.running{border-color:var(--v2-info);box-shadow:0 0 0 2px var(--v2-info-soft)}.v2 .native .sandbox-node.bad{border-color:var(--v2-danger);box-shadow:0 0 0 2px var(--v2-danger-soft)}.v2 .native .sandbox-node-head{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid var(--v2-line);background:var(--v2-surface-2);border-radius:var(--v2-r-sm) var(--v2-r-sm) 0 0;font-weight:600}.v2 .native .sandbox-node-head svg{color:var(--v2-muted);flex:none}.v2 .native .sandbox-node-head>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .native .sandbox-node-head input{height:22px;padding:0 6px;font-size:var(--v2-fs-xs);box-shadow:none}.v2 .native .sandbox-rename{width:20px;height:20px;padding:0;border:0;border-radius:var(--v2-r-sm);background:transparent;color:var(--v2-muted);cursor:pointer;opacity:0;display:inline-grid;place-items:center}.v2 .native .sandbox-node-head:hover .sandbox-rename,.v2 .native .sandbox-rename:focus-visible{opacity:1}.v2 .native .sandbox-node-body{display:flex;flex-direction:column;gap:4px;padding:6px 8px 8px}.v2 .native .sandbox-port{position:relative;display:flex;align-items:center;gap:5px;min-height:18px;color:var(--v2-ink-2)}.v2 .native .sandbox-port.out{justify-content:flex-end;text-align:right}.v2 .native .sandbox-port-type{color:var(--v2-faint);font-size:10px}.v2 .native .sandbox-node-note{grid-column:1 / -1;padding-top:4px;color:var(--v2-faint);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v2 .native .sandbox-node-result{grid-column:1 / -1;padding-top:4px;color:var(--v2-muted);overflow-wrap:anywhere}.v2 .native .sandbox-node-result.succeeded{color:var(--v2-ok)}.v2 .native .sandbox-node-result.failed{color:var(--v2-danger)}.v2 .native .sandbox-node-result.running{color:var(--v2-info)}.v2 .native .sandbox-handle{width:9px;height:9px;border:1px solid var(--v2-line-strong);background:var(--v2-paper)}.v2 .native .sandbox-port .react-flow__handle{top:50%}.v2 .native .sandbox-port.in .react-flow__handle{left:-9px}.v2 .native .sandbox-port.out .react-flow__handle{right:-9px;left:auto}.v2 .native .sandbox-handle.text{background:var(--v2-brand)}.v2 .native .sandbox-handle.json{background:var(--v2-ember)}.v2 .native .sandbox-handle.number{background:var(--v2-ok)}.v2 .native .sandbox-handle.boolean{background:var(--v2-warn)}.v2 .native .sandbox-handle.image,.v2 .native .sandbox-handle.audio{background:var(--v2-info)}.v2 .native .sandbox-node-menu{position:fixed;z-index:40;display:flex;flex-direction:column;gap:var(--v2-sp-2);width:288px;max-height:350px;padding:var(--v2-sp-2);border:1px solid var(--v2-line);border-radius:var(--v2-r);background:var(--v2-surface);box-shadow:var(--v2-shadow-pop)}.v2 .native .sandbox-node-menu input{min-width:0;flex:1;height:28px}.v2 .native .sandbox-node-menu-list{display:flex;flex-direction:column;gap:1px;overflow-y:auto;min-height:0;scrollbar-width:thin}.v2 .native .sandbox-node-menu .sandbox-palette-item{cursor:pointer}@media(max-width:1100px){.v2 .native .sandbox-studio{grid-template-columns:184px minmax(0,1fr) 260px}}.v2 .native .sandbox-strips{display:flex;flex-direction:column;gap:var(--v2-sp-2);padding:var(--v2-sp-2) var(--v2-sp-3);flex:none;max-height:55%;overflow-y:auto;scrollbar-width:thin}.v2 .native .sandbox-notes{margin:4px 0 0;padding-left:var(--v2-sp-4);font-size:var(--v2-fs-xs);line-height:1.5}.v2 .native .sandbox-strips:empty{display:none}.v2 .native .sandbox-strips .banner{margin:0}.v2 .native .sandbox-strip-note{display:flex;align-items:center;gap:6px;padding:0 var(--v2-sp-1);font-size:var(--v2-fs-xs);color:var(--v2-muted)}.v2 .native .sandbox-strip-note svg{color:var(--v2-warn);flex:none}.v2 .native .sandbox-strip-note strong{color:var(--v2-ink-2)}.v2 .native .sandbox-strip{border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface);font-size:var(--v2-fs-sm)}.v2 .native .sandbox-strip>summary{cursor:pointer;padding:6px var(--v2-sp-3);color:var(--v2-ink-2);font-weight:600;-webkit-user-select:none;user-select:none}.v2 .native .sandbox-strip-body{display:flex;flex-direction:column;gap:var(--v2-sp-2);padding:0 var(--v2-sp-3) var(--v2-sp-3)}.v2 .native .sandbox-strip-body textarea{min-height:96px;max-width:720px;font-size:var(--v2-fs-sm)}.v2 .native .sandbox-timing{flex-direction:row;flex-wrap:wrap;gap:var(--v2-sp-6)}.v2 .native .sandbox-timing dl,.v2 .native .sandbox-details dl{display:grid;grid-template-columns:1fr auto;gap:3px var(--v2-sp-4);margin:0;min-width:300px}.v2 .native .sandbox-timing dt,.v2 .native .sandbox-details dt{color:var(--v2-muted)}.v2 .native .sandbox-timing dd,.v2 .native .sandbox-details dd{margin:0;font-variant-numeric:tabular-nums;text-align:right}.v2 .native .sandbox-timing p{margin:0;max-width:520px;color:var(--v2-muted);font-size:var(--v2-fs-xs);line-height:1.5}.v2 .native .sandbox-divider{width:1px;height:18px;background:var(--v2-line);margin:0 var(--v2-sp-1)}.v2 .native .sandbox-topbar-actions .switch{margin-right:var(--v2-sp-2)}.v2 .native .sandbox-node.kind-chat{width:344px}.v2 .native .sandbox-node.kind-media{width:288px}.v2 .native .sandbox-node.kind-input{width:264px}.v2 .native .sandbox-node.kind-output{width:320px}.v2 .native .sandbox-node.dim{opacity:.5}.v2 .native .sandbox-node-icon{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:4px;color:var(--v2-brand);background:var(--v2-brand-soft);flex:none}.v2 .native .sandbox-node-head.group-text .sandbox-node-icon{color:var(--v2-ok);background:var(--v2-ok-soft)}.v2 .native .sandbox-node-head.group-numbers .sandbox-node-icon{color:var(--v2-warn);background:var(--v2-warn-soft)}.v2 .native .sandbox-node-head.group-json .sandbox-node-icon{color:var(--v2-ember);background:var(--v2-ember-soft)}.v2 .native .sandbox-node-head.group-control .sandbox-node-icon{color:var(--v2-danger);background:var(--v2-danger-soft)}.v2 .native .sandbox-node-head.group-references .sandbox-node-icon,.v2 .native .sandbox-node-head.group-boundary .sandbox-node-icon{color:var(--v2-info);background:var(--v2-info-soft)}.v2 .native .sandbox-node-title{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .native .sandbox-state{display:inline-flex;color:var(--v2-muted);flex:none}.v2 .native .sandbox-state.succeeded{color:var(--v2-ok)}.v2 .native .sandbox-state.failed{color:var(--v2-danger)}.v2 .native .sandbox-state.running{color:var(--v2-info)}.v2 .native .spin svg,.v2 .native .spin{animation:sandbox-spin 1s linear infinite}@keyframes sandbox-spin{to{transform:rotate(360deg)}}@keyframes sandbox-blink{50%{opacity:0}}.v2 .native .sandbox-ports{display:grid;grid-template-columns:1fr 1fr;gap:2px 8px;padding:6px 8px;border-bottom:1px solid var(--v2-line)}.v2 .native .sandbox-node.kind-utility .sandbox-ports{border-bottom:0}.v2 .native .sandbox-node.kind-utility .sandbox-node-body{border-top:1px solid var(--v2-line)}.v2 .native .sandbox-node-note.mono{font-family:var(--v2-mono)}.v2 .native .sandbox-node-form{display:flex;flex-direction:column;gap:6px;padding:8px 10px 10px;cursor:default}.v2 .native .sandbox-node-form input,.v2 .native .sandbox-node-form select,.v2 .native .sandbox-node-form textarea{font-size:var(--v2-fs-xs)}.v2 .native .sandbox-node-form input,.v2 .native .sandbox-node-form select{height:26px;padding-top:0;padding-bottom:0}.v2 .native .sandbox-node-form textarea{min-height:110px;max-height:320px;line-height:1.5;resize:vertical}.v2 .native .sandbox-field-label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:var(--v2-fs-xs);font-weight:600;color:var(--v2-ink-2)}.v2 .native .sandbox-field-label>span{font-weight:400;color:var(--v2-faint)}.v2 .native .sandbox-field{display:flex;flex-direction:column;gap:3px;min-width:0}.v2 .native .sandbox-field>span{display:flex;justify-content:space-between;gap:6px;font-size:var(--v2-fs-xs);color:var(--v2-muted)}.v2 .native .sandbox-field>span small{color:var(--v2-faint)}.v2 .native .sandbox-field small{font-size:10px;color:var(--v2-faint)}.v2 .native .sandbox-two{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end}.v2 .native .sandbox-small-note{font-size:10px;color:var(--v2-faint);padding-bottom:6px}.v2 .native .sandbox-hint{font-size:10px;color:var(--v2-faint)}.v2 .native .sandbox-model{display:flex;flex-direction:column;gap:3px}.v2 .native .sandbox-model-button{display:flex;align-items:center;gap:6px;width:100%;min-height:28px;padding:3px 8px;border:1px solid var(--v2-line-strong);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);color:var(--v2-ink);font:inherit;font-size:var(--v2-fs-sm);font-weight:600;text-align:left;cursor:pointer}.v2 .native .sandbox-model-button>.truncate{flex:1;min-width:0}.v2 .native .sandbox-model-button:hover:not(:disabled){border-color:var(--v2-brand);background:var(--v2-brand-wash)}.v2 .native .sandbox-model-button:disabled{cursor:default;opacity:.7}.v2 .native .sandbox-model-caption{font-size:10px;color:var(--v2-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2 .native .sandbox-progress{display:flex;align-items:center;gap:6px;font-size:var(--v2-fs-xs);color:var(--v2-info)}.v2 .native .sandbox-stream{max-height:140px;overflow:auto;padding:6px 8px;border:1px solid var(--v2-info);border-radius:var(--v2-r-sm);background:var(--v2-info-soft);font-size:var(--v2-fs-xs);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.v2 .native .sandbox-cursor{display:inline-block;width:5px;height:12px;margin-left:2px;vertical-align:text-bottom;background:var(--v2-brand);animation:sandbox-blink 1s infinite}.v2 .native .sandbox-details{font-size:var(--v2-fs-xs);color:var(--v2-muted);border-top:1px solid var(--v2-line);padding-top:4px}.v2 .native .sandbox-details>summary{cursor:pointer;padding:3px 0;color:var(--v2-ink-2);-webkit-user-select:none;user-select:none}.v2 .native .sandbox-details dl{min-width:0;margin:6px 0}.v2 .native .sandbox-details p{margin:4px 0 0;font-size:10px;line-height:1.5}.v2 .native .sandbox-details.received{border-top-color:var(--v2-danger)}.v2 .native .sandbox-details.received>summary{color:var(--v2-danger)}.v2 .native .sandbox-received{margin-top:4px}.v2 .native .sandbox-received>span{color:var(--v2-muted)}.v2 .native .sandbox-received pre,.v2 .native .sandbox-result pre{margin:3px 0 0;max-height:120px;overflow:auto;padding:5px 7px;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);color:var(--v2-ink);font-family:var(--v2-mono);font-size:var(--v2-fs-xs);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.v2 .native .sandbox-last{max-height:160px;overflow:auto;margin-top:4px;padding:6px 8px;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);color:var(--v2-ink);font-size:var(--v2-fs-xs);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.v2 .native .sandbox-inline-error{display:flex;gap:4px;align-items:flex-start;margin:0;padding:5px 7px;border:1px solid var(--v2-danger);border-radius:var(--v2-r-sm);background:var(--v2-danger-soft);color:var(--v2-ink);font-size:var(--v2-fs-xs);line-height:1.45;overflow-wrap:anywhere}.v2 .native .sandbox-result{display:flex;flex-direction:column;gap:2px;font-size:var(--v2-fs-xs)}.v2 .native .sandbox-result-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--v2-muted)}.v2 .native .sandbox-result.succeeded .sandbox-result-label{color:var(--v2-ok)}.v2 .native .sandbox-result.failed .sandbox-result-label{color:var(--v2-danger)}.v2 .native .sandbox-result p{margin:0;color:var(--v2-muted)}.v2 .native .sandbox-empty-value{color:var(--v2-faint);font-style:italic}.v2 .native .sandbox-media{display:flex;flex-direction:column;gap:3px}.v2 .native .sandbox-media img{max-height:180px}.v2 .native .sandbox-node-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 10px;border-top:1px solid var(--v2-line);font-size:10px;color:var(--v2-faint)}.v2 .native .sandbox-node-foot>span:last-child{display:inline-flex;align-items:center;gap:3px;color:var(--v2-brand)}.v2 .native .sandbox-chain{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border:1px solid transparent;border-radius:var(--v2-r-sm);background:transparent;color:var(--v2-brand);font:inherit;font-size:10px;font-weight:600;cursor:pointer}.v2 .native .sandbox-chain:hover:not(:disabled){border-color:var(--v2-line);background:var(--v2-brand-wash)}.v2 .native .sandbox-chain:disabled{opacity:.5;cursor:default}.v2 .native .sandbox-test-inputs{display:flex;flex-direction:column;gap:6px}.v2 .native .sandbox-test-inputs textarea{min-height:44px}.v2 .native .sandbox-test-inputs input[type=file]{height:auto;padding:3px}.v2 .native .sandbox-output-tools{display:flex;align-items:center;gap:8px;padding:4px 10px;border-bottom:1px solid var(--v2-line);font-size:10px;color:var(--v2-muted)}.v2 .native .sandbox-kind{font-size:9px;letter-spacing:.08em;padding:1px 4px;border:1px solid var(--v2-line-strong);border-radius:3px;color:var(--v2-ink-2)}.v2 .native .sandbox-output-port{display:flex;flex-direction:column;gap:3px}.v2 .native .sandbox-output-head{display:flex;align-items:center;gap:6px;font-size:var(--v2-fs-xs)}.v2 .native .sandbox-output-head .btn{margin-left:auto}.v2 .native .sandbox-output-text{min-height:72px;max-height:260px;overflow:auto;padding:6px 8px;border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);background:var(--v2-surface-2);font-size:var(--v2-fs-xs);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.v2 .native .sandbox-output-empty{min-height:56px;display:grid;place-items:center;padding:8px;border:1px dashed var(--v2-line-strong);border-radius:var(--v2-r-sm);color:var(--v2-faint);font-size:var(--v2-fs-xs);text-align:center}.v2 .native .sandbox-output-foot{display:flex;gap:10px;font-size:10px;color:var(--v2-ink-2)}.v2 .native .sandbox-output-foot i{font-style:normal;color:var(--v2-faint)}.v2 .native .sandbox-warn{color:var(--v2-warn);font-weight:600}.v2 .native .sandbox-canvas .react-flow__edge.edge-active .react-flow__edge-path{stroke:var(--v2-ok)}.v2 .native .sandbox-canvas .react-flow__edge.edge-live .react-flow__edge-path{stroke:var(--v2-info)}.v2 .native .sandbox-canvas .react-flow__edge.edge-skipped .react-flow__edge-path{stroke:var(--v2-line-strong);stroke-dasharray:5 5;opacity:.45}.v2 .native .sandbox-canvas .react-flow__edge.edge-idle .react-flow__edge-path{opacity:.6}.v2 .native .sandbox-canvas .react-flow__minimap{width:150px;height:96px;margin:12px;background:var(--v2-surface);border:1px solid var(--v2-line);border-radius:var(--v2-r-sm);box-shadow:var(--v2-shadow-sm)}.v2 .native .sandbox-canvas .react-flow__minimap-mask{fill:var(--v2-surface-2);fill-opacity:.7}.v2 .native .sandbox-canvas .react-flow__minimap-node{stroke:none;fill:var(--v2-line-strong)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-products{fill:var(--v2-brand)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-text{fill:var(--v2-ok)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-numbers{fill:var(--v2-warn)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-json{fill:var(--v2-ember)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-control{fill:var(--v2-danger)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-boundary,.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-references{fill:var(--v2-info)}.v2 .native .sandbox-canvas .react-flow__minimap-node.mm-failed{fill:var(--v2-danger)}.v2 .native .sandbox-context-actions{display:flex;flex-direction:column;gap:1px}.v2 .native .sandbox-context-actions>.xs{padding:2px 8px 6px}.v2 .native .sandbox-context-actions .sandbox-palette-item{cursor:pointer}.v2 .native .sandbox-context-actions .sandbox-palette-item.danger{color:var(--v2-danger)}.v2 .native .sandbox-context-actions .sandbox-palette-item.danger svg{color:var(--v2-danger)}.v2 .native .sandbox-palette-item:disabled{opacity:.5;cursor:default}.v2 .native .sandbox-palette-item.group-products svg{color:var(--v2-brand)}.v2 .native .sandbox-palette-item.group-text svg{color:var(--v2-ok)}.v2 .native .sandbox-palette-item.group-numbers svg{color:var(--v2-warn)}.v2 .native .sandbox-palette-item.group-json svg{color:var(--v2-ember)}.v2 .native .sandbox-palette-item.group-control svg{color:var(--v2-danger)}.v2 .native .sandbox-palette-item.group-references svg{color:var(--v2-info)}.v2 .native .sandbox-literal{display:flex;align-items:flex-start;gap:var(--v2-sp-2)}.v2 .native .sandbox-literal>input,.v2 .native .sandbox-literal>textarea{flex:1;min-width:0}.v2 .native .sandbox-inspector .sandbox-two{align-items:start}.v2 .native .sandbox-run{grid-template-columns:minmax(220px,300px) minmax(0,1fr)}.v2 .native .sandbox-run-side{display:flex;flex-direction:column;gap:var(--v2-sp-3)}.v2 .native .drawer-lg:has(.sandbox-browser){width:min(1000px,100%)}.v2 .native .sandbox-browser td:last-child,.v2 .native .sandbox-browser th:last-child{white-space:nowrap}.v2 .native .sandbox-browser table{font-size:var(--v2-fs-sm)}.v2 .native .sandbox-browser td:first-child{max-width:320px}.v2 .native .sandbox-browser .toolbar{padding:0}.v2 .native .sandbox-browser .toolbar-filters select{min-width:140px}.v2 .native .sandbox-browser-loading{padding:var(--v2-sp-8);text-align:center}.v2 .native .sandbox-browser .table-wrap{max-height:56vh;overflow:auto}.v2 .native .sandbox-try{display:flex;flex-direction:column;gap:var(--v2-sp-4);max-width:880px}.v2 .native .sandbox-try textarea{font-family:var(--v2-mono);font-size:var(--v2-fs-sm)}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-border-default: 1px solid #bbb;--xy-node-border-selected-default: 1px solid #555;--xy-handle-background-color-default: #333;--xy-selection-background-color-default: rgba(150, 150, 180, .1);--xy-selection-border-default: 1px dotted rgba(155, 155, 155, .8);--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default))}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border:var(--xy-node-border, var(--xy-node-border-default));color:var(--xy-node-color, var(--xy-node-color-default))}.react-flow__node-input.selected,.react-flow__node-input:focus,.react-flow__node-input:focus-visible,.react-flow__node-default.selected,.react-flow__node-default:focus,.react-flow__node-default:focus-visible,.react-flow__node-output.selected,.react-flow__node-output:focus,.react-flow__node-output:focus-visible,.react-flow__node-group.selected,.react-flow__node-group:focus,.react-flow__node-group:focus-visible{outline:none;border:var(--xy-node-border-selected, var(--xy-node-border-selected-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
