/* Generated from Design/design.json. Product identity is token-only; shared shell anatomy stays in Core.Portal.Chrome. */
:root {
    color-scheme: light;
    --brand-primary: #1f6f78;
    --brand-primary-hover: #195c64;
    --brand-primary-active: #124950;
    --brand-accent: #c79a43;
    --portal-brand-accent: var(--brand-primary);
    --portal-brand-accent-hover: var(--brand-primary-hover);
    --portal-accent: var(--brand-primary);
    --cds-brand-accent: var(--brand-primary);
    --cds-brand-accent-hover: var(--brand-primary-hover);
    --portal-primary: var(--brand-primary);
    --portal-primary-strong: var(--brand-primary-active);
    --portal-focus-ring: color-mix(in srgb, var(--brand-primary) 30%, transparent);
    --portal-ink: #17242a;
    --portal-muted: #627078;
    --portal-surface: #ffffff;
    --portal-canvas: #f5f7f7;
    --cds-surface-page: #f5f7f7;
    --cds-surface-card: #ffffff;
    --cds-surface-toolbar: #f8fbfb;
    --portal-border: #d7e0e2;
    --portal-input-surface: #ffffff;
    --portal-input-border: #c9d5d8;
    --portal-on-primary: #ffffff;
    --portal-topbar: #10272c;
    --portal-topbar-border: rgba(255, 255, 255, 0.08);
    --portal-on-topbar: #ffffff;
    --portal-topbar-muted: rgba(255, 255, 255, 0.78);
    --portal-topbar-subtle: rgba(255, 255, 255, 0.72);
    --portal-topbar-chip-bg: rgba(255, 255, 255, 0.08);
    --portal-topbar-hover-bg: rgba(255, 255, 255, 0.10);
    --portal-soft-surface: #edf4f4;
    --portal-soft-surface-strong: #e4eeee;
    --portal-card-soft: #fbfcfc;
    --portal-callout-surface: #f4f8f8;
    --portal-filter-surface: #f7fafa;
    --portal-warning: #b57d15;
    --portal-warning-surface: #fff7e6;
    --portal-warning-strong: #674400;
    --portal-status-ready-bg: #e4f3ec;
    --portal-status-ready-text: #216341;
    --portal-status-pending-bg: #fff4dc;
    --portal-status-pending-text: #7a5200;
    --portal-status-active-bg: #e5f2f4;
    --portal-status-active-text: #15555d;
    --portal-status-planned-bg: #edf0f2;
    --portal-status-planned-text: #4d5b63;
    --portal-success-surface: #e8f5ee;
    --portal-error-surface: #fbeceb;
    --portal-alert-surface: #fff4dc;
    --portal-alert-info-surface: #e7f3f5;
    --portal-alert-info-border: #8cc3ca;
    --portal-alert-info-text: #124950;
    --portal-alert-danger-surface: #fbeceb;
    --portal-alert-danger-text: #842c28;
    --portal-alert-success-surface: #e8f5ee;
    --portal-alert-success-border: #9acdb1;
    --portal-alert-success-text: #216341;
    --portal-panel-shadow: 0 16px 40px rgba(18, 73, 80, 0.15);
    --portal-overlay-backdrop: rgba(10, 30, 34, 0.48);
    --portal-overlay-shadow: 0 24px 60px rgba(10, 30, 34, 0.24);
    --portal-interactive-shadow: 0 8px 18px rgba(18, 73, 80, 0.08);
    --portal-public-brand-background: linear-gradient(145deg, #153f47 0%, #1f6f78 58%, #c79a43 140%);
    --portal-public-brand-color: #ffffff;
    --kendo-color-primary: var(--brand-primary);
    --kendo-color-primary-hover: var(--brand-primary-hover);
    --kendo-color-primary-active: var(--brand-primary-active);
    --kendo-color-app-surface: var(--portal-canvas);
    --kendo-color-surface: var(--portal-surface);
    --kendo-color-on-app-surface: var(--portal-ink);
    --kendo-color-subtle: var(--portal-muted);
    --kendo-color-border: var(--portal-border);
}

html[data-theme="dark"] {
    color-scheme: dark;
    --brand-primary: #79bec4;
    --brand-primary-hover: #96d0d5;
    --brand-primary-active: #b4e0e3;
    --brand-accent: #dab76d;
    --portal-brand-accent: var(--brand-primary);
    --portal-brand-accent-hover: var(--brand-primary-hover);
    --portal-accent: var(--brand-primary);
    --cds-brand-accent: var(--brand-primary);
    --cds-brand-accent-hover: var(--brand-primary-hover);
    --portal-primary: var(--brand-primary);
    --portal-primary-strong: var(--brand-primary-active);
    --portal-ink: #e8eef0;
    --portal-muted: #9fadb2;
    --portal-surface: #1b2327;
    --portal-canvas: #11171a;
    --cds-surface-page: #11171a;
    --cds-surface-card: #1b2327;
    --cds-surface-toolbar: #20292d;
    --portal-border: rgba(255, 255, 255, 0.14);
    --portal-input-surface: #151d20;
    --portal-input-border: rgba(255, 255, 255, 0.18);
    --portal-on-primary: #0d2024;
    --portal-topbar: #091114;
    --portal-topbar-border: rgba(255, 255, 255, 0.07);
    --portal-on-topbar: #f4fbfc;
    --portal-topbar-muted: #c5d4d8;
    --portal-topbar-subtle: #9fb4b9;
    --portal-topbar-chip-bg: rgba(255, 255, 255, 0.08);
    --portal-topbar-hover-bg: rgba(255, 255, 255, 0.12);
    --portal-soft-surface: #222d31;
    --portal-soft-surface-strong: #29363b;
    --portal-card-soft: #1d272b;
    --portal-callout-surface: #202b2f;
    --portal-filter-surface: #202b2f;
    --portal-warning-surface: rgba(199, 154, 67, 0.16);
    --portal-warning-strong: #f1cf89;
    --portal-status-ready-bg: rgba(75, 178, 125, 0.17);
    --portal-status-ready-text: #a6debF;
    --portal-status-pending-bg: rgba(199, 154, 67, 0.17);
    --portal-status-pending-text: #f1cf89;
    --portal-status-active-bg: rgba(121, 190, 196, 0.17);
    --portal-status-active-text: #a8d9dd;
    --portal-status-planned-bg: rgba(255, 255, 255, 0.08);
    --portal-status-planned-text: #c1ccd0;
    --portal-success-surface: rgba(75, 178, 125, 0.16);
    --portal-error-surface: rgba(205, 85, 78, 0.15);
    --portal-alert-surface: rgba(199, 154, 67, 0.16);
    --portal-alert-info-surface: rgba(121, 190, 196, 0.15);
    --portal-alert-info-border: rgba(121, 190, 196, 0.42);
    --portal-alert-info-text: #a8d9dd;
    --portal-alert-danger-surface: rgba(205, 85, 78, 0.15);
    --portal-alert-danger-text: #f2aaa6;
    --portal-alert-success-surface: rgba(75, 178, 125, 0.16);
    --portal-alert-success-border: rgba(136, 213, 172, 0.42);
    --portal-alert-success-text: #a6debf;
    --portal-panel-shadow: 0 18px 44px rgba(0, 0, 0, 0.38);
    --portal-overlay-backdrop: rgba(0, 0, 0, 0.64);
    --portal-overlay-shadow: 0 24px 60px rgba(0, 0, 0, 0.48);
    --portal-interactive-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
    --portal-public-brand-background: linear-gradient(145deg, #0b1c20 0%, #174b52 62%, #735621 145%);
    --portal-public-brand-color: #ffffff;
    --kendo-color-primary: var(--brand-primary);
    --kendo-color-primary-hover: var(--brand-primary-hover);
    --kendo-color-primary-active: var(--brand-primary-active);
    --kendo-color-app-surface: var(--portal-canvas);
    --kendo-color-surface: var(--portal-surface);
    --kendo-color-on-app-surface: var(--portal-ink);
    --kendo-color-subtle: var(--portal-muted);
    --kendo-color-border: var(--portal-border);
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

@media (prefers-contrast: more) {
    :root { --portal-border: color-mix(in srgb, var(--portal-ink) 40%, transparent); }
}
