/* letsgoo light theme — bright, clean surfaces with the violet brand accent.
   Loaded AFTER main.min.css, scoped to the (app) group. Marketing pages are
   untouched (they carry their own styling). */

:root {
  --lg-accent: #7c5cfc;
  --lg-accent-strong: #6d43f7;
  --lg-canvas: #f6f5fb;
  --lg-panel: #ffffff;
  --lg-border: #e7e3f2;
  --lg-border-strong: #d9d3ec;
  --lg-text: #1c1830;
  --lg-muted: #6b6580;
  --lg-tint: rgba(124, 92, 252, 0.08);
  --lg-error: #dc2626;
  --lg-ok: #16a34a;
  --lg-warn: #d97706;
}

/* ── Page canvas ─────────────────────────────────────────────────────────── */
body {
  background:
    radial-gradient(1100px 700px at 78% -12%, rgba(124, 92, 252, 0.10), transparent 60%),
    radial-gradient(900px 600px at -10% 30%, rgba(109, 67, 247, 0.06), transparent 55%),
    var(--lg-canvas) !important;
  color: var(--lg-text);
}
::selection { background: rgba(124, 92, 252, 0.18); }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #cfc9e0 !important; border-radius: 999px; }
::-webkit-scrollbar-track { background: transparent !important; }

/* ── Falcon shell ────────────────────────────────────────────────────────── */
/* Colored top bar keeps the white brand text/avatar in AppShell working, while
   everything below it goes light. */
.app-header {
  background: linear-gradient(135deg, var(--lg-accent), var(--lg-accent-strong)) !important;
  box-shadow: 0 1px 12px rgba(124, 92, 252, 0.25);
}
.sidebar-wrapper {
  background: #ffffff !important;
  border-right: 1px solid var(--lg-border);
  box-shadow: 6px 0 24px -18px rgba(28, 24, 48, 0.25) !important;
}
.app-container { background: transparent !important; }
.app-footer {
  background: transparent !important;
  color: var(--lg-muted);
  border-top: 1px solid var(--lg-border);
}

/* Sidebar nav */
.sidebar-menu li > a {
  color: var(--lg-muted) !important;
  border-radius: 10px;
  font-weight: 600;
  transition: background 0.15s, color 0.15s;
}
.sidebar-menu li > a:hover {
  color: var(--lg-text) !important;
  background: var(--lg-tint) !important;
}
.sidebar-menu li > a i { background: transparent !important; color: inherit !important; }
.sidebar-menu li.current-page > a {
  color: var(--lg-accent-strong) !important;
  background: rgba(124, 92, 252, 0.12) !important;
  border: 1px solid rgba(124, 92, 252, 0.28);
  font-weight: 700;
}
.sidebar-menu li.current-page > a i { background: transparent !important; color: var(--lg-accent-strong) !important; }

