/* Ekoia skin: official registry files stay untouched. */
[data-theme="ekoia"] {
 /* Primitives hold the graphite-and-jade values; consumers use semantic roles. */
 --ekoia-primitive-canvas: #f7f7f6;
 --ekoia-primitive-surface: #ffffff;
 --ekoia-primitive-rail: rgba(244, 245, 244, .82);
 --ekoia-primitive-queue: rgba(250, 250, 249, .94);
 --ekoia-primitive-topbar: rgba(255, 255, 255, .74);
 --ekoia-primitive-text: #1b1d1c;
 --ekoia-primitive-text-muted: #606562;
 --ekoia-primitive-text-subtle: #747975;
 --ekoia-primitive-border: rgba(60, 60, 67, .12);
 --ekoia-primitive-border-strong: rgba(60, 60, 67, .2);
 --ekoia-primitive-surface-muted: #f1f2f1;
 --ekoia-primitive-surface-panel: #f4f5f4;
 --ekoia-primitive-surface-selected: #e9ecea;
 --ekoia-primitive-action: #19584f;
 --ekoia-primitive-action-hover: #20695e;
 --ekoia-primitive-action-subtle: #edf5f2;
 --ekoia-primitive-ai: #2d8b72;
 --ekoia-primitive-ai-subtle: #e7f3ef;
 --ekoia-primitive-priority: #ba5a50;
 --ekoia-primitive-message-incoming: #eceeec;
 --ekoia-primitive-message-outgoing: #e2f0ea;
 --ekoia-primitive-material: rgba(252, 252, 253, .86);
 --ekoia-primitive-material-solid: #fcfcfd;
 --ekoia-primitive-elevation-menu: 0 20px 54px rgba(22, 28, 27, .14), 0 3px 12px rgba(22, 28, 27, .06);
 --ekoia-primitive-elevation-float: 0 16px 44px rgba(22, 28, 27, .1), 0 2px 8px rgba(22, 28, 27, .04);
 /* Relation Desk visual roles stay here so the composition owns layout only. */
 --ekoia-on-action: #fff;
 --ekoia-on-inverse: #fff;
 --ekoia-surface-opaque: var(--ekoia-primitive-surface);
 --ekoia-logo-fill: linear-gradient(145deg, #2c6567, #163f42);
 --ekoia-rail-icon: #6e6e73;
 --ekoia-tooltip-foreground: #fff;
 --ekoia-tooltip-border: rgba(255,255,255,.11);
 --ekoia-tooltip-background: rgba(27,29,28,.92);
 --ekoia-interaction-neutral-strong: rgba(118, 118, 128, .09);
 --ekoia-interaction-neutral-medium: rgba(118, 118, 128, .075);
 --ekoia-interaction-neutral-soft: rgba(118, 118, 128, .06);
 --ekoia-interaction-neutral-subtle: rgba(118, 118, 128, .055);
 --ekoia-interaction-action-strong: rgba(24, 74, 77, .1);
 --ekoia-interaction-action-medium: rgba(24, 74, 77, .09);
 --ekoia-interaction-action-soft: rgba(24, 74, 77, .075);
 --ekoia-badge-border: #fbfcfa;
 --ekoia-rail-eko-background: rgba(255, 255, 255, .66);
 --ekoia-account-foreground: #fff;
 --ekoia-account-background: #29312e;
 --ekoia-avatar-foreground: #47685d;
 --ekoia-avatar-background: #e7f0ec;
 --ekoia-avatar-apricot-foreground: #745348;
 --ekoia-avatar-apricot-background: #f4e8e1;
 --ekoia-avatar-blue-foreground: #4b6079;
 --ekoia-avatar-blue-background: #e7edf4;
 --ekoia-channel-badge-background: #fff;
 --ekoia-topbar-divider: linear-gradient(to bottom, rgba(20, 24, 22, .08), transparent);
 --ekoia-mask-fade: linear-gradient(to bottom, #000, transparent);
 --ekoia-meta-divider: #b0b6b3;
 --ekoia-status-indicator: #4c796a;
 --ekoia-menu-border: rgba(60, 60, 67, .11);
 --ekoia-status-control-border: rgba(60, 60, 67, .1);
 --ekoia-status-control-background: rgba(255, 255, 255, .7);
 --ekoia-publication-background: rgba(255, 255, 255, .72);
 --ekoia-message-legacy-background: #f2f2f7;
 --ekoia-eko-signal-hover: linear-gradient(90deg, transparent, rgba(234, 242, 239, .72), transparent);
 --ekoia-eko-action-border: color-mix(in srgb, var(--ekoia-ai) 22%, transparent);
 --ekoia-composer-fade: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.92) 30%, #fff 76%);
 --ekoia-composer-border: rgba(255, 255, 255, .88);
 --ekoia-composer-background: rgba(255, 255, 255, .84);
 --ekoia-composer-focus-border: rgba(24, 74, 77, .14);
 --ekoia-send-fill: linear-gradient(180deg, #286164, var(--ekoia-action));
 --ekoia-studio-border: rgba(255, 255, 255, .82);
 --ekoia-studio-background: rgba(250, 250, 250, .94);
 --ekoia-context-strip-background: var(--ekoia-primitive-surface-muted);
 --ekoia-action-strong-hover: #225b5e;
 --ekoia-context-detail-border: #b7cbc3;
 --ekoia-context-detail-background: #f6f9f7;
 --ekoia-eko-compose-fade: linear-gradient(180deg, rgba(250,250,250,0), rgba(250,250,250,.96) 20%);
 --ekoia-prompt-background: rgba(255,255,255,.62);
 --ekoia-question-background: rgba(255, 255, 255, .78);
 --ekoia-control-disabled-background: #edf0ed;
 --ekoia-correction-background: #fff;
 --ekoia-relation-border: rgba(255, 255, 255, .78);
 --ekoia-relation-background: rgba(250, 250, 250, .92);
 --ekoia-relation-divider: #f0f1ef;
 --ekoia-open-record-background: #fafbf9;
 --ekoia-notice-background: rgba(29, 29, 31, .9);
 --ekoia-backdrop-background: rgba(0, 0, 0, .18);
 --ekoia-backdrop-background-opaque: rgba(0, 0, 0, .36);
 --ekoia-contrast-border: rgba(29, 29, 31, .42);
 --ekoia-contrast-border-strong: rgba(0, 0, 0, .58);
 --ekoia-elevation-focus: 0 0 0 3px rgba(53, 111, 114, .2);
 --ekoia-elevation-rail: inset -1px 0 rgba(60, 60, 67, .04);
 --ekoia-elevation-logo: 0 5px 14px rgba(24, 74, 77, .2), inset 0 1px rgba(255, 255, 255, .28);
 --ekoia-elevation-tooltip: 0 8px 24px rgba(0,0,0,.16);
 --ekoia-elevation-selection: inset 0 0 0 .5px rgba(24, 74, 77, .08);
 --ekoia-elevation-badge: 0 1px 3px rgba(0, 0, 0, .08), inset 0 1px rgba(255, 255, 255, .72);
 --ekoia-elevation-status: 0 1px 2px rgba(0, 0, 0, .025), inset 0 1px rgba(255, 255, 255, .7);
 --ekoia-elevation-message: inset 0 0 0 .5px var(--ekoia-border);
 --ekoia-elevation-message-legacy: inset 0 0 0 .5px rgba(60, 60, 67, .08);
 --ekoia-elevation-composer: var(--ekoia-elevation-float), inset 0 0 0 .5px rgba(60, 60, 67, .1), inset 0 1px rgba(255, 255, 255, .85);
 --ekoia-elevation-composer-focus: 0 20px 52px rgba(22, 28, 27, .13), 0 3px 12px rgba(22, 28, 27, .05), inset 0 0 0 1px rgba(24, 74, 77, .12);
 --ekoia-elevation-send: 0 3px 8px rgba(24, 74, 77, .2), inset 0 1px rgba(255, 255, 255, .22);
 --ekoia-elevation-studio: 0 24px 64px rgba(0, 0, 0, .14), 0 2px 10px rgba(0, 0, 0, .04), inset 0 0 0 .5px rgba(60, 60, 67, .12);
 --ekoia-elevation-action: 0 2px 6px rgba(24, 74, 77, .16);
 --ekoia-elevation-question: 0 7px 22px rgba(22, 28, 27, .06), inset 0 0 0 1px rgba(60, 60, 67, .14);
 --ekoia-elevation-relation: 0 24px 64px rgba(0, 0, 0, .15), inset 0 0 0 .5px rgba(60, 60, 67, .14);
 --ekoia-elevation-notice: 0 12px 32px rgba(0, 0, 0, .18);
 --ekoia-elevation-queue-overlay: 18px 0 48px rgba(0, 0, 0, .12);
 --ekoia-elevation-surface-tablet: 0 24px 64px rgba(0, 0, 0, .18), 0 3px 12px rgba(0, 0, 0, .06), inset 0 0 0 .5px rgba(60, 60, 67, .14);
 --ekoia-elevation-mobile-rail: 0 -1px var(--ekoia-border);
 --ekoia-elevation-contrast-focus: 0 0 0 3px var(--ekoia-focus);
 --ekoia-elevation-contrast-selection: inset 0 0 0 1px var(--ekoia-action);
 --ekoia-elevation-contrast-surface: 0 0 0 1px rgba(0, 0, 0, .58), 0 12px 30px rgba(0, 0, 0, .18);
 --ekoia-canvas: var(--ekoia-primitive-canvas);
 --ekoia-surface: var(--ekoia-primitive-surface);
 --ekoia-surface-rail: var(--ekoia-primitive-rail);
 --ekoia-surface-queue: var(--ekoia-primitive-queue);
 --ekoia-surface-topbar: var(--ekoia-primitive-topbar);
 --ekoia-surface-muted: var(--ekoia-primitive-surface-muted);
 --ekoia-surface-panel: var(--ekoia-primitive-surface-panel);
 --ekoia-surface-selected: var(--ekoia-primitive-surface-selected);
 --ekoia-surface-material: var(--ekoia-primitive-material);
 --ekoia-surface-material-solid: var(--ekoia-primitive-material-solid);
 --ekoia-text: var(--ekoia-primitive-text);
 --ekoia-text-muted: var(--ekoia-primitive-text-muted);
 --ekoia-text-subtle: var(--ekoia-primitive-text-subtle);
 --ekoia-border: var(--ekoia-primitive-border);
 --ekoia-border-strong: var(--ekoia-primitive-border-strong);
 --ekoia-action: var(--ekoia-primitive-action);
 --ekoia-action-hover: var(--ekoia-primitive-action-hover);
 --ekoia-action-subtle: var(--ekoia-primitive-action-subtle);
 --ekoia-focus: #356f72;
 --ekoia-danger: #b43f35;
 --ekoia-ai: var(--ekoia-primitive-ai);
 --ekoia-ai-subtle: var(--ekoia-primitive-ai-subtle);
 --ekoia-priority: var(--ekoia-primitive-priority);
 --ekoia-message-incoming: var(--ekoia-primitive-message-incoming);
 --ekoia-message-outgoing: var(--ekoia-primitive-message-outgoing);
 --ekoia-radius-control: 10px;
 --ekoia-radius-surface: 16px;
 --ekoia-elevation-menu: var(--ekoia-primitive-elevation-menu);
 --ekoia-elevation-float: var(--ekoia-primitive-elevation-float);
 --ekoia-font-sans: "Manrope Variable", sans-serif;
 --ekoia-font-body: 14px/1.5 var(--ekoia-font-sans);
 --ekoia-font-shortcut: 12px/1 var(--ekoia-font-sans);
 --ekoia-font-optical: auto;
 --ekoia-font-smoothing: antialiased;
 --ekoia-font-rendering: optimizeLegibility;
 --ekoia-font-style-normal: normal;
 --ekoia-font-numeric-tabular: tabular-nums;
 --ekoia-control-icon-size: 1rem;
 --ekoia-type-size-8: 8px;
 --ekoia-type-size-9: 9px;
 --ekoia-type-size-10: 10px;
 --ekoia-type-size-11: 11px;
 --ekoia-type-size-12: 12px;
 --ekoia-type-size-13: 13px;
 --ekoia-type-size-14: 14px;
 --ekoia-type-size-16: 16px;
 --ekoia-type-size-22: 22px;
 --ekoia-type-size-26: 26px;
 --ekoia-type-size-display: clamp(25px, 3vw, 34px);
 --ekoia-type-weight-560: 560;
 --ekoia-type-weight-600: 600;
 --ekoia-type-weight-620: 620;
 --ekoia-type-weight-640: 640;
 --ekoia-type-weight-650: 650;
 --ekoia-type-weight-660: 660;
 --ekoia-type-weight-680: 680;
 --ekoia-type-weight-690: 690;
 --ekoia-type-weight-700: 700;
 --ekoia-type-weight-720: 720;
 --ekoia-type-weight-750: 750;
 --ekoia-type-leading-1: 1;
 --ekoia-type-leading-112: 1.12;
 --ekoia-type-leading-12: 1.2;
 --ekoia-type-leading-135: 1.35;
 --ekoia-type-leading-15: 1.5;
 --ekoia-type-leading-155: 1.55;
 --ekoia-type-leading-162: 1.62;
 --ekoia-type-tracking-tight-1: -.005em;
 --ekoia-type-tracking-tight-2: -.006em;
 --ekoia-type-tracking-tight-3: -.03em;
 --ekoia-type-tracking-tight-4: -.035em;
 --ekoia-type-tracking-tight-5: -.055em;
 --ekoia-type-tracking-wide-1: .005em;
 --ekoia-type-tracking-wide-2: .01em;
 --ekoia-type-tracking-wide-3: .04em;
 --ekoia-type-tracking-wide-4: .05em;
 --ekoia-type-tracking-wide-5: .06em;
 --ekoia-motion-fast: 100ms;
 --ekoia-motion-state: 180ms;
 --ekoia-motion-surface: 320ms;
 --ekoia-motion-press-feedback: 60ms;
 --ekoia-motion-hint: 120ms;
 --ekoia-motion-disclosure: 220ms;
 --ekoia-motion-reduced: .01ms;
 --ekoia-motion-reduced-iterations: 1;
 --ekoia-ease-out: cubic-bezier(.22, 1, .36, 1);
 --ekoia-ease-press: cubic-bezier(.2, .8, .2, 1);
 --ekoia-ease-standard: ease;
 --ekoia-ease-theme-transition: ease-out;
 --ekoia-motion-press: 90ms;
 --ekoia-motion-reveal: 240ms;
 --ekoia-motion-dismiss: 160ms;
 --ekoia-motion-travel: 360ms;
 --ekoia-motion-ambient: 2400ms;
 --ekoia-ease-settle: cubic-bezier(.25,.8,.25,1);
 --ekoia-ease-exit: cubic-bezier(.4,0,1,1);
 /* Public primitive names are adapters to the same semantic authority. */
 --ui-font: var(--ekoia-font-sans);
 --background: var(--ekoia-canvas); --foreground: var(--ekoia-text);
 --card: var(--ekoia-surface); --card-foreground: var(--ekoia-text);
 --popover: var(--ekoia-surface-opaque); --popover-foreground: var(--ekoia-text);
 --primary: var(--ekoia-action); --primary-foreground: var(--ekoia-on-action);
 --secondary: var(--ekoia-surface-muted); --secondary-foreground: var(--ekoia-text);
 --muted: var(--ekoia-surface-muted); --muted-foreground: var(--ekoia-text-muted);
 --accent: var(--ekoia-surface-selected); --accent-foreground: var(--ekoia-text);
 --border: var(--ekoia-border); --input: var(--ekoia-border-strong); --ring: var(--ekoia-focus);
 --destructive: var(--ekoia-danger); --radius: .75rem;
 --sidebar: var(--ekoia-surface-rail); --sidebar-foreground: var(--ekoia-text);
 --sidebar-primary: var(--ekoia-action); --sidebar-primary-foreground: var(--ekoia-on-action);
 --sidebar-accent: var(--ekoia-surface-selected); --sidebar-accent-foreground: var(--ekoia-text);
 --sidebar-border: var(--ekoia-border); --sidebar-ring: var(--ekoia-focus);
 --chart-1: #163f43; --chart-2: #4e8d86; --chart-3: #f0ac89;
 --chart-4: #97b7a5; --chart-5: #bb7050;
}
[data-theme="ekoia"].dark,
[data-theme="ekoia"] .rd-app.is-dark {
 --ekoia-primitive-canvas: #111311;
 --ekoia-primitive-surface: #181b19;
 --ekoia-primitive-rail: rgba(20, 23, 21, .88);
 --ekoia-primitive-queue: rgba(23, 26, 24, .96);
 --ekoia-primitive-topbar: rgba(24, 27, 25, .78);
 --ekoia-primitive-text: #f1f3f1;
 --ekoia-primitive-text-muted: #a7ada8;
 --ekoia-primitive-text-subtle: #8d948f;
 --ekoia-primitive-border: rgba(235, 242, 237, .1);
 --ekoia-primitive-border-strong: rgba(235, 242, 237, .18);
 --ekoia-primitive-surface-muted: #222623;
 --ekoia-primitive-surface-panel: #1d211e;
 --ekoia-primitive-surface-selected: #292e2b;
 --ekoia-primitive-action: #59b99e;
 --ekoia-primitive-action-hover: #71cbb0;
 --ekoia-primitive-action-subtle: #203b33;
 --ekoia-primitive-ai: #67c9ab;
 --ekoia-primitive-ai-subtle: #1d3930;
 --ekoia-eko-action-border: color-mix(in srgb, var(--ekoia-ai) 22%, transparent);
 --ekoia-primitive-priority: #e08377;
 --ekoia-primitive-message-incoming: #242825;
 --ekoia-primitive-message-outgoing: #20312b;
 --ekoia-primitive-material: rgba(31, 35, 32, .9);
 --ekoia-primitive-material-solid: #202421;
 --ekoia-primitive-elevation-menu: 0 22px 60px rgba(0, 0, 0, .38), 0 3px 12px rgba(0, 0, 0, .22);
 --ekoia-primitive-elevation-float: 0 18px 48px rgba(0, 0, 0, .28), 0 2px 8px rgba(0, 0, 0, .18);
 --ekoia-on-action: #111311;
 --ekoia-surface-opaque: var(--ekoia-primitive-surface);
 --ekoia-contrast-border: rgba(241, 243, 241, .55);
 --ekoia-contrast-border-strong: rgba(241, 243, 241, .7);
 --ekoia-elevation-contrast-focus: 0 0 0 3px var(--ekoia-focus);
 --ekoia-elevation-contrast-surface: 0 0 0 1px var(--ekoia-contrast-border-strong), 0 12px 30px rgba(0, 0, 0, .18);
 --ekoia-action-strong-hover: var(--ekoia-primitive-action-hover);
 --ekoia-logo-fill: linear-gradient(145deg, #3d9a82, #205f50);
 --ekoia-account-foreground: #18211d;
 --ekoia-account-background: #d7e7df;
 --ekoia-avatar-foreground: #b8d4c9;
 --ekoia-avatar-background: #263a33;
 --ekoia-avatar-apricot-foreground: #dfb7a8;
 --ekoia-avatar-apricot-background: #3c2e29;
 --ekoia-avatar-blue-foreground: #b9c9dc;
 --ekoia-avatar-blue-background: #293440;
 --ekoia-channel-badge-background: var(--ekoia-primitive-material-solid);
 --ekoia-status-control-background: rgba(31, 35, 32, .84);
 --ekoia-status-control-border: var(--ekoia-primitive-border);
 --ekoia-publication-background: var(--ekoia-primitive-surface-panel);
 --ekoia-composer-fade: linear-gradient(180deg, transparent, rgba(24, 27, 25, .9) 34%, var(--ekoia-primitive-surface) 78%);
 --ekoia-composer-border: var(--ekoia-primitive-border);
 --ekoia-composer-background: rgba(31, 35, 32, .84);
 --ekoia-send-fill: linear-gradient(180deg, var(--ekoia-primitive-action-hover), var(--ekoia-primitive-action));
 --ekoia-studio-border: var(--ekoia-primitive-border);
 --ekoia-studio-background: rgba(28, 32, 29, .94);
 --ekoia-context-strip-background: rgba(24, 28, 25, .7);
 --ekoia-eko-compose-fade: linear-gradient(180deg, rgba(29,33,30,0), rgba(29,33,30,.97) 20%);
 --ekoia-prompt-background: var(--ekoia-primitive-material-solid);
 --ekoia-question-background: var(--ekoia-primitive-material-solid);
 --ekoia-correction-background: var(--ekoia-primitive-material-solid);
 --ekoia-context-detail-border: var(--ekoia-primitive-ai);
 --ekoia-context-detail-background: var(--ekoia-primitive-ai-subtle);
 --ekoia-relation-background: rgba(28, 32, 29, .94);
 --ekoia-relation-border: var(--ekoia-primitive-border);
 --ekoia-open-record-background: var(--ekoia-primitive-surface-panel);
 --ekoia-elevation-logo: 0 5px 16px rgba(0, 0, 0, .3), inset 0 1px rgba(255, 255, 255, .22);
 --ekoia-elevation-message: inset 0 0 0 .5px var(--ekoia-primitive-border);
 --ekoia-elevation-composer: var(--ekoia-primitive-elevation-float), inset 0 0 0 .5px rgba(60, 60, 67, .1), inset 0 1px rgba(255, 255, 255, .85);
 --ekoia-elevation-mobile-rail: 0 -1px var(--ekoia-primitive-border);
 --ekoia-elevation-contrast-selection: inset 0 0 0 1px var(--ekoia-primitive-action);
 --ekoia-canvas: var(--ekoia-primitive-canvas);
 --ekoia-surface: var(--ekoia-primitive-surface);
 --ekoia-surface-rail: var(--ekoia-primitive-rail);
 --ekoia-surface-queue: var(--ekoia-primitive-queue);
 --ekoia-surface-topbar: var(--ekoia-primitive-topbar);
 --ekoia-surface-muted: var(--ekoia-primitive-surface-muted);
 --ekoia-surface-panel: var(--ekoia-primitive-surface-panel);
 --ekoia-surface-selected: var(--ekoia-primitive-surface-selected);
 --ekoia-surface-material: var(--ekoia-primitive-material);
 --ekoia-surface-material-solid: var(--ekoia-primitive-material-solid);
 --ekoia-text: var(--ekoia-primitive-text);
 --ekoia-text-muted: var(--ekoia-primitive-text-muted);
 --ekoia-text-subtle: var(--ekoia-primitive-text-subtle);
 --ekoia-border: var(--ekoia-primitive-border);
 --ekoia-border-strong: var(--ekoia-primitive-border-strong);
 --ekoia-action: var(--ekoia-primitive-action);
 --ekoia-action-hover: var(--ekoia-primitive-action-hover);
 --ekoia-action-subtle: var(--ekoia-primitive-action-subtle);
 --ekoia-focus: #a9d5cb;
 --ekoia-danger: #e97769;
 --ekoia-ai: var(--ekoia-primitive-ai);
 --ekoia-ai-subtle: var(--ekoia-primitive-ai-subtle);
 --ekoia-priority: var(--ekoia-primitive-priority);
 --ekoia-message-incoming: var(--ekoia-primitive-message-incoming);
 --ekoia-message-outgoing: var(--ekoia-primitive-message-outgoing);
 --ekoia-elevation-menu: var(--ekoia-primitive-elevation-menu);
 --ekoia-elevation-float: var(--ekoia-primitive-elevation-float);
 /* Repeat dependent aliases for the supported nested dark composition too. */
 --background: var(--ekoia-canvas); --foreground: var(--ekoia-text);
 --card: var(--ekoia-surface); --card-foreground: var(--ekoia-text);
 --popover: var(--ekoia-surface-opaque); --popover-foreground: var(--ekoia-text);
 --primary: var(--ekoia-action); --primary-foreground: var(--ekoia-on-action);
 --secondary: var(--ekoia-surface-muted); --secondary-foreground: var(--ekoia-text);
 --muted: var(--ekoia-surface-muted); --muted-foreground: var(--ekoia-text-muted);
 --accent: var(--ekoia-surface-selected); --accent-foreground: var(--ekoia-text);
 --border: var(--ekoia-border); --input: var(--ekoia-border-strong); --ring: var(--ekoia-focus);
 --destructive: var(--ekoia-danger);
 --sidebar: var(--ekoia-surface-rail); --sidebar-foreground: var(--ekoia-text);
 --sidebar-primary: var(--ekoia-action); --sidebar-primary-foreground: var(--ekoia-on-action);
 --sidebar-accent: var(--ekoia-surface-selected); --sidebar-accent-foreground: var(--ekoia-text);
 --sidebar-border: var(--ekoia-border); --sidebar-ring: var(--ekoia-focus);
}
[data-theme="ekoia"] :is([data-slot="button"], [data-slot="tabs-trigger"], [data-slot="toggle"], [data-slot="select-trigger"], [data-slot="checkbox"], [data-slot="switch"]) {
 transition-property: background-color, color, border-color, box-shadow, scale, translate;
 transition-duration: var(--ekoia-motion-reveal);
 transition-timing-function: var(--ekoia-ease-settle);
 -webkit-tap-highlight-color: transparent;
}
[data-theme="ekoia"] :is([data-slot="button"], [data-slot="tabs-trigger"], [data-slot="toggle"], [data-slot="select-trigger"]):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]):not([data-variant="link"]):active {
 scale: .98;
 translate: 0 1px;
 transition-duration: var(--ekoia-motion-press);
 box-shadow: inset 0 2px 3px rgb(0 0 0 / .12);
}
[data-theme="ekoia"] :is([data-slot="button"], [data-slot="tabs-trigger"], [data-slot="label"]) { font-weight: 600; }
[data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"], [data-slot="select-trigger"]) {
 background-color: var(--card);
 transition: border-color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease, background-color var(--ekoia-motion-state) ease;
}
[data-theme="ekoia"] :is(button, input, textarea, select, a, [role="checkbox"], [role="switch"], [role="combobox"]):focus-visible {
 outline: 2px solid var(--ring);
 outline-offset: 3px;
}
[data-theme="ekoia"] [data-slot="card"] { border-radius: 1rem; box-shadow: 0 1px 2px rgb(25 30 28 / .03), 0 6px 20px rgb(25 30 28 / .025); }
[data-theme="ekoia"] [data-slot="card-title"] { letter-spacing: -.035em; font-weight: 650; line-height: 1.35; }
[data-theme="ekoia"] [data-slot="badge"] { font-weight: 600; }
[data-theme="ekoia"] :is(svg.lucide, svg.tabler-icon) { stroke-width: 1.75; }
[data-theme="ekoia"] [data-slot="switch-thumb"] { transition-property: transform, translate, scale, background-color, box-shadow; transition-duration: var(--ekoia-motion-travel); transition-timing-function: var(--ekoia-ease-settle); }
/* Neutral surfaces and more deliberate selected states. */
[data-theme="ekoia"] :is([data-slot="button"], [data-slot="input"], [data-slot="textarea"], [data-slot="select-trigger"]) { border-radius: .5rem; }
[data-theme="ekoia"] [data-slot="button"][data-variant="default"]:not(:disabled):not([aria-disabled="true"]):not(:active) { box-shadow: inset 0 1px 0 rgb(255 255 255 / .12), 0 2px 3px rgb(22 63 67 / .13); }
[data-theme="ekoia"] [data-slot="button"][data-variant="outline"] { background-color: var(--card); }
[data-theme="ekoia"] [data-slot="button"]:is(:disabled, [aria-disabled="true"]) { background: var(--muted); color: var(--muted-foreground); box-shadow: none; opacity: 1; }
[data-theme="ekoia"] [data-slot="tabs-list"][data-variant="default"] { padding: 4px; border-radius: .625rem; }
[data-theme="ekoia"] [data-slot="tabs-list"][data-variant="default"] [data-slot="tabs-trigger"][data-state="active"] { background: var(--card); color: var(--primary); box-shadow: 0 1px 3px rgb(25 30 28 / .12); border-radius: .375rem; }
@media (hover: hover) {
 [data-theme="ekoia"] [data-slot="button"][data-variant="default"]:not(:disabled):not([aria-disabled="true"]):hover { background: color-mix(in srgb, var(--primary), var(--primary-foreground) 9%); }
 [data-theme="ekoia"] [data-slot="button"][data-variant="outline"]:not(:disabled):not([aria-disabled="true"]):hover { background: var(--accent); border-color: var(--input); }
 [data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"]):not(:disabled):not([aria-invalid="true"]):hover { border-color: var(--ring); }
}
/* One precise focus edge, with a soft halo instead of stacked rings. */
[data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"], [data-slot="select-trigger"]):focus-visible {
 border-color: var(--ring);
 outline: 1px solid var(--ring);
 outline-offset: 0;
 box-shadow: 0 0 0 4px color-mix(in srgb, var(--ring) 10%, transparent);
}
[data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"], [data-slot="select-trigger"])[aria-invalid="true"]:focus-visible {
 border-color: var(--destructive); outline-color: var(--destructive);
 box-shadow: 0 0 0 4px color-mix(in srgb, var(--destructive) 12%, transparent);
}
[data-theme="ekoia"] [data-slot="switch"] { transition-duration: var(--ekoia-motion-travel); }
[data-theme="ekoia"] [data-slot="switch-thumb"] { background: var(--card); box-shadow: 0 1px 3px rgb(0 0 0 / .16); }
[data-theme="ekoia"].dark [data-slot="switch-thumb"] { background: var(--foreground); }
[data-theme="ekoia"] [data-slot="toggle"][data-state="on"] { background: var(--secondary); color: var(--primary); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--primary) 16%, transparent); }
/* A continuous selection surface; measurements work in both orientations and RTL. */
[data-theme="ekoia"] [data-slot="tabs-list"][data-sliding="true"] { position: relative; isolation: isolate; }
[data-theme="ekoia"] [data-slot="tabs-list"][data-sliding="true"]::before {
 content: ""; position: absolute; left: 0; top: 0; pointer-events: none;
 width: var(--tab-w); height: var(--tab-h);
 transform: translate(var(--tab-x), var(--tab-y));
 border-radius: .375rem; background: var(--card);
 box-shadow: 0 1px 3px rgb(25 30 28 / .12);
 transition: transform var(--ekoia-motion-travel) var(--ekoia-ease-settle), width var(--ekoia-motion-travel) var(--ekoia-ease-settle), height var(--ekoia-motion-travel) var(--ekoia-ease-settle);
 z-index: -1;
}
[data-theme="ekoia"] [data-slot="tabs-list"][data-variant="default"][data-sliding="true"] [data-slot="tabs-trigger"][data-state] {
 background: transparent; box-shadow: none; scale: none; translate: none;
}
[data-theme="ekoia"] [data-slot="switch"]:not(:disabled):not([aria-disabled="true"]):active [data-slot="switch-thumb"] {
 scale: 1.1 .92;
 transition-duration: var(--ekoia-motion-press);
}
/* Selection and entry: crisp marks, quiet surfaces, no drag latency. */
[data-theme="ekoia"] :is([data-slot="checkbox"], [data-slot="radio-group-item"]) { transition: background-color var(--ekoia-motion-state) ease, border-color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] :is([data-slot="checkbox-indicator"], [data-slot="radio-group-indicator"]) { animation: ekoia-mark var(--ekoia-motion-state) var(--ekoia-ease-settle); }
@keyframes ekoia-mark { from { opacity: 0; scale: .75; } to { opacity: 1; scale: 1; } }
[data-theme="ekoia"] [data-slot="radio-group-item"][data-state="checked"] { border-color: var(--primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 7%, transparent); }
[data-theme="ekoia"] [data-slot="slider-thumb"] { background: var(--card); box-shadow: 0 1px 4px rgb(0 0 0 / .12); transition: box-shadow var(--ekoia-motion-state) ease, scale var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="slider-thumb"]:not([data-disabled]):is(:active,:focus-visible) { outline: 1px solid var(--ring); outline-offset: 2px; box-shadow: 0 0 0 5px color-mix(in srgb, var(--ring) 12%, transparent); }
[data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"]):disabled { background: var(--muted); opacity: .65; }
[data-theme="ekoia"] .ekoia-field [data-slot="label"] { transition: color var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] .ekoia-field:focus-within [data-slot="label"] { color: var(--primary); }
[data-theme="ekoia"] .ekoia-choice { transition: border-color var(--ekoia-motion-state) ease, background-color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] .ekoia-choice:has([data-state="checked"]) { border-color: var(--primary); background: color-mix(in srgb, var(--primary) 3%, var(--card)); box-shadow: 0 0 0 1px var(--primary); }
/* Navigation and overlays share spacing and elevation, with visible keyboard focus. */
[data-theme="ekoia"] :is([data-slot="dropdown-menu-item"], [data-slot="context-menu-item"], [data-slot="select-item"], [data-slot="command-item"]) { min-height: 2.25rem; border-radius: .375rem; }
[data-theme="ekoia"] :is([data-slot="dropdown-menu-item"], [data-slot="context-menu-item"], [data-slot="select-item"])[data-highlighted] { background: var(--accent); color: var(--accent-foreground); }
[data-theme="ekoia"] [data-slot="sheet-content"] { box-shadow: -12px 0 48px rgb(0 0 0 / .08); transition-duration: var(--ekoia-motion-travel); animation-duration: var(--ekoia-motion-travel); animation-timing-function: var(--ekoia-ease-settle); }
[data-theme="ekoia"] :is([data-slot="dialog-overlay"], [data-slot="alert-dialog-overlay"], [data-slot="sheet-overlay"], [data-slot="drawer-overlay"]) { background: rgb(15 22 20 / .3); backdrop-filter: blur(2px); }
[data-theme="ekoia"] [data-slot="tooltip-content"] { border-radius: .375rem; box-shadow: 0 3px 12px rgb(0 0 0 / .1); animation-duration: var(--ekoia-motion-dismiss); animation-timing-function: var(--ekoia-ease-settle); }
[data-theme="ekoia"] [data-slot="accordion-trigger"] { padding-block: 1.125rem; text-decoration: none; font-weight: 600; }
[data-theme="ekoia"] [data-slot="accordion-content"] { color: var(--muted-foreground); line-height: 1.7; }
[data-theme="ekoia"] [data-slot="sidebar-menu-button"] { transition: background-color var(--ekoia-motion-state) ease, color var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="sidebar-menu-button"][data-active="true"] { box-shadow: inset 2px 0 var(--primary); }
/* Reading: aligned figures, gentle separation, specific status treatment. */
[data-theme="ekoia"] [data-slot="table-head"] { height: 2.75rem; font-size: .75rem; font-weight: 600; color: var(--muted-foreground); background: var(--background); }
[data-theme="ekoia"] [data-slot="table-cell"] { padding-block: 1rem; font-variant-numeric: tabular-nums; }
[data-theme="ekoia"] .compact [data-slot="table-cell"] { padding-block: .625rem; }
[data-theme="ekoia"] [data-slot="table-row"] { transition: background-color var(--ekoia-motion-dismiss) ease; }
[data-theme="ekoia"] [data-slot="table-row"][data-state="selected"] { background: color-mix(in srgb, var(--primary) 5%, var(--card)); }
[data-theme="ekoia"] [data-slot="progress"] { background: var(--muted); height: .375rem; }
[data-theme="ekoia"] [data-slot="progress-indicator"] { transition: transform var(--ekoia-motion-travel) var(--ekoia-ease-settle); }
[data-theme="ekoia"] [data-slot="alert"] { border-radius: .75rem; line-height: 1.6; }
[data-theme="ekoia"] [data-slot="alert"].text-destructive { background: color-mix(in srgb, var(--destructive) 3%, var(--card)); border-color: color-mix(in srgb, var(--destructive) 25%, var(--border)); }
[data-theme="ekoia"] [data-slot="avatar-fallback"] { background: var(--secondary); color: var(--secondary-foreground); font-weight: 600; }
[data-theme="ekoia"] [data-slot="skeleton"] { background: var(--muted); animation-duration: var(--ekoia-motion-ambient); }
[data-theme="ekoia"] [data-slot="empty"] { border-radius: 1rem; }
[data-theme="ekoia"] [data-sonner-toast] { font-family: var(--ui-font); border-radius: .75rem; box-shadow: 0 4px 24px rgb(0 0 0 / .08); }
/* Shared entry and grouped controls. One focus surface per control. */
[data-theme="ekoia"] :is([data-slot="native-select"], [data-slot="input-group"], [data-slot="combobox-chips"]) { border-radius: .5rem; background: var(--card); transition: border-color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="input-group"]:has([data-slot="input-group-control"]:focus-visible),
[data-theme="ekoia"] [data-slot="native-select"]:focus-visible,
[data-theme="ekoia"] [data-slot="combobox-chips"]:focus-within {
 border-color: var(--ring); outline: 1px solid var(--ring); outline-offset: 0;
 box-shadow: 0 0 0 4px color-mix(in srgb, var(--ring) 10%, transparent);
}
[data-theme="ekoia"] [data-slot="input-group"] [data-slot="input-group-control"]:focus-visible { outline: none; box-shadow: none; }
[data-theme="ekoia"] [data-slot="input-group"]:has([aria-invalid="true"]) { border-color: var(--destructive); outline-color: var(--destructive); box-shadow: 0 0 0 4px color-mix(in srgb, var(--destructive) 10%, transparent); }
[data-theme="ekoia"] [data-slot="input-otp-slot"] { background: var(--card); font-variant-numeric: tabular-nums; transition: border-color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="input-otp-slot"][data-active="true"] { border-color: var(--ring); outline: 1px solid var(--ring); outline-offset: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--ring) 10%, transparent); }
[data-theme="ekoia"] [data-slot="input-otp-slot"][aria-invalid="true"] { border-color: var(--destructive); outline-color: var(--destructive); }
[data-theme="ekoia"] [data-slot="button-group"]:not([data-orientation="vertical"]) > :is([data-slot="button"], [data-slot="input"], [data-slot="select-trigger"]):not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
[data-theme="ekoia"] [data-slot="button-group"]:not([data-orientation="vertical"]) > :is([data-slot="button"], [data-slot="input"], [data-slot="select-trigger"]):not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
[data-theme="ekoia"] [data-slot="button-group"][data-orientation="vertical"] > :is([data-slot="button"], [data-slot="input"], [data-slot="select-trigger"]):not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; }
[data-theme="ekoia"] [data-slot="button-group"][data-orientation="vertical"] > :is([data-slot="button"], [data-slot="input"], [data-slot="select-trigger"]):not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
[data-theme="ekoia"] [data-slot="button-group"] > [data-slot="button"]:active { scale: none; translate: none; }
[data-theme="ekoia"] :is([data-slot="field"], [data-slot="form-item"]):focus-within :is([data-slot="field-label"], [data-slot="form-label"]) { color: var(--primary); }
[data-theme="ekoia"] :is([data-slot="field-description"], [data-slot="form-description"], [data-slot="item-description"], [data-slot="attachment-description"]) { line-height: 1.55; }
[data-theme="ekoia"] [data-slot="toggle-group-item"] { transition: background-color var(--ekoia-motion-state) ease, color var(--ekoia-motion-state) ease, box-shadow var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="toggle-group-item"][data-state="on"] { background: var(--secondary); color: var(--primary); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--primary) 12%, transparent); }

