/* r381 (29.10.2026): hub tugma/menyu uchun DS komponentlari — lib/hub-auth.js yozadi, qo‘lda tahrirlamang */
.hub-acts, #ds-auth-dlg {
  --eco-color-white: #FFFFFF;
  --eco-color-black: #141414;
  --eco-color-malachite: #00C508;
  --eco-color-lime: #BDFF00;
  --eco-color-lime-light: #B5F500;
  --eco-color-malachite-button: #00B533;
  --eco-color-green-done: #00A603;
  --eco-gradient-stop-1: #F2FFC7;
  --eco-gradient-stop-2: var(--eco-color-lime);
  --eco-gradient-stop-3: var(--eco-color-malachite);
  --eco-gradient-stop-4: var(--eco-color-green-950);
  --eco-gradient: linear-gradient(90deg, var(--eco-gradient-stop-1) 0%, var(--eco-gradient-stop-2) 22%, var(--eco-gradient-stop-3) 58%, var(--eco-gradient-stop-4) 100%);
  --eco-color-surface: #F5F5F5;
  --eco-color-brand-tint: #E9FED8;
  --eco-color-surface-active: #F7F7F7;
  --eco-color-surface-hover: #E6E6E6;
  --eco-color-surface-tertiary: #E6E6E6;
  --eco-color-surface-raised: #ECECEC;
  --eco-color-surface-strong: #DCDCDC;
  --eco-color-green-25: #F6FFF5;
  --eco-color-green-50: #E7FFE4;
  --eco-color-green-100: #C6FFC0;
  --eco-color-green-200: #7EFA77;
  --eco-color-green-300: #63E95D;
  --eco-color-green-400: #40D63C;
  --eco-color-green-500: #00C508;
  --eco-color-green-600: #02A307;
  --eco-color-green-800: #026503;
  --eco-color-green-900: #014C02;
  --eco-color-green-950: #013A04;
  --eco-color-lime-25: #FAFFF5;
  --eco-color-lime-50: #F4FFE6;
  --eco-color-lime-100: #E5FFC0;
  --eco-color-lime-200: #CFFF80;
  --eco-color-lime-300: #BDFF00;
  --eco-color-lime-400: #AAE506;
  --eco-color-lime-500: #92C505;
  --eco-color-lime-600: #78A302;
  --eco-color-lime-700: #5F8201;
  --eco-color-lime-800: #476300;
  --eco-color-lime-900: #354B01;
  --eco-color-lime-950: #263701;
  --eco-color-neutral-25: #FBFBFB;
  --eco-color-neutral-50: #F7F7F7;
  --eco-color-neutral-100: #F0F0F0;
  --eco-color-neutral-200: #E1E1E1;
  --eco-color-neutral-300: #C7C7C7;
  --eco-color-neutral-400: #9E9E9E;
  --eco-color-neutral-500: #767676;
  --eco-color-neutral-600: #5B5B5B;
  --eco-color-neutral-700: #424242;
  --eco-color-neutral-800: #2E2E2E;
  --eco-color-neutral-900: #222222;
  --eco-color-neutral-950: #141414;
  --eco-color-error-25: #FEF9F8;
  --eco-color-error-50: #FFF2F0;
  --eco-color-error-100: #FEE2E0;
  --eco-color-error-200: #FFC8C3;
  --eco-color-error-300: #FFA09A;
  --eco-color-error-400: #FE726E;
  --eco-color-error-500: #F0484B;
  --eco-color-error-600: #CC3339;
  --eco-color-error-700: #AA1E27;
  --eco-color-error-800: #8A0316;
  --eco-color-error-900: #6A010E;
  --eco-color-error-950: #4B0107;
  --eco-color-warning-25: #FEFBF7;
  --eco-color-warning-50: #FFF5E9;
  --eco-color-warning-100: #FEEBD3;
  --eco-color-warning-200: #FFDBAA;
  --eco-color-warning-300: #FEC675;
  --eco-color-warning-400: #FFB020;
  --eco-color-warning-500: #DB9404;
  --eco-color-warning-600: #B37902;
  --eco-color-warning-700: #8D5E01;
  --eco-color-warning-800: #6C4701;
  --eco-color-warning-900: #543600;
  --eco-color-warning-950: #392401;
  --eco-font-display: "PDP Display", "PDP Display Fallback", system-ui, sans-serif;
  --eco-font-body: "Inter", "Inter Fallback", system-ui, sans-serif;
  --eco-font-mono: "IBM Plex Mono", "IBM Plex Mono Fallback", ui-monospace, monospace;
  --eco-font-display--letter-spacing: -0.04em;
  --eco-text-xs: 12px;
  --eco-text-xs--line-height: 18px;
  --eco-text-sm: 14px;
  --eco-text-sm--line-height: 20px;
  --eco-text-md: 16px;
  --eco-text-md--line-height: 24px;
  --eco-text-lg: 18px;
  --eco-text-lg--line-height: 28px;
  --eco-text-xl: 20px;
  --eco-text-xl--line-height: 30px;
  --eco-text-display-xs: 24px;
  --eco-text-display-xs--line-height: 32px;
  --eco-text-display-xs--letter-spacing: -0.96px;
  --eco-text-display-sm: 30px;
  --eco-text-display-sm--line-height: 38px;
  --eco-text-display-sm--letter-spacing: -1.2px;
  --eco-text-display-md: 36px;
  --eco-text-display-md--line-height: 44px;
  --eco-text-display-md--letter-spacing: -1.44px;
  --eco-text-display-lg: 48px;
  --eco-text-display-lg--line-height: 60px;
  --eco-text-display-lg--letter-spacing: -1.92px;
  --eco-text-display-xl: 60px;
  --eco-text-display-xl--line-height: 72px;
  --eco-text-display-xl--letter-spacing: -2.4px;
  --eco-text-display-2xl: 72px;
  --eco-text-display-2xl--line-height: 90px;
  --eco-text-display-2xl--letter-spacing: -2.88px;
  --eco-spacing-none: 0;
  --eco-spacing-xxs: 2px;
  --eco-spacing-xs: 4px;
  --eco-spacing-sm: 6px;
  --eco-spacing-md: 8px;
  --eco-spacing-lg: 12px;
  --eco-spacing-xl: 16px;
  --eco-spacing-2xl: 20px;
  --eco-spacing-3xl: 24px;
  --eco-spacing-4xl: 32px;
  --eco-spacing-5xl: 40px;
  --eco-spacing-6xl: 48px;
  --eco-spacing-7xl: 64px;
  --eco-spacing-8xl: 80px;
  --eco-spacing-9xl: 96px;
  --eco-spacing-10xl: 128px;
  --eco-spacing-11xl: 160px;
  --eco-radius-none: 0;
  --eco-radius-xxs: 2px;
  --eco-radius-xs: 4px;
  --eco-radius-sm: 6px;
  --eco-radius-md: 8px;
  --eco-radius-lg: 10px;
  --eco-radius-xl: 12px;
  --eco-radius-2xl: 16px;
  --eco-radius-3xl: 20px;
  --eco-radius-4xl: 24px;
  --eco-radius-full: 9999px;
  --eco-max-width-container: 1280px;
  --eco-icon-sm: 16px;
  --eco-icon-md: 20px;
  --eco-icon-lg: 24px;
  --eco-icon-duo: currentColor;
  --eco-icon-duo-opacity: .2;
  --eco-duration-fast: 120ms;
  --eco-duration-base: 200ms;
  --eco-duration-slow: 360ms;
  --eco-ease-standard: cubic-bezier(.2, 0, 0, 1);
  --eco-ease-emphasized: cubic-bezier(.2, .7, .2, 1);
  --eco-ease-exit: cubic-bezier(.4, 0, 1, 1);
  --eco-logo-mark-size: 40px;
  --eco-logo-x: calc(var(--eco-logo-mark-size) / 9);
  --eco-logo-clearspace: var(--eco-logo-x);
  --eco-logo-min-full: 120px;
  --eco-logo-min-mark: 16px;
  --eco-logo-min-badge: 64px;
  --eco-text-primary: var(--eco-color-neutral-50);
  --eco-text-secondary: var(--eco-color-neutral-200);
  --eco-text-secondary_hover: var(--eco-color-neutral-100);
  --eco-text-secondary_active: var(--eco-color-neutral-50);
  --eco-text-tertiary: var(--eco-color-neutral-400);
  --eco-text-tertiary_hover: var(--eco-color-neutral-300);
  --eco-text-tertiary_active: var(--eco-color-neutral-200);
  --eco-text-quaternary: var(--eco-color-neutral-400);
  --eco-text-placeholder: var(--eco-color-neutral-400);
  --eco-text-disabled: var(--eco-color-neutral-600);
  --eco-text-white: var(--eco-color-white);
  --eco-text-primary_on-brand: var(--eco-color-black);
  --eco-text-brand-primary: var(--eco-color-lime);
  --eco-text-brand-secondary: var(--eco-color-lime);
  --eco-text-brand-secondary_hover: var(--eco-color-lime-200);
  --eco-text-brand-secondary_active: var(--eco-color-lime-100);
  --eco-text-brand-tertiary: var(--eco-color-malachite);
  --eco-text-error-primary: var(--eco-color-error-400);
  --eco-text-error-primary_hover: var(--eco-color-error-300);
  --eco-text-error-primary_active: var(--eco-color-error-200);
  --eco-text-warning-primary: #FFCC19;
  --eco-text-success-primary: var(--eco-color-green-300);
  --eco-border-primary: var(--eco-color-neutral-500);
  --eco-border-secondary: rgba(245, 245, 245, .26);
  --eco-border-tertiary: rgba(245, 245, 245, .14);
  --eco-border-disabled: var(--eco-color-neutral-700);
  --eco-border-brand: var(--eco-color-lime);
  --eco-border-error: var(--eco-color-error-400);
  --eco-border-error_subtle: var(--eco-color-error-500);
  --eco-fg-primary: var(--eco-color-neutral-50);
  --eco-fg-secondary: var(--eco-color-neutral-200);
  --eco-fg-tertiary: var(--eco-color-neutral-400);
  --eco-fg-quaternary: var(--eco-color-neutral-500);
  --eco-fg-quaternary_hover: var(--eco-color-neutral-400);
  --eco-fg-quaternary_active: var(--eco-color-neutral-300);
  --eco-fg-white: var(--eco-color-white);
  --eco-fg-disabled: var(--eco-color-neutral-600);
  --eco-fg-brand-primary: var(--eco-color-lime);
  --eco-fg-brand-primary_alt: var(--eco-color-lime);
  --eco-fg-brand-secondary: var(--eco-color-malachite);
  --eco-fg-error-primary: var(--eco-color-error-400);
  --eco-fg-error-secondary: var(--eco-color-error-500);
  --eco-fg-warning-primary: #FFCC19;
  --eco-fg-info-primary: #5B92FF;
  --eco-fg-success-primary: var(--eco-color-malachite);
  --eco-fg-success-secondary: var(--eco-color-green-400);
  --eco-bg-primary: var(--eco-color-black);
  --eco-bg-primary_alt: var(--eco-color-neutral-800);
  --eco-bg-primary_hover: var(--eco-color-neutral-900);
  --eco-bg-primary_active: var(--eco-color-neutral-800);
  --eco-bg-primary-solid: var(--eco-color-neutral-700);
  --eco-bg-secondary: var(--eco-color-neutral-900);
  --eco-bg-secondary_hover: var(--eco-color-neutral-800);
  --eco-bg-secondary_active: var(--eco-color-neutral-700);
  --eco-bg-tertiary: var(--eco-color-neutral-800);
  --eco-bg-quaternary: var(--eco-color-neutral-700);
  --eco-bg-active: var(--eco-color-neutral-800);
  --eco-bg-disabled: var(--eco-color-neutral-800);
  --eco-bg-overlay: rgba(0, 0, 0, .64);
  --eco-bg-brand-primary: rgba(189, 255, 0, .10);
  --eco-bg-brand-secondary: rgba(189, 255, 0, .18);
  --eco-bg-brand-solid: var(--eco-color-lime);
  --eco-bg-brand-solid_hover: var(--eco-color-lime-200);
  --eco-bg-brand-solid_active: var(--eco-color-lime-100);
  --eco-bg-error-primary: rgba(240, 72, 75, .16);
  --eco-bg-error-secondary: rgba(240, 72, 75, .26);
  --eco-bg-error-solid: var(--eco-color-error-600);
  --eco-bg-error-solid_hover: var(--eco-color-error-700);
  --eco-bg-error-solid_active: var(--eco-color-error-800);
  --eco-bg-warning-primary: rgba(255, 176, 32, .16);
  --eco-bg-warning-solid: var(--eco-color-warning-400);
  --eco-bg-success-primary: rgba(0, 197, 8, .16);
  --eco-bg-success-solid: var(--eco-color-malachite-button);
  --eco-focus-ring: var(--eco-color-lime);
  --eco-focus-ring-error: var(--eco-color-error-400);
  --eco-chart-1: #89DD76;
  --eco-chart-seq-1: var(--eco-color-green-900);
  --eco-chart-seq-2: #397A37;
  --eco-chart-seq-3: #63A560;
  --eco-chart-seq-4: #97CF94;
  --eco-chart-seq-5: var(--eco-color-green-100);
  --eco-chart-div-1: var(--eco-color-error-600);
  --eco-chart-div-2: var(--eco-color-error-800);
  --eco-chart-div-3: var(--eco-color-neutral-800);
  --eco-chart-div-4: #397A37;
  --eco-chart-div-5: #63A560;
  --eco-erp-chart-accent: var(--eco-color-lime);
  --eco-erp-chart-green: var(--eco-color-malachite);
  --eco-project-academy: var(--eco-color-malachite);
  --eco-project-school: #4972FE;
  --eco-project-junior: #00E0EF;
  --eco-project-university: #26A49D;
  --eco-project-online: #FFCC19;
  --eco-cat-black: var(--eco-text-primary);
  --eco-cat-green: #39AB37;
  --eco-cat-blue: var(--eco-color-green-400);
  --eco-cat-teal: var(--eco-color-neutral-300);
  --eco-cat-red: var(--eco-color-lime);
  --eco-board-1: var(--eco-color-malachite-button);
  --eco-board-2: var(--eco-color-neutral-100);
  --eco-board-3: var(--eco-color-neutral-400);
  --eco-board-4: var(--eco-color-green-300);
  --eco-board-5: var(--eco-color-green-800);
  --eco-board-6: var(--eco-color-lime);
  --eco-board-ink-1: var(--eco-color-white);
  --eco-board-ink-2: var(--eco-color-black);
  --eco-board-ink-3: var(--eco-color-black);
  --eco-board-ink-4: var(--eco-color-black);
  --eco-board-ink-5: var(--eco-color-white);
  --eco-board-ink-6: var(--eco-color-black);
  --eco-aurora-1: #7B07FF;
  --eco-aurora-2: #308AFF;
  --eco-aurora-2-deep: #0617FF;
  --eco-aurora-3: #FFCD07;
  --eco-aurora-4: #FF07EE;
  --eco-aurora-ring: #FF282B;
  --eco-aurora-line: #293054;
  --eco-rainbow-1: #FF4242;
  --eco-rainbow-2: #FF8A3D;
  --eco-rainbow-3: #FFCC19;
  --eco-rainbow-4: #00B533;
  --eco-rainbow-5: #A0FF42;
  --eco-rainbow-c2: #A142FE;
  --eco-rainbow-c3: #40A1FF;
  --eco-rainbow-c4: #43D0FF;
  --eco-glass-fill: color-mix(in srgb, var(--eco-color-black) 20%, transparent);
  --eco-glass-fill-hover: color-mix(in srgb, var(--eco-color-black) 32%, transparent);
  --eco-glass-backdrop: blur(3px) brightness(1.25);
  --eco-glass-rim: linear-gradient(135deg, color-mix(in srgb, var(--eco-color-white) 60%, transparent), color-mix(in srgb, var(--eco-color-white) 10%, transparent) 30%, transparent 50%, color-mix(in srgb, var(--eco-color-white) 8%, transparent) 72%, color-mix(in srgb, var(--eco-color-white) 32%, transparent));
  --eco-glass-ink: var(--eco-color-white);
  --eco-glass-solid: var(--eco-color-black);
  --eco-illo-ground: var(--eco-color-neutral-900);
  --eco-illo-base: var(--eco-color-neutral-800);
  --eco-illo-shade: var(--eco-color-neutral-600);
  --eco-illo-ink: var(--eco-color-neutral-100);
  --eco-illo-accent: var(--eco-brand-accent);
  --eco-illo-on-accent: var(--eco-color-white);
  --eco-illo-on-ink: var(--eco-color-neutral-900);
  --eco-illo-spark: var(--eco-brand-button);
  --eco-illo-alert: var(--eco-color-error-400);
  --eco-illo-base-on-grey: var(--eco-color-neutral-700);
  --eco-illo-shade-on-grey: var(--eco-color-neutral-500);
  --eco-illo-ground-on-grey: var(--eco-color-black);
  --eco-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
  --eco-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4), 0 1px 2px -1px rgba(0, 0, 0, 0.4);
  --eco-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.24);
  --eco-shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, 0.32), 0 4px 6px -2px rgba(0, 0, 0, 0.12), 0 2px 2px -1px rgba(0, 0, 0, 0.16);
  --eco-shadow-xl: 0 20px 24px -4px rgba(0, 0, 0, 0.32), 0 8px 8px -4px rgba(0, 0, 0, 0.12), 0 3px 3px -1.5px rgba(0, 0, 0, 0.16);
  --eco-shadow-2xl: 0 24px 48px -12px rgba(0, 0, 0, 0.72), 0 4px 4px -2px rgba(0, 0, 0, 0.16);
  --eco-shadow-3xl: 0 32px 64px -12px rgba(0, 0, 0, 0.56), 0 5px 5px -2.5px rgba(0, 0, 0, 0.16);
  --eco-shadow-xs-skeuomorphic: inset 0 0 0 1px rgba(0, 0, 0, 0.72), inset 0 -2px 0 0 rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.2);
  --eco-chart-2: var(--eco-color-neutral-300);
  --eco-chart-3: #397A37;
  --eco-chart-4: var(--eco-color-neutral-400);
  --eco-chart-5: var(--eco-color-neutral-600);
  --eco-chart-6: #63A560;
}
:root:not([data-theme="light"]) :is(.hub-acts, #ds-auth-dlg) {
  --eco-text-primary: var(--eco-color-neutral-50);
  --eco-text-secondary: var(--eco-color-neutral-200);
  --eco-text-secondary_hover: var(--eco-color-neutral-100);
  --eco-text-secondary_active: var(--eco-color-neutral-50);
  --eco-text-tertiary: var(--eco-color-neutral-400);
  --eco-text-tertiary_hover: var(--eco-color-neutral-300);
  --eco-text-tertiary_active: var(--eco-color-neutral-200);
  --eco-text-quaternary: var(--eco-color-neutral-400);
  --eco-text-placeholder: var(--eco-color-neutral-400);
  --eco-text-disabled: var(--eco-color-neutral-600);
  --eco-text-white: var(--eco-color-white);
  --eco-text-primary_on-brand: var(--eco-color-black);
  --eco-text-brand-primary: var(--eco-color-lime);
  --eco-text-brand-secondary: var(--eco-color-lime);
  --eco-text-brand-secondary_hover: var(--eco-color-lime-200);
  --eco-text-brand-secondary_active: var(--eco-color-lime-100);
  --eco-text-brand-tertiary: var(--eco-color-malachite);
  --eco-text-error-primary: var(--eco-color-error-400);
  --eco-text-error-primary_hover: var(--eco-color-error-300);
  --eco-text-error-primary_active: var(--eco-color-error-200);
  --eco-text-warning-primary: #FFCC19;
  --eco-text-success-primary: var(--eco-color-green-300);
  --eco-border-primary: var(--eco-color-neutral-500);
  --eco-border-secondary: rgba(245, 245, 245, .26);
  --eco-border-tertiary: rgba(245, 245, 245, .14);
  --eco-border-disabled: var(--eco-color-neutral-700);
  --eco-border-brand: var(--eco-color-lime);
  --eco-border-error: var(--eco-color-error-400);
  --eco-border-error_subtle: var(--eco-color-error-500);
  --eco-fg-primary: var(--eco-color-neutral-50);
  --eco-fg-secondary: var(--eco-color-neutral-200);
  --eco-fg-tertiary: var(--eco-color-neutral-400);
  --eco-fg-quaternary: var(--eco-color-neutral-500);
  --eco-fg-quaternary_hover: var(--eco-color-neutral-400);
  --eco-fg-quaternary_active: var(--eco-color-neutral-300);
  --eco-fg-white: var(--eco-color-white);
  --eco-fg-disabled: var(--eco-color-neutral-600);
  --eco-fg-brand-primary: var(--eco-color-lime);
  --eco-fg-brand-primary_alt: var(--eco-color-lime);
  --eco-fg-brand-secondary: var(--eco-color-malachite);
  --eco-fg-error-primary: var(--eco-color-error-400);
  --eco-fg-error-secondary: var(--eco-color-error-500);
  --eco-fg-warning-primary: #FFCC19;
  --eco-fg-info-primary: #5B92FF;
  --eco-fg-success-primary: var(--eco-color-malachite);
  --eco-fg-success-secondary: var(--eco-color-green-400);
  --eco-bg-primary: var(--eco-color-black);
  --eco-bg-primary_alt: var(--eco-color-neutral-800);
  --eco-bg-primary_hover: var(--eco-color-neutral-900);
  --eco-bg-primary_active: var(--eco-color-neutral-800);
  --eco-bg-primary-solid: var(--eco-color-neutral-700);
  --eco-bg-secondary: var(--eco-color-neutral-900);
  --eco-bg-secondary_hover: var(--eco-color-neutral-800);
  --eco-bg-secondary_active: var(--eco-color-neutral-700);
  --eco-bg-tertiary: var(--eco-color-neutral-800);
  --eco-bg-quaternary: var(--eco-color-neutral-700);
  --eco-bg-active: var(--eco-color-neutral-800);
  --eco-bg-disabled: var(--eco-color-neutral-800);
  --eco-bg-overlay: rgba(0, 0, 0, .64);
  --eco-bg-brand-primary: rgba(189, 255, 0, .10);
  --eco-bg-brand-secondary: rgba(189, 255, 0, .18);
  --eco-bg-brand-solid: var(--eco-color-lime);
  --eco-bg-brand-solid_hover: var(--eco-color-lime-200);
  --eco-bg-brand-solid_active: var(--eco-color-lime-100);
  --eco-bg-error-primary: rgba(240, 72, 75, .16);
  --eco-bg-error-secondary: rgba(240, 72, 75, .26);
  --eco-bg-error-solid: var(--eco-color-error-600);
  --eco-bg-error-solid_hover: var(--eco-color-error-700);
  --eco-bg-error-solid_active: var(--eco-color-error-800);
  --eco-bg-warning-primary: rgba(255, 176, 32, .16);
  --eco-bg-warning-solid: var(--eco-color-warning-400);
  --eco-bg-success-primary: rgba(0, 197, 8, .16);
  --eco-bg-success-solid: var(--eco-color-malachite-button);
  --eco-focus-ring: var(--eco-color-lime);
  --eco-focus-ring-error: var(--eco-color-error-400);
  --eco-chart-1: #89DD76;
  --eco-chart-seq-1: var(--eco-color-green-900);
  --eco-chart-seq-2: #397A37;
  --eco-chart-seq-3: #63A560;
  --eco-chart-seq-4: #97CF94;
  --eco-chart-seq-5: var(--eco-color-green-100);
  --eco-chart-div-1: var(--eco-color-error-600);
  --eco-chart-div-2: var(--eco-color-error-800);
  --eco-chart-div-3: var(--eco-color-neutral-800);
  --eco-chart-div-4: #397A37;
  --eco-chart-div-5: #63A560;
  --eco-erp-chart-accent: var(--eco-color-lime);
  --eco-erp-chart-green: var(--eco-color-malachite);
  --eco-project-academy: var(--eco-color-malachite);
  --eco-project-school: #4972FE;
  --eco-project-junior: #00E0EF;
  --eco-project-university: #26A49D;
  --eco-project-online: #FFCC19;
  --eco-cat-black: var(--eco-text-primary);
  --eco-cat-green: #39AB37;
  --eco-cat-blue: var(--eco-color-green-400);
  --eco-cat-teal: var(--eco-color-neutral-300);
  --eco-cat-red: var(--eco-color-lime);
  --eco-board-1: var(--eco-color-malachite-button);
  --eco-board-2: var(--eco-color-neutral-100);
  --eco-board-3: var(--eco-color-neutral-400);
  --eco-board-4: var(--eco-color-green-300);
  --eco-board-5: var(--eco-color-green-800);
  --eco-board-6: var(--eco-color-lime);
  --eco-board-ink-1: var(--eco-color-white);
  --eco-board-ink-2: var(--eco-color-black);
  --eco-board-ink-3: var(--eco-color-black);
  --eco-board-ink-4: var(--eco-color-black);
  --eco-board-ink-5: var(--eco-color-white);
  --eco-board-ink-6: var(--eco-color-black);
  --eco-aurora-1: #7B07FF;
  --eco-aurora-2: #308AFF;
  --eco-aurora-2-deep: #0617FF;
  --eco-aurora-3: #FFCD07;
  --eco-aurora-4: #FF07EE;
  --eco-aurora-ring: #FF282B;
  --eco-aurora-line: #293054;
  --eco-rainbow-1: #FF4242;
  --eco-rainbow-2: #FF8A3D;
  --eco-rainbow-3: #FFCC19;
  --eco-rainbow-4: #00B533;
  --eco-rainbow-5: #A0FF42;
  --eco-rainbow-c2: #A142FE;
  --eco-rainbow-c3: #40A1FF;
  --eco-rainbow-c4: #43D0FF;
  --eco-glass-fill: color-mix(in srgb, var(--eco-color-black) 20%, transparent);
  --eco-glass-fill-hover: color-mix(in srgb, var(--eco-color-black) 32%, transparent);
  --eco-glass-backdrop: blur(3px) brightness(1.25);
  --eco-glass-rim: linear-gradient(135deg, color-mix(in srgb, var(--eco-color-white) 60%, transparent), color-mix(in srgb, var(--eco-color-white) 10%, transparent) 30%, transparent 50%, color-mix(in srgb, var(--eco-color-white) 8%, transparent) 72%, color-mix(in srgb, var(--eco-color-white) 32%, transparent));
  --eco-glass-ink: var(--eco-color-white);
  --eco-glass-solid: var(--eco-color-black);
  --eco-illo-ground: var(--eco-color-neutral-900);
  --eco-illo-base: var(--eco-color-neutral-800);
  --eco-illo-shade: var(--eco-color-neutral-600);
  --eco-illo-ink: var(--eco-color-neutral-100);
  --eco-illo-accent: var(--eco-brand-accent);
  --eco-illo-on-accent: var(--eco-color-white);
  --eco-illo-on-ink: var(--eco-color-neutral-900);
  --eco-illo-spark: var(--eco-brand-button);
  --eco-illo-alert: var(--eco-color-error-400);
  --eco-illo-base-on-grey: var(--eco-color-neutral-700);
  --eco-illo-shade-on-grey: var(--eco-color-neutral-500);
  --eco-illo-ground-on-grey: var(--eco-color-black);
  --eco-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
  --eco-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4), 0 1px 2px -1px rgba(0, 0, 0, 0.4);
  --eco-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.24);
  --eco-shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, 0.32), 0 4px 6px -2px rgba(0, 0, 0, 0.12), 0 2px 2px -1px rgba(0, 0, 0, 0.16);
  --eco-shadow-xl: 0 20px 24px -4px rgba(0, 0, 0, 0.32), 0 8px 8px -4px rgba(0, 0, 0, 0.12), 0 3px 3px -1.5px rgba(0, 0, 0, 0.16);
  --eco-shadow-2xl: 0 24px 48px -12px rgba(0, 0, 0, 0.72), 0 4px 4px -2px rgba(0, 0, 0, 0.16);
  --eco-shadow-3xl: 0 32px 64px -12px rgba(0, 0, 0, 0.56), 0 5px 5px -2.5px rgba(0, 0, 0, 0.16);
  --eco-shadow-xs-skeuomorphic: inset 0 0 0 1px rgba(0, 0, 0, 0.72), inset 0 -2px 0 0 rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.2);
  --eco-chart-2: var(--eco-color-neutral-300);
  --eco-chart-3: #397A37;
  --eco-chart-4: var(--eco-color-neutral-400);
  --eco-chart-5: var(--eco-color-neutral-600);
  --eco-chart-6: #63A560;
}
:root[data-theme="light"] :is(.hub-acts, #ds-auth-dlg) {
  --eco-text-primary: var(--eco-color-black);
  --eco-text-secondary: var(--eco-color-neutral-700);
  --eco-text-secondary_hover: var(--eco-color-neutral-800);
  --eco-text-secondary_active: var(--eco-color-neutral-900);
  --eco-text-tertiary: var(--eco-color-neutral-600);
  --eco-text-tertiary_hover: var(--eco-color-neutral-700);
  --eco-text-tertiary_active: var(--eco-color-neutral-800);
  --eco-text-quaternary: var(--eco-color-neutral-500);
  --eco-text-placeholder: var(--eco-color-neutral-500);
  --eco-text-disabled: var(--eco-color-neutral-500);
  --eco-text-white: var(--eco-color-white);
  --eco-text-primary_on-brand: var(--eco-color-white);
  --eco-text-brand-primary: var(--eco-color-green-done);
  --eco-text-brand-secondary: var(--eco-color-green-done);
  --eco-text-brand-secondary_hover: var(--eco-color-green-900);
  --eco-text-brand-secondary_active: var(--eco-color-green-950);
  --eco-text-brand-tertiary: var(--eco-color-green-done);
  --eco-text-error-primary: var(--eco-color-error-600);
  --eco-text-error-primary_hover: var(--eco-color-error-700);
  --eco-text-error-primary_active: var(--eco-color-error-800);
  --eco-text-warning-primary: #D39F31;
  --eco-text-success-primary: var(--eco-color-green-800);
  --eco-border-primary: var(--eco-color-neutral-500);
  --eco-border-secondary: rgba(20, 20, 20, .26);
  --eco-border-tertiary: rgba(20, 20, 20, .14);
  --eco-border-disabled: var(--eco-color-neutral-300);
  --eco-border-brand: var(--eco-color-green-done);
  --eco-border-error: var(--eco-color-error-600);
  --eco-border-error_subtle: var(--eco-color-error-500);
  --eco-fg-primary: var(--eco-color-black);
  --eco-fg-secondary: var(--eco-color-neutral-700);
  --eco-fg-tertiary: var(--eco-color-neutral-600);
  --eco-fg-quaternary: var(--eco-color-neutral-500);
  --eco-fg-quaternary_hover: var(--eco-color-neutral-600);
  --eco-fg-quaternary_active: var(--eco-color-neutral-700);
  --eco-fg-white: var(--eco-color-white);
  --eco-fg-disabled: var(--eco-color-neutral-400);
  --eco-fg-brand-primary: var(--eco-color-green-done);
  --eco-fg-brand-primary_alt: var(--eco-color-malachite);
  --eco-fg-brand-secondary: var(--eco-color-malachite);
  --eco-fg-error-primary: var(--eco-color-error-600);
  --eco-fg-error-secondary: var(--eco-color-error-500);
  --eco-fg-warning-primary: #D39F31;
  --eco-fg-info-primary: #0055FF;
  --eco-fg-success-primary: var(--eco-color-green-done);
  --eco-fg-success-secondary: var(--eco-color-malachite);
  --eco-bg-primary: var(--eco-color-white);
  --eco-bg-primary_alt: var(--eco-color-white);
  --eco-bg-primary_hover: var(--eco-color-surface-active);
  --eco-bg-primary_active: var(--eco-color-surface);
  --eco-bg-primary-solid: var(--eco-color-black);
  --eco-bg-secondary: var(--eco-color-surface);
  --eco-bg-secondary_hover: var(--eco-color-surface-hover);
  --eco-bg-secondary_active: var(--eco-color-surface-strong);
  --eco-bg-tertiary: var(--eco-color-surface-tertiary);
  --eco-bg-quaternary: var(--eco-color-neutral-300);
  --eco-bg-active: var(--eco-color-surface-active);
  --eco-bg-disabled: var(--eco-color-surface);
  --eco-bg-overlay: rgba(20, 20, 20, .48);
  --eco-bg-brand-primary: var(--eco-color-brand-tint);
  --eco-bg-brand-secondary: var(--eco-color-green-100);
  --eco-bg-brand-solid: var(--eco-color-malachite-button);
  --eco-bg-brand-solid_hover: var(--eco-color-green-600);
  --eco-bg-brand-solid_active: var(--eco-color-green-800);
  --eco-bg-error-primary: var(--eco-color-error-50);
  --eco-bg-error-secondary: var(--eco-color-error-100);
  --eco-bg-error-solid: var(--eco-color-error-600);
  --eco-bg-error-solid_hover: var(--eco-color-error-700);
  --eco-bg-error-solid_active: var(--eco-color-error-800);
  --eco-bg-warning-primary: var(--eco-color-warning-50);
  --eco-bg-warning-solid: var(--eco-color-warning-400);
  --eco-bg-success-primary: var(--eco-color-green-50);
  --eco-bg-success-solid: var(--eco-color-malachite-button);
  --eco-focus-ring: var(--eco-color-green-done);
  --eco-focus-ring-error: var(--eco-color-error-600);
  --eco-chart-1: var(--eco-color-malachite-button);
  --eco-chart-seq-1: var(--eco-color-green-100);
  --eco-chart-seq-2: #97CF94;
  --eco-chart-seq-3: #63A560;
  --eco-chart-seq-4: #397A37;
  --eco-chart-seq-5: var(--eco-color-green-900);
  --eco-chart-div-1: var(--eco-color-error-600);
  --eco-chart-div-2: var(--eco-color-error-300);
  --eco-chart-div-3: var(--eco-color-neutral-200);
  --eco-chart-div-4: #97CF94;
  --eco-chart-div-5: #397A37;
  --eco-erp-chart-accent: var(--eco-color-lime-light);
  --eco-erp-chart-green: var(--eco-color-malachite-button);
  --eco-project-academy: var(--eco-color-green-600);
  --eco-project-school: #2B4DFF;
  --eco-project-junior: #00E0EF;
  --eco-project-university: #26A49D;
  --eco-project-online: #FFCC19;
  --eco-cat-black: var(--eco-text-primary);
  --eco-cat-green: #00A603;
  --eco-cat-blue: var(--eco-color-green-950);
  --eco-cat-teal: var(--eco-color-neutral-500);
  --eco-cat-red: var(--eco-color-lime-800);
  --eco-board-1: var(--eco-color-malachite-button);
  --eco-board-2: var(--eco-color-neutral-900);
  --eco-board-3: var(--eco-color-neutral-400);
  --eco-board-4: var(--eco-color-green-300);
  --eco-board-5: var(--eco-color-green-800);
  --eco-board-6: var(--eco-color-lime);
  --eco-board-ink-1: var(--eco-color-white);
  --eco-board-ink-2: var(--eco-color-white);
  --eco-board-ink-3: var(--eco-color-black);
  --eco-board-ink-4: var(--eco-color-black);
  --eco-board-ink-5: var(--eco-color-white);
  --eco-board-ink-6: var(--eco-color-black);
  --eco-aurora-1: #7B07FF;
  --eco-aurora-2: #308AFF;
  --eco-aurora-2-deep: #0617FF;
  --eco-aurora-3: #FFCD07;
  --eco-aurora-4: #FF07EE;
  --eco-aurora-ring: #FF282B;
  --eco-aurora-line: #293054;
  --eco-rainbow-1: #FF4242;
  --eco-rainbow-2: #FF8A3D;
  --eco-rainbow-3: #FFCC19;
  --eco-rainbow-4: #00B533;
  --eco-rainbow-5: #A0FF42;
  --eco-rainbow-c2: #A142FE;
  --eco-rainbow-c3: #40A1FF;
  --eco-rainbow-c4: #43D0FF;
  --eco-glass-fill: color-mix(in srgb, var(--eco-color-white) 40%, transparent);
  --eco-glass-fill-hover: color-mix(in srgb, var(--eco-color-white) 58%, transparent);
  --eco-glass-backdrop: blur(3px) brightness(1.06);
  --eco-glass-rim: linear-gradient(135deg, var(--eco-color-white), color-mix(in srgb, var(--eco-color-white) 50%, transparent) 30%, transparent 50%, color-mix(in srgb, var(--eco-color-black) 5%, transparent) 72%, color-mix(in srgb, var(--eco-color-white) 80%, transparent));
  --eco-glass-ink: var(--eco-color-black);
  --eco-glass-solid: color-mix(in srgb, var(--eco-color-white) 86%, transparent);
  --eco-illo-ground: var(--eco-color-neutral-100);
  --eco-illo-base: var(--eco-color-surface-tertiary);
  --eco-illo-shade: var(--eco-color-neutral-300);
  --eco-illo-ink: var(--eco-color-neutral-900);
  --eco-illo-accent: var(--eco-brand-button);
  --eco-illo-on-accent: var(--eco-color-white);
  --eco-illo-on-ink: var(--eco-color-white);
  --eco-illo-spark: var(--eco-brand-button);
  --eco-illo-alert: var(--eco-color-error-600);
  --eco-illo-base-on-grey: var(--eco-color-white);
  --eco-illo-shade-on-grey: var(--eco-color-neutral-300);
  --eco-illo-ground-on-grey: var(--eco-color-surface-tertiary);
  --eco-shadow-xs: 0 1px 2px rgba(20, 20, 20, 0.05);
  --eco-shadow-sm: 0 1px 3px rgba(20, 20, 20, 0.1), 0 1px 2px -1px rgba(20, 20, 20, 0.1);
  --eco-shadow-md: 0 4px 6px -1px rgba(20, 20, 20, 0.1), 0 2px 4px -2px rgba(20, 20, 20, 0.06);
  --eco-shadow-lg: 0 12px 16px -4px rgba(20, 20, 20, 0.08), 0 4px 6px -2px rgba(20, 20, 20, 0.03), 0 2px 2px -1px rgba(20, 20, 20, 0.04);
  --eco-shadow-xl: 0 20px 24px -4px rgba(20, 20, 20, 0.08), 0 8px 8px -4px rgba(20, 20, 20, 0.03), 0 3px 3px -1.5px rgba(20, 20, 20, 0.04);
  --eco-shadow-2xl: 0 24px 48px -12px rgba(20, 20, 20, 0.18), 0 4px 4px -2px rgba(20, 20, 20, 0.04);
  --eco-shadow-3xl: 0 32px 64px -12px rgba(20, 20, 20, 0.14), 0 5px 5px -2.5px rgba(20, 20, 20, 0.04);
  --eco-shadow-xs-skeuomorphic: inset 0 0 0 1px rgba(20, 20, 20, 0.18), inset 0 -2px 0 0 rgba(20, 20, 20, 0.05), 0 1px 2px rgba(20, 20, 20, 0.05);
  --eco-chart-2: var(--eco-color-neutral-700);
  --eco-chart-3: #97CF94;
  --eco-chart-4: var(--eco-color-neutral-500);
  --eco-chart-5: var(--eco-color-neutral-300);
  --eco-chart-6: #397A37;
}
.eco-glass--dark {
  --eco-glass-fill: color-mix(in srgb, var(--eco-color-black) 20%, transparent);
  --eco-glass-fill-hover: color-mix(in srgb, var(--eco-color-black) 32%, transparent);
  --eco-glass-backdrop: blur(3px) brightness(1.25);
  --eco-glass-rim: linear-gradient(135deg, color-mix(in srgb, var(--eco-color-white) 60%, transparent), color-mix(in srgb, var(--eco-color-white) 10%, transparent) 30%, transparent 50%, color-mix(in srgb, var(--eco-color-white) 8%, transparent) 72%, color-mix(in srgb, var(--eco-color-white) 32%, transparent));
  --eco-glass-ink: var(--eco-color-white);
  --eco-glass-solid: var(--eco-color-black);
}
.eco-glass--light {
  --eco-glass-fill: color-mix(in srgb, var(--eco-color-white) 40%, transparent);
  --eco-glass-fill-hover: color-mix(in srgb, var(--eco-color-white) 58%, transparent);
  --eco-glass-backdrop: blur(3px) brightness(1.06);
  --eco-glass-rim: linear-gradient(135deg, var(--eco-color-white), color-mix(in srgb, var(--eco-color-white) 50%, transparent) 30%, transparent 50%, color-mix(in srgb, var(--eco-color-black) 5%, transparent) 72%, color-mix(in srgb, var(--eco-color-white) 80%, transparent));
  --eco-glass-ink: var(--eco-color-black);
  --eco-glass-solid: color-mix(in srgb, var(--eco-color-white) 86%, transparent);
}
.hub-acts, #ds-auth-dlg {
  --eco-brand-primary: var(--eco-color-lime);
  --eco-brand-on-primary: var(--eco-color-black);
  --eco-brand-accent: var(--eco-color-malachite-button);
  --eco-brand-on-accent: var(--eco-color-white);
  --eco-brand-button: var(--eco-color-lime);
  --eco-brand-on-button: var(--eco-color-black);
  --eco-brand-button-accent: var(--eco-color-malachite-button);
  --eco-brand-on-button-accent: var(--eco-color-white);
  --eco-brand-button-ink: var(--eco-color-neutral-50);
  --eco-brand-on-button-ink: var(--eco-color-black);
  --eco-brand-button-secondary-fg: var(--eco-color-green-400);
  --eco-brand-button-secondary-fg_hover: var(--eco-color-green-300);
  --eco-badge-solid-bg: var(--eco-bg-brand-solid);
  --eco-badge-solid-fg: var(--eco-text-primary_on-brand);
  --eco-btn-accent-hover-to: var(--eco-color-black);
  --eco-tab-label: rgba(255, 255, 255, .7);
  --eco-tab-label-strong: var(--eco-color-white);
  --eco-tab-pill-bg: var(--eco-color-white);
  --eco-tab-pill-fg: #000000;
  --eco-tab-pill-shadow: 0 2px 8px rgba(0, 0, 0, .06);
  --eco-tab-inverse-bg: #000000;
  --eco-tab-inverse-fg: var(--eco-color-white);
  --eco-tab-brand-bg: var(--eco-color-malachite-button);
  --eco-tab-brand-fg: var(--eco-color-white);
  --eco-tab-accent-bg: var(--eco-color-lime);
  --eco-tab-accent-fg: #000000;
  --eco-slider-fill: var(--eco-color-malachite-button);
  --eco-slider-mark: var(--eco-color-white);
  --eco-rail-bg: var(--eco-color-black);
  --eco-rail-ink: var(--eco-color-white);
  --eco-rail-sel-ink: var(--eco-bg-brand-solid);
  --eco-avatar-ink: var(--eco-color-lime);
  --eco-avatar-tint-bg: color-mix(in srgb, var(--eco-color-malachite) 15%, var(--eco-bg-primary));
  --eco-avatar-tint-ink: var(--eco-color-lime);
  --eco-avatar-ink-black: var(--eco-text-primary);
  --eco-avatar-ink-green: #39AB37;
  --eco-avatar-ink-blue: #5B92FF;
  --eco-avatar-ink-teal: #61C5BD;
  --eco-avatar-ink-red: #FF604F;
  --eco-avatar-accent-bg: color-mix(in srgb, var(--eco-color-lime) 50%, var(--eco-color-white));
  --eco-avatar-accent-ink: var(--eco-color-malachite-button);
  --eco-avatar-inverse-bg: #1F1F1F;
  --eco-avatar-inverse-ink: var(--eco-color-lime);
  --eco-avatar-solid-bg: var(--eco-color-malachite);
  --eco-avatar-solid-ink: #1D63AE;
  --eco-avatar-hue-1-bg: #DDD5FB;
  --eco-avatar-hue-1-ink: #2C0DA0;
  --eco-avatar-hue-2-bg: #CDEDFC;
  --eco-avatar-hue-2-ink: #0A5A7F;
  --eco-avatar-hue-3-bg: #C4F1CD;
  --eco-avatar-hue-3-ink: #09711E;
  --eco-avatar-hue-4-bg: #FEEBB0;
  --eco-avatar-hue-4-ink: #715809;
  --eco-avatar-hue-5-bg: #FEDCAC;
  --eco-avatar-hue-5-ink: #714609;
  --eco-avatar-hue-6-bg: #FEC1BB;
  --eco-avatar-hue-6-ink: #8E170B;
  --eco-avatar-hue-7-bg: #FDCCD6;
  --eco-avatar-hue-7-ink: #A00D2B;
}
:root[data-theme="light"] :is(.hub-acts, #ds-auth-dlg) {
  --eco-brand-primary: var(--eco-color-malachite-button);
  --eco-brand-on-primary: var(--eco-color-white);
  --eco-brand-accent: var(--eco-color-lime-light);
  --eco-brand-on-accent: var(--eco-color-black);
  --eco-brand-button: var(--eco-color-malachite-button);
  --eco-brand-on-button: var(--eco-color-white);
  --eco-brand-button-accent: var(--eco-color-lime-light);
  --eco-brand-on-button-accent: var(--eco-color-black);
  --eco-brand-button-ink: var(--eco-color-black);
  --eco-brand-on-button-ink: var(--eco-color-white);
  --eco-brand-button-secondary-fg: var(--eco-color-green-800);
  --eco-brand-button-secondary-fg_hover: var(--eco-color-green-900);
  --eco-badge-solid-bg: var(--eco-bg-brand-solid);
  --eco-badge-solid-fg: var(--eco-text-primary_on-brand);
  --eco-btn-hover-to: var(--eco-color-black);
  --eco-tab-label: rgba(0, 0, 0, .7);
  --eco-tab-label-strong: #000000;
  --eco-tab-pill-bg: var(--eco-color-white);
  --eco-tab-pill-fg: #000000;
  --eco-tab-pill-shadow: 0 2px 8px rgba(0, 0, 0, .06);
  --eco-tab-inverse-bg: #000000;
  --eco-tab-inverse-fg: var(--eco-color-white);
  --eco-tab-brand-bg: var(--eco-color-malachite-button);
  --eco-tab-brand-fg: var(--eco-color-white);
  --eco-tab-accent-bg: var(--eco-color-lime);
  --eco-tab-accent-fg: #000000;
  --eco-slider-fill: var(--eco-color-malachite-button);
  --eco-slider-mark: var(--eco-color-white);
  --eco-rail-bg: var(--eco-color-black);
  --eco-rail-ink: var(--eco-color-white);
  --eco-rail-sel-ink: var(--eco-bg-brand-solid);
  --eco-avatar-ink: var(--eco-color-malachite-button);
  --eco-avatar-tint-bg: color-mix(in srgb, var(--eco-color-malachite) 15%, var(--eco-bg-primary));
  --eco-avatar-tint-ink: var(--eco-color-malachite-button);
  --eco-avatar-ink-black: var(--eco-text-primary);
  --eco-avatar-ink-green: #00A603;
  --eco-avatar-ink-blue: #0055FF;
  --eco-avatar-ink-teal: #26A49D;
  --eco-avatar-ink-red: #C80000;
  --eco-avatar-accent-bg: color-mix(in srgb, var(--eco-color-lime) 50%, var(--eco-color-white));
  --eco-avatar-accent-ink: var(--eco-color-malachite-button);
  --eco-avatar-inverse-bg: #1F1F1F;
  --eco-avatar-inverse-ink: var(--eco-color-lime);
  --eco-avatar-solid-bg: var(--eco-color-malachite);
  --eco-avatar-solid-ink: #1D63AE;
  --eco-avatar-hue-1-bg: #DDD5FB;
  --eco-avatar-hue-1-ink: #2C0DA0;
  --eco-avatar-hue-2-bg: #CDEDFC;
  --eco-avatar-hue-2-ink: #0A5A7F;
  --eco-avatar-hue-3-bg: #C4F1CD;
  --eco-avatar-hue-3-ink: #09711E;
  --eco-avatar-hue-4-bg: #FEEBB0;
  --eco-avatar-hue-4-ink: #715809;
  --eco-avatar-hue-5-bg: #FEDCAC;
  --eco-avatar-hue-5-ink: #714609;
  --eco-avatar-hue-6-bg: #FEC1BB;
  --eco-avatar-hue-6-ink: #8E170B;
  --eco-avatar-hue-7-bg: #FDCCD6;
  --eco-avatar-hue-7-ink: #A00D2B;
}
.hub-acts, #ds-auth-dlg {
  --eco-print-page-width: 210mm;
  --eco-print-page-height: 297mm;
  --eco-print-margin-top: 30mm;
  --eco-print-margin-bottom: 17mm;
  --eco-print-margin-x: 17mm;
  --eco-print-header-top: 5.3mm;
  --eco-print-footer-bottom: 5mm;
  --eco-print-body-size: 10pt;
  --eco-print-body-leading: 1.5;
  --eco-print-body-weight: 400;
  --eco-print-strong-weight: 700;
  --eco-print-section-weight: 700;
  --eco-print-caps-weight: 700;
  --eco-print-first-col-weight: 600;
  --eco-print-card-size: 9.5pt;
  --eco-print-card-leading: 1.42;
  --eco-print-table-size: 9pt;
  --eco-print-table-leading: 1.42;
  --eco-print-meta-size: 9pt;
  --eco-print-meta-weight: 500;
  --eco-print-label-size: 7.5pt;
  --eco-print-th-size: 7pt;
  --eco-print-caps-tracking: .12em;
  --eco-print-head-size: 7pt;
  --eco-print-head-mark: 12px;
  --eco-print-notice-size: 6.5pt;
  --eco-print-title-sop: 25pt;
  --eco-print-title-sop-tracking: -.035em;
  --eco-print-title-card: 22pt;
  --eco-print-section-title: 15pt;
  --eco-print-section-tracking: -.03em;
  --eco-print-num-size: 12pt;
  --eco-print-num-tile: 9mm;
  --eco-print-num-radius: 2.2mm;
  --eco-print-rule-height: 4px;
  --eco-print-th-rule: 1.5px;
  --eco-print-row-height: 18pt;
  --eco-print-panel-title: 13pt;
  --eco-print-step-title: 11pt;
  --eco-print-icon-tile: 7.4mm;
  --eco-print-icon: 4.4mm;
  --eco-print-step-rise: 10mm;
  --eco-print-step-base: 52mm;
  --eco-print-sign-row: 13mm;
  --eco-print-font: "Inter", "DejaVu Sans", sans-serif;
  --eco-print-title-weight: 700;
  --eco-print-rule-fill: var(--eco-color-malachite-button);
}
:where([class^="eco-"], [class*=" eco-"]),
:where([class^="eco-"], [class*=" eco-"])::before,
:where([class^="eco-"], [class*=" eco-"])::after { box-sizing: border-box; }
:where([class^="eco-"], [class*=" eco-"]) { margin: 0; }
:where([class^="eco-"], [class*=" eco-"]) :where(h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, figure, blockquote, fieldset, legend) { margin: 0; padding: 0; }
:where(button[class^="eco-"], button[class*=" eco-"], [class^="eco-"] button, [class*=" eco-"] button) { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
:where(img[class^="eco-"], img[class*=" eco-"], svg[class^="eco-"], svg[class*=" eco-"], [class^="eco-"] img, [class*=" eco-"] img, [class^="eco-"] svg, [class*=" eco-"] svg) { display: block; max-width: 100%; }
:where([class^="eco-"], [class*=" eco-"])[hidden] { display: none !important; }
:where(.eco-sr-only, .sr-only) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
:where(body) { margin: 0; font-family: var(--eco-font-body); font-size: 16px; line-height: 1.6; color: var(--eco-text-primary); background: var(--eco-bg-primary); -webkit-font-smoothing: antialiased; }
:where(code, kbd, samp) { font-family: var(--eco-font-mono); }
:root, [data-theme], .hub-acts, #ds-auth-dlg {
      --btn-p-bg: var(--eco-brand-button, var(--eco-bg-brand-solid)); --btn-p-fg: var(--eco-brand-on-button, var(--eco-text-primary_on-brand));
      --btn-a-bg: var(--eco-brand-button-accent, var(--eco-brand-accent)); --btn-a-fg: var(--eco-brand-on-button-accent, var(--eco-brand-on-accent));
      --btn-i-bg: var(--eco-brand-button-ink, var(--eco-text-primary)); --btn-i-fg: var(--eco-brand-on-button-ink, var(--eco-bg-primary));
      --btn-p-bg-hover: color-mix(in srgb, var(--btn-p-bg) 88%, var(--eco-btn-hover-to, var(--btn-p-fg)));
      --btn-a-bg-hover: color-mix(in srgb, var(--btn-a-bg) 88%, var(--eco-btn-accent-hover-to, var(--btn-a-fg)));
      --btn-i-bg-hover: color-mix(in srgb, var(--btn-i-bg) 88%, var(--btn-i-fg));
      --btn-s-fg: var(--eco-text-primary);
      --btn-s-fg-hover: var(--eco-text-primary);
      --btn-n-fg: var(--eco-text-primary);
    }
    :root, [data-theme="dark"], .hub-acts, #ds-auth-dlg {
      --btn-t-bg: var(--eco-color-neutral-900); --btn-t-fg: var(--eco-text-secondary);
      --btn-t-bg-hover: var(--eco-color-neutral-800); --btn-t-fg-hover: var(--eco-text-primary);
      --btn-t-bg-surface: var(--eco-color-neutral-800);
      --btn-t-bg-surface-hover: var(--eco-color-neutral-700);
      --btn-o-line: initial;
      --btn-t-bg-file: var(--eco-color-neutral-800); --btn-t-bg-file-hover: var(--eco-color-neutral-700);
      --b-tint-bg-surface: initial;
    }
    [data-theme="light"], :root[data-theme="light"] :is(.hub-acts, #ds-auth-dlg) {
      --btn-t-bg: var(--eco-color-surface); --btn-t-fg: var(--eco-color-neutral-700);
      --btn-t-bg-hover: var(--eco-color-surface-hover); --btn-t-fg-hover: var(--eco-color-neutral-700);
      --btn-t-bg-surface: var(--eco-bg-primary);
      --btn-t-bg-surface-hover: var(--eco-color-surface-hover);
      --btn-o-line: var(--eco-border-tertiary);
      --btn-t-bg-file: var(--eco-bg-primary); --btn-t-bg-file-hover: var(--eco-color-surface-hover);
      --b-tint-bg-surface: var(--eco-bg-primary);
    }
    .eco-card:not(.eco-card--raised, .eco-card--app) { --btn-t-bg: var(--btn-t-bg-surface); --btn-t-bg-hover: var(--btn-t-bg-surface-hover); }
    :where(.eco-card:not(.eco-card--raised, .eco-card--app), .demo--surface) > * { --eco-focus-gap: var(--eco-bg-secondary); }
    :where(.eco-card--raised) > * { --eco-focus-gap: var(--eco-bg-primary); }
    .eco-btn { --spin: currentColor; --ring: transparent; --ico: currentColor; position: relative; display: inline-flex; align-items: center; justify-content: center; gap: var(--eco-btn-gap, var(--eco-spacing-md)); height: 40px; padding: 0 var(--eco-spacing-xl); border: 0; border-radius: var(--eco-shape-control, var(--eco-radius-4xl)); background: transparent; box-shadow: inset 0 0 0 1px var(--ring); font: 500 var(--eco-text-md)/var(--eco-text-md--line-height) var(--eco-font-body); letter-spacing: 0; white-space: nowrap; text-decoration: none; cursor: pointer; user-select: none; transition: background-color var(--eco-duration-fast) linear, color var(--eco-duration-fast) linear, box-shadow var(--eco-duration-fast) linear, transform var(--eco-duration-fast) var(--eco-ease-standard); }
    .eco-btn svg { width: 16px; height: 16px; flex: none; color: var(--ico); transition: color var(--eco-duration-fast) linear; }
    .eco-btn:focus-visible { outline: var(--eco-focus-w) solid transparent; outline-offset: 2px; box-shadow: inset 0 0 0 1px var(--ring), 0 0 0 2px var(--eco-focus-gap, var(--eco-bg-primary)), 0 0 0 calc(2px + var(--eco-focus-w)) var(--focus-c, var(--eco-focus-ring)); }
    .eco-btn:not([disabled]):not([aria-disabled="true"]):not(.eco-btn--link-color):not(.eco-btn--link-gray):not(.eco-btn--link-destructive):not(.eco-btn-group > .eco-btn):active { transform: scale(.975); }
    .eco-btn--xs { gap: var(--eco-spacing-xs); height: 32px; padding: 0 var(--eco-spacing-lg); border-radius: var(--eco-shape-control-xs, var(--eco-radius-2xl)); font-size: var(--eco-text-sm); line-height: var(--eco-text-sm--line-height); }
    .eco-btn--sm { height: 36px; font-size: var(--eco-text-sm); line-height: var(--eco-text-sm--line-height); }
    .eco-btn--lg { height: 44px; padding: 0 var(--eco-spacing-2xl); }
    .eco-btn--xl { height: 48px; padding: 0 var(--eco-spacing-3xl); }
    .eco-btn:is(.eco-btn--lg, .eco-btn--xl) svg { width: 20px; height: 20px; }
    .eco-btn--icon { width: 40px; padding: 0; }
    .eco-btn--icon.eco-btn--xs { width: 32px; }
    .eco-btn--icon.eco-btn--sm { width: 36px; }
    .eco-btn--icon.eco-btn--lg { width: 44px; }
    .eco-btn--icon.eco-btn--xl { width: 48px; }
    .eco-btn--block { width: 100%; }
    .eco-btn--primary { --ico: var(--btn-p-fg); background: var(--btn-p-bg); color: var(--btn-p-fg); }
    .eco-btn--accent { --ico: var(--btn-a-fg); background: var(--btn-a-bg); color: var(--btn-a-fg); }
    .eco-btn--ink { --ico: var(--btn-i-fg); background: var(--btn-i-bg); color: var(--btn-i-fg); }
    .eco-btn--primary:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--btn-p-bg-hover); }
    .eco-btn--accent:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--btn-a-bg-hover); }
    .eco-btn--ink:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--btn-i-bg-hover); }
    .eco-btn--secondary { --ico: var(--btn-s-fg); background: var(--btn-t-bg); color: var(--btn-s-fg); }
    .eco-btn--tertiary { --ico: var(--btn-n-fg); background: var(--btn-t-bg); color: var(--btn-n-fg); }
    .eco-btn--outline { --ring: var(--btn-o-line, var(--btn-t-bg));--ico: var(--btn-n-fg); color: var(--btn-n-fg); }
    .eco-btn--ghost { --ico: var(--btn-n-fg); color: var(--eco-btn-ghost-fg, var(--btn-n-fg)); }
    .eco-btn:is(.eco-btn--secondary, .eco-btn--tertiary):not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--btn-t-bg-hover); }
    .eco-btn--secondary:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { --ico: var(--btn-s-fg-hover); color: var(--btn-s-fg-hover); }
    .eco-btn:is(.eco-btn--outline, .eco-btn--ghost):not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--btn-t-bg); }
    .eco-btn--on-inverse { --ink: var(--eco-inverse-ink, var(--eco-rail-ink, var(--eco-color-white))); --ico: var(--ink); height: 36px; padding: 0 14px; border-radius: var(--eco-radius-full); color: var(--ink); }
    .eco-btn--on-inverse svg { width: 18px; height: 18px; }
    .eco-btn--on-inverse.eco-btn--icon { width: 36px; padding: 0; }
    .eco-btn--on-inverse:not([disabled], [aria-disabled="true"]):is(:hover, .is-hover) { background: color-mix(in srgb, var(--ink) 12%, transparent); }
    .eco-btn--on-inverse:not([disabled], [aria-disabled="true"]):is(:active, .is-active) { background: color-mix(in srgb, var(--ink) 18%, transparent); }
    .eco-btn--toggle[aria-pressed="true"] { --ico: var(--eco-bg-primary); background: var(--eco-text-primary); color: var(--eco-bg-primary); }
    .eco-btn--toggle[aria-pressed="true"]:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: color-mix(in oklab, var(--eco-text-primary) 86%, var(--eco-bg-primary)); }
    .eco-btn--toggle.eco-btn--quiet[aria-pressed="true"] { --ico: var(--btn-n-fg); background: var(--btn-t-bg-hover); color: var(--btn-n-fg); font-weight: 600; }
    .eco-btn--toggle.eco-btn--quiet[aria-pressed="true"]:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: color-mix(in oklab, var(--btn-t-bg-hover) 80%, var(--eco-text-primary)); }
    .eco-btn--quiet:not([aria-pressed="true"]) > .eco-btn__on, .eco-btn--quiet[aria-pressed="true"] > .eco-btn__off { display: none; }
    .eco-btn--link-color, .eco-btn--link-gray, .eco-btn--link-destructive { height: auto; padding: 0; border-radius: var(--eco-radius-xs); }
    .eco-btn--link-color > span, .eco-btn--link-gray > span, .eco-btn--link-destructive > span { text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 4px; transition: text-decoration-color var(--eco-duration-fast) linear; }
    .eco-btn--link-color { color: var(--eco-text-brand-secondary); }
    .eco-btn--link-color:hover { color: var(--eco-text-brand-secondary_hover); }
    .eco-btn--link-gray { --ico: var(--eco-fg-quaternary); color: var(--eco-text-tertiary); }
    .eco-btn--link-gray:hover { color: var(--eco-text-tertiary_hover); }
    .eco-btn--link-color:hover > span, .eco-btn--link-gray:hover > span, .eco-btn--link-destructive:hover > span { text-decoration-color: currentColor; }
    .eco-btn.eco-btn--inline { min-height: 24px; vertical-align: bottom; font: 500 var(--eco-text-sm)/var(--eco-text-sm--line-height) var(--eco-font-body); letter-spacing: 0; white-space: normal; text-align: start; }
    .eco-btn--link-color.eco-btn--inline:is([aria-disabled="true"], :disabled):is(:hover, :active) { color: var(--eco-text-brand-secondary); }
    .eco-btn.eco-btn--inline:is([aria-disabled="true"], :disabled):is(:hover, :active) > span { text-decoration-color: transparent; }
    fieldset:disabled .eco-btn.eco-btn--inline { opacity: 1; cursor: not-allowed; }
    .eco-btn.eco-btn--cell { height: auto; min-height: 24px; padding-inline: 0; white-space: nowrap; }
    @container listpage (max-width: 639px) { .eco-btn.eco-btn--fold { width: 36px; padding: 0; justify-content: center; } }
    .eco-btn--primary-destructive { --ico: var(--eco-text-white); background: var(--eco-bg-error-solid); color: var(--eco-text-white); }
    .eco-btn--primary-destructive:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--eco-bg-error-solid_hover); }
    .eco-btn--secondary-destructive { background: var(--eco-bg-error-primary); color: var(--eco-text-error-primary); }
    .eco-btn--secondary-destructive:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--eco-bg-error-secondary); color: var(--eco-text-error-primary_hover); }
    .eco-btn--tertiary-destructive { color: var(--eco-text-error-primary); }
    .eco-btn--tertiary-destructive:not([disabled], [aria-disabled="true"]):is(:hover, :active, :focus-visible) { background: var(--eco-bg-error-primary); color: var(--eco-text-error-primary_hover); }
    .eco-btn--link-destructive { color: var(--eco-text-error-primary); }
    .eco-btn--link-destructive:hover { color: var(--eco-text-error-primary_hover); }
    :is(.eco-card:not(.eco-card--raised, .eco-card--app), .demo--surface) :is(.eco-btn--tertiary-destructive, .eco-btn--link-destructive, .eco-field.is-error .eco-hint, .eco-slider.is-error > .eco-hint, .eco-otp.is-error .eco-otp__foot, .eco-file__status--error, .eco-progress-field.is-error .eco-progress-field__hint) { color: var(--eco-text-error-primary_hover); }
    .eco-btn[class*="destructive"]:focus-visible { --focus-c: var(--eco-focus-ring-error); }
    .eco-btn[disabled], .eco-btn[aria-disabled="true"] { opacity: .5; cursor: not-allowed; }
    .eco-btn.is-loading { color: transparent !important; pointer-events: none; }
    .eco-btn.is-loading::after { content: ""; position: absolute; width: 20px; height: 20px; background: var(--spin);
      -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-50 -50 100 100'%3E%3Cg%3E%3Ccircle cy='-38' r='9.5'/%3E%3Ccircle cx='32.9' cy='-19' r='9.5'/%3E%3Ccircle cx='32.9' cy='19' r='9.5'/%3E%3Ccircle cy='38' r='9.5'/%3E%3Ccircle cx='-32.9' cy='19' r='9.5'/%3E%3Ccircle cx='-32.9' cy='-19' r='9.5'/%3E%3C/g%3E%3C/svg%3E") center / 100% no-repeat;
      mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-50 -50 100 100'%3E%3Cg%3E%3Ccircle cy='-38' r='9.5'/%3E%3Ccircle cx='32.9' cy='-19' r='9.5'/%3E%3Ccircle cx='32.9' cy='19' r='9.5'/%3E%3Ccircle cy='38' r='9.5'/%3E%3Ccircle cx='-32.9' cy='19' r='9.5'/%3E%3Ccircle cx='-32.9' cy='-19' r='9.5'/%3E%3C/g%3E%3C/svg%3E") center / 100% no-repeat;
      animation: eco-btn-ld-spin calc(var(--eco-duration-slow) * 9) linear infinite, eco-btn-ld-breathe calc(var(--eco-duration-slow) * 3) ease-in-out infinite; }
    @keyframes eco-btn-ld-spin { to { rotate: 360deg; } }
    @keyframes eco-btn-ld-breathe { 50% { scale: .82; } }
    @keyframes eco-btn-ld-fade { to { opacity: .45; } }
    .eco-btn--primary.is-loading { --spin: var(--btn-p-fg); background: var(--btn-p-bg-hover); }
    .eco-btn--accent.is-loading { --spin: var(--btn-a-fg); background: var(--btn-a-bg-hover); }
    .eco-btn--ink.is-loading { --spin: var(--btn-i-fg); background: var(--btn-i-bg-hover); }
    .eco-btn--secondary.is-loading { --spin: var(--btn-s-fg); }
    .eco-btn:is(.eco-btn--tertiary, .eco-btn--outline, .eco-btn--ghost).is-loading { --spin: var(--btn-n-fg); }
    .eco-btn--primary-destructive.is-loading { --spin: var(--eco-text-white); background: var(--eco-bg-error-solid_hover); }
    .eco-btn--secondary-destructive.is-loading, .eco-btn--tertiary-destructive.is-loading, .eco-btn--link-destructive.is-loading { --spin: var(--eco-text-error-primary); }
    .eco-btn--link-color.is-loading { --spin: var(--eco-text-brand-secondary); }
    .eco-btn--link-gray.is-loading { --spin: var(--eco-text-tertiary); }
    .eco-btn.is-loading > * { opacity: 0; }
    @keyframes eco-spin { to { transform: rotate(360deg); } }
    .eco-btn-group > .eco-btn { border-radius: 0; }
    .eco-btn-group:not(.eco-btn-group--vertical) > .eco-btn:not(.eco-btn--icon) { min-width: 0; white-space: normal; }
    .eco-btn-group:not(.eco-btn-group--vertical) > .eco-btn:first-child { border-start-start-radius: inherit; border-end-start-radius: inherit; }
    .eco-btn-group:not(.eco-btn-group--vertical) > .eco-btn:last-child { border-start-end-radius: inherit; border-end-end-radius: inherit; }
    .eco-btn-group--vertical > .eco-btn:first-child { border-start-start-radius: inherit; border-start-end-radius: inherit; }
    .eco-btn-group--vertical > .eco-btn:last-child { border-end-start-radius: inherit; border-end-end-radius: inherit; }
    .eco-btn-group > .eco-btn + .eco-btn::before { content: ""; position: absolute; inset-block: var(--eco-spacing-md); inset-inline-start: 0; width: 1px; background: currentColor; opacity: .15; pointer-events: none; }
    .eco-btn-group--vertical > .eco-btn + .eco-btn::before { inset: 0 0 auto; width: 20px; height: 1px; margin-inline: auto; }
    .eco-btn-group--vertical > .eco-btn--xs + .eco-btn::before { width: 16px; }
    .eco-btn-group--vertical > .eco-btn--sm + .eco-btn::before { width: 18px; }
    .eco-btn-group--vertical > .eco-btn--lg + .eco-btn::before { width: 22px; }
    .eco-btn-group--vertical > .eco-btn--xl + .eco-btn::before { width: 24px; }
    .eco-btn-group > .eco-btn--ghost + .eco-btn--ghost::before, .eco-btn-group > .eco-btn.is-loading::before { opacity: 0; }
    .eco-btn-group > .eco-btn--outline + .eco-btn--outline::before { opacity: 0; }
    .eco-modal__actions > .eco-btn:not(.eco-btn--xs, .eco-btn--lg, .eco-btn--xl, .eco-btn--link-color, .eco-btn--link-gray, .eco-btn--link-destructive) { height: 36px; font-size: var(--eco-text-sm); line-height: var(--eco-text-sm--line-height); }
    .eco-modal__actions > .eco-btn:not(.eco-btn--xs, .eco-btn--lg, .eco-btn--xl, .eco-btn--link-color, .eco-btn--link-gray, .eco-btn--link-destructive)::before { content: ""; position: absolute; inset: -2px 0; }
    .eco-rtip__acts .eco-btn { height: 32px; padding: 0 8px; }