/* ── Panels / cards ──────────────────────────────────────────────────────── */
.card {
  --bs-card-bg: #ffffff;
  --bs-card-border-color: var(--lg-border);
  --bs-card-cap-bg: #ffffff;
  --bs-card-color: var(--lg-text);
  background: var(--lg-panel) !important;
  border: 1px solid var(--lg-border) !important;
  border-radius: 14px;
  box-shadow: 0 1px 3px rgba(28, 24, 48, 0.04), 0 8px 24px -18px rgba(28, 24, 48, 0.18);
  color: var(--lg-text);
}
.card-header { border-bottom: 1px solid var(--lg-border) !important; background: transparent !important; }
.card-footer { border-top: 1px solid var(--lg-border) !important; background: transparent !important; }
.card-title { color: var(--lg-text); }

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn { border-radius: 10px; font-weight: 600; }
.btn-primary {
  background: linear-gradient(135deg, var(--lg-accent), var(--lg-accent-strong)) !important;
  border-color: transparent !important;
  color: #fff !important;
}
.btn-primary:hover:not(:disabled) { filter: brightness(1.05); }
.btn-light, .btn-outline-secondary, .btn-secondary {
  background: #ffffff !important;
  border: 1px solid var(--lg-border-strong) !important;
  color: var(--lg-text) !important;
}
.btn-light:hover, .btn-outline-secondary:hover { background: #f3f1fa !important; }
.btn-outline-primary {
  background: #ffffff !important;
  border: 1px solid rgba(124, 92, 252, 0.4) !important;
  color: var(--lg-accent-strong) !important;
}
.btn-outline-primary:hover:not(:disabled) {
  background: rgba(124, 92, 252, 0.1) !important;
  border-color: var(--lg-accent) !important;
  color: var(--lg-accent-strong) !important;
}
.btn-warning {
  background: #fef3c7 !important;
  border: 1px solid #fcd34d !important;
  color: #92400e !important;
}
.btn-outline-danger {
  background: #ffffff !important;
  border: 1px solid rgba(220, 38, 38, 0.4) !important;
  color: var(--lg-error) !important;
}
.btn-danger {
  background: var(--lg-error) !important;
  border: 1px solid var(--lg-error) !important;
  color: #fff !important;
}
.btn:active { transform: scale(0.98); }

/* ── Inputs ──────────────────────────────────────────────────────────────── */
.form-control, .form-select, textarea.form-control {
  background: #ffffff !important;
  border: 1px solid var(--lg-border-strong) !important;
  color: var(--lg-text) !important;
  border-radius: 10px;
}
.form-control:focus, .form-select:focus {
  border-color: var(--lg-accent) !important;
  box-shadow: 0 0 0 3px rgba(124, 92, 252, 0.15) !important;
}
.form-control::placeholder { color: #a29db5 !important; }
.form-check-input { background-color: #ffffff; border-color: var(--lg-border-strong); }
.form-check-input:checked { background-color: var(--lg-accent); border-color: var(--lg-accent); }

/* ── Badges / alerts / progress ──────────────────────────────────────────── */
.badge.bg-primary { background: var(--lg-accent) !important; }
.badge.bg-secondary { background: #eceaf5 !important; color: var(--lg-text); }
.badge.bg-success { background: #dcfce7 !important; color: #15803d; }
.badge.bg-warning { background: #fef3c7 !important; color: #92400e !important; }
.badge.bg-danger { background: #fee2e2 !important; color: #b91c1c; }
.badge.bg-info-subtle { background: rgba(124, 92, 252, 0.12) !important; }
.text-info { color: var(--lg-accent-strong) !important; }
.alert-warning {
  background: #fef9ec !important;
  border: 1px solid #fcd34d !important;
  color: #92400e !important;
}
.alert-danger {
  background: #fef2f2 !important;
  border: 1px solid #fca5a5 !important;
  color: #b91c1c !important;
}
.progress { background: #eceaf5 !important; }
.text-muted { color: var(--lg-muted) !important; }
.border-bottom, .border-top { border-color: var(--lg-border) !important; }
hr { border-color: var(--lg-border); opacity: 1; }
.table { --bs-table-color: var(--lg-text); }
.table-light { --bs-table-bg: #f3f1fa; }

/* ── Nav pills (video page tabs) ─────────────────────────────────────────── */
.nav-pills .nav-link {
  color: var(--lg-muted);
  border-radius: 10px;
  font-weight: 600;
}
.nav-pills .nav-link:hover { color: var(--lg-text); background: var(--lg-tint); }
.nav-pills .nav-link.active {
  background: rgba(124, 92, 252, 0.12);
  border: 1px solid rgba(124, 92, 252, 0.28);
  color: var(--lg-accent-strong);
}

/* ── Misc ────────────────────────────────────────────────────────────────── */
.spinner-border { color: var(--lg-accent); }
a { color: var(--lg-accent-strong); }
.text-danger { color: var(--lg-error) !important; }
.text-success { color: var(--lg-ok) !important; }
