/**
 * Meeting Assistant House Style
 * Duotone: primary blue #3B82F6, secondary cyan #06B6D4
 * Enterprise-grade, AI-first, minimalist
 */

/* ========== MA Design Tokens ========== */
:root {
  /* Primary (brand) */
  --ma-primary: #3B82F6;
  --ma-primary-dark: #1D4ED8;
  /* Secondary (AI accent) */
  --ma-secondary: #06B6D4;
  --ma-secondary-dark: #0891B2;
  /* Action points */
  --ma-action: #22C55E;
  --ma-action-dark: #16A34A;
  /* Neutrals */
  --ma-bg: #F9FAFB;
  --ma-card: #FFFFFF;
  --ma-border: #E5E7EB;
  --ma-text: #0F172A;
  --ma-text-muted: #6B7280;
}

[data-bs-theme="dark"] {
  --ma-bg: #0B1220;
  --ma-card: #111827;
  --ma-border: #374151;
  --ma-text: #E5E7EB;
  --ma-text-muted: #9CA3AF;
}

/* ========== Bootstrap/Metronic Overrides ========== */
:root {
  --bs-primary: var(--ma-primary);
  --bs-primary-rgb: 59, 130, 246;
  --bs-primary-active: var(--ma-primary-dark);
  --bs-primary-light: rgba(59, 130, 246, 0.1);
  --bs-primary-inverse: #ffffff;
  --bs-secondary: var(--ma-secondary);
  --bs-secondary-rgb: 6, 182, 212;
  --bs-secondary-active: var(--ma-secondary-dark);
  --bs-secondary-light: rgba(6, 182, 212, 0.1);
  --bs-secondary-inverse: #ffffff;
}

[data-bs-theme="dark"] {
  --bs-primary: var(--ma-primary);
  --bs-primary-rgb: 59, 130, 246;
  --bs-primary-light: rgba(59, 130, 246, 0.15);
  --bs-secondary: var(--ma-secondary);
  --bs-secondary-rgb: 6, 182, 212;
  --bs-secondary-light: rgba(6, 182, 212, 0.15);
}

/* ========== Typography ========== */
body {
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: var(--ma-text);
}

h1, h2, h3, h4, h5, h6,
.page-heading,
.card-title,
.fw-bold {
  font-weight: 600;
}

.fw-bolder {
  font-weight: 700;
}

/* ========== Cards ========== */
.card,
.card-flush {
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--ma-border);
  background: var(--ma-card);
  transition: all 0.2s ease;
}

[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .card-flush {
  background: var(--ma-card);
  border-color: var(--ma-border);
}

/* ========== Buttons ========== */
.btn-primary {
  background: var(--ma-primary) !important;
  border-color: var(--ma-primary) !important;
  color: white !important;
  border-radius: 8px;
  transition: all 0.2s ease;
}

.btn-primary:hover {
  background: var(--ma-primary-dark) !important;
  border-color: var(--ma-primary-dark) !important;
}

.btn-light,
.btn-secondary:not(.btn-active) {
  border: 1px solid var(--ma-border);
  background: var(--ma-card);
  border-radius: 8px;
  transition: all 0.2s ease;
}

.btn-light-primary {
  background: var(--bs-primary-light) !important;
  color: var(--ma-primary) !important;
  border-radius: 8px;
}

/* ========== Menu / Sidebar ========== */
.menu-link.active {
  background: rgba(59, 130, 246, 0.1) !important;
  color: var(--ma-primary) !important;
}

.menu-link:hover {
  transition: all 0.2s ease;
}

.btn-active-color-primary:hover,
.btn-active-color-primary:focus {
  color: var(--ma-primary) !important;
}

/* ========== Modals ========== */
.modal-content {
  border-radius: 12px;
  border: 1px solid var(--ma-border);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* ========== AI UI Elements ========== */
.ma-card-summary .card-header {
  color: var(--ma-primary);
}

.ma-card-summary .card-header .bi {
  color: var(--ma-primary);
}

.ma-action-points {
  --ma-accent: var(--ma-action);
}

.ma-action-points .card-header,
.ma-action-points .bi-check2-square {
  color: var(--ma-action);
}

.ma-decisions {
  --ma-accent: var(--ma-secondary);
}

.ma-decisions .card-header,
.ma-decisions .bi-journal-check {
  color: var(--ma-secondary);
}

/* Chat bubbles - user (primary tint) */
.bg-light-primary {
  background: rgba(59, 130, 246, 0.1) !important;
}

/* Chat bubbles - assistant (secondary/cyan tint) */
.bg-light-info {
  background: rgba(6, 182, 212, 0.1) !important;
}

/* ========== Speaker badges (transcript) ========== */
.ma-speaker-badge {
  border-radius: 8px;
  padding: 0.2rem 0.5rem;
  font-weight: 600;
  font-size: 0.875rem;
  border: 1px solid var(--ma-border);
  background: var(--ma-bg);
}

/* ========== Hover states ========== */
.card:hover,
.btn-primary:hover,
.menu-link:hover {
  transition: all 0.2s ease;
}

/* ========== Tables ========== */
.table-row-dashed td,
.table-row-dashed th {
  border-color: var(--ma-border) !important;
}

/* ========== Badges ========== */
.badge-light-primary {
  background: rgba(59, 130, 246, 0.1) !important;
  color: var(--ma-primary) !important;
}

.badge-light-success {
  background: rgba(34, 197, 94, 0.1) !important;
  color: var(--ma-action) !important;
}

.badge-light-info {
  background: rgba(6, 182, 212, 0.1) !important;
  color: var(--ma-secondary) !important;
}

/* ========== Drop zones (wizard) ========== */
.ma-drop-zone {
  border: 2px dashed var(--ma-border);
  border-radius: 12px;
  transition: all 0.2s ease;
}

.ma-drop-zone:hover,
.ma-drop-zone.border-primary {
  border-color: var(--ma-primary);
}

/* ========== Stepper ========== */
.stepper-icon.bg-primary {
  background: var(--ma-primary) !important;
}
