body {
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #efefef;
    background-color: #121212 !important;
}

.app-shell {
    min-height: 100vh;
    background-color: #121212 !important;
}

main {
    background-color: #121212 !important;
}

.status-dot {
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 999px;
    display: inline-block;
}

.dark-panel {
    background: #191919;
    border-color: rgba(162, 113, 225, 0.28);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
}

.dark-table-row:hover {
    background: rgba(162, 113, 225, 0.08);
}

/* Dark mode global: overrides Tailwind light utilities used across the CRM. */
.bg-white,
.bg-white\/95 {
    background-color: #191919 !important;
}

.bg-slate-50,
.bg-slate-100 {
    background-color: #121212 !important;
}

.bg-blue-50,
.bg-emerald-50,
.bg-rose-50 {
    background-color: #191919 !important;
}

.bg-slate-900 {
    background-color: #191919 !important;
}

.bg-slate-950 {
    background-color: #121212 !important;
}

button.bg-slate-900,
button.bg-slate-950,
a.bg-slate-900,
a.bg-slate-950 {
    background-color: #f0bb2b !important;
    color: #121212 !important;
}

.hover\:bg-slate-50:hover,
.hover\:bg-slate-100:hover {
    background-color: #191919 !important;
}

.hover\:bg-slate-700:hover,
.hover\:bg-slate-800:hover {
    background-color: #ffd45f !important;
    color: #121212 !important;
}

.text-slate-950,
.text-slate-900,
.text-slate-800,
.text-slate-700 {
    color: #efefef !important;
}

.text-slate-600,
.text-slate-500,
.text-slate-400 {
    color: rgba(239, 239, 239, 0.68) !important;
}

h1,
h2,
h3,
.text-2xl.font-bold,
.text-3xl.font-bold {
    color: #87049d !important;
}

.text-emerald-600,
.text-emerald-700,
.text-blue-700 {
    color: #A271e1 !important;
}

.text-rose-600,
.text-rose-700 {
    color: #f0bb2b !important;
}

.border-slate-100,
.border-slate-200,
.border-slate-300,
.border-blue-200,
.border-emerald-200,
.border-rose-200 {
    border-color: rgba(162, 113, 225, 0.28) !important;
}

.divide-slate-100 > :not([hidden]) ~ :not([hidden]),
.divide-slate-200 > :not([hidden]) ~ :not([hidden]) {
    border-color: rgba(162, 113, 225, 0.22) !important;
}

.shadow-sm,
.shadow-2xl {
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35) !important;
}

input,
select,
textarea {
    background-color: #121212 !important;
    border-color: rgba(162, 113, 225, 0.38) !important;
    color: #efefef !important;
}

input::placeholder,
textarea::placeholder {
    color: rgba(239, 239, 239, 0.48) !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: #A271e1 !important;
    box-shadow: 0 0 0 3px rgba(162, 113, 225, 0.18);
}

option {
    background-color: #191919;
    color: #efefef;
}

form > div:nth-of-type(even) input,
form > div:nth-of-type(even) select,
form > div:nth-of-type(even) textarea,
.grid > div:nth-of-type(even) input,
.grid > div:nth-of-type(even) select,
.grid > div:nth-of-type(even) textarea {
    background-color: #191919 !important;
}

tbody tr:nth-child(odd) {
    background-color: #121212;
}

tbody tr:nth-child(even) {
    background-color: #191919;
}

thead,
.bg-\[\#A271e1\]\/10 {
    background-color: #191919 !important;
}

table {
    color: #efefef;
}

a {
    color: inherit;
}

a.underline,
td a,
.font-semibold.text-\[\#f0bb2b\] {
    color: #f0bb2b !important;
}

button,
.rounded-xl.bg-\[\#f0bb2b\],
a.bg-\[\#f0bb2b\] {
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

button:hover,
a.bg-\[\#f0bb2b\]:hover {
    border-color: #f0bb2b !important;
}

@media print {
    .no-print {
        display: none !important;
    }
}
