/* ============================================================
   PURE WHITE CRM THEME — #FFFFFF · subtle borders · no color fills
   MA International Consulting · Ultra-professional
   ============================================================ */

:root {
  --tw-bg: #FFFFFF;
  --tw-bg-off: #FAFAF9;
  --tw-bg-dark: #0A0A0A;
  --tw-text: #0A0A0A;
  --tw-text-muted: #6B7280;
  --tw-text-light: #FFFFFF;
  --tw-gold: #C9A84C;
  --tw-gold-light: #E8D5A3;
  --tw-border: #E5E7EB;
  --tw-shadow: 0 1px 3px rgba(0,0,0,0.04);
  --tw-shadow-lg: 0 4px 12px rgba(0,0,0,0.06);
  --tw-radius: 6px;
}

/* ---- BODY ---- */

body, #root {
  background: var(--tw-bg) !important;
  color: var(--tw-text) !important;
}

/* ---- SIDEBAR / NAV ---- */

nav {
  background: var(--tw-bg-dark) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: none !important;
}

nav > div { max-width: 100% !important; }

nav a {
  color: rgba(255,255,255,0.7) !important;
  border-color: transparent !important;
}
nav a:hover {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.1) !important;
}

nav h1 {
  color: #FFFFFF !important;
  font-weight: 600 !important;
}

/* ---- MAIN CONTENT ---- */

.min-h-screen {
  background: var(--tw-bg) !important;
}

.min-h-screen > * { z-index: auto !important; }

.bg-white, .bg-white\/80, [class*="bg-slate-50"] {
  background: var(--tw-bg) !important;
}

.bg-slate-100, .bg-gray-50, .bg-gray-100 {
  background: var(--tw-bg-off) !important;
}

/* ---- SHADOWS ---- */

.shadow-lg, .shadow-xl, .shadow-md, .shadow-sm {
  box-shadow: var(--tw-shadow-lg) !important;
}

/* ---- CARDS ---- */

.rounded-lg, .rounded-xl, .rounded-2xl {
  border-radius: var(--tw-radius) !important;
}

.border-slate-200, .border-slate-300, .border-gray-200, .border-gray-300 {
  border-color: var(--tw-border) !important;
}

/* ---- TABLE ---- */

