/* ═══════════════════════════════════════════════════════
   AstroKamya™ · Cosmic Dashboard · PREMIUM Design System
   v2.0 — Glassmorphism · Animations · Infographics
   ═══════════════════════════════════════════════════════ */
:root {
  --bg: #06060B;
  --bg-subtle: #0B0B14;
  --surface: rgba(16,16,28,0.65);
  --surface-solid: #10101C;
  --surface-hover: rgba(26,26,42,0.7);
  --glass: rgba(16,16,28,0.45);
  --glass-border: rgba(255,255,255,0.06);
  --border: rgba(255,255,255,0.05);
  --border-glow: rgba(224,165,38,0.15);
  --gold: #E0A526;
  --gold-bright: #FFD700;
  --gold-dim: rgba(224,165,38,0.10);
  --gold-glow: rgba(224,165,38,0.25);
  --rose: #FC5C7C;
  --rose-dim: rgba(252,92,124,0.10);
  --violet: #7C5CFC;
  --violet-bright: #A78BFA;
  --violet-dim: rgba(124,92,252,0.10);
  --teal: #4CDBC4;
  --teal-dim: rgba(76,219,196,0.10);
  --text: #F0F0F5;
  --text-sec: rgba(240,240,245,0.65);
  --text-muted: rgba(240,240,245,0.35);
  --success: #22C55E;
  --danger: #EF4444;
  --warning: #F59E0B;
  --sidebar-w: 250px;
  --topbar-h: 60px;
  --radius: 16px;
  --radius-sm: 10px;
  --radius-xs: 6px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}

body {
  font-family:'Outfit','Inter',-apple-system,sans-serif;
  background:var(--bg);
  color:var(--text);
  min-height:100vh;
  display:flex;
  overflow-x:hidden;
}

/* Cosmic ambient background */
body::before {
  content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(ellipse 70% 50% at 20% 10%, rgba(124,92,252,0.06) 0%, transparent 60%),
    radial-gradient(ellipse 60% 40% at 80% 85%, rgba(224,165,38,0.04) 0%, transparent 60%),
    radial-gradient(ellipse 50% 50% at 50% 50%, rgba(252,92,124,0.02) 0%, transparent 70%);
}

/* ═══════ SCROLLBAR ═══════ */
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.08); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:rgba(255,255,255,0.15); }

/* ═══════ VIEW TRANSITIONS API (Chrome 111+) ═══════ */
::view-transition-old(root) {
  animation: cfx-fade-out 0.25s ease-in forwards,
             cfx-slide-out 0.25s ease-in forwards;
}
::view-transition-new(root) {
  animation: cfx-fade-in 0.35s ease-out forwards,
             cfx-slide-in 0.35s ease-out forwards;
}
@keyframes cfx-fade-out { to { opacity:0; } }
@keyframes cfx-fade-in { from { opacity:0; } to { opacity:1; } }
@keyframes cfx-slide-out { to { transform:translateY(-8px) scale(0.99); } }
@keyframes cfx-slide-in { from { transform:translateY(12px) scale(0.99); } to { transform:translateY(0) scale(1); } }

/* ═══════ SCROLL-TRIGGERED REVEAL ANIMATIONS ═══════ */
.cfx-reveal {
  opacity:0;
  transform:translateY(20px) scale(0.97);
  transition:opacity 0.5s cubic-bezier(.16,1,.3,1),
             transform 0.5s cubic-bezier(.16,1,.3,1);
  will-change:opacity,transform;
}
.cfx-reveal.cfx-revealed {
  opacity:1;
  transform:translateY(0) scale(1);
}
/* Stagger children */
.cfx-reveal:nth-child(2) { transition-delay:0.06s; }
.cfx-reveal:nth-child(3) { transition-delay:0.12s; }
.cfx-reveal:nth-child(4) { transition-delay:0.18s; }
.cfx-reveal:nth-child(5) { transition-delay:0.24s; }
.cfx-reveal:nth-child(6) { transition-delay:0.30s; }

/* ═══════ Z-INDEX LAYERING FOR CANVAS ═══════ */
.sidebar { z-index:10; }
.dash-main { z-index:5; position:relative; }
.dash-topbar { z-index:20; }

/* ═══════ ANIMATIONS ═══════ */
@keyframes fadeUp { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeIn { from{opacity:0} to{opacity:1} }
@keyframes slideInLeft { from{opacity:0;transform:translateX(-16px)} to{opacity:1;transform:translateX(0)} }
@keyframes pulseGlow { 0%,100%{box-shadow:0 0 12px rgba(224,165,38,0.15)} 50%{box-shadow:0 0 24px rgba(224,165,38,0.3)} }
@keyframes shimmer { 0%{background-position:-200% 0} 100%{background-position:200% 0} }
@keyframes gradientShift { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-4px)} }
@keyframes spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes ringPulse { 0%,100%{stroke-opacity:1} 50%{stroke-opacity:0.6} }
@keyframes dotBlink { 0%,100%{opacity:1} 50%{opacity:0.3} }

/* ═══════ SIDEBAR INFOGRAPHIC ═══════ */
.sidebar {
  position:fixed; left:0; top:0; bottom:0;
  width:var(--sidebar-w);
  background:rgba(8,8,16,0.95);
  backdrop-filter:blur(30px);
  border-right:1px solid var(--glass-border);
  display:flex; flex-direction:column;
  z-index:100; transition:transform 0.35s cubic-bezier(.4,0,.2,1);
}
.sidebar::before {
  content:''; position:absolute; top:0; right:0; bottom:0; width:1px;
  background:linear-gradient(180deg, transparent, rgba(224,165,38,0.1) 20%, rgba(124,92,252,0.1) 50%, rgba(76,219,196,0.08) 80%, transparent);
}
.sidebar::after {
  content:''; position:absolute; top:0; left:0; right:0; height:120px;
  background:radial-gradient(ellipse at 50% -20%, rgba(124,92,252,0.06) 0%, transparent 70%);
  pointer-events:none;
}

/* Logo */
.sb-logo {
  display:flex; align-items:center; gap:10px;
  padding:16px 16px 12px; position:relative;
}
.sb-logo-mandala {
  width:36px; height:36px; flex-shrink:0;
  filter:drop-shadow(0 0 6px rgba(224,165,38,0.2));
  transition:filter 0.3s ease;
}
.sb-logo:hover .sb-logo-mandala {
  filter:drop-shadow(0 0 12px rgba(224,165,38,0.4));
}
.sb-logo-text { display:flex; align-items:baseline; }
.sb-logo-astro { font-size:17px; font-weight:800; color:#FFFFFF; }
.sb-logo-kamya { font-size:17px; font-weight:800; color:#F7C948; }
.sb-tm { font-size:7px; color:var(--text-muted); margin-left:1px; vertical-align:super; }

/* Mini Profile */
.sb-profile {
  display:flex; align-items:center; gap:8px;
  margin:0 12px 6px; padding:10px 12px;
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); position:relative; overflow:hidden;
}
.sb-profile::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg, transparent, rgba(224,165,38,0.1), transparent); }
.sb-profile-avatar {
  width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--gold), var(--violet));
  font-size:12px; font-weight:900; color:var(--bg); flex-shrink:0;
}
.sb-profile-info { flex:1; display:flex; flex-direction:column; gap:1px; }
.sb-profile-name { font-size:11px; font-weight:800; }
.sb-profile-meta { font-size:8px; color:var(--text-muted); font-weight:600; }
.sb-profile-ring { position:relative; width:28px; height:28px; flex-shrink:0; }
.sb-profile-ring svg { width:100%; height:100%; transform:rotate(-90deg); }
.sb-profile-pct { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:7px; font-weight:900; color:var(--gold); }

/* Nav */
.sb-nav { flex:1; overflow-y:auto; padding:6px 10px 8px; }
.sb-nav-label { font-size:8px; font-weight:800; letter-spacing:1.2px; color:var(--text-muted); padding:10px 14px 4px; opacity:0.6; }
.sb-link {
  display:flex; align-items:center; gap:10px;
  padding:9px 14px; border-radius:var(--radius-sm);
  color:var(--text-sec); text-decoration:none;
  font-size:12px; font-weight:500;
  transition:all 0.2s; margin-bottom:1px;
  position:relative;
}
.sb-link:hover { background:rgba(255,255,255,0.04); color:var(--text); }
.sb-link.active {
  background:linear-gradient(135deg, rgba(224,165,38,0.08), rgba(124,92,252,0.06));
  color:var(--gold); font-weight:700;
  border:1px solid rgba(224,165,38,0.1);
}
.sb-link.active::before {
  content:''; position:absolute; left:-10px; top:50%; transform:translateY(-50%);
  width:3px; height:18px; border-radius:0 3px 3px 0;
  background:var(--gold); box-shadow:0 0 8px var(--gold-glow);
}
.sb-icon { font-size:14px; width:20px; text-align:center; }
.sb-label { flex:1; }

/* Badges */
.sb-badge {
  font-size:8px; font-weight:800; padding:2px 6px; border-radius:10px;
  background:rgba(224,165,38,0.1); color:var(--gold); flex-shrink:0;
}
.sb-badge.live {
  width:7px; height:7px; padding:0; border-radius:50%;
  background:var(--gold); animation:pulse 2s infinite;
  box-shadow:0 0 6px rgba(224,165,38,0.4);
}
.sb-badge.new {
  background:rgba(76,219,196,0.1); color:var(--teal);
  border:1px solid rgba(76,219,196,0.08);
}

.sb-divider { height:1px; background:var(--glass-border); margin:6px 14px; }

/* Quick Stats */
.sb-quick-stats {
  display:flex; align-items:center; justify-content:center;
  margin:0 12px 6px; padding:10px 8px;
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm);
}
.sb-qs-item { flex:1; text-align:center; }
.sb-qs-val { display:block; font-size:12px; font-weight:900; background:linear-gradient(135deg, var(--text), var(--gold)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.sb-qs-label { display:block; font-size:7px; color:var(--text-muted); font-weight:600; margin-top:1px; }
.sb-qs-divider { width:1px; height:22px; background:var(--glass-border); flex-shrink:0; }

/* Plan Badge */
.sb-plan {
  padding:8px 12px 14px; border-top:1px solid var(--glass-border);
}
.sb-plan-card {
  display:flex; flex-direction:column; gap:3px;
  padding:10px 12px; border-radius:var(--radius-sm);
  background:linear-gradient(135deg, rgba(224,165,38,0.06), rgba(124,92,252,0.04));
  border:1px solid rgba(224,165,38,0.1);
  position:relative; overflow:hidden;
}
.sb-plan-card::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.03) 50%, transparent 60%);
  background-size:200% 100%; animation:shimmer 4s linear infinite;
}
.sb-plan-badge {
  font-size:9px; font-weight:800; letter-spacing:0.8px;
  text-align:center; color:var(--gold);
}
.sb-plan-sub { font-size:8px; color:var(--text-muted); text-align:center; letter-spacing:0.5px; }

/* ═══════ MAIN ═══════ */
.dash-main { margin-left:var(--sidebar-w); flex:1; min-height:100vh; position:relative; z-index:1; }

