.snow[data-v-c204fb09]{position:fixed;inset:0;z-index:1;pointer-events:none}.site-footer[data-v-9e0dd867]{padding:var(--site-section-y-sm) 0;font-size:var(--font-size-sm)}.site-footer__grid[data-v-9e0dd867]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--control-w-192)),1fr));gap:var(--space-32)}.site-footer__brand[data-v-9e0dd867],.site-footer__col[data-v-9e0dd867],.site-footer address[data-v-9e0dd867]{display:flex;flex-direction:column;gap:var(--space-8)}.site-footer__badges[data-v-9e0dd867]{display:flex;align-items:center;gap:var(--space-20)}.site-footer__badge[data-v-9e0dd867]{height:var(--space-44);width:auto}.site-footer address[data-v-9e0dd867]{font-style:normal;color:var(--color-text-secondary);margin-bottom:var(--space-12)}.site-footer a[data-v-9e0dd867]{color:var(--color-text-secondary);text-decoration:none;overflow-wrap:anywhere}.site-footer a[data-v-9e0dd867]:hover{color:var(--color-text-primary)}.site-footer__follow[data-v-9e0dd867]{margin-top:var(--space-16)}@font-face{font-family:Montserrat;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_italic_cyrillic_ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_italic_cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_italic_vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_italic_latin_ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_italic_latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_cyrillic_ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_latin_ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Montserrat/Montserrat_latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-brand-50: #f0f9fc;--color-brand-100: #daf0f7;--color-brand-200: #b7e2ee;--color-brand-300: #85cce2;--color-brand-400: #66bee0;--color-brand-500: #4db1d9;--color-brand-600: #2e96c4;--color-brand-700: #2479a1;--color-brand-800: #1f6183;--color-brand-900: #1b516e;--color-brand-fill: var(--color-brand-700);--color-brand-fill-hover: var(--color-brand-800);--color-brand-fill-active: var(--color-brand-900);--color-corporate: #016bd0;--color-nav-surface: var(--color-gray-100);--color-nav-item: var(--color-text-secondary);--color-nav-item-hover: var(--color-corporate);--color-nav-item-hover-bg: transparent;--color-nav-selected-bg: var(--color-brand-tint-12);--color-nav-accent: var(--color-corporate);--color-gray-50: #f9fafb;--color-gray-100: #f2f4f7;--color-gray-200: #e4e7ec;--color-gray-300: #d0d5dd;--color-gray-400: #98a2b3;--color-gray-500: #667085;--color-gray-600: #475467;--color-gray-700: #272834;--color-gray-800: #1b1c25;--color-gray-900: #111318;--color-gray-950: #0c111d;--color-dark-page: #111318;--color-dark-surface: #1b1c25;--color-dark-elevated: #272834;--color-dark-nav: #111318;--color-overlay-white-03: rgba(255, 255, 255, .03);--color-overlay-white-05: rgba(255, 255, 255, .05);--color-overlay-white-10: rgba(255, 255, 255, .1);--color-overlay-white-15: rgba(255, 255, 255, .15);--color-tint-1: rgba(0, 0, 0, .02);--color-tint-2: rgba(0, 0, 0, .03);--color-tint-3: rgba(0, 0, 0, .04);--color-tint-4: rgba(0, 0, 0, .06);--color-tint-5: rgba(0, 0, 0, .08);--color-tint-6: rgba(0, 0, 0, .12);--color-brand-tint-4: rgba(77, 177, 217, .04);--color-brand-tint-6: rgba(77, 177, 217, .06);--color-brand-tint-8: rgba(77, 177, 217, .08);--color-brand-tint-10: rgba(77, 177, 217, .1);--color-brand-tint-12: rgba(77, 177, 217, .12);--color-brand-tint-15: rgba(77, 177, 217, .15);--color-brand-tint-25: rgba(77, 177, 217, .25);--color-brand-tint-35: rgba(77, 177, 217, .35);--color-brand-tint-50: rgba(77, 177, 217, .5);--wash-1: 2%;--wash-2: 4%;--wash-3: 6%;--wash-4: 8%;--edge-1: 20%;--edge-2: 25%;--edge-3: 30%;--edge-4: 45%;--color-brand-wash: var(--color-brand-tint-6);--color-brand-wash-hover: var(--color-brand-tint-4);--color-brand-edge: var(--color-brand-tint-35);--color-link: var(--color-corporate);--color-ink-dark-primary: rgba(255, 255, 255, .87);--color-ink-dark-secondary: rgba(255, 255, 255, .65);--color-ink-dark-tertiary: rgba(255, 255, 255, .45);--color-success-50: #ecfdf3;--color-success-200: #a6f4c5;--color-success-300: #6ce9a6;--color-success-500: #12b76a;--color-success-600: #039855;--color-success-700: #027a48;--color-success-fill: #027a48;--color-error-50: #fef3f2;--color-error-200: #fecdca;--color-error-400: #f97066;--color-error-500: #f04438;--color-error-600: #d92d20;--color-error-700: #b42318;--color-error-900: #7a271a;--color-warning-50: #fffaeb;--color-warning-100: #fef0c7;--color-warning-200: #fedf89;--color-warning-400: #fdb022;--color-warning-500: #f79009;--color-warning-600: #dc6803;--color-warning-700: #b54708;--color-info-50: #f0f9ff;--color-info-300: #7cd4fd;--color-info-500: #0ba5ec;--color-info-700: #026aa2;--color-purple-300: #d6bbfb;--color-purple-500: #7c3aed;--color-purple-600: #6d28d9;--color-purple-50: #f5f3ff;--color-teal-500: #0e9384;--color-indigo-500: #6366f1;--canvas-stroke-ok: var(--color-success-300);--canvas-stroke-warn: var(--color-warning-400);--canvas-stroke-info: var(--color-info-300);--canvas-stroke-accent: var(--color-purple-300);--canvas-stroke-neutral: var(--color-gray-300);--canvas-ink-neutral: var(--color-gray-500);--canvas-highlight: var(--color-warning-500);--canvas-highlight-glow: rgba(247, 144, 9, .55);--canvas-flash-fill: var(--color-warning-100);--canvas-flow-egress: rgba(255, 248, 230, .95);--canvas-flow-vpn: rgba(245, 235, 255, .95);--color-vendor-cloudflare: #f6821f;--color-vendor-plesk: #006cbe;--color-brand-accent: #d9964c;--color-vendor-ubuntu: #e95420;--color-vendor-centos: #262577;--color-vendor-debian: #a81d33;--color-vendor-redhat: #ee0000;--color-vendor-windows: #0078d4;--color-vendor-apple: #6e7679;--color-series-1: #2e96c4;--color-series-2: #b54708;--color-series-3: #7c3aed;--color-series-4: #a16207;--color-series-5: #6366f1;--color-series-6: #15803d;--color-series-7: #0891b2;--color-series-8: #e11d48;--color-series-muted: var(--color-gray-500);--color-text-primary: rgba(0, 0, 0, .87);--color-text-secondary: rgba(0, 0, 0, .65);--color-text-tertiary: rgba(0, 0, 0, .45);--color-text-disabled: rgba(0, 0, 0, .25);--color-text-inverse: #ffffff;--color-border: var(--color-gray-200);--color-border-strong: var(--color-gray-300);--color-surface-elevated: #ffffff;--color-surface-subtle: var(--color-gray-50);--color-ground: var(--color-gray-50);--color-veil: rgba(255, 255, 255, .6);--color-veil-strong: rgba(255, 255, 255, .92);--color-spotlight: rgba(0, 0, 0, .85);--color-scrim: rgba(0, 0, 0, .45);--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .1), 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 4px 8px -2px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .06);--shadow-lg: 0 12px 16px -4px rgba(16, 24, 40, .08), 0 4px 6px -2px rgba(16, 24, 40, .03);--shadow-xl: 0 20px 24px -4px rgba(16, 24, 40, .08), 0 8px 8px -4px rgba(16, 24, 40, .03);--shadow-halo: 0 1px 2px rgba(16, 24, 40, .06), 0 24px 64px rgba(16, 24, 40, .18);--shadow-popup: rgba(0, 0, 0, .08) 0 6px 16px 0, rgba(0, 0, 0, .12) 0 3px 6px -4px, rgba(0, 0, 0, .05) 0 9px 28px 8px;--color-focus-ring-brand: var(--color-brand-tint-15);--focus-ring-width: 4px;--color-focus-ring-error: rgba(240, 68, 56, .15);--color-focus-ring-warning: rgba(247, 144, 9, .15);--space-0: 0;--space-1: 1px;--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-28: 28px;--space-32: 32px;--space-36: 36px;--space-40: 40px;--space-44: 44px;--space-48: 48px;--space-56: 56px;--space-64: 64px;--space-80: 80px;--space-96: 96px;--space-112: 112px;--space-128: 128px;--space-144: 144px;--space-160: 160px;--space-176: 176px;--space-192: 192px;--space-208: 208px;--space-224: 224px;--control-h-sm: 24px;--control-h: 32px;--control-h-lg: 40px;--header-h: 48px;--control-px-sm: var(--space-8);--control-px: var(--space-12);--control-px-lg: var(--space-16);--control-w-96: 96px;--control-w-128: 128px;--control-w-160: 160px;--control-w-192: 192px;--control-w-224: 224px;--control-w-256: 256px;--control-w-320: 320px;--control-w-360: 360px;--chart-h-sm: 180px;--chart-h: 200px;--chart-h-lg: 260px;--switch-h: 22px;--switch-w: 44px;--switch-h-sm: 16px;--switch-w-sm: 28px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-pill: 9999px;--font-family-base: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--font-mono: var(--font-family-mono);--letter-spacing-label: .04em;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0em;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em;--tracking-code: .25em;--font-size-micro: 10px;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-h3: 20px;--font-size-h2: 24px;--font-size-h1: 30px;--font-size-stat: 28px;--font-size-hero: 96px;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px;--icon-xl: 32px;--icon-2xl: 48px;--line-height-tight: 1.2;--line-height-base: 1.5;--line-height-loose: 1.6;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .15s ease;--z-content: 10;--z-chrome: 50;--z-brand: 100;--z-header: 200;--z-banner: 300;--z-modal: 1000;--z-popup: 1070;--z-toast: 1080;--z-above-overlay: 1100}body{--chart-grid: var(--color-tint-3);--chart-tick: var(--color-text-tertiary);--chart-ring: var(--color-surface-elevated);--chart-track: var(--color-tint-4)}body.dark-mode{--color-surface-elevated: var(--color-dark-surface);--color-surface-subtle: var(--color-dark-elevated);--color-ground: var(--color-dark-page);--color-veil: rgba(17, 19, 24, .6);--color-veil-strong: rgba(17, 19, 24, .94);--color-nav-surface: var(--color-dark-nav);--color-nav-item-hover: var(--color-text-primary);--color-nav-item-hover-bg: rgba(255, 255, 255, .06);--color-nav-selected-bg: rgba(1, 107, 208, .18);--color-nav-item: var(--color-text-secondary);--color-text-primary: rgba(255, 255, 255, .87);--color-text-secondary: rgba(255, 255, 255, .6);--color-text-tertiary: rgba(255, 255, 255, .45);--color-text-disabled: rgba(255, 255, 255, .25);--color-border: var(--color-overlay-white-05);--color-border-strong: var(--color-overlay-white-10);--canvas-stroke-neutral: var(--color-border-strong);--canvas-flash-fill: color-mix(in srgb, var(--color-warning-400) 35%, transparent);--color-tint-1: rgba(255, 255, 255, .03);--color-tint-2: rgba(255, 255, 255, .04);--color-tint-3: rgba(255, 255, 255, .05);--color-tint-4: rgba(255, 255, 255, .08);--color-tint-5: rgba(255, 255, 255, .1);--color-tint-6: rgba(255, 255, 255, .15);--color-success-50: rgba(18, 183, 106, .12);--color-error-50: rgba(240, 68, 56, .12);--color-warning-50: rgba(247, 144, 9, .12);--color-info-50: rgba(11, 165, 236, .12);--color-purple-500: #a78bfa;--color-warning-700: var(--color-warning-500);--color-error-600: var(--color-error-400);--color-success-700: var(--color-success-500);--color-info-700: var(--color-info-500);--color-indigo-500: #818cf8;--color-series-3: #8b5cf6;--color-series-muted: var(--color-gray-400);--color-focus-ring-brand: var(--color-brand-tint-35);--wash-1: 5%;--wash-2: 8%;--wash-3: 12%;--wash-4: 16%;--edge-1: 25%;--edge-2: 30%;--edge-3: 35%;--edge-4: 55%;--color-brand-wash: var(--color-brand-tint-12);--color-brand-wash-hover: var(--color-brand-tint-8);--color-brand-edge: var(--color-brand-tint-25);--color-link: var(--color-brand-500);--color-vendor-centos: #7d7ad6;--color-vendor-debian: #d9435c;--color-vendor-apple: #a2aaad;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 24px -4px rgba(0, 0, 0, .5), 0 8px 8px -4px rgba(0, 0, 0, .3);--shadow-halo: 0 1px 2px rgba(0, 0, 0, .3), 0 24px 64px rgba(0, 0, 0, .55)}.eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);line-height:var(--line-height-tight)}.eyebrow--micro{font-size:var(--font-size-micro)}.section-bar{display:flex;align-items:center;gap:var(--space-8);margin-bottom:var(--space-12);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.section-bar__title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);line-height:var(--line-height-tight);display:flex;align-items:center;gap:var(--space-4)}.section-bar__count{font-weight:var(--font-weight-normal);text-transform:none;letter-spacing:normal}.section-bar__icon{font-size:var(--font-size-base);color:var(--color-brand-500)}.section-bar__actions{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}.code-block{padding:var(--space-8) var(--space-12);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-subtle);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:pre-wrap;word-break:break-all}.code-block--inline{display:inline-block;padding:var(--space-2) var(--space-6);border:0;border-radius:var(--radius-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);white-space:nowrap}.ctl{height:var(--control-h);padding:0 var(--control-px);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text-primary);font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-tight);transition:var(--transition-fast)}.ctl--sm{height:var(--control-h-sm);padding:0 var(--control-px-sm)}.ctl--lg{height:var(--control-h-lg);padding:0 var(--control-px-lg);font-size:var(--font-size-md)}.ctl:disabled,.ctl.is-disabled{opacity:.5;cursor:not-allowed}.ctl.is-invalid{border-color:var(--color-error-500)}.ctl--group{display:inline-flex;align-items:stretch;padding:0;overflow:hidden;max-width:100%;height:auto;min-height:var(--control-h)}.ctl--group.ctl--sm{min-height:var(--control-h-sm)}.ctl--group.ctl--lg{min-height:var(--control-h-lg)}.ctl__seg{display:flex;align-items:center;justify-content:center;text-align:center;min-width:var(--space-48);overflow:hidden;padding:var(--space-4) var(--control-px);border:0;background:transparent;color:inherit;font:inherit;font-size:inherit;cursor:pointer;transition:var(--transition-fast)}.ctl__seg+.ctl__seg{border-left:1px solid var(--color-border)}.ctl__seg:hover:not(.ctl__seg--on){background:var(--color-surface-subtle)}.ctl__seg--on{background:var(--color-brand-500);color:var(--color-text-inverse)}.ctl__seg--on.ctl__seg--danger{background:var(--color-error-500);color:var(--color-text-inverse)}.ctl--sm>.ctl__seg{padding:var(--space-2) var(--control-px-sm)}.ctl--lg>.ctl__seg{padding:var(--space-4) var(--control-px-lg)}.ctl__seg:disabled{opacity:.5;cursor:not-allowed}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-4);cursor:pointer;font-weight:var(--font-weight-medium);white-space:nowrap;flex-shrink:0}.btn--primary{background:var(--color-brand-fill);border-color:var(--color-brand-fill);color:var(--color-text-inverse)}.btn--primary:hover{background:var(--color-brand-fill-hover);border-color:var(--color-brand-fill-hover)}.btn--primary:active{background:var(--color-brand-fill-active);border-color:var(--color-brand-fill-active)}.btn--danger{background:var(--color-error-500);border-color:var(--color-error-500);color:var(--color-text-inverse)}.btn--warn{background:var(--color-warning-600);border-color:var(--color-warning-600);color:var(--color-text-inverse)}.btn--success{background:var(--color-success-600);border-color:var(--color-success-600);color:var(--color-text-inverse)}.btn--quiet{background:transparent;color:var(--color-text-secondary)}.btn--quiet:hover{background:var(--color-surface-subtle);color:var(--color-text-primary)}.btn--bare{background:transparent;border-color:transparent;color:var(--color-text-secondary)}.btn--bare:hover{background:var(--color-surface-subtle);color:var(--color-text-primary)}.btn--bare.btn--danger{background:transparent;border-color:transparent;color:var(--color-error-500)}.btn--bare.btn--danger:hover{background:color-mix(in srgb,var(--color-error-500) 8%,transparent);color:var(--color-error-600)}.btn--bare.btn--warn{background:transparent;border-color:transparent;color:var(--color-warning-600)}.btn--bare.btn--warn:hover{background:color-mix(in srgb,var(--color-warning-500) 8%,transparent);color:var(--color-warning-700)}.btn.is-loading{pointer-events:none;opacity:.75}.btn.is-loading:before{content:"";width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill);animation:btn-spin .6s linear infinite}.btn--add{width:100%;border-style:dashed;background:transparent;color:var(--color-text-secondary)}.btn--add:hover{border-color:var(--color-brand-500);color:var(--color-brand-fill)}.btn.is-active{background:var(--color-brand-tint-12);border-color:var(--color-brand-500);color:var(--color-brand-fill)}.btn--icon{padding:0;width:var(--control-h)}.btn--icon.ctl--sm{width:var(--control-h-sm)}.btn--icon.ctl--lg{width:var(--control-h-lg)}.btn--icon.btn--danger{background:transparent;border-color:var(--color-error-500);color:var(--color-error-500)}.btn--icon.btn--danger:hover{background:color-mix(in srgb,var(--color-error-500) 8%,transparent);border-color:var(--color-error-600);color:var(--color-error-600)}.btn--icon.btn--warn{background:transparent;border-color:var(--color-warning-600);color:var(--color-warning-600)}.btn--icon.btn--warn:hover{background:color-mix(in srgb,var(--color-warning-600) 8%,transparent);border-color:var(--color-warning-600);color:var(--color-warning-600)}.switch{position:relative;display:inline-flex;align-items:center;box-sizing:border-box;height:var(--switch-h);min-width:var(--switch-w);padding:0;border:none;border-radius:var(--radius-pill);background:var(--color-text-disabled);cursor:pointer;transition:background-color .2s;vertical-align:middle}.switch:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}.switch.is-on{background:var(--color-brand-500)}.switch:disabled{cursor:not-allowed;opacity:.4}.switch__thumb{position:absolute;top:var(--space-2);left:var(--space-2);display:inline-flex;align-items:center;justify-content:center;width:calc(var(--switch-h) - var(--space-4));height:calc(var(--switch-h) - var(--space-4));border-radius:var(--radius-pill);background:var(--color-text-inverse);box-shadow:var(--shadow-xs);transition:left .2s}.switch.is-on .switch__thumb{left:calc(100% - var(--switch-h) + var(--space-2))}.switch__label{font-size:var(--font-size-xs);line-height:var(--line-height-tight);color:var(--color-text-inverse);margin:0 var(--space-6) 0 calc(var(--switch-h) + var(--space-2));white-space:nowrap}.switch.is-on .switch__label{margin:0 calc(var(--switch-h) + var(--space-2)) 0 var(--space-6)}.switch--sm{height:var(--switch-h-sm);min-width:var(--switch-w-sm)}.switch--sm .switch__thumb{width:calc(var(--switch-h-sm) - var(--space-4));height:calc(var(--switch-h-sm) - var(--space-4))}.switch--sm.is-on .switch__thumb{left:calc(100% - var(--switch-h-sm) + var(--space-2))}.switch--sm .switch__label{margin-left:calc(var(--switch-h-sm) + var(--space-2))}.switch--sm.is-on .switch__label{margin-right:calc(var(--switch-h-sm) + var(--space-2));margin-left:var(--space-6)}.check{display:inline-flex;align-items:center;gap:var(--space-8);cursor:pointer;vertical-align:middle}.check.is-disabled{cursor:not-allowed}.check__box{appearance:none;position:relative;flex-shrink:0;width:var(--space-16);height:var(--space-16);margin:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--color-surface-elevated);cursor:inherit;transition:background-color .2s,border-color .2s}.check__box:hover:not(:disabled){border-color:var(--color-brand-500)}.check__box:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}.check__box:checked{background:var(--color-brand-500);border-color:var(--color-brand-500)}.check__box:checked:after{content:"";position:absolute;left:50%;top:50%;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translate(-50%,-58%) rotate(45deg)}.check__box:indeterminate{border-color:var(--color-brand-500)}.check__box:indeterminate:after{content:"";position:absolute;inset:3px;background:var(--color-brand-500)}.check__box:disabled{opacity:.4;background:var(--color-surface-subtle)}.check__label{-webkit-user-select:none;user-select:none;color:var(--color-text-primary)}.check.is-disabled .check__label{color:var(--color-text-disabled)}.radio{display:inline-flex;align-items:center;gap:var(--space-8);cursor:pointer;vertical-align:middle}.radio.is-disabled{cursor:not-allowed}.radio__box{appearance:none;position:relative;flex-shrink:0;width:var(--space-16);height:var(--space-16);margin:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-elevated);cursor:inherit;transition:background-color .2s,border-color .2s}.radio__box:hover:not(:disabled){border-color:var(--color-brand-500)}.radio__box:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}.radio__box:checked{border-color:var(--color-brand-500)}.radio__box:checked:after{content:"";position:absolute;inset:3px;border-radius:var(--radius-pill);background:var(--color-brand-500)}.radio__box:disabled{opacity:.4;background:var(--color-surface-subtle)}.radio__label{-webkit-user-select:none;user-select:none;color:var(--color-text-primary)}.radio.is-disabled .radio__label{color:var(--color-text-disabled)}.action-row{display:flex;align-items:center;gap:var(--space-8)}.action-row--tight{gap:var(--space-2)}.action-row--inline{display:inline-flex}.action-row--end{justify-content:flex-end}.action-row--between{justify-content:space-between}.action-row--wrap{flex-wrap:wrap}.action-row--top{align-items:flex-start}.action-row--footer{margin-top:var(--space-20)}.field{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-16);text-align:left}.field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.field__msg{min-height:var(--space-16);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.field>.field__control>.anchor{display:block}.field--invalid .field__msg{color:var(--color-error-500)}.form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12)}.form-grid__full{grid-column:1 / -1}@media(min-width:768px){.form-grid:not(.form-grid--wide){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:992px){.form-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-16) var(--space-24)}.page-split__full{grid-column:1 / -1}@media(min-width:992px){.page-split:not(.page-split--full){grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}.card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-16)}.card--tight{padding:var(--space-12)}.card--clickable{cursor:pointer;transition:var(--transition-fast)}.card--clickable:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.card--selected{border-color:var(--color-brand-500);box-shadow:0 0 0 2px var(--color-focus-ring-brand);background:var(--color-brand-tint-8)}.card__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-8)}.card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);margin-bottom:var(--space-8)}.card__head .card__title{margin-bottom:0}.card__extra{flex-shrink:0;margin-left:auto;font-size:var(--font-size-sm)}.card__extra.see-all-link{color:var(--color-link)}.card__body{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.card--flush{padding:0}.card--flush>.card__head{padding:var(--space-12) var(--space-12) 0}.card--flush>.card__title{padding:var(--space-12) var(--space-12) 0}.skeleton{display:grid;gap:var(--space-12)}.skeleton__bar{height:var(--space-16);border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-subtle) 25%,var(--color-border) 37%,var(--color-surface-subtle) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}.skeleton__bar--w40{width:40%}.skeleton__bar--w60{width:60%}.skeleton__bar--w80{width:80%}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media(prefers-reduced-motion:reduce){.skeleton__bar{animation:none}}.busy{position:relative}.busy.is-busy{min-height:var(--space-40)}.busy.is-busy>:not(.busy__veil){pointer-events:none;-webkit-user-select:none;user-select:none}.busy__veil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--color-veil);border-radius:inherit}.progress{display:flex;align-items:center;gap:var(--space-8)}.progress__track{flex:1 1 auto;height:8px;border-radius:var(--radius-pill);background:var(--color-surface-subtle);overflow:hidden}.progress__fill{height:100%;border-radius:var(--radius-pill);background:var(--color-brand-500);transition:width var(--transition-fast)}.progress__info{flex:0 0 auto;min-width:2.5em;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.progress--sm .progress__track{height:6px}.progress--ok .progress__fill{background:var(--color-success-500)}.progress--error .progress__fill{background:var(--color-error-500)}.progress--active .progress__fill{background:linear-gradient(90deg,var(--color-brand-500) 25%,var(--color-brand-400) 37%,var(--color-brand-500) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}@media(prefers-reduced-motion:reduce){.progress__fill{animation:none}}.well{padding:var(--space-12) var(--space-16);border-radius:var(--radius-sm);background:var(--color-surface-subtle)}.well--bordered{border:1px solid var(--color-border)}.well--clickable{cursor:pointer;transition:var(--transition-fast)}.well--clickable:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.well--selected{border-color:var(--color-brand-500);box-shadow:0 0 0 2px var(--color-focus-ring-brand);background:var(--color-brand-tint-8)}.well__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-8)}.well__row{display:flex;align-items:center;gap:var(--space-8);font-size:var(--font-size-sm);line-height:var(--line-height-loose)}.well__label{color:var(--color-text-tertiary)}.well__value{font-weight:var(--font-weight-medium)}.form-well{border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-subtle);padding:var(--space-16) var(--space-8) var(--space-8);text-align:center}.state-card{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;padding:var(--space-12);border:1px solid var(--color-border);border-left:var(--space-4) solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-tint-1)}.state-card--ok{border-left-color:var(--color-success-500);background:color-mix(in srgb,var(--color-success-500) 5%,transparent)}.state-card--warn{border-left-color:var(--color-warning-500);background:color-mix(in srgb,var(--color-warning-500) 5%,transparent)}.state-card--error{border-left-color:var(--color-error-500);background:color-mix(in srgb,var(--color-error-500) 5%,transparent)}.state-card--info{border-left-color:var(--color-info-500);background:color-mix(in srgb,var(--color-info-500) 5%,transparent)}.state-card--brand{border-left-color:var(--color-brand-500);background:var(--color-brand-tint-6)}.state-card--clickable{cursor:pointer;transition:var(--transition-fast)}.state-card--clickable:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.state-card--row{flex-direction:row;align-items:center;gap:var(--space-12)}.state-card__header{display:flex;align-items:center;gap:var(--space-8)}.state-card__header .state-card__title{flex:1;min-width:0}.state-card__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);word-break:break-all}.state-card__title--ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:normal}.state-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);font-size:var(--font-size-sm)}.state-card__details{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-8);border-top:1px solid var(--color-border)}.state-card__detail{display:flex;align-items:baseline;gap:var(--space-8);font-size:var(--font-size-sm)}.state-card__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);line-height:var(--line-height-tight);flex-shrink:0;min-width:70px}.state-card__value{color:var(--color-text-secondary);word-break:break-all}.state-card__value--mono{font-family:var(--font-mono);font-size:var(--font-size-xs)}.state-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-12)}.state-card-grid--narrow{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.state-card-grid--pair{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.state-card-grid--pair{grid-template-columns:1fr}}.badge{display:inline-flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-8);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);white-space:nowrap;flex-shrink:0;background:var(--color-tint-4);color:var(--color-text-secondary)}.badge a{color:inherit}.badge--ok{background:color-mix(in srgb,var(--color-success-500) 14%,transparent);color:var(--color-success-500)}.badge--warn{background:color-mix(in srgb,var(--color-warning-500) 14%,transparent);color:var(--color-warning-500)}.badge--error{background:color-mix(in srgb,var(--color-error-500) 14%,transparent);color:var(--color-error-500)}.badge--info{background:var(--color-brand-tint-15);color:var(--color-brand-500)}.badge--snat{background:color-mix(in srgb,var(--color-info-500) 14%,transparent);color:var(--color-info-500)}.badge--static{background:color-mix(in srgb,var(--color-purple-500) 14%,transparent);color:var(--color-purple-500)}.badge--fw{background:color-mix(in srgb,var(--color-warning-500) 14%,transparent);color:var(--color-warning-500)}.badge--pf{background:color-mix(in srgb,var(--color-success-500) 14%,transparent);color:var(--color-success-500)}.badge--lb{background:color-mix(in srgb,var(--color-indigo-500) 16%,transparent);color:var(--color-indigo-500)}.badge--vnf{background:color-mix(in srgb,var(--color-teal-500) 14%,transparent);color:var(--color-teal-500)}.badge--kind{background:color-mix(in srgb,var(--color-purple-500) 14%,transparent);color:var(--color-purple-500)}.badge--outline{border:1px solid currentColor}.badge--add{border:1px dashed currentColor;background:none;color:var(--color-text-tertiary);cursor:pointer;transition:color .15s}.badge--add:hover{color:var(--color-brand-500)}.badge__dismiss{display:inline-flex;align-items:center;justify-content:center;width:var(--space-16);height:var(--space-16);padding:0;border:none;border-radius:var(--radius-pill);background:none;color:inherit;font-size:var(--font-size-xs);opacity:.65;cursor:pointer;flex-shrink:0;transition:opacity .15s,background .15s}.badge__dismiss:hover{opacity:1;background:var(--color-tint-5)}.badge--micro{font-size:var(--font-size-micro)}.count-badge{position:relative;display:inline-flex}.count-badge__bubble{min-width:var(--space-20);height:var(--space-20);line-height:var(--space-20);padding:0 var(--space-6);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;background:var(--color-error-500);color:var(--color-text-inverse);position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0;z-index:1;box-shadow:0 0 0 1px var(--color-surface-elevated)}.count-badge__bubble--brand{background:var(--color-brand-fill)}.count-badge__bubble--warn{background:var(--color-warning-500)}.count-badge__bubble--sm{min-width:var(--space-14);height:var(--space-14);line-height:var(--space-14);padding:0 var(--space-4);font-size:var(--font-size-micro)}.count-badge__bubble--dot{min-width:var(--space-6);width:var(--space-6);height:var(--space-6);padding:0}.status-dot{display:inline-block;flex-shrink:0;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-pill);background:var(--color-text-disabled)}.status-dot--ok{background:var(--color-success-500)}.status-dot--warn{background:var(--color-warning-500)}.status-dot--error{background:var(--color-error-500)}.status-dot--info{background:var(--color-brand-500)}.status-dot--kind{background:var(--color-purple-500)}.timeline{margin:0;padding:0;list-style:none}.timeline__item{position:relative;padding:0 0 var(--space-16) var(--space-20)}.timeline__item:before{content:"";position:absolute;left:var(--space-2);top:var(--space-12);bottom:0;width:1px;background:var(--color-border)}.timeline__item:last-child{padding-bottom:0}.timeline__item:last-child:before{display:none}.timeline__dot{position:absolute;left:0;top:var(--space-6)}.steps{display:flex;align-items:flex-start;gap:var(--space-8);margin:0;padding:0;list-style:none}.steps__item{display:flex;flex:1 1 0;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center;min-width:0;color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.steps__marker{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface-elevated);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:1}.steps__title{line-height:var(--line-height-tight)}.steps__desc{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.steps__item.is-done{color:var(--color-text-secondary)}.steps__item.is-done .steps__marker{border-color:var(--color-brand-500);color:var(--color-brand-500)}.steps__item.is-active{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.steps__item.is-active .steps__marker{border-color:var(--color-brand-500);background:var(--color-brand-500);color:var(--color-text-inverse)}.steps__item.is-error{color:var(--color-error-500)}.steps__item.is-error .steps__marker{border-color:var(--color-error-500);color:var(--color-error-500)}.steps--vertical{flex-direction:column;align-items:stretch;gap:var(--space-12)}.steps--vertical .steps__item{flex:0 0 auto;flex-direction:row;align-items:flex-start;gap:var(--space-10);text-align:left}.slider{appearance:none;width:100%;height:var(--space-4);border-radius:var(--radius-pill);background:var(--color-border);cursor:pointer}.slider:disabled{opacity:.5;cursor:not-allowed}.slider::-webkit-slider-thumb{appearance:none;width:var(--space-16);height:var(--space-16);border-radius:var(--radius-pill);border:2px solid var(--color-brand-500);background:var(--color-surface-elevated);cursor:inherit}.slider::-moz-range-thumb{width:var(--space-16);height:var(--space-16);border-radius:var(--radius-pill);border:2px solid var(--color-brand-500);background:var(--color-surface-elevated);cursor:inherit}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.breadcrumb__item{display:inline-flex;align-items:center;gap:var(--space-4)}.breadcrumb__item+.breadcrumb__item:before{content:"/";margin:0 var(--space-8);color:var(--color-text-tertiary)}.breadcrumb__item a{color:var(--color-text-secondary)}.breadcrumb__item a:hover{color:var(--color-brand-500)}.breadcrumb__item--current{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--control-h);height:var(--control-h);border-radius:var(--radius-pill);background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;overflow:hidden}.avatar--sm{width:var(--control-h-sm);height:var(--control-h-sm);font-size:var(--font-size-xs)}.avatar--lg{width:var(--control-h-lg);height:var(--control-h-lg);font-size:var(--font-size-base)}.avatar--xl{width:var(--space-48);height:var(--space-48);font-size:var(--font-size-h3)}.avatar img{width:100%;height:100%;object-fit:cover}.row-list{margin:0;padding:0;list-style:none}.row-list__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);padding:var(--space-12) 0;border-bottom:1px solid var(--color-border)}.row-list__item:last-child{border-bottom:none}.row-list--sm .row-list__item{padding:var(--space-8) 0}.input{display:inline-flex;align-items:center;gap:var(--space-6);width:100%;overflow:hidden}.input:focus-within{border-color:var(--color-brand-fill)}.input.is-error{border-color:var(--color-error-500)}.input.is-warning{border-color:var(--color-warning-500)}.input__field{flex:1 1 auto;min-width:0;height:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;outline:none}.input__field::placeholder{color:var(--color-text-tertiary)}.input__field:disabled{cursor:not-allowed}.input__affix{display:inline-flex;align-items:center;gap:var(--space-6);flex:0 0 auto;color:var(--color-text-tertiary)}.input__clear,.input__reveal,.input__search{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--color-text-tertiary);cursor:pointer}.input__clear:hover,.input__reveal:hover,.input__search:hover{color:var(--color-text-secondary)}.input__clear:disabled,.input__reveal:disabled,.input__search:disabled{cursor:not-allowed;opacity:.5}.textarea{display:block;width:100%;height:auto;min-height:calc(var(--control-h) * 2);padding:var(--space-6) var(--control-px);line-height:var(--line-height-base);resize:vertical}.textarea:focus{border-color:var(--color-brand-fill);outline:none}.textarea::placeholder{color:var(--color-text-tertiary)}.textarea.is-error{border-color:var(--color-error-500)}.textarea.is-warning{border-color:var(--color-warning-500)}.textarea-wrap{display:block;position:relative}.textarea-wrap__count{display:block;text-align:right}.number-input__addon{padding-inline-start:var(--space-6);border-inline-start:1px solid var(--color-border);color:var(--color-text-secondary);align-self:stretch;display:inline-flex;align-items:center}.date-range-pick{gap:var(--space-8);flex-wrap:wrap}.date-range-pick__sep{flex:0 0 auto;color:var(--color-text-tertiary)}.toast-strips,.toast-cards{position:fixed;z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-8);pointer-events:none}.toast-strips{top:var(--space-40);left:50%;transform:translate(-50%);align-items:center}.toast-cards{top:var(--space-40);inset-inline-end:var(--space-16);width:340px;max-width:calc(100vw - var(--space-32))}.toast-strip{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-6) var(--space-16);background:var(--color-surface-elevated);border-radius:var(--radius-sm);box-shadow:var(--shadow-popup);font-size:var(--font-size-base);color:var(--color-text-primary);pointer-events:auto;cursor:pointer}.toast-strip--success .anticon{color:var(--color-success-500)}.toast-strip--info .anticon{color:var(--color-info-500)}.toast-strip--warning .anticon{color:var(--color-warning-500)}.toast-strip--error .anticon{color:var(--color-error-500)}.toast-card{display:flex;gap:var(--space-10);padding:var(--space-12) var(--space-14);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-popup);pointer-events:auto}.toast-card--error .toast-card__icon{color:var(--color-error-500)}.toast-card--warning .toast-card__icon{color:var(--color-warning-500)}.toast-card--success .toast-card__icon{color:var(--color-success-500)}.toast-card--info .toast-card__icon{color:var(--color-info-500)}.toast-card__icon{flex:0 0 auto;line-height:var(--line-height-base)}.toast-card__body{flex:1 1 auto;min-width:0}.toast-card__title{font-weight:600;color:var(--color-text-primary);line-height:var(--line-height-base)}.toast-card__desc{margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-base);overflow-wrap:break-word}.toast-card__close{flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--color-text-tertiary);cursor:pointer}.toast-card__close:hover{color:var(--color-text-primary)}.toast-enter-active,.toast-leave-active{transition:opacity var(--transition-fast),transform var(--transition-fast)}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(calc(-1 * var(--space-8)))}.form--vertical .form-field+.form-field{margin-top:var(--space-16)}.form--inline{display:flex;flex-wrap:wrap;gap:var(--space-12);align-items:flex-end}.form--inline .form-field{margin-bottom:0}.form-field--bare{display:contents}.field__error{margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-error-500);line-height:var(--line-height-base)}.form-field.is-error .field__label{color:var(--color-error-500)}.form-field--required>.field__label:after{content:"*";margin-inline-start:var(--space-2);color:var(--color-error-500)}.select{display:inline-flex;align-items:center;gap:var(--space-6);width:100%;cursor:pointer;overflow:hidden}.select:focus-visible,.select.is-open{border-color:var(--color-brand-fill);outline:none}.select.is-error{border-color:var(--color-error-500)}.select.is-disabled{cursor:not-allowed}.select__body{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:var(--space-4);overflow:hidden;position:relative;align-self:stretch}.select__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select__placeholder{color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select__search{flex:1 1 auto;min-width:var(--space-32);border:0;padding:0;background:transparent;color:inherit;font:inherit;outline:none}.select__search::placeholder{color:var(--color-text-tertiary)}.select:not(.select--multiple) .select__search{position:absolute;inset:0;width:100%}.select__arrow,.select__clear{flex:0 0 auto;display:inline-flex;align-items:center;padding:0;border:0;background:transparent;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.select__clear{cursor:pointer}.select--multiple{height:auto;min-height:var(--control-h);padding-top:var(--space-2);padding-bottom:var(--space-2)}.select--multiple .select__body{flex-wrap:wrap}.select__chip{display:inline-flex;align-items:center;gap:var(--space-4);max-width:100%;padding:0 var(--space-4) 0 var(--space-6);background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-xs);font-size:var(--font-size-sm);line-height:var(--space-20)}.select__chip-x{padding:0;border:0;background:transparent;color:var(--color-text-tertiary);cursor:pointer;font-size:var(--font-size-micro)}.select__chip-x:hover{color:var(--color-text-primary)}.select-drop .select__list{max-height:256px;overflow-y:auto}.select__option.is-selected{font-weight:600}.select__option.is-active:not(.is-disabled){background:var(--color-surface-subtle)}.select__option.is-disabled{color:var(--color-text-disabled);cursor:not-allowed}.select__group{padding:var(--space-6) var(--space-12) var(--space-2);list-style:none}.select__empty{padding:var(--space-8);list-style:none}.modal-root,.drawer-root{position:fixed;inset:0;z-index:var(--z-modal);display:flex}.modal-root{justify-content:center;align-items:flex-start;overflow:auto;padding:var(--space-32) var(--space-16)}.modal-root--centered{align-items:center}.modal-root__mask,.drawer-root__mask{position:fixed;inset:0;background:var(--color-scrim)}.modal{position:relative;color:var(--color-text-primary);display:flex;flex-direction:column;max-width:100%;background:var(--color-surface-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);outline:none;max-height:calc(100vh - (var(--space-32) * 2))}.modal__header,.drawer__header{display:flex;align-items:flex-start;gap:var(--space-8);padding:var(--space-16) var(--space-20);border-bottom:1px solid var(--color-border)}.modal__title,.drawer__title{flex:1 1 auto;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);line-height:var(--line-height-base)}.modal__close,.drawer__close{flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--color-text-tertiary);cursor:pointer}.modal__close:hover,.drawer__close:hover{color:var(--color-text-primary)}.modal__body{padding:var(--space-20);overflow:auto;min-height:0}.modal__footer{padding:0 var(--space-20) var(--space-20)}.modal__message{display:flex;gap:var(--space-12);align-items:flex-start}.modal__icon{flex:0 0 auto;font-size:var(--font-size-xl);line-height:1;color:var(--color-warning-500)}.modal__icon--info{color:var(--color-info-500)}.modal__icon--success{color:var(--color-success-500)}.modal__icon--error{color:var(--color-error-500)}.modal__message-body{flex:1 1 auto;min-width:0;white-space:pre-line}.drawer-root{justify-content:flex-end}.drawer{position:fixed;color:var(--color-text-primary);background:var(--color-surface-elevated);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-width:100%;outline:none}.drawer--pure{position:static}.drawer--right{inset:0 0 0 auto}.drawer--left{inset:0 auto 0 0}.drawer--top{inset:0 0 auto;width:100%}.drawer--bottom{inset:auto 0 0;width:100%}.drawer__body{flex:1 1 auto;padding:var(--space-20);overflow:auto}.modal-enter-active,.modal-leave-active,.drawer-right-enter-active,.drawer-right-leave-active,.drawer-left-enter-active,.drawer-left-leave-active,.drawer-top-enter-active,.drawer-top-leave-active,.drawer-bottom-enter-active,.drawer-bottom-leave-active{transition:opacity var(--transition-fast)}.modal-enter-active .modal,.modal-leave-active .modal,.drawer-right-enter-active .modal,.drawer-right-leave-active .modal,.drawer-left-enter-active .modal,.drawer-left-leave-active .modal,.drawer-top-enter-active .modal,.drawer-top-leave-active .modal,.drawer-bottom-enter-active .modal,.drawer-bottom-leave-active .modal,.modal-enter-active .drawer,.modal-leave-active .drawer,.drawer-right-enter-active .drawer,.drawer-right-leave-active .drawer,.drawer-left-enter-active .drawer,.drawer-left-leave-active .drawer,.drawer-top-enter-active .drawer,.drawer-top-leave-active .drawer,.drawer-bottom-enter-active .drawer,.drawer-bottom-leave-active .drawer{transition:transform var(--transition-fast)}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal,.modal-leave-to .modal{transform:translateY(var(--space-16)) scale(.98)}.drawer-right-enter-from,.drawer-right-leave-to{opacity:0}.drawer-right-enter-from .drawer,.drawer-right-leave-to .drawer{transform:translate(100%)}.drawer-left-enter-from,.drawer-left-leave-to{opacity:0}.drawer-left-enter-from .drawer,.drawer-left-leave-to .drawer{transform:translate(-100%)}.drawer-top-enter-from,.drawer-top-leave-to{opacity:0}.drawer-top-enter-from .drawer,.drawer-top-leave-to .drawer{transform:translateY(-100%)}.drawer-bottom-enter-from,.drawer-bottom-leave-to{opacity:0}.drawer-bottom-enter-from .drawer,.drawer-bottom-leave-to .drawer{transform:translateY(100%)}.tabs{display:flex;flex-direction:column;min-width:0}.tabs__nav{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-16);border-bottom:1px solid var(--color-border);overflow-x:auto;scrollbar-width:thin}.tabs__tab{display:inline-flex;align-items:center;gap:var(--space-6);flex:0 0 auto;padding:var(--space-6) var(--space-16);border:0;border-bottom:2px solid transparent;margin-bottom:calc(var(--space-1) * -1);background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-base);white-space:nowrap;cursor:pointer;transition:var(--transition-fast)}.tabs__tab:hover:not(.is-disabled){color:var(--color-brand-fill)}.tabs__tab.is-active{color:var(--color-brand-fill);border-bottom-color:var(--color-brand-fill)}.tabs__tab.is-disabled{color:var(--color-text-disabled);cursor:not-allowed}.tabs__extra{margin-inline-start:auto;display:inline-flex;align-items:center;gap:var(--space-8)}.tabs__body{min-width:0}.tabs--sm .tabs__tab{padding:var(--space-4) var(--space-12);font-size:var(--font-size-sm)}.input-group{display:inline-flex;align-items:center;gap:var(--space-8);width:100%}.input-group--compact{gap:0}.input-group--compact>*{border-radius:0}.input-group--compact>*:first-child{border-start-start-radius:var(--radius-sm);border-end-start-radius:var(--radius-sm)}.input-group--compact>*:last-child{border-start-end-radius:var(--radius-sm);border-end-end-radius:var(--radius-sm)}.input-group--compact>*+*{margin-inline-start:calc(var(--space-1) * -1)}.input-group.date-range-pick{width:auto;flex-wrap:nowrap;gap:var(--space-6)}.input-group.date-range-pick>.date-pick{width:auto;flex:0 1 auto;min-width:0}.input-group.date-range-pick>.date-range-pick__sep{flex:0 0 auto;color:var(--color-text-tertiary)}.input-group.date-range-pick>.date-range-pick__presets{flex:0 0 auto}.pager{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin:0;padding:0;list-style:none}.pager>li{display:flex;align-items:center}.pager__item{display:inline-flex;align-items:center;justify-content:center;min-width:var(--control-h);height:var(--control-h);padding:0 var(--space-6);font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--color-text-primary);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.pager__item:hover:not(:disabled){color:var(--color-brand-fill);border-color:var(--color-border)}.pager__item.is-active{color:var(--color-brand-fill);border-color:var(--color-brand-fill);font-weight:600}.pager__item:disabled{color:var(--color-text-disabled);cursor:not-allowed}.pager__gap{min-width:var(--control-h);text-align:center;color:var(--color-text-tertiary);letter-spacing:var(--letter-spacing-label)}.pager__total{margin-inline-end:auto;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.pager__jump{gap:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pager__jump-input{width:var(--space-48);text-align:center}.pager--sm .pager__item,.pager--sm .pager__gap{min-width:var(--control-h-sm);height:var(--control-h-sm)}.popup{position:absolute;top:0;left:0;z-index:var(--z-popup);width:max-content;margin:0;transform:translate(var(--popup-x, 0),var(--popup-y, 0))}.popup__arrow{position:absolute;width:8px;height:8px;background:inherit;transform:rotate(45deg)}.popup--pure{position:static;transform:none}.popup--tooltip{max-width:250px;padding:var(--space-6) var(--space-8);color:var(--color-text-inverse);font-size:var(--font-size-sm);line-height:var(--line-height-base);text-align:start;overflow-wrap:break-word;background:var(--color-spotlight);border-radius:var(--radius-sm);box-shadow:var(--shadow-popup)}.popup--panel{min-width:177px;max-width:320px;padding:var(--space-12);color:var(--color-text-primary);background:var(--color-surface-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-popup)}.popup__title{margin-bottom:var(--space-8);font-weight:600;color:var(--color-text-primary)}.popconfirm__message{display:flex;align-items:flex-start;gap:var(--space-8);margin-bottom:var(--space-12)}.popconfirm__icon{flex:0 0 auto;color:var(--color-warning-500);line-height:1;padding-top:var(--space-2)}.popconfirm__title{flex:1 1 auto;font-weight:600}.popup-enter-active,.popup-leave-active{transition:opacity var(--transition-fast)}.popup-enter-from,.popup-leave-to{opacity:0}.popup:not(.is-placed):not(.popup--pure){visibility:hidden}.menu{margin:0;padding:var(--space-4);list-style:none;min-width:160px;background-color:var(--color-surface-elevated);background-clip:padding-box;border-radius:var(--radius-md);box-shadow:var(--shadow-popup)}.menu__item{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-6) var(--space-12);border-radius:var(--radius-xs);font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.menu__item a{color:inherit;display:flex;align-items:center;gap:inherit;flex:1 1 auto;margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-12));padding:var(--space-6) var(--space-12)}.menu__item:hover{background:var(--color-surface-subtle)}.menu__item.is-selected{color:var(--color-brand-500);background:var(--color-brand-wash)}.menu__item.is-disabled{color:var(--color-text-disabled);cursor:not-allowed;background:none;pointer-events:none}.menu__divider{height:1px;margin:var(--space-4) 0;background:var(--color-border)}.nav-menu{margin:0;padding:0;list-style:none}.nav-menu__item{display:flex;align-items:stretch;height:36px;margin:var(--space-1) 0;border-left:3px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1;color:var(--color-nav-item);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),border-left-color var(--transition-fast)}.nav-menu__item a,.nav-menu__item button{display:flex;align-items:center;flex:1 1 auto;min-width:0;padding:0 var(--space-12);color:inherit}.nav-menu__item button{appearance:none;background:none;border:0;font:inherit;text-align:left;cursor:pointer}.nav-menu__item:hover{color:var(--color-nav-item-hover);background:var(--color-nav-item-hover-bg)}.nav-menu__item.is-selected{border-left-color:var(--color-nav-accent);background:var(--color-nav-selected-bg)}.nav-menu__icon{font-size:var(--icon-sm);margin-right:var(--space-12);flex-shrink:0}.nav-menu__label{font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--line-height-base)}.nav-menu__toggle-arrow{margin-left:auto;flex-shrink:0;transition:transform var(--transition-fast)}.nav-menu__toggle.is-open .nav-menu__toggle-arrow{transform:rotate(90deg)}.nav-menu__sub{margin:0;padding:0;list-style:none}.nav-menu__sub .nav-menu__item{height:34px}.nav-menu__sub .nav-menu__item a,.nav-menu__sub .nav-menu__item button{padding-left:var(--space-36)}.nav-menu__section{margin:var(--space-12) 0 var(--space-4);padding:0 var(--space-12)}.nav-menu--collapsed .nav-menu__label,.nav-menu--collapsed .nav-menu__toggle-arrow,.nav-menu--collapsed .nav-menu__section{display:none}.nav-menu--collapsed .nav-menu__icon{margin-right:0}.nav-menu--collapsed .nav-menu__group>.anchor{display:block}.nav-menu--collapsed .nav-menu__item a,.nav-menu--collapsed .nav-menu__item button{justify-content:center;padding:0 var(--space-8)}.disclosure{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.disclosure__panel+.disclosure__panel{border-top:1px solid var(--color-border)}.disclosure__header{display:flex;align-items:center;gap:var(--space-6);width:100%;padding:var(--space-8);border:none;background:var(--color-surface-subtle);color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer}.disclosure__header:disabled{color:var(--color-text-disabled);cursor:not-allowed}.disclosure__arrow{font-size:var(--font-size-sm);color:var(--color-text-tertiary);flex-shrink:0;transition:transform var(--transition-fast)}.disclosure__panel--open>.disclosure__header .disclosure__arrow{transform:rotate(90deg)}.disclosure__title{flex:1;min-width:0}.disclosure__body{padding:var(--space-8)}.disclosure--plain{border:none;border-radius:0;overflow:visible}.disclosure--plain .disclosure__header{background:transparent}.disclosure--ghost{border:none;border-radius:0;overflow:visible}.disclosure--ghost .disclosure__panel+.disclosure__panel{border-top:none}.disclosure--ghost .disclosure__header{background:transparent;padding-left:0;padding-right:0}.disclosure--ghost .disclosure__body{padding-left:0;padding-right:0}.alert{display:flex;gap:var(--space-8);padding:var(--space-12);border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:var(--font-size-sm);background:var(--color-tint-2)}.alert--info{border-color:var(--color-brand-500);background:var(--color-brand-tint-8)}.alert--warn{border-color:var(--color-warning-500);background:color-mix(in srgb,var(--color-warning-500) 8%,transparent)}.alert--error{border-color:var(--color-error-500);background:color-mix(in srgb,var(--color-error-500) 8%,transparent)}.alert--ok{border-color:var(--color-success-500);background:color-mix(in srgb,var(--color-success-500) 8%,transparent)}.alert__icon{font-size:var(--font-size-lg);line-height:var(--line-height-tight);flex-shrink:0}.alert--info .alert__icon{color:var(--color-brand-500)}.alert--warn .alert__icon{color:var(--color-warning-500)}.alert--error .alert__icon{color:var(--color-error-500)}.alert--ok .alert__icon{color:var(--color-success-500)}.alert__body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.alert__title{font-weight:var(--font-weight-semibold)}.alert__desc{color:var(--color-text-secondary)}.alert__actions{display:flex;align-items:center;gap:var(--space-4);margin-left:auto;flex-shrink:0}.alert__dismiss{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;align-self:flex-start;margin-left:auto;padding:0;border:none;background:none;color:inherit;font-size:var(--font-size-xs);opacity:.55;cursor:pointer}.alert__dismiss:hover{opacity:1}.result{display:flex;flex-direction:column;align-items:center;gap:var(--space-8);padding:var(--space-48) var(--space-16);text-align:center}.result__icon{font-size:var(--icon-2xl);line-height:1;color:var(--color-text-tertiary)}.result__title{font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}.result__desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-base);max-width:60ch}.result__actions{margin-top:var(--space-8)}.result--ok .result__icon{color:var(--color-success-500)}.result--warn .result__icon{color:var(--color-warning-500)}.result--error .result__icon{color:var(--color-error-500)}.result--info .result__icon{color:var(--color-brand-500)}.result--tight{padding:var(--space-16) var(--space-12)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-8);padding:var(--space-48) var(--space-16);color:var(--color-text-tertiary);font-size:var(--font-size-sm);text-align:center}.empty__icon{font-size:var(--icon-xl);line-height:1}.empty--tight{padding:var(--space-16) var(--space-12)}.hint{font-size:var(--font-size-sm);color:var(--color-text-tertiary);line-height:var(--line-height-base)}.hint__sub{display:block;margin-left:var(--space-4)}.hint--micro{font-size:var(--font-size-micro)}.divider{height:1px;border:0;margin:var(--space-16) 0;background:var(--color-border)}.divider--tight{margin:var(--space-8) 0}.divider--vertical{display:inline-block;align-self:center;width:1px;height:var(--space-16);margin:0 var(--space-8)}.section-head{display:flex;align-items:center;gap:var(--space-8);margin:var(--space-16) 0 var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.section-head:after{content:"";flex:1;height:1px;background:var(--color-border)}.details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-8);padding:var(--space-8) 0}.details-grid--narrow{grid-template-columns:1fr}@media(max-width:480px){.details-grid{grid-template-columns:1fr}}.detail-card{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-8) var(--space-12);word-break:break-word;min-width:0}.detail-card--wide{grid-column:1 / -1}.detail-card--clickable{cursor:pointer;transition:var(--transition-fast)}.detail-card--clickable:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.detail-card__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);line-height:var(--line-height-tight);margin-bottom:var(--space-2)}.detail-card__value{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--color-text-primary);overflow-wrap:break-word}.detail-card__value--mono{font-family:var(--font-mono)}.detail-row{display:grid;grid-template-columns:110px 1fr;gap:var(--space-8);padding:var(--space-6) 0;border-bottom:1px solid var(--color-border)}.detail-row:last-child{border-bottom:none}.detail-row--flush{border-bottom:none;padding:var(--space-2) 0}.detail-row--top{align-items:flex-start}.detail-row__label,.detail-row>dt{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);min-width:0}.detail-row__label.eyebrow,.eyebrow.detail-row__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);line-height:var(--line-height-tight)}.detail-row__label,.detail-row>dt{min-width:0;overflow-wrap:break-word}.detail-row__value,.detail-row>dd{font-size:var(--font-size-sm);color:var(--color-text-primary);min-width:0;overflow-wrap:break-word}.detail-row>dd{margin:0}.detail-row__value--mono{font-family:var(--font-mono)}@keyframes btn-spin{to{transform:rotate(360deg)}}.field-w-96{width:var(--control-w-96)}.field-w-128{width:var(--control-w-128)}.field-w-160{width:var(--control-w-160)}.field-w-192{width:var(--control-w-192)}.field-w-224{width:var(--control-w-224)}.field-w-256{width:var(--control-w-256)}.field-w-320{width:var(--control-w-320)}.field-w-360{width:var(--control-w-360)}.field-min-w-96{min-width:var(--control-w-96)}.field-min-w-128{min-width:var(--control-w-128)}.field-min-w-160{min-width:var(--control-w-160)}.field-min-w-192{min-width:var(--control-w-192)}.field-min-w-224{min-width:var(--control-w-224)}.field-min-w-256{min-width:var(--control-w-256)}.field-min-w-320{min-width:var(--control-w-320)}.field-min-w-360{min-width:var(--control-w-360)}.field-max-w-96{max-width:var(--control-w-96)}.field-max-w-128{max-width:var(--control-w-128)}.field-max-w-160{max-width:var(--control-w-160)}.field-max-w-192{max-width:var(--control-w-192)}.field-max-w-224{max-width:var(--control-w-224)}.field-max-w-256{max-width:var(--control-w-256)}.field-max-w-320{max-width:var(--control-w-320)}.field-max-w-360{max-width:var(--control-w-360)}.table-search{width:25vw}.chart-box{position:relative;height:var(--chart-h)}.chart-box--sm{height:var(--chart-h-sm)}.chart-box--lg{height:var(--chart-h-lg)}.avatar--brand{background:var(--color-brand-fill);color:var(--color-text-inverse)}.avatar--ok{background:var(--color-success-fill);color:var(--color-text-inverse)}:root{--site-night: color-mix(in srgb, var(--color-gray-950) 80%, var(--color-brand-900));--site-night-plain: color-mix(in srgb, var(--color-gray-950) 88%, var(--color-brand-900));--site-night-deep: var(--color-gray-950);--site-night-2: color-mix(in srgb, var(--color-gray-950) 70%, var(--color-brand-900));--site-day: color-mix(in srgb, var(--color-gray-100) 65%, var(--color-brand-200));--site-day-2: color-mix(in srgb, var(--color-gray-100) 52%, var(--color-brand-200));--site-glow-night: color-mix(in srgb, var(--color-brand-600) 30%, transparent);--site-glow-day: color-mix(in srgb, var(--color-brand-500) 16%, transparent);--site-snow-night: #a0d7eb;--site-snow-day: #2479a1;--site-signal: var(--color-brand-200);--site-signal-glow: var(--color-brand-500);--site-card-day: #ffffff;--site-card-night: color-mix(in srgb, var(--color-gray-950) 82%, var(--color-brand-800));--site-mask-on: #000000;--site-text-night: color-mix(in srgb, var(--color-text-inverse) 87%, transparent);--site-text-night-2: color-mix(in srgb, var(--color-text-inverse) 60%, transparent);--site-text-night-3: color-mix(in srgb, var(--color-text-inverse) 55%, transparent);--site-line-night: color-mix(in srgb, var(--color-text-inverse) 10%, transparent);--site-text-day: color-mix(in srgb, #000 87%, transparent);--site-text-day-2: color-mix(in srgb, #000 65%, transparent);--site-text-day-3: color-mix(in srgb, #000 60%, transparent);--site-ink-night: var(--color-brand-400);--site-ink-day: var(--color-brand-800);--site-chalk: #eff9ff;--site-tint-cloud: var(--color-brand-400);--site-tint-backup: var(--color-info-300);--site-tint-managed: var(--color-success-300);--site-tint-security: var(--color-purple-500);--site-tint-web: var(--color-warning-400);--site-tint-platform: color-mix(in srgb, var(--color-teal-500) 70%, #fff);--site-tint-about: var(--color-indigo-500);--font-family-display: "Telegraf", var(--font-family-base);--site-display-hero: clamp(var(--font-size-h1), 5vw, var(--font-size-hero));--site-display-section: clamp(var(--font-size-h2), 4vw, 48px);--site-max-w: 1560px;--site-gutter: clamp(20px, 5vw, 88px);--site-section-y: var(--space-96);--site-section-y-sm: var(--space-56)}@font-face{font-family:Telegraf;font-weight:400;font-display:swap;src:url(/fonts/Telegraf/pp-telegraf.woff2) format("woff2"),url(/fonts/Telegraf/pp-telegraf.woff) format("woff")}@font-face{font-family:Telegraf;font-weight:800;font-display:swap;src:url(/fonts/Telegraf/pp-telegraf-ultra.woff2) format("woff2"),url(/fonts/Telegraf/pp-telegraf-ultra.woff) format("woff")}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-base);color:var(--color-text-primary);background:var(--site-page);-webkit-font-smoothing:antialiased}img,svg{max-width:100%}a{color:inherit}.display{font-family:var(--font-family-display);font-weight:800;line-height:var(--line-height-tight);letter-spacing:-.015em;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:12 6 6;overflow-wrap:anywhere}.site-container{width:min(var(--site-max-w),100% - 2 * var(--site-gutter));margin:0 auto;position:relative;z-index:2}a.btn{text-decoration:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:site-sky-in 1.4s cubic-bezier(.4,0,.2,1);-webkit-mask:linear-gradient(180deg,var(--site-mask-on) 45%,transparent 55%) 0 0 / 100% 220% no-repeat;mask:linear-gradient(180deg,var(--site-mask-on) 45%,transparent 55%) 0 0 / 100% 220% no-repeat}@keyframes site-sky-in{0%{-webkit-mask-position:0 100%;mask-position:0 100%}to{-webkit-mask-position:0 0;mask-position:0 0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:1000px){html:has(.calc__bar){scroll-padding-bottom:var(--space-96)}body:has(.calc__bar){padding-bottom:var(--space-80)}}html{--site-page: var(--site-night);--site-snow: var(--site-snow-night);--site-is-night: 1}html[data-mode=day]{--site-page: var(--site-day);--site-snow: var(--site-snow-day);--site-is-night: 0}[data-mode=night] [data-role],[data-mode=mixed] [data-role=hero],[data-mode=mixed] [data-role=secondary],[data-role=anchor]{--color-text-primary: var(--site-text-night);--color-text-secondary: var(--site-text-night-2);--color-text-tertiary: var(--site-text-night-3);--color-border: var(--site-line-night);--color-surface-elevated: var(--site-night-plain);--color-surface-subtle: var(--site-night);--site-ink: var(--site-ink-night);--site-ground: var(--site-night);--site-ground-2: var(--site-night);--site-glow: var(--site-glow-night);--site-trace: var(--color-brand-500);--site-trace-opacity: .32;--site-snow: var(--site-snow-night);--site-is-night: 1;--site-card: var(--site-card-night);--site-card-line: var(--site-line-night);--site-card-rule: var(--site-line-night);--site-card-text: var(--site-text-night);--site-card-text-2: var(--site-text-night-2);--site-card-ink: var(--site-ink-night);--site-card-chip: color-mix(in srgb, var(--color-brand-500) 14%, transparent);--site-card-shadow: 0 24px 50px -30px color-mix(in srgb, var(--color-gray-950) 90%, transparent);--site-quiet-line: var(--color-border);--site-quiet-fill: color-mix(in srgb, var(--color-text-inverse) 8%, transparent);--site-quiet-fill-hover: color-mix(in srgb, var(--color-text-inverse) 16%, transparent);--site-error: var(--color-error-400)}[data-mode=day] [data-role]:not([data-role=anchor]),[data-mode=mixed] [data-role=primary]{--color-text-primary: var(--site-text-day);--color-text-secondary: var(--site-text-day-2);--color-text-tertiary: var(--site-text-day-3);--color-border: var(--color-gray-200);--color-surface-elevated: var(--site-card);--color-surface-subtle: var(--color-gray-50);--site-ink: var(--site-ink-day);--site-ground: var(--site-day);--site-ground-2: var(--site-day-2);--site-glow: var(--site-glow-day);--site-trace: var(--color-brand-700);--site-trace-opacity: .22;--site-snow: var(--site-snow-day);--site-is-night: 0;--site-card: var(--site-card-day);--site-card-line: transparent;--site-card-rule: var(--color-gray-200);--site-card-text: var(--site-text-day);--site-card-text-2: var(--site-text-day-2);--site-card-ink: var(--site-ink-day);--site-card-chip: var(--color-brand-50);--site-card-shadow: 0 20px 40px -26px color-mix(in srgb, var(--color-gray-900) 35%, transparent);--site-quiet-line: color-mix(in srgb, var(--site-ink-day) 75%, transparent);--site-quiet-fill: color-mix(in srgb, var(--site-card-day) 55%, transparent);--site-quiet-fill-hover: var(--site-card-day);--site-error: var(--color-error-700)}[data-role]{position:relative;color:var(--color-text-primary);background:var(--site-ground)}[data-role]:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(45vw 35vw at 92% 30%,var(--site-glow),transparent 70%);-webkit-mask:linear-gradient(180deg,transparent,var(--site-mask-on) 22%,var(--site-mask-on) 78%,transparent);mask:linear-gradient(180deg,transparent,var(--site-mask-on) 22%,var(--site-mask-on) 78%,transparent)}[data-role][data-alt]{background:var(--site-ground-2)}[data-role][data-alt]:before{background:radial-gradient(45vw 35vw at 8% 70%,var(--site-glow),transparent 70%)}[data-role=anchor]{background:var(--site-night-deep)}[data-mode=night] [data-role=anchor]{background:var(--site-ground)}[data-role] .btn--quiet{border-color:var(--site-quiet-line);background:var(--site-quiet-fill)}[data-role] .btn--quiet:hover{background:var(--site-quiet-fill-hover)}@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-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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.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}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.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}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.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}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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)}}@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-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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.site-nav{view-transition-name:site-nav}canvas.snow{view-transition-name:site-snow}:root[data-vt=page]::view-transition-old(root){animation:site-page-out .2s ease-out both}:root[data-vt=page]::view-transition-new(root){animation:site-page-in .28s ease-in both;-webkit-mask:none;mask:none}@keyframes site-page-out{to{opacity:0}}@keyframes site-page-in{0%{opacity:0}}