/* Complete menu family. Open settles gently; dismissal gets out of the way. */
[data-theme="ekoia"] :is([data-slot="popover-content"], [data-slot="hover-card-content"], [data-slot="combobox-content"], [data-slot="context-menu-content"], [data-slot="context-menu-sub-content"], [data-slot="dropdown-menu-content"], [data-slot="dropdown-menu-sub-content"], [data-slot="menubar-content"], [data-slot="menubar-sub-content"], [data-slot="select-content"], [data-slot="dialog-content"], [data-slot="alert-dialog-content"]) {
 border-radius: .75rem; border-color: var(--border);
 box-shadow: 0 3px 8px rgb(0 0 0 / .04), 0 16px 48px rgb(0 0 0 / .09);
 animation-duration: var(--ekoia-motion-reveal); animation-timing-function: var(--ekoia-ease-settle);
}
[data-theme="ekoia"] :is([data-slot="popover-content"], [data-slot="hover-card-content"], [data-slot="combobox-content"], [data-slot="context-menu-content"], [data-slot="dropdown-menu-content"], [data-slot="menubar-content"], [data-slot="select-content"], [data-slot="dialog-content"], [data-slot="alert-dialog-content"], [data-slot="sheet-content"])[data-state="closed"] { animation-duration: var(--ekoia-motion-dismiss); animation-timing-function: var(--ekoia-ease-exit); }
[data-theme="ekoia"] :is([data-slot="combobox-item"], [data-slot="menubar-item"], [data-slot="menubar-checkbox-item"], [data-slot="menubar-radio-item"], [data-slot="dropdown-menu-checkbox-item"], [data-slot="dropdown-menu-radio-item"], [data-slot="context-menu-checkbox-item"], [data-slot="context-menu-radio-item"]) { min-height: 2.25rem; border-radius: .375rem; transition: background-color var(--ekoia-motion-dismiss) ease, color var(--ekoia-motion-dismiss) ease; }
[data-theme="ekoia"] :is([data-slot="menubar-trigger"], [data-slot="navigation-menu-trigger"], [data-slot="navigation-menu-link"], [data-slot="breadcrumb-link"], [data-slot="pagination-link"]) { transition: background-color var(--ekoia-motion-state) ease, color var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="accordion-content"][data-state="open"] { animation: ekoia-expand var(--ekoia-motion-travel) var(--ekoia-ease-settle); }
[data-theme="ekoia"] [data-slot="accordion-content"][data-state="closed"] { animation: ekoia-collapse var(--ekoia-motion-state) var(--ekoia-ease-exit); }
@keyframes ekoia-expand { from { height: 0; opacity: .4; } to { height: var(--radix-accordion-content-height); opacity: 1; } }
@keyframes ekoia-collapse { from { height: var(--radix-accordion-content-height); opacity: 1; } to { height: 0; opacity: 0; } }