/* ═══════ TOPBAR ═══════ */
.dash-topbar {
  position:sticky; top:0; z-index:50;
  height:var(--topbar-h); display:flex; align-items:center;
  padding:0 28px;
  background:rgba(6,6,11,0.7);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--glass-border);
}
.dash-menu-btn { display:none; background:none; border:none; color:var(--text); font-size:20px; cursor:pointer; margin-right:14px; }
.dash-greeting {
  font-size:16px; font-weight:700; flex:1;
  background:linear-gradient(90deg, var(--text), var(--gold-bright));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.dash-topbar-right { display:flex; align-items:center; gap:14px; }

/* Notification bell & dropdown */
.dash-notif-wrap { position:relative; }
.dash-notif { position:relative; font-size:18px; cursor:pointer; transition:transform 0.2s; }
.dash-notif:hover { transform:scale(1.1); }
.dash-notif-badge {
  position:absolute; top:-5px; right:-7px;
  background:var(--rose); color:#fff; font-size:8px;
  width:15px; height:15px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; border:2px solid var(--bg);
  animation:dotBlink 2s ease-in-out infinite;
}
.dash-notif-dropdown {
  position:absolute; top:calc(100% + 10px); right:-40px; width:320px;
  background:var(--surface); backdrop-filter:blur(20px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  box-shadow:0 12px 40px rgba(0,0,0,0.5); z-index:999;
  display:none; overflow:hidden;
}
.dash-notif-dropdown.open { display:block; animation:fadeUp 0.25s ease; }
.dash-dd-title {
  padding:12px 16px; font-size:12px; font-weight:800; color:var(--text);
  border-bottom:1px solid var(--glass-border); letter-spacing:0.3px;
}
.dash-dd-item {
  display:flex; align-items:flex-start; gap:10px; padding:12px 16px;
  border-bottom:1px solid rgba(255,255,255,0.03); transition:background 0.15s;
  cursor:pointer;
}
.dash-dd-item:hover { background:rgba(255,255,255,0.03); }
.dash-dd-item:last-of-type { border-bottom:none; }
.dash-dd-dot {
  width:7px; height:7px; border-radius:50%; margin-top:5px; flex-shrink:0;
  background:var(--text-muted); opacity:0.3;
}
.dash-dd-item.unread .dash-dd-dot { background:var(--gold); opacity:1; animation:pulseGlow 2s ease-in-out infinite; }
.dash-dd-item strong { font-size:11px; color:var(--text); font-weight:700; }
.dash-dd-item p { font-size:10px; color:var(--text-muted); line-height:1.4; margin-top:2px; }
.dash-dd-time { font-size:9px; color:var(--text-muted); opacity:0.6; margin-top:3px; display:inline-block; }
.dash-dd-footer {
  padding:10px 16px; text-align:center; font-size:10px; font-weight:700;
  color:var(--gold); cursor:pointer; border-top:1px solid var(--glass-border);
  transition:background 0.15s;
}
.dash-dd-footer:hover { background:rgba(224,165,38,0.04); }

/* Profile avatar & dropdown */
.dash-profile-wrap { position:relative; }
.dash-avatar {
  width:34px; height:34px; border-radius:50%;
  background:linear-gradient(135deg, var(--gold-dim), var(--violet-dim));
  border:2px solid rgba(224,165,38,0.2);
  display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:800; cursor:pointer;
  transition:all 0.2s;
}
.dash-avatar:hover { border-color:var(--gold); box-shadow:0 0 12px var(--gold-glow); }

.dash-profile-dropdown {
  position:absolute; top:calc(100% + 10px); right:0; width:260px;
  background:var(--surface); backdrop-filter:blur(20px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  box-shadow:0 12px 40px rgba(0,0,0,0.5); z-index:999;
  display:none; overflow:hidden;
}
.dash-profile-dropdown.open { display:block; animation:fadeUp 0.25s ease; }

.dash-pd-user {
  display:flex; align-items:center; gap:12px; padding:16px;
  border-bottom:1px solid var(--glass-border);
}
.dash-pd-avatar {
  width:38px; height:38px; border-radius:50%;
  background:linear-gradient(135deg, var(--gold), var(--violet));
  display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:900; color:#fff; flex-shrink:0;
}
.dash-pd-name { font-size:13px; font-weight:800; color:var(--text); }
.dash-pd-email { font-size:10px; color:var(--text-muted); margin-top:1px; }

.dash-pd-plan {
  padding:8px 16px; font-size:10px; font-weight:700; text-align:center;
  background:linear-gradient(135deg, rgba(224,165,38,0.06), rgba(124,92,252,0.04));
  color:var(--gold); border-bottom:1px solid var(--glass-border);
}

.dash-pd-menu { padding:6px 0; }
.dash-pd-item {
  padding:10px 16px; font-size:12px; color:var(--text-sec);
  cursor:pointer; transition:all 0.15s; font-weight:500;
}
.dash-pd-item:hover { background:rgba(255,255,255,0.03); color:var(--text); padding-left:20px; }

.dash-pd-logout {
  padding:12px 16px; font-size:12px; color:var(--danger);
  cursor:pointer; transition:all 0.15s; font-weight:700;
  border-top:1px solid var(--glass-border); text-align:center;
}
.dash-pd-logout:hover { background:rgba(239,68,68,0.06); }

/* ═══════ PANELS ═══════ */
.dash-panel { display:none; padding:24px 28px 40px; }
.dash-panel.active { display:block; }
.da-panel-title {
  font-size:22px; font-weight:800; margin-bottom:4px;
  background:linear-gradient(90deg, var(--text), var(--gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.da-panel-sub { font-size:12px; color:var(--text-muted); margin-bottom:24px; }
.da-panel-sub strong { color:var(--text-sec); }

/* ═══════ SECTION TITLE ═══════ */
.da-section-title {
  font-size:10px; font-weight:800; color:var(--text-muted);
  letter-spacing:2px; text-transform:uppercase; margin-bottom:14px;
  display:flex; align-items:center; gap:8px;
}
.da-section-title::after {
  content:''; flex:1; height:1px;
  background:linear-gradient(90deg, var(--glass-border), transparent);
}

/* ═══════ COSMIC ALERT ═══════ */
.da-alert {
  display:flex; align-items:flex-start; gap:12px;
  background:linear-gradient(135deg, rgba(224,165,38,0.04), rgba(252,92,124,0.02));
  border:1px solid rgba(224,165,38,0.08);
  border-radius:var(--radius); padding:14px 18px; margin-bottom:22px;
  backdrop-filter:blur(8px); position:relative; overflow:hidden;
}
.da-alert::before {
  content:''; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(180deg, var(--gold), var(--rose));
}
.da-alert-dot { width:6px; height:6px; border-radius:50%; background:var(--warning); margin-top:6px; flex-shrink:0; animation:dotBlink 1.5s infinite; }
.da-alert-body { font-size:12.5px; color:var(--text-sec); line-height:1.6; }
.da-alert-body strong { color:var(--gold); }

/* ═══════ SUMMARY CARD ═══════ */
.da-summary {
  display:flex; gap:24px; align-items:center;
  background:var(--surface); backdrop-filter:blur(20px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:22px 26px; margin-bottom:24px;
  position:relative; overflow:hidden;
}
.da-summary::before {
  content:''; position:absolute; top:-60px; right:-60px;
  width:200px; height:200px; border-radius:50%;
  background:radial-gradient(circle, rgba(224,165,38,0.04) 0%, transparent 70%);
  pointer-events:none;
}
.da-summary-left { flex:1; position:relative; z-index:1; }
.da-user-signs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.da-sign-chip {
  padding:5px 12px; border-radius:20px; font-size:11px; font-weight:700;
  backdrop-filter:blur(4px);
}
.da-sign-chip.sun { background:var(--gold-dim); color:var(--gold); border:1px solid rgba(224,165,38,0.12); }
.da-sign-chip.moon { background:var(--violet-dim); color:var(--violet-bright); border:1px solid rgba(124,92,252,0.12); }
.da-sign-chip.asc { background:var(--teal-dim); color:var(--teal); border:1px solid rgba(76,219,196,0.12); }
.da-user-meta { display:flex; flex-wrap:wrap; gap:14px; font-size:11px; color:var(--text-muted); margin-bottom:12px; }
.da-dasha-now { font-size:12px; color:var(--text-sec); }
.da-dasha-now strong { color:var(--text); font-weight:700; }
.da-dasha-date {
  font-size:10px; color:var(--text-muted);
  margin-left:8px; padding:2px 8px; border-radius:4px;
  background:var(--glass); border:1px solid var(--glass-border);
}

/* ═══════ PLANET SCORE VISUAL ═══════ */
.da-summary-right { text-align:center; position:relative; z-index:1; }
.da-planet-wrap {
  position:relative; width:130px; height:130px;
}

/* Atmospheric glow */
.da-planet-atmosphere {
  position:absolute; inset:-20px; border-radius:50%;
  background:radial-gradient(circle,
    rgba(76,219,196,0.25) 20%,
    rgba(124,92,252,0.15) 40%,
    rgba(224,165,38,0.06) 55%,
    transparent 70%
  );
  animation:planetPulse 4s ease-in-out infinite;
}
@keyframes planetPulse {
  0%,100% { transform:scale(1); opacity:0.7; }
  50% { transform:scale(1.1); opacity:1; }
}

/* Planet body — lighting stays FIXED (highlight top-left, shadow bottom-right) */
.da-planet-body {
  position:absolute; inset:10px; border-radius:50%;
  background:
    radial-gradient(circle at 30% 30%, rgba(255,255,255,0.15), transparent 40%),
    radial-gradient(circle at 75% 75%, rgba(0,0,0,0.5), transparent 50%),
    radial-gradient(ellipse at 45% 40%, #2d5a8a, #163554 50%, #0c2240 70%, #071428);
  box-shadow:
    inset -10px -10px 25px rgba(0,0,0,0.7),
    inset 6px 6px 18px rgba(76,219,196,0.15),
    0 0 20px rgba(76,219,196,0.15),
    0 0 40px rgba(124,92,252,0.1),
    0 0 80px rgba(76,219,196,0.05);
  overflow:hidden;
}

/* Surface texture — THIS rotates to simulate planet spin */
.da-planet-surface {
  position:absolute; inset:-50%; width:200%; height:200%;
  border-radius:50%;
  background:
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 10px,
      rgba(76,219,196,0.07) 10px,
      rgba(76,219,196,0.07) 12px
    ),
    repeating-linear-gradient(
      88deg,
      transparent,
      transparent 18px,
      rgba(224,165,38,0.05) 18px,
      rgba(224,165,38,0.05) 20px
    ),
    repeating-linear-gradient(
      92deg,
      transparent,
      transparent 30px,
      rgba(124,92,252,0.04) 30px,
      rgba(124,92,252,0.04) 33px
    );
  animation:surfaceRotate 30s linear infinite;
}
@keyframes surfaceRotate {
  from { transform:translateX(0); }
  to   { transform:translateX(-50%); }
}

/* Orbital ring */
.da-planet-ring {
  position:absolute; top:50%; left:50%;
  width:140px; height:22px;
  border:2px solid rgba(224,165,38,0.25);
  border-radius:50%;
  transform:translate(-50%,-50%) rotateX(70deg) rotateZ(-15deg);
  box-shadow:0 0 12px rgba(224,165,38,0.1), inset 0 0 6px rgba(224,165,38,0.05);
  animation:ringShimmer 8s ease-in-out infinite;
}
@keyframes ringShimmer {
  0%,100% { border-color:rgba(224,165,38,0.25); }
  50% { border-color:rgba(224,165,38,0.4); }
}

/* Score number overlay */
.da-planet-score-overlay {
  position:absolute; inset:10px;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  z-index:2;
}
.da-planet-score-num {
  font-size:34px; font-weight:900;
  color:rgba(255,255,255,0.95);
  text-shadow:0 0 20px rgba(76,219,196,0.5), 0 0 40px rgba(124,92,252,0.25);
  line-height:1;
}
.da-planet-score-pct {
  font-size:10px; font-weight:600;
  color:rgba(240,240,245,0.4); letter-spacing:1px;
  margin-top:2px;
}

/* ═══════ SCORE ANALYSIS PANEL ═══════ */
.da-score-analysis {
  background:var(--surface); backdrop-filter:blur(16px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:18px 22px; margin-bottom:24px;
}

.da-sa-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:14px;
}
.da-sa-title {
  display:flex; align-items:center; gap:8px;
  font-size:13px; font-weight:700; color:var(--text);
  letter-spacing:0.3px;
}
.da-sa-icon { font-size:16px; }
.da-sa-status {
  font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase;
  padding:4px 12px; border-radius:12px;
}
.da-sa-status.excellent { background:rgba(34,197,94,0.1); color:#22C55E; border:1px solid rgba(34,197,94,0.15); }
.da-sa-status.favorable { background:rgba(76,219,196,0.1); color:var(--teal); border:1px solid rgba(76,219,196,0.15); }
.da-sa-status.moderate { background:rgba(224,165,38,0.1); color:var(--gold); border:1px solid rgba(224,165,38,0.15); }
.da-sa-status.challenging { background:rgba(252,92,124,0.1); color:var(--rose); border:1px solid rgba(252,92,124,0.15); }

/* Score Bar */
.da-sa-bar-wrap { margin-bottom:16px; }
.da-sa-bar {
  position:relative; height:6px; border-radius:3px;
  background:rgba(255,255,255,0.04);
  overflow:visible;
}
.da-sa-bar-fill {
  height:100%; border-radius:3px;
  background:linear-gradient(90deg, #EF4444 0%, #F59E0B 40%, #4CDBC4 70%, #22C55E 100%);
  transition:width 1.5s cubic-bezier(.4,0,.2,1);
}
.da-sa-bar-marker {
  position:absolute; top:-3px;
  width:12px; height:12px; border-radius:50%;
  background:#fff; border:2px solid #22C55E;
  transform:translateX(-50%);
  box-shadow:0 0 8px rgba(34,197,94,0.3);
  transition:left 1.5s cubic-bezier(.4,0,.2,1);
}
.da-sa-bar-labels {
  display:flex; justify-content:space-between;
  margin-top:6px;
}
.da-sa-zone {
  font-size:8px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;
}
.da-sa-zone.challenging { color:rgba(239,68,68,0.5); }
.da-sa-zone.moderate { color:rgba(245,158,11,0.5); }
.da-sa-zone.favorable { color:rgba(76,219,196,0.5); }
.da-sa-zone.excellent { color:rgba(34,197,94,0.5); }

/* Dimension Mini Scores */
.da-sa-dimensions {
  display:grid; grid-template-columns:repeat(3,1fr); gap:8px 16px;
  margin-bottom:16px;
}
.da-sa-dim {
  display:flex; align-items:center; gap:8px;
  padding:6px 0;
}
.da-sa-dim-icon { font-size:14px; flex-shrink:0; width:20px; text-align:center; }
.da-sa-dim-info { flex:1; min-width:0; }
.da-sa-dim-label { font-size:10px; font-weight:600; color:var(--text-sec); margin-bottom:3px; }
.da-sa-dim-bar {
  height:4px; border-radius:2px; background:rgba(255,255,255,0.04);
  overflow:hidden;
}
.da-sa-dim-fill {
  height:100%; border-radius:2px;
  transition:width 1.2s cubic-bezier(.4,0,.2,1) 0.3s;
}
.da-sa-dim-fill.career { background:linear-gradient(90deg, #E0A526, #F59E0B); }
.da-sa-dim-fill.love { background:linear-gradient(90deg, #FC5C7C, #F06292); }
.da-sa-dim-fill.health { background:linear-gradient(90deg, #22C55E, #4CDBC4); }
.da-sa-dim-fill.finance { background:linear-gradient(90deg, #E0A526, #FFD700); }
.da-sa-dim-fill.spiritual { background:linear-gradient(90deg, #7C5CFC, #A78BFA); }
.da-sa-dim-fill.social { background:linear-gradient(90deg, #4CDBC4, #67E8F9); }
.da-sa-dim-val {
  font-size:11px; font-weight:800; color:var(--text);
  min-width:30px; text-align:right;
}

/* Insight Cards */
.da-sa-insights {
  display:grid; grid-template-columns:1fr 1fr; gap:10px;
}
.da-sa-insight-card {
  background:rgba(255,255,255,0.02);
  border:1px solid var(--glass-border);
  border-radius:10px; padding:12px 14px;
}
.da-sa-ic-head {
  font-size:11px; font-weight:700; color:var(--text);
  display:flex; align-items:center; gap:6px;
  margin-bottom:8px;
}
.da-sa-ic-body {
  font-size:11px; line-height:1.6; color:var(--text-sec);
}
.da-sa-ic-body strong { color:var(--text); font-weight:700; }
.da-sa-ic-body em { color:var(--gold); font-style:normal; font-weight:600; }
.da-sa-caution { color:var(--rose); font-weight:600; }

/* ═══════ QUICK ACTIONS ═══════ */
.da-quick-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:28px; }
.da-quick-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:18px 16px;
  cursor:pointer; transition:all 0.3s cubic-bezier(.4,0,.2,1);
  text-align:left; display:flex; flex-direction:column; gap:10px;
  position:relative; overflow:hidden;
}
.da-quick-card::before {
  content:''; position:absolute; inset:0;
  border-radius:var(--radius);
  background:linear-gradient(135deg, transparent, rgba(255,255,255,0.02));
  opacity:0; transition:opacity 0.3s;
}
.da-quick-card:hover {
  border-color:var(--border-glow);
  transform:translateY(-3px);
  box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 20px rgba(224,165,38,0.05);
}
.da-quick-card:hover::before { opacity:1; }
.da-qc-icon {
  width:38px; height:38px; border-radius:var(--radius-sm);
  display:flex; align-items:center; justify-content:center;
  font-size:18px; position:relative;
}
.da-qc-title { font-size:13px; font-weight:700; color:var(--text); }
.da-qc-sub { font-size:10px; color:var(--text-muted); letter-spacing:0.3px; }

/* ═══════ TODAY'S INSIGHTS ═══════ */
.da-insights { display:flex; flex-direction:column; gap:8px; margin-bottom:28px; }
.da-insight-card {
  display:flex; align-items:center; gap:14px;
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:14px 16px;
  transition:all 0.25s; position:relative; overflow:hidden;
}
.da-insight-card::before {
  content:''; position:absolute; left:0; top:0; bottom:0; width:2px;
  opacity:0; transition:opacity 0.25s;
}
.da-insight-card:nth-child(1)::before { background:var(--gold); }
.da-insight-card:nth-child(2)::before { background:var(--rose); }
.da-insight-card:nth-child(3)::before { background:var(--teal); }
.da-insight-card:nth-child(4)::before { background:var(--violet); }
.da-insight-card:hover { border-color:var(--border-glow); }
.da-insight-card:hover::before { opacity:1; }
.da-ic-icon { font-size:22px; flex-shrink:0; }
.da-ic-body { flex:1; }
.da-ic-title { font-size:13px; font-weight:700; color:var(--text); margin-bottom:3px; }
.da-ic-desc { font-size:11px; color:var(--text-muted); line-height:1.5; }
.da-ic-badge {
  font-size:8px; font-weight:800; letter-spacing:0.8px;
  padding:4px 8px; border-radius:4px; flex-shrink:0;
}
.da-ic-badge.high { background:rgba(34,197,94,0.1); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.da-ic-badge.new { background:var(--rose-dim); color:var(--rose); border:1px solid rgba(252,92,124,0.1); }
.da-ic-badge.ai { background:var(--teal-dim); color:var(--teal); border:1px solid rgba(76,219,196,0.1); }
.da-ic-badge { background:var(--violet-dim); color:var(--violet-bright); border:1px solid rgba(124,92,252,0.1); }

/* ═══════ PLANET STRIP ═══════ */
.da-planet-strip {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(140px,1fr));
  gap:8px; margin-bottom:24px;
}
.da-planet {
  display:flex; align-items:center; gap:8px;
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:10px 12px;
  transition:all 0.2s;
}
.da-planet:hover { border-color:var(--border-glow); transform:translateY(-1px); }
.da-p-em { font-size:16px; }
.da-p-name { font-size:11px; font-weight:700; }
.da-p-sign { font-size:9px; color:var(--text-muted); font-weight:500; }

/* ═══════ CHART PANEL ═══════ */
.da-chart-tabs { display:flex; gap:6px; margin-bottom:18px; }
.da-tab {
  padding:7px 16px; border-radius:20px; border:1px solid var(--glass-border);
  background:var(--glass); color:var(--text-sec); font-size:12px;
  font-weight:600; cursor:pointer; transition:all 0.2s;
  backdrop-filter:blur(4px);
}
.da-tab:hover { background:rgba(255,255,255,0.04); }
.da-tab.active { background:var(--gold-dim); color:var(--gold); border-color:rgba(224,165,38,0.15); }

/* ═══ TWO-COLUMN BIRTH CHART LAYOUT ═══ */
.bc-layout {
  display:grid; grid-template-columns:1fr 380px; gap:24px;
  align-items:stretch; margin-bottom:28px;
}
.bc-left { position:relative; display:flex; flex-direction:column; }
.bc-right {
  display:flex; flex-direction:column; gap:10px;
}
.bc-right > .bc-info-card,
.bc-right > .bc-asc-badge {
  flex:1; display:flex; flex-direction:column; min-height:0;
  overflow:hidden;
}
.bc-right > .bc-info-card .bc-strength-list,
.bc-right > .bc-info-card .bc-element-wrap,
.bc-right > .bc-info-card .bc-house-spots {
  flex:1; overflow-y:auto;
}
/* Scrollbar styling for right cards */
.bc-right > .bc-info-card .bc-strength-list::-webkit-scrollbar,
.bc-right > .bc-info-card .bc-house-spots::-webkit-scrollbar { width:2px; }
.bc-right > .bc-info-card .bc-strength-list::-webkit-scrollbar-thumb,
.bc-right > .bc-info-card .bc-house-spots::-webkit-scrollbar-thumb { background:rgba(124,92,252,0.15); border-radius:2px; }

/* Kundali wrapper with SVG background */
.bc-kundali-wrap {
  position:relative; display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}

/* SVG Zodiac Ring */
.bc-zodiac-ring {
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:110%; max-width:500px; aspect-ratio:1;
  pointer-events:none; z-index:0; opacity:0.8;
}
@keyframes rotateRingCW { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes rotateRingCCW { from{transform:rotate(0deg)} to{transform:rotate(-360deg)} }
@keyframes planetPulse { 0%,100%{r:3;opacity:0.8} 50%{r:5;opacity:1} }
@keyframes mandalaRotate1 { from{transform-origin:center;transform:rotate(0deg)} to{transform-origin:center;transform:rotate(360deg)} }
@keyframes mandalaRotate2 { from{transform-origin:center;transform:rotate(0deg)} to{transform-origin:center;transform:rotate(-360deg)} }

.bc-ring-outer { animation:rotateRingCW 60s linear infinite; transform-origin:center; }
.bc-ring-inner { animation:rotateRingCCW 45s linear infinite; transform-origin:center; }
.bc-planet-dot { animation:planetPulse 2.5s ease-in-out infinite; }
.bc-planet-dot:nth-child(odd) { animation-delay:0.5s; }
.bc-planet-dot:nth-child(even) { animation-delay:1.2s; }

.bc-zodiac-markers text {
  font-family:'Outfit',sans-serif;
  animation:float 4s ease-in-out infinite;
}
.bc-zodiac-markers text:nth-child(even) { animation-delay:1s; }
.bc-zodiac-markers text:nth-child(3n) { animation-delay:2s; }

/* Center Mandala rings */
.bc-center-mandala {
  position:absolute; width:80px; height:80px;
  top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:0; pointer-events:none;
}
.bc-mandala-ring { animation:mandalaRotate1 20s linear infinite; transform-origin:40px 40px; }
.bc-mandala-ring-2 { animation:mandalaRotate2 15s linear infinite; transform-origin:40px 40px; }
.bc-mandala-ring-3 { animation:mandalaRotate1 10s linear infinite; transform-origin:40px 40px; }

/* Kundali grid overlay */
.bc-kundali-wrap .da-kundali-grid {
  position:relative; z-index:2; width:100%;
}

.da-kundali-grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:5px;
  margin-bottom:0;
}
.da-house {
  background:var(--surface); backdrop-filter:blur(8px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:14px 10px; text-align:center;
  min-height:80px; position:relative; display:flex;
  flex-direction:column; align-items:center; justify-content:center; gap:2px;
  transition:all 0.3s cubic-bezier(.4,0,.2,1);
}
.da-house:hover { border-color:var(--border-glow); transform:scale(1.03); box-shadow:0 4px 20px rgba(0,0,0,0.3); }
.da-house.fill { background:transparent; border:none; }
.da-house.center-cell {
  grid-column:span 2; grid-row:span 2;
  background:linear-gradient(135deg, rgba(124,92,252,0.04), rgba(224,165,38,0.03));
  border:1px dashed rgba(124,92,252,0.12);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  position:relative; overflow:hidden;
}
.da-center-label { font-size:10px; font-weight:800; color:var(--text-muted); letter-spacing:2px; position:relative; z-index:1; }
.da-center-badge { font-size:12px; font-weight:700; color:var(--gold); margin-top:4px; position:relative; z-index:1; }
.h-num { position:absolute; top:3px; left:6px; font-size:8px; font-weight:800; color:var(--text-muted); opacity:0.6; }
.h-sign { font-size:9px; color:var(--text-sec); }
.h-planets { font-size:13px; font-weight:700; color:var(--text-muted); }
.h-planets.active { color:var(--gold); text-shadow:0 0 8px rgba(224,165,38,0.3); }
.h-planets.lagna { color:var(--teal); text-shadow:0 0 8px rgba(76,219,196,0.3); }

/* Chart Legend */
.bc-chart-legend {
  display:flex; gap:16px; margin-top:12px; justify-content:center;
  flex-wrap:wrap;
}
.bc-legend-item {
  display:flex; align-items:center; gap:6px;
  font-size:10px; color:var(--text-muted); font-weight:500;
}
.bc-legend-dot {
  width:8px; height:8px; border-radius:50%; flex-shrink:0;
}

/* ═══ PLAIN ENGLISH SUMMARY CARD ═══ */
.bc-summary-card {
  flex:1; display:flex; flex-direction:column;
  background:var(--surface); backdrop-filter:blur(16px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); margin-top:16px;
  position:relative; overflow:hidden;
  animation:fadeUp 0.5s ease 0.2s forwards; opacity:0;
}
.bc-summary-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--gold), var(--violet), var(--teal));
  background-size:200% 100%; animation:gradientShift 4s ease infinite;
}
.bc-summary-header {
  display:flex; align-items:center; gap:8px;
  padding:14px 16px; border-bottom:1px solid var(--glass-border);
  background:rgba(255,255,255,0.01); flex-shrink:0;
}
.bc-summary-icon { font-size:16px; }
.bc-summary-title { font-size:13px; font-weight:800; color:var(--text); flex:1; }
.bc-summary-badge {
  font-size:7px; font-weight:800; letter-spacing:1.2px;
  padding:3px 8px; border-radius:4px;
  background:linear-gradient(135deg, rgba(224,165,38,0.1), rgba(124,92,252,0.08));
  color:var(--gold); border:1px solid rgba(224,165,38,0.12);
  animation:pulseGlow 3s ease-in-out infinite;
}
.bc-summary-scroll {
  flex:1; overflow-y:auto;
  padding:4px 0;
}
.bc-summary-scroll::-webkit-scrollbar { width:3px; }
.bc-summary-scroll::-webkit-scrollbar-track { background:transparent; }
.bc-summary-scroll::-webkit-scrollbar-thumb { background:rgba(224,165,38,0.15); border-radius:2px; }
.bc-summary-scroll::-webkit-scrollbar-thumb:hover { background:rgba(224,165,38,0.3); }

.bc-summary-item {
  display:flex; align-items:flex-start; gap:12px;
  padding:12px 16px;
  border-bottom:1px solid rgba(255,255,255,0.03);
  transition:background 0.2s;
  opacity:0; animation:fadeUp 0.35s ease forwards;
}
.bc-summary-item:last-child { border-bottom:none; }
.bc-summary-item:nth-child(1) { animation-delay:0.1s; }
.bc-summary-item:nth-child(2) { animation-delay:0.18s; }
.bc-summary-item:nth-child(3) { animation-delay:0.26s; }
.bc-summary-item:nth-child(4) { animation-delay:0.34s; }
.bc-summary-item:nth-child(5) { animation-delay:0.42s; }
.bc-summary-item:nth-child(6) { animation-delay:0.50s; }
.bc-summary-item:nth-child(7) { animation-delay:0.58s; }
.bc-summary-item:hover { background:rgba(255,255,255,0.02); }

.bc-si-emoji {
  font-size:18px; flex-shrink:0; width:32px; height:32px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,0.03); border-radius:8px;
  margin-top:2px;
}
.bc-si-body { flex:1; min-width:0; }
.bc-si-label {
  font-size:11px; font-weight:800; color:var(--gold);
  margin-bottom:3px; letter-spacing:0.3px;
}
.bc-si-text {
  font-size:11.5px; color:var(--text-sec); line-height:1.65;
}

/* ═══ INFO CARDS (right sidebar) ═══ */
.bc-info-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:16px;
  position:relative; overflow:hidden;
  transition:all 0.3s;
}
.bc-info-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(124,92,252,0.15), rgba(224,165,38,0.1), transparent);
}
.bc-info-card:hover { border-color:rgba(224,165,38,0.12); }

.bc-info-header {
  display:flex; align-items:center; gap:8px; margin-bottom:12px;
  flex-shrink:0;
}
.bc-info-icon { font-size:14px; }
.bc-info-title { font-size:12px; font-weight:800; color:var(--text); letter-spacing:0.3px; flex:1; }
.bc-info-badge {
  font-size:7px; font-weight:800; letter-spacing:1px;
  padding:2px 6px; border-radius:4px;
  background:var(--violet-dim); color:var(--violet-bright);
  border:1px solid rgba(124,92,252,0.1);
}

/* Planetary Strength Bars */
.bc-strength-list { display:flex; flex-direction:column; gap:8px; }
.bc-strength-row {
  display:flex; align-items:center; gap:8px;
  opacity:0; animation:fadeUp 0.4s ease forwards;
}
.bc-strength-row:nth-child(1) { animation-delay:0.1s; }
.bc-strength-row:nth-child(2) { animation-delay:0.2s; }
.bc-strength-row:nth-child(3) { animation-delay:0.3s; }
.bc-strength-row:nth-child(4) { animation-delay:0.4s; }
.bc-strength-row:nth-child(5) { animation-delay:0.5s; }
.bc-strength-row:nth-child(6) { animation-delay:0.6s; }
.bc-strength-row:nth-child(7) { animation-delay:0.7s; }

.bc-str-label {
  display:flex; align-items:center; gap:4px;
  font-size:11px; font-weight:600; color:var(--text-sec);
  min-width:80px;
}
.bc-str-em { font-size:12px; }
.bc-str-bar-wrap {
  flex:1; height:6px; background:rgba(255,255,255,0.04);
  border-radius:3px; overflow:hidden; position:relative;
}
.bc-str-bar {
  height:100%; border-radius:3px;
  background:var(--bar-color);
  width:0; transition:width 1.2s cubic-bezier(.25,.46,.45,.94);
  position:relative;
}
.bc-str-bar::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, transparent 60%, rgba(255,255,255,0.2) 80%, transparent 100%);
  background-size:200% 100%; animation:shimmer 2.5s linear infinite;
}
.bc-str-bar.weak::after { background:none; }
.bc-str-val {
  font-size:10px; font-weight:800; color:var(--text-sec);
  min-width:30px; text-align:right;
}
.bc-str-val.weak { color:var(--danger); }

/* Element Distribution Donut */
.bc-element-wrap { display:flex; align-items:center; gap:16px; }
.bc-element-donut { width:90px; height:90px; flex-shrink:0; }
.bc-donut-seg {
  opacity:0; animation:fadeIn 0.6s ease forwards;
  transition:stroke-width 0.2s;
}
.bc-donut-seg:nth-child(2) { animation-delay:0.2s; }
.bc-donut-seg:nth-child(3) { animation-delay:0.4s; }
.bc-donut-seg:nth-child(4) { animation-delay:0.6s; }
.bc-donut-seg:nth-child(5) { animation-delay:0.8s; }
.bc-element-donut:hover .bc-donut-seg { stroke-width:16; }

.bc-element-legend { display:flex; flex-direction:column; gap:6px; flex:1; }
.bc-el-item {
  display:flex; align-items:center; gap:6px;
  font-size:11px; color:var(--text-sec); font-weight:500;
}
.bc-el-item strong { color:var(--text); font-weight:700; margin-left:auto; }
.bc-el-dot { width:8px; height:8px; border-radius:2px; flex-shrink:0; }

/* House Spotlight */
.bc-house-spots { display:flex; flex-direction:column; gap:10px; }
.bc-house-spot {
  display:flex; align-items:flex-start; gap:10px;
  padding:8px 0;
  border-bottom:1px solid var(--glass-border);
  opacity:0; animation:slideInLeft 0.4s ease forwards;
}
.bc-house-spot:last-child { border-bottom:none; }
.bc-house-spot:nth-child(1) { animation-delay:0.15s; }
.bc-house-spot:nth-child(2) { animation-delay:0.3s; }
.bc-house-spot:nth-child(3) { animation-delay:0.45s; }

.bc-hs-num {
  font-size:20px; font-weight:900; color:var(--gold);
  min-width:36px; text-align:center; line-height:1;
}
.bc-hs-num small { font-size:9px; color:var(--text-muted); font-weight:700; vertical-align:super; }
.bc-hs-body { flex:1; }
.bc-hs-name { font-size:11px; font-weight:800; color:var(--text); margin-bottom:2px; }
.bc-hs-detail { font-size:10px; color:var(--text-muted); margin-bottom:5px; line-height:1.4; }
.bc-hs-meter {
  width:100%; height:4px; background:rgba(255,255,255,0.04);
  border-radius:2px; overflow:hidden;
}
.bc-hs-meter-fill {
  height:100%; border-radius:2px;
  transition:width 1.5s cubic-bezier(.25,.46,.45,.94);
}

/* Ascendant Badge */
.bc-asc-badge {
  display:flex; align-items:center; justify-content:center; gap:14px;
  background:linear-gradient(135deg, rgba(224,165,38,0.06), rgba(124,92,252,0.04));
  border:1px solid rgba(224,165,38,0.1);
  border-radius:var(--radius); padding:14px 16px;
  position:relative; overflow:hidden;
  animation:fadeUp 0.5s ease 0.3s forwards; opacity:0;
}
.bc-asc-badge::before {
  content:''; position:absolute; top:-20px; right:-20px;
  width:80px; height:80px; border-radius:50%;
  background:radial-gradient(circle, rgba(224,165,38,0.06) 0%, transparent 70%);
}
.bc-asc-icon {
  font-size:32px; width:50px; height:50px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(224,165,38,0.08); border-radius:var(--radius-sm);
  animation:float 3s ease-in-out infinite;
}
.bc-asc-body { flex:1; }
.bc-asc-title { font-size:14px; font-weight:800; color:var(--gold); }
.bc-asc-sub { font-size:10px; color:var(--text-muted); margin-top:2px; }
.bc-asc-traits { font-size:10px; color:var(--text-sec); margin-top:4px; font-weight:500; }

/* Planet table */
.da-planet-table {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); overflow:hidden; margin-bottom:24px;
}
.da-pt-header {
  display:grid; grid-template-columns:1.5fr 1fr 1fr 1.5fr 0.8fr 1fr; padding:11px 16px;
  font-size:9px; font-weight:800; color:var(--text-muted); letter-spacing:1.5px;
  text-transform:uppercase; border-bottom:1px solid var(--glass-border);
  background:rgba(255,255,255,0.02);
}
.da-pt-row {
  display:grid; grid-template-columns:1.5fr 1fr 1fr 1.5fr 0.8fr 1fr; padding:11px 16px;
  font-size:12px; color:var(--text-sec); border-bottom:1px solid var(--glass-border);
  transition:background 0.15s;
}
.da-pt-row:last-child { border-bottom:none; }
.da-pt-row:hover { background:rgba(255,255,255,0.02); }
.status-strong { color:var(--success); font-weight:700; font-size:10px; }
.status-weak { color:var(--danger); font-weight:700; font-size:10px; }
.status-neutral { color:var(--gold); font-weight:700; font-size:10px; }

/* Yogas */
.da-yogas { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.da-yoga-card {
  display:flex; align-items:flex-start; gap:12px;
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:16px;
  transition:all 0.2s; position:relative; overflow:hidden;
}
.da-yoga-card:hover { border-color:var(--border-glow); transform:translateY(-1px); }
.da-y-icon { font-size:22px; flex-shrink:0; margin-top:2px; }
.da-y-body { flex:1; }
.da-y-body strong { font-size:14px; color:var(--text); }
.da-y-body p { font-size:11px; color:var(--text-muted); line-height:1.6; margin-top:5px; }
.da-y-badge {
  font-size:8px; font-weight:800; padding:2px 7px; border-radius:4px;
  margin-left:8px; vertical-align:middle; letter-spacing:0.5px;
}
.da-y-badge.strong { background:rgba(34,197,94,0.08); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.da-y-badge.moderate { background:var(--gold-dim); color:var(--gold); border:1px solid rgba(224,165,38,0.1); }
.da-y-badge.active { background:var(--violet-dim); color:var(--violet-bright); border:1px solid rgba(124,92,252,0.1); }

/* ═══ ASHTAKAVARGA ═══ */
.bc-ashtak-wrap {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:20px; margin-bottom:24px;
  position:relative; overflow:hidden;
}
.bc-ashtak-wrap::before {
  content:''; position:absolute; bottom:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(76,219,196,0.1), transparent);
}
.bc-ashtak-intro {
  display:flex; align-items:center; gap:14px; margin-bottom:18px;
  padding-bottom:14px; border-bottom:1px solid var(--glass-border);
  flex-wrap:wrap;
}
.bc-ashtak-total-icon { font-size:24px; }
.bc-ashtak-total-label { font-size:10px; font-weight:700; color:var(--text-muted); letter-spacing:0.5px; }
.bc-ashtak-total-num { font-size:22px; font-weight:900; color:var(--text); }
.bc-ashtak-total-num small { font-size:11px; color:var(--text-muted); font-weight:500; }
.bc-ashtak-verdict { margin-left:auto; text-align:right; }
.bc-ashtak-verdict-badge {
  display:inline-block; font-size:8px; font-weight:800; letter-spacing:1px;
  padding:3px 8px; border-radius:4px;
}
.bc-ashtak-verdict-badge.good { background:rgba(34,197,94,0.08); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.bc-ashtak-verdict-sub { display:block; font-size:9px; color:var(--text-muted); margin-top:3px; }

.bc-ashtak-grid {
  display:grid; grid-template-columns:repeat(12,1fr); gap:6px;
  align-items:end; height:120px;
}
.bc-ashtak-house {
  display:flex; flex-direction:column; align-items:center; gap:4px; height:100%;
  justify-content:flex-end;
}
.bc-ashtak-h-num { font-size:9px; font-weight:800; color:var(--text-muted); }
.bc-ashtak-h-bar-wrap {
  width:100%; flex:1; display:flex; align-items:flex-end;
  background:rgba(255,255,255,0.02); border-radius:3px 3px 0 0; overflow:hidden;
}
.bc-ashtak-h-bar {
  width:100%; border-radius:3px 3px 0 0;
  background:var(--ashtak-color);
  height:0; transition:height 1.2s cubic-bezier(.25,.46,.45,.94);
  position:relative;
}
.bc-ashtak-h-bar::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,0.15) 0%, transparent 60%);
}
.bc-ashtak-h-pts { font-size:9px; font-weight:800; color:var(--text-sec); }
.bc-ashtak-footnote {
  margin-top:12px; font-size:10px; color:var(--text-muted); text-align:center;
  padding-top:10px; border-top:1px solid var(--glass-border);
}

/* ═══ DOSHA ANALYSIS ═══ */
.bc-dosha-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:24px; }
.bc-dosha-card {
  display:flex; align-items:flex-start; gap:12px;
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:16px;
  transition:all 0.2s;
}
.bc-dosha-card:hover { border-color:var(--border-glow); }
.bc-dosha-status { font-size:20px; flex-shrink:0; margin-top:2px; }
.bc-dosha-body { flex:1; }
.bc-dosha-name { font-size:13px; font-weight:800; color:var(--text); margin-bottom:4px; }
.bc-dosha-result {
  font-size:9px; font-weight:800; letter-spacing:0.8px;
  padding:2px 7px; border-radius:4px; display:inline-block; margin-bottom:6px;
}
.bc-dosha-result.clear { background:rgba(34,197,94,0.08); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.bc-dosha-result.partial { background:var(--gold-dim); color:var(--gold); border:1px solid rgba(224,165,38,0.1); }
.bc-dosha-result.warning { background:var(--rose-dim); color:var(--rose); border:1px solid rgba(252,92,124,0.1); }
.bc-dosha-detail { font-size:10px; color:var(--text-muted); line-height:1.5; }

/* ═══ NAKSHATRA PROFILE ═══ */
.bc-nakshatra-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); overflow:hidden; margin-bottom:24px;
  position:relative;
}
.bc-nakshatra-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--gold), var(--violet), var(--teal), var(--rose));
  background-size:200% 100%; animation:gradientShift 5s ease infinite;
}
.bc-nk-header {
  display:flex; align-items:center; gap:14px; padding:18px 20px;
  border-bottom:1px solid var(--glass-border);
  background:rgba(255,255,255,0.01);
}
.bc-nk-symbol { font-size:28px; }
.bc-nk-title-area { flex:1; }
.bc-nk-name { font-size:18px; font-weight:900; color:var(--gold); }
.bc-nk-sub { font-size:11px; color:var(--text-muted); margin-top:2px; }
.bc-nk-deity { text-align:right; }
.bc-nk-deity-label { font-size:8px; font-weight:700; color:var(--text-muted); letter-spacing:0.8px; text-transform:uppercase; }
.bc-nk-deity-name { font-size:12px; font-weight:700; color:var(--violet-bright); margin-top:2px; }

.bc-nk-body { padding:18px 20px; }
.bc-nk-traits {
  display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin-bottom:16px;
}
.bc-nk-trait {
  display:flex; flex-direction:column; align-items:center; gap:5px; text-align:center;
  padding:10px 4px; border-radius:var(--radius-sm);
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  transition:all 0.2s;
}
.bc-nk-trait:hover { border-color:var(--border-glow); transform:translateY(-2px); }
.bc-nk-trait-icon { font-size:16px; }
.bc-nk-trait div { font-size:10px; color:var(--text-muted); line-height:1.4; }
.bc-nk-trait strong { color:var(--text-sec); font-size:9px; font-weight:700; letter-spacing:0.3px; }

.bc-nk-compat {
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:12px 14px;
}
.bc-nk-compat-title { font-size:10px; font-weight:800; color:var(--text-muted); letter-spacing:0.8px; margin-bottom:8px; }
.bc-nk-compat-row {
  display:flex; justify-content:space-between; align-items:center;
  padding:5px 0; border-bottom:1px solid var(--glass-border);
}
.bc-nk-compat-row:last-child { border-bottom:none; }
.bc-nk-compat-label { font-size:10px; font-weight:700; color:var(--text-sec); min-width:70px; }
.bc-nk-compat-val { font-size:10px; color:var(--text-muted); text-align:right; }
.bc-nk-compat-val.good { color:var(--success); }
.bc-nk-compat-val.ok { color:var(--gold); }
.bc-nk-compat-val.caution { color:var(--rose); }

.bc-nk-desc {
  padding:14px 20px 18px; font-size:11px; color:var(--text-muted); line-height:1.7;
  border-top:1px solid var(--glass-border);
  background:rgba(224,165,38,0.01);
}

/* ═══ PLANETARY ASPECTS ═══ */
.bc-aspects-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:24px; }
.bc-aspect-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:14px;
  position:relative; overflow:hidden;
  transition:all 0.2s;
}
.bc-aspect-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
}
.bc-aspect-card.benefic::before { background:linear-gradient(90deg, var(--success), var(--teal)); }
.bc-aspect-card.challenging::before { background:linear-gradient(90deg, var(--rose), var(--warning)); }
.bc-aspect-card.neutral::before { background:linear-gradient(90deg, var(--gold), var(--violet)); }
.bc-aspect-card:hover { border-color:var(--border-glow); transform:translateY(-2px); box-shadow:0 6px 24px rgba(0,0,0,0.3); }

.bc-asp-planets { display:flex; align-items:center; gap:6px; margin-bottom:6px; }
.bc-asp-p1,.bc-asp-p2 { font-size:13px; font-weight:800; }
.bc-asp-arrow { font-size:12px; color:var(--text-muted); }
.bc-asp-type { font-size:9px; font-weight:700; color:var(--text-muted); letter-spacing:0.5px; margin-bottom:6px; }
.bc-asp-effect { font-size:10px; color:var(--text-sec); line-height:1.5; }
.bc-asp-effect strong { color:var(--gold); }

/* ═══════ PREDICTIONS INFOGRAPHIC ═══════ */
.pr-overview { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; margin-bottom:18px; }
.pr-ov-card {
  display:flex; align-items:center; gap:8px; padding:10px;
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); cursor:pointer; transition:all 0.25s;
  position:relative; overflow:hidden;
}
.pr-ov-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:transparent; transition:background 0.3s; }
.pr-ov-card:hover { border-color:var(--border-glow); transform:translateY(-2px); }
.pr-ov-card.active { border-color:var(--gold); background:rgba(224,165,38,0.03); }
.pr-ov-card.active::before { background:var(--gold); }
.pr-ov-ring { width:34px; height:34px; flex-shrink:0; transform:rotate(-90deg); }
.pr-ov-info { display:flex; flex-direction:column; gap:1px; }
.pr-ov-icon { font-size:14px; }
.pr-ov-name { font-size:9px; font-weight:800; letter-spacing:0.3px; }
.pr-ov-pct { font-size:11px; font-weight:900; color:var(--gold); }

