/*
 * Evac Theme Overrides
 *
 * Official Evac brand palette (from the Evac brand guidelines):
 *   Ocean Depth  #205153  — PRIMARY brand color (the logo color)
 *   White        #FFFFFF
 *   Secondary palette:
 *     Pistachio  #71927B   Sage       #A6B5AE   Grey       #999A9C
 *     Aqua Blue  #80AFC9   Blue       #247597   Deep Green #006E81
 *     Turquoise  #00ADB7
 *
 * Typography: Museo Sans is the main typeface (Adobe Fonts). Where it is not
 * available, the brand specifies Arial as the fallback.
 */

/* ── Typography ───────────────────────────────────────────────────────── */
/*
 * The compiled bundle puts its font rules inside @layer blocks. Unlayered CSS
 * always wins over layered CSS in the author origin, so a plain `*` rule here
 * beats the bundled font-family rule without needing !important.
 * Museo Sans loads via the Adobe Fonts kit (config.theme.typekit); until that
 * kit ID is set the browser falls back to Arial — exactly as the brand requires.
 */
* {
  font-family: "museo-sans", Arial, Helvetica, sans-serif;
}

/* ── Brand colors ─────────────────────────────────────────────────────── */

/* Light theme (corporate) */
[data-theme="corporate"] {
  --color-primary: #205153;          /* Ocean Depth */
  --color-primary-content: #ffffff;

  --color-secondary: #006E81;        /* Deep Green */
  --color-secondary-content: #ffffff;

  --color-accent: #00ADB7;           /* Turquoise */
  --color-accent-content: #ffffff;
}

/* Dark theme (business) */
[data-theme="business"] {
  --color-primary: #006E81;          /* Deep Green reads better on dark surfaces */
  --color-primary-content: #ffffff;

  --color-secondary: #205153;        /* Ocean Depth */
  --color-secondary-content: #ffffff;

  --color-accent: #00ADB7;           /* Turquoise */
  --color-accent-content: #ffffff;
}

/* ── Main menu (sidebar) ──────────────────────────────────────────────── */
/*
 * Match evac.com, whose navigation/menu panels use the brand "Fog" tone.
 * Evac Fog = #f2f5f5 (the same --color-brand-fog used on evac.com's menus).
 * The sidebar ships with DaisyUI's `bg-base-200`; this unlayered `aside`
 * rule overrides that utility for the Evac build.
 */
aside {
  background-color: #f2f5f5;
}

/* ── Sidebar nav active item ──────────────────────────────────────────── */
/* Keep the selected nav item in Ocean Depth (matches evac.com active state) */
[data-theme] .menu-active {
  background-color: #205153;
  color: #ffffff;
}

/* ── Progress / sliders ───────────────────────────────────────────────── */
progress.progress-primary {
  color: #205153;
}

/* ── Logo ─────────────────────────────────────────────────────────────── */
aside a img {
  height: 3.25rem;
  max-width: 200px;
}

/* ── Status badge palette ─────────────────────────────────────────────── */
/*
 * Semantic badge colors, drawn from the Evac brand palette:
 *   primary   → Ocean Depth  #205153
 *   accent    → Turquoise    #00ADB7
 *   info      → Blue         #247597 / Aqua #80AFC9
 *   secondary → Sage/Grey    #A6B5AE / #999A9C
 *   success   → Pistachio    #71927B
 * Warning and error keep conventional (meaning-carrying) hues.
 */