/* Content primitives remain quiet until there is an actual interaction. */
[data-theme="ekoia"] :is([data-slot="item"], [data-slot="attachment"], [data-slot="bubble-content"]) { border-radius: .75rem; }
[data-theme="ekoia"] :is(a[data-slot="item"], button[data-slot="attachment"], [data-slot="attachment-trigger"]) { transition: background-color var(--ekoia-motion-state) ease, border-color var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="marker"] { font-weight: 500; }
[data-theme="ekoia"] [data-slot="message-footer"] { color: var(--muted-foreground); }
[data-theme="ekoia"] [data-slot="kbd"] { background: var(--muted); border: 1px solid var(--border); box-shadow: 0 1px 0 var(--border); font-variant-numeric: tabular-nums; }
[data-theme="ekoia"] [data-slot="calendar"] { border-radius: .75rem; font-variant-numeric: tabular-nums; }
[data-theme="ekoia"] [data-slot="calendar"] [data-range-middle="true"] { border-radius: 0; box-shadow: none; }
[data-theme="ekoia"] [data-slot="calendar"] [data-slot="button"]:active { scale: none; translate: none; }
[data-theme="ekoia"] [data-slot="scroll-area-thumb"] { background: color-mix(in srgb, var(--foreground) 22%, transparent); }
[data-theme="ekoia"] [data-slot="resizable-handle"] { transition: background-color var(--ekoia-motion-state) ease; }
[data-theme="ekoia"] [data-slot="resizable-handle"]:is(:hover,:focus-visible) { background: var(--ring); }

