:root,
:root[data-theme="znode-dark"] {
    color-scheme: dark;

    --zn-color-scheme: dark;
    --zn-bg-app: #07101b;
    --zn-bg-app-member: #0b1018;
    --zn-bg-app-gradient-start: rgba(12, 23, 37, 0.98);
    --zn-bg-app-gradient-end: rgba(7, 16, 27, 1);
    --zn-bg-sidebar: #0a1421;
    --zn-bg-sidebar-alpha: rgba(10, 20, 33, 0.97);
    --zn-bg-surface: #101c2c;
    --zn-bg-surface-elevated: #0d1725;
    --zn-bg-surface-muted: #142236;
    --zn-bg-panel: linear-gradient(180deg, rgba(18, 27, 42, 0.98), rgba(15, 22, 35, 0.96));
    --zn-bg-surface-hover: rgba(255, 255, 255, 0.03);
    --zn-bg-surface-active: rgba(255, 255, 255, 0.05);
    --zn-bg-surface-faint: rgba(255, 255, 255, 0.02);
    --zn-bg-surface-raised: rgba(255, 255, 255, 0.035);
    --zn-surface-glint: rgba(255, 255, 255, 0.08);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.04);

    --zn-border: rgba(157, 183, 226, 0.14);
    --zn-border-soft: rgba(255, 255, 255, 0.06);
    --zn-border-muted: rgba(157, 183, 226, 0.1);
    --zn-border-strong: rgba(157, 183, 226, 0.24);

    --zn-text-primary: #ecf2ff;
    --zn-text-secondary: #95a4be;
    --zn-text-muted: #6e7d97;
    --zn-text-inverse: #0c1422;

    --zn-accent: #6f7dff;
    --zn-accent-hover: #7e8aff;
    --zn-accent-soft: rgba(111, 125, 255, 0.14);
    --zn-accent-surface: rgba(106, 120, 255, 0.12);
    --zn-accent-surface-strong: rgba(106, 120, 255, 0.16);
    --zn-accent-surface-lift: rgba(106, 120, 255, 0.22);
    --zn-accent-surface-muted: rgba(106, 120, 255, 0.08);
    --zn-accent-border: rgba(126, 138, 255, 0.28);
    --zn-accent-border-active: rgba(126, 138, 255, 0.26);
    --zn-accent-border-soft: rgba(126, 138, 255, 0.24);
    --zn-accent-border-subtle: rgba(126, 138, 255, 0.18);
    --zn-accent-border-focus: rgba(126, 138, 255, 0.3);
    --zn-accent-text: #dfe5ff;
    --zn-accent-text-muted: #dbe3ff;
    --zn-accent-text-strong: #edf1ff;
    --zn-accent-shadow: rgba(106, 120, 255, 0.14);

    --zn-success: #33c27f;
    --zn-success-soft-muted: rgba(51, 194, 127, 0.1);
    --zn-success-soft: rgba(51, 194, 127, 0.12);
    --zn-success-soft-strong: rgba(51, 194, 127, 0.16);
    --zn-success-border: rgba(51, 194, 127, 0.28);
    --zn-success-text: #dff8ea;
    --zn-warning: #e0a93b;
    --zn-warning-soft-muted: rgba(224, 169, 59, 0.11);
    --zn-warning-soft: rgba(224, 169, 59, 0.12);
    --zn-warning-soft-strong: rgba(224, 169, 59, 0.16);
    --zn-warning-border: rgba(224, 169, 59, 0.28);
    --zn-warning-border-strong: rgba(224, 169, 59, 0.3);
    --zn-warning-text: #fff1d6;
    --zn-danger: #ef6f7a;
    --zn-danger-soft: rgba(239, 111, 122, 0.12);
    --zn-danger-soft-strong: rgba(239, 111, 122, 0.16);
    --zn-danger-border: rgba(239, 111, 122, 0.32);
    --zn-danger-border-soft: rgba(239, 111, 122, 0.3);
    --zn-danger-border-strong: rgba(239, 111, 122, 0.46);
    --zn-danger-text: #ffdce0;
    --zn-danger-text-strong: #fff4f5;
    --zn-danger-surface: rgba(148, 44, 58, 0.18);
    --zn-danger-surface-hover: rgba(172, 48, 64, 0.24);
    --zn-danger-shadow: rgba(148, 44, 58, 0.12);
    --zn-success-ring: rgba(51, 194, 127, 0.08);
    --zn-warning-ring: rgba(224, 169, 59, 0.08);
    --zn-danger-ring: rgba(239, 111, 122, 0.08);

    --zn-shadow: 0 14px 34px rgba(2, 8, 15, 0.3);
    --zn-shadow-soft: 0 0 0 1px rgba(111, 125, 255, 0.08), 0 16px 34px rgba(6, 13, 24, 0.28);
    --zn-shadow-sidebar: 24px 0 80px rgba(3, 9, 18, 0.35);

    --zn-scrollbar-track: rgba(8, 16, 28, 0.36);
    --zn-scrollbar-thumb: rgba(112, 130, 164, 0.44);
    --zn-scrollbar-thumb-hover: rgba(138, 154, 192, 0.62);
    --zn-scrollbar-border: rgba(8, 16, 28, 0.86);
    --zn-scrollbar-fill-start: rgba(142, 157, 196, 0.5);
    --zn-scrollbar-fill-end: rgba(84, 101, 134, 0.48);
    --zn-brand-surface-end: rgba(124, 92, 255, 0.12);
    --zn-brand-border: rgba(133, 145, 255, 0.28);

    --zn-member-bg-app: #0b1018;
    --zn-member-bg-shell: #0f1621;
    --zn-member-bg-pane: #121b28;
    --zn-member-bg-card: rgba(15, 22, 33, 0.94);
    --zn-member-bg-bubble-in: #162235;
    --zn-member-bg-bubble-out: #2a3f7a;
    --zn-member-border: rgba(177, 196, 232, 0.12);
    --zn-member-border-soft: rgba(255, 255, 255, 0.08);
    --zn-member-border-strong: rgba(177, 196, 232, 0.18);
    --zn-member-border-bright: rgba(177, 196, 232, 0.16);
    --zn-member-border-muted: rgba(177, 196, 232, 0.08);
    --zn-member-text-primary: #edf3ff;
    --zn-member-text-secondary: #a2afc6;
    --zn-member-text-muted: #77849b;
    --zn-member-text-link: #c9d4ff;
    --zn-member-danger-text: #ffb8b8;
    --zn-member-danger-text-soft: #ffd7d7;
    --zn-member-warning-text: #f8de9d;
    --zn-member-success-text: #dff9ee;
    --zn-member-accent: #7b90ff;
    --zn-member-accent-soft: rgba(123, 144, 255, 0.16);
    --zn-member-accent-surface: rgba(123, 144, 255, 0.14);
    --zn-member-accent-surface-strong: rgba(123, 144, 255, 0.24);
    --zn-member-accent-border: rgba(123, 144, 255, 0.24);
    --zn-member-accent-border-muted: rgba(123, 144, 255, 0.18);
    --zn-member-accent-border-strong: rgba(123, 144, 255, 0.26);
    --zn-member-accent-text: #eef3ff;
    --zn-member-bg-surface-hover: rgba(255, 255, 255, 0.03);
    --zn-member-bg-surface-active: rgba(255, 255, 255, 0.04);
    --zn-member-bg-surface-strong: rgba(255, 255, 255, 0.05);
    --zn-member-bg-surface-lift: rgba(255, 255, 255, 0.035);
    --zn-member-bg-surface-faint: rgba(255, 255, 255, 0.02);
    --zn-member-primary: #7890ff;
    --zn-member-primary-hover: #6178e8;
    --zn-member-primary-text: #f5f8ff;
    --zn-member-shadow: 0 22px 60px rgba(3, 8, 15, 0.38);
    --zn-member-scrollbar-track: rgba(8, 13, 22, 0.24);
    --zn-member-scrollbar-thumb: rgba(111, 128, 164, 0.38);
    --zn-member-scrollbar-thumb-hover: rgba(139, 156, 198, 0.58);
    --zn-member-scrollbar-border: rgba(8, 13, 22, 0.92);
    --zn-member-scrollbar-fill-start: rgba(146, 162, 202, 0.5);
    --zn-member-scrollbar-fill-end: rgba(82, 100, 134, 0.45);
}

[data-theme="alpha-omega"] {
    color-scheme: dark;

    --zn-color-scheme: dark;
    --zn-bg-app: #05070A;
    --zn-bg-app-member: #05070A;
    --zn-bg-app-gradient-start: #0D1117;
    --zn-bg-app-gradient-end: #05070A;
    --zn-bg-sidebar: #070B10;
    --zn-bg-sidebar-alpha: rgba(7, 11, 16, 0.94);
    --zn-bg-surface: #0D1117;
    --zn-bg-surface-elevated: rgba(13, 17, 23, 0.92);
    --zn-bg-surface-muted: #111821;
    --zn-bg-panel:
        linear-gradient(180deg, rgba(13, 17, 23, 0.96), rgba(5, 7, 10, 0.96));
    --zn-bg-surface-hover: rgba(91, 155, 224, 0.08);
    --zn-bg-surface-active: rgba(91, 155, 224, 0.12);
    --zn-bg-surface-faint: rgba(156, 198, 240, 0.035);
    --zn-bg-surface-raised: rgba(17, 24, 33, 0.78);
    --zn-surface-glint: rgba(156, 198, 240, 0.14);
    --zn-surface-glint-soft: rgba(156, 198, 240, 0.07);

    --zn-border: rgba(156, 198, 240, 0.16);
    --zn-border-soft: rgba(156, 198, 240, 0.09);
    --zn-border-muted: rgba(138, 151, 165, 0.12);
    --zn-border-strong: rgba(91, 155, 224, 0.34);

    --zn-text-primary: #E3E9EF;
    --zn-text-secondary: #8A97A5;
    --zn-text-muted: #6B7885;
    --zn-text-inverse: #05070A;

    --zn-accent: #5B9BE0;
    --zn-accent-hover: #9CC6F0;
    --zn-accent-soft: rgba(46, 107, 176, 0.18);
    --zn-accent-surface: rgba(46, 107, 176, 0.13);
    --zn-accent-surface-strong: rgba(91, 155, 224, 0.18);
    --zn-accent-surface-lift: rgba(91, 155, 224, 0.22);
    --zn-accent-surface-muted: rgba(156, 198, 240, 0.06);
    --zn-accent-border: rgba(91, 155, 224, 0.42);
    --zn-accent-border-active: rgba(156, 198, 240, 0.52);
    --zn-accent-border-soft: rgba(91, 155, 224, 0.28);
    --zn-accent-border-subtle: rgba(91, 155, 224, 0.18);
    --zn-accent-border-focus: rgba(156, 198, 240, 0.62);
    --zn-accent-text: #9CC6F0;
    --zn-accent-text-muted: #8A97A5;
    --zn-accent-text-strong: #E3E9EF;
    --zn-accent-shadow: rgba(46, 107, 176, 0.22);

    --zn-success: #5B9BE0;
    --zn-warning: #E0A44A;
    --zn-danger: #E06A6A;
    --zn-success-text: #DDEBFA;
    --zn-warning-text: #FFE8BE;
    --zn-danger-text: #FFDADA;

    --zn-shadow: 0 22px 60px rgba(0, 0, 0, 0.44);
    --zn-shadow-soft: 0 0 0 1px rgba(156, 198, 240, 0.08), 0 18px 40px rgba(0, 0, 0, 0.3);
    --zn-shadow-sidebar: 24px 0 82px rgba(0, 0, 0, 0.36);

    --zn-scrollbar-track: rgba(255, 255, 255, 0.045);
    --zn-scrollbar-thumb: rgba(91, 155, 224, 0.32);
    --zn-scrollbar-thumb-hover: rgba(156, 198, 240, 0.52);
    --zn-scrollbar-border: rgba(255, 255, 255, 0.045);
    --zn-scrollbar-fill-start: rgba(91, 155, 224, 0.38);
    --zn-scrollbar-fill-end: rgba(14, 42, 82, 0.46);
    --zn-brand-surface-end: rgba(46, 107, 176, 0.18);
    --zn-brand-border: rgba(91, 155, 224, 0.28);

    --zn-member-bg-app: #05070A;
    --zn-member-shade-start: rgba(13, 17, 23, 0.94);
    --zn-member-shade-mid: rgba(14, 42, 82, 0.38);
    --zn-member-shade-end: rgba(5, 7, 10, 0.96);
    --zn-member-bg-shell: rgba(7, 11, 16, 0.94);
    --zn-member-bg-pane: #0D1117;
    --zn-member-bg-pane-shade:
        linear-gradient(180deg, #0D1117 0%, #0A121D 58%, #05070A 100%);
    --zn-member-bg-card: rgba(13, 17, 23, 0.88);
    --zn-member-bg-bubble-in: #111821;
    --zn-member-bg-bubble-out: #14356B;
    --zn-member-border: rgba(156, 198, 240, 0.14);
    --zn-member-border-soft: rgba(156, 198, 240, 0.09);
    --zn-member-border-strong: rgba(91, 155, 224, 0.28);
    --zn-member-border-bright: rgba(156, 198, 240, 0.22);
    --zn-member-border-muted: rgba(138, 151, 165, 0.1);
    --zn-member-text-primary: #E3E9EF;
    --zn-member-text-secondary: #8A97A5;
    --zn-member-text-muted: #6B7885;
    --zn-member-text-link: #9CC6F0;
    --zn-member-danger-text: #FFDADA;
    --zn-member-danger-text-soft: #FFEAEA;
    --zn-member-warning-text: #FFE8BE;
    --zn-member-success-text: #DDEBFA;
    --zn-member-accent: #5B9BE0;
    --zn-member-accent-soft: rgba(46, 107, 176, 0.18);
    --zn-member-accent-surface: rgba(46, 107, 176, 0.14);
    --zn-member-accent-surface-strong: rgba(91, 155, 224, 0.22);
    --zn-member-accent-border: rgba(91, 155, 224, 0.3);
    --zn-member-accent-border-muted: rgba(91, 155, 224, 0.2);
    --zn-member-accent-border-strong: rgba(156, 198, 240, 0.42);
    --zn-member-accent-text: #9CC6F0;
    --zn-member-bg-surface-hover: rgba(91, 155, 224, 0.07);
    --zn-member-bg-surface-active: rgba(91, 155, 224, 0.1);
    --zn-member-bg-surface-strong: rgba(156, 198, 240, 0.07);
    --zn-member-bg-surface-lift: rgba(156, 198, 240, 0.045);
    --zn-member-bg-surface-faint: rgba(156, 198, 240, 0.025);
    --zn-member-primary: #2E6BB0;
    --zn-member-primary-hover: #5B9BE0;
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: 0 24px 62px rgba(0, 0, 0, 0.38);
}

.znode-surface-stage {
    position: relative;
    perspective: 1400px;
    perspective-origin: center center;
}

.znode-surface-stage.is-surface-flip-lock {
    overflow: hidden;
}

.znode-surface-shell {
    position: relative;
    isolation: isolate;
    transform: translate3d(0, 0, 0) rotateY(0deg) scale(1);
    transform-origin: center center;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    will-change: transform, opacity;
    transition:
        transform 440ms cubic-bezier(.18, .86, .18, 1),
        opacity 300ms ease;
}

.znode-surface-shell.is-surface-flip-live-hidden {
    visibility: hidden;
}

.znode-surface-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2147483000;
    border-radius: inherit;
    background:
        linear-gradient(
            112deg,
            transparent 0%,
            transparent 34%,
            rgba(255, 255, 255, 0.11) 48%,
            transparent 64%,
            transparent 100%
        );
    opacity: 0;
    pointer-events: none;
    transform: translate3d(-16%, 0, 0);
    transition:
        opacity 300ms ease,
        transform 440ms cubic-bezier(.18, .86, .18, 1);
}