.eco-badge { --b-bg: var(--eco-bg-secondary); --b-fg: var(--eco-text-secondary); --b-dot: var(--eco-fg-quaternary); display: inline-flex; align-items: center; gap: var(--eco-spacing-xs); padding: var(--eco-badge-pad, 2px 10px); border-radius: var(--eco-shape-badge, var(--eco-radius-full)); background: var(--b-bg); color: var(--b-fg); box-shadow: none; font: 500 var(--eco-badge-fs, var(--eco-text-sm))/var(--eco-badge-lh, var(--eco-text-sm--line-height)) var(--eco-font-body); letter-spacing: var(--eco-badge-ls, inherit); white-space: nowrap; }
    :where(.eco-card:not(.eco-card--raised, .eco-card--app), .eco-segment, .eco-tabs--pill, .eco-tabs--button-border, .eco-tabs--button-brand, .eco-tabs--button-gray) .eco-badge { --b-bg: var(--eco-bg-primary); }
    :where(.eco-card:not(.eco-card--raised, .eco-card--app)) :is(.eco-badge--brand, .eco-badge--success, .eco-badge--warning, .eco-badge--error, .eco-badge--info, .eco-badge[class*="--cat-"]):not(.eco-badge--solid) { background: var(--b-tint-bg-surface, var(--b-bg)); }
    .eco-badge--sm { padding: 2px 8px; font-size: var(--eco-text-xs); line-height: var(--eco-text-xs--line-height); }
    .eco-badge--lg { padding: 4px 12px; }
    .eco-badge--badge { border-radius: var(--eco-radius-sm); padding-inline: 8px; }
    .eco-badge--badge.eco-badge--sm { padding-inline: 6px; }
    .eco-badge--badge.eco-badge--lg { padding-inline: 10px; border-radius: var(--eco-radius-md); }
    .eco-badge--dot::before { content: ""; width: 6px; height: 6px; border-radius: 50%; flex: none; background: var(--b-dot); }
    .eco-badge--brand { --b-bg: var(--eco-bg-brand-primary); --b-fg: var(--eco-text-brand-secondary); --b-dot: var(--eco-fg-brand-secondary); }
    .eco-badge--success { --b-bg: var(--eco-bg-success-primary); --b-fg: var(--eco-text-success-primary); --b-dot: var(--eco-fg-success-secondary); }
    .eco-badge--warning { --b-bg: var(--eco-bg-warning-primary); --b-fg: var(--eco-text-warning-primary); --b-dot: var(--eco-fg-warning-primary); }
    .eco-badge--error { --b-bg: var(--eco-bg-error-primary); --b-fg: var(--eco-text-error-primary); --b-dot: var(--eco-fg-error-secondary); }
    .eco-badge--info { --b-bg: color-mix(in oklab, var(--eco-fg-info-primary) 18%, transparent); --b-fg: color-mix(in oklab, var(--eco-fg-info-primary), var(--eco-color-white) 25%); --b-dot: var(--eco-fg-info-primary); }
    [data-theme="light"] .eco-badge--info { --b-bg: color-mix(in srgb, var(--eco-fg-info-primary) 12%, var(--eco-color-white)); --b-fg: color-mix(in oklab, var(--eco-fg-info-primary), black 10%); }
    [data-theme="dark"] .eco-badge--info, .keep-dark .eco-badge--info { --b-bg: color-mix(in oklab, var(--eco-fg-info-primary) 18%, transparent); --b-fg: color-mix(in oklab, var(--eco-fg-info-primary), var(--eco-color-white) 25%); }
    .eco-badge--solid { background: var(--eco-badge-solid-bg, var(--eco-bg-brand-solid)); color: var(--eco-badge-solid-fg, var(--eco-text-primary_on-brand)); box-shadow: none; }
    .eco-badge svg { width: 12px; height: 12px; }
    .eco-badge--lg svg { width: 14px; height: 14px; }
    .eco-badge--cat-black { --cat: var(--eco-cat-black); --cat-dk: 0%; --cat-lt: 0%; }
    .eco-badge--cat-green { --cat: var(--eco-cat-green); --cat-dk: 20%; --cat-lt: 20%; }
    .eco-badge--cat-blue { --cat: var(--eco-cat-blue); --cat-dk: 10%; --cat-lt: 25%; }
    .eco-badge--cat-teal { --cat: var(--eco-cat-teal); --cat-dk: 30%; --cat-lt: 0%; }
    .eco-badge--cat-red { --cat: var(--eco-cat-red); --cat-dk: 10%; --cat-lt: 25%; }
    [class*="--cat-"] { --cat-bg: color-mix(in oklab, var(--cat) 18%, transparent); --cat-fg: color-mix(in oklab, var(--cat), var(--eco-color-white) var(--cat-lt)); }
    [data-theme="light"] [class*="--cat-"] { --cat-bg: color-mix(in srgb, var(--cat) 12%, var(--eco-color-white)); --cat-fg: color-mix(in oklab, var(--cat), black var(--cat-dk)); }
    [data-theme="dark"] [class*="--cat-"], .keep-dark [class*="--cat-"] { --cat-bg: color-mix(in oklab, var(--cat) 18%, transparent); --cat-fg: color-mix(in oklab, var(--cat), var(--eco-color-white) var(--cat-lt)); }
    .eco-badge[class*="--cat-"] { --b-bg: var(--cat-bg); --b-fg: var(--cat-fg); }
    .eco-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: var(--eco-shape-chip, var(--eco-radius-sm)); border: 0; background: var(--eco-bg-secondary); color: var(--eco-text-secondary); box-shadow: none; font: 500 var(--eco-text-sm)/var(--eco-text-sm--line-height) var(--eco-font-body); white-space: nowrap; cursor: pointer; transition: background-color var(--eco-duration-fast) linear, color var(--eco-duration-fast) linear, box-shadow var(--eco-duration-fast) linear; }
    .eco-chip:hover { background: var(--eco-bg-secondary_hover); }
    .eco-card:not(.eco-card--raised, .eco-card--app) .eco-chip:not([aria-pressed="true"]) { background: var(--eco-bg-primary); }
    .eco-card:not(.eco-card--raised, .eco-card--app) .eco-chip:not([aria-pressed="true"]):hover { background: var(--eco-bg-primary_hover); }
    .eco-chip[aria-pressed="true"] { background: var(--eco-text-primary); color: var(--eco-bg-primary); }
    .eco-chip:focus-visible { outline: var(--eco-focus-w) solid transparent; outline-offset: 2px; box-shadow: 0 0 0 2px var(--eco-focus-gap, var(--eco-bg-primary)), 0 0 0 calc(2px + var(--eco-focus-w)) var(--focus-c, var(--eco-focus-ring)); }
    .eco-badge.eco-badge--title { letter-spacing: 0; }
    .eco-badge.eco-badge--trend svg { width: 14px; height: 14px; }
    .eco-badge.eco-badge--num { font-variant-numeric: tabular-nums; }
    .eco-badge--label { --b-bg: var(--eco-bg-primary); --eco-badge-fs: 12px; --eco-badge-lh: 1; --eco-badge-pad: 0 14px; --eco-badge-ls: .12em; height: 28px; font-family: var(--eco-font-mono); text-transform: uppercase; }
    .eco-badge--ink { --b-bg: var(--eco-bg-primary-solid); --b-fg: var(--eco-text-white); }
    [data-theme="dark"] .eco-badge--ink, .keep-dark .eco-badge--ink { --b-bg: var(--eco-text-primary); --b-fg: var(--eco-bg-primary); }
    .eco-count { position: absolute; top: -5px; right: -7px; min-width: 20px; height: 20px; padding: 0 6px; border-radius: var(--eco-radius-full); background: var(--eco-bg-error-solid); color: var(--eco-text-white); font: 600 12px/20px var(--eco-font-body); text-align: center; box-shadow: 0 0 0 2px var(--eco-bg-primary); }
    .eco-count--dot { min-width: 0; width: 10px; height: 10px; padding: 0; top: 5px; right: 6px; }
    .eco-badge--tone { --b-bg: var(--eco-app-well); gap: 6px; height: 24px; padding: 0 10px; font-size: 12px; line-height: 1; }
    .eco-badge--tone svg { width: 14px; height: 14px; }
    .eco-badge--t-ok { --b-bg: var(--eco-bg-success-primary); --b-fg: var(--eco-text-success-primary); --b-dot: var(--eco-bg-success-solid); }
    .eco-badge--t-warn { --b-bg: var(--eco-bg-warning-primary); --b-fg: color-mix(in oklab, var(--eco-fg-warning-primary), var(--eco-text-primary) 45%); --b-dot: var(--eco-bg-warning-solid); }
    .eco-badge--t-neutral { --b-bg: var(--eco-app-well-2); --b-fg: var(--eco-text-secondary); --b-dot: var(--eco-fg-quaternary); }
    .eco-badge--t-bad { --b-bg: var(--eco-bg-error-primary); --b-fg: var(--eco-text-error-primary); --b-dot: var(--eco-bg-error-solid); }
    .eco-badge--t-brand { --b-bg: var(--eco-bg-brand-primary); --b-fg: var(--eco-text-brand-secondary); --b-dot: var(--eco-bg-brand-solid); }
    .eco-badge--t-info { --b-bg: color-mix(in oklab, var(--eco-fg-info-primary) 14%, transparent); --b-fg: var(--eco-fg-info-primary); --b-dot: var(--eco-fg-info-primary); }
    .eco-badge--t-plain { --b-bg: var(--eco-app-well-2); --b-fg: var(--eco-text-primary); --b-dot: var(--eco-fg-quaternary); }
    .eco-badge--t-none { --b-bg: transparent; --b-fg: var(--eco-text-quaternary); --b-dot: transparent; }
    .eco-badge--mark { display: inline-grid; place-items: center; flex: none; gap: normal; width: 24px; height: 24px; padding: 0; border-radius: var(--eco-radius-md); font: 600 12px/1 var(--eco-font-body); }
    .eco-badge--mark-sm { width: 18px; height: 18px; border-radius: 6px; font-size: 10.5px; }
    .eco-badge--mark-pin { position: absolute; top: -3px; right: -3px; box-shadow: 0 0 0 2px var(--eco-mark-cut, var(--eco-app-card)); }
    .eco-badge--grade { display: inline-grid; place-items: center; gap: normal; min-width: var(--eco-grade-w, 36px); height: 28px; padding: 0 6px; border-radius: var(--eco-radius-md); font: 500 13px/1 var(--eco-font-body); font-variant-numeric: tabular-nums; }
    .eco-badge--grade-bar { --b-bg: var(--eco-grade-bg, var(--eco-app-well)); --b-fg: var(--eco-text-primary); position: relative; }
    .eco-badge--grade-bar::after { content: ""; position: absolute; left: 50%; bottom: 3px; width: 14px; height: 2.5px; margin-left: -7px; border-radius: 2px; background: var(--b-dot, transparent); }
    .eco-badge--count { --b-bg: var(--eco-app-well); flex: none; justify-content: center; gap: normal; min-width: 22px; padding: 0 7px; font: 500 12px/22px var(--eco-font-body); text-align: center; font-variant-numeric: tabular-nums; }
