/* Karvan login + portal. Must beat TopGrade Classic !important chrome. */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800&family=Poppins:wght@400;500;600;700&display=swap");

:root[data-org-theme="kaarvan"],
:root[data-theme][data-org-theme="kaarvan"] {
    --tgc-navbar: #5B3E3A;
    --tgc-primary: #5B3E3A;
    --tgc-page-bg: #f6f1ea;
    --tgc-alt-bg: #fafafa;
    --tgc-card-bg: #ffffff;
    --tgc-card-footer-bg: #f3ece4;
    --tgc-card-border: #e6ddd3;
    --tgc-text: #333333;
    --hms-titlebar-bg: #5B3E3A;
    --color-primary: #5B3E3A;
    --color-primary-dark: #46302D;
    --color-primary-light: #EBE7E7;
    --color-on-primary: #ffffff;
    --color-accent: #5B3E3A;
    --color-bg: #f6f1ea;
    --color-surface: #ffffff;
    --color-surface-alt: #fafafa;
    --color-border: #e6ddd3;
    --color-text-primary: #333333;
    --color-text-secondary: #5c564f;
    --color-text-muted: #6b6560;
    --color-gray: #94817E;
    --color-gray-light: #EBE7E7;
    --color-gray-bg: #f6f1ea;
    --color-success: #735A57;
    --color-success-dark: #5B3E3A;
    --color-success-light: #EBE7E7;
    --color-success-text: #46302D;
    --color-info: #846E6B;
    --color-info-dark: #5B3E3A;
    --color-info-light: #EBE7E7;
    --color-info-text: #46302D;
    --color-warning: #A49492;
    --color-warning-dark: #735A57;
    --color-warning-light: #F3EEED;
    --color-warning-text: #5B3E3A;
    --color-danger: #3B2825;
    --color-danger-dark: #32221F;
    --color-danger-light: #EBE7E7;
    --color-danger-text: #3B2825;
    --color-text-on-solid: #ffffff;
    --nav-icon-color: #5B3E3A;
    --tgc-inverse: #ffffff;
    --tgc-dropdown-hover: #EBE7E7;
    --action-save: #5B3E3A;
    --action-save-dark: #46302D;
    --action-submit: #735A57;
    --action-submit-dark: #5B3E3A;
    --action-update: #846E6B;
    --action-update-dark: #5B3E3A;
    --action-confirm: #5B3E3A;
    --action-confirm-dark: #3B2825;
    --action-view: #846E6B;
    --action-view-dark: #5B3E3A;
    --action-print: #94817E;
    --action-print-dark: #735A57;
    --action-download: #846E6B;
    --action-download-dark: #5B3E3A;
    --action-export: #735A57;
    --action-export-dark: #46302D;
    --action-edit: #A49492;
    --action-edit-dark: #735A57;
    --action-reset: #94817E;
    --action-reset-dark: #735A57;
    --action-delete: #3B2825;
    --action-delete-dark: #32221F;
    --action-cancel-order: #3B2825;
    --action-cancel-order-dark: #32221F;
    --action-block: #3B2825;
    --action-block-dark: #32221F;
    --action-cancel-bg: #ffffff;
    --action-cancel-bg-hover: #EBE7E7;
    --action-cancel-border: #e6ddd3;
    --action-cancel-border-hover: #5B3E3A;
    --action-cancel-text: #5B3E3A;
    --action-cancel-text-hover: #46302D;
    --action-focus-ring: #5B3E3A;
    --font-sans: Poppins, "Segoe UI", sans-serif;
}

/* Solid action buttons — brown family only (whole Kaarvan UI). */
:root[data-org-theme="kaarvan"] :is(
    .btn-action-save,
    .btn-action-submit,
    .btn-action-update,
    .btn-action-confirm,
    .btn-action-view,
    .btn-action-print,
    .btn-action-download,
    .btn-action-export,
    .btn-action-edit,
    .btn-action-reset
),
:root[data-theme][data-org-theme="kaarvan"] :is(
    .btn-action-save,
    .btn-action-submit,
    .btn-action-update,
    .btn-action-confirm,
    .btn-action-view,
    .btn-action-print,
    .btn-action-download,
    .btn-action-export,
    .btn-action-edit,
    .btn-action-reset
) {
    color: #fff !important;
}