.znode-surface-shell.is-surface-flip-out {
    transform: translate3d(14px, 0, -24px) rotateY(78deg) scale(0.975);
    opacity: 0.34;
    pointer-events: none;
}

.znode-surface-shell.is-surface-flip-in {
    transform: translate3d(-14px, 0, -24px) rotateY(-78deg) scale(0.975);
    opacity: 0.34;
}

.znode-surface-shell.is-surface-flip-out.is-surface-flip-to-user {
    transform: translate3d(-14px, 0, -24px) rotateY(-78deg) scale(0.975);
}

.znode-surface-shell.is-surface-flip-in.is-surface-flip-to-user {
    transform: translate3d(14px, 0, -24px) rotateY(78deg) scale(0.975);
}

.znode-surface-shell.is-surface-flip-ready {
    transform: translate3d(0, 0, 0) rotateY(0deg) scale(1);
    opacity: 1;
}

.znode-surface-shell.is-surface-flip-out::before,
.znode-surface-shell.is-surface-flip-in::before {
    opacity: 1;
    transform: translate3d(18%, 0, 0);
}

.znode-surface-shell.is-surface-flip-ready::before {
    opacity: 0;
    transform: translate3d(38%, 0, 0);
}

.znode-surface-flip-scene {
    --zn-surface-flip-dir: 1;
    position: fixed;
    inset: 0;
    z-index: 2147483400;
    overflow: hidden;
    perspective: 1500px;
    perspective-origin: center center;
    background: var(--zn-bg-app, #f6f7fa);
    pointer-events: none;
    contain: layout paint style;
}

.znode-surface-flip-scene.znode-surface-flip-to-user {
    --zn-surface-flip-dir: -1;
}

.znode-surface-flip-face {
    position: absolute;
    inset: 0;
    overflow: hidden;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    will-change: transform, opacity;
}

.znode-surface-flip-face > .znode-surface-shell {
    min-height: 100vh;
}

.znode-surface-flip-face-target {
    opacity: 0;
    transform: translate3d(calc(var(--zn-surface-flip-dir) * 34px), 0, -42px)
        rotateY(calc(var(--zn-surface-flip-dir) * 92deg))
        scale(0.975);
}

.znode-surface-flip-scene.is-surface-flip-running .znode-surface-flip-face-current {
    animation: znode-surface-current-flip-out 820ms cubic-bezier(.22, .82, .18, 1) forwards;
}

.znode-surface-flip-scene.is-surface-flip-running .znode-surface-flip-face-target {
    animation: znode-surface-target-flip-in 820ms cubic-bezier(.22, .82, .18, 1) forwards;
}

@keyframes znode-surface-current-flip-out {
    0% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotateY(0deg) scale(1);
    }

    42% {
        opacity: 0.18;
        transform: translate3d(calc(var(--zn-surface-flip-dir) * -24px), 0, -34px)
            rotateY(calc(var(--zn-surface-flip-dir) * -88deg))
            scale(0.98);
    }

    100% {
        opacity: 0;
        transform: translate3d(calc(var(--zn-surface-flip-dir) * -42px), 0, -64px)
            rotateY(calc(var(--zn-surface-flip-dir) * -108deg))
            scale(0.965);
    }
}