/* Main prediction card */
.pr-main {
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius); position:relative; overflow:hidden; margin-bottom:18px;
}
.pr-main::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--gold), var(--violet), var(--teal)); background-size:200% 100%; animation:gradientShift 4s ease infinite; }
.pr-main-layout { display:grid; grid-template-columns:1fr 280px; }
.pr-content { padding:24px; border-right:1px solid var(--glass-border); }
.pr-header { margin-bottom:16px; }
.pr-title { font-size:16px; font-weight:800; margin-bottom:8px; }
.pr-conf-pill { display:flex; align-items:center; gap:6px; }
.pr-conf-dot { width:8px; height:8px; border-radius:50%; background:var(--success); animation:pulse 2s infinite; flex-shrink:0; }
@keyframes pulse { 0%,100%{opacity:1;} 50%{opacity:0.4;} }

.da-pred-body { font-size:13px; color:var(--text-sec); line-height:1.7; }
.da-pred-body p { margin-bottom:10px; }
.da-pred-body ul { padding-left:4px; list-style:none; }
.da-pred-body li { margin-bottom:7px; font-size:12px; }
.da-pred-body strong { color:var(--text); }

.pr-impact { display:flex; align-items:center; gap:8px; margin-top:16px; padding-top:14px; border-top:1px solid var(--glass-border); }
.pr-impact-label { font-size:9px; font-weight:700; color:var(--text-muted); white-space:nowrap; }
.pr-impact-bar { flex:1; height:5px; background:rgba(255,255,255,0.04); border-radius:3px; overflow:hidden; }
.pr-impact-fill { height:100%; background:linear-gradient(90deg, var(--gold), #22C55E); border-radius:3px; width:var(--pi-w); transition:width 0.8s ease; }
.pr-impact-val { font-size:10px; font-weight:900; color:var(--gold); }

/* Sidebar */
.pr-sidebar { padding:20px; display:flex; flex-direction:column; gap:16px; }
.pr-side-section { padding:0; }
.pr-side-title { font-size:8px; font-weight:800; letter-spacing:1px; color:var(--text-muted); margin-bottom:8px; }

.da-pred-timing { display:flex; flex-direction:column; gap:6px; }
.pr-date-row { display:flex; align-items:center; gap:8px; }
.pr-date-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.pr-date-dot.open { background:var(--teal); }
.pr-date-dot.peak { background:var(--gold); box-shadow:0 0 6px var(--gold-glow); }
.pr-date-dot.close { background:var(--text-muted); }
.da-date-chip {
  padding:4px 10px; border-radius:20px; font-size:10px; font-weight:600;
  background:var(--violet-dim); color:var(--violet-bright);
  border:1px solid rgba(124,92,252,0.1);
}

.da-pred-triggers { display:flex; flex-wrap:wrap; gap:6px; }
.da-trigger {
  padding:4px 10px; border-radius:20px; font-size:10px; font-weight:600;
  background:rgba(255,255,255,0.03); color:var(--text-sec);
  border:1px solid var(--glass-border);
}

.pr-str-grid { display:flex; flex-direction:column; gap:6px; }
.pr-str-item { display:flex; align-items:center; gap:6px; }
.pr-str-item span { font-size:9px; font-weight:700; color:var(--text-muted); min-width:55px; }
.pr-str-bar { flex:1; height:4px; background:rgba(255,255,255,0.04); border-radius:2px; overflow:hidden; }
.pr-str-fill { height:100%; background:linear-gradient(90deg, var(--violet), var(--teal)); border-radius:2px; width:var(--ps-w); transition:width 0.8s ease; }

/* Suggestion chips */
.pr-suggestions { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.pr-sug-chip {
  padding:5px 12px; border-radius:20px; font-size:10px; font-weight:700;
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  color:var(--text-sec); cursor:pointer; font-family:inherit; transition:all 0.2s;
}
.pr-sug-chip:hover { background:var(--gold-dim); border-color:rgba(224,165,38,0.12); color:var(--gold); }

.da-conf-label { font-size:9px; font-weight:700; color:var(--text-muted); letter-spacing:0.5px; }
.da-conf-bar { width:90px; height:5px; background:rgba(255,255,255,0.05); border-radius:3px; overflow:hidden; }
.da-conf-fill { height:100%; background:linear-gradient(90deg, var(--gold), var(--teal)); border-radius:3px; transition:width 0.8s ease; }
.da-conf-pct { font-size:12px; font-weight:800; color:var(--success); }

/* AI Question */
.da-gen-reading {
  background:var(--surface); backdrop-filter:blur(20px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:22px;
  position:relative; overflow:hidden;
}
.da-gen-reading::before {
  content:''; position:absolute; bottom:-30px; right:-30px;
  width:120px; height:120px; border-radius:50%;
  background:radial-gradient(circle, rgba(124,92,252,0.06) 0%, transparent 70%);
  pointer-events:none;
}
.da-gen-title { font-size:15px; font-weight:700; margin-bottom:12px; }
.da-gen-input-row { display:flex; gap:8px; position:relative; z-index:1; }
.da-gen-input {
  flex:1; background:rgba(255,255,255,0.03); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:12px 16px; color:var(--text);
  font-size:13px; font-family:inherit; outline:none;
  transition:all 0.25s;
}
.da-gen-input:focus { border-color:var(--gold); box-shadow:0 0 12px rgba(224,165,38,0.08); }
.da-gen-input::placeholder { color:var(--text-muted); }
.da-gen-btn {
  padding:12px 24px; border-radius:var(--radius-sm); border:none;
  background:linear-gradient(135deg, var(--gold), #CB8B15);
  color:var(--bg); font-size:13px; font-weight:800;
  cursor:pointer; font-family:inherit; transition:all 0.25s;
  white-space:nowrap; position:relative; overflow:hidden;
}
.da-gen-btn::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.2) 50%, transparent 60%);
  background-size:200% 100%; animation:shimmer 3s linear infinite;
}
.da-gen-btn:hover { box-shadow:0 4px 20px rgba(224,165,38,0.3); transform:translateY(-1px); }
.da-gen-result {
  margin-top:16px; padding:16px; border-radius:var(--radius-sm);
  background:rgba(255,255,255,0.02); border:1px solid var(--glass-border);
  font-size:13px; color:var(--text-sec); line-height:1.7;
}

/* ═══════ LIVE TITLE PULSE ═══════ */
.tr-live-title {
  display:flex; align-items:center; gap:10px;
}
.tr-live-dot {
  position:relative; width:14px; height:14px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
}
.tr-live-dot::before {
  content:''; width:8px; height:8px; border-radius:50%;
  background:#22C55E;
  box-shadow:0 0 6px #22C55E, 0 0 12px rgba(34,197,94,0.4);
  z-index:2; position:relative;
}
.tr-live-ping {
  position:absolute; inset:0; border-radius:50%;
  border:2px solid rgba(34,197,94,0.5);
  animation:trLivePing 2s ease-out infinite;
}
.tr-live-ping.tr-ping-2 {
  animation-delay:0.6s;
}
@keyframes trLivePing {
  0% { transform:scale(0.5); opacity:1; }
  100% { transform:scale(2.2); opacity:0; }
}

/* ═══════ DASHA ORBITAL TIMELINE ═══════ */
.dot-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(10,16,45,0.99), rgba(3,6,15,1));
  border:1px solid rgba(224,165,38,0.06);
  border-radius:var(--radius);
  margin-bottom:20px;
  overflow:hidden;
  min-height:550px;
  box-shadow:0 0 40px rgba(0,0,0,0.3), inset 0 0 60px rgba(124,92,252,0.02);
}
.dot-svg {
  position:relative; display:block;
  width:100%; max-width:800px;
  margin:0 auto; aspect-ratio:1; z-index:2;
}
.dot-arc-current {
  animation:dotArcPulse 2.5s ease-in-out infinite;
}
@keyframes dotArcPulse {
  0%,100% { opacity:0.8; }
  50% { opacity:1; }
}
.dot-now-pulse {
  animation:dotNowPulse 1.2s ease-in-out infinite;
}
@keyframes dotNowPulse {
  0%,100% { r:5; opacity:0.6; }
  50% { r:8; opacity:1; }
}

