/*
 * Nidhi Book accent palettes.
 * Set via html[data-accent="light|green|orange|brown|maroon"].
 * Orthogonal to light/dark (data-theme). Default "light" = laundry brand orange.
 */
:root,
html[data-accent="light"] {
    --nidhi-clean-primary: #f26522;
    --nidhi-clean-primary-hover: #d9551a;
    --nidhi-clean-primary-soft: #fff4ef;
    --nidhi-clean-primary-border: #fdc9b0;
    --nidhi-clean-primary-muted-text: #9a3412;
    --nidhi-clean-primary-rgb: 242, 101, 34;
    --nidhi-accent-dial: #c2410c;
    --nidhi-accent-second: #2563eb;
    /* Dashboard / card section bars follow THEME accent (not fixed laundry orange) */
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-accent="green"] {
    --nidhi-clean-primary: #15803d;
    --nidhi-clean-primary-hover: #166534;
    --nidhi-clean-primary-soft: #ecfdf5;
    --nidhi-clean-primary-border: #a7f3d0;
    --nidhi-clean-primary-muted-text: #14532d;
    --nidhi-clean-primary-rgb: 21, 128, 61;
    --nidhi-accent-dial: #166534;
    --nidhi-accent-second: #ca8a04;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-accent="orange"] {
    --nidhi-clean-primary: #ea580c;
    --nidhi-clean-primary-hover: #c2410c;
    --nidhi-clean-primary-soft: #fff7ed;
    --nidhi-clean-primary-border: #fed7aa;
    --nidhi-clean-primary-muted-text: #9a3412;
    --nidhi-clean-primary-rgb: 234, 88, 12;
    --nidhi-accent-dial: #c2410c;
    --nidhi-accent-second: #2563eb;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-accent="brown"] {
    --nidhi-clean-primary: #92400e;
    --nidhi-clean-primary-hover: #78350f;
    --nidhi-clean-primary-soft: #fef3c7;
    --nidhi-clean-primary-border: #fcd34d;
    --nidhi-clean-primary-muted-text: #78350f;
    --nidhi-clean-primary-rgb: 146, 64, 14;
    --nidhi-accent-dial: #78350f;
    --nidhi-accent-second: #ea580c;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-accent="maroon"] {
    --nidhi-clean-primary: #9f1239;
    --nidhi-clean-primary-hover: #881337;
    --nidhi-clean-primary-soft: #fff1f2;
    --nidhi-clean-primary-border: #fecdd3;
    --nidhi-clean-primary-muted-text: #881337;
    --nidhi-clean-primary-rgb: 159, 18, 57;
    --nidhi-accent-dial: #881337;
    --nidhi-accent-second: #f97316;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

/* Dark mode: keep surfaces from nidhi-theme; brighten accent primary. */
html[data-theme="dark"] {
    --dk-primary: var(--nidhi-clean-primary);
}

html[data-theme="dark"][data-accent="light"],
html[data-theme="dark"]:not([data-accent]) {
    --nidhi-clean-primary: #fb923c;
    --nidhi-clean-primary-hover: #fdba74;
    --nidhi-clean-primary-soft: #431407;
    --nidhi-clean-primary-border: #9a3412;
    --nidhi-clean-primary-muted-text: #fed7aa;
    --nidhi-clean-primary-rgb: 251, 146, 60;
    --nidhi-accent-dial: #fdba74;
    --nidhi-accent-second: #60a5fa;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-theme="dark"][data-accent="green"] {
    --nidhi-clean-primary: #22c55e;
    --nidhi-clean-primary-hover: #4ade80;
    --nidhi-clean-primary-soft: #14532d;
    --nidhi-clean-primary-border: #166534;
    --nidhi-clean-primary-muted-text: #bbf7d0;
    --nidhi-clean-primary-rgb: 34, 197, 94;
    --nidhi-accent-dial: #86efac;
    --nidhi-accent-second: #facc15;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-theme="dark"][data-accent="orange"] {
    --nidhi-clean-primary: #fb923c;
    --nidhi-clean-primary-hover: #fdba74;
    --nidhi-clean-primary-soft: #7c2d12;
    --nidhi-clean-primary-border: #9a3412;
    --nidhi-clean-primary-muted-text: #fed7aa;
    --nidhi-clean-primary-rgb: 251, 146, 60;
    --nidhi-accent-dial: #fdba74;
    --nidhi-accent-second: #60a5fa;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-theme="dark"][data-accent="brown"] {
    --nidhi-clean-primary: #d97706;
    --nidhi-clean-primary-hover: #f59e0b;
    --nidhi-clean-primary-soft: #451a03;
    --nidhi-clean-primary-border: #78350f;
    --nidhi-clean-primary-muted-text: #fcd34d;
    --nidhi-clean-primary-rgb: 217, 119, 6;
    --nidhi-accent-dial: #fbbf24;
    --nidhi-accent-second: #fb923c;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

html[data-theme="dark"][data-accent="maroon"] {
    --nidhi-clean-primary: #fb7185;
    --nidhi-clean-primary-hover: #fda4af;
    --nidhi-clean-primary-soft: #4c0519;
    --nidhi-clean-primary-border: #9f1239;
    --nidhi-clean-primary-muted-text: #fecdd3;
    --nidhi-clean-primary-rgb: 251, 113, 133;
    --nidhi-accent-dial: #fda4af;
    --nidhi-accent-second: #fb923c;
    --nidhi-brand-section: var(--nidhi-clean-primary);
}

/* Remap legacy Bootstrap / style.css teal primary to accent tokens. */
.btn-primary,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
    background-color: var(--nidhi-clean-primary) !important;
    border-color: var(--nidhi-clean-primary) !important;
    color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--nidhi-clean-primary-hover) !important;
    border-color: var(--nidhi-clean-primary-hover) !important;
    color: #fff !important;
}

