/* VibeDesk — палитра light-office (см. docs/UI_BASELINE.md) */

/* Light office — основная светлая «офис», без излишнего белого (палитра из TXT) */
body[data-color-palette="light-office"] {
    --vd-bg: #eef2f6;
    --vd-bg-deep: #e3e8ee;
    --vd-panel: #f8fafc;
    --vd-panel-strong: #ffffff;
    --vd-panel-soft: #eef3f7;
    --vd-border: #d3dbe5;
    --vd-border-soft: #e5ebf1;
    --vd-border-strong: #b8c4d3;
    --vd-accent: #2f5d8a;
    --vd-accent-strong: #234766;
    --vd-accent-soft: rgba(47, 93, 138, 0.12);
    --vd-accent-soft-2: rgba(47, 93, 138, 0.2);
    --vd-accent-glow: 0 0 0 3px rgba(47, 93, 138, 0.16);
    --vd-chrome-bg: #314760;
    --vd-chrome-bg-soft: #3f5874;
    --vd-chrome-flat: #506782;
    --vd-messenger-head-bg: #445a71;
    --vd-chrome-gradient-135-from: color-mix(in srgb, var(--vd-chrome-bg) 92%, transparent);
    --vd-chrome-gradient-135-to: rgba(72, 96, 127, 0.86);
    --vd-chrome-sidebar-glass-from: rgba(60, 79, 102, 0.71);
    --vd-chrome-sidebar-glass-to: rgba(52, 70, 93, 0.68);
    --vd-chrome-panel-180-from: rgba(60, 79, 102, 0.96);
    --vd-chrome-panel-180-to: rgba(52, 70, 93, 0.94);
    --vd-chrome-kb-head-180-from: rgba(60, 79, 102, 0.95);
    --vd-chrome-kb-head-180-to: rgba(52, 70, 93, 0.92);
    --vd-chrome-shadow-rgb: 43, 58, 78;
    --vd-chrome-text: #ffffff;
    --vd-chrome-text-muted: rgba(255, 255, 255, 0.88);
    --vd-chrome-text-faint: rgba(255, 255, 255, 0.62);
    --vd-chrome-border: rgba(255, 255, 255, 0.08);
    --vd-chrome-active-bg: rgba(59, 130, 246, 0.22);
    --vd-chrome-active-text: #dbeafe;
    --vd-text: #0f172a;
    --vd-text-strong: #020617;
    --vd-text-muted: #475569;
    --vd-text-faint: #64748b;
    --vd-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05), 0 1px 3px rgba(15, 23, 42, 0.07);
    --vd-shadow-md: 0 8px 22px rgba(15, 23, 42, 0.09);
    --vd-shadow-lg: 0 16px 40px rgba(15, 23, 42, 0.12);
    --vd-chrome-active-bg: rgba(159, 196, 229, 0.2);
    --vd-chrome-active-text: #eff6ff;
    --vd-overlay: transparent;
    --vd-chip-violet-bg: rgba(110, 137, 207, 0.14);
    --vd-chip-violet-text: #3d5a99;
    --vd-chip-violet-border: rgba(110, 137, 207, 0.28);
    --vd-chip-blue-bg: rgba(59, 114, 193, 0.16);
    --vd-chip-blue-text: #235389;
    --vd-chip-blue-border: rgba(59, 114, 193, 0.28);
    --vd-chip-emerald-bg: rgba(41, 133, 118, 0.16);
    --vd-chip-emerald-text: #1f6f63;
    --vd-chip-emerald-border: rgba(41, 133, 118, 0.28);
    --vd-chip-orange-bg: rgba(196, 127, 57, 0.16);
    --vd-chip-orange-text: #9a5b1f;
    --vd-chip-orange-border: rgba(196, 127, 57, 0.28);
    --vd-chip-red-bg: rgba(201, 92, 92, 0.15);
    --vd-chip-red-text: #a13f3f;
    --vd-chip-red-border: rgba(201, 92, 92, 0.28);
    --vd-chip-yellow-bg: rgba(219, 168, 66, 0.17);
    --vd-chip-yellow-text: #9a6a10;
    --vd-chip-yellow-border: rgba(219, 168, 66, 0.28);
    --vd-chip-gray-bg: rgba(108, 124, 147, 0.14);
    --vd-chip-gray-text: #506179;
    --vd-chip-gray-border: rgba(108, 124, 147, 0.24);
    --vd-glass-card-from: rgba(255, 255, 255, 0.72);
    --vd-glass-card-to: rgba(238, 243, 247, 0.58);
    /* Общий glass для footer + sidebar (light-office auth) */
    --vd-light-office-shell-glass: linear-gradient(
        152deg,
        rgba(248, 250, 252, 0.4) 0%,
        rgba(226, 232, 242, 0.34) 45%,
        rgba(237, 242, 249, 0.38) 100%
    );
    --vd-light-office-shell-glass-border: rgba(255, 255, 255, 0.42);
    --vd-light-office-shell-glass-inset: rgba(255, 255, 255, 0.58);
    --vd-light-office-shell-glass-fg: #ffffff;
    --vd-light-office-shell-glass-fg-shadow:
        0 1px 2px rgba(0, 0, 0, 0.48),
        0 2px 10px rgba(0, 0, 0, 0.35),
        0 0 1px rgba(0, 0, 0, 0.65);
    --vd-light-office-shell-glass-chip-bg: rgba(255, 255, 255, 0.12);
    --vd-light-office-shell-glass-chip-border: rgba(255, 255, 255, 0.28);
    /* UI consistency — home / chat / profile (S4) */
    --vd-card-head-bg: transparent;
    --vd-card-head-fg: var(--vd-text);
    --vd-card-head-border: var(--vd-border-soft);
    --vd-stat-delta-up: var(--vd-chip-emerald-text);
    --vd-stat-delta-dn: var(--vd-chip-orange-text);
    --zen-msg-area-bg: linear-gradient(180deg, rgba(248, 250, 252, 0.96) 0%, rgba(241, 245, 249, 0.98) 100%);
    --zen-msg-area-fg: var(--vd-text);
    --zen-msg-area-muted: var(--vd-text-muted);
    --zen-msg-composer-bg: #ffffff;
    --zen-msg-border: var(--vd-border);
    --zen-msg-composer-field-bg: var(--zen-msg-panel-surface-soft);
    --zen-msg-composer-field-border: var(--vd-border);
    --zen-msg-composer-field-fg: var(--vd-text);
    --zen-msg-composer-field-placeholder: var(--vd-text-muted);
    --zen-msg-composer-field-icon: var(--vd-text-muted);
    --zen-msg-row-active-bg: linear-gradient(90deg, rgba(148, 163, 184, 0.24) 0%, rgba(148, 163, 184, 0.12) 100%);
    --zen-msg-row-active-ring: rgba(148, 163, 184, 0.42);
    --zen-msg-panel-surface: #ffffff;
    --zen-msg-panel-surface-soft: #f1f5f9;
    --zen-msg-sidebar-bg: #ffffff;
    --zen-messenger-header-bg: #ffffff;
    --zen-msg-bubble-mine-bg: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    --zen-msg-bubble-mine-fg: #ffffff;
    --zen-msg-bubble-mine-border: #2563eb;
    --zen-msg-bubble-other-bg: #ffffff;
    --zen-msg-bubble-other-fg: var(--vd-text);
    --zen-msg-bubble-other-border: var(--vd-border-soft);
    --zen-msg-wallpaper-doodle-blue-base: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
    --zen-msg-wallpaper-doodle-light-base: linear-gradient(180deg, #f9fafb 0%, #eef2f6 100%);
    --zen-msg-wallpaper-doodle-warm-base: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
    --zen-msg-wallpaper-doodle-mint-base: linear-gradient(180deg, #f0fdfa 0%, #e0f2fe 100%);
    --vd-profile-panel-glass-bg: rgba(255, 255, 255, 0.58);
    --vd-profile-panel-glass-border: rgba(255, 255, 255, 0.5);
    --vd-profile-tabs-bar-bg: rgba(255, 255, 255, 0.48);
}

/* Light office — дополнительные правила (восстановлено из TXT) */

body[data-color-palette="light-office"] .main-wrapper .tw-surface-card {
    border: 1px solid var(--vd-border-strong) !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 10px 24px rgba(31, 41, 55, 0.06) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
}
/* Шапки tw-surface-card — как vd-home-hero (градиент + белый текст), кроме мессенджера и корня БЗ */
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-top: none !important;
    color: #f8fbff !important;
    font-weight: 600;
    box-shadow: 0 18px 36px rgba(var(--vd-chrome-shadow-rgb), 0.12);
    border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h5,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) .card-title,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) .mb-0,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) .text-muted {
    color: rgba(248, 251, 255, 0.92) !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) i.text-primary {
    color: #b8d9ff !important;
}
/* MyMessages: шапки «Чаты» и треда — #445A71, белый текст/иконки */
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-panel .card-header.zen-chat-panel-head.bg-unified,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread .zen-messenger-thread-header.zen-chat-panel-head--main.bg-unified,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-panel .card-header.zen-chat-panel-head.bg-unified,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread .zen-messenger-thread-header.zen-chat-panel-head--main.bg-unified,
body[data-color-palette="light-office"] .zen-messenger-shell .card-header.zen-chat-panel-head.bg-unified,
body[data-color-palette="light-office"] .zen-messenger-shell .card-header.zen-chat-panel-head--main.bg-unified {
    background: var(--vd-messenger-head-bg) !important;
    background-color: var(--vd-messenger-head-bg) !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .fw-bold,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head h5,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .text-white,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head a.text-white,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .fw-bold,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header h5,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .text-white,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header a.text-white {
    color: #ffffff !important;
    text-shadow: none !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head i,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header i,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .bi,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .bi {
    color: #ffffff !important;
    filter: none !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .text-white-50,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header:not(.zen-messenger-thread-header--light) .text-white-50 {
    color: rgba(255, 255, 255, 0.82) !important;
}

/* MyMessages redesign — светлые шапки сайдбара и треда (не chrome #445A71) */
body[data-color-palette="light-office"] .zen-messenger-shell,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-unified-card {
    background: #ffffff !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-sidebar-head,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--vd-text) !important;
    border-bottom: 1px solid var(--vd-border-soft) !important;
    box-shadow: none !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-sidebar-head .fw-bold,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-sidebar-title,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .fw-bold,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-thread-title,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-thread-title-link {
    color: var(--vd-text) !important;
    text-shadow: none !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-thread-subtitle,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .small {
    color: var(--vd-text-muted) !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light i,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .bi,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-sidebar-head i,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-sidebar-head .bi {
    color: var(--vd-text-muted) !important;
    filter: none !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-header-action {
    color: var(--vd-text-muted) !important;
    border-color: var(--vd-border-soft) !important;
}

body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-header-action:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header--light .zen-messenger-header-action:focus {
    color: var(--vd-accent-strong) !important;
    background: var(--zen-msg-sidebar-tab-active-bg, rgba(37, 99, 235, 0.12)) !important;
    border-color: rgba(37, 99, 235, 0.28) !important;
}

/* Кнопки в шапках мессенджера — pill как «Выбрать Lite» на /Home/MyPlan */
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn {
    border-radius: 50rem !important;
    font-weight: 600;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-primary,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-primary {
    background: var(--vd-accent) !important;
    border-color: var(--vd-accent-strong) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(47, 93, 138, 0.28) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-primary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-primary:focus,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-primary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-primary:focus {
    background: var(--vd-accent-strong) !important;
    border-color: color-mix(in srgb, var(--vd-accent-strong) 88%, #000) !important;
    color: #ffffff !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-primary:active,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-primary:active {
    transform: translateY(1px);
    box-shadow: 0 2px 8px rgba(47, 93, 138, 0.22) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-secondary,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-secondary {
    color: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
    background: rgba(255, 255, 255, 0.06) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-secondary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-secondary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-secondary:focus,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-secondary:focus {
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.72) !important;
    background: rgba(255, 255, 255, 0.14) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-light,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-light {
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.55) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-light:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-light:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-light:focus,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-light:focus {
    background: var(--vd-accent) !important;
    border-color: var(--vd-accent-strong) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(47, 93, 138, 0.28) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-light:active,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header .btn-outline-light:active {
    transform: translateY(1px);
    background: var(--vd-accent-strong) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-primary {
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.55) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-primary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-chat-panel-head .btn-outline-primary:focus {
    background: var(--vd-accent) !important;
    border-color: var(--vd-accent-strong) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(47, 93, 138, 0.28) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-toolbar.btn-group {
    gap: 0.35rem;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-toolbar.btn-group > .btn {
    flex: 1 1 auto;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-inline-bar .btn {
    border-radius: 50rem !important;
    font-weight: 600;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-inline-bar .btn-primary {
    background: var(--vd-accent) !important;
    border-color: var(--vd-accent-strong) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(47, 93, 138, 0.28) !important;
}
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-inline-bar .btn-primary:hover,
body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-inline-bar .btn-primary:focus {
    background: var(--vd-accent-strong) !important;
    border-color: color-mix(in srgb, var(--vd-accent-strong) 88%, #000) !important;
    color: #ffffff !important;
}

/* Composer — белый как shell/шапки сайдбара; attach = send (btn-primary) */
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .card-footer.zen-messenger-composer.zen-chat-compose,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .card-footer.border-top.zen-messenger-composer,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer.zen-chat-compose {
    background: var(--zen-msg-composer-bg) !important;
    background-color: #ffffff !important;
    color: var(--vd-text) !important;
    border-top-color: var(--vd-border-soft) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-field {
    background: var(--zen-msg-composer-field-bg) !important;
    border-color: var(--zen-msg-composer-field-border) !important;
    color: var(--zen-msg-composer-field-fg) !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-shell {
    background: var(--zen-msg-composer-field-bg) !important;
    border-color: var(--zen-msg-composer-field-border) !important;
    box-shadow: none !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-field .zen-messenger-composer-input,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-field .form-control {
    color: var(--zen-msg-composer-field-fg) !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-field .zen-messenger-composer-input::placeholder,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-field .form-control::placeholder {
    color: var(--zen-msg-composer-field-placeholder) !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-attach,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-send.btn-primary {
    width: 44px;
    height: 44px;
    background: var(--vd-accent) !important;
    border-color: var(--vd-accent-strong) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(47, 93, 138, 0.28) !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-attach:hover,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-send.btn-primary:hover,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-send.btn-primary:focus {
    background: var(--vd-accent-strong) !important;
    border-color: color-mix(in srgb, var(--vd-accent-strong) 88%, #000) !important;
    color: #ffffff !important;
}

body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-attach i,
body.zen-body[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-composer-emoji {
    color: #ffffff !important;
    filter: none !important;
    opacity: 1;
}

body.zen-body.zen-user-theme-dark[data-color-palette="light-office"] .zen-messenger-shell .card-header.zen-chat-panel-head.bg-unified,
body.zen-body.zen-user-theme-dark[data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header.zen-chat-panel-head--main.bg-unified,
body.zen-user-theme-system-app[data-zen-system="dark"][data-color-palette="light-office"] .zen-messenger-shell .card-header.zen-chat-panel-head.bg-unified,
body.zen-user-theme-system-app[data-zen-system="dark"][data-color-palette="light-office"] .zen-messenger-shell .zen-messenger-thread-header.zen-chat-panel-head--main.bg-unified {
    background: var(--vd-messenger-head-bg) !important;
    background-color: var(--vd-messenger-head-bg) !important;
}

/* Группы (/Chat/Groups): все шапки — плоский #506782 как .bg-unified / zen-chat-space-link */
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head.bg-unified,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head--main.bg-unified,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head--subtle.bg-unified {
    background: var(--vd-chrome-flat) !important;
    background-color: var(--vd-chrome-flat) !important;
    border-bottom-color: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    --zen-chat-head-fg: #f8fafc;
    --zen-chat-head-muted: rgba(248, 250, 252, 0.82);
}
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head.bg-unified h5,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head--main.bg-unified h5,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head.bg-unified .fw-bold,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head--main.bg-unified .fw-semibold {
    color: #f8fafc !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.22) !important;
}
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head.bg-unified i,
body[data-color-palette="light-office"] .zen-chat-layout .zen-chat-panel-head--main.bg-unified i {
    color: #ffffff !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body h5,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .card-body .card-title,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-label,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-check-label {
    color: var(--vd-text-strong) !important;
}
/* Заголовок в шапке БЗ: не наследовать «тёмный» h2 от tw-surface-card (ниже — контраст на chrome vd-kb-root-head) */
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .vd-kb-root-head h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .vd-kb-root-head h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .vd-kb-root-head h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .vd-kb-root-head h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .vd-kb-root-head h5 {
    color: #f8fbff !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-label,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-check-label {
    font-weight: 500;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-control,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-select,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card textarea,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .input-group-text {
    border-color: var(--vd-border-strong) !important;
    background: #ffffff !important;
    color: var(--vd-text) !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .input-group-text {
    background: var(--vd-panel-soft) !important;
    color: var(--vd-text-muted) !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-control:focus,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card .form-select:focus,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card textarea:focus {
    border-color: var(--vd-accent) !important;
    box-shadow: var(--vd-accent-glow) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .card:not(.bg-primary):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info):not(.bg-dark):not(.vd-glass-card):not(.zen-auth-card) {
    border: 1px solid var(--vd-border-strong) !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 20px rgba(31, 41, 55, 0.05) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #f8fbff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h1,
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h2,
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h3,
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h4,
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) h5,
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) .mb-0 {
    color: #f8fbff !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .card > .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head):not(.bg-transparent) .text-muted {
    color: rgba(248, 251, 255, 0.82) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .card-header:not(.zen-chat-panel-head):not(.vd-kb-root-head),
body.zen-body[data-color-palette="light-office"] .main-wrapper .card-footer,
body.zen-body[data-color-palette="light-office"] .main-wrapper .list-group-item,
body.zen-body[data-color-palette="light-office"] .modal-header:not(.vd-modal-hero):not(.zen-ticket-hero),
body.zen-body[data-color-palette="light-office"] .modal-footer {
    border-color: var(--vd-border-strong) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .form-control,
body.zen-body[data-color-palette="light-office"] .main-wrapper .form-select,
body.zen-body[data-color-palette="light-office"] .main-wrapper textarea,
body.zen-body[data-color-palette="light-office"] .main-wrapper .input-group-text,
body.zen-body[data-color-palette="light-office"] .dropdown-menu,
body.zen-body[data-color-palette="light-office"] .modal-content {
    border: 1px solid var(--vd-border-strong) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .form-control:focus,
body.zen-body[data-color-palette="light-office"] .main-wrapper .form-select:focus,
body.zen-body[data-color-palette="light-office"] .main-wrapper textarea:focus {
    border-color: var(--vd-accent) !important;
    box-shadow: var(--vd-accent-glow) !important;
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .table {
    --bs-table-border-color: var(--vd-border-strong);
}
body.zen-body[data-color-palette="light-office"] .main-wrapper .table > :not(caption) > * > * {
    border-bottom-color: var(--vd-border-strong) !important;
}

body[data-color-palette="light-office"] .vd-glass-card:not(.vd-glass-card--guest-cta) {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.82) 0%, rgba(240, 246, 252, 0.72) 100%) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(140, 162, 187, 0.24) !important;
    box-shadow: 0 10px 30px rgba(50, 71, 96, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.75);
    color: var(--vd-text) !important;
}
body[data-color-palette="light-office"] .vd-glass:not(.vd-glass-card--guest-cta),
body[data-color-palette="light-office"] .vd-glow-border {
    background: linear-gradient(180deg, rgba(250, 252, 255, 0.86) 0%, rgba(239, 245, 251, 0.78) 100%) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-color: rgba(140, 162, 187, 0.26) !important;
    box-shadow: 0 8px 20px rgba(50, 71, 96, 0.06);
}
body[data-color-palette="light-office"] .vd-glass-card .card-header,
body[data-color-palette="light-office"] .vd-glass-card .card-footer {
    border-color: rgba(140, 162, 187, 0.22) !important;
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero.zen-ticket-hero {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 18px 36px rgba(var(--vd-chrome-shadow-rgb), 0.18);
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero,
body[data-color-palette="light-office"] .vd-home .vd-home-hero h1,
body[data-color-palette="light-office"] .vd-home .vd-home-hero p {
    color: #f8fbff !important;
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero .vd-text-gradient {
    background: linear-gradient(135deg, #ffffff 0%, #d7e8ff 35%, #8ec5ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}
/*
 * Sidebar light-office — светлый фон + читаемые серые (перебиваем vd-chrome-readable,
 * который иначе красит текст в белый: body.zen-body .vd-sidebar …).
 * Footer glass (--vd-light-office-shell-glass) не трогаем.
 */
body.zen-body[data-color-palette="light-office"] .vd-sidebar,
body[data-color-palette="light-office"] .vd-sidebar {
    background: #f4f7fb !important;
    color: #5c6570 !important;
    border-right: 1px solid #d7e0ea !important;
    box-shadow: 4px 0 24px rgba(15, 23, 42, 0.06);
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    contain: layout style;
    isolation: isolate;
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Sprint 5 этап 0: стабильный scrollbar в sidebar — без скачка ширины и мерцания полосы */
body.zen-body[data-color-palette="light-office"] .vd-side-scroll,
body[data-color-palette="light-office"] .vd-side-scroll {
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: rgba(100, 116, 139, 0.45) transparent;
}

body.zen-body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar,
body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar {
    width: 6px !important;
}

body.zen-body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-track,
body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-track {
    background: transparent;
}

body.zen-body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-thumb,
body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-thumb {
    background: rgba(100, 116, 139, 0.35);
    border-radius: 999px;
    border: none;
    background-clip: padding-box;
}

body.zen-body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-thumb:hover,
body[data-color-palette="light-office"] .vd-side-scroll::-webkit-scrollbar-thumb:hover {
    background: rgba(100, 116, 139, 0.55);
    background-clip: padding-box;
}

body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-brand-title,
body[data-color-palette="light-office"] .vd-side-brand-title {
    color: #3d4550 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-brand-sub,
body[data-color-palette="light-office"] .vd-side-brand-sub {
    color: #9299a2 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-hamburger,
body[data-color-palette="light-office"] .vd-side-hamburger {
    background: #ffffff !important;
    border-color: #d3dbe5 !important;
    color: #5c6570 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-hamburger i,
body[data-color-palette="light-office"] .vd-side-hamburger i {
    color: #5c6570 !important;
    filter: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-hamburger:hover,
body[data-color-palette="light-office"] .vd-side-hamburger:hover {
    background: #eef4fb !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

/* Пункты меню: #9299a2 ± чуть темнее для контраста на белом */
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link-label,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-bell,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title .vd-side-group-chevron,
body[data-color-palette="light-office"] .vd-nav-link,
body[data-color-palette="light-office"] .vd-nav-link-label,
body[data-color-palette="light-office"] .vd-side-bell {
    color: #5c6570 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-section-title,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title-label,
body[data-color-palette="light-office"] .vd-side-section-title,
body[data-color-palette="light-office"] .vd-side-group-title,
body[data-color-palette="light-office"] .vd-side-group-title-label {
    color: #9299a2 !important;
    text-shadow: none !important;
    font-size: 0.68rem;
    letter-spacing: 0.06em;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link:hover,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link:hover .vd-nav-link-label,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title:hover,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-bell:hover,
body[data-color-palette="light-office"] .vd-nav-link:hover,
body[data-color-palette="light-office"] .vd-side-group-title:hover,
body[data-color-palette="light-office"] .vd-side-bell:hover {
    background: #e8f1fb !important;
    color: #3d4550 !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link.active,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link.active .vd-nav-link-label,
body[data-color-palette="light-office"] .vd-nav-link.active {
    color: #1d4ed8 !important;
    background: #dbeafe !important;
    border-left-color: #3b82f6 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link i,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title i,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-bell i,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-section-title i,
body[data-color-palette="light-office"] .vd-nav-link i,
body[data-color-palette="light-office"] .vd-side-group-title i,
body[data-color-palette="light-office"] .vd-side-bell i,
body[data-color-palette="light-office"] .vd-side-section-title i {
    color: #7a8490 !important;
    filter: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-link.active i,
body[data-color-palette="light-office"] .vd-nav-link.active i {
    color: #2563eb !important;
    filter: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-user-name,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-badge,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title-label .vd-side-group-badge,
body[data-color-palette="light-office"] .vd-side-user-name,
body[data-color-palette="light-office"] .vd-nav-badge,
body[data-color-palette="light-office"] .vd-side-group-title-label .vd-side-group-badge {
    color: #3d4550 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-nav-badge,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-group-title-label .vd-side-group-badge,
body[data-color-palette="light-office"] .vd-nav-badge,
body[data-color-palette="light-office"] .vd-side-group-title-label .vd-side-group-badge {
    background: #e2e8f0 !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: none;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-user-mail,
body[data-color-palette="light-office"] .vd-side-user-mail {
    color: #9299a2 !important;
    text-shadow: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-primary .vd-btn-primary,
body[data-color-palette="light-office"] .vd-side-primary .vd-btn-primary {
    color: #ffffff !important;
    text-shadow: none !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.25);
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-primary .vd-btn-primary i,
body[data-color-palette="light-office"] .vd-side-primary .vd-btn-primary i {
    color: #ffffff !important;
    filter: none !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-footer,
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-avatar,
body[data-color-palette="light-office"] .vd-side-footer,
body[data-color-palette="light-office"] .vd-side-avatar {
    border-color: #d7e0ea !important;
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar .vd-side-footer,
body[data-color-palette="light-office"] .vd-side-footer {
    background: rgba(255, 255, 255, 0.72);
}
body.zen-body[data-color-palette="light-office"] .vd-sidebar #zenNotifSidebarBadge,
body[data-color-palette="light-office"] #zenNotifSidebarBadge {
    background: #ef4444 !important;
    color: #fff !important;
    text-shadow: none !important;
}
body[data-color-palette="light-office"] .vd-activity-icon.vd-chip-violet {
    background: linear-gradient(145deg, rgba(100, 140, 216, 0.22) 0%, rgba(100, 140, 216, 0.12) 100%) !important;
    color: #3f67aa !important;
    border-color: rgba(100, 140, 216, 0.2) !important;
}

/* Лента событий — glass как sidebar, тёмный текст для контраста на светлом glass */
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .vd-glass-card > .card-header.vd-card-head {
    background: var(--vd-light-office-shell-glass) !important;
    background-color: transparent !important;
    color: var(--vd-text-strong) !important;
    border-bottom: 1px solid var(--vd-light-office-shell-glass-border) !important;
    box-shadow: inset 0 1px 0 var(--vd-light-office-shell-glass-inset);
    backdrop-filter: blur(22px) saturate(1.06);
    -webkit-backdrop-filter: blur(22px) saturate(1.06);
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head .vd-card-head-title,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head h3,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head i {
    color: var(--vd-text-strong) !important;
    text-shadow: none !important;
    filter: none !important;
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head .text-muted,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-header.vd-card-head .vd-card-head-actions .small {
    color: var(--vd-text-muted) !important;
    text-shadow: none !important;
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified {
    background: var(--vd-light-office-shell-glass) !important;
    background-color: transparent !important;
    color: var(--vd-text-strong) !important;
    border-color: var(--vd-light-office-shell-glass-border) !important;
    box-shadow: inset 0 1px 0 var(--vd-light-office-shell-glass-inset);
    backdrop-filter: blur(22px) saturate(1.06);
    -webkit-backdrop-filter: blur(22px) saturate(1.06);
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .form-control {
    background: #ffffff !important;
    border-color: var(--vd-border) !important;
    color: var(--vd-text-strong) !important;
    text-shadow: none !important;
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .form-control::placeholder {
    color: var(--vd-text-muted) !important;
    opacity: 1;
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .btn-outline-light,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .btn-outline-secondary {
    color: var(--vd-text-strong) !important;
    border-color: var(--vd-border-strong) !important;
    background: rgba(255, 255, 255, 0.55) !important;
    text-shadow: none !important;
}

body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .btn-outline-light:hover,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .btn-outline-light.active,
body.zen-body[data-color-palette="light-office"] .vd-home-feed .card-body.bg-unified .btn-outline-secondary:hover {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: var(--vd-accent) !important;
    color: var(--vd-accent-strong) !important;
}

/* Предприятие — заголовок как «Лента событий» */
body[data-color-palette="light-office"] .zen-enterprise-page .vd-page-h2,
body[data-color-palette="light-office"] .zen-enterprise-page h2.vd-page-h2 {
    color: #ffffff !important;
    text-shadow: var(--vd-light-office-shell-glass-fg-shadow);
}

body[data-color-palette="light-office"] .zen-enterprise-page .vd-page-h2 i {
    color: #ffffff !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5)) drop-shadow(0 2px 8px rgba(0, 0, 0, 0.38));
}

/* Shell page titles на обоях: Equipment / Groups / Communications / Tasks — белые + иконка */
body[data-color-palette="light-office"] .main-wrapper h1.text-white.vd-page-h2,
body[data-color-palette="light-office"] .main-wrapper h2.text-white.vd-page-h2,
body[data-color-palette="light-office"] .main-wrapper h1.text-white.vd-page-h2 .bi,
body[data-color-palette="light-office"] .main-wrapper h2.text-white.vd-page-h2 .bi {
    color: #ffffff !important;
    text-shadow: var(--vd-light-office-shell-glass-fg-shadow, 0 1px 2px rgba(0, 0, 0, 0.55), 0 2px 14px rgba(0, 0, 0, 0.35));
}

body[data-color-palette="light-office"] .main-wrapper h1.text-white.vd-page-h2 .bi,
body[data-color-palette="light-office"] .main-wrapper h2.text-white.vd-page-h2 .bi {
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5)) drop-shadow(0 2px 8px rgba(0, 0, 0, 0.38));
}

/* Диспетчер: title/icon не должны становиться --vd-text-strong через .main-wrapper h1 */
body[data-color-palette="light-office"] .main-wrapper .zen-desk--mock3 .zen-desk-page-head__title,
body[data-color-palette="light-office"] .main-wrapper .zen-desk--mock3 .zen-desk-page-head__title .bi {
    color: #ffffff !important;
}

body[data-color-palette="light-office"] .main-wrapper .zen-desk--mock3 .zen-desk-page-head__subtitle {
    color: rgba(255, 255, 255, 0.88) !important;
}

body[data-color-palette="light-office"] .vd-cmdk {
    background: rgba(36, 49, 65, 0.4);
}
body[data-color-palette="light-office"] .vd-cmdk-panel {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.9) 0%, rgba(241, 247, 252, 0.84) 100%) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(140, 162, 187, 0.26) !important;
    box-shadow: 0 22px 50px rgba(var(--vd-chrome-shadow-rgb), 0.18);
}
body[data-color-palette="light-office"] .vd-cmdk-input-wrap {
    border-bottom: 1px solid rgba(140, 162, 187, 0.22) !important;
    background: linear-gradient(180deg, rgba(247, 250, 254, 0.78) 0%, rgba(239, 245, 251, 0.62) 100%);
}
body[data-color-palette="light-office"] .vd-cmdk-input-wrap i.vd-cmdk-icon,
body[data-color-palette="light-office"] .vd-cmdk-hint,
body[data-color-palette="light-office"] .vd-cmdk-group-title,
body[data-color-palette="light-office"] .vd-cmdk-footer {
    color: var(--vd-text-muted) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-input {
    background: rgba(255, 255, 255, 0.78) !important;
    border-color: rgba(140, 162, 187, 0.28) !important;
    color: var(--vd-text-strong) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-input::placeholder {
    color: var(--vd-text-faint) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-input:focus {
    border-color: var(--vd-accent) !important;
    box-shadow: var(--vd-accent-glow) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    color: var(--vd-text-strong) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-group {
    padding-top: 0.65rem;
}
body[data-color-palette="light-office"] .vd-cmdk-item {
    color: var(--vd-text-strong) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-item:hover,
body[data-color-palette="light-office"] .vd-cmdk-item.is-active {
    background: linear-gradient(145deg, rgba(116, 156, 205, 0.16) 0%, rgba(116, 156, 205, 0.1) 100%) !important;
    border-color: rgba(116, 156, 205, 0.24) !important;
    color: var(--vd-text-strong) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-item-title {
    color: var(--vd-text-strong) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-item-sub,
body[data-color-palette="light-office"] .vd-cmdk-empty,
body[data-color-palette="light-office"] .vd-cmdk-item-meta {
    color: var(--vd-text-muted) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-item-icon {
    background: linear-gradient(145deg, rgba(116, 156, 205, 0.18) 0%, rgba(116, 156, 205, 0.1) 100%) !important;
    color: var(--vd-accent-strong) !important;
    border: 1px solid rgba(116, 156, 205, 0.18);
}
body[data-color-palette="light-office"] .vd-cmdk-footer {
    border-top: 1px solid rgba(140, 162, 187, 0.22) !important;
    background: linear-gradient(180deg, rgba(245, 249, 253, 0.75) 0%, rgba(237, 243, 249, 0.65) 100%) !important;
}
body[data-color-palette="light-office"] .vd-cmdk-kbd {
    border-color: rgba(140, 162, 187, 0.26) !important;
    background: rgba(255, 255, 255, 0.82) !important;
    color: var(--vd-text-strong) !important;
}

body[data-color-palette="light-office"] .vd-page-title-card {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    padding: 1rem 1.35rem;
    min-height: 86px;
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    color: #f8fbff !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 1.15rem;
    box-shadow: 0 16px 34px rgba(var(--vd-chrome-shadow-rgb), 0.14);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
body[data-color-palette="light-office"] .vd-page-title-card h1,
body[data-color-palette="light-office"] .vd-page-title-card h2,
body[data-color-palette="light-office"] .vd-page-title-card h3,
body[data-color-palette="light-office"] .vd-page-title-card .fw-bold {
    margin-bottom: 0 !important;
    color: #f8fbff !important;
    font-weight: 800 !important;
    font-size: clamp(1.45rem, 2.1vw, 2rem);
    line-height: 1.15;
    letter-spacing: -0.02em;
}
body[data-color-palette="light-office"] .vd-page-title-card .bi,
body[data-color-palette="light-office"] .vd-page-title-card .bi.text-primary,
body[data-color-palette="light-office"] .vd-page-title-card .bi.bi-pc-display {
    color: #d7e8ff !important;
    font-size: 0.92em;
}
body[data-color-palette="light-office"] .vd-page-title-card code {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #f8fbff !important;
    border: 1px solid rgba(255, 255, 255, 0.14);
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: min(100%, 100%);
    min-height: 118px;
    padding: 1rem 1.35rem !important;
    width: fit-content;
    max-width: min(100%, 36rem);
    min-height: 0;
    padding: 0.95rem 1.25rem !important;
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero h1 {
    margin-bottom: 0.45rem !important;
    font-size: clamp(1.55rem, 2.25vw, 2.1rem) !important;
    font-size: clamp(1.45rem, 2vw, 1.95rem) !important;
    line-height: 1.12;
    letter-spacing: -0.025em;
}

body[data-color-palette="light-office"] .vd-home .vd-home-hero .vd-page-title {
    font-weight: 900 !important;
    letter-spacing: 0.006em !important;
}
body[data-color-palette="light-office"] .vd-home .vd-home-hero p {
    max-width: 42rem;
    max-width: 30rem;
    margin-bottom: 0 !important;
    color: rgba(248, 251, 255, 0.86) !important;
}

body[data-color-palette="light-office"] .vd-page-title-card {
    gap: 0.7rem;
    padding: 0.88rem 1.18rem;
    min-height: 72px;
}
body[data-color-palette="light-office"] .vd-page-title-card h1,
body[data-color-palette="light-office"] .vd-page-title-card h2,
body[data-color-palette="light-office"] .vd-page-title-card h3,
body[data-color-palette="light-office"] .vd-page-title-card .fw-bold {
    font-size: clamp(1.2rem, 1.65vw, 1.65rem);
    font-weight: 800 !important;
}
body[data-color-palette="light-office"] .vd-page-title-card p,
body[data-color-palette="light-office"] .vd-page-title-card .small {
    color: rgba(248, 251, 255, 0.76) !important;
}

/* Contacts / Boards / Feed: компактные шапки в логике hero, без растяжения на всю ширину */
body[data-color-palette="light-office"] .container.py-4 > .card.shadow-sm.border-0.rounded-4.overflow-hidden.mb-3,
body[data-color-palette="light-office"] .container.py-4 > .card.border-0.shadow-sm.mb-4.overflow-hidden,
body[data-color-palette="light-office"] .container-fluid.mt-4:not(.zen-desk) > .card.border-0.shadow-sm.mb-3.overflow-hidden:first-child {
    display: inline-flex;
    width: auto;
    max-width: min(100%, 40rem);
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    overflow: visible !important;
    margin-bottom: 1rem !important;
}
body[data-color-palette="light-office"] .container.py-4 > .card.shadow-sm.border-0.rounded-4.overflow-hidden.mb-3 > .card-body.vd-chrome-surface,
body[data-color-palette="light-office"] .container.py-4 > .card.border-0.shadow-sm.mb-4.overflow-hidden > .card-body.vd-chrome-surface,
body[data-color-palette="light-office"] .container-fluid.mt-4:not(.zen-desk) > .card.border-0.shadow-sm.mb-3.overflow-hidden:first-child > .card-body.vd-chrome-surface {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0.35rem;
    width: auto;
    max-width: min(100%, 40rem);
    padding: 0.95rem 1.25rem !important;
    border-radius: 1.1rem;
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 16px 34px rgba(var(--vd-chrome-shadow-rgb), 0.14);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
body[data-color-palette="light-office"] .container.py-4 > .card.shadow-sm.border-0.rounded-4.overflow-hidden.mb-3 > .card-body.vd-chrome-surface h2,
body[data-color-palette="light-office"] .container.py-4 > .card.border-0.shadow-sm.mb-4.overflow-hidden > .card-body.vd-chrome-surface h2,
body[data-color-palette="light-office"] .container-fluid.mt-4:not(.zen-desk) > .card.border-0.shadow-sm.mb-3.overflow-hidden:first-child > .card-body.vd-chrome-surface h2 {
    color: #f8fbff !important;
    font-size: clamp(1.2rem, 1.65vw, 1.65rem) !important;
    font-weight: 700 !important;
    margin-bottom: 0.15rem !important;
}
body[data-color-palette="light-office"] .container.py-4 > .card.border-0.shadow-sm.mb-4.overflow-hidden > .card-body.vd-chrome-surface p,
body[data-color-palette="light-office"] .container-fluid.mt-4:not(.zen-desk) > .card.border-0.shadow-sm.mb-3.overflow-hidden:first-child > .card-body.vd-chrome-surface p {
    color: rgba(248, 251, 255, 0.78) !important;
    max-width: 32rem;
}
body[data-color-palette="light-office"] .container-fluid.mt-4:not(.zen-desk) > .card.border-0.shadow-sm.mb-3.overflow-hidden:first-child + form.card.border-0.shadow-sm.mb-3.overflow-hidden {
    margin-top: 0.4rem;
}

/* Tasks / Equipment: шапка компактнее и мягче по весу */
body[data-color-palette="light-office"] .container.py-4 > .d-flex.justify-content-between.align-items-center.mb-4.flex-wrap.gap-2 .vd-page-title-card,
body[data-color-palette="light-office"] .container-fluid.py-4.px-4 > .d-flex.justify-content-between.align-items-center.mb-4.flex-wrap.gap-2 .vd-page-title-card {
    max-width: min(100%, 34rem);
}
body[data-color-palette="light-office"] .container-fluid.py-4.px-4 > .d-flex.justify-content-between.align-items-center.mb-4.flex-wrap.gap-2 .vd-page-title-card h2 {
    font-size: clamp(1.12rem, 1.5vw, 1.5rem) !important;
}

/* Knowledge Base */
body[data-color-palette="light-office"] .vd-kb-root {
    background: linear-gradient(180deg, rgba(248, 251, 254, 0.86) 0%, rgba(241, 246, 251, 0.8) 100%) !important;
    border: 1px solid rgba(140, 162, 187, 0.22) !important;
    box-shadow: 0 18px 42px rgba(var(--vd-chrome-shadow-rgb), 0.1);
}
body[data-color-palette="light-office"] .vd-kb-root-head {
    /* Тот же оттенок, что у сайдбара light-office */
    background: linear-gradient(180deg, var(--vd-chrome-kb-head-180-from) 0%, var(--vd-chrome-kb-head-180-to) 100%) !important;
    color: #f8fbff !important;
    border-bottom: 0 !important;
}
body[data-color-palette="light-office"] .vd-kb-root-head h2,
body[data-color-palette="light-office"] .vd-kb-root-head .fw-bold {
    color: #f8fbff !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45), 0 0 18px rgba(0, 0, 0, 0.15);
    font-size: clamp(1.2rem, 1.7vw, 1.7rem);
    font-weight: 700 !important;
}
body[data-color-palette="light-office"] .vd-kb-root-head .bi {
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4));
}
body[data-color-palette="light-office"] .vd-kb-root-head .btn.btn-primary,
body[data-color-palette="light-office"] .vd-kb-root-head .kb-add-btn.btn-primary {
    background: linear-gradient(180deg, var(--vd-accent), var(--vd-accent-strong)) !important;
    color: #fff !important;
    border: 1px solid var(--vd-accent-strong) !important;
    box-shadow: 0 8px 20px var(--vd-accent-soft-2) !important;
    font-weight: 600;
}
body[data-color-palette="light-office"] .vd-kb-root-head .btn.btn-primary:hover,
body[data-color-palette="light-office"] .vd-kb-root-head .kb-add-btn.btn-primary:hover {
    background: linear-gradient(180deg, var(--vd-accent-strong), color-mix(in srgb, var(--vd-accent-strong) 88%, #000)) !important;
    border-color: color-mix(in srgb, var(--vd-accent-strong) 85%, #000) !important;
    color: #fff !important;
}
body[data-color-palette="light-office"] .vd-kb-root-head .btn.btn-primary:active,
body[data-color-palette="light-office"] .vd-kb-root-head .kb-add-btn.btn-primary:active {
    transform: translateY(1px);
    box-shadow: 0 4px 12px var(--vd-accent-soft-2) !important;
}
body[data-color-palette="light-office"] .vd-kb-root-head .kb-add-btn .kb-add-icon-circle {
    background: rgba(255, 255, 255, 0.16) !important;
    color: #fff !important;
}
body[data-color-palette="light-office"] .vd-kb-root-head .kb-add-btn:hover .kb-add-icon-circle {
    background: rgba(255, 255, 255, 0.24) !important;
}
body[data-color-palette="light-office"] .vd-kb-sidebar {
    background: rgba(239, 245, 250, 0.72) !important;
    border-right: 1px solid rgba(140, 162, 187, 0.22) !important;
}
body[data-color-palette="light-office"] .vd-kb-nav .list-group-item {
    border-color: rgba(140, 162, 187, 0.24) !important;
}
body[data-color-palette="light-office"] .vd-kb-main {
    background: transparent !important;
}
body[data-color-palette="light-office"] .vd-kb-article-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(246, 249, 253, 0.86) 100%) !important;
    border: 1px solid rgba(140, 162, 187, 0.34) !important;
    box-shadow: 0 12px 28px rgba(var(--vd-chrome-shadow-rgb), 0.08);
}
body[data-color-palette="light-office"] .vd-kb-article-card .btn-outline-primary {
    border: none !important;
    background: rgba(47, 93, 138, 0.1) !important;
    color: var(--vd-accent-strong) !important;
    box-shadow: none !important;
}
body[data-color-palette="light-office"] .vd-kb-article-card .btn-outline-primary:hover {
    background: rgba(47, 93, 138, 0.16) !important;
}
body[data-color-palette="light-office"] .vd-kb-article-card .btn-link.vd-kb-ext-link {
    padding-inline: 0.15rem;
}
body[data-color-palette="light-office"] .vd-kb-hr {
    border-color: rgba(140, 162, 187, 0.26) !important;
}

/* Tasks cards */
body[data-color-palette="light-office"] .task-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, rgba(246, 249, 253, 0.82) 100%) !important;
    border: 1px solid rgba(140, 162, 187, 0.24) !important;
}
body[data-color-palette="light-office"] .task-card .card-header {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #f8fbff !important;
}
body[data-color-palette="light-office"] .task-card .card-header .text-muted {
    color: rgba(248, 251, 255, 0.85) !important;
}

/* Calendar: контрастная шапка + разрыв до сетки */
body[data-color-palette="light-office"] #calendar-container {
    background: linear-gradient(180deg, rgba(240, 245, 250, 0.94) 0%, rgba(232, 238, 245, 0.9) 100%) !important;
    box-shadow: 0 18px 42px rgba(var(--vd-chrome-shadow-rgb), 0.1);
}
body[data-color-palette="light-office"] #calendar-container > .card-header {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 1rem 1rem 0 0 !important;
}
body[data-color-palette="light-office"] #calendar-container > .card-header h2,
body[data-color-palette="light-office"] #calendar-container > .card-header .fw-bold.text-dark {
    color: #f8fbff !important;
    font-size: clamp(1.2rem, 1.7vw, 1.7rem);
    font-weight: 700 !important;
}
body[data-color-palette="light-office"] #calendar-container > .card-header i.text-primary {
    color: #b8d9ff !important;
}
body[data-color-palette="light-office"] #calendar-content {
    padding: 14px 10px 10px !important;
    background: transparent !important;
}
body[data-color-palette="light-office"] #calendar-content::before {
    content: "";
    display: block;
    height: 14px;
    margin: -14px -10px 8px;
    background: linear-gradient(180deg, rgba(232, 238, 245, 0.98) 0%, rgba(240, 245, 250, 0.18) 100%);
}
body[data-color-palette="light-office"] .calendar-wrapper {
    margin-top: 6px;
}
body[data-color-palette="light-office"] .calendar-grid {
    background: rgba(218, 226, 236, 0.9) !important;
    border-color: rgba(218, 226, 236, 0.9) !important;
    border-radius: 14px;
}
body[data-color-palette="light-office"] .calendar-header {
    background: rgba(255, 255, 255, 0.88) !important;
    color: var(--vd-text-muted) !important;
}
body[data-color-palette="light-office"] .calendar-cell {
    border-color: rgba(140, 162, 187, 0.18) !important;
    box-shadow: 0 2px 6px rgba(var(--vd-chrome-shadow-rgb), 0.04);
}
body[data-color-palette="light-office"] #calendar-container .btn-group.rounded-pill {
    border: 1px solid rgba(140, 162, 187, 0.22) !important;
    background: rgba(255, 255, 255, 0.68);
    box-shadow: 0 6px 16px rgba(var(--vd-chrome-shadow-rgb), 0.06);
}
body[data-color-palette="light-office"] #calendar-container .btn-light,
body[data-color-palette="light-office"] #calendar-container .btn-outline-secondary,
body[data-color-palette="light-office"] #calendar-container .btn-mode {
    border-color: rgba(140, 162, 187, 0.22) !important;
}
body[data-color-palette="light-office"] #calendar-container .custom-switch .form-check-label {
    color: var(--vd-text-muted) !important;
}
body[data-color-palette="light-office"] #calendar-container > .card-header .vd-cal-jump-date {
    color: #1e293b !important;
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
}
body[data-color-palette="light-office"] #calendar-container > .card-header .vd-cal-jump-input {
    color: #1e293b !important;
}
body[data-color-palette="light-office"] #calendar-container > .card-header .vd-cal-jump-icon {
    color: #2563eb !important;
}

/* Модалки (календарь и др.): шапка как vd-home-hero */
body[data-color-palette="light-office"] .modal-header.vd-modal-hero.zen-ticket-hero {
    background: linear-gradient(135deg, var(--vd-chrome-gradient-135-from) 0%, var(--vd-chrome-gradient-135-to) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 18px 36px rgba(var(--vd-chrome-shadow-rgb), 0.12);
}
body[data-color-palette="light-office"] .modal-header.vd-modal-hero.zen-ticket-hero .modal-title {
    color: #f8fbff !important;
}

/* Мессенджер: пресет «бумага» для области сообщений (остальное — site.css) */
body[data-color-palette="light-office"] .zen-messenger-msg-area.zen-messenger-skin--paper {
    background: linear-gradient(180deg, #f8f4ec 0%, #efe8dc 55%, #ebe4d8 100%) !important;
}
body[data-color-palette="light-office"] .zen-messenger-msg-area.zen-messenger-skin--paper .zen-messenger-bubble-other {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(120, 100, 70, 0.2) !important;
    color: var(--vd-text) !important;
    box-shadow: 0 2px 10px rgba(62, 52, 40, 0.08);
}
body[data-color-palette="light-office"] .zen-messenger-msg-area.zen-messenger-skin--paper .zen-messenger-bubble-mine {
    background: linear-gradient(180deg, #3d5a80, #4a6fa5) !important;
    border: 1px solid rgba(40, 54, 76, 0.35) !important;
    color: #f8fafc !important;
}

/* Light office после входа: футер (стили в palettes/light-office.css; было ошибочно :not(.auth-bg) — стили не попадали на zen-body.auth-bg) */
body.zen-body.auth-bg[data-color-palette="light-office"] .footer,
body.zen-body.auth-bg[data-color-palette="light-office"] .footer.footer--with-sidebar {
    background: var(--vd-light-office-shell-glass) !important;
    backdrop-filter: blur(22px) saturate(1.06);
    -webkit-backdrop-filter: blur(22px) saturate(1.06);
    border-top: 1px solid var(--vd-light-office-shell-glass-border) !important;
    box-shadow: 0 -18px 48px rgba(15, 23, 42, 0.1), inset 0 1px 0 var(--vd-light-office-shell-glass-inset) !important;
    color: var(--vd-light-office-shell-glass-fg) !important;
}

body.zen-body.auth-bg[data-color-palette="light-office"] .footer a,
body.zen-body.auth-bg[data-color-palette="light-office"] .footer .text-muted,
body.zen-body.auth-bg[data-color-palette="light-office"] .footer .vd-chip,
body.zen-body.auth-bg[data-color-palette="light-office"] .footer span {
    color: var(--vd-light-office-shell-glass-fg) !important;
    text-shadow: var(--vd-light-office-shell-glass-fg-shadow);
}

body.zen-body.auth-bg[data-color-palette="light-office"] .footer .vd-chip {
    background: var(--vd-light-office-shell-glass-chip-bg) !important;
    border: 1px solid var(--vd-light-office-shell-glass-chip-border) !important;
}

/* Light office: диспетчер / тулбар — контрасты как в light (tw-surface-card) */
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero h5,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero p,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero .zen-desk-hero-label,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero h5,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .tw-hero p,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero h1,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero h2,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero h3,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero h4,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero h5,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-ticket-hero p {
    color: #fff !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero .form-check-label {
    color: rgba(255, 255, 255, 0.92) !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero .form-control,
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero .form-select {
    color: #0f172a !important;
    background-color: #fff !important;
}
body[data-color-palette="light-office"] .main-wrapper .tw-surface-card.tw-toolbar-card .zen-desk-hero .input-group-text {
    color: #475569 !important;
    background-color: #fff !important;
}

/* ==========================================================
   Sprint 2: защита .vd-topbar — кнопки всегда кликабельны при любом фоне
   ========================================================== */
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar {
    /* Полупрозрачное стекло — видно на любом фоновом изображении */
    background: rgba(248, 250, 252, 0.82) !important;
    backdrop-filter: blur(20px) saturate(1.1) !important;
    -webkit-backdrop-filter: blur(20px) saturate(1.1) !important;
    border-bottom: 1px solid rgba(209, 218, 230, 0.9) !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.08), inset 0 -1px 0 rgba(255, 255, 255, 0.6) !important;
}
/* Текст и иконки кнопок topbar — тёмные, читаемые */
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-topbar-actions .vd-icon-btn {
    color: var(--vd-text-muted) !important;
    pointer-events: auto !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-topbar-actions .vd-icon-btn:hover {
    color: var(--vd-text-strong) !important;
    background: var(--vd-accent-soft) !important;
    border-color: var(--vd-border) !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] button.vd-topbar-search {
    background: rgba(240, 244, 249, 0.88) !important;
    border-color: var(--vd-border) !important;
    color: var(--vd-text-muted) !important;
    pointer-events: auto !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] button.vd-topbar-search:hover {
    background: rgba(230, 238, 248, 0.95) !important;
    border-color: var(--vd-accent) !important;
    color: var(--vd-text-strong) !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-topbar-hamburger {
    color: var(--vd-text-muted) !important;
    border-color: var(--vd-border) !important;
    background: rgba(240, 244, 249, 0.7) !important;
    pointer-events: auto !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-crumbs,
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-crumbs a,
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-crumbs .vd-crumbs-current {
    color: var(--vd-text-muted) !important;
}
body.zen-body.auth-bg[data-color-palette="light-office"] .vd-topbar .vd-crumbs a:hover {
    color: var(--vd-text-strong) !important;
}

/* Канбан (/Boards): кнопки панели — как btn-primary «Создать пространство» */
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 .btn-outline-secondary,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsCollapseAllBtn,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsExpandAllBtn {
    color: #fff !important;
    background: linear-gradient(180deg, var(--vd-accent), var(--vd-accent-strong)) !important;
    border-color: var(--vd-accent-strong) !important;
    box-shadow: 0 8px 20px var(--vd-accent-soft-2) !important;
    font-weight: 600;
}
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 .btn-outline-secondary:hover,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsCollapseAllBtn:hover,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsExpandAllBtn:hover {
    color: #fff !important;
    background: linear-gradient(180deg, var(--vd-accent-strong), color-mix(in srgb, var(--vd-accent-strong) 88%, #000)) !important;
    border-color: color-mix(in srgb, var(--vd-accent-strong) 85%, #000) !important;
}
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 .btn-outline-secondary:active,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsCollapseAllBtn:active,
body[data-color-palette="light-office"] .container.py-4 > .d-flex.flex-wrap.gap-2.align-items-center.mb-3 #boardsExpandAllBtn:active {
    transform: translateY(1px);
    box-shadow: 0 4px 12px var(--vd-accent-soft-2) !important;
}

/* Отчёты: заголовки карточек — не чёрный жирный на прозрачном фоне */
body[data-color-palette="light-office"] #reports-container .card .card-header.bg-unified {
    background: var(--vd-chrome-flat) !important;
    background-color: var(--vd-chrome-flat) !important;
    border-bottom-color: rgba(255, 255, 255, 0.2) !important;
    color: #f8fafc !important;
}
body[data-color-palette="light-office"] #reports-container .card .card-header.bg-unified h5,
body[data-color-palette="light-office"] #reports-container .card .card-header.bg-unified h6 {
    color: rgba(248, 251, 255, 0.94) !important;
    font-weight: 600 !important;
    text-shadow: none !important;
}
body[data-color-palette="light-office"] #reports-container .card .card-header.bg-unified i {
    color: rgba(248, 251, 255, 0.9) !important;
}

/* ==========================================================
   Sprint 5 этап 4: общая полировка light-office
   ========================================================== */
body[data-color-palette="light-office"] .main-wrapper .card,
body[data-color-palette="light-office"] .main-wrapper .vd-glass-card {
    border-radius: var(--vd-radius-xl, 18px);
}

body[data-color-palette="light-office"] .vd-nav-link:focus-visible,
body[data-color-palette="light-office"] .btn:focus-visible,
body[data-color-palette="light-office"] .form-control:focus-visible,
body[data-color-palette="light-office"] .form-select:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--vd-accent) 55%, transparent);
    outline-offset: 2px;
    box-shadow: var(--vd-accent-glow);
}

body[data-color-palette="light-office"] .main-wrapper .btn-primary {
    box-shadow: 0 4px 14px color-mix(in srgb, var(--vd-accent) 28%, transparent);
}

body[data-color-palette="light-office"] .main-wrapper .btn-primary:hover {
    box-shadow: 0 6px 18px color-mix(in srgb, var(--vd-accent) 34%, transparent);
}

/* --- messenger theme tokens (from vd-messenger-theme.css) --- */

body.zen-body[data-color-palette="light-office"] .zen-messenger-panel .zen-chat-panel-head .bg-light,
body.zen-body[data-color-palette="light-office"] .zen-messenger-panel .zen-chat-panel-head .form-control.bg-light,
body.zen-body[data-color-palette="light-office"] .zen-messenger-panel .zen-chat-panel-head .input-group-text.bg-light {
    --zen-msg-head-search-bg: rgba(255, 255, 255, 0.94);
    --zen-msg-head-search-fg: var(--vd-text);
    --zen-msg-head-search-muted: var(--vd-text-muted);
}
