/* ══ CABINET DARK THEME — aligns with main site palette ══
   Overrides cabinet.css variables and key visual rules.
   Load AFTER cabinet.css.
*/

/* ── Variables ── */
.cab-body {
  --primary:       #6c47ff;
  --primary-hover: #4726d9;
  --bg-color:      #0d0b22;
  --bg-card:       rgba(255,255,255,0.04);
  --text-main:     #f0eeff;
  --text-muted:    rgba(168,158,232,0.75);
  --border-color:  rgba(0,0,0,0.12);
  --radius:        22px;
  --green:         #f59e0b;
}

/* ── Base ── */
body.cab-body {
  background: #0D0D0D;
  color: var(--text-main);
}
body.cab-body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    radial-gradient(ellipse 70% 55% at 92% 4%,  rgba(245,158,11,0.08) 0%, transparent 60%),
    radial-gradient(ellipse 55% 45% at 4%  94%,  rgba(245,158,11,0.09)  0%, transparent 55%),
    radial-gradient(ellipse 50% 40% at 52% 52%,  rgba(0,0,0,0.04)  0%, transparent 60%);
  z-index: 0;
  animation: aurora-pulse 14s ease-in-out infinite;
}
@keyframes aurora-pulse { 0%, 100% { opacity: 0.7; } 50% { opacity: 1; } }