:root[data-org-theme="kaarvan"] .btn-action-save,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-save {
    background: linear-gradient(135deg, #5B3E3A, #46302D) !important;
    border-color: #46302D !important;
}

:root[data-org-theme="kaarvan"] .btn-action-submit,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-submit {
    background: linear-gradient(135deg, #735A57, #5B3E3A) !important;
    border-color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] .btn-action-update,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-update,
:root[data-org-theme="kaarvan"] .btn-action-view,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-view {
    background: linear-gradient(135deg, #846E6B, #5B3E3A) !important;
    border-color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] .btn-action-confirm,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-confirm {
    background: linear-gradient(135deg, #5B3E3A, #3B2825) !important;
    border-color: #3B2825 !important;
}

:root[data-org-theme="kaarvan"] .btn-action-print,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-print,
:root[data-org-theme="kaarvan"] .btn-action-download,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-download,
:root[data-org-theme="kaarvan"] .btn-action-export,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-export,
:root[data-org-theme="kaarvan"] .btn-action-edit,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-edit,
:root[data-org-theme="kaarvan"] .btn-action-reset,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-reset {
    background: linear-gradient(135deg, #94817E, #735A57) !important;
    border-color: #735A57 !important;
}

:root[data-org-theme="kaarvan"] :is(.btn-action-delete, .btn-action-cancel-order, .btn-action-block),
:root[data-theme][data-org-theme="kaarvan"] :is(.btn-action-delete, .btn-action-cancel-order, .btn-action-block) {
    background: linear-gradient(135deg, #3B2825, #32221F) !important;
    border-color: #32221F !important;
    color: #fff !important;
}

:root[data-org-theme="kaarvan"] .btn-action-cancel,
:root[data-theme][data-org-theme="kaarvan"] .btn-action-cancel {
    background: #fff !important;
    border-color: #e6ddd3 !important;
    color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] .btn-action-cancel:hover:not(:disabled),
:root[data-theme][data-org-theme="kaarvan"] .btn-action-cancel:hover:not(:disabled) {
    background: #EBE7E7 !important;
    border-color: #5B3E3A !important;
    color: #46302D !important;
}

/* Nav icons, links, KPI accents, badges — brown family only. */
:root[data-org-theme="kaarvan"] .nav-icon,
:root[data-org-theme="kaarvan"] .nav-icon svg,
:root[data-theme][data-org-theme="kaarvan"] .nav-icon,
:root[data-theme][data-org-theme="kaarvan"] .nav-icon svg {
    color: var(--nav-icon-color, #5B3E3A) !important;
}

:root[data-org-theme="kaarvan"] .menu-item[aria-current="page"] .nav-icon,
:root[data-org-theme="kaarvan"] .menu-item[aria-current="page"] .nav-icon svg,
:root[data-theme][data-org-theme="kaarvan"] .menu-item[aria-current="page"] .nav-icon,
:root[data-theme][data-org-theme="kaarvan"] .menu-item[aria-current="page"] .nav-icon svg {
    color: #fff !important;
}

:root[data-org-theme="kaarvan"] .admin-layout a:not(.btn):not(.menu-item):not(.sidebar-section-bar),
:root[data-theme][data-org-theme="kaarvan"] .admin-layout a:not(.btn):not(.menu-item):not(.sidebar-section-bar) {
    color: #5B3E3A;
}

:root[data-org-theme="kaarvan"] :is(.sf-kpi-card, .sf-kpi-chart-card),
:root[data-theme][data-org-theme="kaarvan"] :is(.sf-kpi-card, .sf-kpi-chart-card) {
    border-left-color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] :is(
    .bg-green-100, .bg-green-200, .bg-blue-100, .bg-blue-200, .bg-sky-100, .bg-sky-200,
    .bg-indigo-100, .bg-indigo-200, .bg-purple-100, .bg-purple-200, .bg-violet-100, .bg-violet-200,
    .bg-emerald-100, .bg-emerald-200, .bg-teal-100, .bg-teal-200, .bg-cyan-100, .bg-cyan-200,
    .bg-amber-100, .bg-amber-200, .bg-orange-100, .bg-orange-200, .bg-yellow-100, .bg-yellow-200,
    .bg-rose-100, .bg-rose-200, .bg-red-100, .bg-red-200
),
:root[data-theme][data-org-theme="kaarvan"] :is(
    .bg-green-100, .bg-green-200, .bg-blue-100, .bg-blue-200, .bg-sky-100, .bg-sky-200,
    .bg-indigo-100, .bg-indigo-200, .bg-purple-100, .bg-purple-200, .bg-violet-100, .bg-violet-200,
    .bg-emerald-100, .bg-emerald-200, .bg-teal-100, .bg-teal-200, .bg-cyan-100, .bg-cyan-200,
    .bg-amber-100, .bg-amber-200, .bg-orange-100, .bg-orange-200, .bg-yellow-100, .bg-yellow-200,
    .bg-rose-100, .bg-rose-200, .bg-red-100, .bg-red-200
) {
    background-color: #EBE7E7 !important;
}

:root[data-org-theme="kaarvan"] :is(
    .text-green-700, .text-green-800, .text-green-900,
    .text-blue-700, .text-blue-800, .text-blue-900,
    .text-sky-700, .text-sky-800, .text-sky-900,
    .text-indigo-700, .text-indigo-800, .text-indigo-900,
    .text-purple-700, .text-purple-800, .text-purple-900,
    .text-violet-700, .text-violet-800, .text-violet-900,
    .text-emerald-700, .text-emerald-800, .text-emerald-900,
    .text-teal-700, .text-teal-800, .text-teal-900,
    .text-cyan-700, .text-cyan-800, .text-cyan-900,
    .text-amber-700, .text-amber-800, .text-amber-900,
    .text-orange-700, .text-orange-800, .text-orange-900,
    .text-rose-700, .text-rose-800, .text-rose-900,
    .text-red-700, .text-red-800, .text-red-900, .text-red-950
),
:root[data-theme][data-org-theme="kaarvan"] :is(
    .text-green-700, .text-green-800, .text-green-900,
    .text-blue-700, .text-blue-800, .text-blue-900,
    .text-sky-700, .text-sky-800, .text-sky-900,
    .text-indigo-700, .text-indigo-800, .text-indigo-900,
    .text-purple-700, .text-purple-800, .text-purple-900,
    .text-violet-700, .text-violet-800, .text-violet-900,
    .text-emerald-700, .text-emerald-800, .text-emerald-900,
    .text-teal-700, .text-teal-800, .text-teal-900,
    .text-cyan-700, .text-cyan-800, .text-cyan-900,
    .text-amber-700, .text-amber-800, .text-amber-900,
    .text-orange-700, .text-orange-800, .text-orange-900,
    .text-rose-700, .text-rose-800, .text-rose-900,
    .text-red-700, .text-red-800, .text-red-900, .text-red-950
) {
    color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] #sidebar .sidebar-section-bar,
:root[data-theme][data-org-theme="kaarvan"] #sidebar .sidebar-section-bar {
    color: #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] #sidebar .sidebar-nav-panel,
:root[data-theme][data-org-theme="kaarvan"] #sidebar .sidebar-nav-panel {
    background: #fff !important;
    border-color: #e6ddd3 !important;
}

:root[data-org-theme="kaarvan"] #sidebar .menu-item[aria-current="page"],
:root[data-theme][data-org-theme="kaarvan"] #sidebar .menu-item[aria-current="page"] {
    background: #5B3E3A !important;
    color: #fff !important;
}

:root[data-org-theme="kaarvan"] body,
:root[data-theme][data-org-theme="kaarvan"] body,
:root[data-theme][data-org-theme="kaarvan"] .admin-layout,
:root[data-theme][data-org-theme="kaarvan"] .guest-layout,
:root[data-theme][data-org-theme="kaarvan"] .login-screen {
    font-family: Poppins, "Segoe UI", sans-serif !important;
    background: #f6f1ea !important;
    color: #333 !important;
}

:root[data-theme][data-org-theme="kaarvan"] .admin-topbar,
:root[data-theme][data-org-theme="kaarvan"] #sidebar,
:root[data-theme][data-org-theme="kaarvan"] .sf-section-header {
    background: #5B3E3A !important;
    color: #fff !important;
    /* TopGrade Classic leaves --color-primary-dark blue; keep Kaarvan brand accent. */
    border-inline-start-color: #46302D !important;
}

:root[data-org-theme="kaarvan"] .login-portal-card,
:root[data-theme][data-org-theme="kaarvan"] .login-portal-card {
    color: #5B3E3A !important;
    border-color: rgb(91 62 58 / 0.3) !important;
}

:root[data-org-theme="kaarvan"] .login-portal-card:hover,
:root[data-theme][data-org-theme="kaarvan"] .login-portal-card:hover {
    background: #EBE7E7 !important;
}

:root[data-theme][data-org-theme="kaarvan"] .login-screen {
    background: #f6f1ea !important;
}

:root[data-theme][data-org-theme="kaarvan"] .login-left {
    background: #f6f1ea !important;
    color: #333 !important;
    border: 1px solid #e6ddd3 !important;
    box-shadow: none !important;
    border-radius: 8px !important;
}

:root[data-org-theme="kaarvan"] .login-left > div:first-child::before {
    content: "";
    display: block;
    width: min(240px, 100%);
    height: 72px;
    margin-bottom: 1.5rem;
    background: #fff url("/branding/kaarvan-logo.png") left center / contain no-repeat;
    border-radius: 4px;
    padding: 8px 12px;
    box-sizing: content-box;
}

:root[data-org-theme="kaarvan"] .login-left > div:first-child > p:first-of-type {
    color: #5B3E3A !important;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
}

:root[data-org-theme="kaarvan"] .login-left h2 {
    font-family: Montserrat, Poppins, sans-serif !important;
    text-transform: uppercase;
    letter-spacing: -0.04em;
    line-height: 1.05;
    color: #151515 !important;
}

:root[data-org-theme="kaarvan"] .login-left [class*="text-white"] {
    color: #6b6560 !important;
}

:root[data-org-theme="kaarvan"] .login-role-tile,
:root[data-org-theme="kaarvan"] .login-feature-pill,
:root[data-org-theme="kaarvan"] .login-left [class*="bg-white/10"] {
    color: #333 !important;
    background: #fff !important;
    border: 1px solid #e6ddd3 !important;
}

:root[data-theme][data-org-theme="kaarvan"] .login-card {
    background: #fff !important;
    border: 1px solid #e6ddd3 !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 40px rgb(21 21 21 / 0.06) !important;
}

:root[data-org-theme="kaarvan"] .login-card img {
    height: 56px !important;
    max-width: 220px;
    width: auto;
    object-fit: contain;
}

:root[data-org-theme="kaarvan"] .login-card a[href*="register"],
:root[data-org-theme="kaarvan"] .login-card button[type="submit"] {
    background: #5B3E3A !important;
    border-color: #5B3E3A !important;
    color: #fff !important;
    border-radius: 999px !important;
}

:root[data-org-theme="kaarvan"] .login-card a[href*="register"] {
    background: #fff !important;
    color: #5B3E3A !important;
    border: 1px solid #5B3E3A !important;
}

:root[data-org-theme="kaarvan"] .login-card button[aria-label="Color theme"],
:root[data-org-theme="kaarvan"] .login-card button[aria-label="Change theme"],
:root[data-org-theme="kaarvan"] .theme-switcher-panel,
:root[data-org-theme="kaarvan"] .admin-topbar button[aria-label="Color theme"] {
    display: none !important;
}

:root[data-org-theme="kaarvan"] .admin-sidebar__brand > div.flex.min-w-0 {
    gap: 0 !important;
}

:root[data-org-theme="kaarvan"] .admin-sidebar__brand > div.flex.min-w-0::before {
    content: "";
    display: block;
    width: 168px;
    height: 40px;
    background: #fff url("/branding/kaarvan-logo.png") left center / contain no-repeat;
    border-radius: 4px;
}

/* Logo only — hide app name text (Tailwind text-sm overrides font-size:0). */
:root[data-org-theme="kaarvan"] .admin-sidebar__brand > div.flex.min-w-0 > span,
:root[data-org-theme="kaarvan"] .admin-sidebar__brand .chrome-icon {
    display: none !important;
}
