/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}:root{--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--leading-tight:1.2;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--tracking-tighter:-.02em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.04em;--tracking-widest:.1em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-0:0;--space-05:2px;--space-1:4px;--space-15:6px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-none:0;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:10px;--radius-full:9999px;--border-width:1px;--focus-ring-width:2px;--focus-ring-offset:2px;--dur-instant:50ms;--dur-fast:.15s;--dur-default:.2s;--dur-slow:.3s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:1000;--z-sticky:1100;--z-overlay:1200;--z-modal:1300;--z-popover:1400;--z-tooltip:1500;--z-toast:1600;--density-y:12px;--density-x:14px}:root[data-density=compact]{--density-y:8px;--density-x:12px}:root[data-fontfamily=inter]{--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}:root[data-fontfamily=plex]{--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}:root[data-fontfamily=system]{--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}:root[data-density=compact]{--density-y:6px;--density-x:10px;--density-row:28px;--density-gap:6px}:root[data-density=cozy]{--density-y:16px;--density-x:18px;--density-row:44px;--density-gap:16px}:root{--density-row:36px;--density-gap:10px}:root[data-density=compact] .card>header{padding:8px 12px}:root[data-density=compact] .card .body,:root[data-density=compact] .metric{padding:10px 12px}:root[data-density=compact] .tbl thead th,:root[data-density=compact] .tbl tbody td{padding:6px 10px}:root[data-density=compact] .btn{padding:5px 11px;font-size:12px}:root[data-density=compact] .side{padding:10px}:root[data-density=compact] .side .nav{padding:5px 10px;font-size:12px}:root[data-density=cozy] .card>header{padding:16px 20px}:root[data-density=cozy] .card .body,:root[data-density=cozy] .metric{padding:18px 20px}:root[data-density=cozy] .tbl thead th,:root[data-density=cozy] .tbl tbody td{padding:14px}:root[data-density=cozy] .btn{padding:9px 15px;font-size:14px}:root[data-density=cozy] .side{padding:18px 14px}:root[data-density=cozy] .side .nav{padding:10px 12px;font-size:14px}:root,:root[data-theme=graphite]{color-scheme:dark;--surface-0:oklch(17.5% .008 60);--surface-1:oklch(21.5% .009 65);--surface-2:oklch(25.5% .01 70);--surface-3:oklch(29.5% .011 75);--border-subtle:oklch(29.5% .01 70);--border-default:oklch(35.5% .012 75);--border-strong:oklch(44.5% .014 78);--text-primary:oklch(96.5% .005 80);--text-secondary:oklch(79.5% .008 75);--text-muted:oklch(62% .01 72);--text-disabled:oklch(44.5% .01 72);--text-on-accent:oklch(14% .02 240);--accent:oklch(70% .13 235);--accent-hover:oklch(76.5% .14 235);--accent-soft:oklch(70% .13 235/.14);--accent-muted:oklch(70% .13 235/.28);--success:oklch(73.5% .15 155);--success-soft:oklch(73.5% .15 155/.14);--success-strong:oklch(80% .16 155);--success-fg:oklch(14% .04 155);--warning:oklch(79% .155 78);--warning-soft:oklch(79% .155 78/.14);--warning-strong:oklch(84.5% .16 78);--warning-fg:oklch(18% .04 78);--danger:oklch(68% .2 22);--danger-soft:oklch(68% .2 22/.14);--danger-strong:oklch(74% .21 22);--danger-fg:oklch(16% .04 22);--info:oklch(72% .13 235);--info-soft:oklch(72% .13 235/.14);--info-strong:oklch(78% .14 235);--info-fg:oklch(14% .04 235);--ring:oklch(76.5% .14 235);--ring-offset:var(--surface-0);--viz-1:oklch(74% .14 235);--viz-2:oklch(76% .16 155);--viz-3:oklch(78% .15 78);--viz-4:oklch(72% .2 22);--viz-5:oklch(72% .14 295);--viz-6:oklch(76% .15 195);--viz-7:oklch(78% .13 330);--viz-8:oklch(74% .12 105);--elev-0:none;--elev-1:0 1px 2px #00000073, inset 0 1px 0 #ffffff08;--elev-2:0 2px 6px #00000080, inset 0 1px 0 #ffffff0a;--elev-3:0 6px 16px #0000008c, inset 0 1px 0 #ffffff0d;--elev-4:0 16px 40px #000000a6, inset 0 1px 0 #ffffff0f}:root[data-theme=nocturne]{color-scheme:dark;--surface-0:oklch(16.5% .032 265);--surface-1:oklch(21% .036 265);--surface-2:oklch(25.5% .04 265);--surface-3:oklch(30% .044 265);--border-subtle:oklch(29% .04 265);--border-default:oklch(36% .045 265);--border-strong:oklch(45% .05 265);--text-primary:oklch(96% .01 250);--text-secondary:oklch(79% .02 250);--text-muted:oklch(62% .025 255);--text-disabled:oklch(45.5% .03 260);--text-on-accent:oklch(14% .03 170);--accent:oklch(79% .16 165);--accent-hover:oklch(84.5% .17 165);--accent-soft:oklch(79% .16 165/.14);--accent-muted:oklch(79% .16 165/.28);--success:oklch(79% .16 165);--success-soft:oklch(79% .16 165/.14);--success-strong:oklch(84.5% .17 165);--success-fg:oklch(14% .04 165);--warning:oklch(81% .15 88);--warning-soft:oklch(81% .15 88/.14);--warning-strong:oklch(86.5% .155 88);--warning-fg:oklch(18% .04 88);--danger:oklch(69% .195 18);--danger-soft:oklch(69% .195 18/.14);--danger-strong:oklch(75% .205 18);--danger-fg:oklch(15% .04 18);--info:oklch(74% .13 220);--info-soft:oklch(74% .13 220/.14);--info-strong:oklch(79.5% .14 220);--info-fg:oklch(14% .04 220);--ring:oklch(84.5% .17 165);--ring-offset:var(--surface-0);--viz-1:oklch(80% .16 165);--viz-2:oklch(76% .13 220);--viz-3:oklch(80% .15 88);--viz-4:oklch(74% .18 18);--viz-5:oklch(74% .14 295);--viz-6:oklch(78% .15 195);--viz-7:oklch(78% .13 330);--viz-8:oklch(74% .12 125);--elev-0:none;--elev-1:0 1px 2px #0000008c, inset 0 1px 0 #ffffff09;--elev-2:0 2px 8px #0009, inset 0 1px 0 #ffffff0b;--elev-3:0 8px 20px #000000a6, inset 0 1px 0 #ffffff0e;--elev-4:0 18px 44px #000000bf, inset 0 1px 0 #fff1}:root[data-theme=parchemin]{color-scheme:light;--surface-0:oklch(97.5% .006 85);--surface-1:oklch(99.5% .004 85);--surface-2:oklch(100% 0 0);--surface-3:oklch(100% 0 0);--border-subtle:oklch(92% .008 85);--border-default:oklch(87% .01 82);--border-strong:oklch(77% .012 80);--text-primary:oklch(21.5% .015 260);--text-secondary:oklch(42% .012 260);--text-muted:oklch(56% .01 258);--text-disabled:oklch(72% .008 255);--text-on-accent:oklch(98.5% .002 85);--accent:oklch(40% .14 255);--accent-hover:oklch(34.5% .15 255);--accent-soft:oklch(40% .14 255/.1);--accent-muted:oklch(40% .14 255/.22);--success:oklch(48.5% .13 150);--success-soft:oklch(48.5% .13 150/.1);--success-strong:oklch(41% .14 150);--success-fg:oklch(98.5% .002 85);--warning:oklch(58% .15 70);--warning-soft:oklch(58% .15 70/.1);--warning-strong:oklch(50% .16 65);--warning-fg:oklch(98.5% .002 85);--danger:oklch(50.5% .21 25);--danger-soft:oklch(50.5% .21 25/.1);--danger-strong:oklch(44% .215 25);--danger-fg:oklch(98.5% .002 85);--info:oklch(44% .13 235);--info-soft:oklch(44% .13 235/.1);--info-strong:oklch(38% .14 235);--info-fg:oklch(98.5% .002 85);--ring:oklch(40% .14 255);--ring-offset:var(--surface-0);--viz-1:oklch(45% .14 255);--viz-2:oklch(48% .13 150);--viz-3:oklch(55% .15 70);--viz-4:oklch(52% .21 25);--viz-5:oklch(48% .16 295);--viz-6:oklch(52% .14 195);--viz-7:oklch(52% .18 340);--viz-8:oklch(50% .11 115);--elev-0:none;--elev-1:0 1px 2px #1216280f;--elev-2:0 2px 6px #12162814;--elev-3:0 6px 16px #1216281a;--elev-4:0 16px 40px #12162824}:root[data-theme=mercure]{color-scheme:light;--surface-0:oklch(98% .003 250);--surface-1:oklch(100% 0 0);--surface-2:oklch(100% 0 0);--surface-3:oklch(100% 0 0);--border-subtle:oklch(93% .006 250);--border-default:oklch(88% .008 250);--border-strong:oklch(78% .01 252);--text-primary:oklch(20% .02 270);--text-secondary:oklch(41% .015 270);--text-muted:oklch(55.5% .012 268);--text-disabled:oklch(72% .008 265);--text-on-accent:oklch(98.5% .002 85);--accent:oklch(52% .14 285);--accent-hover:oklch(46% .15 285);--accent-soft:oklch(52% .14 285/.1);--accent-muted:oklch(52% .14 285/.22);--success:oklch(49.5% .13 150);--success-soft:oklch(49.5% .13 150/.1);--success-strong:oklch(42% .14 150);--success-fg:oklch(98.5% .002 85);--warning:oklch(58% .15 70);--warning-soft:oklch(58% .15 70/.1);--warning-strong:oklch(50% .16 65);--warning-fg:oklch(98.5% .002 85);--danger:oklch(51% .21 25);--danger-soft:oklch(51% .21 25/.1);--danger-strong:oklch(45% .215 25);--danger-fg:oklch(98.5% .002 85);--info:oklch(48% .14 245);--info-soft:oklch(48% .14 245/.1);--info-strong:oklch(42% .15 245);--info-fg:oklch(98.5% .002 85);--ring:oklch(52% .14 285);--ring-offset:var(--surface-0);--viz-1:oklch(52% .14 285);--viz-2:oklch(49% .13 150);--viz-3:oklch(55% .15 70);--viz-4:oklch(52% .21 25);--viz-5:oklch(48% .14 255);--viz-6:oklch(52% .14 195);--viz-7:oklch(52% .18 340);--viz-8:oklch(50% .11 115);--elev-0:none;--elev-1:0 1px 2px #14182d0f;--elev-2:0 2px 6px #14182d14;--elev-3:0 6px 16px #14182d1a;--elev-4:0 16px 40px #14182d24}html[data-theme=graphite],html[data-theme=nocturne]{--bezel-hi:#ffffff0f}html[data-theme=parchemin],html[data-theme=mercure]{--bezel-hi:#0000000a}.ds-h1{font-family:var(--font-sans);font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tighter);color:var(--text-primary)}.ds-h2{font-family:var(--font-sans);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tighter);color:var(--text-primary)}.ds-h3{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--text-primary)}.ds-body{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--text-secondary)}.ds-label{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted)}.ds-mono{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums;color:var(--text-secondary)}.ds-metric{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-tighter);color:var(--text-primary)}.ds-code{font-family:var(--font-mono);font-size:var(--text-xs);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--accent);padding:2px 6px}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body{background:var(--surface-0);color:var(--text-primary);margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-sm);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh}*{box-sizing:border-box}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}*{scrollbar-color:var(--border-default) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border:2px solid var(--surface-0);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}:focus{outline:none}:focus-visible{outline:var(--focus-ring-width) solid var(--ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-md)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[role=switch]:focus-visible,[role=tab]:focus-visible{box-shadow:0 0 0 var(--focus-ring-offset) var(--surface-0),0 0 0 calc(var(--focus-ring-width) + var(--focus-ring-offset)) var(--ring);outline:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only:focus,.sr-only:focus-visible{clip:auto;background:var(--surface-1);border:1px solid var(--accent);border-radius:var(--radius-md);width:auto;height:auto;z-index:var(--z-toast);color:var(--text-primary);padding:8px 12px;font-size:13px;position:fixed;inset:8px auto auto 8px}.label{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.muted{color:var(--text-muted)}.secondary{color:var(--text-secondary)}.primary{color:var(--text-primary)}.app-shell{--sidebar-w:232px;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns var(--dur-default) var(--ease-out);display:grid;position:relative}:root[data-sidebar=collapsed] .app-shell{--sidebar-w:64px}.sidebar-toggle{top:17px;left:var(--sidebar-w);background:var(--surface-2);border:1px solid var(--border-default);width:22px;height:22px;color:var(--text-muted);cursor:pointer;z-index:calc(var(--z-sticky) + 1);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),left var(--dur-default) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;transform:translate(-50%);box-shadow:0 2px 6px #00000040}.sidebar-toggle:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:translate(-50%)scale(1.1)}.app-main{flex-direction:column;min-width:0;min-height:100vh;display:flex}.side{background:var(--surface-1);border-right:1px solid var(--border-subtle);flex-direction:column;gap:4px;height:100vh;padding:0 12px 14px;display:flex;position:sticky;top:0;overflow:hidden}.side>:first-child{margin-top:0!important}.side .brand{border-bottom:1px solid var(--border-subtle);box-sizing:border-box;flex-shrink:0;align-items:center;gap:12px;height:56px;margin:0 -12px;padding:0 20px;display:flex}.side .brand>.logo-wrap{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.side .brand>.logo-wrap svg{width:36px;height:36px;display:block}.side .brand-text{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.side .brand .brand-line{align-items:center;gap:6px;min-height:14px;line-height:1;display:flex}.side .brand .n{font-family:var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);white-space:nowrap;font-size:12.5px;font-weight:700;line-height:1}.side .brand .module-badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-muted);-webkit-user-select:none;user-select:none;align-self:center;padding:1px 5px;font-size:9px;font-weight:600;line-height:1}:root[data-sidebar=collapsed] .side{padding:0 8px 14px}:root[data-sidebar=collapsed] .side .brand{justify-content:center;gap:0;margin:0 -8px;padding:0}:root[data-sidebar=collapsed] .side .brand-text,:root[data-sidebar=collapsed] .side .group,:root[data-sidebar=collapsed] .side .nav>span:not(.c):not(.badge),:root[data-sidebar=collapsed] .side .nav .c{display:none}:root[data-sidebar=collapsed] .side .nav{justify-content:center;padding:7px 6px}:root[data-sidebar=collapsed] .side .foot{justify-content:center}:root[data-sidebar=collapsed] .side .foot>div{display:none}:root[data-sidebar=collapsed] .side .brand .logo-wrap,:root[data-sidebar=collapsed] .side .brand .logo-wrap svg{width:32px;height:32px}.side .group{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:12px 10px 4px;font-size:10px;font-weight:600}.side .nav{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:7px 10px;font-size:13px;font-weight:500;line-height:1.2;text-decoration:none;display:flex}.side .nav:hover{background:var(--surface-2);color:var(--text-primary)}.side .nav.act{background:var(--accent-soft);color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.side .nav .c{font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;font-size:10px}.side .foot{border-top:1px solid var(--border-subtle);align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.side .foot .av{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border:1px solid var(--accent-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:inline-flex}.side .foot .settings-btn{border-radius:var(--radius-md);border:1px solid var(--border-subtle);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.side .foot .settings-btn:hover{background:var(--surface-2);color:var(--text-primary);border-color:var(--border-default)}.topbar .ctrl{border-radius:var(--radius-lg);height:32px;font-family:var(--font-sans);background:var(--surface-1);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:inline-flex}.topbar .ctrl:hover{border-color:var(--border-strong);background:var(--surface-2);color:var(--text-primary)}.topbar .ctrl.primary{background:var(--accent);color:var(--text-on-accent);border-color:#0000;font-weight:600}.topbar .ctrl.primary:hover{background:var(--accent-hover)}.topbar .page-title{color:var(--text-primary);letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.15}.topbar .page-sub{color:var(--text-muted);margin-top:2px;font-size:12px;line-height:1.2}.topbar{border-bottom:1px solid var(--border-subtle);background:var(--surface-0);flex-shrink:0;align-items:center;gap:14px;height:56px;padding:0 20px;display:flex}@supports (color:color-mix(in lab,red,red)){.topbar{background:color-mix(in oklab,var(--surface-0) 92%,transparent)}}.topbar{-webkit-backdrop-filter:blur(14px);z-index:var(--z-sticky);position:sticky;top:0}.topbar .title{color:var(--text-primary);letter-spacing:-.01em;font-size:15px;font-weight:600}.topbar .sub{font-family:var(--font-mono);color:var(--text-muted);border-left:1px solid var(--border-subtle);letter-spacing:.05em;margin-left:10px;padding-left:10px;font-size:11px}.topbar input.search{background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-lg);height:30px;color:var(--text-primary);font-family:var(--font-sans);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23889' stroke-width='1.8' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");background-position:9px;background-repeat:no-repeat;outline:none;flex:0 360px;padding:0 12px 0 28px;font-size:12px}.topbar input.search:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.content{flex:1;width:100%;max-width:1280px;margin-inline:auto;padding:24px 28px 40px;overflow-x:hidden}@media(max-width:1024px){.content{padding:18px 16px 32px}.topbar{gap:8px;padding:0 14px}.topbar .ctrl{min-width:0;padding:0 10px}.topbar input.search{flex:0 220px}.app-shell{--sidebar-w:200px}}@media(max-width:768px){.app-shell{--sidebar-w:64px}:root .app-shell{grid-template-columns:64px 1fr}.side{padding:0 8px 14px}.side .brand{justify-content:center;gap:0;margin:0 -8px;padding:0}.side .brand-text{display:none}.side .brand .logo-wrap,.side .brand .logo-wrap svg{width:32px;height:32px}.side .group,.side .nav>span:not(.c):not(.badge),.side .foot>div{display:none}.side .nav{justify-content:center;padding:7px 6px}.side .foot{justify-content:center}.sidebar-toggle,.topbar .page-sub{display:none}.topbar{gap:6px;padding:0 12px}}.sp{flex:1}.h-row{align-items:center;display:flex}.h-col{flex-direction:column;display:flex}.btn{font-family:var(--font-sans);border-radius:var(--radius-lg);cursor:pointer;height:36px;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:var(--surface-2);color:var(--text-primary);border:1px solid #0000;border-color:var(--border-default);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-3)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:#0000}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary)}.btn.danger{background:var(--danger);color:var(--danger-fg);border-color:#0000}.btn.danger:hover:not(:disabled){background:var(--danger-strong)}.btn.sm{height:32px;padding:0 12px;font-size:12px}.btn.lg{height:40px;padding:0 18px;font-size:14px}.card{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.card>header{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:12px 16px;display:flex}.card>header h3{color:var(--text-primary);margin:0;font-size:13px;font-weight:600}.card>header .s{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.card .body{padding:14px 16px}.metric{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--elev-1);padding:14px 16px;position:relative;overflow:hidden}.metric:before{content:"";background:var(--surface-0);border-right:1px solid var(--border-default);pointer-events:none;width:14px;height:14px;position:absolute;top:0;left:0;transform:rotate(45deg)translate(-10px,-10px)}.metric:after{content:"";background:linear-gradient(to right,transparent,var(--bezel-hi,#ffffff14),transparent);pointer-events:none;height:1px;position:absolute;top:0;left:0;right:0}.metric .k{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:10px;font-weight:600}.metric .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-primary);letter-spacing:-.01em;font-size:26px;font-weight:500;line-height:1.1}.metric .v .u{font-family:var(--font-sans);color:var(--text-muted);margin-left:3px;font-size:12px}.metric .d{font-family:var(--font-sans);color:var(--text-muted);align-items:center;gap:6px;margin-top:4px;font-size:12px;display:flex}.metric .tr{font-family:var(--font-mono);font-size:11px}.metric .tr.up{color:var(--success)}.metric .tr.dn{color:var(--danger)}.badge{border-radius:var(--radius-lg);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge .dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.badge.ok{background:var(--success-soft);color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.badge.ok{border-color:color-mix(in oklab,var(--success) 30%,transparent)}}.badge.ko{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.badge.ko{border-color:color-mix(in oklab,var(--danger) 30%,transparent)}}.badge.run{background:var(--info-soft);color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.badge.run{border-color:color-mix(in oklab,var(--info) 30%,transparent)}}.badge.wr{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.badge.wr{border-color:color-mix(in oklab,var(--warning) 30%,transparent)}}.badge.nt{background:var(--surface-2);color:var(--text-secondary);border-color:var(--border-default)}.badge.run .dot{background:var(--info);animation:pulse 1.4s var(--ease-in-out) infinite}.badge.ok .dot{background:var(--success)}.badge.ko .dot{background:var(--danger)}.badge.wr .dot{background:var(--warning)}.badge.nt .dot{background:var(--text-muted)}.badge.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@keyframes pulse{50%{opacity:.5}}.lab-copy-btn:hover{color:var(--accent)!important;border-color:var(--accent)!important;background:var(--accent-soft)!important}.lab-copy-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes lab-emergency-pulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--danger) 55%,transparent);transform:scale(1)}50%{box-shadow:0 0 0 6px color-mix(in oklab,var(--danger) 0%,transparent);transform:scale(1.02)}}.lab-emergency-stop:hover{filter:brightness(1.08)}.lab-emergency-stop:focus-visible{outline:2px solid var(--danger-strong);outline-offset:2px}@media(prefers-reduced-motion:reduce){.lab-emergency-stop{animation:none!important}}.dt{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;display:flex;position:relative}.dt-header{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.dt-footer{border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.dt-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:10px;min-height:48px;padding:10px 14px;display:flex}.dt-title-wrap{align-items:baseline;gap:10px;min-width:0;display:flex}.dt-title{color:var(--text-primary);white-space:nowrap;margin:0;font-size:13px;font-weight:600}.dt-subtitle{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.dt-search{background:var(--surface-0);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:160px;height:30px;color:var(--text-muted);transition:border-color var(--dur-fast) var(--ease-out);flex:0 280px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.dt-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.dt-search-input{min-width:0;color:var(--text-primary);font-family:var(--font-sans);background:0 0;border:0;outline:none;flex:1;font-size:12px}.dt-search-input::placeholder{color:var(--text-muted)}.dt-search-clear{background:var(--surface-2);width:18px;height:18px;color:var(--text-muted);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.dt-search-clear:hover{background:var(--surface-3);color:var(--text-primary)}.dt-filter-badge{transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.dt-filter-badge:hover{transform:translateY(-1px)}.dt-filter-badge.is-active{box-shadow:0 0 0 2px var(--ring),0 0 0 3px var(--surface-0)}.dt-inline-filter{background:var(--surface-0);border:1px solid var(--border-default);border-radius:var(--radius-md);height:32px;color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color var(--dur-fast) var(--ease-out);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23889' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right 8px center;background-repeat:no-repeat;outline:none;padding:0 28px 0 12px;font-size:12px}.dt-inline-filter:hover{border-color:var(--border-strong)}.dt-inline-filter:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.dt-header-trail{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.dt-rows-wrap{flex-direction:column;min-width:0;display:flex}.dt-thead{border-bottom:1px solid var(--border-default)}.dt-tbody{flex-direction:column;display:flex}.dt-row{grid-template-columns:var(--dt-cols);align-items:center;column-gap:0;min-width:0;display:grid}.dt-row-head{background:var(--surface-0);padding:0}.dt-tbody .dt-row{border-bottom:1px solid var(--border-subtle);transition:background var(--dur-fast) var(--ease-out)}.dt-tbody .dt-row:last-child{border-bottom:0}.dt-tbody .dt-row:nth-child(2n){background:var(--text-primary)}@supports (color:color-mix(in lab,red,red)){.dt-tbody .dt-row:nth-child(2n){background:color-mix(in oklab,var(--text-primary) 2.5%,transparent)}}.dt-row-clickable{cursor:pointer}.dt-row-clickable:hover{background:var(--surface-2)}.dt-row-selected,.dt-row-selected:hover{background:var(--accent-soft)}@supports (color:color-mix(in lab,red,red)){.dt-row-selected:hover{background:color-mix(in oklab,var(--accent-soft) 80%,var(--surface-2))}}.dt-cell{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:10px 12px;font-size:13px;line-height:1.3;overflow:hidden}.dt-cell.dt-right{text-align:right;justify-self:end}.dt-cell.dt-center{text-align:center;justify-self:center}.dt-head-cell{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;padding:10px 12px;font-size:10px;font-weight:600;display:inline-flex}.dt-head-cell[aria-sort]:not([aria-sort=none]){color:var(--text-primary)}.dt-head-cell.dt-right{justify-content:flex-end}.dt-head-cell.dt-center{justify-content:center}.dt-head-cell[style*="cursor: pointer"]:hover{color:var(--text-primary)}.dt-sort-indicator{color:var(--text-muted);font-size:9px;font-family:var(--font-mono);line-height:1}.dt-head-cell[aria-sort=ascending] .dt-sort-indicator,.dt-head-cell[aria-sort=descending] .dt-sort-indicator{color:var(--accent)}.dt-empty{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:40px 20px}.dt-footer{border-top:1px solid var(--border-subtle);background:var(--surface-0);flex-wrap:wrap;align-items:center;gap:14px;min-height:56px;padding:12px 18px;display:flex}.dt-footer-leading{color:var(--text-muted);align-items:center;gap:10px;min-width:0;font-size:12px;display:inline-flex}.dt-footer-spacer{flex:1}.dt-footer-trailing{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.dt-pagination{flex-wrap:wrap;align-items:center;gap:14px;display:inline-flex}.dt-page-size-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.dt-page-size{height:32px;font-family:var(--font-mono);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;outline:none;padding:0 10px;font-size:12px}.dt-page-size:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.dt-page-range{color:var(--text-secondary);letter-spacing:.02em;padding:0 6px;font-size:12px}.dt-page-nav{align-items:center;gap:6px;display:inline-flex}.dt-page-nav button{background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);line-height:1;font-family:var(--font-mono);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;padding:0;font-size:16px;font-weight:500;display:inline-flex}.dt-page-nav button:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary);border-color:var(--border-strong)}.dt-page-nav button:active:not(:disabled){transform:translateY(1px)}.dt-page-nav button:disabled{opacity:.3;cursor:not-allowed}.dt-page-number{font-family:var(--font-mono);color:var(--text-secondary);text-align:center;letter-spacing:.04em;min-width:72px;padding:0 10px;font-size:12px}.stop-split{border-radius:var(--radius-lg);background:var(--danger);height:36px;color:var(--danger-fg);font-family:var(--font-sans);align-items:stretch;display:inline-flex;position:relative;overflow:visible;box-shadow:0 1px 2px #0003}.stop-split.stop-split-sm{height:32px}.stop-split[aria-disabled=true]{opacity:.5;pointer-events:none}.stop-split-main,.stop-split-chevron{color:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.stop-split-main{border-top-left-radius:inherit;border-bottom-left-radius:inherit;border-right:1px solid var(--danger-fg);gap:6px;padding:0 14px;font-size:13px;font-weight:600}@supports (color:color-mix(in lab,red,red)){.stop-split-main{border-right:1px solid color-mix(in oklab,var(--danger-fg) 25%,transparent)}}.stop-split-sm .stop-split-main{padding:0 10px;font-size:12px}.stop-split-chevron{border-top-right-radius:inherit;border-bottom-right-radius:inherit;width:28px}.stop-split-sm .stop-split-chevron{width:24px}.stop-split-main:hover:not(:disabled),.stop-split-chevron:hover:not(:disabled){background:var(--danger-strong,var(--danger))}@supports (color:color-mix(in lab,red,red)){.stop-split-main:hover:not(:disabled),.stop-split-chevron:hover:not(:disabled){background:color-mix(in oklab,var(--danger-strong,var(--danger)) 80%,black)}}.stop-split-main:disabled,.stop-split-chevron:disabled{cursor:not-allowed;opacity:.6}.stop-split-menu{z-index:var(--z-dropdown,40);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:280px;box-shadow:var(--elev-4,0 12px 32px #00000052);color:var(--text-primary);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.stop-split-menu-left{left:0;right:auto}.stop-split-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:6px 10px 4px;font-size:9px;font-weight:600}.stop-split-sep{background:var(--border-subtle);height:1px;margin:4px 0}.stop-split-item{color:var(--text-secondary);font-family:var(--font-sans);text-align:left;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:inline-flex}.stop-split-item em{color:var(--text-muted);margin-left:2px;font-size:11px;font-style:normal}.stop-split-item:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary)}.stop-split-item:disabled{opacity:.4;cursor:not-allowed}.stop-split-item.is-danger,.stop-split-item.is-danger em{color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.stop-split-item.is-danger em{color:color-mix(in oklab,var(--danger) 60%,var(--text-muted))}}.stop-split-item.is-danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.actions-menu{display:inline-flex;position:relative}.actions-menu-trigger{border-radius:var(--radius-md);width:26px;height:26px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.actions-menu-trigger:hover,.actions-menu-trigger[aria-expanded=true]{background:var(--surface-2);color:var(--text-primary);border-color:var(--border-default)}.actions-menu-list{z-index:var(--z-dropdown,40);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--elev-3,0 8px 24px #00000040);flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.actions-menu-list-left{left:0;right:auto}.actions-menu-item{color:var(--text-secondary);font-family:var(--font-sans);text-align:left;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;display:inline-flex}.actions-menu-item:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary)}.actions-menu-item:disabled{opacity:.5;cursor:not-allowed}.actions-menu-item.is-danger{color:var(--danger)}.actions-menu-item.is-danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.actions-menu-icon{width:14px;height:14px;color:var(--text-muted);justify-content:center;align-items:center;display:inline-flex}.actions-menu-item.is-danger .actions-menu-icon{color:var(--danger)}@media(max-width:1279px){.dt-p2{display:none!important}}@media(max-width:1023px){.dt-p3{display:none!important}}@media(max-width:767px){.dt-p4{display:none!important}}.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl thead th{text-align:left;font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-default);white-space:nowrap;padding:10px 12px;font-size:10px;font-weight:600}.tbl tbody td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);vertical-align:middle;padding:10px 12px}.tbl tbody tr{cursor:pointer}.tbl tbody tr:hover td{background:var(--surface-2)}.tbl tbody tr.act td{background:var(--accent-soft)}.grid-bg{background-image:radial-gradient(circle at center,var(--border-subtle) .8px,transparent 1px);background-size:18px 18px}.input{background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);height:32px;transition:border-color var(--dur-fast) var(--ease-out);outline:none;padding:0 12px;font-size:13px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.input.mono{font-family:var(--font-mono)}kbd.ds-kbd{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border-default);color:var(--text-secondary);text-align:center;border-bottom-width:2px;border-radius:4px;min-width:18px;padding:2px 5px;font-size:10px;line-height:1;display:inline-block}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--tracking-tighter:-.05em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius-full:var(--radius-full)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}html,body,#root{height:100%}::selection{background:var(--accent-muted);color:var(--text-primary)}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.sf-root{font-family:var(--font-sans);color:var(--text-primary)}.sf-root .sf-field{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.sf-root .sf-field.sf-error .sf-input,.sf-root .sf-field.sf-error .sf-select,.sf-root .sf-field.sf-error .sf-textarea{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger-soft)}.sf-root .sf-field.sf-error .sf-error-msg{display:block}.sf-root .sf-label{display:inline-flex;align-items:baseline;gap:6px;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary);cursor:default;line-height:var(--leading-snug)}.sf-root .sf-label-req{color:var(--danger);font-weight:var(--weight-bold)}.sf-root .sf-label-hint{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-regular);font-style:italic}.sf-root .sf-help{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--leading-snug);margin-top:2px}.sf-root .sf-error-msg{display:none;font-size:var(--text-xs);color:var(--danger);margin-top:2px}.sf-root .sf-hint-warn{font-size:var(--text-xs);color:var(--warning);background:var(--warning-soft);border:1px solid color-mix(in oklab,var(--warning) 30%,transparent);border-radius:var(--radius-md);padding:6px 10px;margin-top:8px}.sf-root .sf-input{background:var(--surface-0);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:7px 10px;font-size:var(--text-sm);font-family:inherit;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);outline:none;width:100%;box-sizing:border-box}.sf-root .sf-input::placeholder{color:var(--text-muted)}.sf-root .sf-input:hover:not(:focus):not(:disabled){border-color:var(--border-strong)}.sf-root .sf-input:focus{border-color:var(--accent);box-shadow:0 0 0 var(--focus-ring-width) var(--accent-soft)}.sf-root .sf-input.sf-duration{font-family:var(--font-mono);font-variant-numeric:tabular-nums;max-width:160px}.sf-root .sf-textarea{font-family:var(--font-mono);font-size:var(--text-xs);resize:vertical;min-height:56px;line-height:var(--leading-snug)}.sf-root .sf-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='currentColor' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;cursor:pointer;color:var(--text-primary)}.sf-root .sf-toggle-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;padding:4px 0}.sf-root .sf-toggle{position:absolute;opacity:0;pointer-events:none}.sf-root .sf-toggle-track{display:inline-block;width:34px;height:18px;background:var(--surface-2);border:1px solid var(--border-default);border-radius:var(--radius-full);position:relative;transition:background var(--dur-default) var(--ease-out),border-color var(--dur-default) var(--ease-out);flex-shrink:0}.sf-root .sf-toggle-track:before{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;background:var(--text-primary);border-radius:var(--radius-full);transition:transform var(--dur-default) var(--ease-out),background var(--dur-default) var(--ease-out)}.sf-root .sf-toggle:checked+.sf-toggle-track{background:var(--accent);border-color:var(--accent)}.sf-root .sf-toggle:checked+.sf-toggle-track:before{transform:translate(16px);background:var(--text-on-accent)}.sf-root .sf-toggle:focus-visible+.sf-toggle-track{box-shadow:0 0 0 var(--focus-ring-width) var(--accent-soft)}.sf-root .sf-toggle-text{font-size:var(--text-sm);color:var(--text-secondary)}.sf-root .sf-const-value{display:inline-block;background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-muted);padding:5px 12px;border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.sf-root .sf-object{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:color-mix(in oklab,var(--surface-1) 60%,transparent);margin-bottom:14px}.sf-root .sf-object-root{border:none;background:transparent;margin-bottom:0}.sf-root .sf-object-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:color-mix(in oklab,var(--surface-0) 60%,transparent);border-bottom:1px solid var(--border-subtle);cursor:pointer;border-radius:var(--radius-lg) var(--radius-lg) 0 0;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease-out)}.sf-root .sf-object-header:hover{background:var(--surface-0)}.sf-root .sf-chevron{color:var(--text-muted);font-size:10px;width:12px;display:inline-block;transition:transform var(--dur-fast) var(--ease-out)}.sf-root .sf-object-title{font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--text-primary);text-transform:capitalize;letter-spacing:var(--tracking-normal)}.sf-root .sf-object-body{padding:14px;transition:all var(--dur-fast) var(--ease-out)}.sf-root .sf-object.sf-collapsed>.sf-object-body{display:none}.sf-root .sf-object.sf-collapsed>.sf-object-header{border-bottom:none;border-radius:var(--radius-lg)}.sf-root .sf-array{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:color-mix(in oklab,var(--surface-1) 40%,transparent);margin-bottom:14px;padding:10px 12px}.sf-root .sf-array-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:6px;border-bottom:1px dashed var(--border-subtle)}.sf-root .sf-array-title{font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--text-primary);text-transform:capitalize}.sf-root .sf-array-count{font-size:var(--text-xs);color:var(--text-muted);background:var(--surface-0);border:1px solid var(--border-subtle);padding:2px 8px;border-radius:var(--radius-full);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sf-root .sf-array-items{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}.sf-root .sf-array-item{background:color-mix(in oklab,var(--surface-0) 70%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 12px;position:relative}.sf-root .sf-array-controls{display:flex;align-items:center;gap:4px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px dashed var(--border-subtle)}.sf-root .sf-array-idx{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-right:auto}.sf-root .sf-btn-icon{background:transparent;color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:2px 8px;font-size:var(--text-xs);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);font-family:inherit;line-height:1;min-width:22px}.sf-root .sf-btn-icon:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.sf-root .sf-btn-icon:disabled{opacity:.3;cursor:not-allowed}.sf-root .sf-btn-icon.sf-btn-del:hover:not(:disabled){background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.sf-root .sf-btn-add{background:transparent;color:var(--accent);border:1px dashed var(--accent-muted);border-radius:var(--radius-md);padding:6px 14px;font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);font-family:inherit;font-weight:var(--weight-medium)}.sf-root .sf-btn-add:hover{background:var(--accent-soft);border-color:var(--accent);border-style:solid}.sf-root .sf-btn-del{background:transparent;color:var(--danger);border:1px solid color-mix(in oklab,var(--danger) 30%,transparent);border-radius:var(--radius-sm);padding:2px 8px;font-size:var(--text-sm);line-height:1;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);font-family:inherit}.sf-root .sf-btn-del:hover{background:var(--danger-soft);border-color:var(--danger)}.sf-root .sf-freeform-dict{margin-top:10px;border-top:1px dashed var(--border-subtle);padding-top:10px}.sf-root .sf-kv-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.sf-root .sf-kv-row{display:grid;grid-template-columns:1fr auto 2fr auto;gap:6px;align-items:center}.sf-root .sf-kv-key,.sf-root .sf-kv-val{font-family:var(--font-mono);font-size:var(--text-xs)}.sf-root .sf-kv-key{font-weight:var(--weight-medium)}.sf-root .sf-kv-sep{color:var(--text-muted);font-weight:var(--weight-bold)}.sf-root .sf-hook-select{font-family:var(--font-mono);font-size:var(--text-xs)}.sf-status-bar{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sf-status-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--text-muted);flex-shrink:0}.sf-status-dot.sf-status-ok{background:var(--success)}.sf-status-dot.sf-status-saving{background:var(--warning);animation:sf-pulse 1.2s ease-in-out infinite}.sf-status-dot.sf-status-error{background:var(--danger)}.sf-status-dot.sf-status-dirty{background:var(--accent)}@keyframes sf-pulse{0%,to{opacity:1}50%{opacity:.4}}.sf-status-text.sf-error{color:var(--danger)}.sf-status-text.sf-ok{color:var(--success)}@media(prefers-reduced-motion:reduce){.sf-status-dot.sf-status-saving{animation:none}}
