/*
 * NidhiBook light theme — Laundry UI language
 * -------------------------------------------
 * Maps Nidhi Laundry light surfaces / dual brand (orange CTA + blue chrome)
 * into this app's class system. Dark mode is handled by nidhi-theme.css —
 * keep rules either on :root tokens (dark remaps those) or under
 * html:not([data-theme="dark"]).
 *
 * Brand model:
 *   --nidhi-brand         #f26522  CTA / active chrome
 *   --nidhi-brand-section → accent primary (card/section bars)
 *   --nidhi-brand-purple  #6a1f8e  wordmark
 *   --nidhi-chrome        #2563eb  focus / links
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
    /* Dual brand (laundry) */
    --nidhi-brand: #f26522;
    --nidhi-brand-hover: #d9551a;
    --nidhi-brand-section: var(--nidhi-clean-primary, #f26522);
    --nidhi-brand-purple: #6a1f8e;
    --nidhi-chrome: #2563eb;
    --nidhi-chrome-hover: #1d4ed8;

    /* Surfaces / text (laundry light) — dark theme remaps --nidhi-clean-* */
    --nidhi-clean-surface: #ffffff;
    --nidhi-clean-muted: #f8fafc;
    --nidhi-clean-muted-text: #475569;
    --nidhi-clean-text: #0f172a;
    --nidhi-clean-border: #e2e8f0;

    --nidhi-page-bg: #ffffff;
    --nidhi-card-radius: 14px;
    --nidhi-card-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    --nidhi-card-hover-shadow: 0 12px 32px rgba(0, 0, 0, 0.10);
}

/* ── Typography ─────────────────────────────────────────── */
body,
.page,
.app-content,
#app {
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

html:not([data-theme="dark"]) body,
html:not([data-theme="dark"]) .page,
html:not([data-theme="dark"]) .app-content,
html:not([data-theme="dark"]) #app {
    color: var(--nidhi-clean-text);
}

html:not([data-theme="dark"]) body,
html:not([data-theme="dark"]) .page,
html:not([data-theme="dark"]) .page-main,
html:not([data-theme="dark"]) .app-content {
    background: var(--nidhi-page-bg) !important;
}

html:not([data-theme="dark"]) #app.bg-white,
html:not([data-theme="dark"]) #app {
    background: transparent !important;
}

/* ── Cards ──────────────────────────────────────────────── */
html:not([data-theme="dark"]) .card,
html:not([data-theme="dark"]) .card.custom-card,
html:not([data-theme="dark"]) .inner-body.card {
    background: var(--nidhi-clean-surface) !important;
    border: 1px solid var(--nidhi-clean-border) !important;
    border-radius: var(--nidhi-card-radius) !important;
    box-shadow: var(--nidhi-card-shadow) !important;
}

html:not([data-theme="dark"]) .card-header,
html:not([data-theme="dark"]) .card .card-header {
    background: var(--nidhi-clean-surface) !important;
    border-bottom: 1px solid var(--nidhi-clean-border) !important;
    color: var(--nidhi-clean-text) !important;
}

/* Kill legacy purple card glow from style.css */
html:not([data-theme="dark"]) .card {
    box-shadow: var(--nidhi-card-shadow) !important;
}

/* ── Primary CTA glow (follows accent / brand orange default) ─ */
html:not([data-theme="dark"]) .btn-primary {
    box-shadow: 0 3px 10px rgba(var(--nidhi-clean-primary-rgb, 242, 101, 34), 0.28);
}

html:not([data-theme="dark"]) .btn-primary:hover,
html:not([data-theme="dark"]) .btn-primary:focus {
    box-shadow: 0 4px 14px rgba(var(--nidhi-clean-primary-rgb, 242, 101, 34), 0.35);
}

/* ── Chrome blue focus / links (laundry dual-accent) ────── */
html:not([data-theme="dark"]) a:not(.btn):not(.side-menu__item):not(.nav-link):not(.dropdown-item):not(.nidhi-url) {
    color: var(--nidhi-chrome);
}

html:not([data-theme="dark"]) a:not(.btn):not(.side-menu__item):not(.nav-link):not(.dropdown-item):hover {
    color: var(--nidhi-chrome-hover);
}

html:not([data-theme="dark"]) .form-control:focus,
html:not([data-theme="dark"]) .custom-select:focus,
html:not([data-theme="dark"]) select.form-control:focus,
html:not([data-theme="dark"]) textarea.form-control:focus {
    border-color: var(--nidhi-chrome) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14) !important;
}

html:not([data-theme="dark"]) #app .form-control,
html:not([data-theme="dark"]) #app select.form-control,
html:not([data-theme="dark"]) #app textarea.form-control,
html:not([data-theme="dark"]) #app input.form-control {
    background-color: #f8faff !important;
    border-color: #dde3f8 !important;
    color: #1e293b !important;
}

/* ── Brand wordmark ─────────────────────────────────────── */
html:not([data-theme="dark"]) .app-header .header-brand .nidhi-brand-badge__nidhi {
    background: var(--nidhi-brand, #f26522);
}

html:not([data-theme="dark"]) .app-header .header-brand .nidhi-brand-badge__book {
    background: var(--nidhi-brand-purple, #6a1f8e);
}

/* ── Module cards (dense laundry-style launchers) ───────── */
html:not([data-theme="dark"]) .module-card {
    border-radius: 6px !important;
    box-shadow: none !important;
    /* Keep left accent + tinted bg from inline --item-* / styles */
    border-top-color: var(--nidhi-clean-border) !important;
    border-right-color: var(--nidhi-clean-border) !important;
    border-bottom-color: var(--nidhi-clean-border) !important;
}

html:not([data-theme="dark"]) .module-card:hover {
    border-top-color: var(--nidhi-clean-border) !important;
    border-right-color: var(--nidhi-clean-border) !important;
    border-bottom-color: var(--nidhi-clean-border) !important;
    border-left-color: var(--item-color, var(--nidhi-brand)) !important;
    background: color-mix(in srgb, var(--item-color, var(--nidhi-brand)) 8%, #ffffff) !important;
    box-shadow: none !important;
    transform: none;
}

html:not([data-theme="dark"]) .module-header {
    background: var(--nidhi-clean-surface) !important;
    border-color: var(--nidhi-clean-border) !important;
}

html:not([data-theme="dark"]) .module-header h2 {
    color: var(--nidhi-clean-text) !important;
    font-family: 'Inter', system-ui, sans-serif;
}

html:not([data-theme="dark"]) .module-header h2 i {
    color: var(--nidhi-brand, #f26522) !important;
    filter: none;
}

html:not([data-theme="dark"]) .module-filter-input:focus {
    border-color: var(--nidhi-chrome) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14) !important;
}

/* ── Section / table header bars — follow THEME accent ──── */
html:not([data-theme="dark"]) .section-header.bg-primary,
html:not([data-theme="dark"]) .card > .bg-primary.p-4,
html:not([data-theme="dark"]) .rounded.bg-primary,
html:not([data-theme="dark"]) thead.bg-primary,
html:not([data-theme="dark"]) thead.bg-primary th {
    background: var(--nidhi-clean-primary, var(--nidhi-brand-section)) !important;
    border-color: var(--nidhi-clean-primary-hover, var(--nidhi-clean-primary)) !important;
    color: #ffffff !important;
}

html:not([data-theme="dark"]) .app-header.header {
    background: #ffffff;
    border-bottom: 1px solid var(--nidhi-clean-border);
}
