/* ProfitLand's single dark signal-ledger theme. Loaded after each layout's
   structural stylesheet so account/admin/public surfaces share the same
   palette, controls, states, and focus treatment. */
:root,
[data-theme="dark"] {
  color-scheme: dark;
  --color-canvas: #0a0f12;
  --color-surface: #11191d;
  --color-surface-raised: #182329;
  --color-surface-inset: #0d1417;
  --color-text: #edf7f7;
  --color-text-muted: #9db0b4;
  --color-text-faint: #667b80;
  --color-border: #2a3a40;
  --color-border-strong: #3b5157;
  --color-signal: #5eead4;
  --color-signal-hover: #99f6e4;
  --color-signal-soft: rgba(94, 234, 212, .12);
  --color-status-healthy: #6ee7b7;
  --color-status-warning: #fbbf24;
  --color-status-danger: #fb7185;
  --color-status-neutral: #94a3b8;
  --color-status-healthy-soft: #123a32;
  --color-status-warning-soft: #3a2a10;
  --color-status-danger-soft: #3a1821;
  --color-status-neutral-soft: #25333a;
  --shadow-raised: 0 18px 45px rgba(0, 0, 0, .28);
  --shadow-card: 0 2px 10px rgba(0, 0, 0, .22);
  --ink: #edf7f7;
  --muted: #9db0b4;
  --line: #2a3a40;
  --soft: #0d1417;
  --brand: #5eead4;
  --brand-dark: #99f6e4;
  --good: #6ee7b7;
  --warn: #fbbf24;
  --bad: #fb7185;
  --shadow: 0 18px 45px rgba(0, 0, 0, .28);
}

html,
body {
  background: #0a0f12;
  color: #edf7f7;
}

body,
button,
input,
select,
textarea {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a {
  color: var(--brand);
}

:focus-visible {
  outline: 3px solid rgba(94, 234, 212, .32);
  outline-offset: 3px;
}

.site-header,
.admin-header {
  background: rgba(17, 25, 29, .97) !important;
  border-color: #2a3a40 !important;
}

.brand,
.admin-brand {
  color: #edf7f7 !important;
}

.brand span,
.admin-brand span {
  color: #5eead4;
}

.desktop-nav a,
.mobile-nav a,
.admin-top-nav a,
.admin-exit,
.admin-user,
.logout-form button,
.account-chip,
.page-head p,
.table-secondary,
.field-help,
.admin-footer,
.site-footer {
  color: #9db0b4;
}

.desktop-nav a:hover,
.desktop-nav a.active,
.mobile-nav a:hover,
.mobile-nav a.active,
.admin-top-nav a:hover,
.admin-top-nav a.active {
  background: rgba(94, 234, 212, .12) !important;
  color: #5eead4 !important;
}

.avatar,
.admin-avatar {
  background: #123a3b !important;
  color: #5eead4 !important;
}

.stat-card,
.panel,
.auth-card,
.notice,
.empty-state,
.security-note,
.secret-box {
  background: #11191d !important;
  border-color: #2a3a40 !important;
  box-shadow: var(--shadow) !important;
}

.panel__header,
.panel__footer,
th {
  background: #182329 !important;
  border-color: #2a3a40 !important;
  color: #9db0b4 !important;
}

th,
td,
tr {
  border-color: #2a3a40 !important;
}

.form-grid {
  align-items: start;
}

.field input,
.field select,
.filter-form input,
.filter-form select,
input:not([type="checkbox"]):not([type="radio"]),
select {
  min-height: 44px;
}

.check-control input[type="checkbox"],
.check-control input[type="radio"] {
  min-height: 0;
  width: 1rem;
  height: 1rem;
}

.field textarea {
  min-height: 110px;
  height: auto;
}

.field input,
.field select,
.field textarea,
.filter-form input,
.filter-form select,
input,
select,
textarea {
  background: #0d1417;
  border-color: #3b5157;
  color: #edf7f7;
}

.field input:focus,
.field select:focus,
.field textarea:focus,
input:focus,
select:focus,
textarea:focus {
  border-color: #5eead4;
  box-shadow: 0 0 0 3px rgba(94, 234, 212, .16);
  outline: 0;
}

.button--primary {
  background: #5eead4 !important;
  color: #06201d !important;
}

.button--primary:hover {
  background: #99f6e4 !important;
}

.button--secondary {
  background: #182329 !important;
  border-color: #2a3a40 !important;
  color: #edf7f7 !important;
}

.button--danger {
  background: #2a171e !important;
  border-color: #7f263d !important;
  color: #fda4af !important;
}

.notice--success,
.security-note {
  background: #0d2924 !important;
  border-color: #17634f !important;
  color: #a7f3d0 !important;
}

.notice--error,
.error-summary {
  background: #32151d !important;
  border-color: #7f263d !important;
  color: #fecdd3 !important;
}

.notice--info {
  background: #13243a !important;
  border-color: #31527c !important;
  color: #bfdbfe !important;
}

.badge {
  background: #25333a !important;
  color: #cbd5e1 !important;
}

.badge--success {
  background: #123a32 !important;
  color: #a7f3d0 !important;
}

.badge--warning {
  background: #3a2a10 !important;
  color: #fde68a !important;
}

.badge--danger {
  background: #3a1821 !important;
  color: #fecdd3 !important;
}

.badge--neutral {
  background: #25333a !important;
  color: #cbd5e1 !important;
}

.skip-link {
  background: #11191d !important;
  color: #edf7f7 !important;
}

.admin-logout button {
  background: transparent !important;
  border-color: #2a3a40 !important;
  color: #9db0b4 !important;
}

.admin-logout button:hover {
  background: #182329 !important;
  color: #edf7f7 !important;
}

.steps span {
  background: #123a3b !important;
  color: #5eead4 !important;
}

.secret-box {
  background: #302711 !important;
  border-color: #a16207 !important;
  color: #fef3c7 !important;
}

.secret-box code {
  background: #11191d !important;
  border-color: #713f12 !important;
  color: #fde68a !important;
}

.field-label--spaced {
  margin-top: .55rem;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