/* ═══════ SOULSYNC SYNASTRY MAP ═══════ */
.ssm-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(10,16,45,0.99), rgba(3,6,15,1));
  border:1px solid rgba(240,171,252,0.06);
  border-radius:var(--radius);
  margin-bottom:20px;
  overflow:hidden;
  min-height:500px;
  box-shadow:0 0 40px rgba(0,0,0,0.3), inset 0 0 60px rgba(240,171,252,0.02);
}
.ssm-svg {
  max-width:750px;
}

/* ═══════ OVERVIEW MINI ORRERY ═══════ */
.oms-wrap {
  margin:0 0 16px 0;
  border:1px solid rgba(224,165,38,0.05);
  border-radius:var(--radius);
  background:radial-gradient(ellipse at 50% 50%, rgba(10,16,45,0.6), rgba(3,6,15,0.7));
  overflow:hidden;
  min-height:200px;
  box-shadow:0 0 20px rgba(0,0,0,0.2);
}
.oms-svg {
  display:block; width:100%;
  max-width:600px; margin:0 auto;
}

/* ═══════ REMEDY CONSTELLATION MAP ═══════ */
.rcm-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(10,16,45,0.99), rgba(3,6,15,1));
  border:1px solid rgba(76,219,196,0.06);
  border-radius:var(--radius);
  margin-bottom:20px;
  overflow:hidden;
  min-height:450px;
  box-shadow:0 0 40px rgba(0,0,0,0.3), inset 0 0 60px rgba(76,219,196,0.02);
}
.rcm-svg { max-width:800px; }
.rcm-star-g {
  cursor:pointer;
  transition:transform 0.4s cubic-bezier(.22,1,.36,1);
  transform-origin:center;
}
.rcm-star-g:hover { transform:scale(1.15); }

/* ═══════ PREDICTIONS STAR MAP ═══════ */
.psm-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(10,16,45,0.99), rgba(3,6,15,1));
  border:1px solid rgba(224,165,38,0.06);
  border-radius:var(--radius);
  margin-bottom:20px;
  overflow:hidden;
  min-height:450px;
  box-shadow:0 0 40px rgba(0,0,0,0.3), inset 0 0 60px rgba(224,165,38,0.02);
}
.psm-svg { max-width:800px; }
.psm-star-g {
  cursor:pointer;
  transition:transform 0.4s cubic-bezier(.22,1,.36,1);
  transform-origin:center;
}
.psm-star-g:hover { transform:scale(1.18); }
.psm-link-anim {
  animation:psmLinkPulse 4s ease-in-out infinite;
}
@keyframes psmLinkPulse {
  0%,100% { opacity:0.05; }
  50% { opacity:0.12; }
}

/* ═══════ BIRTH CHART COSMIC MAP ═══════ */
.bcm-cosmic-tab {
  background:linear-gradient(135deg, rgba(224,165,38,0.15), rgba(124,92,252,0.15)) !important;
  border:1px solid rgba(224,165,38,0.2) !important;
  color:#E0A526 !important;
}
.bcm-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(12,20,50,0.98), rgba(4,8,18,0.99));
  border:1px solid rgba(255,255,255,0.05);
  border-radius:var(--radius);
  margin-bottom:16px;
  overflow:hidden;
  min-height:420px;
}
.bcm-stars-canvas {
  position:absolute; inset:0;
  width:100%; height:100%;
  pointer-events:none;
  z-index:1;
}
.bcm-svg {
  position:relative;
  display:block;
  width:100%;
  max-width:700px;
  margin:0 auto;
  aspect-ratio:1;
  z-index:2;
}

/* House wedges */
.bcm-house-wedge {
  transition:fill 0.3s, stroke 0.3s;
  cursor:default;
}
.bcm-house-wedge:hover {
  fill:rgba(124,92,252,0.06) !important;
  stroke:rgba(124,92,252,0.1) !important;
}
.bcm-house-wedge.active {
  fill:rgba(124,92,252,0.05) !important;
}
.bcm-house-num {
  font-family:'Outfit',sans-serif;
}

/* Yoga lines */
.bcm-yoga-line {
  animation:bcmYogaFlow 3s linear infinite;
}
@keyframes bcmYogaFlow {
  from { stroke-dashoffset:0; }
  to { stroke-dashoffset:-20; }
}
.bcm-yoga-label {
  font-family:'Outfit',sans-serif;
  transition:opacity 0.3s;
}

/* Planet groups — 3D pop-out style */
.bcm-planet-g {
  cursor:pointer;
  transition:transform 0.3s ease, filter 0.3s ease;
  transform-origin:center;
  animation:bcmFloat var(--float-duration, 4s) ease-in-out infinite;
  animation-delay:var(--float-delay, 0s);
}
@keyframes bcmFloat {
  0%, 100% { transform:translateY(0); }
  50% { transform:translateY(-4px); }
}
.bcm-planet-g:hover {
  transform:scale(1.15) translateY(-3px);
  filter:drop-shadow(0 4px 12px rgba(0,0,0,0.4));
}
.bcm-planet-g.active {
  transform:scale(1.18) translateY(-3px);
  filter:drop-shadow(0 6px 18px rgba(0,0,0,0.5));
}
.bcm-planet-g.active .bcm-p-body {
  filter:url(#bcmPShadow) drop-shadow(0 0 10px currentColor);
}

/* Halo pulse animation */
.bcm-p-halo-pulse {
  animation:bcmHaloPulse 3s ease-in-out infinite;
}
@keyframes bcmHaloPulse {
  0%, 100% { r:inherit; opacity:0.04; }
  50% { opacity:0.1; }
}

/* Drop shadow under planet */
.bcm-p-shadow {
  animation:bcmShadowPulse 3s ease-in-out infinite;
}
@keyframes bcmShadowPulse {
  0%, 100% { opacity:0.3; }
  50% { opacity:0.15; }
}

/* Detail Card */
.bcm-detail-card {
  position:absolute;
  top:20px; right:20px; z-index:10;
  width:320px;
  background:rgba(10,14,30,0.92);
  backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:16px;
  padding:20px;
  opacity:0; pointer-events:none;
  transform:translateY(12px) scale(0.97);
  transition:opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1);
}
.bcm-detail-card.visible {
  opacity:1; pointer-events:auto;
  transform:translateY(0) scale(1);
}