@keyframes znode-surface-target-flip-in {
    0%,
    36% {
        opacity: 0;
        transform: translate3d(calc(var(--zn-surface-flip-dir) * 34px), 0, -42px)
            rotateY(calc(var(--zn-surface-flip-dir) * 92deg))
            scale(0.975);
    }

    48% {
        opacity: 0.72;
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotateY(0deg) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .znode-surface-shell {
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }

    .znode-surface-shell::before {
        display: none !important;
    }

    .znode-surface-flip-scene {
        display: none !important;
    }
}

[data-theme="stormy-morning"] {
    --zn-color-scheme: light;
    --zn-bg-app: #E9ECEA;
    --zn-bg-app-member: #E9ECEA;
    --zn-bg-app-gradient-start: #F7F8F6;
    --zn-bg-app-gradient-end: #E9ECEA;
    --zn-bg-sidebar: #F5F6F4;
    --zn-bg-sidebar-alpha: rgba(245, 246, 244, 0.96);
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-elevated: #FFFFFF;
    --zn-bg-surface-muted: #CBCBCB;
    --zn-bg-panel: linear-gradient(180deg, #FFFFFF, #F7F8F6);
    --zn-bg-surface-hover: #CBCBCB;
    --zn-bg-surface-active: #174D38;
    --zn-bg-surface-faint: rgba(23, 77, 56, 0.045);
    --zn-bg-surface-raised: rgba(255, 255, 255, 0.82);
    --zn-surface-glint: rgba(255, 255, 255, 0.82);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.46);

    --zn-border: #C8CFCA;
    --zn-border-soft: #DDE2DE;
    --zn-border-muted: #D3D9D5;
    --zn-border-strong: #AEB9B2;

    --zn-text-primary: #17221D;
    --zn-text-secondary: #56625B;
    --zn-text-muted: #7C8780;
    --zn-text-inverse: #FFFFFF;

    --zn-accent: #174D38;
    --zn-accent-hover: #103D2C;
    --zn-accent-soft: #174D38;
    --zn-accent-surface: #174D38;
    --zn-accent-surface-strong: #174D38;
    --zn-accent-surface-lift: #174D38;
    --zn-accent-surface-muted: #CBCBCB;
    --zn-accent-border: #174D38;
    --zn-accent-border-active: #103D2C;
    --zn-accent-border-soft: #174D38;
    --zn-accent-border-subtle: #C8CFCA;
    --zn-accent-border-focus: #79A08D;
    --zn-accent-text: #FFFFFF;
    --zn-accent-text-muted: #FFFFFF;
    --zn-accent-text-strong: #FFFFFF;
    --zn-accent-shadow: rgba(23, 77, 56, 0.12);

    --zn-success: #2E7652;
    --zn-success-soft-muted: rgba(46, 118, 82, 0.08);
    --zn-success-soft: rgba(46, 118, 82, 0.12);
    --zn-success-soft-strong: rgba(46, 118, 82, 0.18);
    --zn-success-border: rgba(46, 118, 82, 0.3);
    --zn-success-text: #2E7652;
    --zn-warning: #76504B;
    --zn-warning-soft-muted: rgba(118, 80, 75, 0.08);
    --zn-warning-soft: rgba(118, 80, 75, 0.12);
    --zn-warning-soft-strong: rgba(118, 80, 75, 0.18);
    --zn-warning-border: rgba(118, 80, 75, 0.28);
    --zn-warning-border-strong: rgba(118, 80, 75, 0.38);
    --zn-warning-text: #76504B;
    --zn-danger: #A34D4D;
    --zn-danger-soft: rgba(163, 77, 77, 0.1);
    --zn-danger-soft-strong: rgba(163, 77, 77, 0.16);
    --zn-danger-border: rgba(163, 77, 77, 0.32);
    --zn-danger-border-soft: rgba(163, 77, 77, 0.22);
    --zn-danger-border-strong: rgba(163, 77, 77, 0.42);
    --zn-danger-text: #A34D4D;
    --zn-danger-text-strong: #7D3131;
    --zn-danger-surface: rgba(163, 77, 77, 0.1);
    --zn-danger-surface-hover: rgba(163, 77, 77, 0.16);
    --zn-danger-shadow: rgba(163, 77, 77, 0.12);
    --zn-success-ring: rgba(23, 77, 56, 0.12);
    --zn-warning-ring: rgba(118, 80, 75, 0.1);
    --zn-danger-ring: rgba(163, 77, 77, 0.1);

    --zn-shadow: 0 12px 34px rgba(23, 34, 29, 0.08);
    --zn-shadow-soft: 0 8px 24px rgba(23, 34, 29, 0.06);
    --zn-shadow-sidebar: 24px 0 80px rgba(23, 34, 29, 0.1);

    --zn-scrollbar-track: rgba(233, 236, 234, 0.8);
    --zn-scrollbar-thumb: rgba(23, 77, 56, 0.34);
    --zn-scrollbar-thumb-hover: rgba(23, 77, 56, 0.5);
    --zn-scrollbar-border: rgba(255, 255, 255, 0.9);
    --zn-scrollbar-fill-start: rgba(23, 77, 56, 0.38);
    --zn-scrollbar-fill-end: rgba(23, 77, 56, 0.24);
    --zn-brand-surface-end: #174D38;
    --zn-brand-border: #174D38;

    --zn-member-bg-app: #E9ECEA;
    --zn-member-bg-shell: #F7F8F6;
    --zn-member-bg-pane: #FFFFFF;
    --zn-member-bg-card: #F5F7F5;
    --zn-member-bg-bubble-in: #CBCBCB;
    --zn-member-bg-bubble-out: #174D38;
    --zn-member-border: #CCD4CF;
    --zn-member-border-soft: #E0E5E1;
    --zn-member-border-strong: #AEB9B2;
    --zn-member-border-bright: #174D38;
    --zn-member-border-muted: #E0E5E1;
    --zn-member-text-primary: #17221D;
    --zn-member-text-secondary: #59655E;
    --zn-member-text-muted: #828B85;
    --zn-member-text-link: #174D38;
    --zn-member-danger-text: #A34D4D;
    --zn-member-danger-text-soft: #76504B;
    --zn-member-warning-text: #76504B;
    --zn-member-success-text: #2E7652;
    --zn-member-accent: #174D38;
    --zn-member-accent-soft: #174D38;
    --zn-member-accent-surface: #174D38;
    --zn-member-accent-surface-strong: #174D38;
    --zn-member-accent-border: #174D38;
    --zn-member-accent-border-muted: #174D38;
    --zn-member-accent-border-strong: #103D2C;
    --zn-member-accent-text: #FFFFFF;
    --zn-member-bg-surface-hover: #CBCBCB;
    --zn-member-bg-surface-active: #174D38;
    --zn-member-bg-surface-strong: #174D38;
    --zn-member-bg-surface-lift: #FFFFFF;
    --zn-member-bg-surface-faint: rgba(23, 77, 56, 0.045);
    --zn-member-primary: #174D38;
    --zn-member-primary-hover: #103D2C;
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: 0 12px 34px rgba(23, 34, 29, 0.08);
    --zn-member-scrollbar-track: rgba(233, 236, 234, 0.74);
    --zn-member-scrollbar-thumb: rgba(23, 77, 56, 0.32);
    --zn-member-scrollbar-thumb-hover: rgba(23, 77, 56, 0.48);
    --zn-member-scrollbar-border: rgba(255, 255, 255, 0.9);
    --zn-member-scrollbar-fill-start: rgba(23, 77, 56, 0.36);
    --zn-member-scrollbar-fill-end: rgba(23, 77, 56, 0.22);
}

[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) {
    color: #FFFFFF;
    border-color: #174D38;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        0 12px 28px rgba(23, 77, 56, 0.16);
}

[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-author,
[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-author-title,
[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-time,
[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-status {
    color: rgba(255, 255, 255, 0.74);
}

[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) p,
[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) strong,
[data-theme="stormy-morning"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) a {
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-messaging .conversation-avatar:not(:has(img)),
[data-theme="stormy-morning"] body.user-body-messaging .chat-header-avatar:not(:has(img)),
[data-theme="stormy-morning"] body.user-body-messaging .mini-profile-avatar-fallback {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #174D38;
    border: 1px solid rgba(77, 23, 23, 0.28);
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-messaging .conversation-item.is-active {
    background: #174D38;
    border-color: #174D38;
    color: #FFFFFF;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        0 10px 24px rgba(23, 77, 56, 0.12);
}

[data-theme="stormy-morning"] body.user-body-messaging .conversation-item.is-active strong,
[data-theme="stormy-morning"] body.user-body-messaging .conversation-item.is-active p,
[data-theme="stormy-morning"] body.user-body-messaging .conversation-item.is-active .conversation-meta,
[data-theme="stormy-morning"] body.user-body-messaging .conversation-item.is-active .presence-copy {
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-row-icon {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #174D38;
    border-color: rgba(77, 23, 23, 0.28);
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-row-icon-folder::before,
[data-theme="stormy-morning"] body.user-body-workspace .workspace-row-icon-folder::after {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 42%),
        #174D38;
    border: 1px solid rgba(77, 23, 23, 0.28);
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-row-icon-file {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #174D38;
    border-color: rgba(77, 23, 23, 0.28);
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.58), rgba(203, 203, 203, 0.72)),
        rgba(23, 77, 56, 0.06);
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card .workspace-tool-icon,
[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card svg {
    color: #174D38;
    stroke: currentColor;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card:hover,
[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card.is-active {
    background: #174D38;
    border-color: #174D38;
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card:hover .workspace-tool-icon,
[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card.is-active .workspace-tool-icon {
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card:hover svg,
[data-theme="stormy-morning"] body.user-body-workspace .workspace-tool-card.is-active svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="stormy-morning"] body.admin-body .action-button,
[data-theme="stormy-morning"] body.admin-body .primary-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #174D38;
    border-color: #174D38;
    color: #FFFFFF;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 8px 20px rgba(23, 77, 56, 0.12);
}

[data-theme="stormy-morning"] body.admin-body .action-button:hover:not(:disabled),
[data-theme="stormy-morning"] body.admin-body .primary-button:hover:not(:disabled),
[data-theme="stormy-morning"] body.admin-body .action-button:focus-visible,
[data-theme="stormy-morning"] body.admin-body .primary-button:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 36%),
        #103D2C;
    border-color: #103D2C;
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.admin-body .action-button:disabled,
[data-theme="stormy-morning"] body.admin-body .primary-button:disabled {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.08)),
        #174D38;
    border-color: #A9C3B5;
    color: rgba(255, 255, 255, 0.86);
    opacity: 0.54;
}

[data-theme="stormy-morning"] .surface-switcher-link.is-active,
[data-theme="stormy-morning"] .user-app-nav-link.is-active {
    color: #FFFFFF;
}

[data-theme="stormy-morning"] .surface-switcher-link.is-active svg,
[data-theme="stormy-morning"] .user-app-nav-link.is-active svg,
[data-theme="stormy-morning"] body.admin-body .action-button svg,
[data-theme="stormy-morning"] body.admin-body .primary-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="stormy-morning"] .user-bottom-nav-link.is-active,
[data-theme="stormy-morning"] .user-bottom-nav-link.is-active svg {
    color: #174D38;
    stroke: currentColor;
}

[data-theme="stormy-morning"] body.user-body-messaging .call-button,
[data-theme="stormy-morning"] body.user-body-messaging .composer-button,
[data-theme="stormy-morning"] body.user-body-messaging .voice-record-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #174D38;
    border-color: #174D38;
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-messaging .call-button svg,
[data-theme="stormy-morning"] body.user-body-messaging .composer-button svg,
[data-theme="stormy-morning"] body.user-body-messaging .voice-record-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="stormy-morning"] body.user-body-messaging .composer-tools .icon-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #174D38;
    border-color: #174D38;
    color: #FFFFFF;
}

[data-theme="stormy-morning"] body.user-body-messaging .composer-tools .icon-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="urban-loft"] {
    --zn-color-scheme: dark;
    --zn-bg-app: #121212;
    --zn-bg-app-member: #121212;
    --zn-bg-app-gradient-start: rgba(26, 26, 26, 0.98);
    --zn-bg-app-gradient-end: #121212;
    --zn-bg-sidebar: #1A1A1A;
    --zn-bg-sidebar-alpha: rgba(26, 26, 26, 0.97);
    --zn-bg-surface: #222222;
    --zn-bg-surface-elevated: #1A1A1A;
    --zn-bg-surface-muted: #2C2C2C;
    --zn-bg-panel: linear-gradient(180deg, rgba(34, 34, 34, 0.98), rgba(26, 26, 26, 0.96));
    --zn-bg-surface-hover: rgba(241, 241, 241, 0.04);
    --zn-bg-surface-active: rgba(241, 241, 241, 0.07);
    --zn-bg-surface-faint: rgba(241, 241, 241, 0.025);
    --zn-bg-surface-raised: rgba(241, 241, 241, 0.05);
    --zn-surface-glint: rgba(255, 255, 255, 0.08);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.04);

    --zn-border: #3A3A3A;
    --zn-border-soft: #2A2A2A;
    --zn-border-muted: #303030;
    --zn-border-strong: #4A4A4A;

    --zn-text-primary: #F1F1F1;
    --zn-text-secondary: #C7C7C7;
    --zn-text-muted: #8A8A8A;
    --zn-text-inverse: #121212;

    --zn-accent: #A35E47;
    --zn-accent-hover: #8B4E3A;
    --zn-accent-soft: #3A2620;
    --zn-accent-surface: rgba(163, 94, 71, 0.16);
    --zn-accent-surface-strong: rgba(163, 94, 71, 0.22);
    --zn-accent-surface-lift: rgba(163, 94, 71, 0.28);
    --zn-accent-surface-muted: rgba(163, 94, 71, 0.1);
    --zn-accent-border: rgba(163, 94, 71, 0.36);
    --zn-accent-border-active: rgba(163, 94, 71, 0.32);
    --zn-accent-border-soft: rgba(163, 94, 71, 0.28);
    --zn-accent-border-subtle: rgba(163, 94, 71, 0.22);
    --zn-accent-border-focus: rgba(163, 94, 71, 0.44);
    --zn-accent-text: #FFE9E1;
    --zn-accent-text-muted: #F4CABC;
    --zn-accent-text-strong: #FFF5F1;
    --zn-accent-shadow: rgba(163, 94, 71, 0.16);

    --zn-success: #4CAF50;
    --zn-success-soft-muted: rgba(76, 175, 80, 0.1);
    --zn-success-soft: rgba(76, 175, 80, 0.13);
    --zn-success-soft-strong: rgba(76, 175, 80, 0.18);
    --zn-success-border: rgba(76, 175, 80, 0.34);
    --zn-success-text: #E2FFE4;
    --zn-warning: #E0A800;
    --zn-warning-soft-muted: rgba(224, 168, 0, 0.1);
    --zn-warning-soft: rgba(224, 168, 0, 0.14);
    --zn-warning-soft-strong: rgba(224, 168, 0, 0.2);
    --zn-warning-border: rgba(224, 168, 0, 0.34);
    --zn-warning-border-strong: rgba(224, 168, 0, 0.42);
    --zn-warning-text: #FFE8A6;
    --zn-danger: #D64545;
    --zn-danger-soft: rgba(214, 69, 69, 0.13);
    --zn-danger-soft-strong: rgba(214, 69, 69, 0.2);
    --zn-danger-border: rgba(214, 69, 69, 0.36);
    --zn-danger-border-soft: rgba(214, 69, 69, 0.32);
    --zn-danger-border-strong: rgba(214, 69, 69, 0.48);
    --zn-danger-text: #FFDADA;
    --zn-danger-text-strong: #FFF3F3;
    --zn-danger-surface: rgba(214, 69, 69, 0.14);
    --zn-danger-surface-hover: rgba(214, 69, 69, 0.2);
    --zn-danger-shadow: rgba(214, 69, 69, 0.12);
    --zn-success-ring: rgba(76, 175, 80, 0.1);
    --zn-warning-ring: rgba(224, 168, 0, 0.1);
    --zn-danger-ring: rgba(214, 69, 69, 0.1);

    --zn-shadow: 0 14px 34px rgba(0, 0, 0, 0.6);
    --zn-shadow-soft: 0 0 0 1px rgba(163, 94, 71, 0.12), 0 16px 34px rgba(0, 0, 0, 0.48);
    --zn-shadow-sidebar: 24px 0 80px rgba(0, 0, 0, 0.5);

    --zn-scrollbar-track: rgba(18, 18, 18, 0.38);
    --zn-scrollbar-thumb: rgba(138, 138, 138, 0.44);
    --zn-scrollbar-thumb-hover: rgba(199, 199, 199, 0.58);
    --zn-scrollbar-border: rgba(18, 18, 18, 0.88);
    --zn-scrollbar-fill-start: rgba(199, 199, 199, 0.42);
    --zn-scrollbar-fill-end: rgba(138, 138, 138, 0.38);
    --zn-brand-surface-end: rgba(163, 94, 71, 0.12);
    --zn-brand-border: rgba(163, 94, 71, 0.34);

    --zn-member-bg-app: #121212;
    --zn-member-bg-shell: #1A1A1A;
    --zn-member-bg-pane: #222222;
    --zn-member-bg-card: rgba(26, 26, 26, 0.94);
    --zn-member-bg-bubble-in: #222222;
    --zn-member-bg-bubble-out: #5B3328;
    --zn-member-border: #3A3A3A;
    --zn-member-border-soft: rgba(241, 241, 241, 0.08);
    --zn-member-border-strong: #4A4A4A;
    --zn-member-border-bright: rgba(199, 199, 199, 0.18);
    --zn-member-border-muted: rgba(199, 199, 199, 0.1);
    --zn-member-text-primary: #F1F1F1;
    --zn-member-text-secondary: #C7C7C7;
    --zn-member-text-muted: #8A8A8A;
    --zn-member-text-link: #F4CABC;
    --zn-member-danger-text: #FFDADA;
    --zn-member-danger-text-soft: #FFE6E6;
    --zn-member-warning-text: #FFE8A6;
    --zn-member-success-text: #E2FFE4;
    --zn-member-accent: #A35E47;
    --zn-member-accent-soft: rgba(163, 94, 71, 0.16);
    --zn-member-accent-surface: rgba(163, 94, 71, 0.16);
    --zn-member-accent-surface-strong: rgba(163, 94, 71, 0.24);
    --zn-member-accent-border: rgba(163, 94, 71, 0.32);
    --zn-member-accent-border-muted: rgba(163, 94, 71, 0.22);
    --zn-member-accent-border-strong: rgba(163, 94, 71, 0.4);
    --zn-member-accent-text: #FFE9E1;
    --zn-member-bg-surface-hover: rgba(241, 241, 241, 0.04);
    --zn-member-bg-surface-active: rgba(241, 241, 241, 0.07);
    --zn-member-bg-surface-strong: rgba(241, 241, 241, 0.08);
    --zn-member-bg-surface-lift: rgba(241, 241, 241, 0.05);
    --zn-member-bg-surface-faint: rgba(241, 241, 241, 0.025);
    --zn-member-primary: #A35E47;
    --zn-member-primary-hover: #8B4E3A;
    --zn-member-primary-text: #FFF5F1;
    --zn-member-shadow: 0 22px 60px rgba(0, 0, 0, 0.6);
    --zn-member-scrollbar-track: rgba(18, 18, 18, 0.28);
    --zn-member-scrollbar-thumb: rgba(138, 138, 138, 0.42);
    --zn-member-scrollbar-thumb-hover: rgba(199, 199, 199, 0.58);
    --zn-member-scrollbar-border: rgba(18, 18, 18, 0.88);
    --zn-member-scrollbar-fill-start: rgba(199, 199, 199, 0.42);
    --zn-member-scrollbar-fill-end: rgba(138, 138, 138, 0.38);
}

[data-theme="yacht-club"] {
    --zn-color-scheme: light;
    --zn-bg-app: #F2F0EF;
    --zn-bg-app-member: #F2F0EF;
    --zn-bg-app-gradient-start: rgba(247, 244, 241, 0.98);
    --zn-bg-app-gradient-end: #F2F0EF;
    --zn-bg-sidebar: #E5E0DA;
    --zn-bg-sidebar-alpha: rgba(229, 224, 218, 0.97);
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-elevated: #F7F4F1;
    --zn-bg-surface-muted: #F7F4F1;
    --zn-bg-panel: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 244, 241, 0.96));
    --zn-bg-surface-hover: rgba(44, 44, 44, 0.04);
    --zn-bg-surface-active: rgba(44, 44, 44, 0.06);
    --zn-bg-surface-faint: rgba(44, 44, 44, 0.025);
    --zn-bg-surface-raised: rgba(44, 44, 44, 0.035);
    --zn-surface-glint: rgba(255, 255, 255, 0.72);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.46);

    --zn-border: #D6D0C8;
    --zn-border-soft: #EAE5DF;
    --zn-border-muted: #E1DBD4;
    --zn-border-strong: #BDB4AA;

    --zn-text-primary: #2C2C2C;
    --zn-text-secondary: #5C5C5C;
    --zn-text-muted: #8A8A8A;
    --zn-text-inverse: #FFFFFF;

    --zn-accent: #245F73;
    --zn-accent-hover: #1C4C5D;
    --zn-accent-soft: #DDE8EC;
    --zn-accent-surface: #DDE8EC;
    --zn-accent-surface-strong: #D1E1E6;
    --zn-accent-surface-lift: #EAF2F5;
    --zn-accent-surface-muted: #EFF6F8;
    --zn-accent-border: #9CBBC6;
    --zn-accent-border-active: #A9C5CE;
    --zn-accent-border-soft: #BDD3DA;
    --zn-accent-border-subtle: #D1E1E6;
    --zn-accent-border-focus: #7EA9B8;
    --zn-accent-text: #174556;
    --zn-accent-text-muted: #245F73;
    --zn-accent-text-strong: #174556;
    --zn-accent-shadow: rgba(36, 95, 115, 0.12);

    --zn-success: #3A8D5D;
    --zn-success-soft-muted: rgba(58, 141, 93, 0.08);
    --zn-success-soft: rgba(58, 141, 93, 0.12);
    --zn-success-soft-strong: rgba(58, 141, 93, 0.16);
    --zn-success-border: rgba(58, 141, 93, 0.3);
    --zn-success-text: #276842;
    --zn-warning: #C89B3C;
    --zn-warning-soft-muted: rgba(200, 155, 60, 0.08);
    --zn-warning-soft: rgba(200, 155, 60, 0.13);
    --zn-warning-soft-strong: rgba(200, 155, 60, 0.18);
    --zn-warning-border: rgba(200, 155, 60, 0.3);
    --zn-warning-border-strong: rgba(200, 155, 60, 0.4);
    --zn-warning-text: #75591F;
    --zn-danger: #B04A3A;
    --zn-danger-soft: rgba(176, 74, 58, 0.1);
    --zn-danger-soft-strong: rgba(176, 74, 58, 0.16);
    --zn-danger-border: rgba(176, 74, 58, 0.3);
    --zn-danger-border-soft: rgba(176, 74, 58, 0.26);
    --zn-danger-border-strong: rgba(176, 74, 58, 0.42);
    --zn-danger-text: #8A3528;
    --zn-danger-text-strong: #6F291F;
    --zn-danger-surface: rgba(176, 74, 58, 0.1);
    --zn-danger-surface-hover: rgba(176, 74, 58, 0.15);
    --zn-danger-shadow: rgba(176, 74, 58, 0.08);
    --zn-success-ring: rgba(58, 141, 93, 0.08);
    --zn-warning-ring: rgba(200, 155, 60, 0.08);
    --zn-danger-ring: rgba(176, 74, 58, 0.08);

    --zn-shadow: 0 14px 34px rgba(0, 0, 0, 0.08);
    --zn-shadow-soft: 0 0 0 1px rgba(36, 95, 115, 0.08), 0 16px 34px rgba(0, 0, 0, 0.06);
    --zn-shadow-sidebar: 24px 0 80px rgba(0, 0, 0, 0.08);

    --zn-scrollbar-track: rgba(214, 208, 200, 0.36);
    --zn-scrollbar-thumb: rgba(138, 138, 138, 0.38);
    --zn-scrollbar-thumb-hover: rgba(92, 92, 92, 0.5);
    --zn-scrollbar-border: rgba(242, 240, 239, 0.92);
    --zn-scrollbar-fill-start: rgba(138, 138, 138, 0.3);
    --zn-scrollbar-fill-end: rgba(92, 92, 92, 0.26);
    --zn-brand-surface-end: #DDE8EC;
    --zn-brand-border: #9CBBC6;

    --zn-member-bg-app: #F2F0EF;
    --zn-member-bg-shell: #E5E0DA;
    --zn-member-bg-pane: #FFFFFF;
    --zn-member-bg-card: rgba(255, 255, 255, 0.94);
    --zn-member-bg-bubble-in: #FFFFFF;
    --zn-member-bg-bubble-out: #DDE8EC;
    --zn-member-border: #D6D0C8;
    --zn-member-border-soft: #EAE5DF;
    --zn-member-border-strong: #BDB4AA;
    --zn-member-border-bright: #D6D0C8;
    --zn-member-border-muted: #EAE5DF;
    --zn-member-text-primary: #2C2C2C;
    --zn-member-text-secondary: #5C5C5C;
    --zn-member-text-muted: #8A8A8A;
    --zn-member-text-link: #245F73;
    --zn-member-danger-text: #8A3528;
    --zn-member-danger-text-soft: #B04A3A;
    --zn-member-warning-text: #75591F;
    --zn-member-success-text: #276842;
    --zn-member-accent: #245F73;
    --zn-member-accent-soft: #DDE8EC;
    --zn-member-accent-surface: #DDE8EC;
    --zn-member-accent-surface-strong: #D1E1E6;
    --zn-member-accent-border: #9CBBC6;
    --zn-member-accent-border-muted: #BDD3DA;
    --zn-member-accent-border-strong: #7EA9B8;
    --zn-member-accent-text: #174556;
    --zn-member-bg-surface-hover: rgba(44, 44, 44, 0.04);
    --zn-member-bg-surface-active: rgba(44, 44, 44, 0.06);
    --zn-member-bg-surface-strong: rgba(44, 44, 44, 0.08);
    --zn-member-bg-surface-lift: rgba(44, 44, 44, 0.035);
    --zn-member-bg-surface-faint: rgba(44, 44, 44, 0.025);
    --zn-member-primary: #245F73;
    --zn-member-primary-hover: #1C4C5D;
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: 0 22px 60px rgba(0, 0, 0, 0.08);
    --zn-member-scrollbar-track: rgba(214, 208, 200, 0.28);
    --zn-member-scrollbar-thumb: rgba(138, 138, 138, 0.36);
    --zn-member-scrollbar-thumb-hover: rgba(92, 92, 92, 0.5);
    --zn-member-scrollbar-border: rgba(242, 240, 239, 0.92);
    --zn-member-scrollbar-fill-start: rgba(138, 138, 138, 0.3);
    --zn-member-scrollbar-fill-end: rgba(92, 92, 92, 0.26);
}

[data-theme="znode-light"] {
    --zn-color-scheme: light;
    --zn-bg-app: #E9ECEA;
    --zn-bg-app-member: #E9ECEA;
    --zn-bg-app-gradient-start: #F7F8F6;
    --zn-bg-app-gradient-end: #E9ECEA;
    --zn-bg-sidebar: #F5F6F4;
    --zn-bg-sidebar-alpha: rgba(245, 246, 244, 0.96);
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-elevated: #FFFFFF;
    --zn-bg-surface-muted: #CBCBCB;
    --zn-bg-panel: linear-gradient(180deg, #FFFFFF, #F7F8F6);
    --zn-bg-surface-hover: #CBCBCB;
    --zn-bg-surface-active: #800020;
    --zn-bg-surface-faint: rgba(128, 0, 32, 0.035);
    --zn-bg-surface-raised: rgba(255, 255, 255, 0.82);
    --zn-surface-glint: rgba(255, 255, 255, 0.82);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.46);

    --zn-border: #C8CFCA;
    --zn-border-soft: #DDE2DE;
    --zn-border-muted: #D3D9D5;
    --zn-border-strong: #AEB9B2;

    --zn-text-primary: #211817;
    --zn-text-secondary: #625756;
    --zn-text-muted: #877D7B;
    --zn-text-inverse: #FFFFFF;

    --zn-accent: #800020;
    --zn-accent-hover: #660019;
    --zn-accent-soft: #800020;
    --zn-accent-surface: #800020;
    --zn-accent-surface-strong: #800020;
    --zn-accent-surface-lift: #800020;
    --zn-accent-surface-muted: #CBCBCB;
    --zn-accent-border: #800020;
    --zn-accent-border-active: #660019;
    --zn-accent-border-soft: #800020;
    --zn-accent-border-subtle: #C8CFCA;
    --zn-accent-border-focus: #660019;
    --zn-accent-text: #FFFFFF;
    --zn-accent-text-muted: #FFFFFF;
    --zn-accent-text-strong: #FFFFFF;
    --zn-accent-shadow: rgba(128, 0, 32, 0.16);
    --zn-secondary-accent: #174D38;
    --zn-secondary-accent-soft: #DCE8E2;
    --zn-secondary-accent-surface: #E4EEE8;
    --zn-secondary-accent-border: #A9C3B5;
    --zn-secondary-accent-text: #174D38;

    --zn-success: #2E7652;
    --zn-success-soft-muted: rgba(46, 118, 82, 0.08);
    --zn-success-soft: rgba(46, 118, 82, 0.12);
    --zn-success-soft-strong: rgba(46, 118, 82, 0.18);
    --zn-success-border: rgba(46, 118, 82, 0.3);
    --zn-success-text: #2E7652;
    --zn-warning: #76504B;
    --zn-warning-soft-muted: rgba(118, 80, 75, 0.08);
    --zn-warning-soft: rgba(118, 80, 75, 0.12);
    --zn-warning-soft-strong: rgba(118, 80, 75, 0.18);
    --zn-warning-border: rgba(118, 80, 75, 0.28);
    --zn-warning-border-strong: rgba(118, 80, 75, 0.38);
    --zn-warning-text: #76504B;
    --zn-danger: #A34D4D;
    --zn-danger-soft: rgba(163, 77, 77, 0.1);
    --zn-danger-soft-strong: rgba(163, 77, 77, 0.16);
    --zn-danger-border: rgba(163, 77, 77, 0.32);
    --zn-danger-border-soft: rgba(163, 77, 77, 0.22);
    --zn-danger-border-strong: rgba(163, 77, 77, 0.42);
    --zn-danger-text: #A34D4D;
    --zn-danger-text-strong: #7D3131;
    --zn-danger-surface: rgba(163, 77, 77, 0.1);
    --zn-danger-surface-hover: rgba(163, 77, 77, 0.16);
    --zn-danger-shadow: rgba(163, 77, 77, 0.12);
    --zn-success-ring: rgba(46, 118, 82, 0.08);
    --zn-warning-ring: rgba(118, 80, 75, 0.1);
    --zn-danger-ring: rgba(163, 77, 77, 0.1);

    --zn-shadow: 0 12px 34px rgba(34, 24, 23, 0.08);
    --zn-shadow-soft: 0 8px 24px rgba(34, 24, 23, 0.06);
    --zn-shadow-sidebar: 24px 0 80px rgba(34, 24, 23, 0.1);

    --zn-scrollbar-track: rgba(233, 236, 234, 0.8);
    --zn-scrollbar-thumb: rgba(128, 0, 32, 0.38);
    --zn-scrollbar-thumb-hover: rgba(128, 0, 32, 0.58);
    --zn-scrollbar-border: rgba(255, 255, 255, 0.92);
    --zn-scrollbar-fill-start: rgba(128, 0, 32, 0.42);
    --zn-scrollbar-fill-end: rgba(23, 77, 56, 0.22);
    --zn-brand-surface-end: #800020;
    --zn-brand-border: #800020;

    --zn-member-bg-app: #E9ECEA;
    --zn-member-bg-shell: #F7F8F6;
    --zn-member-bg-pane: #FFFFFF;
    --zn-member-bg-card: #F5F7F5;
    --zn-member-bg-bubble-in: #CBCBCB;
    --zn-member-bg-bubble-out: #800020;
    --zn-member-border: #CCD4CF;
    --zn-member-border-soft: #E0E5E1;
    --zn-member-border-strong: #AEB9B2;
    --zn-member-border-bright: #800020;
    --zn-member-border-muted: #E0E5E1;
    --zn-member-text-primary: #211817;
    --zn-member-text-secondary: #625756;
    --zn-member-text-muted: #877D7B;
    --zn-member-text-link: #800020;
    --zn-member-danger-text: #A34D4D;
    --zn-member-danger-text-soft: #76504B;
    --zn-member-warning-text: #76504B;
    --zn-member-success-text: #2E7652;
    --zn-member-accent: #800020;
    --zn-member-accent-soft: #800020;
    --zn-member-accent-surface: #800020;
    --zn-member-accent-surface-strong: #800020;
    --zn-member-accent-border: #800020;
    --zn-member-accent-border-muted: #800020;
    --zn-member-accent-border-strong: #660019;
    --zn-member-accent-text: #FFFFFF;
    --zn-member-secondary-accent: #174D38;
    --zn-member-secondary-accent-soft: #DCE8E2;
    --zn-member-secondary-accent-surface: #E4EEE8;
    --zn-member-secondary-accent-border: #A9C3B5;
    --zn-member-secondary-accent-text: #174D38;
    --zn-member-bg-surface-hover: #CBCBCB;
    --zn-member-bg-surface-active: #800020;
    --zn-member-bg-surface-strong: #800020;
    --zn-member-bg-surface-lift: #FFFFFF;
    --zn-member-bg-surface-faint: rgba(128, 0, 32, 0.035);
    --zn-member-primary: #800020;
    --zn-member-primary-hover: #660019;
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: 0 12px 34px rgba(34, 24, 23, 0.08);
    --zn-member-scrollbar-track: rgba(233, 236, 234, 0.74);
    --zn-member-scrollbar-thumb: rgba(128, 0, 32, 0.36);
    --zn-member-scrollbar-thumb-hover: rgba(128, 0, 32, 0.56);
    --zn-member-scrollbar-border: rgba(255, 255, 255, 0.92);
    --zn-member-scrollbar-fill-start: rgba(128, 0, 32, 0.4);
    --zn-member-scrollbar-fill-end: rgba(23, 77, 56, 0.22);
}

[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) {
    color: #FFFFFF;
    border-color: #800020;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        0 12px 28px rgba(128, 0, 32, 0.16);
}

[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-author,
[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-author-title,
[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-time,
[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) .message-status {
    color: rgba(255, 255, 255, 0.74);
}

[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) p,
[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) strong,
[data-theme="znode-light"] .message-row.is-sent:not(.is-group-message) .message-bubble:not(.has-media-message) a {
    color: #FFFFFF;
}

[data-theme="znode-light"] .message-row.is-group-message .message-bubble:not(.has-media-message),
[data-theme="znode-light"] .message-row.is-sent.is-group-message .message-bubble:not(.has-media-message),
[data-theme="znode-light"] .message-row.is-group-message .message-bubble:not(.has-media-message) p,
[data-theme="znode-light"] .message-row.is-group-message .message-bubble:not(.has-media-message) strong,
[data-theme="znode-light"] .message-row.is-group-message .message-bubble:not(.has-media-message) a {
    color: #211817;
}

[data-theme="znode-light"] body.user-body-messaging .conversation-avatar:not(:has(img)),
[data-theme="znode-light"] body.user-body-messaging .chat-header-avatar:not(:has(img)),
[data-theme="znode-light"] body.user-body-messaging .mini-profile-avatar-fallback {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #800020;
    border: 1px solid var(--zn-member-secondary-accent-border);
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-messaging .conversation-list-contacts .conversation-item:nth-child(5n) .conversation-avatar:not(:has(img)),
[data-theme="znode-light"] body.user-body-messaging .conversation-list-recent .conversation-item:nth-child(6n) .conversation-avatar:not(:has(img)) {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.58), transparent 48%),
        var(--zn-member-secondary-accent-soft);
    border-color: var(--zn-member-secondary-accent-border);
    color: var(--zn-member-secondary-accent);
}

[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active {
    position: relative;
    background: #800020;
    border-color: #800020;
    color: #FFFFFF;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.18),
        0 10px 24px rgba(128, 0, 32, 0.12);
}

[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 14px;
    bottom: 14px;
    width: 3px;
    border-radius: 999px;
    background: var(--zn-member-secondary-accent);
    opacity: 0.84;
}

[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active strong,
[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active p,
[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active .conversation-meta,
[data-theme="znode-light"] body.user-body-messaging .conversation-item.is-active .presence-copy {
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-workspace .workspace-row-icon {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #800020;
    border-color: var(--zn-member-secondary-accent-border);
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-workspace .workspace-row-icon-folder::before,
[data-theme="znode-light"] body.user-body-workspace .workspace-row-icon-folder::after {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 42%),
        #800020;
    border: 1px solid var(--zn-member-secondary-accent-border);
}

[data-theme="znode-light"] body.user-body-workspace .workspace-row-icon-folder::before {
    border-bottom-color: var(--zn-member-secondary-accent-border);
    box-shadow: inset 0 -2px 0 var(--zn-member-secondary-accent-soft);
}

[data-theme="znode-light"] body.user-body-workspace .workspace-row-icon-file {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.2), transparent 44%),
        #800020;
    border-color: var(--zn-member-secondary-accent-border);
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.58), rgba(242, 242, 242, 0.72)),
        rgba(128, 0, 32, 0.05);
}

[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card .workspace-tool-icon,
[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card svg {
    color: #800020;
    stroke: currentColor;
}

[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card:hover,
[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card.is-active {
    background: #800020;
    border-color: #800020;
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card:hover .workspace-tool-icon,
[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card.is-active .workspace-tool-icon {
    color: #FFFFFF;
}

[data-theme="znode-light"] body.admin-body .action-button,
[data-theme="znode-light"] body.admin-body .primary-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #800020;
    border-color: #800020;
    color: #FFFFFF;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 8px 20px rgba(128, 0, 32, 0.14);
}

[data-theme="znode-light"] body.admin-body .action-button:hover:not(:disabled),
[data-theme="znode-light"] body.admin-body .primary-button:hover:not(:disabled),
[data-theme="znode-light"] body.admin-body .action-button:focus-visible,
[data-theme="znode-light"] body.admin-body .primary-button:focus-visible {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 36%),
        #660019;
    border-color: #660019;
    color: #FFFFFF;
}

[data-theme="znode-light"] body.admin-body .action-button:disabled,
[data-theme="znode-light"] body.admin-body .primary-button:disabled {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.08)),
        #800020;
    border-color: #800020;
    color: rgba(255, 255, 255, 0.86);
    opacity: 0.54;
}

[data-theme="znode-light"] .surface-switcher-link.is-active,
[data-theme="znode-light"] .user-app-nav-link.is-active {
    color: #FFFFFF;
}

[data-theme="znode-light"] .surface-switcher-link.is-active svg,
[data-theme="znode-light"] .user-app-nav-link.is-active svg,
[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card.is-active svg,
[data-theme="znode-light"] body.user-body-workspace .workspace-tool-card:hover svg,
[data-theme="znode-light"] body.admin-body .action-button svg,
[data-theme="znode-light"] body.admin-body .primary-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="znode-light"] .user-bottom-nav-link.is-active,
[data-theme="znode-light"] .user-bottom-nav-link.is-active svg {
    color: #800020;
    stroke: currentColor;
}

[data-theme="znode-light"] body.user-body-messaging .call-button,
[data-theme="znode-light"] body.user-body-messaging .composer-button,
[data-theme="znode-light"] body.user-body-messaging .voice-record-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #800020;
    border-color: #800020;
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-messaging .call-button svg,
[data-theme="znode-light"] body.user-body-messaging .composer-button svg,
[data-theme="znode-light"] body.user-body-messaging .voice-record-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="znode-light"] body.user-body-messaging .composer-tools .icon-button {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 38%),
        #800020;
    border-color: #800020;
    color: #FFFFFF;
}

[data-theme="znode-light"] body.user-body-messaging .composer-tools .icon-button svg {
    color: #FFFFFF;
    stroke: currentColor;
}

[data-theme="cobalt-sky"],
[data-theme="tuscan-sunset"],
[data-theme="ink-wash"] {
    color-scheme: light;

    --zn-color-scheme: light;
    --zn-bg-app-member: var(--zn-bg-app);
    --zn-bg-app-gradient-start: var(--zn-bg-app);
    --zn-bg-app-gradient-end: var(--zn-bg-app);
    --zn-bg-sidebar-alpha: color-mix(in srgb, var(--zn-bg-sidebar) 97%, transparent);
    --zn-bg-surface-elevated: var(--zn-bg-surface-muted);
    --zn-bg-panel: linear-gradient(180deg, var(--zn-bg-surface), var(--zn-bg-surface-muted));
    --zn-bg-surface-hover: rgba(26, 26, 26, 0.035);
    --zn-bg-surface-active: rgba(26, 26, 26, 0.055);
    --zn-bg-surface-faint: rgba(26, 26, 26, 0.02);
    --zn-bg-surface-raised: rgba(26, 26, 26, 0.03);
    --zn-surface-glint: rgba(255, 255, 255, 0.72);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.46);

    --zn-border-muted: var(--zn-border-soft);
    --zn-border-strong: var(--zn-border);

    --zn-text-inverse: #FFFFFF;

    --zn-accent-surface: var(--zn-accent-soft);
    --zn-accent-surface-strong: color-mix(in srgb, var(--zn-accent-soft) 84%, var(--zn-accent) 16%);
    --zn-accent-surface-lift: color-mix(in srgb, var(--zn-accent-soft) 92%, #FFFFFF 8%);
    --zn-accent-surface-muted: color-mix(in srgb, var(--zn-accent-soft) 72%, #FFFFFF 28%);
    --zn-accent-border: color-mix(in srgb, var(--zn-accent) 34%, var(--zn-border) 66%);
    --zn-accent-border-active: color-mix(in srgb, var(--zn-accent) 42%, var(--zn-border) 58%);
    --zn-accent-border-soft: color-mix(in srgb, var(--zn-accent) 24%, var(--zn-border-soft) 76%);
    --zn-accent-border-subtle: color-mix(in srgb, var(--zn-accent) 16%, var(--zn-border-soft) 84%);
    --zn-accent-border-focus: color-mix(in srgb, var(--zn-accent) 52%, var(--zn-border) 48%);
    --zn-accent-text: var(--zn-accent-hover);
    --zn-accent-text-muted: var(--zn-accent);
    --zn-accent-text-strong: var(--zn-accent-hover);
    --zn-accent-shadow: color-mix(in srgb, var(--zn-accent) 14%, transparent);

    --zn-success-soft-muted: color-mix(in srgb, var(--zn-success) 8%, transparent);
    --zn-success-soft: color-mix(in srgb, var(--zn-success) 12%, transparent);
    --zn-success-soft-strong: color-mix(in srgb, var(--zn-success) 16%, transparent);
    --zn-success-border: color-mix(in srgb, var(--zn-success) 30%, transparent);
    --zn-success-text: var(--zn-success);
    --zn-warning-soft-muted: color-mix(in srgb, var(--zn-warning) 8%, transparent);
    --zn-warning-soft: color-mix(in srgb, var(--zn-warning) 13%, transparent);
    --zn-warning-soft-strong: color-mix(in srgb, var(--zn-warning) 18%, transparent);
    --zn-warning-border: color-mix(in srgb, var(--zn-warning) 30%, transparent);
    --zn-warning-border-strong: color-mix(in srgb, var(--zn-warning) 40%, transparent);
    --zn-warning-text: #75591F;
    --zn-danger-soft: color-mix(in srgb, var(--zn-danger) 10%, transparent);
    --zn-danger-soft-strong: color-mix(in srgb, var(--zn-danger) 16%, transparent);
    --zn-danger-border: color-mix(in srgb, var(--zn-danger) 30%, transparent);
    --zn-danger-border-soft: color-mix(in srgb, var(--zn-danger) 26%, transparent);
    --zn-danger-border-strong: color-mix(in srgb, var(--zn-danger) 42%, transparent);
    --zn-danger-text: var(--zn-danger);
    --zn-danger-text-strong: color-mix(in srgb, var(--zn-danger) 78%, #000000 22%);
    --zn-danger-surface: color-mix(in srgb, var(--zn-danger) 10%, transparent);
    --zn-danger-surface-hover: color-mix(in srgb, var(--zn-danger) 15%, transparent);
    --zn-danger-shadow: color-mix(in srgb, var(--zn-danger) 8%, transparent);
    --zn-success-ring: color-mix(in srgb, var(--zn-success) 8%, transparent);
    --zn-warning-ring: color-mix(in srgb, var(--zn-warning) 8%, transparent);
    --zn-danger-ring: color-mix(in srgb, var(--zn-danger) 8%, transparent);

    --zn-shadow-soft: var(--zn-shadow);
    --zn-shadow-sidebar: var(--zn-shadow);

    --zn-scrollbar-track: color-mix(in srgb, var(--zn-border-soft) 42%, transparent);
    --zn-scrollbar-thumb: color-mix(in srgb, var(--zn-text-muted) 42%, transparent);
    --zn-scrollbar-thumb-hover: color-mix(in srgb, var(--zn-text-secondary) 54%, transparent);
    --zn-scrollbar-border: color-mix(in srgb, var(--zn-bg-app) 92%, transparent);
    --zn-scrollbar-fill-start: color-mix(in srgb, var(--zn-text-muted) 30%, transparent);
    --zn-scrollbar-fill-end: color-mix(in srgb, var(--zn-text-secondary) 24%, transparent);
    --zn-brand-surface-end: var(--zn-accent-soft);
    --zn-brand-border: var(--zn-accent-border);

    --zn-member-bg-app: var(--zn-bg-app);
    --zn-member-bg-shell: var(--zn-bg-sidebar);
    --zn-member-bg-pane: var(--zn-bg-surface);
    --zn-member-bg-card: color-mix(in srgb, var(--zn-bg-surface) 94%, transparent);
    --zn-member-bg-bubble-in: var(--zn-bg-surface);
    --zn-member-bg-bubble-out: var(--zn-accent-soft);
    --zn-member-border: var(--zn-border);
    --zn-member-border-soft: var(--zn-border-soft);
    --zn-member-border-strong: var(--zn-border);
    --zn-member-border-bright: var(--zn-border);
    --zn-member-border-muted: var(--zn-border-soft);
    --zn-member-text-primary: var(--zn-text-primary);
    --zn-member-text-secondary: var(--zn-text-secondary);
    --zn-member-text-muted: var(--zn-text-muted);
    --zn-member-text-link: var(--zn-accent-hover);
    --zn-member-danger-text: var(--zn-danger);
    --zn-member-danger-text-soft: var(--zn-danger);
    --zn-member-warning-text: var(--zn-warning-text);
    --zn-member-success-text: var(--zn-success);
    --zn-member-accent: var(--zn-accent);
    --zn-member-accent-soft: var(--zn-accent-soft);
    --zn-member-accent-surface: var(--zn-accent-soft);
    --zn-member-accent-surface-strong: var(--zn-accent-surface-strong);
    --zn-member-accent-border: var(--zn-accent-border);
    --zn-member-accent-border-muted: var(--zn-accent-border-soft);
    --zn-member-accent-border-strong: var(--zn-accent-border-focus);
    --zn-member-accent-text: var(--zn-accent-text);
    --zn-member-bg-surface-hover: var(--zn-bg-surface-hover);
    --zn-member-bg-surface-active: var(--zn-bg-surface-active);
    --zn-member-bg-surface-strong: rgba(26, 26, 26, 0.075);
    --zn-member-bg-surface-lift: var(--zn-bg-surface-raised);
    --zn-member-bg-surface-faint: var(--zn-bg-surface-faint);
    --zn-member-primary: var(--zn-accent);
    --zn-member-primary-hover: var(--zn-accent-hover);
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: var(--zn-shadow);
    --zn-member-scrollbar-track: var(--zn-scrollbar-track);
    --zn-member-scrollbar-thumb: var(--zn-scrollbar-thumb);
    --zn-member-scrollbar-thumb-hover: var(--zn-scrollbar-thumb-hover);
    --zn-member-scrollbar-border: var(--zn-scrollbar-border);
    --zn-member-scrollbar-fill-start: var(--zn-scrollbar-fill-start);
    --zn-member-scrollbar-fill-end: var(--zn-scrollbar-fill-end);
}

[data-theme="urban-loft"] {
    color-scheme: dark;

    --zn-color-scheme: dark;
    --zn-bg-app-member: var(--zn-bg-app);
    --zn-bg-app-gradient-start: color-mix(in srgb, var(--zn-bg-app) 96%, #FFFFFF 4%);
    --zn-bg-app-gradient-end: var(--zn-bg-app);
    --zn-bg-sidebar-alpha: color-mix(in srgb, var(--zn-bg-sidebar) 97%, transparent);
    --zn-bg-surface-elevated: color-mix(in srgb, var(--zn-bg-surface) 86%, #000000 14%);
    --zn-bg-panel: linear-gradient(180deg, var(--zn-bg-surface), color-mix(in srgb, var(--zn-bg-surface-muted) 80%, #000000 20%));
    --zn-bg-surface-hover: rgba(255, 255, 255, 0.04);
    --zn-bg-surface-active: rgba(255, 255, 255, 0.065);
    --zn-bg-surface-faint: rgba(255, 255, 255, 0.025);
    --zn-bg-surface-raised: rgba(255, 255, 255, 0.045);
    --zn-surface-glint: rgba(255, 255, 255, 0.08);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.04);

    --zn-border-muted: var(--zn-border-soft);
    --zn-border-strong: color-mix(in srgb, var(--zn-border) 70%, var(--zn-text-muted) 30%);

    --zn-text-inverse: #080A0B;

    --zn-accent-surface: var(--zn-accent-soft);
    --zn-accent-surface-strong: color-mix(in srgb, var(--zn-accent-soft) 74%, var(--zn-accent) 26%);
    --zn-accent-surface-lift: color-mix(in srgb, var(--zn-accent-soft) 80%, #FFFFFF 20%);
    --zn-accent-surface-muted: color-mix(in srgb, var(--zn-accent-soft) 80%, transparent);
    --zn-accent-border: color-mix(in srgb, var(--zn-accent) 42%, transparent);
    --zn-accent-border-active: color-mix(in srgb, var(--zn-accent) 50%, transparent);
    --zn-accent-border-soft: color-mix(in srgb, var(--zn-accent) 30%, transparent);
    --zn-accent-border-subtle: color-mix(in srgb, var(--zn-accent) 22%, transparent);
    --zn-accent-border-focus: color-mix(in srgb, var(--zn-accent) 60%, transparent);
    --zn-accent-text: color-mix(in srgb, var(--zn-accent-hover) 72%, #FFFFFF 28%);
    --zn-accent-text-muted: color-mix(in srgb, var(--zn-accent) 70%, #FFFFFF 30%);
    --zn-accent-text-strong: color-mix(in srgb, var(--zn-accent-hover) 62%, #FFFFFF 38%);
    --zn-accent-shadow: color-mix(in srgb, var(--zn-accent) 18%, transparent);

    --zn-success-soft-muted: color-mix(in srgb, var(--zn-success) 10%, transparent);
    --zn-success-soft: color-mix(in srgb, var(--zn-success) 13%, transparent);
    --zn-success-soft-strong: color-mix(in srgb, var(--zn-success) 18%, transparent);
    --zn-success-border: color-mix(in srgb, var(--zn-success) 34%, transparent);
    --zn-success-text: color-mix(in srgb, var(--zn-success) 62%, #FFFFFF 38%);
    --zn-warning-soft-muted: color-mix(in srgb, var(--zn-warning) 10%, transparent);
    --zn-warning-soft: color-mix(in srgb, var(--zn-warning) 14%, transparent);
    --zn-warning-soft-strong: color-mix(in srgb, var(--zn-warning) 20%, transparent);
    --zn-warning-border: color-mix(in srgb, var(--zn-warning) 34%, transparent);
    --zn-warning-border-strong: color-mix(in srgb, var(--zn-warning) 42%, transparent);
    --zn-warning-text: color-mix(in srgb, var(--zn-warning) 64%, #FFFFFF 36%);
    --zn-danger-soft: color-mix(in srgb, var(--zn-danger) 12%, transparent);
    --zn-danger-soft-strong: color-mix(in srgb, var(--zn-danger) 18%, transparent);
    --zn-danger-border: color-mix(in srgb, var(--zn-danger) 34%, transparent);
    --zn-danger-border-soft: color-mix(in srgb, var(--zn-danger) 28%, transparent);
    --zn-danger-border-strong: color-mix(in srgb, var(--zn-danger) 46%, transparent);
    --zn-danger-text: color-mix(in srgb, var(--zn-danger) 58%, #FFFFFF 42%);
    --zn-danger-text-strong: color-mix(in srgb, var(--zn-danger) 44%, #FFFFFF 56%);
    --zn-danger-surface: color-mix(in srgb, var(--zn-danger) 12%, transparent);
    --zn-danger-surface-hover: color-mix(in srgb, var(--zn-danger) 18%, transparent);
    --zn-danger-shadow: color-mix(in srgb, var(--zn-danger) 10%, transparent);
    --zn-success-ring: color-mix(in srgb, var(--zn-success) 9%, transparent);
    --zn-warning-ring: color-mix(in srgb, var(--zn-warning) 9%, transparent);
    --zn-danger-ring: color-mix(in srgb, var(--zn-danger) 9%, transparent);

    --zn-shadow-soft: var(--zn-shadow);
    --zn-shadow-sidebar: var(--zn-shadow);

    --zn-scrollbar-track: color-mix(in srgb, var(--zn-bg-app) 70%, transparent);
    --zn-scrollbar-thumb: color-mix(in srgb, var(--zn-text-muted) 44%, transparent);
    --zn-scrollbar-thumb-hover: color-mix(in srgb, var(--zn-text-secondary) 58%, transparent);
    --zn-scrollbar-border: color-mix(in srgb, var(--zn-bg-app) 92%, transparent);
    --zn-scrollbar-fill-start: color-mix(in srgb, var(--zn-text-muted) 36%, transparent);
    --zn-scrollbar-fill-end: color-mix(in srgb, var(--zn-text-secondary) 30%, transparent);
    --zn-brand-surface-end: var(--zn-accent-soft);
    --zn-brand-border: var(--zn-accent-border);

    --zn-member-bg-app: var(--zn-bg-app);
    --zn-member-bg-shell: var(--zn-bg-sidebar);
    --zn-member-bg-pane: var(--zn-bg-surface);
    --zn-member-bg-card: color-mix(in srgb, var(--zn-bg-surface) 94%, transparent);
    --zn-member-bg-bubble-in: var(--zn-bg-surface);
    --zn-member-bg-bubble-out: var(--zn-accent-soft);
    --zn-member-border: var(--zn-border);
    --zn-member-border-soft: var(--zn-border-soft);
    --zn-member-border-strong: var(--zn-border-strong);
    --zn-member-border-bright: var(--zn-border);
    --zn-member-border-muted: var(--zn-border-soft);
    --zn-member-text-primary: var(--zn-text-primary);
    --zn-member-text-secondary: var(--zn-text-secondary);
    --zn-member-text-muted: var(--zn-text-muted);
    --zn-member-text-link: var(--zn-accent-text);
    --zn-member-danger-text: var(--zn-danger-text);
    --zn-member-danger-text-soft: var(--zn-danger-text-strong);
    --zn-member-warning-text: var(--zn-warning-text);
    --zn-member-success-text: var(--zn-success-text);
    --zn-member-accent: var(--zn-accent);
    --zn-member-accent-soft: var(--zn-accent-soft);
    --zn-member-accent-surface: var(--zn-accent-soft);
    --zn-member-accent-surface-strong: var(--zn-accent-surface-strong);
    --zn-member-accent-border: var(--zn-accent-border);
    --zn-member-accent-border-muted: var(--zn-accent-border-soft);
    --zn-member-accent-border-strong: var(--zn-accent-border-focus);
    --zn-member-accent-text: var(--zn-accent-text);
    --zn-member-bg-surface-hover: var(--zn-bg-surface-hover);
    --zn-member-bg-surface-active: var(--zn-bg-surface-active);
    --zn-member-bg-surface-strong: rgba(255, 255, 255, 0.075);
    --zn-member-bg-surface-lift: var(--zn-bg-surface-raised);
    --zn-member-bg-surface-faint: var(--zn-bg-surface-faint);
    --zn-member-primary: var(--zn-accent);
    --zn-member-primary-hover: var(--zn-accent-hover);
    --zn-member-primary-text: var(--zn-text-inverse);
    --zn-member-shadow: var(--zn-shadow);
    --zn-member-scrollbar-track: var(--zn-scrollbar-track);
    --zn-member-scrollbar-thumb: var(--zn-scrollbar-thumb);
    --zn-member-scrollbar-thumb-hover: var(--zn-scrollbar-thumb-hover);
    --zn-member-scrollbar-border: var(--zn-scrollbar-border);
    --zn-member-scrollbar-fill-start: var(--zn-scrollbar-fill-start);
    --zn-member-scrollbar-fill-end: var(--zn-scrollbar-fill-end);
}

[data-theme="cobalt-sky"] {
    --zn-bg-app: #F3F7FB;
    --zn-bg-sidebar: #E6EEF7;
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-muted: #EDF3F8;

    --zn-border: #B8CBE0;
    --zn-border-soft: #D8E4F0;

    --zn-text-primary: #0B1B33;
    --zn-text-secondary: #3F5368;
    --zn-text-muted: #6D8196;

    --zn-accent: #0047AB;
    --zn-accent-hover: #000080;
    --zn-accent-soft: #C8DAF2;
    --zn-accent-surface: color-mix(in srgb, var(--zn-accent) 18%, #FFFFFF 82%);
    --zn-accent-surface-strong: color-mix(in srgb, var(--zn-accent) 28%, #FFFFFF 72%);
    --zn-accent-surface-lift: color-mix(in srgb, var(--zn-accent) 20%, #FFFFFF 80%);
    --zn-accent-surface-muted: color-mix(in srgb, var(--zn-accent) 14%, #FFFFFF 86%);
    --zn-accent-border: color-mix(in srgb, var(--zn-accent) 54%, var(--zn-border) 46%);
    --zn-accent-border-active: color-mix(in srgb, var(--zn-accent) 62%, var(--zn-border) 38%);
    --zn-accent-border-soft: color-mix(in srgb, var(--zn-accent) 38%, var(--zn-border-soft) 62%);
    --zn-accent-border-subtle: color-mix(in srgb, var(--zn-accent) 28%, var(--zn-border-soft) 72%);
    --zn-accent-border-focus: color-mix(in srgb, var(--zn-accent) 72%, var(--zn-border) 28%);

    --zn-success: #2E8B57;
    --zn-warning: #D99A2B;
    --zn-danger: #C94A3A;

    --zn-shadow: 0 12px 32px rgba(0, 71, 171, 0.12);
}

[data-theme="tuscan-sunset"] {
    --zn-bg-app: #FFF5EC;
    --zn-bg-sidebar: #F6E4D4;
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-muted: #FFE8D3;

    --zn-border: #E5C3AE;
    --zn-border-soft: #F1D8C8;

    --zn-text-primary: #2A1710;
    --zn-text-secondary: #6B4A3A;
    --zn-text-muted: #9988A1;

    --zn-accent: #E35336;
    --zn-accent-hover: #8A2B0E;
    --zn-accent-soft: #FFD3AC;

    --zn-success: #4F8A5B;
    --zn-warning: #D99A2B;
    --zn-danger: #B93224;

    --zn-shadow: 0 12px 32px rgba(138, 43, 14, 0.14);
}

[data-theme="ink-wash"] {
    --zn-bg-app: #F2F2EF;
    --zn-bg-sidebar: #E5E5E0;
    --zn-bg-surface: #FFFFFF;
    --zn-bg-surface-muted: #EEEEEA;

    --zn-border: #BEBEB8;
    --zn-border-soft: #DADAD4;

    --zn-text-primary: #1F1F1F;
    --zn-text-secondary: #4A4A4A;
    --zn-text-muted: #747474;

    --zn-accent: #4A4A4A;
    --zn-accent-hover: #2F2F2F;
    --zn-accent-soft: #D2D2CE;
    --zn-accent-surface-lift: color-mix(in srgb, var(--zn-accent-soft) 88%, #FFFFE3 12%);
    --zn-accent-surface-muted: color-mix(in srgb, var(--zn-accent-soft) 86%, #FFFFE3 14%);

    --zn-success: #3A7A5A;
    --zn-warning: #B8842C;
    --zn-danger: #B34A3A;

    --zn-shadow: 0 12px 32px rgba(74, 74, 74, 0.10);
}

[data-theme="urban-loft"] {
    --zn-bg-app: #0B0D0E;
    --zn-bg-sidebar: #101213;
    --zn-bg-surface: #151718;
    --zn-bg-surface-muted: #1B2021;

    --zn-border: #2E3534;
    --zn-border-soft: #1F2525;

    --zn-text-primary: #FFFFFF;
    --zn-text-secondary: #D8DCDD;
    --zn-text-muted: #9AA1A2;

    --zn-accent: #C5AD73;
    --zn-accent-hover: #D8C68F;
    --zn-accent-soft: rgba(197, 173, 115, 0.16);

    --zn-success: #7BAA8A;
    --zn-warning: #C5AD73;
    --zn-danger: #C9786E;

    --zn-shadow: 0 18px 48px rgba(0, 0, 0, 0.46);
}

[data-theme="tuscan-sunset"] {
    --zn-bg-app: #D6BE8A;
    --zn-bg-app-member: #D6BE8A;
    --zn-bg-app-gradient-start: #F7F1E3;
    --zn-bg-app-gradient-end: #D6BE8A;
    --zn-bg-sidebar: #EAD9B8;
    --zn-bg-sidebar-alpha: rgba(234, 217, 184, 0.92);
    --zn-bg-surface: #FFFEFA;
    --zn-bg-surface-elevated: rgba(255, 254, 250, 0.96);
    --zn-bg-surface-muted: #F3E4C4;
    --zn-bg-panel: linear-gradient(180deg, rgba(255, 254, 250, 0.98), rgba(243, 228, 196, 0.88));
    --zn-bg-surface-hover: rgba(30, 27, 22, 0.05);
    --zn-bg-surface-active: rgba(30, 27, 22, 0.08);
    --zn-bg-surface-faint: rgba(30, 27, 22, 0.025);
    --zn-bg-surface-raised: rgba(255, 254, 250, 0.76);
    --zn-surface-glint: rgba(255, 255, 255, 0.82);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.54);

    --zn-border: rgba(151, 126, 78, 0.36);
    --zn-border-soft: rgba(151, 126, 78, 0.2);
    --zn-border-muted: rgba(30, 27, 22, 0.1);
    --zn-border-strong: rgba(151, 126, 78, 0.48);

    --zn-text-primary: #1E1B16;
    --zn-text-secondary: #413B31;
    --zn-text-muted: #746B5D;

    --zn-accent: #1E1B16;
    --zn-accent-hover: #000000;
    --zn-accent-soft: #EAD9B8;
    --zn-accent-surface: rgba(30, 27, 22, 0.08);
    --zn-accent-surface-strong: rgba(30, 27, 22, 0.13);
    --zn-accent-surface-lift: rgba(214, 190, 138, 0.28);
    --zn-accent-surface-muted: rgba(30, 27, 22, 0.045);
    --zn-accent-border: rgba(30, 27, 22, 0.28);
    --zn-accent-border-active: rgba(30, 27, 22, 0.4);
    --zn-accent-border-soft: rgba(30, 27, 22, 0.16);
    --zn-accent-border-subtle: rgba(30, 27, 22, 0.1);
    --zn-accent-border-focus: rgba(30, 27, 22, 0.42);
    --zn-accent-text: #1E1B16;
    --zn-accent-text-muted: #413B31;
    --zn-accent-text-strong: #000000;
    --zn-accent-shadow: rgba(30, 27, 22, 0.12);

    --zn-success: #6F5A2D;
    --zn-warning: #9C742D;
    --zn-danger: #A94F43;

    --zn-shadow: 0 18px 48px rgba(62, 52, 34, 0.14);
    --zn-shadow-soft: 0 0 0 1px rgba(170, 123, 45, 0.08), 0 18px 44px rgba(62, 52, 34, 0.12);
    --zn-shadow-sidebar: 24px 0 80px rgba(62, 52, 34, 0.14);

    --zn-scrollbar-track: rgba(230, 212, 176, 0.42);
    --zn-scrollbar-thumb: rgba(130, 103, 51, 0.36);
    --zn-scrollbar-thumb-hover: rgba(97, 78, 42, 0.54);
    --zn-scrollbar-border: rgba(247, 241, 227, 0.8);
    --zn-scrollbar-fill-start: rgba(214, 190, 138, 0.34);
    --zn-scrollbar-fill-end: rgba(30, 27, 22, 0.26);
    --zn-brand-surface-end: rgba(214, 190, 138, 0.16);
    --zn-brand-border: rgba(30, 27, 22, 0.22);

    --zn-member-bg-app: #D6BE8A;
    --zn-member-shade-start: rgba(255, 254, 250, 0.86);
    --zn-member-shade-mid: rgba(247, 241, 227, 0.62);
    --zn-member-shade-end: rgba(214, 190, 138, 0.72);
    --zn-member-bg-shell: rgba(255, 254, 250, 0.92);
    --zn-member-bg-pane: #FFFEFA;
    --zn-member-bg-pane-shade: linear-gradient(180deg, #FFFEFA 0%, #F8EFD9 62%, #F0DDB4 100%);
    --zn-member-bg-card: rgba(255, 254, 250, 0.95);
    --zn-member-bg-bubble-in: #F7F1E3;
    --zn-member-bg-bubble-out: #ECD4A2;
    --zn-member-border: rgba(151, 126, 78, 0.26);
    --zn-member-border-soft: rgba(151, 126, 78, 0.18);
    --zn-member-border-strong: rgba(151, 126, 78, 0.36);
    --zn-member-border-bright: rgba(255, 255, 255, 0.7);
    --zn-member-border-muted: rgba(30, 27, 22, 0.1);
    --zn-member-text-primary: #1E1B16;
    --zn-member-text-secondary: #413B31;
    --zn-member-text-muted: #746B5D;
    --zn-member-text-link: #1E1B16;
    --zn-member-accent: #1E1B16;
    --zn-member-accent-soft: rgba(30, 27, 22, 0.08);
    --zn-member-accent-surface: rgba(30, 27, 22, 0.07);
    --zn-member-accent-surface-strong: rgba(30, 27, 22, 0.12);
    --zn-member-accent-border: rgba(30, 27, 22, 0.22);
    --zn-member-accent-border-muted: rgba(151, 126, 78, 0.2);
    --zn-member-accent-border-strong: rgba(30, 27, 22, 0.32);
    --zn-member-accent-text: #1E1B16;
    --zn-member-bg-surface-hover: rgba(30, 27, 22, 0.045);
    --zn-member-bg-surface-active: rgba(30, 27, 22, 0.075);
    --zn-member-bg-surface-strong: rgba(30, 27, 22, 0.06);
    --zn-member-bg-surface-lift: rgba(255, 255, 255, 0.52);
    --zn-member-bg-surface-faint: rgba(30, 27, 22, 0.025);
    --zn-member-primary: #1E1B16;
    --zn-member-primary-hover: #000000;
    --zn-member-primary-text: #FFFFFF;
    --zn-member-shadow: 0 24px 60px rgba(62, 52, 34, 0.14);
}

[data-theme="cobalt-sky"] {
    --zn-bg-app: #91ACBD;
    --zn-bg-app-member: #91ACBD;
    --zn-bg-app-gradient-start: rgba(151, 178, 194, 0.98);
    --zn-bg-app-gradient-end: #06141B;
    --zn-bg-sidebar: #263846;
    --zn-bg-sidebar-alpha: rgba(31, 44, 54, 0.86);
    --zn-bg-surface: #314756;
    --zn-bg-surface-elevated: rgba(49, 71, 86, 0.88);
    --zn-bg-surface-muted: #3B5262;
    --zn-bg-panel: linear-gradient(180deg, rgba(74, 101, 117, 0.74), rgba(31, 44, 54, 0.86));
    --zn-bg-surface-hover: rgba(255, 255, 255, 0.06);
    --zn-bg-surface-active: rgba(255, 255, 255, 0.09);
    --zn-surface-glint: rgba(255, 255, 255, 0.14);
    --zn-surface-glint-soft: rgba(255, 255, 255, 0.07);

    --zn-border: rgba(229, 240, 247, 0.18);
    --zn-border-soft: rgba(229, 240, 247, 0.10);
    --zn-border-strong: rgba(213, 228, 239, 0.22);

    --zn-text-primary: #F8FBFC;
    --zn-text-secondary: #DDE7EE;
    --zn-text-muted: #C2D1DB;

    --zn-accent: #B7CDE0;
    --zn-accent-hover: #D5E4EF;
    --zn-accent-soft: rgba(183,205,224,0.18);
    --zn-accent-surface: rgba(183,205,224,0.16);
    --zn-accent-surface-strong: rgba(183,205,224,0.22);
    --zn-accent-border: rgba(213,228,239,0.34);
    --zn-accent-border-soft: rgba(213,228,239,0.24);
    --zn-accent-border-subtle: rgba(213,228,239,0.18);
    --zn-accent-text: #F8FBFC;
    --zn-accent-text-muted: #DDE7EE;
    --zn-accent-text-strong: #FFFFFF;

    --zn-success: #5B9671;
    --zn-warning: #C8A35C;
    --zn-danger: #C16A6A;

    --zn-shadow: 0 18px 48px rgba(3, 14, 20, 0.32);
    --zn-shadow-soft: 0 0 0 1px rgba(213, 228, 239, 0.08), 0 16px 34px rgba(3, 14, 20, 0.22);
    --zn-shadow-sidebar: 24px 0 80px rgba(3, 14, 20, 0.22);

    --zn-member-bg-app: #91ACBD;
    --zn-member-shade-start: rgba(245, 247, 249, 0.62);
    --zn-member-shade-mid: rgba(145, 172, 189, 0.72);
    --zn-member-shade-end: rgba(31, 44, 54, 0.92);
    --zn-member-bg-shell: rgba(38, 56, 70, 0.9);
    --zn-member-bg-pane: #314756;
    --zn-member-bg-pane-shade:
        radial-gradient(circle at 16% 0%, rgba(245, 247, 249, 0.18), transparent 34%),
        radial-gradient(circle at 82% 14%, rgba(183, 205, 224, 0.22), transparent 38%),
        linear-gradient(180deg, #4A6575 0%, #314756 58%, #1F2C36 100%);
    --zn-member-bg-card: rgba(49, 71, 86, 0.82);
    --zn-member-bg-bubble-in: #3B5262;
    --zn-member-bg-bubble-out: #B7CDE0;
    --zn-member-border: rgba(229, 240, 247, 0.18);
    --zn-member-border-soft: rgba(229, 240, 247, 0.1);
    --zn-member-border-strong: rgba(213, 228, 239, 0.28);
    --zn-member-border-bright: rgba(245, 247, 249, 0.22);
    --zn-member-border-muted: rgba(213, 228, 239, 0.1);
    --zn-member-text-primary: #F8FBFC;
    --zn-member-text-secondary: #DDE7EE;
    --zn-member-text-muted: #C2D1DB;
    --zn-member-text-link: #E5F3FF;
    --zn-member-danger-text: #FFDADB;
    --zn-member-danger-text-soft: #FFE6E6;
    --zn-member-warning-text: #FFF0C7;
    --zn-member-success-text: #DFF8E9;
    --zn-member-accent: #B7CDE0;
    --zn-member-accent-soft: rgba(183, 205, 224, 0.18);
    --zn-member-accent-surface: rgba(183, 205, 224, 0.16);
    --zn-member-accent-surface-strong: rgba(183, 205, 224, 0.24);
    --zn-member-accent-border: rgba(213, 228, 239, 0.32);
    --zn-member-accent-border-muted: rgba(213, 228, 239, 0.2);
    --zn-member-accent-border-strong: rgba(245, 247, 249, 0.4);
    --zn-member-accent-text: #F8FBFC;
    --zn-member-bg-surface-hover: rgba(255, 255, 255, 0.06);
    --zn-member-bg-surface-active: rgba(255, 255, 255, 0.09);
    --zn-member-bg-surface-strong: rgba(255, 255, 255, 0.08);
    --zn-member-bg-surface-lift: rgba(255, 255, 255, 0.07);
    --zn-member-bg-surface-faint: rgba(255, 255, 255, 0.035);
    --zn-member-primary: #B7CDE0;
    --zn-member-primary-hover: #D5E4EF;
    --zn-member-primary-text: #1F2C36;
    --zn-member-shadow: 0 24px 62px rgba(3, 14, 20, 0.34);
    --zn-member-scrollbar-track: rgba(31, 44, 54, 0.28);
    --zn-member-scrollbar-thumb: rgba(183, 205, 224, 0.36);
    --zn-member-scrollbar-thumb-hover: rgba(213, 228, 239, 0.56);
    --zn-member-scrollbar-border: rgba(31, 44, 54, 0.84);
    --zn-member-scrollbar-fill-start: rgba(213, 228, 239, 0.42);
    --zn-member-scrollbar-fill-end: rgba(145, 172, 189, 0.34);
}

.in-app-toast-container {
    position: fixed;
    right: max(18px, env(safe-area-inset-right));
    top: max(18px, env(safe-area-inset-top));
    z-index: 1200;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    width: min(380px, calc(100vw - 28px));
    pointer-events: none;
}

.in-app-toast {
    width: 100%;
    border: 1px solid var(--zn-border-strong);
    border-left: 3px solid var(--zn-accent);
    border-radius: 8px;
    padding: 11px 12px;
    background: var(--zn-bg-surface-elevated);
    background: color-mix(in srgb, var(--zn-bg-surface-elevated) 94%, black);
    box-shadow: var(--zn-shadow);
    color: var(--zn-text-primary);
    pointer-events: auto;
}

.in-app-toast.is-clickable {
    cursor: pointer;
}

.in-app-toast.is-clickable:hover,
.in-app-toast.is-clickable:focus-visible {
    border-color: var(--zn-accent-border);
    outline: none;
    box-shadow: var(--zn-shadow), 0 0 0 3px var(--zn-accent-soft);
}

.in-app-toast.severity-warn {
    border-left-color: var(--zn-warning);
}

.in-app-toast.severity-error,
.in-app-toast.severity-urgent {
    border-left-color: var(--zn-danger);
}

.in-app-toast-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 5px;
}

.in-app-toast-source,
.in-app-toast-action {
    color: var(--zn-text-muted);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.in-app-toast-action {
    color: var(--zn-accent-text);
    letter-spacing: 0;
    text-transform: none;
}

.in-app-toast-title {
    display: block;
    color: var(--zn-text-primary);
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.25;
}

.in-app-toast-detail {
    display: block;
    margin-top: 3px;
    color: var(--zn-text-secondary);
    font-size: 0.78rem;
    line-height: 1.35;
}

.flash-banner-success,
.flash-banner-error,
.flash-banner-warning {
    display: none;
}

.surface-switcher-link.has-in-app-activity,
.user-bottom-nav-link.has-in-app-activity,
.sidebar-link.has-in-app-activity {
    position: relative;
    border-color: var(--zn-warning-border, var(--zn-accent-border));
    box-shadow: inset 0 1px 0 var(--zn-surface-glint-soft), 0 0 0 1px var(--zn-warning-soft, var(--zn-accent-soft));
}

.surface-switcher-link.has-in-app-activity::before,
.user-bottom-nav-link.has-in-app-activity::before,
.sidebar-link.has-in-app-activity::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--zn-warning);
    box-shadow: 0 0 0 3px var(--zn-warning-soft), 0 0 18px var(--zn-warning);
}

.surface-switcher-link.has-in-app-activity::before,
.user-bottom-nav-link.has-in-app-activity::before {
    top: 5px;
    right: 7px;
}

.sidebar-link.has-in-app-activity::after {
    top: 10px;
    right: 10px;
}

.surface-switcher-link[data-in-app-severity="error"]::before,
.surface-switcher-link[data-in-app-severity="urgent"]::before,
.user-bottom-nav-link[data-in-app-severity="error"]::before,
.user-bottom-nav-link[data-in-app-severity="urgent"]::before,
.sidebar-link[data-in-app-severity="error"]::after,
.sidebar-link[data-in-app-severity="urgent"]::after {
    background: var(--zn-danger);
    box-shadow: 0 0 0 3px var(--zn-danger-soft), 0 0 18px var(--zn-danger);
}

@media (max-width: 720px) {
    .in-app-toast-container {
        right: 12px;
        top: max(12px, env(safe-area-inset-top));
        width: calc(100vw - 24px);
    }

    .in-app-toast {
        padding: 10px 11px;
    }
}