.bg-primary,
.badge-primary {
    background-color: var(--nidhi-clean-primary) !important;
}

.border-primary {
    border-color: var(--nidhi-clean-primary) !important;
}

.text-primary {
    color: var(--nidhi-clean-primary) !important;
}

a.text-primary:hover,
a.text-primary:focus {
    color: var(--nidhi-clean-primary-hover) !important;
}

.page-item.active .page-link,
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: var(--nidhi-clean-primary) !important;
    border-color: var(--nidhi-clean-primary) !important;
}

.custom-control-input:checked ~ .custom-control-label::before,
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--nidhi-clean-primary) !important;
    border-color: var(--nidhi-clean-primary) !important;
}

/* Accent picker in user dropdown */
.nidhi-accent-picker {
    padding: 0.5rem 0.9rem 0.65rem;
}

.nidhi-accent-picker__label {
    display: block;
    margin-bottom: 0.4rem;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.nidhi-accent-picker__row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.nidhi-accent-swatch {
    width: 28px;
    height: 28px;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12);
    cursor: pointer;
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.nidhi-accent-swatch:hover {
    transform: scale(1.08);
}

.nidhi-accent-swatch.is-active {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--nidhi-clean-primary);
}

.nidhi-accent-swatch[data-accent="light"] { background: #f26522; }
.nidhi-accent-swatch[data-accent="green"] { background: #15803d; }
.nidhi-accent-swatch[data-accent="orange"] { background: #ea580c; }
.nidhi-accent-swatch[data-accent="brown"] { background: #92400e; }
.nidhi-accent-swatch[data-accent="maroon"] { background: #9f1239; }

html[data-theme="dark"] .nidhi-accent-picker__label {
    color: var(--dk-muted, #94a3b8);
}

/* Select2 highlight follows accent */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--nidhi-clean-primary, #f26522) !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--nidhi-clean-primary-soft, #fff4ef) !important;
    border-color: var(--nidhi-clean-primary-border, #fdc9b0) !important;
    color: var(--nidhi-clean-primary-muted-text, #9a3412) !important;
}