/* Strength bar */
.bcm-dc-strength-wrap {
  display:flex; align-items:center; gap:8px;
  margin:12px 0;
  padding:10px 12px;
  background:rgba(255,255,255,0.02);
  border-radius:8px;
}
.bcm-dc-strength-label {
  font-size:11px; color:rgba(255,255,255,0.4);
  font-weight:600; white-space:nowrap;
}
.bcm-dc-strength-bar {
  flex:1; height:6px; border-radius:3px;
  background:rgba(255,255,255,0.06);
  overflow:hidden;
}
.bcm-dc-strength-fill {
  height:100%; border-radius:3px;
  transition:width 0.8s cubic-bezier(.4,0,.2,1);
}
.bcm-dc-strength-val {
  font-size:13px; font-weight:800;
  color:rgba(255,255,255,0.6);
  min-width:32px; text-align:right;
}

/* Yoga section in detail card */
.bcm-dc-yogas {
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,0.04);
}
.bcm-dc-yogas-title {
  font-size:11px; font-weight:700;
  color:rgba(224,165,38,0.5);
  letter-spacing:1px;
  margin-bottom:8px;
}
.bcm-dc-yoga-item {
  padding:8px 0;
  font-size:12px;
  color:rgba(255,255,255,0.6);
  line-height:1.5;
}
.bcm-dc-yoga-item + .bcm-dc-yoga-item {
  border-top:1px solid rgba(255,255,255,0.03);
}
.bcm-dc-yoga-dot {
  display:inline-block;
  width:6px; height:6px; border-radius:50%;
  margin-right:6px; vertical-align:middle;
}

/* ═══════ LIVE TRANSIT ORRERY v2 ═══════ */
.orrery-wrap {
  position:relative;
  background:radial-gradient(ellipse at 50% 45%, rgba(12,20,50,0.98), rgba(4,8,18,0.99));
  border:1px solid rgba(255,255,255,0.05);
  border-radius:var(--radius);
  margin-bottom:16px;
  overflow:hidden;
  min-height:420px;
}
.orr-stars-canvas {
  position:absolute; inset:0;
  width:100%; height:100%;
  pointer-events:none;
  z-index:1;
}
.orrery-svg {
  position:relative;
  display:block;
  width:100%;
  max-width:680px;
  margin:0 auto;
  aspect-ratio:1;
  z-index:2;
}

/* Twinkling stars */
.orr-twinkle {
  animation:orrTwinkle 3s ease-in-out infinite alternate;
}
@keyframes orrTwinkle {
  0% { opacity:0.1; }
  100% { opacity:0.6; }
}

/* Orbit ring paths — rotate + pulse */
.orr-orbit-path {
  animation:orrOrbitPulse 6s ease-in-out infinite alternate, orrOrbitSpin 120s linear infinite;
  transform-origin:350px 350px;
}
@keyframes orrOrbitPulse {
  0% { stroke:rgba(255,255,255,0.03); }
  100% { stroke:rgba(255,255,255,0.07); }
}
@keyframes orrOrbitSpin {
  from { transform:rotate(0deg); }
  to { transform:rotate(360deg); }
}

/* Comet trails */
.orr-trail {
  transition:opacity 0.3s;
}

/* Surface bands on planets */
.orr-p-band {
  opacity:0.5;
}

/* Atmospheric breathing */
.orr-p-atmo {
  animation:orrAtmoBreathe 4s ease-in-out infinite;
}
@keyframes orrAtmoBreathe {
  0%,100% { opacity:0.03; }
  50% { opacity:0.08; }
}

/* Glow ring breathing */
.orr-p-glow-ring {
  animation:orrGlowBreathe 5s ease-in-out infinite;
}
@keyframes orrGlowBreathe {
  0%,100% { opacity:0.1; stroke-width:0.8; }
  50% { opacity:0.2; stroke-width:1.2; }
}

/* Zodiac symbols */
.orr-zodiac-sym {
  font-family:'Outfit',sans-serif;
  transition:fill 0.3s, opacity 0.3s;
  cursor:default;
}

/* Center YOU — enhanced multi-ring */
.orr-you-center { /* base styles inherited */ fill:transparent; }
.orr-you-pulse {
  animation:orrYouPulse 3s ease-in-out infinite;
}
.orr-you-pulse2 {
  animation:orrYouPulse2 2.5s ease-in-out infinite;
}
.orr-you-ring3 {
  animation:orrYouRing3 8s linear infinite;
  transform-origin:350px 350px;
}
@keyframes orrYouPulse {
  0%,100% { r:32; opacity:0.06; }
  50% { r:36; opacity:0.12; }
}
@keyframes orrYouPulse2 {
  0%,100% { r:22; opacity:0.1; }
  50% { r:25; opacity:0.18; }
}
@keyframes orrYouRing3 {
  from { transform:rotate(0deg); }
  to { transform:rotate(360deg); }
}

/* Trajectory line — flowing dashes */
.orr-traj-line {
  animation:orrTrajFlow 2s linear infinite;
}
@keyframes orrTrajFlow {
  from { stroke-dashoffset:0; }
  to { stroke-dashoffset:-20; }
}
.orr-traj-arrow {
  animation:orrTrajArrowPulse 2s ease-in-out infinite;
}
@keyframes orrTrajArrowPulse {
  0%,100% { opacity:0.2; }
  50% { opacity:0.5; }
}
.orr-traj-label {
  font-family:'Outfit',sans-serif;
}

/* AstroKamya branding */
.orr-brand text {
  font-family:'Outfit',sans-serif;
}

/* ── Planet Groups ── */
.orr-planet-g {
  cursor:pointer;
  transition:transform 0.3s ease;
  transform-origin:center;
}
.orr-planet-g:hover {
  transform:scale(1.08);
}
.orr-planet-g:hover .orr-p-atmo {
  opacity:0.1 !important;
}
.orr-planet-g:hover .orr-p-glow-ring {
  opacity:0.3 !important;
}
.orr-planet-g:hover .orr-p-name {
  fill:rgba(255,255,255,0.8) !important;
}
/* Active state */
.orr-planet-g.active {
  transform:scale(1.12);
}
.orr-planet-g.active .orr-p-atmo {
  opacity:0.15 !important;
  animation:orrPlanetPulse 2s ease-in-out infinite;
}
.orr-planet-g.active .orr-p-glow-ring {
  opacity:0.4 !important;
  stroke-width:1.5 !important;
}
.orr-planet-g.active .orr-p-name {
  fill:rgba(255,255,255,0.9) !important;
}
.orr-planet-g.active .orr-p-deg {
  fill:rgba(255,255,255,0.5) !important;
}

/* Status dot */
.orr-p-status {
  animation:orrStatusBlink 3s ease-in-out infinite;
}
@keyframes orrStatusBlink {
  0%,100% { opacity:0.9; }
  50% { opacity:0.3; }
}
@keyframes orrPlanetPulse {
  0%,100% { opacity:0.1; }
  50% { opacity:0.2; }
}

/* ── Aspect Lines ── */
.orr-aspect {
  transition:stroke 0.4s, stroke-width 0.4s, opacity 0.4s;
  opacity:0.4;
}
.orr-aspect.active {
  opacity:1 !important;
  stroke-width:2.5 !important;
}
.orr-asp-favorable { stroke:rgba(76,219,196,0.35); }
.orr-asp-favorable.active { stroke:rgba(76,219,196,0.7) !important; }
.orr-asp-intense { stroke:rgba(252,92,124,0.35); }
.orr-asp-intense.active { stroke:rgba(252,92,124,0.7) !important; }
.orr-asp-label {
  opacity:0.5;
  transition:opacity 0.3s;
  pointer-events:none;
}
.orr-asp-label.active { opacity:1; }

/* ── Detail Card ── */
.orr-detail-card {
  position:absolute;
  bottom:16px; left:50%;
  transform:translateX(-50%) translateY(12px);
  background:rgba(8,14,35,0.92);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:14px;
  padding:18px 22px;
  width:min(480px, calc(100% - 32px));
  opacity:0;
  pointer-events:none;
  transition:all 0.4s cubic-bezier(.22,1.2,.36,1);
  backdrop-filter:blur(24px);
  z-index:10;
  box-shadow:0 12px 40px rgba(0,0,0,0.5), 0 0 1px rgba(255,255,255,0.05);
}
.orr-detail-card.visible {
  opacity:1;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
}
.orr-dc-close {
  position:absolute; top:10px; right:14px;
  color:rgba(255,255,255,0.25); font-size:14px;
  cursor:pointer; transition:color 0.2s;
  z-index:2;
}
.orr-dc-close:hover { color:rgba(255,255,255,0.6); }
.orr-dc-head {
  display:flex; align-items:center; gap:14px;
  margin-bottom:12px;
}
.orr-dc-planet-visual {
  flex-shrink:0;
}
.orr-dc-planet-sphere {
  width:42px; height:42px; border-radius:50%;
  transition:all 0.3s;
}
.orr-dc-info { flex:1; }
.orr-dc-name {
  font-size:17px; font-weight:800;
  color:rgba(240,240,245,0.92);
}
.orr-dc-pos {
  font-size:11px; font-weight:500;
  color:rgba(240,240,245,0.35);
  margin-top:2px;
}
.orr-dc-badge {
  padding:4px 12px; border-radius:20px;
  font-size:9px; font-weight:700;
  letter-spacing:1px; text-transform:uppercase;
  flex-shrink:0;
}
.orr-dc-badge.favorable {
  background:rgba(34,197,94,0.1); color:#22C55E;
  border:1px solid rgba(34,197,94,0.2);
}
.orr-dc-badge.neutral {
  background:rgba(224,165,38,0.1); color:#E0A526;
  border:1px solid rgba(224,165,38,0.2);
}
.orr-dc-badge.intense {
  background:rgba(252,92,124,0.1); color:#FC5C7C;
  border:1px solid rgba(252,92,124,0.2);
}
.orr-dc-effect {
  font-size:13px; color:rgba(240,240,245,0.6);
  line-height:1.65; margin-bottom:12px;
}
.orr-dc-meta {
  display:flex; gap:20px;
}
.orr-dc-meta-item {
  display:flex; align-items:center; gap:5px;
  font-size:11px; color:rgba(240,240,245,0.3);
  font-weight:500;
}
.orr-dc-meta-icon { font-size:12px; }

/* Animations */
@keyframes orrPulsePlanet {
  0%,100% { opacity:0.15; }
  50% { opacity:0.3; }
}

/* ═══════ LIVE TRANSITS INFOGRAPHIC ═══════ */

/* Top Stats Row */
.tr-stats-row { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:8px; }
.tr-stat-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:18px; position:relative; overflow:hidden; transition:all 0.3s;
}
.tr-stat-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--teal), var(--gold), var(--violet));
}
.tr-stat-card:hover { border-color:var(--border-glow); }

/* Transit Score Ring */
.tr-score-card { display:flex; align-items:center; gap:16px; }
.tr-score-ring-wrap { position:relative; width:80px; height:80px; flex-shrink:0; }
.tr-score-ring { width:100%; height:100%; transform:rotate(-90deg); }
.tr-score-value {
  position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center;
}
.tr-score-num { font-size:22px; font-weight:900; color:var(--text); }
.tr-score-label { font-size:9px; color:var(--text-muted); }
.tr-score-title { font-size:10px; font-weight:800; color:var(--text-muted); letter-spacing:0.5px; margin-bottom:4px; }
.tr-score-verdict { font-size:9px; font-weight:800; letter-spacing:1px; padding:3px 8px; border-radius:4px; display:inline-block; margin-bottom:6px; }
.tr-score-verdict.good { background:rgba(34,197,94,0.08); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.tr-score-desc { font-size:10px; color:var(--text-muted); line-height:1.4; }

/* Impact Breakdown Bars */
.tr-impact-title { font-size:11px; font-weight:800; color:var(--text); margin-bottom:12px; }
.tr-impact-bars { display:flex; flex-direction:column; gap:8px; }
.tr-impact-row { display:flex; align-items:center; gap:8px; }
.tr-imp-label { font-size:10px; color:var(--text-sec); min-width:90px; font-weight:600; }
.tr-imp-bar-wrap { flex:1; height:8px; background:rgba(255,255,255,0.04); border-radius:4px; overflow:hidden; }
.tr-imp-bar {
  height:100%; border-radius:4px; background:var(--imp-color);
  width:var(--imp-w); transition:width 1.2s cubic-bezier(.25,.46,.45,.94);
  position:relative;
}
.tr-imp-bar::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, transparent 50%, rgba(255,255,255,0.2));
}
.tr-imp-val { font-size:11px; font-weight:900; color:var(--text); min-width:20px; text-align:right; }
.tr-impact-note { margin-top:10px; font-size:9px; color:var(--text-muted); padding-top:8px; border-top:1px solid var(--glass-border); }

/* House Activity Heatmap */
.tr-heatmap-title { font-size:11px; font-weight:800; color:var(--text); margin-bottom:10px; }
.tr-heatmap-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:4px; }
.tr-hm-cell {
  aspect-ratio:1; border-radius:6px; display:flex; align-items:center; justify-content:center;
  font-size:10px; font-weight:800; color:var(--text-sec);
  background:rgba(76,219,196,calc(var(--hm-heat) * 0.25));
  border:1px solid rgba(76,219,196,calc(var(--hm-heat) * 0.15));
  transition:all 0.3s; cursor:default;
}
.tr-hm-cell.hot { color:var(--text); text-shadow:0 0 8px rgba(76,219,196,0.4); }
.tr-hm-cell:hover { transform:scale(1.1); box-shadow:0 0 12px rgba(76,219,196,calc(var(--hm-heat) * 0.3)); }
.tr-heatmap-legend {
  display:flex; align-items:center; gap:6px; margin-top:8px;
  font-size:8px; color:var(--text-muted); font-weight:700;
}
.tr-hm-legend-bar {
  flex:1; height:4px; border-radius:2px;
  background:linear-gradient(90deg, rgba(76,219,196,0.02), rgba(76,219,196,0.3));
}