:root {
  /* Success – active, delivered, valid, resolved, accepted (Pistachio) */
  --badge-success-bg:         #EAF0EC;
  --badge-success-text:       #3F5A48;
  --badge-success-border:     #CFDDD4;

  /* Warning – maintenance, expiring soon, processing, in progress */
  --badge-warning-bg:         oklch(96% 0.06 80);
  --badge-warning-text:       oklch(44% 0.14 58);
  --badge-warning-border:     oklch(89% 0.09 80);

  /* Error – expired, cancelled, rejected */
  --badge-error-bg:           oklch(91% 0.05 15);
  --badge-error-text:         oklch(36% 0.16 22);
  --badge-error-border:       oklch(82% 0.09 15);

  /* Info – in delivery, new, sent (Blue / Aqua) */
  --badge-info-bg:            #E7F0F5;
  --badge-info-text:          #1F5E7A;
  --badge-info-border:        #C5DCE8;

  /* Primary – active asset, open (Ocean Depth) */
  --badge-primary-bg:         #E6EEEE;
  --badge-primary-text:       #205153;
  --badge-primary-border:     #C8DBDB;

  /* Secondary – waiting info, draft (Sage / Grey) */
  --badge-secondary-bg:       #EEF1F0;
  --badge-secondary-text:     #4E5A55;
  --badge-secondary-border:   #D6DEDB;

  /* Accent – request type (Turquoise) */
  --badge-accent-bg:          #E0F5F6;
  --badge-accent-text:        #00767E;
  --badge-accent-border:      #B7E8EB;

  /* Neutral – closed, retired, archived (Grey) */
  --badge-neutral-bg:         #F0F1F1;
  --badge-neutral-text:       #5C605F;
  --badge-neutral-border:     #DDDFDF;

  /* Order status – maps each code to a semantic pastel */
  --badge-order-pending-bg:       var(--badge-warning-bg);
  --badge-order-pending-text:     var(--badge-warning-text);
  --badge-order-pending-border:   var(--badge-warning-border);

  --badge-order-processing-bg:    var(--badge-info-bg);
  --badge-order-processing-text:  var(--badge-info-text);
  --badge-order-processing-border:var(--badge-info-border);

  --badge-order-shipped-bg:       var(--badge-secondary-bg);
  --badge-order-shipped-text:     var(--badge-secondary-text);
  --badge-order-shipped-border:   var(--badge-secondary-border);

  --badge-order-delivered-bg:     var(--badge-success-bg);
  --badge-order-delivered-text:   var(--badge-success-text);
  --badge-order-delivered-border: var(--badge-success-border);

  --badge-order-cancelled-bg:     var(--badge-neutral-bg);
  --badge-order-cancelled-text:   var(--badge-neutral-text);
  --badge-order-cancelled-border: var(--badge-neutral-border);
}

/* ── Apply pastel palette to DaisyUI badge semantic classes ───────────── */
/*
 * theme-overrides.css loads BEFORE the main bundle, so we need higher
 * specificity than DaisyUI's single-class ".badge-success" rules.
 * "[data-theme] .badge-X" (2 classes) always beats ".badge-X" (1 class).
 */
[data-theme] .badge-success   { --badge-color: var(--badge-success-border);   --badge-bg: var(--badge-success-bg);   --badge-fg: var(--badge-success-text);   }
[data-theme] .badge-warning   { --badge-color: var(--badge-warning-border);   --badge-bg: var(--badge-warning-bg);   --badge-fg: var(--badge-warning-text);   }
[data-theme] .badge-error     { --badge-color: var(--badge-error-border);     --badge-bg: var(--badge-error-bg);     --badge-fg: var(--badge-error-text);     }
[data-theme] .badge-info      { --badge-color: var(--badge-info-border);      --badge-bg: var(--badge-info-bg);      --badge-fg: var(--badge-info-text);      }
[data-theme] .badge-primary   { --badge-color: var(--badge-primary-border);   --badge-bg: var(--badge-primary-bg);   --badge-fg: var(--badge-primary-text);   }
[data-theme] .badge-secondary { --badge-color: var(--badge-secondary-border); --badge-bg: var(--badge-secondary-bg); --badge-fg: var(--badge-secondary-text); }
[data-theme] .badge-accent    { --badge-color: var(--badge-accent-border);    --badge-bg: var(--badge-accent-bg);    --badge-fg: var(--badge-accent-text);    }
[data-theme] .badge-neutral   { --badge-color: var(--badge-neutral-border);   --badge-bg: var(--badge-neutral-bg);   --badge-fg: var(--badge-neutral-text);   }

/* ── Order status badge classes (used in orders list & detail) ─────────── */
[data-theme] .badge-order-status-pending    { --badge-color: var(--badge-order-pending-border);    --badge-bg: var(--badge-order-pending-bg);    --badge-fg: var(--badge-order-pending-text);    }
[data-theme] .badge-order-status-processing { --badge-color: var(--badge-order-processing-border); --badge-bg: var(--badge-order-processing-bg); --badge-fg: var(--badge-order-processing-text); }
[data-theme] .badge-order-status-shipped    { --badge-color: var(--badge-order-shipped-border);    --badge-bg: var(--badge-order-shipped-bg);    --badge-fg: var(--badge-order-shipped-text);    }
[data-theme] .badge-order-status-delivered  { --badge-color: var(--badge-order-delivered-border);  --badge-bg: var(--badge-order-delivered-bg);  --badge-fg: var(--badge-order-delivered-text);  }
[data-theme] .badge-order-status-cancelled  { --badge-color: var(--badge-order-cancelled-border);  --badge-bg: var(--badge-order-cancelled-bg);  --badge-fg: var(--badge-order-cancelled-text);  }