.eco-avatar--cat-black { --cat: var(--eco-cat-black); --cat-dk: 0%; --cat-lt: 0%; }
    .eco-avatar--cat-green { --cat: var(--eco-cat-green); --cat-dk: 20%; --cat-lt: 20%; }
    .eco-avatar--cat-blue { --cat: var(--eco-cat-blue); --cat-dk: 10%; --cat-lt: 25%; }
    .eco-avatar--cat-teal { --cat: var(--eco-cat-teal); --cat-dk: 30%; --cat-lt: 0%; }
    .eco-avatar--cat-red { --cat: var(--eco-cat-red); --cat-dk: 10%; --cat-lt: 25%; }
    .eco-avatar[class*="--cat-"] { background: var(--cat-bg); color: var(--cat-fg); }
    .eco-avatar { --s: 40px; --f: var(--eco-text-md); position: relative; width: var(--s); height: var(--s); flex: none; display: inline-grid; place-items: center; border-radius: var(--eco-shape-avatar, var(--eco-radius-full)); background: var(--eco-bg-tertiary); color: var(--eco-text-tertiary); box-shadow: none; font: 600 var(--f)/1 var(--eco-font-body); }
    .eco-avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
    .eco-avatar--xs { --s: 24px; --f: var(--eco-text-xs); }
    .eco-avatar--sm { --s: 32px; --f: var(--eco-text-sm); }
    .eco-avatar--lg { --s: 48px; --f: var(--eco-text-lg); }
    .eco-avatar--xl { --s: 56px; --f: var(--eco-text-xl); }
    .eco-avatar--2xl { --s: 64px; --f: var(--eco-text-display-xs); }
    .eco-avatar__status { position: absolute; right: 0; bottom: 0; width: calc(var(--s) * .25); height: calc(var(--s) * .25); min-width: 6px; min-height: 6px; border-radius: 50%; background: var(--eco-fg-success-primary); box-shadow: 0 0 0 1.5px var(--eco-bg-primary); }
    .eco-avatar__status--busy { background: var(--eco-fg-warning-primary); }
    .eco-avatar__status--off { background: var(--eco-bg-primary); box-shadow: inset 0 0 0 2px var(--eco-border-primary), 0 0 0 1.5px var(--eco-bg-primary); }
    .eco-avatar--36 { --s: 36px; --f: var(--eco-text-xs); font-weight: 500; line-height: 20px; }
    .eco-avatar--36 > svg { width: var(--eco-icon-sm); height: var(--eco-icon-sm); }
    .eco-avatar > svg { flex: none; }
    .eco-avatar--brand { color: var(--eco-avatar-ink); }
    .eco-avatar--tint { background: var(--eco-avatar-tint-bg); color: var(--eco-avatar-tint-ink); }
    .eco-avatar--accent { background: var(--eco-avatar-accent-bg, var(--eco-avatar-tint-bg)); color: var(--eco-avatar-accent-ink, var(--eco-avatar-tint-ink)); }
    .eco-avatar--inverse { background: var(--eco-avatar-inverse-bg, var(--eco-bg-primary-solid)); color: var(--eco-avatar-inverse-ink, var(--eco-avatar-tint-ink)); }
    .eco-avatar--solid { background: var(--eco-avatar-solid-bg, var(--eco-bg-brand-solid)); color: var(--eco-avatar-solid-ink, var(--eco-text-primary_on-brand)); }
    .eco-avatar--ink-black { color: var(--eco-avatar-ink-black); }
    .eco-avatar--ink-green { color: var(--eco-avatar-ink-green); }
    .eco-avatar--ink-blue { color: var(--eco-avatar-ink-blue); }
    .eco-avatar--ink-teal { color: var(--eco-avatar-ink-teal); }
    .eco-avatar--ink-red { color: var(--eco-avatar-ink-red); }
    .eco-avatar--3d { color: transparent; }
    .eco-avatar--3d img { position: absolute; inset: 0; display: block; }
    .eco-avatar--hue-1 { background: var(--eco-avatar-hue-1-bg); color: var(--eco-avatar-hue-1-ink); }
    .eco-avatar--hue-2 { background: var(--eco-avatar-hue-2-bg); color: var(--eco-avatar-hue-2-ink); }
    .eco-avatar--hue-3 { background: var(--eco-avatar-hue-3-bg); color: var(--eco-avatar-hue-3-ink); }
    .eco-avatar--hue-4 { background: var(--eco-avatar-hue-4-bg); color: var(--eco-avatar-hue-4-ink); }
    .eco-avatar--hue-5 { background: var(--eco-avatar-hue-5-bg); color: var(--eco-avatar-hue-5-ink); }
    .eco-avatar--hue-6 { background: var(--eco-avatar-hue-6-bg); color: var(--eco-avatar-hue-6-ink); }
    .eco-avatar--hue-7 { background: var(--eco-avatar-hue-7-bg); color: var(--eco-avatar-hue-7-ink); }
    .eco-avatar.eco-avatar--live { box-shadow: 0 0 0 2px var(--eco-bg-primary), 0 0 0 4px var(--eco-fg-success-primary); }
    .eco-avatar-group { display: inline-flex; }
    .eco-avatar-group > .eco-avatar { box-shadow: 0 0 0 2px var(--eco-avatar-cut, var(--eco-bg-primary)); }
    .eco-avatar-group > .eco-avatar + .eco-avatar { margin-left: -8px; }
    .eco-avatar-group--tail > .eco-avatar:first-child { box-shadow: none; }
    .eco-menu__item > .eco-avatar svg { width: var(--eco-icon-sm); height: var(--eco-icon-sm); }
    .eco-menu__item--danger > .eco-avatar:has(> svg) { background: var(--eco-bg-error-primary); color: var(--eco-fg-error-primary); box-shadow: none; }
    .eco-person { display: flex; align-items: center; gap: var(--eco-person-gap, 12px); }
    .eco-person__t { display: grid; gap: 2px; min-width: 0; flex: 1; }
    .eco-person__t b { font: 500 var(--eco-person-fs, 16px)/var(--eco-person-lh, 22px) var(--eco-font-body); }
    .eco-person__t small { font-size: var(--eco-person-sub-fs, 14px); line-height: var(--eco-person-sub-lh, 20px); color: var(--eco-text-tertiary); }