/* Transit Cards Grid */
.tr-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.tr-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:16px; position:relative; overflow:hidden;
  transition:all 0.25s;
}
.tr-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; }
.tr-card.favorable::before { background:linear-gradient(90deg, #22C55E, var(--teal)); }
.tr-card.neutral::before { background:linear-gradient(90deg, var(--gold), #F59E0B); }
.tr-card.intense::before { background:linear-gradient(90deg, var(--rose), #EF4444); }
.tr-card:hover { border-color:var(--border-glow); transform:translateY(-2px); box-shadow:0 8px 30px rgba(0,0,0,0.3); }

.tr-card-head { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.tr-planet-icon { font-size:20px; flex-shrink:0; }
.tr-planet-info { flex:1; min-width:0; }
.tr-planet-name { font-size:14px; font-weight:800; }
.tr-planet-pos { font-size:10px; color:var(--text-muted); }
.tr-planet-pos em { font-style:normal; font-weight:700; color:var(--text-sec); }
.tr-badge {
  font-size:7px; font-weight:800; letter-spacing:0.8px;
  padding:3px 7px; border-radius:4px; flex-shrink:0;
}
.tr-badge.favorable { background:rgba(34,197,94,0.08); color:var(--success); border:1px solid rgba(34,197,94,0.1); }
.tr-badge.neutral { background:var(--gold-dim); color:var(--gold); border:1px solid rgba(224,165,38,0.1); }
.tr-badge.intense { background:var(--rose-dim); color:var(--rose); border:1px solid rgba(252,92,124,0.1); }

.tr-card-meter { height:4px; background:rgba(255,255,255,0.04); border-radius:2px; margin-bottom:10px; overflow:hidden; }
.tr-meter-fill {
  height:100%; border-radius:2px; background:var(--meter-color);
  width:var(--meter-w); transition:width 1.2s cubic-bezier(.25,.46,.45,.94);
}
.tr-card-body { min-width:0; }
.tr-effect { font-size:11px; color:var(--text-sec); line-height:1.55; margin-bottom:8px; }
.tr-effect strong { color:var(--gold); }
.tr-card-meta {
  display:flex; justify-content:space-between; gap:8px;
  font-size:9px; color:var(--text-muted); font-weight:600;
  padding-top:6px; border-top:1px solid var(--glass-border);
}

/* Transit Timeline */
.tr-timeline { display:flex; flex-direction:column; gap:10px; }
.tr-tl-item {
  display:flex; align-items:flex-start; gap:14px;
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:14px 16px; transition:all 0.2s; position:relative; overflow:hidden;
}
.tr-tl-item::before { content:''; position:absolute; left:0; top:0; bottom:0; width:3px; }
.tr-tl-item.positive::before { background:var(--success); }
.tr-tl-item.caution::before { background:var(--rose); }
.tr-tl-item:hover { border-color:var(--border-glow); }
.tr-tl-date {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-width:48px; padding:6px 10px; border-radius:var(--radius-sm);
  background:rgba(224,165,38,0.06); border:1px solid rgba(224,165,38,0.08);
}
.tr-tl-day { font-size:20px; font-weight:900; color:var(--gold); line-height:1; }
.tr-tl-month { font-size:8px; font-weight:800; color:var(--text-muted); letter-spacing:1px; margin-top:2px; }
.tr-tl-body { flex:1; }
.tr-tl-body strong { font-size:12px; color:var(--text); }
.tr-tl-body p { font-size:10px; color:var(--text-muted); line-height:1.5; margin-top:3px; }


/* ═══════ DASHA INFOGRAPHIC ═══════ */
.dsh-hero {
  display:flex; align-items:center; gap:28px;
  background:var(--surface); backdrop-filter:blur(20px);
  border:1px solid var(--glass-border); border-radius:var(--radius);
  padding:24px; position:relative; overflow:hidden;
}
.dsh-hero::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--gold), var(--violet), var(--teal)); }
.dsh-rings { display:flex; gap:12px; flex-shrink:0; }
.dsh-ring-wrap { position:relative; width:90px; height:90px; }
.dsh-ring-wrap.small { width:70px; height:70px; }
.dsh-ring-svg { width:100%; height:100%; transform:rotate(-90deg); }
.dsh-ring-inner { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.dsh-ring-pct { font-size:16px; font-weight:900; }
.dsh-ring-wrap.small .dsh-ring-pct { font-size:13px; }
.dsh-ring-lbl { font-size:7px; font-weight:800; color:var(--text-muted); letter-spacing:0.5px; text-transform:uppercase; }
.dsh-hero-info { flex:1; }
.dsh-hero-badge { font-size:8px; font-weight:800; letter-spacing:1.2px; color:var(--text-muted); margin-bottom:6px; }
.dsh-hero-main { font-size:18px; font-weight:800; margin-bottom:2px; }
.dsh-hero-sub { font-size:11px; color:var(--text-sec); margin-bottom:6px; }
.dsh-hero-antar { font-size:11px; color:var(--text-muted); margin-bottom:10px; padding:5px 10px; background:rgba(124,92,252,0.06); border-radius:var(--radius-sm); border:1px solid rgba(124,92,252,0.08); display:inline-block; }
.dsh-hero-insight { font-size:10px; color:var(--text-muted); line-height:1.5; margin-top:8px; padding-top:8px; border-top:1px solid var(--glass-border); }
.dsh-chapters { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.dsh-chapter-card {
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:12px 10px; text-align:center;
  transition:all 0.25s; position:relative; overflow:hidden;
}
.dsh-chapter-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:var(--text-muted); }
.dsh-chapter-card.active { border-color:var(--gold); }
.dsh-chapter-card.active::before { background:var(--gold); box-shadow:0 0 8px var(--gold-glow); }
.dsh-chapter-card.future { opacity:0.5; }
.dsh-chapter-card:hover { transform:translateY(-2px); border-color:var(--border-glow); }
.dsh-ch-icon { font-size:20px; display:block; margin-bottom:4px; }
.dsh-ch-label { font-size:10px; font-weight:800; margin-bottom:2px; }
.dsh-ch-period { font-size:8px; color:var(--text-muted); margin-bottom:6px; }
.dsh-ch-bar { height:3px; background:rgba(255,255,255,0.04); border-radius:2px; overflow:hidden; }
.dsh-ch-fill { height:100%; border-radius:2px; transition:width 1s ease; }
.dsh-ch-fill.done { background:var(--text-muted); }
.dsh-ch-fill.active { background:linear-gradient(90deg, var(--gold), var(--teal)); }
.dsh-vis-timeline { display:flex; gap:2px; height:36px; border-radius:var(--radius-sm); overflow:hidden; }
.dsh-vt-bar { display:flex; align-items:center; justify-content:center; position:relative; font-size:12px; min-width:14px; transition:all 0.3s; }
.dsh-vt-bar.past { background:rgba(255,255,255,0.06); }
.dsh-vt-bar.current { background:linear-gradient(90deg, rgba(224,165,38,0.15), rgba(76,219,196,0.1)); border:1px solid rgba(224,165,38,0.15); border-radius:3px; }
.dsh-vt-bar.future { background:rgba(255,255,255,0.02); }
.dsh-vt-bar:hover { filter:brightness(1.5); }
.dsh-vt-now { position:absolute; right:37%; top:0; bottom:0; width:2px; background:var(--gold); box-shadow:0 0 8px var(--gold-glow); }
.dsh-vt-labels { display:flex; justify-content:space-between; font-size:8px; color:var(--text-muted); font-weight:700; margin-top:4px; padding:0 2px; }

/* ═══════ SOULSYNC INFOGRAPHIC ═══════ */
.ss-layout { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ss-factors-card { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius); padding:20px; position:relative; overflow:hidden; }
.ss-factors-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--rose), var(--gold)); }
.ss-factors-title { font-size:12px; font-weight:800; margin-bottom:14px; }
.ss-factor-list { display:flex; flex-direction:column; gap:8px; }
.ss-factor { display:flex; align-items:center; gap:8px; }
.ss-f-head { display:flex; align-items:center; gap:5px; min-width:110px; }
.ss-f-head span { font-size:14px; }
.ss-f-head strong { font-size:11px; }
.ss-f-bar { flex:1; height:6px; background:rgba(255,255,255,0.04); border-radius:3px; overflow:hidden; }
.ss-f-fill { height:100%; background:linear-gradient(90deg, var(--rose), var(--gold)); border-radius:3px; width:var(--sf-w); transition:width 1s ease; }
.ss-f-pts { font-size:10px; color:var(--text-muted); font-weight:700; min-width:40px; text-align:right; }
.ss-total-bar { display:flex; justify-content:space-between; align-items:center; margin-top:14px; padding-top:12px; border-top:1px solid var(--glass-border); }
.ss-total-label { font-size:12px; font-weight:800; }
.ss-total-value { font-size:16px; font-weight:900; color:var(--text-muted); }
.ss-form-card { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius); padding:24px; position:relative; overflow:hidden; }
.ss-form-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--teal), var(--gold)); }
.ss-form-badge { font-size:8px; font-weight:800; letter-spacing:1px; color:var(--gold); margin-bottom:10px; }
.ss-form-title { font-size:18px; font-weight:800; margin-bottom:14px; }
.ss-you-badge { font-size:10px; color:var(--text-muted); margin-top:12px; text-align:center; }
.ss-features { display:flex; gap:12px; justify-content:center; margin-top:8px; font-size:9px; color:var(--text-muted); font-weight:600; }
.da-ss-form { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.da-ss-input { background:rgba(255,255,255,0.03); border:1px solid var(--glass-border); border-radius:var(--radius-sm); padding:12px; color:var(--text); font-size:13px; font-family:inherit; outline:none; transition:all 0.2s; }
.da-ss-input:focus { border-color:var(--gold); }

/* ═══════ REMEDIES INFOGRAPHIC ═══════ */
.rm-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:16px; }
.rm-stat { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius-sm); padding:14px; text-align:center; display:flex; flex-direction:column; gap:2px; }
.rm-stat-num { font-size:20px; font-weight:900; background:linear-gradient(135deg, var(--text), var(--gold)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.rm-stat-label { font-size:9px; color:var(--text-muted); font-weight:600; }
.rm-featured { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius); padding:18px; position:relative; overflow:hidden; }
.rm-featured::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--gold), #22C55E); }
.rm-featured-badge { font-size:8px; font-weight:800; letter-spacing:1px; color:var(--gold); margin-bottom:10px; }
.rm-featured-body { display:flex; align-items:center; gap:16px; }
.rm-featured-icon { font-size:36px; flex-shrink:0; }
.rm-featured-info { flex:1; }
.rm-featured-info strong { font-size:14px; }
.rm-featured-info p { font-size:11px; color:var(--text-muted); margin-top:3px; line-height:1.4; }
.rm-featured-meta { display:flex; gap:12px; margin-top:8px; font-size:9px; color:var(--text-sec); font-weight:600; }
.rm-effectiveness { display:flex; flex-direction:column; align-items:center; flex-shrink:0; position:relative; }
.rm-eff-ring { width:60px; height:60px; transform:rotate(-90deg); }
.rm-eff-label { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.rm-eff-pct { font-size:14px; font-weight:900; color:#22C55E; }
.rm-eff-label span:last-child { font-size:7px; color:var(--text-muted); }
.rm-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.rm-card { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius); padding:14px; position:relative; overflow:hidden; transition:all 0.25s; }
.rm-card-accent { position:absolute; top:0; left:0; right:0; height:2px; }
.rm-card:nth-child(1) .rm-card-accent { background:linear-gradient(90deg, #7C5CFC, #4CDBC4); }
.rm-card:nth-child(2) .rm-card-accent { background:linear-gradient(90deg, var(--gold), #F59E0B); }
.rm-card:nth-child(3) .rm-card-accent { background:linear-gradient(90deg, var(--rose), #F97316); }
.rm-card:nth-child(4) .rm-card-accent { background:linear-gradient(90deg, #22C55E, var(--teal)); }
.rm-card:hover { border-color:var(--border-glow); transform:translateY(-2px); }
.rm-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; }
.rm-card-cat { font-size:8px; font-weight:800; color:var(--text-muted); letter-spacing:0.5px; }
.rm-card-pri { font-size:7px; font-weight:800; padding:2px 6px; border-radius:3px; letter-spacing:0.3px; }
.rm-card-pri.caution { background:var(--rose-dim); color:var(--rose); }
.rm-card-pri.active { background:rgba(76,219,196,0.06); color:var(--teal); }
.rm-card-pri.moderate { background:var(--violet-dim); color:var(--violet-bright); }
.rm-card strong { font-size:12px; display:block; margin-bottom:3px; }
.rm-card p { font-size:10px; color:var(--text-muted); line-height:1.4; margin-bottom:6px; }
.rm-card-schedule { display:flex; gap:10px; font-size:9px; color:var(--text-sec); font-weight:600; margin-bottom:8px; }
.rm-card-meter { height:3px; background:rgba(255,255,255,0.04); border-radius:2px; overflow:hidden; }
.rm-card-meter-fill { height:100%; border-radius:2px; background:linear-gradient(90deg, var(--teal), var(--gold)); width:var(--rm-w); transition:width 1.2s ease; }
.rm-schedule { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }
.rm-sch-day { background:var(--surface); border:1px solid var(--glass-border); border-radius:var(--radius-sm); padding:10px 6px; text-align:center; transition:all 0.2s; }
.rm-sch-day.active { border-color:var(--gold); background:rgba(224,165,38,0.04); }
.rm-sch-name { display:block; font-size:10px; font-weight:800; color:var(--text-sec); margin-bottom:4px; }
.rm-sch-act { display:block; font-size:14px; }

/* ═══════ REPORTS INFOGRAPHIC ═══════ */
/* ═══════ REPORTS — FEATURED ═══════ */
.rp-featured {
  position:relative; border-radius:var(--radius); overflow:hidden;
  background:linear-gradient(135deg, rgba(124,92,252,0.08), rgba(224,165,38,0.06));
  border:1px solid rgba(124,92,252,0.12); padding:28px 30px; margin-bottom:20px;
}
.rp-featured-glow {
  position:absolute; top:-40px; right:-40px; width:200px; height:200px;
  background:radial-gradient(circle, rgba(224,165,38,0.1), transparent 70%);
  pointer-events:none;
}
.rp-featured-content { display:flex; align-items:center; gap:24px; position:relative; z-index:1; }
.rp-featured-badge {
  position:absolute; top:-28px; left:-30px; padding:5px 18px; font-size:9px;
  font-weight:800; letter-spacing:1.2px; color:#0a0a14;
  background:linear-gradient(90deg, var(--gold), #ffdb70); border-radius:0 0 12px 0;
}
.rp-featured-icon { font-size:48px; flex-shrink:0; }
.rp-featured-info { flex:1; }
.rp-featured-info h3 { font-size:20px; font-weight:800; margin:0 0 6px; }
.rp-featured-desc { font-size:12px; color:var(--text-muted); line-height:1.6; margin:0 0 12px; max-width:480px; }
.rp-featured-stats { display:flex; gap:16px; align-items:center; margin-bottom:10px; }
.rp-stat {
  font-size:11px; color:var(--text-muted);
}
.rp-stat strong { color:var(--text); font-size:16px; font-weight:800; margin-right:3px; }
.rp-stat-badge {
  font-size:9px; font-weight:800; color:var(--teal);
  background:rgba(76,219,196,0.08); padding:4px 10px; border-radius:6px;
  border:1px solid rgba(76,219,196,0.1);
}
.rp-featured-tags { display:flex; flex-wrap:wrap; gap:6px; }
.rp-featured-tags span {
  font-size:9px; font-weight:600; color:var(--text-muted);
  background:rgba(255,255,255,0.03); padding:3px 10px; border-radius:10px;
  border:1px solid rgba(255,255,255,0.04);
}
.rp-gen-featured {
  min-width:180px; align-self:center; padding:14px 24px !important;
  font-size:13px !important; border-radius:12px !important;
  background:linear-gradient(135deg, var(--gold), #d4931a) !important;
  color:#0a0a14 !important; border:none !important; font-weight:800 !important;
  box-shadow:0 4px 24px rgba(224,165,38,0.25);
  transition:all 0.3s !important;
}
.rp-gen-featured:hover { transform:scale(1.05) !important; box-shadow:0 6px 32px rgba(224,165,38,0.35); }

/* ═══════ REPORTS — CARD GRID ═══════ */
.rp-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:14px; }
.rp-card-wide { grid-column:span 2; }
.rp-card {
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:20px 22px; position:relative;
  overflow:hidden; transition:all 0.3s; display:flex; align-items:flex-start; gap:16px;
}
.rp-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--gold), var(--teal)); opacity:0.6;
}
.rp-card:hover { border-color:var(--border-glow); transform:translateY(-3px); box-shadow:0 12px 40px rgba(0,0,0,0.25); }
.rp-card[data-accent="career"]::before { background:linear-gradient(90deg, #3b82f6, #8b5cf6); }
.rp-card[data-accent="love"]::before { background:linear-gradient(90deg, #ec4899, #f97316); }
.rp-card[data-accent="wealth"]::before { background:linear-gradient(90deg, #22c55e, #eab308); }
.rp-card[data-accent="health"]::before { background:linear-gradient(90deg, #14b8a6, #06b6d4); }
.rp-card[data-accent="forecast"]::before { background:linear-gradient(90deg, #f59e0b, #7c5cfc); }
.rp-card-icon { font-size:36px; flex-shrink:0; line-height:1; }
.rp-card-body { flex:1; min-width:0; }
.rp-card-body h4 { font-size:15px; font-weight:700; margin:0 0 4px; }
.rp-card-desc { font-size:11px; color:var(--text-muted); margin:0 0 10px; line-height:1.5; }
.rp-card-meta { display:flex; gap:10px; align-items:center; margin-bottom:8px; }
.rp-meta-pages { font-size:10px; font-weight:700; color:var(--gold); background:var(--gold-dim); padding:2px 8px; border-radius:4px; }
.rp-meta-badge { font-size:8px; font-weight:800; color:var(--teal); }
.rp-card-bar-wrap { display:flex; align-items:center; gap:8px; }
.rp-card-bar { flex:1; height:4px; background:rgba(255,255,255,0.04); border-radius:2px; overflow:hidden; }
.rp-card-bar-fill { height:100%; background:linear-gradient(90deg, var(--gold), #22C55E); border-radius:2px; width:var(--rp-w); transition:width 1s ease; }
.rp-card-pct { font-size:11px; font-weight:900; color:var(--gold); white-space:nowrap; }
.rp-gen-btn {
  padding:10px 18px; border-radius:var(--radius-sm);
  background:linear-gradient(135deg, rgba(224,165,38,0.08), rgba(76,219,196,0.06));
  border:1px solid rgba(224,165,38,0.1); color:var(--gold); font-size:11px;
  font-weight:800; cursor:pointer; font-family:inherit; transition:all 0.2s;
  white-space:nowrap; flex-shrink:0; align-self:center;
}
.rp-gen-btn:hover { background:linear-gradient(135deg, rgba(224,165,38,0.15), rgba(76,219,196,0.1)); border-color:rgba(224,165,38,0.2); transform:scale(1.03); }

/* Trust bar */
.rp-trust {
  display:flex; justify-content:center; gap:20px; padding:16px 0 4px;
  flex-wrap:wrap;
}
.rp-trust span {
  font-size:10px; font-weight:600; color:var(--text-muted); letter-spacing:0.3px;
  opacity:0.7;
}

/* ═══════ SETTINGS / PROFILE ═══════ */
.st-layout { display:grid; grid-template-columns:280px 1fr; gap:20px; }
.st-profile-card {
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:28px 20px; text-align:center;
  position:relative; overflow:hidden;
}
.st-profile-bg {
  position:absolute; top:0; left:0; right:0; height:80px;
  background:linear-gradient(135deg, rgba(124,92,252,0.15), rgba(224,165,38,0.1));
}
.st-avatar-wrap { position:relative; display:inline-block; margin-top:24px; margin-bottom:12px; }
.st-avatar {
  width:72px; height:72px; border-radius:50%;
  background:linear-gradient(135deg, var(--gold), var(--violet));
  display:flex; align-items:center; justify-content:center;
  font-size:24px; font-weight:800; color:#0a0a14;
  position:relative; z-index:1;
}
.st-avatar-ring {
  position:absolute; inset:-4px; border-radius:50%;
  border:2px solid rgba(224,165,38,0.3);
  animation:stRingPulse 3s ease-in-out infinite;
}
@keyframes stRingPulse { 0%,100%{ border-color:rgba(224,165,38,0.3); } 50%{ border-color:rgba(124,92,252,0.4); } }
.st-name { font-size:17px; font-weight:800; margin:4px 0 2px; }
.st-tagline { font-size:11px; color:var(--text-muted); margin:0 0 20px; }
.st-cosmic-score-wrap { position:relative; display:inline-block; width:80px; height:80px; margin-bottom:16px; }
.st-score-ring { width:80px; height:80px; }
.st-score-val { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.st-score-num { font-size:22px; font-weight:900; color:var(--gold); line-height:1; }
.st-score-label { font-size:8px; color:var(--text-muted); font-weight:600; letter-spacing:0.5px; margin-top:2px; }
.st-quick-stats { display:flex; justify-content:center; gap:16px; }
.st-qs { text-align:center; }
.st-qs-val { display:block; font-size:18px; font-weight:800; color:var(--gold); }
.st-qs-lbl { font-size:9px; color:var(--text-muted); font-weight:600; }

.st-right { display:flex; flex-direction:column; gap:16px; }
.st-section-card {
  background:var(--surface); border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:20px 22px;
}
.st-section-head { display:flex; align-items:center; gap:10px; margin-bottom:16px; }
.st-section-icon { font-size:20px; }
.st-section-head h3 { font-size:15px; font-weight:700; margin:0; }
.st-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.st-field { display:flex; flex-direction:column; gap:5px; }
.st-field label { font-size:11px; color:var(--text-muted); font-weight:600; }
.st-input {
  background:rgba(255,255,255,0.03); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:10px 14px; color:var(--text);
  font-size:13px; font-family:inherit; outline:none; transition:all 0.2s;
}
.st-input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(224,165,38,0.08); }
.st-save-btn {
  margin-top:16px; padding:11px 24px; border-radius:var(--radius-sm);
  background:linear-gradient(135deg, var(--gold), #d4931a);
  border:none; color:#0a0a14; font-size:12px; font-weight:800;
  cursor:pointer; font-family:inherit; transition:all 0.2s;
}
.st-save-btn:hover { transform:scale(1.03); box-shadow:0 4px 16px rgba(224,165,38,0.25); }

/* Subscription card */
.st-sub-card { border-color:rgba(224,165,38,0.12); }
.st-plan-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.st-plan-badge {
  padding:6px 16px; border-radius:20px; font-size:11px; font-weight:800;
  background:linear-gradient(135deg, var(--gold-dim), var(--violet-dim));
  color:var(--gold); border:1px solid rgba(224,165,38,0.12);
}
.st-plan-status { font-size:11px; font-weight:700; color:var(--teal); }
.st-plan-benefits { display:flex; flex-wrap:wrap; gap:10px; }
.st-plan-benefits span { font-size:10px; color:var(--text-muted); font-weight:600; }

/* Toggle switches */
.st-toggle-row {
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.03);
}
.st-toggle-row:last-child { border-bottom:none; }
.st-toggle-row > span { font-size:12px; color:var(--text); font-weight:500; }
.st-toggle { position:relative; display:inline-block; width:40px; height:22px; flex-shrink:0; }
.st-toggle input { opacity:0; width:0; height:0; }
.st-slider {
  position:absolute; inset:0; cursor:pointer; border-radius:22px;
  background:rgba(255,255,255,0.06); transition:0.3s;
}
.st-slider::before {
  content:''; position:absolute; height:16px; width:16px; left:3px; bottom:3px;
  background:var(--text-muted); border-radius:50%; transition:0.3s;
}
.st-toggle input:checked + .st-slider { background:linear-gradient(135deg, var(--gold), var(--violet)); }
.st-toggle input:checked + .st-slider::before { transform:translateX(18px); background:#fff; }

/* ═══════ SETTINGS ═══════ */
.da-settings-card {
  background:var(--surface); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  border-radius:var(--radius); padding:22px;
}
.da-settings-card h3 { font-size:15px; font-weight:700; margin-bottom:14px; }
.da-settings-row { display:flex; align-items:center; gap:14px; margin-bottom:10px; }
.da-settings-row label { font-size:12px; color:var(--text-muted); min-width:110px; font-weight:600; }
.da-set-input {
  flex:1; background:rgba(255,255,255,0.03); border:1px solid var(--glass-border);
  border-radius:var(--radius-sm); padding:10px 14px; color:var(--text); font-size:13px;
  font-family:inherit; outline:none; transition:all 0.2s;
}
.da-set-input:focus { border-color:var(--gold); }
.da-set-plan { display:flex; justify-content:space-between; align-items:center; }
.da-set-plan-badge {
  padding:6px 14px; border-radius:20px; font-size:11px; font-weight:800;
  background:linear-gradient(135deg, var(--gold-dim), var(--violet-dim));
  color:var(--gold); border:1px solid rgba(224,165,38,0.12);
}
.da-set-plan span:last-child { font-size:11px; color:var(--text-muted); }
.da-logout-btn {
  margin-top:18px; padding:12px; border-radius:var(--radius-sm); width:100%;
  background:rgba(239,68,68,0.06); border:1px solid rgba(239,68,68,0.08);
  color:var(--danger); font-size:13px; font-weight:700;
  cursor:pointer; font-family:inherit; transition:all 0.2s;
}
.da-logout-btn:hover { background:rgba(239,68,68,0.1); }

/* ═══════ RESPONSIVE ═══════ */
@media(max-width:1200px){
  .bc-layout{grid-template-columns:1fr 340px;}
}
@media(max-width:900px){
  .sidebar{transform:translateX(-100%);}
  .sidebar.open{transform:translateX(0);box-shadow:4px 0 40px rgba(0,0,0,0.6);}
  .dash-main{margin-left:0;}
  .dash-menu-btn{display:block;}
  .da-quick-grid{grid-template-columns:repeat(2,1fr);}
  .da-yogas,.da-remedies-grid,.da-reports-grid,.bc-dosha-grid{grid-template-columns:1fr;}
  .da-pt-header,.da-pt-row{grid-template-columns:1.5fr 1fr 1fr;}
  .da-pt-header span:nth-child(n+4),.da-pt-row span:nth-child(n+4){display:none;}

  .da-ss-form{grid-template-columns:1fr;}
  .bc-layout{grid-template-columns:1fr;gap:18px;}
  .bc-zodiac-ring{display:none;}
  .bc-right{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .bc-asc-badge{grid-column:span 2;}
  .bc-aspects-grid{grid-template-columns:1fr 1fr;}
  .bc-nk-traits{grid-template-columns:repeat(3,1fr);}
  .bc-ashtak-grid{grid-template-columns:repeat(6,1fr);height:90px;}
  .pr-overview{grid-template-columns:repeat(3,1fr);}
  .pr-main-layout{grid-template-columns:1fr;}
  .pr-content{border-right:none;border-bottom:1px solid var(--glass-border);}
  .tr-stats-row{grid-template-columns:1fr;}
  .tr-cards-grid{grid-template-columns:1fr 1fr;}
  .dsh-chapters{grid-template-columns:repeat(3,1fr);}
  .ss-layout{grid-template-columns:1fr;}
  .rm-stats{grid-template-columns:repeat(2,1fr);}
  .rm-grid{grid-template-columns:1fr;}
  .rp-grid{grid-template-columns:1fr;} .rp-card-wide{grid-column:span 1;}
  .rp-featured-content{flex-direction:column;text-align:center;}
  .rp-gen-featured{width:100%;}
  .st-layout{grid-template-columns:1fr;}
  .st-field-grid{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .da-quick-grid{grid-template-columns:1fr;}
  .da-summary{flex-direction:column;text-align:center;}
  .da-user-signs,.da-user-meta{justify-content:center;}
  .dash-panel{padding:18px 14px 32px;}
  .da-gen-input-row{flex-direction:column;}
  .da-planet-strip{grid-template-columns:1fr 1fr;}
  .bc-right{grid-template-columns:1fr;}
  .bc-asc-badge{grid-column:span 1;}
  .bc-aspects-grid{grid-template-columns:1fr;}
  .bc-nk-traits{grid-template-columns:repeat(2,1fr);}
  .bc-ashtak-grid{grid-template-columns:repeat(6,1fr);height:80px;}
  .pr-overview{grid-template-columns:repeat(2,1fr);}
  .tr-cards-grid{grid-template-columns:1fr;}
  .dsh-hero{flex-direction:column;text-align:center;}
  .dsh-chapters{grid-template-columns:repeat(2,1fr);}
  .rm-schedule{grid-template-columns:repeat(4,1fr);}
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 1 — ENTERPRISE UI/UX ENHANCEMENT LAYER
   Google · Apple · Netflix · Samsung design patterns
   ═══════════════════════════════════════════════════════════════ */

/* ─── 1. COSMIC GRID BACKGROUND — REMOVED for cleaner Apple aesthetic ─── */

/* ─── 2. SIDEBAR — DEEPER GLASS + AMBIENT GLOW ─── */
.sidebar {
  background:rgba(8,8,18,0.88) !important;
  backdrop-filter:blur(40px) saturate(1.3) !important;
  -webkit-backdrop-filter:blur(40px) saturate(1.3) !important;
}

/* ─── 3. TOPBAR — ANIMATED GRADIENT BOTTOM BORDER ─── */
.dash-topbar {
  background:rgba(6,6,11,0.75) !important;
  backdrop-filter:blur(24px) saturate(1.2) !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.2) !important;
}
.dash-topbar::after {
  content:''; position:absolute; bottom:-1px; left:0; right:0; height:1px;
  background:linear-gradient(90deg,
    transparent 5%,
    rgba(224,165,38,0.08) 50%,
    transparent 95%
  );
}

/* ─── 4. SECTION TITLES — Clean monochrome (Apple philosophy) ─── */
.da-section-title {
  color:rgba(240,240,245,0.3) !important;
  -webkit-text-fill-color:rgba(240,240,245,0.3) !important;
  background:none !important;
}
.da-section-title::after {
  background:linear-gradient(90deg, rgba(255,255,255,0.04), transparent 60%) !important;
}

/* ─── 5. UNIVERSAL CARD HOVER — LIFT + GLOW ─── */
.da-quick-card:hover {
  transform:translateY(-4px) scale(1.01) !important;
  box-shadow:0 16px 48px rgba(0,0,0,0.45), 0 0 24px rgba(224,165,38,0.06) !important;
}
.da-insight-card:hover {
  transform:translateX(4px) !important;
  box-shadow:0 8px 32px rgba(0,0,0,0.3) !important;
}
.bc-info-card:hover {
  transform:translateY(-3px) !important;
  box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 16px rgba(124,92,252,0.06) !important;
}
.tr-card:hover {
  transform:translateY(-3px) !important;
  box-shadow:0 12px 36px rgba(0,0,0,0.4) !important;
}
.rm-card:hover, .rp-card:hover {
  transform:translateY(-4px) !important;
  box-shadow:0 14px 40px rgba(0,0,0,0.4) !important;
}
.da-yoga-card:hover, .bc-dosha-card:hover, .bc-aspect-card:hover {
  transform:translateY(-2px) !important;
  box-shadow:0 8px 28px rgba(0,0,0,0.35) !important;
}
.dsh-chapter-card:hover {
  transform:translateY(-3px) !important;
  box-shadow:0 10px 30px rgba(0,0,0,0.35) !important;
}

/* ─── 6. STAGGER-IN ANIMATIONS ─── */
@keyframes staggerFadeUp {
  from { opacity:0; transform:translateY(16px) scale(0.98); }
  to { opacity:1; transform:translateY(0) scale(1); }
}
.da-quick-card { animation:staggerFadeUp 0.5s cubic-bezier(.16,1,.3,1) backwards; }
.da-quick-card:nth-child(1) { animation-delay:0.05s; }
.da-quick-card:nth-child(2) { animation-delay:0.1s; }
.da-quick-card:nth-child(3) { animation-delay:0.15s; }
.da-quick-card:nth-child(4) { animation-delay:0.2s; }
.da-quick-card:nth-child(5) { animation-delay:0.25s; }
.da-quick-card:nth-child(6) { animation-delay:0.3s; }

.da-planet { animation:staggerFadeUp 0.4s cubic-bezier(.16,1,.3,1) backwards; }
.da-planet:nth-child(1) { animation-delay:0.03s; }
.da-planet:nth-child(2) { animation-delay:0.06s; }
.da-planet:nth-child(3) { animation-delay:0.09s; }
.da-planet:nth-child(4) { animation-delay:0.12s; }
.da-planet:nth-child(5) { animation-delay:0.15s; }
.da-planet:nth-child(6) { animation-delay:0.18s; }
.da-planet:nth-child(7) { animation-delay:0.21s; }
.da-planet:nth-child(8) { animation-delay:0.24s; }
.da-planet:nth-child(9) { animation-delay:0.27s; }

/* ─── 7. SCORE RING ENHANCEMENT ─── */
.da-score-num {
  background:linear-gradient(135deg, #FFD700, #E0A526) !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important;
  background-clip:text !important;
  filter:drop-shadow(0 0 6px rgba(224,165,38,0.25));
}

/* ─── 8. QUICK ACTION ICON BOUNCE ─── */
.da-quick-card:hover .da-qc-icon {
  animation:iconBounce 0.5s cubic-bezier(.68,-.55,.27,1.55);
}
@keyframes iconBounce {
  0% { transform:scale(1); }
  40% { transform:scale(1.2); }
  60% { transform:scale(0.95); }
  100% { transform:scale(1.05); }
}

/* ─── 9. INSIGHT CARD ACCENT — ALWAYS VISIBLE ─── */
.da-insight-card::before { opacity:0.5 !important; width:3px !important; }
.da-insight-card:hover::before { opacity:1 !important; }
.da-insight-card:nth-child(1):hover::before { box-shadow:0 0 12px rgba(224,165,38,0.4); }
.da-insight-card:nth-child(2):hover::before { box-shadow:0 0 12px rgba(252,92,124,0.4); }
.da-insight-card:nth-child(3):hover::before { box-shadow:0 0 12px rgba(76,219,196,0.4); }
.da-insight-card:nth-child(4):hover::before { box-shadow:0 0 12px rgba(124,92,252,0.4); }

/* ─── 10. PLANET STRIP — HOVER GLOW ─── */
.da-planet:hover {
  box-shadow:0 6px 20px rgba(0,0,0,0.3), 0 0 8px rgba(224,165,38,0.08) !important;
}
.da-planet:hover .da-p-em {
  animation:planetOrbitBounce 0.6s ease;
}
@keyframes planetOrbitBounce {
  0% { transform:scale(1) rotate(0); }
  50% { transform:scale(1.15) rotate(10deg); }
  100% { transform:scale(1.05) rotate(0); }
}

/* ─── 11. NOTIFICATION BADGE — PREMIUM PULSE ─── */
.dash-notif-badge {
  animation:notifPulse 2s ease-in-out infinite !important;
}
@keyframes notifPulse {
  0%,100% { box-shadow:0 0 0 0 rgba(252,92,124,0.4); }
  50% { box-shadow:0 0 0 4px rgba(252,92,124,0.1); }
}

/* ─── 12. PANEL TRANSITIONS ─── */
.dash-panel.active {
  animation:panelEnter 0.45s cubic-bezier(.16,1,.3,1) forwards !important;
}
@keyframes panelEnter {
  from { opacity:0; transform:translateY(12px); }
  to { opacity:1; transform:translateY(0); }
}

/* ─── 13. NAV ACTIVE — GLOWING INDICATOR ─── */
.sb-link.active {
  box-shadow:inset 0 0 16px rgba(224,165,38,0.04);
}
.sb-link.active::before {
  height:22px !important;
  box-shadow:0 0 12px rgba(224,165,38,0.3), 0 0 24px rgba(224,165,38,0.15) !important;
}
.sb-link { transition:all 0.25s cubic-bezier(.4,0,.2,1) !important; }
.sb-link:hover { transform:translateX(2px); }

/* ─── 14. PLAN BADGE — PREMIUM SHIMMER ─── */
.sb-plan-card {
  border-color:rgba(224,165,38,0.15) !important;
  overflow:hidden;
}
.sb-plan-card::after {
  content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%;
  background:conic-gradient(from 180deg, transparent 0%, rgba(224,165,38,0.03) 10%, transparent 20%);
  animation:planOrbit 8s linear infinite;
}
@keyframes planOrbit { to { transform:rotate(360deg); } }

/* ─── 15. COSMIC ALERT — breathing removed, cleaner ─── */

/* ─── 16. SUMMARY CARD — PREMIUM BACKDROP ─── */
.da-summary {
  background:linear-gradient(135deg, rgba(16,16,28,0.7), rgba(16,16,28,0.5)) !important;
  backdrop-filter:blur(24px) saturate(1.2) !important;
}
.da-summary:hover {
  box-shadow:0 8px 40px rgba(0,0,0,0.3), 0 0 20px rgba(224,165,38,0.04);
}

/* ─── 17. SIGN CHIPS — SUBTLE GLOW ON HOVER ─── */
.da-sign-chip { transition:all 0.25s !important; }
.da-sign-chip:hover { transform:scale(1.05); }
.da-sign-chip.sun:hover { box-shadow:0 0 12px rgba(224,165,38,0.2); }
.da-sign-chip.moon:hover { box-shadow:0 0 12px rgba(124,92,252,0.2); }
.da-sign-chip.asc:hover { box-shadow:0 0 12px rgba(76,219,196,0.2); }

/* ─── 18. BUTTONS — SHINE SWEEP ON HOVER ─── */
.da-gen-btn, .rp-gen-btn { position:relative !important; overflow:hidden !important; }
.da-gen-btn::after, .rp-gen-btn::after {
  content:''; position:absolute; top:0; left:-100%; width:60%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,0.08), transparent);
  transition:left 0.5s ease;
}
.da-gen-btn:hover::after, .rp-gen-btn:hover::after { left:120%; }

/* ─── 19. TRANSIT METER — GLOWING TIP ─── */
.tr-meter-fill::after {
  content:''; position:absolute; right:0; top:-2px; bottom:-2px; width:4px;
  border-radius:50%; background:currentColor;
  box-shadow:0 0 8px currentColor;
  animation:meterPulse 2s ease-in-out infinite;
}
@keyframes meterPulse {
  0%,100% { opacity:0.5; }
  50% { opacity:1; }
}

/* ─── 20. DASHA CHAPTER CARDS — ACTIVE GLOW ─── */
.dsh-chapter-card.active {
  box-shadow:0 0 20px rgba(224,165,38,0.08), 0 4px 16px rgba(0,0,0,0.3) !important;
  position:relative;
}

/* ─── 21. AMBIENT SCROLLBAR ─── */
.dash-main::-webkit-scrollbar { width:5px; }
.dash-main::-webkit-scrollbar-track { background:transparent; }
.dash-main::-webkit-scrollbar-thumb {
  background:linear-gradient(180deg, rgba(224,165,38,0.12), rgba(124,92,252,0.12));
  border-radius:3px;
}
.dash-main::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(180deg, rgba(224,165,38,0.25), rgba(124,92,252,0.25));
}

/* ─── 22. FOCUS STATES — ACCESSIBILITY + BEAUTY ─── */
.da-gen-btn:focus-visible,
.rp-gen-btn:focus-visible,
.da-quick-card:focus-visible,
.sb-link:focus-visible {
  outline:2px solid var(--gold);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(224,165,38,0.15);
}

/* ─── TYPING CURSOR BLINK ─── */
@keyframes blink {
  0%, 100% { opacity:1; }
  50% { opacity:0; }
}

/* ═══════════════════════════════════════════════════════════════
   REFINEMENT — "Less is More" — Apple Design Philosophy
   Hide noisy colored top-border lines; reveal only on hover
   ═══════════════════════════════════════════════════════════════ */

/* Card top-border lines: invisible by default, subtle on hover */
.tr-card::before,
.pr-main::before,
.pr-ov-card::before,
.dsh-hero::before,
.dsh-chapter-card::before,
.ss-factors-card::before,
.ss-form-card::before,
.rm-featured::before,
.bc-summary-card::before,
.bc-info-card::before,
.bc-nakshatra-card::before,
.bc-aspect-card::before {
  opacity:0 !important;
  transition:opacity 0.3s ease !important;
}

/* Reveal subtly on hover */
.tr-card:hover::before,
.dsh-chapter-card:hover::before,
.bc-info-card:hover::before,
.bc-aspect-card:hover::before {
  opacity:0.5 !important;
}

/* These get revealed when active (not just hover) */
.pr-ov-card.active::before {
  opacity:0.6 !important;
}
.dsh-chapter-card.active::before {
  opacity:0.5 !important;
}

/* Keep summary and featured cards visible but softer */
.bc-summary-card::before,
.pr-main::before,
.dsh-hero::before,
.rm-featured::before,
.ss-factors-card::before,
.ss-form-card::before {
  opacity:0.25 !important;
}

/* Alert left bar — softer, not screaming */
.da-alert::before {
  opacity:0.4 !important;
  width:2px !important;
}

/* Transit timeline left bars — softer */
.tr-tl-item::before {
  opacity:0.4 !important;
  width:2px !important;
}

/* Insight card accents — visible but restrained */
.da-insight-card::before {
  opacity:0.25 !important;
  width:2px !important;
}
.da-insight-card:hover::before {
  opacity:0.7 !important;
}

/* Remove the insight card hover glow (too flashy) */
.da-insight-card:nth-child(1):hover::before,
.da-insight-card:nth-child(2):hover::before,
.da-insight-card:nth-child(3):hover::before,
.da-insight-card:nth-child(4):hover::before {
  box-shadow:none !important;
}

/* Override specific transit card variant top lines */
.tr-card.favorable::before,
.tr-card.neutral::before,
.tr-card.intense::before {
  opacity:0 !important;
  transition:opacity 0.3s ease !important;
}
.tr-card.favorable:hover::before,
.tr-card.neutral:hover::before,
.tr-card.intense:hover::before {
  opacity:0.4 !important;
}

/* Stat card top lines */
.tr-stat-card::before {
  opacity:0 !important;
}

/* Horizontal line separators — softer */
.da-panel-sub { border-bottom:none !important; }

/* ═══════════════════════════════════════════════════════════════
   GRADIENT PROVOCATION UPSELL — v2 (Half-reveal → Frost → Buy)
   ═══════════════════════════════════════════════════════════════ */

/* ─── SIDEBAR LOCK ─── */
.sb-lock {
  font-size:10px;
  margin-left:auto;
  opacity:0.5;
  flex-shrink:0;
}
.sb-link:hover .sb-lock { opacity:0.8; }

/* ─── GRADIENT GATE WRAPPER ─── */
.gfade-active { position:relative; overflow:hidden; }

.gfade-wrap {
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  z-index:40;
  pointer-events:none;
  display:flex;
  flex-direction:column;
}

/* ─── GRADIENT FROST LAYER ───
   Clear at top (var(--reveal)%), then gradual blur to opaque
   This uses a pseudo where backdrop-filter creates the blur,
   masked to only apply from the reveal point downward.          */
.gfade-frost {
  position:absolute;
  top:0; left:0; right:0; bottom:0;
  z-index:1;
  /* Aggressive gradient mask — blur starts fast */
  -webkit-mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    transparent calc(var(--reveal, 22%) - 8%),
    rgba(0,0,0,0.3) calc(var(--reveal, 22%) - 3%),
    rgba(0,0,0,0.7) var(--reveal, 22%),
    rgba(0,0,0,0.92) calc(var(--reveal, 22%) + 5%),
    rgba(0,0,0,1) calc(var(--reveal, 22%) + 10%)
  );
  mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    transparent calc(var(--reveal, 22%) - 8%),
    rgba(0,0,0,0.3) calc(var(--reveal, 22%) - 3%),
    rgba(0,0,0,0.7) var(--reveal, 22%),
    rgba(0,0,0,0.92) calc(var(--reveal, 22%) + 5%),
    rgba(0,0,0,1) calc(var(--reveal, 22%) + 10%)
  );
  backdrop-filter: blur(32px) saturate(0.15);
  -webkit-backdrop-filter: blur(32px) saturate(0.15);
  background: linear-gradient(
    to bottom,
    transparent calc(var(--reveal, 22%) - 3%),
    rgba(10,10,15,0.45) var(--reveal, 22%),
    rgba(10,10,15,0.75) calc(var(--reveal, 22%) + 6%),
    rgba(10,10,15,0.92) calc(var(--reveal, 22%) + 15%),
    rgba(10,10,15,0.97) 100%
  );
}

/* Subtle animated scan-line across the blur edge */
.gfade-frost::after {
  content:'';
  position:absolute;
  left:0; right:0;
  top: var(--reveal, 22%);
  height:2px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(224,165,38,0.15) 20%,
    rgba(124,92,252,0.2) 50%,
    rgba(224,165,38,0.15) 80%,
    transparent
  );
  animation:gfadeEdgeScan 4s ease-in-out infinite;
}
@keyframes gfadeEdgeScan {
  0%,100% { opacity:0.3; }
  50% { opacity:0.8; }
}

/* ─── CTA ZONE — Positioned in the frost area ─── */
.gfade-cta-zone {
  position:absolute;
  left:0; right:0;
  top: calc(var(--reveal, 22%) + 2%);
  bottom:0;
  z-index:5;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding:30px 24px 40px;
  pointer-events:auto;
}

/* ─── UPGRADE CARD ─── */
.gfade-card {
  position:relative;
  max-width:520px;
  width:100%;
  padding:28px 32px;
  background:linear-gradient(145deg,
    rgba(18,22,48,0.92),
    rgba(12,14,32,0.96)
  );
  border:1px solid rgba(224,165,38,0.12);
  border-radius:20px;
  box-shadow:
    0 24px 80px rgba(0,0,0,0.5),
    0 0 0 1px rgba(224,165,38,0.06),
    0 0 100px rgba(124,92,252,0.04);
  text-align:center;
  overflow:hidden;
  animation:gfadeCardIn 0.7s cubic-bezier(.22,1,.36,1);
}
@keyframes gfadeCardIn {
  from { opacity:0; transform:translateY(20px) scale(0.97); }
  to { opacity:1; transform:translateY(0) scale(1); }
}

/* Shimmer across card */
.gfade-shimmer {
  position:absolute;
  top:0; left:-100%; width:100%; height:100%;
  background:linear-gradient(105deg,
    transparent 30%,
    rgba(224,165,38,0.03) 45%,
    rgba(124,92,252,0.03) 55%,
    transparent 70%
  );
  animation:gfadeShimmer 5s ease-in-out infinite;
  pointer-events:none;
}
@keyframes gfadeShimmer {
  0% { left:-100%; }
  100% { left:200%; }
}

/* ─── Badge ─── */
.gfade-badge {
  display:inline-flex;
  align-items:center; gap:6px;
  padding:5px 14px;
  background:rgba(255,255,255,0.03);
  border:1px solid color-mix(in srgb, var(--g-color, #E0A526) 18%, transparent);
  border-radius:20px;
  font-size:11px; font-weight:700;
  color:var(--g-color, #E0A526);
  text-transform:uppercase;
  letter-spacing:0.6px;
  margin-bottom:14px;
}
.gfade-badge-dot {
  width:6px; height:6px;
  border-radius:50%;
  background:var(--g-color, #E0A526);
  box-shadow:0 0 8px var(--g-color, #E0A526);
  animation:gfadeDotPulse 2s ease-in-out infinite;
}
@keyframes gfadeDotPulse {
  0%,100% { opacity:0.5; transform:scale(1); }
  50% { opacity:1; transform:scale(1.3); }
}

/* ─── Title & Subtitle ─── */
.gfade-title {
  font-family:'Outfit',sans-serif;
  font-size:22px; font-weight:800;
  color:var(--text);
  margin:0 0 6px;
  line-height:1.25;
}
.gfade-sub {
  font-size:13px; color:var(--text-muted);
  margin:0 0 14px;
  line-height:1.5;
}

/* ─── Hook Line (the compelling fact) ─── */
.gfade-hook {
  padding:8px 16px;
  background:linear-gradient(135deg, rgba(224,165,38,0.05), rgba(124,92,252,0.04));
  border:1px solid rgba(224,165,38,0.08);
  border-radius:10px;
  margin-bottom:12px;
  font-size:12px; font-weight:600;
  color:var(--gold);
  line-height:1.4;
}

/* ─── Loss aversion ─── */
.gfade-loss {
  display:flex; align-items:center; justify-content:center; gap:6px;
  padding:8px 14px;
  background:rgba(252,92,124,0.04);
  border:1px solid rgba(252,92,124,0.08);
  border-radius:10px;
  margin-bottom:16px;
}
.gfade-loss-icon { font-size:13px; }
.gfade-loss span:last-child {
  font-size:11px; color:rgba(252,92,124,0.85);
  font-weight:500;
}

/* ─── CTA BUTTON — The money button ─── */
.gfade-btn {
  position:relative;
  display:block; width:100%;
  padding:15px 24px;
  background:linear-gradient(135deg, #E0A526, #C4841D);
  border:none; border-radius:13px;
  color:#0A0A0F;
  font-size:15px; font-weight:800;
  font-family:'Outfit',sans-serif;
  cursor:pointer;
  overflow:hidden;
  transition:all 0.3s ease;
  margin-bottom:14px;
  box-shadow:0 4px 20px rgba(224,165,38,0.15);
}
.gfade-btn:hover {
  transform:translateY(-2px);
  box-shadow:0 8px 35px rgba(224,165,38,0.3);
}
.gfade-btn:active { transform:translateY(0); }
.gfade-btn-shine {
  position:absolute;
  top:0; left:-100%; width:60%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  animation:gfadeBtnShine 3s ease-in-out infinite;
}
@keyframes gfadeBtnShine {
  0% { left:-100%; }
  100% { left:200%; }
}
.gfade-btn-text { position:relative; z-index:2; }

/* ─── Social proof row ─── */
.gfade-proof-row {
  display:flex; align-items:center; justify-content:center;
  gap:8px; flex-wrap:wrap;
  margin-bottom:8px;
}
.gfade-avatars { display:flex; }
.gfade-av {
  width:22px; height:22px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:9px; font-weight:800; color:#fff;
  margin-left:-6px;
  border:2px solid rgba(12,14,32,1);
}
.gfade-av:first-child { margin-left:0; }
.gfade-proof-text {
  font-size:11px; color:var(--text-muted);
}
.gfade-urgency-pill {
  display:inline-block;
  padding:3px 10px;
  background:rgba(224,165,38,0.06);
  border:1px solid rgba(224,165,38,0.12);
  border-radius:20px;
  font-size:10px; font-weight:700;
  color:var(--gold);
}

/* Compare link */
.gfade-compare {
  display:inline-block;
  font-size:11px; color:var(--text-muted);
  text-decoration:none;
  transition:color 0.2s;
}
.gfade-compare:hover {
  color:var(--gold);
}

/* ─── FLOATING UPGRADE BANNER (same as before) ─── */
.gate-floating {
  position:fixed;
  bottom:-80px; left:0; right:0;
  z-index:999;
  padding:0 20px;
  transition:bottom 0.5s cubic-bezier(.22,1,.36,1);
}
.gate-floating-visible { bottom:16px; }
.gate-floating.gate-dismissed { bottom:-80px !important; }

.gate-floating-content {
  max-width:900px;
  margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  gap:16px;
  padding:12px 20px;
  background:linear-gradient(135deg, rgba(20,24,50,0.97), rgba(12,16,35,0.99));
  border:1px solid rgba(224,165,38,0.15);
  border-radius:14px;
  box-shadow:0 -4px 40px rgba(0,0,0,0.4), 0 0 60px rgba(224,165,38,0.05);
  backdrop-filter:blur(20px);
}
.gate-floating-left {
  display:flex; align-items:center; gap:12px; flex:1;
}
.gate-floating-icon {
  font-size:20px;
  background:linear-gradient(135deg, rgba(224,165,38,0.12), rgba(124,92,252,0.08));
  padding:8px; border-radius:10px; flex-shrink:0;
}
.gate-floating-left strong {
  display:block;
  font-size:13px; color:var(--text);
  font-family:'Outfit',sans-serif;
}
.gate-floating-sub {
  display:block;
  font-size:11px; color:var(--text-muted); margin-top:2px;
}
.gate-floating-right {
  display:flex; align-items:center; gap:10px; flex-shrink:0;
}
.gate-floating-btn {
  padding:10px 20px;
  background:linear-gradient(135deg, #E0A526, #C4841D);
  border:none; border-radius:10px;
  color:#0A0A0F;
  font-size:12px; font-weight:800;
  font-family:'Outfit',sans-serif;
  cursor:pointer; white-space:nowrap;
  transition:all 0.3s ease;
}
.gate-floating-btn:hover {
  transform:translateY(-1px);
  box-shadow:0 6px 20px rgba(224,165,38,0.3);
}
.gate-floating-close {
  background:none; border:none;
  color:var(--text-muted); font-size:14px;
  cursor:pointer; padding:4px 8px;
  opacity:0.5; transition:opacity 0.2s;
}
.gate-floating-close:hover { opacity:1; }

/* ─── RESPONSIVE ─── */
@media (max-width:768px){
  .gfade-card { padding:20px 16px; }
  .gfade-title { font-size:18px; }
  .gfade-cta-zone { padding:20px 12px 30px; }
  .gate-floating-content { flex-direction:column; text-align:center; padding:16px; }
  .gate-floating-left { flex-direction:column; text-align:center; }
  .gate-floating-right { width:100%; justify-content:center; }
}

/* ═══════ LIFE CONTROL CENTER TAGLINE ═══════ */
.da-lcc-tagline {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  margin-bottom: 20px;
  background: linear-gradient(135deg, rgba(124,92,252,0.06), rgba(76,219,196,0.04));
  border: 1px solid rgba(124,92,252,0.1);
  border-radius: var(--radius);
  animation: fadeUp 0.5s ease;
}
.da-lcc-icon {
  font-size: 20px;
  animation: float 3s ease-in-out infinite;
}
.da-lcc-text {
  font-size: 14px;
  font-weight: 800;
  background: linear-gradient(90deg, var(--violet-bright), var(--teal), var(--gold));
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gradientShift 5s ease infinite;
}

/* ═══════ LIFE TRACKER DASHBOARD ═══════ */
.lt-tracker-form {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: var(--radius);
  padding: 20px;
  margin-bottom: 20px;
}
.lt-form-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 16px;
}
.lt-slider-group {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 16px;
}
.lt-slider-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.lt-slider-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--text-sec);
  min-width: 80px;
}
.lt-slider-input {
  flex: 1;
  appearance: none;
  -webkit-appearance: none;
  height: 4px;
  border-radius: 2px;
  background: rgba(255,255,255,0.06);
  outline: none;
}
.lt-slider-input::-webkit-slider-thumb {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--violet);
  cursor: pointer;
  transition: transform 0.15s ease;
}
.lt-slider-input::-webkit-slider-thumb:hover {
  transform: scale(1.2);
}
.lt-slider-val {
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  min-width: 24px;
  text-align: right;
}
.lt-submit-btn {
  width: 100%;
  padding: 12px;
  border-radius: var(--radius-sm);
  border: none;
  background: linear-gradient(135deg, var(--violet), var(--teal));
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
}
.lt-submit-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(124,92,252,0.25);
}

.lt-insights-section {
  margin-top: 24px;
}
.lt-insight-card {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  padding: 14px 16px;
  margin-bottom: 10px;
  transition: border-color 0.2s ease;
}
.lt-insight-card:hover {
  border-color: rgba(124,92,252,0.15);
}
.lt-insight-type {
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 2px 8px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 6px;
}
.lt-insight-type.pattern { background: rgba(124,92,252,0.1); color: var(--violet-bright); }
.lt-insight-type.transit_impact { background: rgba(224,165,38,0.1); color: var(--gold); }
.lt-insight-type.prediction { background: rgba(76,219,196,0.1); color: var(--teal); }
.lt-insight-type.recommendation { background: rgba(34,197,94,0.1); color: var(--success); }
.lt-insight-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 4px;
}
.lt-insight-desc {
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.5;
}