table thead tr, .from-slate-900.to-slate-800 {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

table th {
  color: var(--tw-text-light) !important;
  border-bottom: 1px solid rgba(255,255,255,0.1) !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

table tbody tr {
  background: var(--tw-bg) !important;
}

table tbody tr:nth-child(even) {
  background: var(--tw-bg-off) !important;
}

table tbody tr:hover {
  background: rgba(201, 168, 76, 0.04) !important;
}

td {
  border-bottom: 1px solid var(--tw-border) !important;
  color: var(--tw-text) !important;
}

/* ---- TYPOGRAPHY ---- */

h1, h2, h3, h4, h5, h6 {
  color: var(--tw-text) !important;
}

.text-slate-600, .text-slate-700, .text-slate-500, .text-gray-500, .text-gray-600 {
  color: var(--tw-text-muted) !important;
}

.text-slate-900, .text-gray-900, .text-gray-800 {
  color: var(--tw-text) !important;
}

/* ---- FORM ELEMENTS ---- */

input, select, textarea {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  color: var(--tw-text) !important;
  border-radius: var(--tw-radius) !important;
}

input:focus, select:focus, textarea:focus {
  border-color: var(--tw-gold) !important;
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.1) !important;
}

/* ---- BUTTONS ---- */

button, [role="button"] {
  border-radius: var(--tw-radius) !important;
}

/* Accent buttons -> black */
.bg-blue-600, .hover\:bg-blue-700:hover,
.bg-green-600, .hover\:bg-green-700:hover,
.bg-indigo-600, .hover\:bg-indigo-700:hover {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
  border: none !important;
}

/* Secondary buttons */
.bg-slate-100, .hover\:bg-slate-200:hover {
  background: var(--tw-bg-off) !important;
  color: var(--tw-text) !important;
}

/* Link colors */
.text-blue-600, .text-indigo-600, .text-green-900 {
  color: var(--tw-gold) !important;
}

/* Badge backgrounds */
.bg-blue-100, .bg-green-100, .bg-yellow-100, .bg-orange-100, .bg-red-100, .bg-gray-100 {
  background: var(--tw-bg-off) !important;
  color: var(--tw-text) !important;
  border: 1px solid var(--tw-border) !important;
}

/* ---- TABS ---- */

[role="tablist"] {
  background: var(--tw-bg-off) !important;
  border: 1px solid var(--tw-border) !important;
  border-radius: var(--tw-radius) !important;
}

[role="tab"][data-state="active"] {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

[role="tab"] {
  color: var(--tw-text) !important;
}

/* ---- MODAL / DIALOG ---- */

[role="dialog"] {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
  border-radius: var(--tw-radius) !important;
}

[data-radix-popper-content-wrapper] {
  color: var(--tw-text) !important;
}

/* ---- REMOVE GRADIENTS / COLOR FILLS ---- */

.bg-gradient-to-br, .bg-gradient-to-r, .bg-gradient-to-t {
  background: var(--tw-bg) !important;
}

/* ---- OVERRIDE BRAND COLORS ---- */

.ma-justice-scales { display: none !important; }

/* ---- INJECTED ENHANCEMENT FIXES ---- */

.crm-tools {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
  color: var(--tw-text) !important;
}

.crm-tools button, .crm-tools label {
  border-radius: var(--tw-radius) !important;
}

.crm-tools button[data-crm-export], .crm-tools button[data-crm-template] {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

.crm-tools label[data-crm-import] {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

.crm-tools button[data-crm-lang-toggle] {
  background: var(--tw-bg-off) !important;
  color: var(--tw-text) !important;
  border: 1px solid var(--tw-border) !important;
}

/* ---- APPOINTMENT ENHANCEMENT ---- */

.ma-appointment-fields {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-appointment-grid label {
  color: var(--tw-text) !important;
}

.ma-appointment-filter {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  color: var(--tw-text) !important;
}

.ma-open-appointments {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
  border: none !important;
}

.ma-appointment-badge {
  background: var(--tw-bg-off) !important;
  color: var(--tw-text) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-appointments-modal {
  background: rgba(10, 10, 10, 0.5) !important;
}

.ma-appointments-dialog {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
}

.ma-appointments-dialog-head h2 {
  color: var(--tw-text) !important;
}

.ma-appointments-dialog-head p {
  color: var(--tw-text-muted) !important;
}

.ma-close-appointments {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

.ma-appointments-summary div {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-appointments-summary span {
  color: var(--tw-text-muted) !important;
}

.ma-appointments-summary strong {
  color: var(--tw-text) !important;
}

.ma-total-appointments {
  background: var(--tw-bg-dark) !important;
}

.ma-total-appointments span {
  color: rgba(255,255,255,0.7) !important;
}

.ma-total-appointments strong {
  color: var(--tw-text-light) !important;
}

.ma-appointments-table th {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

.ma-appointments-table td {
  background: var(--tw-bg) !important;
  color: var(--tw-text) !important;
  border-bottom: 1px solid var(--tw-border) !important;
}

.ma-dashboard-appointments {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
}

.ma-appointments-head h2 {
  color: var(--tw-text) !important;
}

.ma-appointments-head p {
  color: var(--tw-text-muted) !important;
}

.ma-appointments-count {
  background: var(--tw-bg-dark) !important;
}

.ma-appointments-count span {
  color: var(--tw-gold-light) !important;
}

.ma-appointments-count strong {
  color: var(--tw-text-light) !important;
}

.ma-appointment-row {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-appointment-row strong {
  color: var(--tw-text) !important;
}

.ma-appointment-row span {
  color: var(--tw-text-muted) !important;
}

/* ---- DATE ENHANCEMENT ---- */

.ma-date-filter label {
  color: var(--tw-text) !important;
}

.ma-dashboard-date-analysis {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
}

.ma-analysis-head h2 {
  color: var(--tw-text) !important;
}

.ma-analysis-head p {
  color: var(--tw-text-muted) !important;
}

.ma-range-buttons button, .ma-apply-range {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
  border: none !important;
}

.ma-range-buttons button.active {
  background: var(--tw-gold) !important;
  color: var(--tw-text) !important;
}

.ma-custom-range input {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-analysis-grid div {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
}

.ma-analysis-grid span {
  color: var(--tw-text-muted) !important;
}

.ma-analysis-grid strong {
  color: var(--tw-text) !important;
}

/* ---- LOGIN ---- */

.ma-login-screen {
  background: var(--tw-bg) !important;
}

.ma-login-card {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
}

.ma-login-card h1 {
  color: var(--tw-text) !important;
}

.ma-login-card p {
  color: var(--tw-text-muted) !important;
}

.ma-login-card button {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

/* ---- AUTH BAR ---- */

.ma-auth-bar {
  background: var(--tw-bg) !important;
  border: 1px solid var(--tw-border) !important;
  box-shadow: var(--tw-shadow-lg) !important;
  color: var(--tw-text) !important;
}

.ma-auth-bar strong {
  color: var(--tw-text) !important;
}

.ma-auth-bar span {
  color: var(--tw-text-muted) !important;
}

.ma-auth-bar button {
  background: var(--tw-bg-dark) !important;
  color: var(--tw-text-light) !important;
}

/* ---- LOGO ---- */

nav .ma-logo-lockup, nav div:has(> img) {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

nav img {
  height: 48px !important;
}

.ma-logo-mark {
  display: none !important;
}

nav::before, nav::after {
  display: none !important;
}

/* ---- RESPONSIVE ---- */

@media (max-width: 768px) {
  nav img {
    height: 36px !important;
  }
}