:root, [data-theme="dark"], .hub-acts, #ds-auth-dlg {
      --menu-edge: transparent;
      --menu-press: var(--eco-bg-primary);
    }
    [data-theme="light"], :root[data-theme="light"] :is(.hub-acts, #ds-auth-dlg) {
      --menu-edge: transparent;
      --menu-press: var(--eco-bg-secondary_hover);
    }
    .eco-menu { display: flex; flex-direction: column; gap: 2px; box-sizing: border-box; min-width: 240px; max-width: min(320px, calc(100vw - 32px)); max-height: var(--eco-menu-max-h, min(480px, calc(100dvh - 32px))); margin: 0; padding: 4px; overflow-y: auto; overscroll-behavior: contain; border: 0; border-radius: var(--eco-radius-4xl); background: var(--eco-bg-primary_alt); box-shadow: inset 0 0 0 1px var(--menu-edge), var(--eco-shadow-lg); color: var(--eco-text-primary); font-family: var(--eco-font-body); text-align: left; list-style: none; }
    .eco-menu[hidden] { display: none; }
    .eco-menu__group { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 0; list-style: none; }
    .eco-menu > .eco-menu__item + .eco-menu__item { margin-top: -2px; }
    .eco-menu__label { padding: var(--eco-menu-label-pt, 10px) 12px 6px; font: 500 var(--eco-text-xs)/20px var(--eco-font-body); letter-spacing: 0; color: var(--eco-text-tertiary); }
    .eco-menu__sep { flex: none; height: 1px; margin: 4px 12px; background: transparent; }
    .eco-menu__item { --ico: var(--eco-fg-tertiary); --ico-on: var(--eco-fg-primary); position: relative; display: flex; align-items: center; gap: 12px; box-sizing: border-box; width: 100%; min-height: 36px; margin: 0; padding: 6px 12px; border: 0; border-radius: var(--eco-radius-3xl); background: transparent; color: var(--eco-text-primary); font: 500 var(--eco-text-sm)/24px var(--eco-font-body); letter-spacing: 0; text-align: left; text-decoration: none; cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent; transition: background-color var(--eco-duration-fast) linear, color var(--eco-duration-fast) linear; }
    .eco-menu__item > .eco-avatar { --s: 36px; --f: var(--eco-text-sm); }
    .eco-menu__item > svg, .eco-menu__end svg { width: 16px; height: 16px; flex: none; color: var(--ico); transition: color var(--eco-duration-fast) linear; }
    .eco-menu__item > svg:first-child, .eco-menu__item > .eco-menu__check { align-self: flex-start; margin-top: 2px; }
    .eco-menu__item:not(:has(.eco-menu__desc)) > .eco-menu__check { align-self: center; margin-top: 0; }
    .eco-menu__body { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
    .eco-menu__title { overflow-wrap: anywhere; }
    .eco-menu__desc { font: 400 var(--eco-text-xs)/20px var(--eco-font-body); color: var(--eco-text-tertiary); overflow-wrap: anywhere; }
    .eco-menu__end { display: inline-flex; flex: none; align-items: center; margin-left: auto; color: var(--ico); }
    .eco-menu__end.eco-menu__end--num { font-variant-numeric: tabular-nums; color: var(--eco-text-secondary); }
    .eco-menu__kbd { display: inline-flex; flex: none; gap: 2px; align-items: center; margin-left: auto; padding: 1px 6px; border-radius: var(--eco-radius-md); font: 500 var(--eco-text-sm)/24px var(--eco-font-body); letter-spacing: 0; color: var(--eco-text-tertiary); white-space: nowrap; }
    .eco-menu__item--danger .eco-menu__kbd { color: inherit; }
    .eco-menu__check { flex: none; width: 16px; height: 16px; color: var(--ico); visibility: hidden; }
    .eco-menu__check--dot { display: inline-grid; place-items: center; }
    .eco-menu__check--dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
    .eco-menu__item:not([aria-disabled="true"]):not(:disabled):hover { --ico: var(--ico-on); background: var(--eco-bg-secondary); }
    .eco-menu__item:not([aria-disabled="true"]):not(:disabled):active { background: var(--menu-press); }
    .eco-menu__item:focus-visible { --ico: var(--ico-on); z-index: 1; outline: var(--eco-focus-w) solid transparent; outline-offset: 2px; box-shadow: 0 0 0 2px var(--eco-focus-gap, var(--eco-bg-primary)), 0 0 0 calc(2px + var(--eco-focus-w)) var(--focus-c, var(--eco-focus-ring)); border-radius: var(--eco-radius-3xl); background: var(--eco-bg-secondary); }
    .eco-menu__item:is([aria-selected="true"], [aria-checked="true"]) { --ico: var(--ico-on); }
    .eco-menu__item.is-active { --ico: var(--ico-on); background: var(--eco-bg-secondary); }
    .eco-menu__item mark { background: none; color: inherit; font-weight: 700; }
    .eco-menu__item:is([aria-selected="true"], [aria-checked="true"]) .eco-menu__check { visibility: visible; }
    .eco-menu__item--danger { --ico: var(--eco-fg-error-primary); --ico-on: var(--eco-text-error-primary_hover); color: var(--eco-text-error-primary); }
    .eco-menu__item--danger:not([aria-disabled="true"]):not(:disabled):is(:hover, :active), .eco-menu__item--danger:focus-visible { color: var(--eco-text-error-primary_hover); }
    .eco-menu__item--danger:focus-visible { --focus-c: var(--eco-focus-ring-error); }
    .eco-menu__item:is([aria-disabled="true"], :disabled) { opacity: .5; cursor: not-allowed; }
    .eco-menu--lg { padding: 8px; }
    .eco-menu--lg .eco-menu__item { min-height: 52px; gap: 10px; padding: 8px 12px; border-radius: var(--eco-radius-xl); }
    .eco-menu--lg .eco-menu__title { font: 500 15px/20px var(--eco-font-body); }
    .eco-dropdown { position: relative; display: inline-flex; vertical-align: top; }
    .eco-dropdown > .eco-menu { position: absolute; z-index: var(--eco-z-dropdown, 30); top: calc(100% + 8px); left: 0; }
    .eco-dropdown:is(.eco-dropdown--end, .is-end) > .eco-menu { right: 0; left: auto; }
    .eco-dropdown.is-up > .eco-menu { top: auto; bottom: calc(100% + 8px); }
    @media (prefers-reduced-motion: no-preference) {
      .eco-dropdown > .eco-menu:not([hidden]) { animation: eco-menu-in var(--eco-duration-base) var(--eco-ease-emphasized); }
      .eco-dropdown.is-up > .eco-menu:not([hidden]) { animation-name: eco-menu-in-up; }
    }
    @keyframes eco-menu-in { from { opacity: 0; transform: translateY(-4px); } }
    @keyframes eco-menu-in-up { from { opacity: 0; transform: translateY(4px); } }
    @media (forced-colors: active) {
      .eco-menu { border: 1px solid CanvasText; }
      .eco-menu__item:focus-visible { outline-color: Highlight; }
      .eco-menu__sep, .eco-menu__check--dot::before { forced-color-adjust: none; background: CanvasText; }
    }
    .eco-menu--sheet { min-width: 0; max-width: none; max-height: none; padding: 8px; gap: 0; overflow: visible; border-radius: 0; background: none; box-shadow: none; }
    .eco-menu--sheet .eco-menu__item { min-height: 56px; gap: 16px; padding: 8px 16px; border-radius: var(--eco-shape-control-xs, var(--eco-radius-2xl)); font: 500 17px/24px var(--eco-font-body); }
    .eco-menu--sheet .eco-menu__item > svg, .eco-menu--sheet .eco-menu__item > svg:first-child { align-self: center; width: 24px; height: 24px; margin-top: 0; }
    .eco-menu--sheet .eco-menu__sep { margin: 4px 16px; }
.ds-acct__t { min-width: 0; max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[data-ds-acct] .eco-avatar { --s: 28px; --f: var(--eco-text-xs); }
[data-ds-acct].eco-btn--icon .ds-acct__t { display: none; }
