/*!
 * ECTrons UI - tokens, base styles and components.
 * Built by Grunt from workspace/sass/. Never edit the copy in static/.
 */@layer theme, base, components, utilities;@layer theme{:root,[data-theme=light]{color-scheme:light;--ec-brand-orange: #FA8B22;--ec-brand-navy: #0A2471;--ec-brand-silver: #D8D5DF;--ec-orange-50: #FFF9F4;--ec-orange-100: #FEF1E4;--ec-orange-200: #FEE2C8;--ec-orange-300: #FDCEA2;--ec-orange-400: #FCB069;--ec-orange-500: #FA8B22;--ec-orange-600: #DE7A1E;--ec-orange-700: #BD6719;--ec-orange-800: #9F5414;--ec-orange-900: #844410;--ec-orange-950: #6C360C;--ec-navy-50: #EEF1FA;--ec-navy-100: #DCE2F4;--ec-navy-200: #B9C4E8;--ec-navy-300: #8C9FD6;--ec-navy-400: #5A74BE;--ec-navy-500: #3350A3;--ec-navy-600: #1F3B8C;--ec-navy-700: #142E7E;--ec-navy-800: #0A2471;--ec-navy-900: #081B56;--ec-navy-950: #050F33;--ec-slate-50: #F8FAFC;--ec-slate-100: #F1F5F9;--ec-slate-200: #E2E8F0;--ec-slate-300: #CBD5E1;--ec-slate-400: #94A3B8;--ec-slate-500: #64748B;--ec-slate-600: #475569;--ec-slate-700: #334155;--ec-slate-800: #1E293B;--ec-slate-900: #0F172A;--ec-slate-950: #020617;--ec-bg: var(--ec-slate-100);--ec-surface: #FFFFFF;--ec-surface-muted: var(--ec-slate-50);--ec-surface-raised: #FFFFFF;--ec-border: var(--ec-slate-200);--ec-border-strong: var(--ec-slate-300);--ec-fg: var(--ec-slate-900);--ec-fg-muted: var(--ec-slate-500);--ec-fg-subtle: var(--ec-slate-400);--ec-fg-secondary: var(--ec-slate-600);--ec-primary: var(--ec-navy-800);--ec-primary-hover: var(--ec-navy-700);--ec-primary-subtle: var(--ec-navy-50);--ec-on-primary: #FFFFFF;--ec-accent: var(--ec-orange-500);--ec-ai: var(--ec-orange-500);--ec-ai-subtle: var(--ec-orange-100);--ec-ai-subtle-hover: var(--ec-orange-200);--ec-ai-fg: var(--ec-orange-800);--ec-ai-ring: var(--ec-orange-600);--ec-ai-surface: var(--ec-orange-50);--ec-ai-fill: var(--ec-brand-orange);--ec-ai-border: var(--ec-brand-orange);--ec-on-ai: #FFFFFF;--ec-neutral: var(--ec-slate-500);--ec-neutral-subtle: var(--ec-slate-100);--ec-neutral-fg: var(--ec-slate-700);--ec-success: #16A34A;--ec-success-subtle: #F0FDF4;--ec-success-fg: #15803D;--ec-warning: #F59E0B;--ec-warning-subtle: #FFFBEB;--ec-warning-fg: #92400E;--ec-danger: #DC2626;--ec-danger-hover: #B91C1C;--ec-danger-subtle: #FEF2F2;--ec-danger-fg: #B91C1C;--ec-on-danger: #FFFFFF;--ec-info: #0284C7;--ec-info-subtle: #F0F9FF;--ec-info-fg: #0369A1;--ec-focus: var(--ec-navy-500);--ec-overlay: rgba(15, 23, 42, .45);--ec-tooltip-bg: var(--ec-slate-900);--ec-tooltip-fg: #FFFFFF;--ec-tooltip-border: transparent;--ec-control-border: #7D8BA1;--ec-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--ec-skeleton: var(--ec-slate-200);--ec-avatar-bg: var(--ec-navy-100);--ec-logo-color-display: block;--ec-logo-white-display: none;--ec-avatar-fg: var(--ec-navy-800);--ec-product-tint: var(--ec-navy-500);--ec-cat-navy: var(--ec-navy-500);--ec-cat-orange: var(--ec-orange-600);--ec-cat-teal: #0D9488;--ec-cat-violet: #7C3AED;--ec-cat-sky: #0284C7;--ec-cat-rose: #E11D48;--ec-cat-amber: #D97706;--ec-cat-slate: var(--ec-slate-500);--ec-font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ec-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ec-text-display: 1.875rem;--ec-text-display-lh: 2.25rem;--ec-text-h1: 1.5rem;--ec-text-h1-lh: 2rem;--ec-text-h2: 1.125rem;--ec-text-h2-lh: 1.75rem;--ec-text-h3: 1rem;--ec-text-h3-lh: 1.5rem;--ec-text-body: .875rem;--ec-text-body-lh: 1.25rem;--ec-text-body-lg: 1rem;--ec-text-body-lg-lh: 1.5rem;--ec-text-sm: .8125rem;--ec-text-sm-lh: 1.125rem;--ec-text-xs: .75rem;--ec-text-xs-lh: 1rem;--ec-text-kpi: 1.75rem;--ec-text-kpi-lh: 2rem;--ec-page-padding: 1rem;--ec-card-padding: 1.25rem;--ec-field-gap: 1rem;--ec-radius-sm: 4px;--ec-radius-md: 8px;--ec-radius-lg: 12px;--ec-radius-xl: 16px;--ec-radius-full: 9999px;--ec-shadow-xs: 0 1px 2px rgba(15, 23, 42, .06);--ec-shadow-sm: 0 2px 6px rgba(15, 23, 42, .08);--ec-shadow-md: 0 8px 24px rgba(15, 23, 42, .12);--ec-shadow-lg: 0 20px 48px rgba(15, 23, 42, .20);--ec-shadow-float: 0 2px 6px rgba(15, 23, 42, .08);--ec-duration-fast: 120ms;--ec-duration-base: 180ms;--ec-duration-slow: 260ms;--ec-duration-fade: 120ms;--ec-ease-standard: cubic-bezier(.2, 0, 0, 1);--ec-ease-exit: cubic-bezier(.4, 0, 1, 1);--ec-z-sticky: 20;--ec-z-sidebar: 30;--ec-z-topbar: 40;--ec-z-dropdown: 50;--ec-z-drawer: 60;--ec-z-modal: 70;--ec-z-toast: 80;--ec-z-tooltip: 90}:root{--ec-control-h-sm: 32px;--ec-control-h: 36px;--ec-control-h-lg: 44px;--ec-row-h: 44px;--ec-gap: 16px}@media(min-width: 768px){:root{--ec-page-padding: 1.5rem}}@media(prefers-reduced-motion: reduce){:root{--ec-duration-fast: 0ms;--ec-duration-base: 0ms;--ec-duration-slow: 0ms;--ec-duration-fade: 80ms}}[data-theme=dark]{color-scheme:dark;--ec-bg: #0B1220;--ec-surface: #111A2E;--ec-surface-muted: #16213A;--ec-surface-raised: #1A2642;--ec-border: #24324F;--ec-border-strong: #33446A;--ec-fg: var(--ec-slate-100);--ec-fg-muted: var(--ec-slate-400);--ec-fg-subtle: var(--ec-slate-500);--ec-fg-secondary: var(--ec-slate-400);--ec-primary: var(--ec-navy-300);--ec-primary-hover: var(--ec-navy-200);--ec-primary-subtle: rgba(140, 159, 214, .14);--ec-on-primary: var(--ec-navy-950);--ec-accent: var(--ec-orange-400);--ec-btn-primary-bg: #96AFF2;--ec-btn-primary-fg: var(--ec-navy-800);--ec-btn-primary-hover: #ABC0F5;--ec-sidebar-active-bg: #33405F;--ec-sidebar-active-fg: #FFFFFF;--ec-ai: var(--ec-orange-400);--ec-ai-subtle: rgba(250, 139, 34, .14);--ec-ai-subtle-hover: rgba(250, 139, 34, .22);--ec-ai-fg: var(--ec-orange-300);--ec-ai-ring: var(--ec-orange-400);--ec-ai-surface: rgba(250, 139, 34, .06);--ec-ai-fill: var(--ec-brand-orange);--ec-on-ai: #FFFFFF;--ec-neutral: var(--ec-slate-400);--ec-neutral-subtle: rgba(148, 163, 184, .14);--ec-neutral-fg: var(--ec-slate-300);--ec-success: #4ADE80;--ec-success-subtle: rgba(74, 222, 128, .14);--ec-success-fg: #86EFAC;--ec-warning: #FBBF24;--ec-warning-subtle: rgba(251, 191, 36, .14);--ec-warning-fg: #FCD34D;--ec-danger: #F87171;--ec-danger-hover: #FCA5A5;--ec-danger-subtle: rgba(248, 113, 113, .14);--ec-danger-fg: #FCA5A5;--ec-on-danger: var(--ec-slate-950);--ec-info: #38BDF8;--ec-info-subtle: rgba(56, 189, 248, .14);--ec-info-fg: #7DD3FC;--ec-focus: var(--ec-navy-300);--ec-overlay: rgba(0, 0, 0, .6);--ec-tooltip-border: var(--ec-border-strong);--ec-control-border: #6B7FA6;--ec-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--ec-skeleton: #1E2A45;--ec-avatar-bg: rgba(140, 159, 214, .22);--ec-logo-color-display: none;--ec-logo-white-display: block;--ec-avatar-fg: var(--ec-navy-200);--ec-product-tint: var(--ec-navy-300);--ec-cat-navy: var(--ec-navy-300);--ec-cat-orange: var(--ec-orange-400);--ec-cat-teal: #2DD4BF;--ec-cat-violet: #A78BFA;--ec-cat-sky: #38BDF8;--ec-cat-rose: #FB7185;--ec-cat-amber: #FBBF24;--ec-cat-slate: var(--ec-slate-400);--ec-shadow-xs: none;--ec-shadow-sm: none;--ec-shadow-float: 0 0 0 0 transparent;--ec-shadow-md: 0 0 0 1px var(--ec-border-strong), 0 8px 24px rgba(0, 0, 0, .40);--ec-shadow-lg: 0 0 0 1px var(--ec-border-strong), 0 20px 48px rgba(0, 0, 0, .50)}[data-product=vision]{--ec-product-tint: #0284C7}[data-product=mes]{--ec-product-tint: #0D9488}[data-product=work]{--ec-product-tint: var(--ec-navy-500)}[data-theme=dark][data-product=vision],[data-theme=dark] [data-product=vision]{--ec-product-tint: #38BDF8}[data-theme=dark][data-product=mes],[data-theme=dark] [data-product=mes]{--ec-product-tint: #2DD4BF}[data-theme=dark][data-product=work],[data-theme=dark] [data-product=work]{--ec-product-tint: var(--ec-navy-300)}[data-surface=navy]{color-scheme:dark;--ec-surface: var(--ec-navy-800);--ec-surface-muted: rgba(255, 255, 255, .08);--ec-surface-raised: var(--ec-navy-700);--ec-border: rgba(255, 255, 255, .12);--ec-border-strong: rgba(255, 255, 255, .22);--ec-control-border: rgba(255, 255, 255, .45);--ec-fg: #FFFFFF;--ec-fg-secondary: var(--ec-navy-100);--ec-fg-muted: var(--ec-navy-200);--ec-fg-subtle: var(--ec-navy-300);--ec-primary: #FFFFFF;--ec-primary-hover: var(--ec-navy-50);--ec-on-primary: var(--ec-navy-800);--ec-primary-subtle: rgba(255, 255, 255, .14);--ec-neutral-subtle: rgba(255, 255, 255, .12);--ec-neutral-fg: var(--ec-navy-100);--ec-focus: #FFFFFF;--ec-avatar-bg: rgba(255, 255, 255, .16);--ec-avatar-fg: #FFFFFF;--ec-logo-color-display: none;--ec-logo-white-display: block;--ec-shadow-xs: none;--ec-shadow-sm: none;--ec-shadow-md: 0 8px 24px rgba(0, 0, 0, .35)}[data-theme=dark] [data-surface=navy],[data-theme=dark][data-surface=navy]{--ec-surface: var(--ec-navy-950);--ec-surface-raised: var(--ec-navy-900)}[data-surface=tinted]{--ec-surface: #EBF2FE;--ec-surface-muted: #DCE7FB;--ec-surface-raised: #FFFFFF;--ec-border: #D3E0F7;--ec-border-strong: #B6CAF0;--ec-fg: #0E1B42;--ec-fg-muted: #3F5079;--ec-primary-subtle: #DCE7FB}[data-theme=dark] [data-surface=tinted],[data-theme=dark][data-surface=tinted]{--ec-surface: #16244A;--ec-surface-muted: #22325E;--ec-surface-raised: #1C2B55;--ec-border: #2C3D6B;--ec-border-strong: #3E5288;--ec-fg: var(--ec-slate-100);--ec-fg-muted: var(--ec-slate-400);--ec-primary-subtle: rgba(140, 159, 214, .18)}}@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/inter-latin-wght-normal.260c81a4759b.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:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/inter-latin-ext-wght-normal.1ad231aac0a8.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:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/jetbrains-mono-latin-500-normal.a21e038a03f7.woff2") format("woff2")}@keyframes ec-spin{to{transform:rotate(360deg)}}@layer base{*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;border:0 solid var(--ec-border)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}body{min-height:100vh;font-family:var(--ec-font-sans);font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh);color:var(--ec-fg);background-color:var(--ec-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}ol,ul,menu{list-style:none}a{color:inherit;text-decoration:inherit}b,strong{font-weight:600}code,kbd,samp,pre{font-family:var(--ec-font-mono);font-size:1em;font-variant-ligatures:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}table{border-collapse:collapse;text-indent:0;border-color:inherit}button,input,select,optgroup,textarea{font:inherit;letter-spacing:inherit;color:inherit;background-color:rgba(0,0,0,0)}button,[role=button]{cursor:pointer}:disabled{cursor:default}textarea{resize:vertical}::placeholder{color:var(--ec-fg-subtle);opacity:1}[hidden]:where(:not([hidden=until-found])){display:none !important}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-icon{display:inline-block;flex-shrink:0;width:var(--ec-icon-size, 20px);height:var(--ec-icon-size, 20px);fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.ec-icon--sm{--ec-icon-size: 16px}.ec-icon--lg{--ec-icon-size: 24px}.ec-skip-link{position:fixed;top:.75rem;left:.75rem;z-index:var(--ec-z-tooltip);padding:.5rem 1rem;border-radius:var(--ec-radius-md);background:var(--ec-primary);color:var(--ec-on-primary);font-weight:600;transform:translateY(-200%)}.ec-skip-link:focus-visible{transform:none}.ec-sr-only,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-text-display{font-size:var(--ec-text-display);line-height:var(--ec-text-display-lh);font-weight:700}.ec-text-h1{font-size:var(--ec-text-h1);line-height:var(--ec-text-h1-lh);font-weight:700}.ec-text-h2{font-size:var(--ec-text-h2);line-height:var(--ec-text-h2-lh);font-weight:600}.ec-text-h3{font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600}.ec-text-body{font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh)}.ec-text-body-lg{font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh)}.ec-text-sm{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-text-xs{font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500}.ec-text-kpi{font-size:var(--ec-text-kpi);line-height:var(--ec-text-kpi-lh);font-weight:700;font-variant-numeric:tabular-nums}.ec-text-muted{color:var(--ec-fg-muted)}.ec-num{font-variant-numeric:tabular-nums}.ec-mono{font-family:var(--ec-font-mono);font-weight:500;font-variant-ligatures:none}.ec-section-label{font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600;color:var(--ec-fg-muted)}.ec-scroll{scrollbar-width:thin;scrollbar-color:var(--ec-border-strong) rgba(0,0,0,0)}}@layer components{.ec-logo{display:inline-flex;flex-shrink:0;align-items:center}.ec-logo>img{width:auto;height:max(24px,var(--ec-logo-h, 28px))}.ec-logo-color{display:var(--ec-logo-color-display, block)}.ec-logo-white{display:var(--ec-logo-white-display, none)}.ec-logo--on-dark{--ec-logo-color-display: none;--ec-logo-white-display: block}.ec-mark{flex-shrink:0;width:max(20px,var(--ec-mark-size, 28px));height:auto;aspect-ratio:1}}@layer components{.ec-btn{--ec-btn-h: var(--ec-control-h);--ec-icon-size: 16px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:var(--ec-btn-h);padding-inline:1rem;border:1px solid rgba(0,0,0,0);border-radius:var(--ec-radius-md);background-color:rgba(0,0,0,0);color:var(--ec-fg);font-family:inherit;font-size:.875rem;line-height:1.25rem;font-weight:600;white-space:nowrap;text-decoration:none;cursor:pointer;user-select:none;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),border-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard),transform var(--ec-duration-fast) var(--ec-ease-standard)}.ec-btn:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-btn:active:not(:disabled,[aria-disabled=true]){transform:translateY(1px)}.ec-btn:disabled,.ec-btn[aria-disabled=true]{opacity:.5;cursor:default;pointer-events:none}.ec-btn[data-state=loading]{pointer-events:none}.ec-btn[data-state=loading]::before{content:"";flex-shrink:0;width:1em;height:1em;border:2px solid currentColor;border-inline-end-color:rgba(0,0,0,0);border-radius:var(--ec-radius-full);animation:ec-spin .7s linear infinite}.ec-btn[data-state=loading]>.ec-icon:first-child:not(.ec-icon--trailing){display:none}.ec-btn--primary{background-color:var(--ec-btn-primary-bg, var(--ec-primary));color:var(--ec-btn-primary-fg, var(--ec-on-primary))}.ec-btn--primary:hover{background-color:var(--ec-btn-primary-hover, var(--ec-primary-hover))}.ec-btn--secondary{background-color:var(--ec-surface);border-color:var(--ec-border);color:var(--ec-fg)}.ec-btn--secondary:hover{background-color:var(--ec-surface-muted);border-color:var(--ec-border-strong)}.ec-btn--ghost{color:var(--ec-fg)}.ec-btn--ghost:hover{background-color:var(--ec-surface-muted)}.ec-btn--danger{background-color:var(--ec-danger);color:var(--ec-on-danger)}.ec-btn--danger:hover{background-color:var(--ec-danger-hover)}.ec-btn--danger-ghost{color:var(--ec-danger-fg)}.ec-btn--danger-ghost:hover{background-color:var(--ec-danger-subtle)}.ec-btn--ai{border-color:var(--ec-ai-border);background-color:var(--ec-ai-subtle);color:var(--ec-ai-fg)}.ec-btn--ai:hover{background-color:var(--ec-ai-subtle-hover)}.ec-btn--ai:focus-visible{outline:2px solid var(--ec-ai-ring);outline-offset:2px}.ec-btn--link{--ec-btn-h: auto;padding:0;border:0;border-radius:var(--ec-radius-sm);color:var(--ec-primary)}.ec-btn--link:hover{text-decoration:underline;text-underline-offset:3px}.ec-btn--link:active:not(:disabled){transform:none}.ec-btn--sm{--ec-btn-h: var(--ec-control-h-sm);--ec-icon-size: 14px;gap:.375rem;padding-inline:.75rem;font-size:.75rem;line-height:1rem}.ec-btn--lg{--ec-btn-h: var(--ec-control-h-lg);--ec-icon-size: 20px;padding-inline:1.25rem;font-size:1rem;line-height:1.5rem}.ec-btn--link.ec-btn--sm,.ec-btn--link.ec-btn--lg{--ec-btn-h: auto;padding:0}.ec-btn--block{display:flex;width:100%}}@media(prefers-reduced-motion: reduce){.ec-btn[data-state=loading]::before{animation-duration:1.6s}}@layer components{.ec-icon-btn{--ec-icon-btn-size: var(--ec-control-h);position:relative;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--ec-icon-btn-size);height:var(--ec-icon-btn-size);border:1px solid rgba(0,0,0,0);border-radius:var(--ec-radius-md);background-color:rgba(0,0,0,0);color:var(--ec-fg-muted);cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),border-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard),transform var(--ec-duration-fast) var(--ec-ease-standard)}.ec-icon-btn:hover,.ec-icon-btn[aria-expanded=true],.ec-icon-btn[aria-pressed=true]{background-color:var(--ec-surface-muted);color:var(--ec-fg)}.ec-icon-btn:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-icon-btn:active:not(:disabled){transform:translateY(1px)}.ec-icon-btn:disabled,.ec-icon-btn[aria-disabled=true]{opacity:.5;cursor:default;pointer-events:none}.ec-icon-btn>.ec-badge--count{position:absolute;top:0;right:0;transform:translate(30%, -30%);box-shadow:0 0 0 2px var(--ec-surface)}.ec-icon-btn--sm{--ec-icon-btn-size: var(--ec-control-h-sm);--ec-icon-size: 16px}.ec-icon-btn--lg{--ec-icon-btn-size: var(--ec-control-h-lg)}.ec-icon-btn--round{border-radius:var(--ec-radius-full)}.ec-icon-btn--secondary{background-color:var(--ec-surface);border-color:var(--ec-border)}.ec-icon-btn--secondary:hover{border-color:var(--ec-border-strong)}.ec-icon-btn-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:var(--ec-radius-full);background-color:var(--ec-danger);box-shadow:0 0 0 2px var(--ec-surface)}}@layer components{.ec-theme-toggle .ec-theme-toggle-light,.ec-theme-toggle .ec-theme-toggle-dark,.ec-theme-toggle .ec-theme-toggle-system{display:none}.ec-theme-toggle[data-mode=light] .ec-theme-toggle-light,.ec-theme-toggle[data-mode=dark] .ec-theme-toggle-dark,.ec-theme-toggle[data-mode=system] .ec-theme-toggle-system,.ec-theme-toggle:not([data-mode]) .ec-theme-toggle-system{display:inline-block}}@layer components{.ec-field{display:flex;flex-direction:column;gap:6px;min-width:0}.ec-label{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:500;color:var(--ec-fg)}.ec-label-optional{font-weight:400;color:var(--ec-fg-muted)}.ec-help{font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}.ec-error{--ec-icon-size: 14px;display:flex;align-items:flex-start;gap:4px;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500;color:var(--ec-danger-fg)}.ec-error>.ec-icon{margin-top:1px}@media(min-width: 640px){.ec-field--inline{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);column-gap:1.5rem;align-items:start}.ec-field--inline>.ec-label{padding-top:8px;grid-row:span 3}}.ec-form-grid{display:grid;gap:var(--ec-field-gap)}@media(min-width: 640px){.ec-form-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}.ec-form-grid>.ec-field--full{grid-column:1/-1}}.ec-fieldset{display:flex;flex-direction:column;gap:.5rem;min-width:0;border:0}.ec-fieldset>legend{margin-bottom:.25rem;padding:0;font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:500;color:var(--ec-fg)}.ec-form{display:flex;flex-direction:column;gap:1rem;max-width:1040px}.ec-form-section-head{min-width:0}.ec-form-section{display:grid;gap:1rem;padding:var(--ec-card-padding);border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface);box-shadow:var(--ec-shadow-xs)}@media(min-width: 1024px){.ec-form-section{grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);gap:2rem}}.ec-form-section-title{font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600}.ec-form-section-text{margin-top:.25rem;color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-form-footer{position:sticky;bottom:0;z-index:var(--ec-z-sticky);display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem var(--ec-card-padding);padding-bottom:max(.75rem,env(safe-area-inset-bottom));border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface);box-shadow:var(--ec-shadow-md)}.ec-form-footer-note{margin-inline-end:auto;color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}@media(max-width: 639.98px){.ec-form-footer>.ec-btn{flex:1 1 auto}.ec-form-footer-note{flex:1 1 100%}}.ec-input,.ec-select,.ec-textarea{width:100%;min-width:0;border:1px solid var(--ec-control-border);border-radius:var(--ec-radius-md);background-color:var(--ec-surface);color:var(--ec-fg);font-size:.875rem;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-input,.ec-select{height:var(--ec-control-h);padding-inline:.75rem}.ec-textarea{display:block;min-height:calc(4.75rem + 2px);padding:.5rem .75rem;line-height:1.25rem;resize:vertical}.ec-select{padding-inline-end:2.25rem;appearance:none;background-image:var(--ec-select-chevron);background-repeat:no-repeat;background-position:right .625rem center;background-size:16px;cursor:pointer}.ec-select[multiple]{height:auto;padding-block:.375rem;background-image:none}[dir=rtl] .ec-select{background-position:left .625rem center}.ec-input:hover,.ec-select:hover,.ec-textarea:hover{border-color:var(--ec-fg-muted)}.ec-input:focus,.ec-select:focus,.ec-textarea:focus{border-color:var(--ec-primary);outline:2px solid var(--ec-focus);outline-offset:2px}.ec-input[aria-invalid=true],.ec-select[aria-invalid=true],.ec-textarea[aria-invalid=true]{border-color:var(--ec-danger)}.ec-input:disabled,.ec-select:disabled,.ec-textarea:disabled{border-color:var(--ec-border);background-color:var(--ec-surface-muted);color:var(--ec-fg-subtle);cursor:not-allowed}.ec-input[readonly],.ec-select[readonly],.ec-textarea[readonly]{border-color:rgba(0,0,0,0);background-color:var(--ec-surface-muted)}.ec-counter{font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted);text-align:end;font-variant-numeric:tabular-nums}.ec-counter[data-state=over]{color:var(--ec-danger-fg);font-weight:600}.ec-input-group,.ec-search{--ec-icon-size: 16px;width:100%;min-width:0;border:1px solid var(--ec-control-border);border-radius:var(--ec-radius-md);background-color:var(--ec-surface);color:var(--ec-fg);font-size:.875rem;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard);display:flex;align-items:center;gap:.5rem;height:var(--ec-control-h);padding-inline:.625rem;color:var(--ec-fg-muted);cursor:text}.ec-input-group>input,.ec-search>input{flex:1;min-width:0;height:100%;padding:0;border:0;outline:0;background:rgba(0,0,0,0);color:var(--ec-fg);font-size:inherit}.ec-input-group:hover,.ec-search:hover{border-color:var(--ec-fg-muted)}.ec-input-group:focus-within,.ec-search:focus-within{border-color:var(--ec-primary);outline:2px solid var(--ec-focus);outline-offset:2px}.ec-input-group:has([aria-invalid=true]),.ec-search:has([aria-invalid=true]){border-color:var(--ec-danger)}.ec-input-group:has(input:disabled),.ec-search:has(input:disabled){border-color:var(--ec-border);background-color:var(--ec-surface-muted);cursor:not-allowed}.ec-input-group:has(input:disabled)>input,.ec-search:has(input:disabled)>input{color:var(--ec-fg-subtle)}.ec-input-addon{color:var(--ec-fg-muted);font-size:.875rem;white-space:nowrap}.ec-search-input::-webkit-search-cancel-button{appearance:none}.ec-search-clear{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-inline-end:-4px;border-radius:var(--ec-radius-sm);color:var(--ec-fg-muted);cursor:pointer}.ec-search-clear:hover{background-color:var(--ec-surface-muted);color:var(--ec-fg)}.ec-search-clear:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-search[data-filled]>.ec-kbd{display:none}}@layer components{.ec-checkbox,.ec-radio,.ec-switch{flex-shrink:0;margin:0;appearance:none;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),border-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-checkbox:focus-visible,.ec-radio:focus-visible,.ec-switch:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-checkbox:disabled,.ec-radio:disabled,.ec-switch:disabled{opacity:.5;cursor:not-allowed}.ec-checkbox,.ec-radio{display:inline-grid;place-content:center;width:16px;height:16px;border:1px solid var(--ec-control-border);background-color:var(--ec-surface)}.ec-checkbox::before,.ec-radio::before{content:"";background-color:var(--ec-on-primary);transform:scale(0);transition:transform var(--ec-duration-fast) var(--ec-ease-standard)}.ec-checkbox:hover:not(:disabled),.ec-radio:hover:not(:disabled){border-color:var(--ec-fg-muted)}.ec-checkbox[aria-invalid=true],.ec-radio[aria-invalid=true]{border-color:var(--ec-danger)}.ec-checkbox:checked,.ec-radio:checked{border-color:var(--ec-primary);background-color:var(--ec-primary)}.ec-checkbox:checked::before,.ec-radio:checked::before{transform:scale(1)}.ec-checkbox{border-radius:var(--ec-radius-sm)}.ec-checkbox::before{width:12px;height:12px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}.ec-checkbox:indeterminate{border-color:var(--ec-primary);background-color:var(--ec-primary)}.ec-checkbox:indeterminate::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");transform:scale(1)}.ec-radio{border-radius:var(--ec-radius-full)}.ec-radio::before{width:6px;height:6px;border-radius:var(--ec-radius-full)}.ec-switch{position:relative;width:36px;height:20px;border-radius:var(--ec-radius-full);background-color:var(--ec-control-border)}.ec-switch::before{content:"";position:absolute;top:2px;inset-inline-start:2px;width:16px;height:16px;border-radius:var(--ec-radius-full);background-color:var(--ec-surface);box-shadow:var(--ec-shadow-xs);transition:transform var(--ec-duration-fast) var(--ec-ease-standard)}.ec-switch:checked{background-color:var(--ec-primary)}.ec-switch:checked::before{transform:translateX(16px);background-color:var(--ec-on-primary)}[dir=rtl] .ec-switch:checked::before{transform:translateX(-16px)}.ec-choice{display:inline-flex;align-items:flex-start;gap:.5rem;font-size:.875rem;line-height:1.25rem;color:var(--ec-fg);cursor:pointer}.ec-choice>.ec-checkbox,.ec-choice>.ec-radio{margin-top:2px}.ec-choice:has(:disabled){color:var(--ec-fg-subtle);cursor:not-allowed}.ec-choice-text{display:flex;flex-direction:column}.ec-choice-help{font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}.ec-segmented{display:inline-flex;gap:2px;padding:2px;border-radius:var(--ec-radius-md);background-color:var(--ec-neutral-subtle)}.ec-segment{position:relative;display:inline-flex}.ec-segment>input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-segment>span{display:inline-flex;align-items:center;height:calc(var(--ec-control-h) - 4px);padding-inline:.75rem;border-radius:6px;color:var(--ec-fg-secondary);font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-segment:hover>span{color:var(--ec-fg)}.ec-segment>input:checked+span{background-color:var(--ec-surface-raised);color:var(--ec-fg);font-weight:600;box-shadow:var(--ec-shadow-xs)}.ec-segment>input:focus-visible+span{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-segment>input:disabled+span{opacity:.5;cursor:not-allowed}}@layer components{.ec-badge{--ec-badge-bg: var(--ec-neutral-subtle);--ec-badge-fg: var(--ec-neutral-fg);--ec-badge-dot: var(--ec-neutral);display:inline-flex;align-items:center;gap:.375rem;height:20px;padding-inline:.5rem;border-radius:var(--ec-radius-full);background-color:var(--ec-badge-bg);color:var(--ec-badge-fg);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500;white-space:nowrap;vertical-align:middle}.ec-badge .ec-icon{--ec-icon-size: 12px}.ec-badge--info{--ec-badge-bg: var(--ec-info-subtle);--ec-badge-fg: var(--ec-info-fg);--ec-badge-dot: var(--ec-info)}.ec-badge--success{--ec-badge-bg: var(--ec-success-subtle);--ec-badge-fg: var(--ec-success-fg);--ec-badge-dot: var(--ec-success)}.ec-badge--warning{--ec-badge-bg: var(--ec-warning-subtle);--ec-badge-fg: var(--ec-warning-fg);--ec-badge-dot: var(--ec-warning)}.ec-badge--danger{--ec-badge-bg: var(--ec-danger-subtle);--ec-badge-fg: var(--ec-danger-fg);--ec-badge-dot: var(--ec-danger)}.ec-badge--ai{--ec-badge-bg: var(--ec-ai-subtle);--ec-badge-fg: var(--ec-ai-fg);--ec-badge-dot: var(--ec-ai)}.ec-badge--dot::before{content:"";flex-shrink:0;width:6px;height:6px;border-radius:var(--ec-radius-full);background-color:var(--ec-badge-dot)}.ec-badge--count{justify-content:center;min-width:18px;height:18px;padding-inline:5px;background-color:var(--ec-danger);color:var(--ec-on-danger);font-size:11px;line-height:1;font-weight:600;font-variant-numeric:tabular-nums}}@layer components{.ec-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ec-chip{--ec-icon-size: 14px;display:inline-flex;flex-shrink:0;align-items:center;gap:.375rem;height:28px;padding-inline:.625rem;border:1px solid var(--ec-border-strong);border-radius:var(--ec-radius-full);background-color:var(--ec-surface);color:var(--ec-fg);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:500;white-space:nowrap;text-decoration:none;vertical-align:middle}.ec-chip>.ec-icon{color:var(--ec-fg-muted)}.ec-chip--sm{--ec-icon-size: 12px;height:24px;padding-inline:.5rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh)}.ec-chip[data-cat]::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:var(--ec-radius-full);background-color:var(--ec-chip-dot)}.ec-chip[data-cat=navy]{--ec-chip-dot: var(--ec-cat-navy)}.ec-chip[data-cat=orange]{--ec-chip-dot: var(--ec-cat-orange)}.ec-chip[data-cat=teal]{--ec-chip-dot: var(--ec-cat-teal)}.ec-chip[data-cat=violet]{--ec-chip-dot: var(--ec-cat-violet)}.ec-chip[data-cat=sky]{--ec-chip-dot: var(--ec-cat-sky)}.ec-chip[data-cat=rose]{--ec-chip-dot: var(--ec-cat-rose)}.ec-chip[data-cat=amber]{--ec-chip-dot: var(--ec-cat-amber)}.ec-chip[data-cat=slate]{--ec-chip-dot: var(--ec-cat-slate)}button.ec-chip,a.ec-chip{cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),border-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}button.ec-chip:hover,a.ec-chip:hover{border-color:var(--ec-control-border);background-color:var(--ec-surface-muted)}button.ec-chip:focus-visible,a.ec-chip:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}button.ec-chip:disabled,button.ec-chip[aria-disabled=true],a.ec-chip:disabled,a.ec-chip[aria-disabled=true]{opacity:.5;cursor:default;pointer-events:none}.ec-chip[aria-pressed=true]{border-color:var(--ec-primary);background-color:var(--ec-primary-subtle);color:var(--ec-primary)}.ec-chip[aria-pressed=true]:hover{border-color:var(--ec-primary);background-color:var(--ec-primary-subtle)}.ec-chip[aria-pressed=true]::before{content:"";flex-shrink:0;width:14px;height:14px;margin-inline-start:-2px;border-radius:0;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}.ec-chip-remove{--ec-icon-size: 14px;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:24px;height:24px;margin-inline:-0.25rem -0.5rem;border-radius:var(--ec-radius-full);color:var(--ec-fg-muted);cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-chip-remove:hover{background-color:var(--ec-neutral-subtle);color:var(--ec-fg)}.ec-chip-remove:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:0}.ec-chip--sm .ec-chip-remove{--ec-icon-size: 12px;width:20px;height:20px;margin-inline-end:-0.375rem}.ec-id{display:inline-flex;align-items:center;height:20px;padding-inline:6px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-sm);background-color:var(--ec-surface-muted);color:var(--ec-fg-secondary);font-family:var(--ec-font-mono);font-size:.75rem;font-weight:500;font-variant-ligatures:none;line-height:1;white-space:nowrap;vertical-align:middle}.ec-id[data-ec-copy]{cursor:pointer;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-id[data-ec-copy]:hover{border-color:var(--ec-control-border);color:var(--ec-fg)}.ec-id[data-ec-copy]:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}}@layer components{.ec-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface);color:var(--ec-fg);box-shadow:var(--ec-shadow-xs)}.ec-card-header{display:flex;align-items:center;gap:.75rem;padding:var(--ec-card-padding) var(--ec-card-padding) 0}.ec-card-header>.ec-icon{color:var(--ec-fg-muted)}.ec-card-heading{flex:1;min-width:0}.ec-card-title{font-size:var(--ec-text-h2);line-height:var(--ec-text-h2-lh);font-weight:600}.ec-card-meta{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);color:var(--ec-fg-muted)}.ec-card-action{flex-shrink:0;margin-inline-start:auto}.ec-card-body{flex:1;padding:var(--ec-card-padding)}.ec-card-body--flush{padding:0}.ec-card-header+.ec-card-body--flush{margin-top:1rem}.ec-card-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding:.75rem var(--ec-card-padding);border-top:1px solid var(--ec-border)}.ec-card--interactive{width:100%;text-align:start;text-decoration:none;cursor:pointer;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),box-shadow var(--ec-duration-fast) var(--ec-ease-standard)}.ec-card--interactive:hover{border-color:var(--ec-border-strong);box-shadow:var(--ec-shadow-sm)}.ec-card--interactive:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}}@layer components{.ec-avatar{--ec-avatar-size: 32px;position:relative;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--ec-avatar-size);height:var(--ec-avatar-size);border-radius:var(--ec-radius-full);background-color:var(--ec-avatar-bg);color:var(--ec-avatar-fg);font-size:calc(var(--ec-avatar-size)*.38);font-weight:600;line-height:1;user-select:none}.ec-avatar>img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.ec-avatar--sm{--ec-avatar-size: 24px}.ec-avatar--lg{--ec-avatar-size: 40px}.ec-avatar--xl{--ec-avatar-size: 56px}.ec-avatar-status{position:absolute;right:-1px;bottom:-1px;width:max(8px,28%);height:max(8px,28%);border-radius:var(--ec-radius-full);background-color:var(--ec-neutral);box-shadow:0 0 0 2px var(--ec-surface)}.ec-avatar-status[data-status=online]{background-color:var(--ec-success)}.ec-avatar-status[data-status=away]{background-color:var(--ec-warning)}.ec-avatar-group{display:inline-flex}.ec-avatar-group>.ec-avatar{box-shadow:0 0 0 2px var(--ec-surface)}.ec-avatar-group>.ec-avatar+.ec-avatar{margin-inline-start:-8px}.ec-avatar--more{background-color:var(--ec-neutral-subtle);color:var(--ec-neutral-fg)}.ec-user{display:flex;align-items:center;gap:.5rem;min-width:0}.ec-user-text{display:flex;flex-direction:column;min-width:0}.ec-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:600;color:var(--ec-fg)}.ec-user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}}@layer components{.ec-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding-inline:5px;border:1px solid var(--ec-border);border-bottom-width:2px;border-radius:var(--ec-radius-sm);background-color:var(--ec-surface);color:var(--ec-fg-muted);font-family:var(--ec-font-sans);font-size:11px;font-weight:500;line-height:1;white-space:nowrap}}@layer components{.ec-table-wrap{overflow-x:auto;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface)}.ec-table-wrap--scroll{max-height:var(--ec-table-max-h, 480px);overflow:auto}.ec-card-body--flush>.ec-table-wrap{border:0;border-radius:0 0 var(--ec-radius-lg) var(--ec-radius-lg)}.ec-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-table th{position:sticky;top:0;z-index:1;height:40px;padding:0 1rem;border-bottom:1px solid var(--ec-border);background-color:var(--ec-surface-muted);color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600;text-align:start;white-space:nowrap;vertical-align:middle}.ec-table td{height:var(--ec-row-h);padding:.5rem 1rem;border-bottom:1px solid var(--ec-border);color:var(--ec-fg);vertical-align:middle}.ec-table tbody tr:last-child>td{border-bottom:0}.ec-table tbody tr:hover>td{background-color:var(--ec-surface-muted)}.ec-table tbody tr[aria-selected=true]>td{background-color:var(--ec-primary-subtle)}.ec-table .ec-col-num{text-align:end;font-variant-numeric:tabular-nums}.ec-table .ec-col-check{width:44px;padding-inline-end:0}.ec-table .ec-col-actions{width:1%;text-align:end;white-space:nowrap}.ec-table .ec-col-actions>*+*{margin-inline-start:.25rem}.ec-table td.ec-col-empty{height:auto;padding:0}.ec-table-sort{--ec-icon-size: 14px;display:inline-flex;align-items:center;gap:.25rem;margin-inline:-6px;padding:4px 6px;border-radius:var(--ec-radius-sm);color:inherit;font:inherit;cursor:pointer}.ec-table-sort .ec-icon{opacity:.55}.ec-table-sort:hover{color:var(--ec-fg)}.ec-table-sort:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}th[aria-sort=ascending] .ec-table-sort,th[aria-sort=descending] .ec-table-sort{color:var(--ec-fg)}th[aria-sort=ascending] .ec-table-sort .ec-icon,th[aria-sort=descending] .ec-table-sort .ec-icon{opacity:1}.ec-table-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-height:calc(var(--ec-control-h) + 12px);padding:.375rem .375rem .375rem .875rem;border-radius:var(--ec-radius-md);background-color:var(--ec-primary-subtle);color:var(--ec-fg);font-weight:600}.ec-table-bulk>:first-child{margin-inline-end:auto}@media(max-width: 767.98px){.ec-table--stack thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-table--stack tbody tr{display:block;padding-block:.5rem;border-bottom:1px solid var(--ec-border)}.ec-table--stack tbody tr:last-child{border-bottom:0}.ec-table--stack td{display:flex;justify-content:space-between;gap:1rem;height:auto;padding:.375rem 1rem;border:0;text-align:end}.ec-table--stack td[data-label]::before{content:attr(data-label);color:var(--ec-fg-muted);font-weight:600;text-align:start}.ec-table--stack .ec-col-check,.ec-table--stack .ec-col-actions{width:auto}}.ec-list{list-style:none}.ec-list>li+li{border-top:1px solid var(--ec-border)}.ec-list-item{display:flex;align-items:center;gap:.75rem;min-height:56px;padding:.625rem 1.25rem;color:var(--ec-fg);text-align:start;text-decoration:none;width:100%}a.ec-list-item,button.ec-list-item{cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard)}a.ec-list-item:hover,button.ec-list-item:hover{background-color:var(--ec-surface-muted)}a.ec-list-item:focus-visible,button.ec-list-item:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-list-lead{display:flex;flex-shrink:0;color:var(--ec-fg-muted)}.ec-list-main{display:flex;flex:1;flex-direction:column;min-width:0}.ec-list-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ec-list-meta{display:flex;flex-wrap:wrap;align-items:center;font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);color:var(--ec-fg-muted)}.ec-list-meta>*+*::before{content:"";display:inline-block;width:4px;height:4px;margin-inline:.5rem;border-radius:var(--ec-radius-full);background-color:currentColor;vertical-align:middle}.ec-list-trail{display:flex;flex-shrink:0;align-items:center;gap:.5rem}.ec-list-due{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);color:var(--ec-fg-muted);white-space:nowrap}.ec-list-due[data-late]{color:var(--ec-danger-fg);font-weight:500}.ec-stat-grid{display:grid;gap:var(--ec-gap);grid-template-columns:minmax(0, 1fr)}@media(min-width: 640px){.ec-stat-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1280px){.ec-stat-grid{grid-template-columns:repeat(4, minmax(0, 1fr))}}.ec-stat{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:var(--ec-card-padding);border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface);color:var(--ec-fg);box-shadow:var(--ec-shadow-xs);text-decoration:none}a.ec-stat{transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),box-shadow var(--ec-duration-fast) var(--ec-ease-standard)}a.ec-stat:hover{border-color:var(--ec-border-strong);box-shadow:var(--ec-shadow-sm)}a.ec-stat:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-stat-head{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--ec-fg-muted)}.ec-stat-icon{--ec-icon-size: 16px;display:grid;flex-shrink:0;place-items:center;width:28px;height:28px;border-radius:var(--ec-radius-md);background-color:var(--ec-neutral-subtle);color:var(--ec-neutral-fg)}.ec-stat-icon[data-tone=primary]{background-color:var(--ec-primary-subtle);color:var(--ec-primary)}.ec-stat-icon[data-tone=success]{background-color:var(--ec-success-subtle);color:var(--ec-success-fg)}.ec-stat-icon[data-tone=warning]{background-color:var(--ec-warning-subtle);color:var(--ec-warning-fg)}.ec-stat-icon[data-tone=danger]{background-color:var(--ec-danger-subtle);color:var(--ec-danger-fg)}.ec-stat-icon[data-tone=ai]{background-color:var(--ec-ai-subtle);color:var(--ec-ai-fg)}.ec-stat-value{margin-top:.375rem;font-size:var(--ec-text-kpi);line-height:var(--ec-text-kpi-lh);font-weight:700;font-variant-numeric:tabular-nums}.ec-stat-value[data-tone=danger]{color:var(--ec-danger-fg)}.ec-stat-unit{margin-inline-start:.25rem;font-size:1rem;font-weight:600;color:var(--ec-fg-muted)}.ec-stat-note{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}.ec-stat-trend{--ec-icon-size: 14px;display:inline-flex;align-items:center;gap:2px;font-weight:600}.ec-stat-trend[data-trend=up][data-good=up],.ec-stat-trend[data-trend=down][data-good=down]{color:var(--ec-success-fg)}.ec-stat-trend[data-trend=up][data-good=down],.ec-stat-trend[data-trend=down][data-good=up]{color:var(--ec-danger-fg)}.ec-link{--ec-icon-size: 14px;border-radius:2px;color:var(--ec-primary);font-weight:500;text-decoration:none;text-underline-offset:3px}.ec-link:hover{text-decoration:underline}.ec-link:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-link .ec-icon{display:inline-block;margin-inline-start:2px;vertical-align:-2px}p .ec-link,li .ec-link{text-decoration:underline}}@layer components{.ec-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;width:100%;color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-pagination-info{margin-inline-end:auto}.ec-pagination-info strong{color:var(--ec-fg);font-weight:600;font-variant-numeric:tabular-nums}.ec-pagination-size{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.ec-pagination-size .ec-select{width:auto;height:var(--ec-control-h-sm);padding-inline-start:.625rem}.ec-pagination-nav{display:flex;align-items:center;gap:.25rem}.ec-pagination-list{display:flex;align-items:center;gap:.25rem;list-style:none}.ec-pagination-btn{--ec-icon-size: 16px;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-width:var(--ec-control-h-sm);height:var(--ec-control-h-sm);padding-inline:.5rem;border:1px solid rgba(0,0,0,0);border-radius:var(--ec-radius-md);color:var(--ec-fg);font-weight:500;font-variant-numeric:tabular-nums;text-decoration:none;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),border-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-pagination-btn:hover{background-color:var(--ec-neutral-subtle)}.ec-pagination-btn:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-pagination-btn[aria-current=page]{background-color:var(--ec-primary);color:var(--ec-on-primary);font-weight:600}.ec-pagination-btn:disabled,.ec-pagination-btn[aria-disabled=true]{background:none;color:var(--ec-fg-subtle);cursor:default}.ec-pagination-prev,.ec-pagination-next{padding-inline:.375rem;border-color:var(--ec-border-strong)}.ec-pagination-prev:disabled,.ec-pagination-prev[aria-disabled=true],.ec-pagination-next:disabled,.ec-pagination-next[aria-disabled=true]{border-color:var(--ec-border)}.ec-pagination-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-pagination-gap{display:inline-flex;justify-content:center;min-width:1.5rem;color:var(--ec-fg-muted)}.ec-pagination-status{display:none}@media(max-width: 639.98px){.ec-pagination-info,.ec-pagination-size,.ec-pagination-list{display:none}.ec-pagination-nav{flex:1;justify-content:space-between}.ec-pagination-prev,.ec-pagination-next{padding-inline:.625rem}.ec-pagination-label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:nowrap}.ec-pagination-status{display:block;color:var(--ec-fg);font-variant-numeric:tabular-nums}}}@layer components{.ec-filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;width:100%}.ec-filterbar>.ec-search{flex:0 1 18rem}.ec-filterbar-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-inline-start:auto}.ec-filterbar-filters>.ec-select,.ec-filterbar-filters>.ec-input{width:auto}.ec-filterbar-clear{padding:.25rem .375rem;border-radius:var(--ec-radius-sm);color:var(--ec-primary);font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer}.ec-filterbar-clear:hover{text-decoration:underline;text-underline-offset:2px}.ec-filterbar-clear:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-filterbar-toggle{display:none}.ec-filterbar-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding-inline:5px;border-radius:var(--ec-radius-full);background-color:var(--ec-primary);color:var(--ec-on-primary);font-size:11px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.ec-filterbar-chips{display:none}@media(max-width: 639.98px){.ec-filterbar>.ec-search{flex:1 1 0}.ec-filterbar-toggle{display:inline-flex}.ec-filterbar-filters{display:none;flex:1 1 100%;flex-direction:column;align-items:stretch;margin-inline-start:0}.ec-filterbar-filters[data-state=open]{display:flex}.ec-filterbar-filters>.ec-select,.ec-filterbar-filters>.ec-input{width:100%}.ec-filterbar-filters>.ec-filterbar-clear{align-self:flex-start}.ec-filterbar-chips{display:flex;flex:1 1 100%}}}@layer components{.ec-attention{list-style:none}.ec-attention>li+li{border-top:1px solid var(--ec-border)}.ec-attention-item{--ec-attention-dot: var(--ec-neutral);display:flex;align-items:center;gap:.75rem;min-height:var(--ec-row-h);padding:.5rem var(--ec-card-padding);color:var(--ec-fg);text-decoration:none;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-attention-item:hover{background-color:var(--ec-surface-muted)}.ec-attention-item:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-attention-item[data-tone=danger]{--ec-attention-dot: var(--ec-danger)}.ec-attention-item[data-tone=warning]{--ec-attention-dot: var(--ec-warning)}.ec-attention-item[data-tone=info]{--ec-attention-dot: var(--ec-info)}.ec-attention>li:last-child>.ec-attention-item{border-radius:0 0 var(--ec-radius-lg) var(--ec-radius-lg)}.ec-attention-dot{flex-shrink:0;width:8px;height:8px;border-radius:var(--ec-radius-full);background-color:var(--ec-attention-dot)}.ec-attention-text{flex:1;min-width:0;overflow:hidden;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.ec-attention-chevron{--ec-icon-size: 16px;color:var(--ec-fg-subtle)}}@layer components{.ec-chart>.ec-card-header{flex-wrap:wrap}.ec-chart>.ec-card-body{display:flex;flex-direction:column;gap:.75rem;min-width:0}.ec-chart-legend{display:flex;flex-wrap:wrap;gap:.25rem 1rem;list-style:none;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500}.ec-chart-legend>li{display:inline-flex;align-items:center;gap:.375rem}.ec-chart-swatch{flex-shrink:0;width:10px;height:10px;border-radius:2px}.ec-chart-canvas{position:relative;width:100%;min-width:0}.ec-chart-toggle{align-self:flex-start}}@keyframes ec-toast-in{from{opacity:0;transform:translateY(8px)}}@keyframes ec-toast-out{to{opacity:0;transform:translateY(8px)}}@keyframes ec-shimmer{to{transform:translateX(100%)}}@layer components{.ec-alert{--ec-alert-bg: var(--ec-info-subtle);--ec-alert-fg: var(--ec-info-fg);--ec-alert-edge: var(--ec-info);display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border-inline-start:3px solid var(--ec-alert-edge);border-radius:var(--ec-radius-md);background-color:var(--ec-alert-bg);color:var(--ec-fg)}.ec-alert>.ec-icon{color:var(--ec-alert-fg)}.ec-alert--success{--ec-alert-bg: var(--ec-success-subtle);--ec-alert-fg: var(--ec-success-fg);--ec-alert-edge: var(--ec-success)}.ec-alert--warning{--ec-alert-bg: var(--ec-warning-subtle);--ec-alert-fg: var(--ec-warning-fg);--ec-alert-edge: var(--ec-warning)}.ec-alert--danger{--ec-alert-bg: var(--ec-danger-subtle);--ec-alert-fg: var(--ec-danger-fg);--ec-alert-edge: var(--ec-danger)}.ec-alert-body{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ec-alert-title{font-weight:600}.ec-alert-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.ec-alert-close{margin-block:-4px;margin-inline-end:-8px;color:var(--ec-fg-secondary)}.ec-alert--banner{align-items:center;margin-bottom:1rem;border-inline-start-width:0;border-radius:var(--ec-radius-lg)}.ec-toaster{position:fixed;inset-block-end:1rem;inset-inline-end:1rem;z-index:var(--ec-z-toast);display:flex;flex-direction:column;gap:.5rem;width:min(380px,100vw - 2rem);pointer-events:none}@media(max-width: 639.98px){.ec-toaster{inset-inline:1rem;width:auto}}.ec-toast{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .5rem .75rem 1rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-raised);color:var(--ec-fg);box-shadow:var(--ec-shadow-lg);pointer-events:auto;animation:ec-toast-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-toast>.ec-icon{color:var(--ec-info-fg)}.ec-toast[data-state=closing]{animation:ec-toast-out var(--ec-duration-base) var(--ec-ease-exit) forwards}.ec-toast--success>.ec-icon{color:var(--ec-success-fg)}.ec-toast--warning>.ec-icon{color:var(--ec-warning-fg)}.ec-toast--danger>.ec-icon{color:var(--ec-danger-fg)}.ec-toast-body{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ec-toast-title{font-weight:600}.ec-toast-message{color:var(--ec-fg-muted)}.ec-toast-action{align-self:flex-start;margin-top:.25rem}.ec-toast-close{margin-block:-4px}.ec-spinner{--ec-spinner-size: 20px;display:inline-block;flex-shrink:0;width:var(--ec-spinner-size);height:var(--ec-spinner-size);border:2px solid currentColor;border-inline-end-color:rgba(0,0,0,0);border-radius:var(--ec-radius-full);vertical-align:middle;animation:ec-spin .7s linear infinite}.ec-spinner--sm{--ec-spinner-size: 16px}.ec-spinner--lg{--ec-spinner-size: 32px;border-width:3px}.ec-skeleton{position:relative;display:block;height:1rem;overflow:hidden;border-radius:var(--ec-radius-sm);background-color:var(--ec-skeleton)}.ec-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, transparent, var(--ec-surface), transparent);opacity:.6;transform:translateX(-100%);animation:ec-shimmer 1.4s ease-in-out infinite}.ec-skeleton--line{height:.75rem;border-radius:var(--ec-radius-full)}.ec-skeleton--circle{border-radius:var(--ec-radius-full);aspect-ratio:1;height:auto}.ec-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;max-width:440px;margin-inline:auto;padding:3rem 1.5rem;text-align:center}.ec-empty-icon{--ec-icon-size: 24px;display:grid;place-items:center;width:48px;height:48px;margin-bottom:.5rem;border-radius:var(--ec-radius-lg);background-color:var(--ec-neutral-subtle);color:var(--ec-fg-muted)}.ec-empty-title{font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600;color:var(--ec-fg)}.ec-empty-text{color:var(--ec-fg-muted)}.ec-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.5rem}.ec-empty--compact{gap:.25rem;padding:1.5rem 1rem}.ec-empty--compact .ec-empty-icon{--ec-icon-size: 20px;width:40px;height:40px;margin-bottom:.25rem}.ec-empty--compact .ec-empty-title{font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh);font-weight:600}}@media(prefers-reduced-motion: reduce){.ec-spinner{animation-duration:1.6s}.ec-skeleton::after{display:none}}@layer components{.ec-dropdown-menu{position:fixed;top:0;left:0;z-index:var(--ec-z-dropdown);min-width:180px;max-width:min(320px,100vw - 16px);max-height:min(420px,100vh - 16px);overflow-y:auto;padding:4px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-raised);box-shadow:var(--ec-shadow-md);color:var(--ec-fg);outline:none}.ec-dropdown-item{--ec-icon-size: 16px;display:flex;align-items:center;gap:.5rem;width:100%;min-height:32px;padding-inline:.5rem;border-radius:var(--ec-radius-md);color:var(--ec-fg);font-size:.875rem;text-align:start;text-decoration:none;white-space:nowrap;cursor:pointer}.ec-dropdown-item>.ec-icon{color:var(--ec-fg-muted)}.ec-dropdown-item:hover,.ec-dropdown-item:focus{background-color:var(--ec-neutral-subtle);outline:none}.ec-dropdown-item:focus-visible{outline:2px solid var(--ec-focus);outline-offset:-2px}.ec-dropdown-item:disabled,.ec-dropdown-item[aria-disabled=true]{opacity:.5;cursor:default;pointer-events:none}.ec-dropdown-item--danger{color:var(--ec-danger-fg)}.ec-dropdown-item--danger>.ec-icon{color:inherit}.ec-dropdown-item--danger:hover,.ec-dropdown-item--danger:focus{background-color:var(--ec-danger-subtle)}.ec-dropdown-shortcut{margin-inline-start:auto;padding-inline-start:1.5rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}.ec-dropdown-check{margin-inline-start:auto;visibility:hidden}.ec-dropdown-item[aria-checked=true]>.ec-dropdown-check{visibility:visible;color:var(--ec-primary)}.ec-dropdown-label{padding:.5rem .5rem .25rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600;color:var(--ec-fg-muted)}.ec-dropdown-divider{height:1px;margin:4px -4px;border:0;background-color:var(--ec-border)}.ec-dropdown-header{padding:.5rem .5rem .625rem;margin-bottom:4px;border-bottom:1px solid var(--ec-border)}}@layer components{.ec-tooltip{position:fixed;top:0;left:0;z-index:var(--ec-z-tooltip);max-width:240px;padding:.25rem .5rem;border:1px solid var(--ec-tooltip-border);border-radius:6px;background-color:var(--ec-tooltip-bg);color:var(--ec-tooltip-fg);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500;overflow-wrap:break-word;box-shadow:var(--ec-shadow-md);opacity:0;transition:opacity var(--ec-duration-fade) var(--ec-ease-standard)}.ec-tooltip[data-state=open]{opacity:1}}@keyframes ec-modal-in{from{opacity:0;transform:translateY(8px) scale(0.98)}}@keyframes ec-sheet-in{from{transform:translateY(100%)}}@keyframes ec-fade-in{from{opacity:0}}@keyframes ec-drawer-in{from{transform:translateX(100%)}}@layer components{.ec-modal{--ec-modal-w: 560px;width:min(var(--ec-modal-w),100vw - 2rem);max-width:none;max-height:calc(100dvh - 3rem);margin:auto;padding:0;overflow:hidden;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface-raised);color:var(--ec-fg);box-shadow:var(--ec-shadow-lg)}.ec-modal[open]{display:flex;flex-direction:column;animation:ec-modal-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-modal::backdrop{background-color:var(--ec-overlay);animation:ec-fade-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-modal--sm{--ec-modal-w: 400px}.ec-modal--lg{--ec-modal-w: 800px}.ec-modal--full{--ec-modal-w: calc(100vw - 3rem);height:calc(100dvh - 3rem)}.ec-modal-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--ec-border)}.ec-modal-title{flex:1;min-width:0;font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600}.ec-modal-body{flex:1;min-height:0;overflow-y:auto;padding:1.25rem}.ec-modal-text{color:var(--ec-fg-muted)}.ec-modal-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--ec-border)}.ec-modal--confirm .ec-modal-header{padding-bottom:0;border-bottom:0}.ec-modal--confirm .ec-modal-body{padding-top:.5rem}.ec-modal--confirm .ec-modal-footer{border-top:0;padding-top:0;padding-bottom:1.25rem}.ec-drawer{--ec-drawer-w: 480px;width:min(var(--ec-drawer-w),100vw);max-width:none;height:100dvh;max-height:none;margin:0;margin-inline-start:auto;padding:0;overflow:hidden;border:0;border-inline-start:1px solid var(--ec-border);background-color:var(--ec-surface-raised);color:var(--ec-fg);box-shadow:var(--ec-shadow-lg)}.ec-drawer[open]{display:flex;flex-direction:column;animation:ec-drawer-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-drawer::backdrop{background-color:var(--ec-overlay);animation:ec-fade-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-drawer--wide{--ec-drawer-w: 720px}.ec-drawer-header{display:flex;flex-shrink:0;align-items:center;gap:.75rem;min-height:56px;padding:.5rem .75rem .5rem 1.25rem;border-bottom:1px solid var(--ec-border)}.ec-drawer-title{flex:1;min-width:0;overflow:hidden;font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.ec-drawer-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1.25rem}.ec-drawer-footer{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom));border-top:1px solid var(--ec-border)}@media(max-width: 639.98px){.ec-drawer{width:100vw;border-inline-start:0}.ec-drawer-footer>.ec-btn{flex:1 1 auto}.ec-modal:not(.ec-modal--full){width:100%;max-height:90dvh;margin:auto 0 0;border-radius:var(--ec-radius-xl) var(--ec-radius-xl) 0 0}.ec-modal:not(.ec-modal--full)[open]{animation-name:ec-sheet-in}.ec-modal-footer>.ec-btn{flex:1 1 auto}}}@layer components{.ec-cmdk{--ec-modal-w: 640px;margin-top:15vh;margin-bottom:auto;max-height:min(560px,100dvh - 15vh - 1rem)}.ec-cmdk-head{--ec-icon-size: 20px;display:flex;align-items:center;gap:.625rem;padding:.375rem .625rem .375rem 1rem;border-bottom:1px solid var(--ec-border);color:var(--ec-fg-muted)}.ec-cmdk-head:focus-within{box-shadow:inset 0 -2px 0 var(--ec-focus)}.ec-cmdk-input{flex:1;min-width:0;height:44px;padding:0;border:0;outline:0;background:rgba(0,0,0,0);color:var(--ec-fg);font-size:1rem}.ec-cmdk-input::placeholder{color:var(--ec-fg-subtle)}.ec-cmdk-input:focus-visible{outline:0}.ec-cmdk-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.375rem}.ec-cmdk-group+.ec-cmdk-group{margin-top:.375rem}.ec-cmdk-group-label{padding:.5rem .625rem .25rem;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600}.ec-cmdk-item{--ec-icon-size: 18px;display:flex;align-items:center;gap:.75rem;min-height:40px;padding:.375rem .625rem;border-radius:var(--ec-radius-md);color:var(--ec-fg);cursor:pointer}.ec-cmdk-item>.ec-icon{color:var(--ec-fg-muted)}.ec-cmdk-item[aria-selected=true]{background-color:var(--ec-primary-subtle)}.ec-cmdk-item[aria-selected=true]>.ec-icon{color:var(--ec-primary)}.ec-cmdk-item[data-ask]>.ec-icon{color:var(--ec-ai-fg)}.ec-cmdk-text{display:flex;flex:1;align-items:baseline;gap:.5rem;min-width:0}.ec-cmdk-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.ec-cmdk-title mark{background:none;color:inherit;font-weight:700}.ec-cmdk-path{flex-shrink:1;min-width:0;overflow:hidden;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);text-overflow:ellipsis;white-space:nowrap}.ec-cmdk-empty{padding:2rem 1rem;color:var(--ec-fg-muted);text-align:center}.ec-cmdk-foot{display:flex;flex-wrap:wrap;gap:.375rem 1.25rem;padding:.5rem 1rem;border-top:1px solid var(--ec-border);color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh)}.ec-cmdk-foot .ec-kbd+.ec-kbd{margin-inline-start:2px}@media(max-width: 639.98px){.ec-cmdk.ec-modal:not(.ec-modal--full){width:100%;max-height:85dvh;margin:0 0 auto;border-radius:0 0 var(--ec-radius-xl) var(--ec-radius-xl)}.ec-cmdk.ec-modal:not(.ec-modal--full)[open]{animation-name:ec-modal-in}.ec-cmdk-foot{display:none}}}@layer components{.ec-tabs{position:relative;min-width:0}.ec-tabs-list{display:flex;gap:.25rem;overflow-x:auto;border-bottom:1px solid var(--ec-border);scrollbar-width:none}.ec-tabs-list::-webkit-scrollbar{display:none}.ec-tabs-list[data-overflow=end]{mask-image:linear-gradient(to right, black calc(100% - 40px), transparent)}.ec-tabs-list[data-overflow=start]{mask-image:linear-gradient(to left, black calc(100% - 40px), transparent)}.ec-tabs-list[data-overflow="start end"]{mask-image:linear-gradient(to right, transparent, black 40px, black calc(100% - 40px), transparent)}.ec-tab{--ec-icon-size: 16px;position:relative;display:inline-flex;flex-shrink:0;align-items:center;gap:.5rem;height:40px;padding-inline:.75rem;border-radius:var(--ec-radius-md) var(--ec-radius-md) 0 0;color:var(--ec-fg-secondary);font-size:.875rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:color var(--ec-duration-fast) var(--ec-ease-standard),background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-tab:hover{color:var(--ec-fg)}.ec-tab:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-tab[aria-selected=true]{color:var(--ec-primary)}.ec-tab[aria-selected=true]::after{content:"";position:absolute;inset-inline:0;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background-color:var(--ec-primary)}.ec-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding-inline:6px;border-radius:var(--ec-radius-full);background-color:var(--ec-neutral-subtle);color:var(--ec-neutral-fg);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.ec-tab[aria-selected=true] .ec-tab-count{background-color:var(--ec-primary-subtle);color:var(--ec-primary)}.ec-tabs--pill .ec-tabs-list{border-bottom:0}.ec-tabs--pill .ec-tab{height:32px;border-radius:var(--ec-radius-md)}.ec-tabs--pill .ec-tab:hover{background-color:var(--ec-surface-muted)}.ec-tabs--pill .ec-tab[aria-selected=true]{background-color:var(--ec-primary-subtle)}.ec-tabs--pill .ec-tab[aria-selected=true]::after{display:none}.ec-tab-panel{padding-top:1rem}.ec-tab-panel:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}}@layer components{.ec-shell{--ec-sidebar-w: 264px;display:grid;grid-template-columns:var(--ec-sidebar-w) minmax(0, 1fr);min-height:100vh;background-color:var(--ec-bg);transition:grid-template-columns var(--ec-duration-slow) var(--ec-ease-standard)}.ec-shell[data-collapsed=true]{--ec-sidebar-w: 72px}@media(min-width: 768px)and (max-width: 1023.98px){.ec-shell{--ec-sidebar-w: 72px}}@media(max-width: 767.98px){.ec-shell{display:block}}.ec-shell--topnav{display:block}.ec-shell-main{display:flex;flex-direction:column;min-width:0;min-height:100vh}.ec-content{flex:1;width:100%;max-width:calc(1440px + 2*var(--ec-page-padding));margin-inline:auto;padding:var(--ec-page-padding);outline:none}.ec-shell-backdrop{position:fixed;inset:0;z-index:calc(var(--ec-z-drawer) - 1);background-color:var(--ec-overlay)}}@layer components{.ec-sidebar{--ec-sidebar-collapsed: 0;position:sticky;top:0;z-index:var(--ec-z-sidebar);display:flex;flex-direction:column;height:100vh;height:100dvh;min-width:0;overflow:hidden;border-inline-end:1px solid var(--ec-border);background-color:var(--ec-surface);color:var(--ec-fg)}.ec-sidebar-header{display:flex;align-items:center;gap:.5rem;min-height:56px;padding:.5rem 1rem}.ec-sidebar-brand{display:flex;flex:1;align-items:center;gap:.625rem;min-width:0;border-radius:var(--ec-radius-md);font-weight:700;font-size:.9375rem;color:var(--ec-fg)}.ec-sidebar-brand:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-sidebar-logo{--ec-logo-h: 32px}.ec-sidebar-mark{width:28px;height:28px;flex-shrink:0}.ec-sidebar-brand:has(.ec-sidebar-logo) .ec-sidebar-mark{display:none}.ec-sidebar-product{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500;color:var(--ec-fg-muted);white-space:nowrap}.ec-sidebar-product::before{content:"";width:6px;height:6px;border-radius:var(--ec-radius-full);background-color:var(--ec-product-tint)}.ec-sidebar-close{display:none}@media(min-width: 768px){.ec-shell:not(.ec-shell--floating) .ec-sidebar .ec-sidebar-nav{padding-top:.75rem}.ec-shell:not(.ec-shell--floating) .ec-sidebar .ec-sidebar-header{position:relative}.ec-shell:not(.ec-shell--floating) .ec-sidebar .ec-sidebar-header::after{content:"";position:absolute;inset-inline:1rem;bottom:0;height:1px;background-color:var(--ec-border)}.ec-shell:not(.ec-shell--floating) .ec-sidebar[data-surface=tinted] .ec-sidebar-header::after{background-color:var(--ec-border-strong)}}.ec-sidebar-nav{flex:1;min-height:0;overflow-y:auto;padding:.25rem .75rem .75rem;scrollbar-width:thin;scrollbar-color:var(--ec-border-strong) rgba(0,0,0,0)}.ec-sidebar-list,.ec-sidebar-sublist{display:flex;flex-direction:column;gap:2px;list-style:none}.ec-sidebar-section{margin:1rem .75rem .375rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600;color:var(--ec-fg-muted)}.ec-sidebar-item,.ec-sidebar-subitem{position:relative;display:flex;align-items:center;width:100%;border-radius:var(--ec-radius-md);color:var(--ec-fg);font-size:.875rem;text-align:start;text-decoration:none;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-sidebar-item:hover,.ec-sidebar-subitem:hover{background-color:var(--ec-surface-muted)}.ec-sidebar-item:focus-visible,.ec-sidebar-subitem:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-sidebar-item[aria-current=page],.ec-sidebar-subitem[aria-current=page]{background-color:var(--ec-sidebar-active-bg, var(--ec-primary));color:var(--ec-sidebar-active-fg, var(--ec-on-primary));box-shadow:var(--ec-sidebar-active-shadow, none)}.ec-sidebar-item[aria-current=page]>.ec-icon,.ec-sidebar-subitem[aria-current=page]>.ec-icon{color:inherit}.ec-sidebar-item[aria-current=page]::before,.ec-sidebar-subitem[aria-current=page]::before{content:"";position:absolute;inset-block:8px;inset-inline-start:4px;width:3px;border-radius:2px;background-color:var(--ec-accent)}.ec-sidebar-item{gap:.75rem;min-height:36px;padding-inline:.75rem;font-weight:500}.ec-sidebar-item>.ec-icon{color:var(--ec-fg-muted)}.ec-sidebar-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-sidebar-chevron{--ec-icon-size: 16px;transition:transform var(--ec-duration-base) var(--ec-ease-standard)}.ec-sidebar-item[aria-expanded=true]>.ec-sidebar-chevron{transform:rotate(90deg)}.ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item{font-weight:600}.ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item>.ec-icon{color:var(--ec-fg)}.ec-sidebar-sublist{margin-block:2px 4px;margin-inline-start:1.375rem;padding-inline-start:.5rem;border-inline-start:1px solid var(--ec-border)}.ec-sidebar-item[aria-expanded=false]+.ec-sidebar-sublist{display:none}.ec-sidebar-subitem{gap:.5rem;min-height:32px;padding-inline:.75rem}.ec-sidebar-subitem>.ec-badge{margin-inline-start:auto}.ec-sidebar-footer{position:relative;display:flex;flex-direction:column;gap:2px;padding:.5rem .75rem .75rem}.ec-sidebar-footer::before{content:"";position:absolute;inset-inline:1rem;top:0;height:1px;background-color:var(--ec-border)}.ec-sidebar[data-surface=tinted] .ec-sidebar-footer::before{background-color:var(--ec-border-strong)}.ec-sidebar-status{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);color:var(--ec-fg-muted)}.ec-status-dot{flex-shrink:0;width:8px;height:8px;border-radius:var(--ec-radius-full);background-color:var(--ec-success)}.ec-status-dot[data-status=warning]{background-color:var(--ec-warning)}.ec-status-dot[data-status=danger]{background-color:var(--ec-danger)}.ec-status-dot[data-status=neutral]{background-color:var(--ec-neutral)}.ec-status-dot[data-status=info]{background-color:var(--ec-info)}.ec-sidebar-collapse .ec-icon{transition:transform var(--ec-duration-slow) var(--ec-ease-standard)}@media(min-width: 768px){.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail){--ec-sidebar-collapsed: 1}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-header{justify-content:center;padding-inline:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-brand{justify-content:center}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-logo,.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-product,.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-chevron,.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item>.ec-badge:not(.ec-badge--count){display:none}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-brand .ec-sidebar-mark{display:block}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-label,.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-status-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-nav{padding-inline:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-section{height:1px;margin:.75rem 1rem;overflow:hidden;background-color:var(--ec-border);color:rgba(0,0,0,0);font-size:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item{justify-content:center;width:44px;height:40px;padding:0;margin-inline:auto}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item[aria-current=page]::before{inset-inline-start:3px}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item>.ec-badge--count{position:absolute;top:6px;right:6px;min-width:8px;width:8px;height:8px;padding:0;font-size:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-status{justify-content:center;padding-inline:0}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-collapse .ec-icon{transform:scaleX(-1)}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item{background-color:var(--ec-primary-subtle)}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item>.ec-icon{color:var(--ec-primary)}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-sublist{display:none}.ec-shell[data-collapsed=true] .ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group[data-flyout=open]>.ec-sidebar-sublist{display:flex;z-index:var(--ec-z-dropdown);min-width:200px;margin:0;padding:4px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-raised);box-shadow:var(--ec-shadow-md)}}@media(min-width: 768px)and (max-width: 1023.98px){.ec-sidebar:not(.ec-sidebar--rail){--ec-sidebar-collapsed: 1}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-header{justify-content:center;padding-inline:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-brand{justify-content:center}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-logo,.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-product,.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-chevron,.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item>.ec-badge:not(.ec-badge--count){display:none}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-brand .ec-sidebar-mark{display:block}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-label,.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-status-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-nav{padding-inline:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-section{height:1px;margin:.75rem 1rem;overflow:hidden;background-color:var(--ec-border);color:rgba(0,0,0,0);font-size:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item{justify-content:center;width:44px;height:40px;padding:0;margin-inline:auto}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item[aria-current=page]::before{inset-inline-start:3px}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-item>.ec-badge--count{position:absolute;top:6px;right:6px;min-width:8px;width:8px;height:8px;padding:0;font-size:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-status{justify-content:center;padding-inline:0}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-collapse .ec-icon{transform:scaleX(-1)}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item{background-color:var(--ec-primary-subtle)}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item>.ec-icon{color:var(--ec-primary)}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-sublist{display:none}.ec-sidebar:not(.ec-sidebar--rail) .ec-sidebar-group[data-flyout=open]>.ec-sidebar-sublist{display:flex;z-index:var(--ec-z-dropdown);min-width:200px;margin:0;padding:4px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-raised);box-shadow:var(--ec-shadow-md)}.ec-sidebar-collapse{display:none}}@media(min-width: 768px){.ec-sidebar--rail{--ec-sidebar-collapsed: 1;--ec-sidebar-tooltips: 0}.ec-sidebar--rail .ec-sidebar-header{justify-content:center;padding-inline:0}.ec-sidebar--rail .ec-sidebar-brand{flex:none;justify-content:center}.ec-sidebar--rail .ec-sidebar-logo,.ec-sidebar--rail .ec-sidebar-product,.ec-sidebar--rail .ec-sidebar-chevron,.ec-sidebar--rail .ec-sidebar-collapse,.ec-sidebar--rail .ec-sidebar-item>.ec-badge:not(.ec-badge--count){display:none}.ec-sidebar--rail .ec-sidebar-brand .ec-sidebar-mark{display:block}.ec-sidebar--rail .ec-sidebar-status-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-sidebar--rail .ec-sidebar-nav{padding-inline:.5rem}.ec-sidebar--rail .ec-sidebar-section{height:1px;margin:.5rem .75rem;overflow:hidden;background-color:var(--ec-border);color:rgba(0,0,0,0);font-size:0}.ec-sidebar--rail .ec-sidebar-item{flex-direction:column;justify-content:center;gap:4px;min-height:60px;padding:6px 4px;text-align:center;font-size:11px;line-height:14px}.ec-sidebar--rail .ec-sidebar-item .ec-sidebar-label{flex:none;width:100%;white-space:normal;overflow-wrap:anywhere}.ec-sidebar--rail .ec-sidebar-item[aria-current=page]::before{inset-block:12px;inset-inline-start:2px}.ec-sidebar--rail .ec-sidebar-item>.ec-badge--count{position:absolute;top:4px;right:10px}.ec-sidebar--rail .ec-sidebar-status{justify-content:center;padding-inline:0}.ec-sidebar--rail .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item{background-color:var(--ec-primary-subtle)}.ec-sidebar--rail .ec-sidebar-group:has([aria-current=page])>.ec-sidebar-item>.ec-icon{color:var(--ec-primary)}.ec-sidebar--rail .ec-sidebar-sublist{display:none}.ec-sidebar--rail .ec-sidebar-group[data-flyout=open]>.ec-sidebar-sublist{display:flex;z-index:var(--ec-z-dropdown);min-width:200px;margin:0;padding:4px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-raised);box-shadow:var(--ec-shadow-md)}.ec-shell:has(>.ec-sidebar--rail){--ec-sidebar-w: 88px}.ec-shell--floating .ec-sidebar{top:8px;height:calc(100vh - 16px);height:calc(100dvh - 16px);margin:8px 0 8px 8px;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);box-shadow:var(--ec-shadow-sm)}}@media(max-width: 767.98px){.ec-sidebar{position:fixed;inset-block:0;inset-inline-start:0;z-index:var(--ec-z-drawer);width:min(280px,85vw);height:100vh;height:100dvh;visibility:hidden;transform:translateX(-100%);box-shadow:var(--ec-shadow-lg);transition:transform var(--ec-duration-slow) var(--ec-ease-exit),visibility 0s linear var(--ec-duration-slow)}[dir=rtl] .ec-sidebar{transform:translateX(100%)}.ec-shell[data-sidebar-open=true] .ec-sidebar{visibility:visible;transform:none;transition:transform var(--ec-duration-slow) var(--ec-ease-standard)}.ec-sidebar-close{display:inline-flex}.ec-sidebar-collapse{display:none}}}@layer components{.ec-topbar{position:sticky;top:0;z-index:var(--ec-z-topbar);display:flex;align-items:center;gap:.75rem;height:56px;padding-inline:var(--ec-page-padding);border-bottom:1px solid var(--ec-border);background-color:var(--ec-surface)}.ec-topbar-menu{display:none}.ec-topbar-start{display:flex;flex:1;align-items:center;gap:.5rem;min-width:0}.ec-topbar-actions{display:flex;flex-shrink:0;align-items:center;gap:.25rem;margin-inline-start:auto}.ec-topbar-actions>.ec-btn--ai{margin-inline:.25rem}.ec-topbar-tz{--ec-icon-size: 14px;display:inline-flex;align-items:center;gap:.25rem;height:28px;padding-inline:.5rem;margin-inline-end:.25rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-full);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:500;color:var(--ec-fg-muted);white-space:nowrap}.ec-topbar-search{--ec-icon-size: 16px;display:flex;align-items:center;gap:.5rem;width:240px;height:var(--ec-control-h);padding-inline:.625rem .375rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background-color:var(--ec-surface-muted);color:var(--ec-fg-muted);font-size:.875rem;text-align:start;cursor:pointer;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-topbar-search>span:not(.ec-kbd){flex:1}.ec-topbar-search:hover{border-color:var(--ec-border-strong)}.ec-topbar-search:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-topbar-user{--ec-icon-size: 16px;display:flex;align-items:center;gap:.5rem;height:40px;padding-inline:.25rem .375rem;margin-inline-start:.25rem;border-radius:var(--ec-radius-md);color:var(--ec-fg-muted);text-align:start;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-topbar-user:hover,.ec-topbar-user[aria-expanded=true]{background-color:var(--ec-surface-muted)}.ec-topbar-user:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-topnav-brand{display:flex;flex-shrink:0;align-items:center;gap:.5rem;border-radius:var(--ec-radius-md)}.ec-topnav-brand:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-topnav-brand .ec-mark{display:none}.ec-topnav-divider{flex-shrink:0;width:1px;height:24px;margin-inline:.25rem;background-color:var(--ec-border)}.ec-topnav-nav{display:flex;align-self:stretch;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}.ec-topnav-nav::-webkit-scrollbar{display:none}.ec-topnav-item{--ec-icon-size: 16px;position:relative;display:flex;flex-shrink:0;align-items:center;gap:.5rem;padding-inline:.625rem;color:var(--ec-fg-secondary);font-size:.875rem;font-weight:500;white-space:nowrap;transition:color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-topnav-item>.ec-icon{color:var(--ec-fg-muted)}.ec-topnav-item::after{content:"";position:absolute;inset-inline:.375rem;bottom:0;height:2px;border-radius:2px 2px 0 0;background-color:rgba(0,0,0,0);transition:background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-topnav-item:hover{color:var(--ec-fg)}.ec-topnav-item:hover>.ec-icon{color:var(--ec-fg)}.ec-topnav-item:hover::after{background-color:var(--ec-border-strong)}.ec-topnav-item:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-6px}.ec-topnav-item[aria-current=page]{color:var(--ec-fg);font-weight:600}.ec-topnav-item[aria-current=page]>.ec-icon{color:var(--ec-primary)}.ec-topnav-item[aria-current=page]::after{background-color:var(--ec-primary)}.ec-subnav{position:sticky;top:56px;z-index:calc(var(--ec-z-topbar) - 1);display:flex;gap:.25rem;padding-inline:var(--ec-page-padding);overflow-x:auto;border-bottom:1px solid var(--ec-border);background-color:var(--ec-surface);scrollbar-width:none}.ec-subnav::-webkit-scrollbar{display:none}.ec-subnav-item{--ec-icon-size: 16px;position:relative;display:inline-flex;flex-shrink:0;align-items:center;gap:.5rem;height:44px;padding-inline:.75rem;color:var(--ec-fg-secondary);font-size:.875rem;font-weight:500;white-space:nowrap;transition:color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-subnav-item>.ec-icon{color:var(--ec-fg-muted)}.ec-subnav-item:hover{color:var(--ec-fg)}.ec-subnav-item:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-subnav-item[aria-current=page]{color:var(--ec-primary)}.ec-subnav-item[aria-current=page]>.ec-icon{color:var(--ec-primary)}.ec-subnav-item[aria-current=page]::after{content:"";position:absolute;inset-inline:0;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background-color:var(--ec-primary)}@media(min-width: 768px){.ec-shell--floating .ec-topbar{top:8px;margin:8px 8px 0;padding-inline:max(.75rem,var(--ec-page-padding) - 8px);border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);box-shadow:var(--ec-shadow-float),0 0 0 8px var(--ec-bg)}.ec-shell--floating .ec-subnav{top:72px;margin:8px 8px 0;padding-inline:max(.75rem,var(--ec-page-padding) - 8px);border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);box-shadow:var(--ec-shadow-float),0 0 0 8px var(--ec-bg)}}@media(max-width: 1279.98px){.ec-topbar--topnav .ec-topbar-search{justify-content:center;width:var(--ec-control-h);padding:0;border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,0)}.ec-topbar--topnav .ec-topbar-search>span:not(.ec-kbd){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-topbar--topnav .ec-topbar-search>.ec-kbd{display:none}.ec-topbar--topnav .ec-user-text{display:none}}@media(min-width: 768px)and (max-width: 1279.98px){.ec-shell:not(.ec-shell--topnav):not([data-collapsed=true]) .ec-topbar-search{justify-content:center;width:var(--ec-control-h);padding:0;border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,0)}.ec-shell:not(.ec-shell--topnav):not([data-collapsed=true]) .ec-topbar-search>span:not(.ec-kbd){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-shell:not(.ec-shell--topnav):not([data-collapsed=true]) .ec-topbar-search>.ec-kbd{display:none}}@media(max-width: 1023.98px){.ec-topbar-tz,.ec-topbar-user .ec-user-text{display:none}.ec-topbar-search{width:180px}}@media(max-width: 767.98px){.ec-topbar{gap:.5rem}.ec-topbar-menu{display:inline-flex}.ec-topbar-search{justify-content:center;width:var(--ec-control-h);padding:0;border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,0)}.ec-topbar-search>span:not(.ec-kbd){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-topbar-search>.ec-kbd{display:none}.ec-topbar-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-topnav-brand .ec-logo,.ec-topnav-divider{display:none}.ec-topnav-brand .ec-mark{display:block}.ec-topnav-nav,.ec-subnav--main{position:fixed;inset-inline:0;top:auto;bottom:0;z-index:var(--ec-z-topbar);display:flex;align-self:auto;justify-content:space-around;gap:0;height:auto;margin:0;padding:4px 4px calc(4px + env(safe-area-inset-bottom));overflow:visible;border-top:1px solid var(--ec-border);border-bottom:0;background-color:var(--ec-surface)}.ec-topnav-nav>a,.ec-subnav--main>a{--ec-icon-size: 18px;flex:1 1 0;flex-direction:column;justify-content:center;gap:2px;min-width:0;height:52px;padding-inline:2px;border-radius:var(--ec-radius-md);font-size:11px;line-height:14px}.ec-topnav-nav>a::after,.ec-subnav--main>a::after{display:none}.ec-topnav-nav>a[aria-current=page],.ec-subnav--main>a[aria-current=page]{background-color:var(--ec-primary-subtle);color:var(--ec-primary)}.ec-shell--topnav .ec-content{padding-bottom:calc(var(--ec-page-padding) + 72px)}.ec-topbar-actions>.ec-btn--ai{width:var(--ec-control-h);padding:0}.ec-topbar-user .ec-icon{display:none}}}@layer components{.ec-breadcrumb{min-width:0}.ec-breadcrumb ol{display:flex;align-items:center;gap:.375rem;min-width:0;list-style:none}.ec-breadcrumb li{display:flex;align-items:center;gap:.375rem;min-width:0;font-size:.875rem;color:var(--ec-fg-muted);white-space:nowrap}.ec-breadcrumb li+li::before{content:"";flex-shrink:0;width:14px;height:14px;background-color:var(--ec-fg-subtle);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/14px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/14px no-repeat}.ec-breadcrumb a{--ec-icon-size: 16px;display:inline-flex;align-items:center;border-radius:var(--ec-radius-sm);color:var(--ec-fg-muted);transition:color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-breadcrumb a:hover{color:var(--ec-fg);text-decoration:underline;text-underline-offset:3px}.ec-breadcrumb a:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-breadcrumb li:not(:last-child){flex-shrink:0}.ec-breadcrumb [aria-current=page]{overflow:hidden;text-overflow:ellipsis;font-weight:600;color:var(--ec-fg)}@media(max-width: 767.98px){.ec-breadcrumb li:not(:last-child){display:none}.ec-breadcrumb li+li::before{display:none}}[dir=rtl] .ec-breadcrumb li+li::before{transform:scaleX(-1)}}@layer components{.ec-page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 1.5rem;margin-bottom:1.5rem}.ec-page-header-text{flex:1 1 20rem;min-width:0}.ec-page-header-eyebrow{margin-bottom:.25rem;font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600;color:var(--ec-ai-fg)}.ec-page-header-title{font-size:var(--ec-text-h1);line-height:var(--ec-text-h1-lh);font-weight:700;color:var(--ec-fg)}.ec-page-header-description{max-width:80ch;margin-top:.25rem;color:var(--ec-fg-secondary)}.ec-page-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}@media(max-width: 639.98px){.ec-page-header-actions{width:100%}.ec-page-header-actions>.ec-btn--primary{flex:1 1 100%}}}@keyframes ec-ai-drawer-in{from{transform:translateX(-100%)}}@layer components{.ec-ai-tile{--ec-icon-size: 18px;display:inline-grid;flex-shrink:0;place-items:center;width:32px;height:32px;border-radius:var(--ec-radius-md);background-color:var(--ec-ai-fill);color:var(--ec-on-ai)}.ec-ai-tile--lg{--ec-icon-size: 28px;width:56px;height:56px;border-radius:var(--ec-radius-lg)}.ec-ai-askbar{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface);box-shadow:var(--ec-shadow-xs);transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),box-shadow var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-askbar:focus-within{border-color:var(--ec-ai-ring);box-shadow:0 0 0 1px var(--ec-ai-ring)}.ec-ai-askbar-row{display:flex;align-items:center;gap:.75rem}.ec-ai-askbar-input{flex:1;min-width:0;height:var(--ec-control-h);padding:0;border:0;outline:0;background:rgba(0,0,0,0);color:var(--ec-fg);font:inherit;font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh)}.ec-ai-askbar-input::placeholder{color:var(--ec-fg-muted);opacity:1}.ec-ai-askbar-input:focus-visible{outline:0}.ec-ai-askbar-chips{display:flex;flex-wrap:wrap;gap:.5rem;padding-inline-start:44px}.ec-ai-askbar-chips>.ec-chip{max-width:100%}@media(max-width: 639.98px){.ec-ai-askbar-chips{padding-inline-start:0}.ec-ai-askbar-chips>.ec-chip{height:auto;min-height:28px;padding-block:.25rem;white-space:normal;text-align:start}}.ec-ai-label{--ec-icon-size: 14px;display:inline-flex;align-items:center;gap:.25rem;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh)}.ec-ai-label>.ec-icon{color:var(--ec-ai-fg)}.ec-ai-disclaimer{max-width:760px;margin-inline:auto;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);text-align:center;text-wrap:balance}.ec-ai-disclaimer a,.ec-ai-disclaimer button{color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.ec-ai-disclaimer a:hover,.ec-ai-disclaimer button:hover{color:var(--ec-fg)}.ec-ai-disclaimer a:focus-visible,.ec-ai-disclaimer button:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-shell:has(>.ec-shell-main>.ec-content>.ec-ai-layout){min-height:100dvh}.ec-shell-main:has(>.ec-content>.ec-ai-layout){height:100vh;height:100dvh;min-height:0}.ec-content:has(>.ec-ai-layout){display:flex;min-height:0;max-width:none;padding:0}.ec-ai-layout{--ec-ai-gap: .5rem;position:relative;display:flex;flex:1;gap:var(--ec-ai-gap);min-width:0;min-height:0;padding:var(--ec-ai-gap)}.ec-ai-rail,.ec-ai-sidebar{display:none}.ec-ai-layout[data-sidebar=rail]>.ec-ai-rail,.ec-ai-layout[data-sidebar=expanded]>.ec-ai-sidebar{display:flex}.ec-ai-main{position:relative;display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface)}.ec-ai-toolbar{display:none}.ec-ai-notice{--ec-icon-size: 14px;display:flex;align-items:center;justify-content:center;gap:.375rem;color:var(--ec-warning-fg);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-ai-scroll{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1.5rem 1rem}.ec-ai-foot{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;padding:0 1rem .75rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.ec-ai-backdrop{display:none}@media(max-width: 767.98px){.ec-ai-layout{padding:0}.ec-ai-main{border:0;border-radius:0}.ec-ai-toolbar{display:flex;flex-shrink:0;justify-content:space-between;padding:.375rem .5rem 0}.ec-ai-layout[data-sidebar=none] .ec-ai-toolbar [data-ec-ai=history]{visibility:hidden}.ec-ai-scroll{padding:1rem .75rem}.ec-ai-foot{padding-inline:.5rem}.ec-ai-layout[data-sidebar]>.ec-ai-rail,.ec-ai-layout[data-sidebar]>.ec-ai-sidebar{display:none}.ec-ai-layout[data-drawer=open]>.ec-ai-sidebar{position:fixed;inset-block:0;inset-inline-start:0;z-index:var(--ec-z-drawer);display:flex;width:min(320px,85vw);border-width:0 1px 0 0;border-radius:0;box-shadow:var(--ec-shadow-lg);animation:ec-ai-drawer-in var(--ec-duration-slow) var(--ec-ease-standard)}.ec-ai-layout[data-drawer=open]>.ec-ai-backdrop{position:fixed;inset:0;z-index:calc(var(--ec-z-drawer) - 1);display:block;background-color:var(--ec-overlay)}.ec-shell--topnav .ec-content:has(>.ec-ai-layout){padding-bottom:calc(64px + env(safe-area-inset-bottom))}}}@layer components{.ec-ai-rail{flex-direction:column;flex-shrink:0;align-items:center;justify-content:space-between;width:72px;padding:.75rem 0;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface)}.ec-ai-rail .ec-icon-btn{--ec-icon-btn-size: 44px}.ec-ai-rail .ec-icon-btn[aria-expanded=true]{background-color:var(--ec-surface-muted);box-shadow:inset 0 0 0 1.5px var(--ec-fg)}.ec-ai-rail-top,.ec-ai-rail-bottom{display:flex;flex-direction:column;align-items:center;gap:.5rem}.ec-ai-rail-bottom{width:100%;padding-top:.75rem}.ec-ai-rail-bottom::before{content:"";width:40px;height:1px;margin-bottom:.25rem;background-color:var(--ec-border)}.ec-ai-sidebar{flex-direction:column;flex-shrink:0;width:280px;min-height:0;padding:.5rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface)}.ec-ai-sidebar-top{display:flex;flex-direction:column;gap:2px;padding-bottom:.5rem}.ec-ai-sidebar-action{display:flex;align-items:center;gap:.625rem;width:100%;height:40px;padding-inline:.625rem;border-radius:var(--ec-radius-md);color:var(--ec-fg);font-weight:500;text-align:start;cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-sidebar-action>.ec-icon{color:var(--ec-fg-muted)}.ec-ai-sidebar-action>.ec-kbd{margin-inline-start:auto}.ec-ai-sidebar-action:hover{background-color:var(--ec-surface-muted)}.ec-ai-sidebar-action:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px}.ec-ai-sidebar-label{padding:.5rem .625rem .25rem;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600}.ec-ai-sidebar .ec-ai-history{flex:1;min-height:0;overflow-y:auto}.ec-ai-sidebar-bottom{display:flex;justify-content:flex-end;margin-top:.25rem;padding-top:.5rem;border-top:1px solid var(--ec-border)}.ec-ai-history{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ec-border-strong) rgba(0,0,0,0)}.ec-ai-history-group+.ec-ai-history-group{margin-top:.75rem}.ec-ai-history-label{padding:.25rem .625rem;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600}.ec-ai-history-list{display:flex;flex-direction:column;gap:1px}.ec-ai-item{position:relative;display:flex;align-items:center;border-radius:var(--ec-radius-md)}.ec-ai-item:hover{background-color:var(--ec-surface-muted)}.ec-ai-item:has(>[aria-current=page]){background-color:var(--ec-primary-subtle)}.ec-ai-item-link{flex:1;min-width:0;height:36px;padding-inline:.625rem;border-radius:var(--ec-radius-md);color:var(--ec-fg);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);text-align:start;cursor:pointer}.ec-ai-item-link:focus-visible{outline:2px solid var(--ec-focus);outline-offset:2px;outline-offset:-2px}.ec-ai-item-link[aria-current=page]{font-weight:600}.ec-ai-item-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-ai-item-more,.ec-ai-item-busy{position:absolute;inset-inline-end:2px;top:50%;transform:translateY(-50%)}.ec-ai-item-more{--ec-icon-btn-size: 30px;opacity:0}.ec-ai-item-more:focus-visible,.ec-ai-item-more[aria-expanded=true]{opacity:1}.ec-ai-item:hover .ec-ai-item-more{opacity:1}.ec-ai-item-busy{inset-inline-end:9px;color:var(--ec-ai-fg)}.ec-ai-item:hover>.ec-ai-item-link,.ec-ai-item:focus-within>.ec-ai-item-link,.ec-ai-item:has(>.ec-ai-item-busy)>.ec-ai-item-link,.ec-ai-item:has(>.ec-ai-item-more[aria-expanded=true])>.ec-ai-item-link{padding-inline-end:2.25rem}@media(hover: none){.ec-ai-item-more{opacity:1}.ec-ai-item>.ec-ai-item-link{padding-inline-end:2.25rem}}.ec-ai-history-skeleton{display:flex;align-items:center;height:36px;padding-inline:.625rem}.ec-ai-history-empty{padding:1rem .625rem;color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-ai-recents{position:fixed;z-index:var(--ec-z-dropdown);display:flex;flex-direction:column;width:340px;max-height:min(560px,80vh);padding:.75rem .5rem .5rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface-raised);box-shadow:var(--ec-shadow-md)}.ec-ai-recents-title{padding:0 .625rem .5rem;font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600}.ec-ai-recents .ec-ai-history{flex:1;min-height:0;overflow-y:auto}.ec-ai-recents-foot{margin-top:.25rem;padding:.5rem .625rem 0;border-top:1px solid var(--ec-border)}.ec-ai-search{margin-top:12vh;max-height:min(600px,100dvh - 12vh - 1rem)}.ec-ai-search::backdrop{backdrop-filter:blur(4px)}.ec-ai-search .ec-cmdk-item>.ec-icon{align-self:flex-start;margin-top:2px}.ec-ai-search .ec-cmdk-item[data-new]>.ec-icon{color:var(--ec-fg)}.ec-ai-search-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ec-ai-search-snippet{overflow:hidden;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);text-overflow:ellipsis;white-space:nowrap}.ec-ai-search-snippet mark{background:none;color:var(--ec-fg);font-weight:600}.ec-ai-search-date{flex-shrink:0;align-self:flex-start;margin-top:1px;color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-variant-numeric:tabular-nums}.ec-ai-search-skeleton{padding:.875rem .625rem}}@keyframes ec-ai-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes ec-ai-blink{50%{opacity:0}}@layer components{.ec-ai-welcome{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;max-width:760px;margin:auto;padding-block:1rem;text-align:center}.ec-ai-welcome-title{margin-top:.5rem;font-size:var(--ec-text-h2);line-height:var(--ec-text-h2-lh);font-weight:600}.ec-ai-welcome-text{max-width:520px;color:var(--ec-fg-muted)}.ec-ai-welcome .ec-ai-prompts{margin-top:1.5rem;text-align:start}.ec-ai-prompts{display:grid;grid-template-columns:minmax(0, 1fr);gap:1rem;width:100%;max-width:760px}@media(min-width: 640px){.ec-ai-prompts{grid-template-columns:repeat(2, minmax(0, 1fr))}}.ec-ai-prompt{--ec-cat: var(--ec-cat-navy);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.375rem;min-height:96px;padding:1rem 1.25rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface);color:var(--ec-fg);text-align:start;cursor:pointer;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),background-color var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-prompt:hover{border-color:var(--ec-border-strong);background-color:var(--ec-surface-muted)}.ec-ai-prompt:focus-visible{outline:2px solid var(--ec-ai-ring);outline-offset:2px}.ec-ai-prompt-cat{--ec-icon-size: 16px;display:inline-flex;align-items:center;gap:.375rem;color:var(--ec-fg-secondary);color:color-mix(in srgb, var(--ec-cat) 70%, var(--ec-fg));font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:600}.ec-ai-prompt-cat>.ec-icon{color:var(--ec-cat)}.ec-ai-prompt-q{display:-webkit-box;overflow:hidden;font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh);-webkit-box-orient:vertical;-webkit-line-clamp:2}.ec-ai-composer{display:flex;flex-direction:column;width:100%;max-width:760px;margin-inline:auto;border:1px solid var(--ec-border-strong);border-radius:var(--ec-radius-xl);background-color:var(--ec-surface);box-shadow:var(--ec-shadow-sm);cursor:text;transition:border-color var(--ec-duration-fast) var(--ec-ease-standard),box-shadow var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-composer:focus-within{border-color:var(--ec-ai-ring);box-shadow:0 0 0 1px var(--ec-ai-ring)}.ec-ai-composer[data-disabled]{background-color:var(--ec-surface-muted);cursor:not-allowed}.ec-ai-composer-input{display:block;width:100%;padding:.875rem 1rem .25rem;border:0;outline:0;background:rgba(0,0,0,0);color:var(--ec-fg);font:inherit;font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh);resize:none;overflow-y:hidden}.ec-ai-composer-input::placeholder{color:var(--ec-fg-muted);opacity:1}.ec-ai-composer-input:focus-visible{outline:0}.ec-ai-composer-input:disabled{cursor:not-allowed}.ec-ai-composer-bar{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem .5rem}.ec-ai-composer-tools{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0}.ec-ai-composer-count{color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-variant-numeric:tabular-nums;white-space:nowrap}.ec-ai-composer-count[data-state=over]{color:var(--ec-danger-fg);font-weight:600}.ec-ai-send{--ec-icon-size: 18px;display:inline-grid;flex-shrink:0;place-items:center;width:36px;height:36px;border-radius:var(--ec-radius-full);background-color:var(--ec-ai-fill);color:var(--ec-on-ai);cursor:pointer;transition:background-color var(--ec-duration-fast) var(--ec-ease-standard),color var(--ec-duration-fast) var(--ec-ease-standard),filter var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-send>.ec-icon{grid-area:1/1;stroke-width:2.25}.ec-ai-send>.ec-ai-send-stop{display:none}.ec-ai-send:hover:not(:disabled){filter:brightness(0.94)}.ec-ai-send:focus-visible{outline:2px solid var(--ec-ai-ring);outline-offset:2px}.ec-ai-send:disabled{background-color:var(--ec-neutral-subtle);color:var(--ec-fg-subtle);cursor:not-allowed}.ec-ai-composer[data-state=busy] .ec-ai-send{background-color:var(--ec-primary);color:var(--ec-on-primary)}.ec-ai-composer[data-state=busy] .ec-ai-send>.ec-icon{display:none}.ec-ai-composer[data-state=busy] .ec-ai-send>.ec-ai-send-stop{--ec-icon-size: 14px;display:block;fill:currentColor}.ec-ai-messages{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:760px;margin-inline:auto}.ec-ai-messages:empty{display:none}.ec-ai-message{display:flex;gap:.75rem}.ec-ai-message--user{align-items:center;justify-content:flex-end;gap:.25rem}.ec-ai-message--user>.ec-ai-actions{order:-1}.ec-ai-message--user[data-editing] .ec-ai-bubble{outline:2px dashed var(--ec-ai-ring);outline-offset:2px}.ec-ai-bubble{max-width:80%;padding:.625rem 1rem;border-radius:var(--ec-radius-xl) var(--ec-radius-xl) 4px var(--ec-radius-xl);background-color:var(--ec-primary-subtle);color:var(--ec-fg);font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh);overflow-wrap:anywhere;white-space:pre-wrap}.ec-ai-message--assistant{align-items:flex-start}.ec-ai-message-avatar{flex-shrink:0;width:32px;height:32px;border-radius:var(--ec-radius-full)}.ec-ai-message-body{display:flex;flex:1;flex-direction:column;gap:.75rem;min-width:0;padding-top:4px}.ec-ai-thinking{display:flex;align-items:center;gap:.625rem;min-height:24px;color:var(--ec-fg-muted)}.ec-ai-dots{display:inline-flex;gap:4px}.ec-ai-dots>span{width:6px;height:6px;border-radius:var(--ec-radius-full);background-color:var(--ec-ai);animation:ec-ai-dot 1.2s ease-in-out infinite}.ec-ai-dots>span:nth-child(2){animation-delay:.15s}.ec-ai-dots>span:nth-child(3){animation-delay:.3s}.ec-ai-caret{display:inline-block;width:.5em;height:1.1em;margin-inline-start:2px;background-color:var(--ec-fg);vertical-align:text-bottom;animation:ec-ai-blink 1s steps(1) infinite}.ec-ai-content{color:var(--ec-fg);font-size:var(--ec-text-body-lg);line-height:var(--ec-text-body-lg-lh);overflow-wrap:anywhere}.ec-ai-content>*+*{margin-top:.75rem}.ec-ai-content h3{margin-top:1.25rem;font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh);font-weight:600}.ec-ai-content h4,.ec-ai-content h5,.ec-ai-content h6{margin-top:1rem;font-weight:600}.ec-ai-content>:first-child{margin-top:0}.ec-ai-content strong{font-weight:600}.ec-ai-content em{font-style:italic}.ec-ai-content del{color:var(--ec-fg-muted)}.ec-ai-content ul,.ec-ai-content ol{padding-inline-start:1.5rem}.ec-ai-content ul{list-style:disc}.ec-ai-content ol{list-style:decimal}.ec-ai-content li+li,.ec-ai-content li>ul,.ec-ai-content li>ol{margin-top:.25rem}.ec-ai-content li::marker{color:var(--ec-fg-muted)}.ec-ai-content :not(pre)>code{padding:.1em .35em;border-radius:var(--ec-radius-sm);background-color:var(--ec-neutral-subtle);font-family:var(--ec-font-mono);font-size:.875em}.ec-ai-content blockquote{padding-inline-start:1rem;border-inline-start:3px solid var(--ec-border-strong);color:var(--ec-fg-secondary)}.ec-ai-content hr{border:0;border-top:1px solid var(--ec-border)}.ec-ai-content .ec-link .ec-icon{--ec-icon-size: 14px}.ec-ai-table{overflow-wrap:normal}.ec-ai-table th,.ec-ai-table td{white-space:nowrap}.ec-ai-table .ec-table th{height:36px;padding-inline:.75rem}.ec-ai-table .ec-table td{height:auto;padding:.5rem .75rem}.ec-ai-table [data-align=center]{text-align:center}.ec-ai-table [data-align=end]{text-align:end}.ec-ai-code{overflow:hidden;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface-muted)}.ec-ai-code pre{margin:0;padding:.75rem 1rem;overflow-x:auto;font-family:var(--ec-font-mono);font-size:.8125rem;line-height:1.6}.ec-ai-code-bar{display:flex;align-items:center;justify-content:space-between;padding:.25rem .25rem .25rem .75rem;border-bottom:1px solid var(--ec-border);color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh)}.ec-ai-stats{display:flex;flex-wrap:wrap;gap:.5rem}.ec-ai-stat{display:inline-flex;flex-direction:column;min-width:120px;padding:.5rem .875rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);background-color:var(--ec-surface)}.ec-ai-stat-value{font-size:var(--ec-text-h2);line-height:var(--ec-text-h2-lh);font-weight:700;font-variant-numeric:tabular-nums}.ec-ai-stat-label{color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh)}.ec-ai-records,.ec-ai-sources{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ec-ai-records-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.ec-ai-records .ec-chip{font-family:var(--ec-font-mono);font-size:12px;font-variant-ligatures:none}.ec-ai-sources{padding-top:.75rem;border-top:1px solid var(--ec-border)}.ec-ai-sources-label{color:var(--ec-fg-muted);font-size:var(--ec-text-xs);line-height:var(--ec-text-xs-lh);font-weight:600}.ec-ai-actions{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-top:-0.25rem;color:var(--ec-fg-muted);opacity:0;transition:opacity var(--ec-duration-fast) var(--ec-ease-standard)}.ec-ai-actions [aria-pressed=true]{background-color:var(--ec-primary-subtle);color:var(--ec-primary)}.ec-ai-message--user .ec-ai-actions{flex-wrap:nowrap;margin-top:0}.ec-ai-message:hover .ec-ai-actions,.ec-ai-actions:focus-within,.ec-ai-message:last-child .ec-ai-actions{opacity:1}@media(hover: none){.ec-ai-actions{opacity:1}}.ec-ai-open{margin-inline-start:.25rem}.ec-ai-error .ec-ai-error-action{align-self:flex-start;margin-top:.5rem}.ec-ai-stopped{display:flex;align-items:center;gap:.75rem;color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-ai-reasons{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg)}.ec-ai-reasons-label{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh);font-weight:600}.ec-ai-thanks{color:var(--ec-fg-muted);font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-ai-message-skeleton{display:grid;gap:.625rem;padding-inline-start:44px}.ec-ai-message-skeleton>.ec-skeleton:last-child{width:60%}.ec-ai-jump{position:sticky;bottom:.5rem;z-index:1;display:flex;width:fit-content;margin:.75rem auto 0;border-radius:var(--ec-radius-full);box-shadow:var(--ec-shadow-md)}}@layer components{.ec-ai-panel{--ec-drawer-w: 440px}.ec-ai-panel-header{gap:.25rem;padding-inline:1rem .5rem}.ec-ai-panel-header>.ec-mark{--ec-mark-size: 24px;margin-inline-end:.375rem}.ec-ai-panel .ec-ai-scroll{padding:1rem}.ec-ai-panel .ec-ai-foot{padding:0 1rem 1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom))}.ec-ai-panel .ec-ai-welcome{padding-block:.5rem}.ec-ai-panel .ec-ai-welcome-title{font-size:var(--ec-text-h3);line-height:var(--ec-text-h3-lh)}.ec-ai-panel .ec-ai-welcome-text{font-size:var(--ec-text-sm);line-height:var(--ec-text-sm-lh)}.ec-ai-panel .ec-ai-welcome .ec-ai-prompts,.ec-ai-panel .ec-ai-prompts{grid-template-columns:minmax(0, 1fr);gap:.5rem;margin-top:1rem}.ec-ai-panel .ec-ai-prompt{min-height:0;padding:.75rem 1rem}.ec-ai-panel .ec-ai-prompt-q{font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh)}.ec-ai-panel .ec-ai-messages{gap:1.25rem}.ec-ai-panel .ec-ai-bubble{max-width:85%;font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh)}.ec-ai-panel .ec-ai-content{font-size:var(--ec-text-body);line-height:var(--ec-text-body-lh)}.ec-ai-panel .ec-ai-recents{width:min(340px,100vw - 2rem)}}@media(prefers-reduced-motion: reduce){.ec-ai-dots>span{animation-duration:2.4s}.ec-ai-caret{animation:none}}
/*# sourceMappingURL=ectrons-ui.min.css.da74f060ac3e.map */