/* ── Auth box ── */
.cab-auth {
  position: relative;
  z-index: 1;
}
.cab-auth__box {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(0,0,0,0.14);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 20px 60px rgba(0,0,0,0.45);
  color: var(--text-main);
}
.cab-auth__logo { color: #a89ee8; }
.cab-auth__sub { color: rgba(212, 207, 255, 0.8); }
.cab-auth__box h2 { color: #fff; }
.cab-auth__box input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(0,0,0,0.12);
  color: #fff;
}
.cab-auth__box input::placeholder { color: rgba(168,158,232,0.5); }
.cab-auth__box input:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(0,0,0,0.10);
  background: rgba(0,0,0,0.06);
}
.cab-auth__hint { color: var(--text-muted); }
.cab-auth__hint a { color: #a89ee8; }

/* ── Topbar ── */
#cabTopBar,
.cab-topbar {
  background: rgba(9,8,30,0.82);
  border-bottom: 1px solid rgba(108,71,255,0.14);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  color: #f0eeff;
}
.cab-topbar__logo { color: var(--primary); }
.cab-topbar__dropdown {
  background: rgba(13,11,34,0.96);
  border: 1px solid rgba(0,0,0,0.10);
  backdrop-filter: blur(20px);
}
.cab-topbar__dropdown-title { color: #a89ee8; }
.cab-topbar__dropdown-link { color: #d4cfff; }
.cab-topbar__dropdown-link:hover { background: rgba(245,158,11,0.08); color: #fff; }
.cab-topbar__dropdown-divider { border-color: rgba(108,71,255,0.14); }
.cab-topbar__dropdown-link--cta { background: rgba(108,71,255,0.15); color: var(--primary); }

/* ── App layout ── */
.cab-app { position: relative; z-index: 1; }

/* ── Sidebar ── */
.cab-sidebar {
  background: rgba(255,255,255,0.03);
  border-right: 1px solid rgba(108,71,255,0.13);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.cab-sidebar__title { color: #f0eeff; }
.cab-sidebar__collapse { color: #a89ee8; }
.cab-sidebar__footer { border-top-color: rgba(108,71,255,0.14); }

/* nav items */
.cab-nav__item {
  color: #d4cfff;
  border-radius: 14px;
}
.cab-nav__item svg { color: #7c6fd4; }
.cab-nav__item:hover {
  background: rgba(245,158,11,0.08);
  color: #fff;
}
.cab-nav__item:hover svg { color: var(--primary); }
.cab-nav__item--active {
  background: linear-gradient(135deg, rgba(0,0,0,0.12), rgba(139,92,246,0.12));
  border: 1px solid rgba(108,71,255,0.24);
  color: #fff;
  box-shadow: 0 4px 18px rgba(0,0,0,0.10);
}
.cab-nav__item--active svg { color: var(--primary); }

/* sidebar footer buttons */
.cab-sidebar__home-btn {
  background: linear-gradient(135deg, #4726d9, #6c47ff);
  box-shadow: 0 4px 18px rgba(108,71,255,0.30);
}
.cab-sidebar__home-btn:hover { background: linear-gradient(135deg, #3d1fc8, #5c39ee); }
.cab-sidebar__logout-btn {
  border-color: rgba(239,68,68,0.22);
  background: rgba(239,68,68,0.05);
  color: #f87171;
}

/* ── Cards ── */
.prof-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(108,71,255,0.14);
  box-shadow: 0 8px 32px rgba(0,0,0,0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: var(--text-main);
}
.prof-card__header h3 { color: #f0eeff; }
.prof-card__action { color: #a89ee8; }
.prof-card__action:hover { color: var(--primary); text-decoration: none; }
.prof-card__link { color: #a89ee8; }

/* ── Profile hero card ── */
.prof-hero__avatar {
  border-color: rgba(108,71,255,0.35);
  background: rgba(108,71,255,0.1);
}
.prof-hero__info h2 { color: #050505; }
.prof-hero__tag { background: rgba(108,71,255,0.15); color: #c4b5fd; }
.prof-hero__edit { color: #7c6fd4; }
.prof-hero__edit:hover { color: var(--primary); }

/* name edit form */
.prof-name-form__input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(0,0,0,0.12);
  color: #fff;
}
.prof-name-form__input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(108,71,255,0.16); }
.prof-name-form__save { background: linear-gradient(135deg, #4726d9, #6c47ff); }
.prof-name-form__cancel { background: rgba(255,255,255,0.04); border-color: rgba(108,71,255,0.2); color: #d4cfff; }
.prof-name-form__cancel:hover { background: rgba(0,0,0,0.06); }

/* ── Data grid ── */
.prof-data__grid { }
.prof-data__item {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(245,158,11,0.08);
}
.prof-data__label { color: var(--text-muted); }
.prof-data__item strong { color: #f0eeff; }
.prof-admin__notice { background: rgba(245,158,11,0.1); border-color: rgba(245,158,11,0.4); color: #fde68a; }

/* ── Habit summary ── */
.prof-habit__hero {
  background: linear-gradient(135deg, rgba(245,158,11,0.08), rgba(139,92,246,0.08));
  border: 1px solid rgba(108,71,255,0.16);
}
.prof-habit__title { color: #f0eeff; }
.prof-habit__eyebrow { color: var(--text-muted); }
.prof-habit__meta { color: #a89ee8; }
.prof-habit__metric {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(245,158,11,0.08);
}
.prof-habit__metric span { color: var(--text-muted); }
.prof-habit__metric strong { color: #f0eeff; }
.prof-habit__footnote { background: rgba(245,158,11,0.07); border: 1px solid rgba(245,158,11,0.2); color: #fde68a; }

/* ── Tab header ── */
.cab-tab-header h2 { color: #f0eeff; }
.cab-sub { color: var(--text-muted); }

/* ── Main area ── */
.cab-main { gap: 20px; }

/* ── Barometer inner overrides ── */
.barometer-gauge__inner { background: rgba(9,8,30,0.92); }
.barometer-card__tooltip { background: #1a1740; color: #e0deff; box-shadow: 0 14px 30px rgba(0,0,0,0.55); }

/* ── Mobile ── */
@media (max-width: 720px) {
  .cab-app { flex-direction: column; }
  .cab-sidebar {
    width: 100%;
    padding: 16px;
    border-right: none;
    border-bottom: 1px solid rgba(108,71,255,0.14);
  }
  .cab-main { padding: 16px; }
}