/* Ekoia's compact controls keep primitive behavior and share one visual rhythm. */
[data-theme="ekoia"] .ekoia-control-icon {
 width: var(--ekoia-control-icon-size);
 height: var(--ekoia-control-icon-size);
 display: inline-flex;
 flex: 0 0 auto;
 align-items: center;
 justify-content: center;
}
[data-theme="ekoia"] .ekoia-control-icon > svg { width: 100%; height: 100%; }
[data-theme="ekoia"] .ekoia-action-menu { min-width: 12rem; }
[data-theme="ekoia"] [data-ekoia-control="menu-item"] { min-height: 2.25rem; }
[data-theme="ekoia"] [data-ekoia-control="status-trigger"] { gap: .375rem; }
[data-theme="ekoia"] .ekoia-status-indicator {
 width: .375rem;
 height: .375rem;
 flex: 0 0 auto;
 border-radius: 999px;
 background: var(--ekoia-status-indicator);
}
[data-theme="ekoia"] .ekoia-channel-mark { gap: .375rem; }
[data-theme="ekoia"] .ekoia-channel-mark[data-compact] { padding: .25rem; }
[data-theme="ekoia"] .ekoia-relation-avatar-shell {
 --ekoia-avatar-channel-size: 1rem;
 --ekoia-avatar-channel-icon-size: .625rem;
 position: relative;
 width: 2rem;
 height: 2rem;
 display: inline-flex;
 flex: 0 0 auto;
 overflow: visible;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell[data-size="sm"] {
 --ekoia-avatar-channel-size: .875rem;
 --ekoia-avatar-channel-icon-size: .5rem;
 width: 1.5rem;
 height: 1.5rem;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell[data-size="default"] {
 --ekoia-avatar-channel-size: 1rem;
 --ekoia-avatar-channel-icon-size: .625rem;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell[data-size="lg"] {
 --ekoia-avatar-channel-size: 1.125rem;
 --ekoia-avatar-channel-icon-size: .75rem;
 width: 2.5rem;
 height: 2.5rem;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell > [data-slot="avatar"] {
 width: 100%;
 height: 100%;
 overflow: hidden;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell > [data-slot="avatar-badge"] {
 position: absolute;
 right: -.125rem;
 bottom: -.125rem;
 width: var(--ekoia-avatar-channel-size);
 height: var(--ekoia-avatar-channel-size);
 overflow: visible;
 background: var(--ekoia-channel-badge-background);
 color: var(--ekoia-text-muted);
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell > [data-slot="avatar-badge"] .ekoia-channel-mark {
 width: 100%;
 height: 100%;
 padding: 0;
 border: 0;
 border-radius: 999px;
 background: transparent;
}
[data-theme="ekoia"] .ekoia-relation-avatar-shell > [data-slot="avatar-badge"] .ekoia-control-icon {
 width: var(--ekoia-avatar-channel-icon-size);
 height: var(--ekoia-avatar-channel-icon-size);
}

@media (max-width: 720px), (pointer: coarse) {
 [data-theme="ekoia"] :is([data-slot="button"], [data-slot="input"], [data-slot="select-trigger"], [data-slot="dialog-close"]) { min-width: 44px; min-height: 44px; }
 [data-theme="ekoia"] [data-ekoia-control="icon-button"] {
  min-width: 44px;
  min-height: 44px;
 }
 [data-theme="ekoia"] [data-ekoia-control="status-trigger"] { min-height: 44px; }
 [data-theme="ekoia"] [data-ekoia-control="menu-item"] { min-height: 44px; }
}
@media (prefers-contrast: more) {
 [data-theme="ekoia"], [data-theme="ekoia"].dark, [data-theme="ekoia"] .rd-app.is-dark {
  --border: var(--ekoia-contrast-border-strong);
  --input: var(--ekoia-contrast-border-strong);
 }
}
/* The user's motion preference wins over every component rule. */
@media (prefers-reduced-motion: reduce) {
 [data-theme="ekoia"] *, [data-theme="ekoia"] *::before, [data-theme="ekoia"] *::after { transition-duration: 0s !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
 [data-theme="ekoia"] :is([data-slot="button"], [data-slot="tabs-trigger"], [data-slot="toggle"], [data-slot="select-trigger"]):active { scale: none !important; translate: none !important; }
 [data-theme="ekoia"] [data-slot="switch"]:active [data-slot="switch-thumb"] { scale: none !important; }
}

/* Shared typography roles; Manrope approved for all interface text. */
[data-theme="ekoia"] {
 --ekoia-type-label: 13px;
 --ekoia-type-caption: 12px;
 font-family: var(--ekoia-font-sans);
 font-optical-sizing: auto;
}
[data-theme="ekoia"] :is(button, input, textarea, select) { font-family: inherit; }
[data-theme="ekoia"] [data-slot="label"] { font-size: var(--ekoia-type-label); line-height: 1.45; }
[data-theme="ekoia"] :is([data-slot="tooltip-content"], [data-slot="dropdown-menu-label"], [data-slot="select-label"]) { font-size: var(--ekoia-type-caption); line-height: 1.5; letter-spacing: 0; }
@media (max-width: 720px) {
 [data-theme="ekoia"] :is([data-slot="input"], [data-slot="textarea"], [data-slot="select-trigger"]) { font-size: 16px; }
}
