/* ReviewHive — styles.css */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --black:#111318;--white:#faf9f6;--cream:#F0EEE9;--cream2:#e8e4db;
  --gold:#C9A84C;--gold-lt:#e8d5a3;--gold-dk:#a8873a;
  --gray:#888580;--gray-lt:#d4d0c8;--text:#1c1a17;--text2:#6b6860;
  --green:#3a7d52;--red:#b94040;
}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden}

/* ══ KEYFRAMES ══ */
@keyframes lp-fadeUp  { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
@keyframes lp-fadeIn  { from{opacity:0} to{opacity:1} }
/* marqueeRun keyframe removed with proof strip */
@keyframes dashFadeUp  { from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:translateY(0)} }
@keyframes dashSlideIn { from{opacity:0;transform:translateX(-14px)} to{opacity:1;transform:translateX(0)} }
@keyframes dashPulse   { 0%,100%{opacity:1} 50%{opacity:0.4} }
@keyframes spin        { to{transform:rotate(360deg)} }
@keyframes numberCount { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@keyframes pillDrop    { from{opacity:0;transform:translate(-50%,-20px)} to{opacity:1;transform:translate(-50%,0)} }
@keyframes panelFadeIn { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:translateY(0)} }
@keyframes goldFlash   { 0%{border-color:rgba(201,168,76,0.6);box-shadow:0 0 12px rgba(201,168,76,0.3)} 100%{border-color:rgba(255,255,255,0.08);box-shadow:none} }
@keyframes reviewCardIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@keyframes alertSlideDown { from{opacity:0;transform:translateY(-10px)} to{opacity:1;transform:translateY(0)} }
.dash-review-animated { animation: reviewCardIn 0.35s ease both; }
@keyframes recCardIn { from{opacity:0;transform:translateX(-8px)} to{opacity:1;transform:translateX(0)} }
@keyframes headerCardIn { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:translateY(0)} }
@keyframes buttonPulse { 0%,100%{box-shadow:0 0 0 0 rgba(201,168,76,0.4)} 50%{box-shadow:0 0 0 8px rgba(201,168,76,0)} }
.ai-insights-header-card { animation: headerCardIn 0.25s cubic-bezier(0.16,1,0.3,1) both; }
#ai-run-btn.analyzing { animation: buttonPulse 1s ease-in-out infinite; }

/* ══ SCROLL REVEAL ══ */
/* CSS-only fallback: if JS fails, content fades in after 1.2s */
@keyframes revealFallback { to{opacity:1;transform:translateY(0)} }
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.65s ease,transform 0.65s ease;animation:revealFallback 0.6s ease 1.2s forwards}
.reveal.visible{opacity:1;transform:translateY(0);animation:none}
.reveal-stat{opacity:0;transform:translateY(16px);transition:opacity 0.55s ease,transform 0.55s ease;animation:revealFallback 0.5s ease 1s forwards}
.reveal-stat.visible{opacity:1;transform:translateY(0);animation:none}
.reveal-stat:nth-child(2){transition-delay:0.12s}
.reveal-stat:nth-child(3){transition-delay:0.24s}
/* Stagger utilities for sequential reveals */
.reveal-delay-1{transition-delay:0.1s}
.reveal-delay-2{transition-delay:0.2s}
.reveal-delay-3{transition-delay:0.3s}

/* ══ LANDING PAGE PILL NAV ══ */
.lp-pill-nav{
  display:flex;align-items:center;justify-content:space-between;
  max-width:860px;
  padding:9px 14px 9px 18px;
  border-radius:100px;
  background:rgba(255,255,255,0.07);
  border:0.5px solid rgba(255,255,255,0.13);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.lp-pill-fixed{
  position:fixed;top:12px;left:50%;transform:translateX(-50%) translateY(0);
  z-index:1000;
  opacity:1;pointer-events:all;
  transition:transform 0.3s ease, opacity 0.3s ease;
}
.lp-pill-left{display:flex;align-items:center;gap:8px}
.lp-pill-hex{flex-shrink:0}
.lp-pill-brand{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;color:var(--white);letter-spacing:-0.02em}
.lp-pill-brand span{color:var(--gold)}
.lp-pill-center{display:flex;align-items:center;gap:2px}
.lp-pill-center a{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;color:rgba(255,255,255,0.55);text-decoration:none;transition:color 0.2s;padding:6px 12px;white-space:nowrap}
.lp-pill-center a:hover{color:var(--white)}
.lp-pill-right{display:flex;align-items:center;gap:10px;flex-shrink:0;white-space:nowrap}
.lp-pill-signin{
  font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;
  color:rgba(255,255,255,0.55);background:none;border:none;
  cursor:pointer;padding:8px 14px;transition:color 0.2s;
}
.lp-pill-signin:hover{color:var(--white)}
.lp-pill-cta{
  font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700;
  background:var(--gold);color:#0a0a0e;border:none;
  padding:9px 22px;border-radius:100px;cursor:pointer;
  transition:all 0.2s;
}
.lp-pill-cta:hover{background:#E8C96A;transform:translateY(-1px)}

/* ── OLD STICKY NAV (removed — now using .lp-pill-fixed) ── */

/* MOBILE NAV TOGGLE */
.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;color:var(--white);flex-shrink:0}
.mobile-menu-toggle svg{width:22px;height:22px;display:block}
.mobile-menu-toggle .icon-close{display:none}
.mobile-menu-toggle.open .icon-menu{display:none}
.mobile-menu-toggle.open .icon-close{display:block}

/* ══ HERO ══ */
@keyframes scrollDot { 0%,100%{opacity:0.3;transform:translateY(0)} 50%{opacity:1;transform:translateY(8px)} }
/* Aurora — real aurora borealis effect (novaecho-inspired, ReviewHive gold palette) */
/* Large flowing curtains of light, slow organic movement, layered depth */
@keyframes auroraCurtain1{
  0%{transform:translateX(-5%) translateY(0) scaleX(1) scaleY(1) rotate(-2deg);opacity:0.6}
  25%{transform:translateX(8%) translateY(-15px) scaleX(1.1) scaleY(1.2) rotate(0deg);opacity:0.85}
  50%{transform:translateX(-3%) translateY(5px) scaleX(0.95) scaleY(0.9) rotate(1deg);opacity:0.5}
  75%{transform:translateX(10%) translateY(-10px) scaleX(1.15) scaleY(1.15) rotate(-1deg);opacity:0.75}
  100%{transform:translateX(-5%) translateY(0) scaleX(1) scaleY(1) rotate(-2deg);opacity:0.6}
}
@keyframes auroraCurtain2{
  0%{transform:translateX(5%) translateY(0) scaleY(1);opacity:0.5}
  33%{transform:translateX(-8%) translateY(-20px) scaleY(1.4);opacity:0.8}
  66%{transform:translateX(12%) translateY(10px) scaleY(0.8);opacity:0.45}
  100%{transform:translateX(5%) translateY(0) scaleY(1);opacity:0.5}
}
@keyframes auroraCurtain3{
  0%{transform:translateX(0%) scaleX(1) scaleY(1);opacity:0.4}
  50%{transform:translateX(-6%) scaleX(1.2) scaleY(1.5);opacity:0.7}
  100%{transform:translateX(0%) scaleX(1) scaleY(1);opacity:0.4}
}
@keyframes auroraPulse{
  0%{opacity:0.3;transform:scale(1)}
  50%{opacity:0.6;transform:scale(1.08)}
  100%{opacity:0.3;transform:scale(1)}
}
@keyframes auroraRibbon{
  0%{transform:translateX(-80%) skewX(-8deg);opacity:0}
  15%{opacity:0.6}
  85%{opacity:0.5}
  100%{transform:translateX(120%) skewX(8deg);opacity:0}
}
@keyframes badgePulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(201,168,76,0.4)}50%{opacity:0.7;box-shadow:0 0 0 4px rgba(201,168,76,0)}}

.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 2.5rem 4rem;position:relative;overflow:hidden;background:#0a0a0e}
/* Aurora container — covers full hero, no hue-shift (natural gold palette) */
.aurora-container{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}

/* Large flowing curtains — like real aurora borealis ribbons */
.aurora-band{position:absolute;border-radius:40% 60% 50% 50%}

/* Curtain 1 — primary wide gold glow, top-center, slow drift */
.aurora-band-1{
  width:120%;height:450px;top:-10%;left:-10%;
  background:radial-gradient(ellipse 100% 80% at 50% 30%, rgba(201,168,76,0.45) 0%, rgba(160,112,32,0.2) 40%, rgba(92,58,8,0.05) 70%, transparent 100%);
  filter:blur(80px);
  animation:auroraCurtain1 12s ease-in-out infinite;
}

/* Curtain 2 — warm amber, offset right, faster */
.aurora-band-2{
  width:100%;height:380px;top:5%;left:15%;
  background:radial-gradient(ellipse 90% 70% at 60% 40%, rgba(232,201,106,0.4) 0%, rgba(184,131,42,0.18) 45%, transparent 80%);
  filter:blur(70px);
  animation:auroraCurtain2 9s ease-in-out infinite;
}

/* Curtain 3 — deep amber, left side, slow pulse */
.aurora-band-3{
  width:90%;height:350px;top:15%;left:-15%;
  background:radial-gradient(ellipse 80% 75% at 35% 50%, rgba(180,130,30,0.35) 0%, rgba(120,70,10,0.15) 50%, transparent 85%);
  filter:blur(90px);
  animation:auroraCurtain3 15s ease-in-out infinite;
}

/* Soft ambient glow — pale gold, large, very blurred */
.aurora-band-4{
  width:140%;height:500px;top:-5%;left:-20%;
  background:radial-gradient(ellipse 100% 60% at 50% 20%, rgba(240,210,80,0.2) 0%, rgba(201,168,76,0.08) 50%, transparent 80%);
  filter:blur(120px);
  animation:auroraPulse 8s ease-in-out infinite;
}

/* Ribbon of light — thin bright streak that sweeps across slowly */
.aurora-shimmer{
  position:absolute;top:8%;width:60%;height:100px;
  background:linear-gradient(90deg, transparent 0%, rgba(255,235,140,0.12) 25%, rgba(232,201,106,0.2) 50%, rgba(255,235,140,0.12) 75%, transparent 100%);
  filter:blur(15px);
  animation:auroraRibbon 6s ease-in-out infinite;
}
.hero-overlay{position:absolute;inset:0;background:rgba(10,10,14,0.55);z-index:1;pointer-events:none}
.hero-content{position:relative;z-index:2;text-align:center;max-width:800px}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 16px;border-radius:100px;
  background:rgba(201,168,76,0.1);border:1px solid rgba(201,168,76,0.25);
  font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:rgba(201,168,76,0.85);
  margin-bottom:1.5rem;opacity:0;animation:lp-fadeUp 0.6s ease forwards 0.05s;
}
.hero-badge-dot{
  width:7px;height:7px;border-radius:50%;
  background:#C9A84C;flex-shrink:0;
  animation:badgePulse 2s ease-in-out infinite;
}
.hero-headline{font-size:clamp(42px,7vw,82px);font-weight:800;line-height:1.04;letter-spacing:-0.04em;color:var(--white);margin-bottom:1.5rem;opacity:0;animation:lp-fadeUp 0.7s ease forwards 0.15s;font-family:'Playfair Display',serif}
.gold-gradient{background:linear-gradient(135deg,#e8d5a3,#c9a84c,#a8873a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-sub{font-size:17px;font-weight:400;line-height:1.7;color:rgba(255,255,255,0.5);max-width:500px;margin:0 auto 2.5rem;opacity:0;animation:lp-fadeUp 0.7s ease forwards 0.3s;font-family:'DM Sans',sans-serif}
.hero-actions{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;opacity:0;animation:lp-fadeUp 0.7s ease forwards 0.4s}
.btn-pill-outline{padding:14px 32px;border-radius:100px;font-size:15px;font-weight:600;color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.2);background:transparent;text-decoration:none;transition:all 0.25s;cursor:pointer;font-family:'DM Sans',sans-serif}
.btn-pill-outline:hover{border-color:rgba(255,255,255,0.5);color:var(--white);transform:translateY(-2px)}
.hero-stats{display:flex;gap:2rem;align-items:center;justify-content:center;margin-top:3.5rem;opacity:0;animation:lp-fadeUp 0.7s ease forwards 0.55s}
.hero-stat{text-align:center}
.hero-stat-num{font-size:28px;font-weight:800;color:var(--white);letter-spacing:-0.03em;font-family:'DM Sans',sans-serif;display:block}
.hero-stat-label{font-size:12px;color:rgba(255,255,255,0.4);margin-top:2px;display:block;font-family:'DM Sans',sans-serif}
.hero-stat-divider{width:1px;height:32px;background:rgba(255,255,255,0.12)}

.hero-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:2}
.scroll-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:scrollDot 2s ease infinite}

/* (Proof strip / marquee removed) */

/* ══ SHARED SECTION STYLES ══ */
.btn-text{color:var(--text2);font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color 0.2s}
.btn-text:hover{color:var(--text)}
section{padding:100px 2.5rem}
.section-inner{max-width:1060px;margin:0 auto}
.section-tag{font-size:11px;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:block}
.section-tag-light{color:var(--gold)}
.section-title{font-size:clamp(28px,4vw,44px);font-weight:800;letter-spacing:-0.04em;line-height:1.12;color:var(--black);margin-bottom:1.25rem;font-family:'Plus Jakarta Sans',sans-serif}
.section-title-white{color:var(--white)}
.section-sub{font-size:16px;font-weight:400;line-height:1.7;color:var(--text2);max-width:520px}
.section-sub-white{color:rgba(255,255,255,0.45)}

/* ══ HOW IT WORKS V2 ══ */
.how-v2{background:#ffffff;position:relative}
.how-v2-grid{display:flex;align-items:stretch;gap:0;margin-top:3.5rem}
.how-v2-step{
  flex:1;text-align:center;padding:2.5rem 2rem;position:relative;
  background:#ffffff;border:1px solid rgba(0,0,0,0.06);border-radius:20px;
  transition:all 0.3s;
}
.how-v2-step:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(0,0,0,0.08);border-color:rgba(201,168,76,0.3)}
.how-v2-num{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  font-family:'Playfair Display',serif;font-size:48px;font-weight:800;
  color:rgba(201,168,76,0.12);line-height:1;pointer-events:none;
}
.how-v2-icon-box{
  width:56px;height:56px;border-radius:16px;
  background:rgba(201,168,76,0.1);border:1px solid rgba(201,168,76,0.2);
  display:inline-flex;align-items:center;justify-content:center;
  color:#A07828;margin:0 auto 1.25rem;transition:all 0.3s;
}
.how-v2-step:hover .how-v2-icon-box{background:#C9A84C;color:#0a0a0e;border-color:#C9A84C}
.how-v2-title{font-family:'DM Sans',sans-serif;font-size:17px;font-weight:700;color:#0a0a0e;margin-bottom:0.75rem}
.how-v2-body{font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.75;color:#6b6860}
.how-v2-connector{display:flex;align-items:center;justify-content:center;width:48px;flex-shrink:0}
.how-v2-connector-line{width:100%;height:2px;background:linear-gradient(90deg,rgba(201,168,76,0.15),rgba(201,168,76,0.4),rgba(201,168,76,0.15));border-radius:2px}

/* (Old services section removed - replaced by What's Included) */

/* ══ ANIMATED DASHBOARD REEL ══ */
.reel-section{background:#ffffff;padding:100px 2.5rem;overflow:hidden}
.reel-stage{
  position:relative;margin-top:3rem;
  background:#0a0a0e;border-radius:20px;overflow:hidden;
  max-width:940px;margin-left:auto;margin-right:auto;
  box-shadow:0 24px 80px rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.06);
  min-height:480px;
}
.reel-controls{
  display:flex;align-items:center;gap:12px;
  padding:16px 24px;border-bottom:1px solid rgba(255,255,255,0.06);
}
.reel-dot{
  width:10px;height:10px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,0.15);transition:all 0.3s;
}
.reel-dot.active{background:#C9A84C;box-shadow:0 0 8px rgba(201,168,76,0.4)}
.reel-tabs{display:flex;gap:4px;margin-left:auto}
.reel-tab{
  font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;
  color:rgba(255,255,255,0.4);background:none;border:none;cursor:pointer;
  padding:6px 14px;border-radius:100px;transition:all 0.2s;
}
.reel-tab.active{color:#C9A84C;background:rgba(201,168,76,0.1)}
.reel-tab:hover{color:rgba(255,255,255,0.7)}

/* Frames */
@keyframes fItemUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes fItemLeft{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
@keyframes fItemRight{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
@keyframes fItemScale{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}
@keyframes fBarFill{from{width:0}to{width:var(--bar-w)}}
@keyframes riskPulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(248,113,113,0.4)}50%{box-shadow:0 0 0 6px rgba(248,113,113,0)}}
@keyframes typingDot{0%,100%{opacity:1}50%{opacity:0.3}}

.reel-frame{display:none;padding:20px 24px 24px}
.reel-frame.active{display:block}

/* Children invisible by default inside active frame, animated in by .frame-active */
.reel-frame.active .rf-pill-nav,.reel-frame.active .rf-alert,.reel-frame.active .rf-greeting,
.reel-frame.active .rf1-score-card,.reel-frame.active .rf1-kpi-grid,.reel-frame.active .rf1-kpi,
.reel-frame.active .rf1-sentiment,.reel-frame.active .rf1-sent-row,.reel-frame.active .rf1-topics,.reel-frame.active .rf1-topic,
.reel-frame.active .rf2-review-card,.reel-frame.active .rf2-review-header,.reel-frame.active .rf2-review-text,
.reel-frame.active .rf2-response-area,.reel-frame.active .rf2-response-label,
.reel-frame.active .rf3-header-card,.reel-frame.active .rf3-risk-alert,.reel-frame.active .rf3-compare,
.reel-frame.active .rf3-compare-cell,.reel-frame.active .rf3-recs,.reel-frame.active .rf3-rec-item,
.reel-frame.active .rf3-topics-bar,.reel-frame.active .rf3-topic-row,.reel-frame.active .rf3-analyze-btn{opacity:0}

/* ── Frame 1 (Dashboard) animations ── */
.frame-active .rf1-score-card{animation:fItemScale 0.4s ease both;animation-delay:0.15s}
.frame-active .rf1-kpi-grid{animation:fItemUp 0.35s ease both;animation-delay:0.25s}
.frame-active .rf1-kpi{animation:fItemUp 0.35s ease both}
.frame-active .rf1-kpi:nth-child(1){animation-delay:0.3s}
.frame-active .rf1-kpi:nth-child(2){animation-delay:0.4s}
.frame-active .rf1-kpi:nth-child(3){animation-delay:0.5s}
.frame-active .rf1-kpi:nth-child(4){animation-delay:0.6s}
.frame-active .rf1-sentiment{animation:fItemUp 0.35s ease both;animation-delay:0.55s}
.frame-active .rf1-sent-row{animation:fItemLeft 0.3s ease both}
.frame-active .rf1-sent-row:nth-child(2){animation-delay:0.6s}
.frame-active .rf1-sent-row:nth-child(3){animation-delay:0.7s}
.frame-active .rf1-sent-row:nth-child(4){animation-delay:0.8s}
.frame-active .rf1-topics{animation:fItemUp 0.3s ease both;animation-delay:0.75s}
.frame-active .rf1-topic{animation:fItemScale 0.25s ease both}
.frame-active .rf1-topic:nth-child(1){animation-delay:0.8s}
.frame-active .rf1-topic:nth-child(2){animation-delay:0.88s}
.frame-active .rf1-topic:nth-child(3){animation-delay:0.96s}
.frame-active .rf1-topic:nth-child(4){animation-delay:1.04s}
.frame-active .rf-pill-nav{animation:fItemUp 0.25s ease both;animation-delay:0s}
.frame-active .rf-alert{animation:fItemUp 0.3s ease both;animation-delay:0.05s}
.frame-active .rf-greeting{animation:fItemUp 0.3s ease both;animation-delay:0.1s}

/* ── Frame 2 (AI Response) animations ── */
.frame-active .rf2-review-card{animation:fItemLeft 0.4s ease both;animation-delay:0.15s}
.frame-active .rf2-review-header{animation:fItemUp 0.3s ease both;animation-delay:0.25s}
.frame-active .rf2-review-text{animation:fItemUp 0.3s ease both;animation-delay:0.35s}
.frame-active .rf2-response-area{animation:fItemRight 0.4s ease both;animation-delay:0.2s}
.frame-active .rf2-response-label{animation:fItemUp 0.25s ease both;animation-delay:0.35s}
.frame-active .rf2-actions{transition:opacity 0.4s ease}

/* ── Frame 3 (AI Insights) animations ── */
.frame-active .rf3-header-card{animation:fItemUp 0.35s ease both;animation-delay:0.1s}
.frame-active .rf3-risk-alert{animation:fItemUp 0.35s ease both;animation-delay:0.2s}
.frame-active .rf3-risk-alert.risk-glow{animation:riskPulseGlow 2s ease-in-out infinite;animation-delay:0.6s}
.frame-active .rf3-compare{animation:fItemLeft 0.35s ease both;animation-delay:0.3s}
.frame-active .rf3-compare-cell{animation:fItemUp 0.3s ease both}
.frame-active .rf3-compare-cell:nth-child(1){animation-delay:0.4s}
.frame-active .rf3-compare-cell:nth-child(2){animation-delay:0.48s}
.frame-active .rf3-compare-cell:nth-child(3){animation-delay:0.56s}
.frame-active .rf3-compare-cell:nth-child(4){animation-delay:0.64s}
.frame-active .rf3-compare-cell:nth-child(5){animation-delay:0.72s}
.frame-active .rf3-recs{animation:fItemRight 0.35s ease both;animation-delay:0.35s}
.frame-active .rf3-rec-item{animation:fItemLeft 0.3s ease both}
.frame-active .rf3-rec-item:nth-child(1){animation-delay:0.45s}
.frame-active .rf3-rec-item:nth-child(2){animation-delay:0.55s}
.frame-active .rf3-rec-item:nth-child(3){animation-delay:0.65s}
.frame-active .rf3-topics-bar{animation:fItemUp 0.35s ease both;animation-delay:0.4s}
.frame-active .rf3-topic-row{animation:fItemLeft 0.3s ease both}
.frame-active .rf3-topic-row:nth-child(1){animation-delay:0.5s}
.frame-active .rf3-topic-row:nth-child(2){animation-delay:0.58s}
.frame-active .rf3-topic-row:nth-child(3){animation-delay:0.66s}
.frame-active .rf3-topic-row:nth-child(4){animation-delay:0.74s}
.frame-active .rf3-tbar-fill{width:0;transition:width 0.8s ease}
.frame-active .rf3-analyze-btn{animation:fItemScale 0.3s ease both;animation-delay:0.2s}

/* Shared pill nav inside frames */
.rf-pill-nav{
  display:flex;gap:6px;margin-bottom:16px;
  padding:4px;background:rgba(255,255,255,0.04);
  border-radius:100px;width:fit-content;
}
.rf-pill-item{
  font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;
  color:rgba(255,255,255,0.35);padding:5px 12px;border-radius:100px;
}
.rf-pill-item.active{color:#C9A84C;background:rgba(201,168,76,0.12)}

/* Alert bar */
.rf-alert{
  display:flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:10px;margin-bottom:12px;
  background:rgba(248,113,113,0.08);border:1px solid rgba(201,168,76,0.45);
  font-size:11px;color:rgba(248,113,113,0.8);
}
.rf-alert-dot{width:6px;height:6px;border-radius:50%;background:#f87171;flex-shrink:0}
.rf-alert-action{margin-left:auto;color:#f87171;font-weight:700;font-size:10px}
.rf-greeting{font-size:18px;font-weight:700;color:#fff;margin-bottom:14px;font-family:'DM Sans',sans-serif}

/* Frame 1: Dashboard */
.rf1-layout{display:grid;grid-template-columns:200px 1fr;gap:16px}
.rf1-left{display:flex;flex-direction:column;align-items:center}
.rf1-score-card{
  background:linear-gradient(135deg,#161412,#1a1714);
  border:1px solid rgba(201,168,76,0.2);border-radius:16px;
  padding:20px;text-align:center;position:relative;width:100%;
}
.rf1-score-label{font-size:9px;font-weight:700;letter-spacing:0.12em;color:rgba(255,255,255,0.35);margin-bottom:8px;text-transform:uppercase}
.rf1-ring{width:120px;height:120px;display:block;margin:0 auto;transform:rotate(-90deg)}
.rf1-ring-fill{transition:stroke-dashoffset 1.8s cubic-bezier(0.4,0,0.2,1)}
.rf1-score-num{font-family:'DM Sans',sans-serif;font-size:32px;font-weight:800;color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-top:4px}
.rf1-score-sub{font-size:10px;color:rgba(255,255,255,0.3);margin-top:-4px}
.rf1-right{display:flex;flex-direction:column;gap:12px}
.rf1-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.rf1-kpi{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;padding:10px 8px;text-align:center;
}
.rf1-kpi-val{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:800;color:#fff;display:block}
.rf1-kpi-label{font-size:9px;color:rgba(255,255,255,0.35);text-transform:uppercase;letter-spacing:0.06em;margin-top:2px;display:block}
.rf1-sentiment{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;padding:12px;
}
.rf1-sent-label{font-size:9px;font-weight:700;letter-spacing:0.1em;color:rgba(255,255,255,0.35);margin-bottom:8px;text-transform:uppercase}
.rf1-sent-row{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.rf1-sent-row:last-child{margin-bottom:0}
.rf1-sent-name{font-size:10px;font-weight:600;width:52px;flex-shrink:0}
.rf1-sent-track{flex:1;height:6px;background:rgba(255,255,255,0.06);border-radius:6px;overflow:hidden}
.rf1-sent-fill{height:100%;border-radius:6px;transition:width 1.2s ease}
.rf1-sent-pct{font-size:10px;color:rgba(255,255,255,0.4);width:28px;text-align:right}
.rf1-topics{display:flex;flex-wrap:wrap;gap:6px}
.rf1-topic{
  font-size:10px;font-weight:600;color:rgba(201,168,76,0.8);
  background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.2);
  padding:4px 10px;border-radius:100px;
}

/* Frame 2: AI Response Typewriter */
.rf2-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rf2-review-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:16px;
}
.rf2-review-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.rf2-avatar{
  width:36px;height:36px;border-radius:50%;
  background:linear-gradient(135deg,#C9A84C,#a8873a);
  color:#0a0a0e;font-size:11px;font-weight:800;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.rf2-author{font-size:13px;font-weight:700;color:#fff}
.rf2-stars{color:#C9A84C;font-size:12px;letter-spacing:1px;margin-left:6px}
.rf2-date{font-size:10px;color:rgba(255,255,255,0.3)}
.rf2-review-text{font-size:12px;line-height:1.7;color:rgba(255,255,255,0.55);font-style:italic}
.rf2-response-area{
  background:rgba(201,168,76,0.04);border:1px solid rgba(201,168,76,0.45);
  border-radius:12px;padding:16px;display:flex;flex-direction:column;
  position:relative;overflow:hidden;
}
.rf2-response-area::before{
  content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,0.8),transparent);
  animation:reelShimmer 3s ease-in-out infinite;pointer-events:none;
}
@keyframes reelShimmer{0%{left:-100%}50%{left:100%}100%{left:100%}}
.rf2-response-label{font-size:9px;font-weight:700;letter-spacing:0.12em;color:#C9A84C;margin-bottom:8px;text-transform:uppercase}
.rf2-typewriter{
  font-size:12px;line-height:1.8;color:rgba(255,255,255,0.6);
  min-height:100px;flex:1;font-family:'DM Sans',sans-serif;
}
.rf2-typewriter .tw-cursor{
  display:inline-block;width:2px;height:14px;background:#C9A84C;
  margin-left:1px;vertical-align:text-bottom;animation:dashPulse 0.8s infinite;
}
.rf2-actions{display:flex;gap:8px;margin-top:12px;transition:opacity 0.4s}
.rf2-btn-copy,.rf2-btn-post{
  font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;
  padding:7px 14px;border-radius:8px;border:none;cursor:pointer;transition:all 0.2s;
}
.rf2-btn-copy{background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.7)}
.rf2-btn-post{background:#C9A84C;color:#0a0a0e}
.rf2-posted-banner{
  display:flex;align-items:center;gap:6px;
  margin-top:10px;padding:8px 14px;border-radius:8px;
  background:rgba(34,197,94,0.12);border:1px solid rgba(34,197,94,0.25);
  color:#22c55e;font-size:11px;font-weight:700;
}

/* Frame 3: AI Insights */
.rf3-header-card{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;border-radius:12px;margin-bottom:12px;
  background:linear-gradient(135deg,#161412,#1a1714);
  border:1px solid rgba(201,168,76,0.15);
}
.rf3-header-title{font-size:16px;font-weight:700;color:#fff;font-family:'DM Sans',sans-serif}
.rf3-powered{
  font-size:9px;font-weight:600;color:rgba(201,168,76,0.7);
  background:rgba(201,168,76,0.1);border:1px solid rgba(201,168,76,0.2);
  padding:2px 8px;border-radius:20px;margin-left:8px;vertical-align:middle;
}
.rf3-header-sub{font-size:11px;color:rgba(255,255,255,0.4);margin-top:2px}
.rf3-analyze-btn{
  font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;
  background:rgba(201,168,76,0.15);color:#C9A84C;border:1px solid rgba(201,168,76,0.25);
  padding:7px 16px;border-radius:100px;cursor:pointer;
}
.rf3-risk-alert{
  display:flex;align-items:flex-start;gap:10px;
  padding:12px 16px;border-radius:10px;margin-bottom:12px;
  background:rgba(248,113,113,0.06);border:1px solid rgba(248,113,113,0.15);
}
.rf3-risk-icon{font-size:16px;flex-shrink:0}
.rf3-risk-title{font-size:12px;font-weight:700;color:rgba(248,113,113,0.9)}
.rf3-risk-text{font-size:11px;color:rgba(255,255,255,0.4);margin-top:2px;line-height:1.5}
.rf3-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.rf3-compare,.rf3-recs{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;padding:14px;
}
.rf3-compare-label,.rf3-recs-label,.rf3-topic-label{
  font-size:9px;font-weight:700;letter-spacing:0.1em;
  color:rgba(255,255,255,0.35);margin-bottom:10px;text-transform:uppercase;
}
.rf3-compare-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.rf3-compare-cell{text-align:center}
.rf3-compare-val{display:block;font-size:14px;font-weight:800;color:#fff;font-family:'DM Sans',sans-serif}
.rf3-compare-name{display:block;font-size:9px;color:rgba(255,255,255,0.3);margin:2px 0}
.rf3-compare-delta{display:block;font-size:10px;font-weight:700}
.rf3-compare-delta.up{color:#22c55e}
.rf3-rec-item{
  display:flex;align-items:flex-start;gap:8px;
  font-size:11px;color:rgba(255,255,255,0.55);line-height:1.5;
  padding:6px 0;border-bottom:1px solid rgba(255,255,255,0.04);
}
.rf3-rec-item:last-child{border-bottom:none}
.rf3-rec-badge{
  font-size:9px;font-weight:800;padding:2px 7px;border-radius:4px;
  flex-shrink:0;text-transform:uppercase;letter-spacing:0.05em;
}
.rf3-rec-badge.high{background:rgba(239,68,68,0.15);color:#ef4444}
.rf3-rec-badge.med{background:rgba(245,158,11,0.15);color:#f59e0b}
.rf3-rec-badge.low{background:rgba(34,197,94,0.15);color:#22c55e}
.rf3-topics-bar{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;padding:14px;
}
.rf3-topic-bars{display:flex;flex-direction:column;gap:6px}
.rf3-topic-row{display:flex;align-items:center;gap:8px}
.rf3-tname{font-size:10px;color:rgba(255,255,255,0.5);width:90px;flex-shrink:0}
.rf3-tbar{flex:1;height:6px;background:rgba(255,255,255,0.06);border-radius:6px;overflow:hidden}
.rf3-tbar-fill{height:100%;background:#C9A84C;border-radius:6px;transition:width 1s ease}
.rf3-tpct{font-size:10px;color:rgba(255,255,255,0.35);width:28px;text-align:right}

/* ══ WHAT'S INCLUDED (Phase 5) ══ */
.wi-section{background:#ffffff;padding:100px 24px}
.wi-header{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-bottom:4rem}
.wi-header-left{padding-top:0.5rem}
.wi-header-left .section-tag::after{content:'';display:block;width:40px;height:2px;background:linear-gradient(90deg,#C9A84C,transparent);margin-top:8px;border-radius:2px}
.wi-title{font-family:'Playfair Display',serif;font-size:clamp(36px,4.5vw,56px);font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:#0a0a0e;margin-top:12px}
.wi-header-right{display:flex;gap:12px}
.wi-stat-card{
  flex:1;padding:20px 16px;border-radius:14px;text-align:center;
  background:#faf9f6;border:1px solid rgba(0,0,0,0.06);
  opacity:0;transform:translateY(20px);transition:opacity 0.5s ease,transform 0.5s ease;
}
.wi-stat-card.visible{opacity:1;transform:translateY(0)}
.wi-stat-card:nth-child(2){transition-delay:0.1s}
.wi-stat-card:nth-child(3){transition-delay:0.2s}
.wi-stat-num{display:block;font-family:'DM Sans',sans-serif;font-size:48px;font-weight:800;color:#C9A84C;letter-spacing:-0.03em;border-left:3px solid #C9A84C;padding-left:12px}
.wi-stat-label{display:block;font-size:12px;color:#6b6860;margin-top:4px;line-height:1.4}
.wi-rows{display:flex;flex-direction:column;gap:0}
.wi-row{
  display:grid;grid-template-columns:56px 1fr 220px;gap:20px;align-items:center;
  padding:36px 0;border-bottom:2px solid rgba(0,0,0,0.08);
  opacity:0;transform:translateY(24px);transition:opacity 0.55s ease,transform 0.55s ease;
}
.wi-row.visible{opacity:1;transform:translateY(0)}
.wi-icon-box{
  width:56px;height:56px;border-radius:14px;
  background:rgba(201,168,76,0.1);border:1px solid rgba(201,168,76,0.2);
  display:flex;align-items:center;justify-content:center;color:#A07828;
  flex-shrink:0;transition:all 0.25s;
  box-shadow:0 4px 12px rgba(201,168,76,0.15);
}
.wi-row:hover .wi-icon-box{background:#C9A84C;color:#0a0a0e;border-color:#C9A84C}
.wi-content{min-width:0}
.wi-row-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#0a0a0e;margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wi-row-desc{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.7;color:#6b6860}
.wi-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:100px;letter-spacing:0.02em}
.wi-badge-exclusive{background:rgba(201,168,76,0.12);color:#A07828;border:1px solid rgba(201,168,76,0.25)}
.wi-badge-ai{background:rgba(99,102,241,0.1);color:#6366f1;border:1px solid rgba(99,102,241,0.2)}
.wi-compare{display:flex;flex-direction:column;gap:6px;flex-shrink:0}
.wi-compare-item{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b6860;font-weight:500}
.wi-compare-label{font-weight:700;color:#0a0a0e;min-width:32px}
.wi-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.wi-dot-gold{background:#C9A84C}
.wi-dot-gray{background:#d4d0c8}

/* ══ TESTIMONIALS (Phase 6) ══ */
.tm-section{background:#faf9f6;padding:100px 24px}
.tm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.tm-card{
  background:#ffffff;border-radius:16px;padding:32px;position:relative;
  transition:transform 0.25s,box-shadow 0.25s;
  box-shadow:0 4px 20px rgba(140,120,80,0.06);
  border:1px solid rgba(0,0,0,0.04);
}
.tm-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(140,120,80,0.12)}
.tm-badge-row{margin-bottom:16px}
.tm-result-badge{
  display:inline-block;font-size:11px;font-weight:700;
  padding:5px 12px;border-radius:100px;
  background:rgba(201,168,76,0.1);color:#A07828;
  border:1px solid rgba(201,168,76,0.2);
}
.tm-stars{color:var(--gold);font-size:14px;letter-spacing:3px;margin-bottom:12px}
.tm-quote{font-size:14px;line-height:1.8;color:var(--text2);font-style:italic;margin-bottom:1.5rem}
.tm-author{display:flex;align-items:center;gap:12px}
.tm-avatar{
  width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;color:#fff;flex-shrink:0;
}
.tm-name{font-size:14px;font-weight:700;color:var(--black)}
.tm-biz{font-size:12px;color:var(--text2);margin-top:1px}

/* ══ CTA BANNER (Phase 7) ══ */
@keyframes cta2Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.cta2-section{background:#0a0a0e;padding:100px 24px}
.cta2-card{
  position:relative;overflow:hidden;
  padding:60px;border-radius:24px;
  background:#0a0a0e;
  border:1px solid rgba(201,168,76,0.2);
}
.cta2-orb{position:absolute;border-radius:50%;pointer-events:none}
.cta2-orb-1{width:400px;height:400px;top:-100px;right:-80px;background:radial-gradient(circle,rgba(201,168,76,0.12) 0%,transparent 70%)}
.cta2-orb-2{width:300px;height:300px;bottom:-80px;left:-60px;background:radial-gradient(circle,rgba(201,168,76,0.08) 0%,transparent 70%)}
.cta2-inner{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;position:relative;z-index:1}
.cta2-headline{font-family:'Playfair Display',serif;font-size:clamp(28px,3.5vw,40px);font-weight:700;color:#ffffff;line-height:1.2;letter-spacing:-0.03em;margin-top:8px;margin-bottom:12px}
.cta2-headline em{color:#C9A84C;font-style:italic}
.cta2-sub{font-family:'DM Sans',sans-serif;font-size:15px;color:rgba(255,255,255,0.45);line-height:1.7;margin-bottom:20px;max-width:480px}
.cta2-checks{display:flex;flex-wrap:wrap;gap:16px}
.cta2-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:rgba(255,255,255,0.5);font-weight:500}
.cta2-right{display:flex;align-items:center;justify-content:center}
.cta2-btn{
  display:inline-block;padding:18px 40px;border-radius:100px;
  background:#C9A84C;color:#0a0a0e;font-size:16px;font-weight:700;
  border:none;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;
  transition:all 0.25s;animation:cta2Float 3s ease-in-out infinite;
  box-shadow:0 8px 30px rgba(201,168,76,0.3);
}
.cta2-btn:hover{background:#E8C96A;transform:translateY(-2px);box-shadow:0 12px 40px rgba(201,168,76,0.4)}

/* ══ PRICING (Phase 8) ══ */
.pr-section{background:#0a0a0e;padding:100px 24px}
.pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:0;align-items:stretch}
.pr-card{padding:2.5rem 2rem;position:relative;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);transition:transform 0.25s,box-shadow 0.25s,border-color 0.25s}
.pr-card-left{border-radius:20px 0 0 20px;border-right:none}
.pr-card-center{
  background:linear-gradient(135deg,#C9A84C,#E8C96A);
  border:none;border-radius:0;z-index:1;
  transform:scaleY(1.04);
  box-shadow:0 16px 48px rgba(201,168,76,0.2);
}
.pr-card-right{border-radius:0 20px 20px 0;border-left:none}
.pr-card:hover{box-shadow:0 16px 48px rgba(0,0,0,0.3);border-color:rgba(255,255,255,0.15)}
.pr-card-center:hover{box-shadow:0 20px 60px rgba(201,168,76,0.3);transform:scaleY(1.06)}
.pr-popular{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:#0a0a0e;color:#C9A84C;font-size:10px;font-weight:800;
  letter-spacing:0.1em;text-transform:uppercase;padding:5px 16px;
  border-radius:20px;white-space:nowrap;border:1px solid rgba(201,168,76,0.3);
}
.pr-plan-name{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:1rem}
.pr-price{font-size:44px;font-weight:800;letter-spacing:-0.04em;color:var(--white);line-height:1;font-family:'Plus Jakarta Sans',sans-serif}
.pr-period{font-size:14px;font-weight:400;color:rgba(255,255,255,0.4)}
.pr-desc{font-size:13px;color:rgba(255,255,255,0.45);margin:1rem 0 1.5rem;line-height:1.6}
.pr-features{list-style:none;margin-bottom:2rem}
.pr-features li{font-size:13px;color:rgba(255,255,255,0.6);padding:6px 0;border-bottom:1px solid rgba(255,255,255,0.06);display:flex;align-items:center;gap:8px}
.pr-features li::before{content:"\2713";color:var(--gold);font-size:12px;flex-shrink:0;font-weight:700}
.pr-features-dark li{color:rgba(10,10,14,0.7);border-bottom-color:rgba(10,10,14,0.1)}
.pr-features-dark li::before{color:#0a0a0e}
.pr-btn{display:block;width:100%;text-align:center;padding:13px;border-radius:100px;font-size:14px;font-weight:700;cursor:pointer;border:none;transition:all 0.25s;font-family:'Plus Jakarta Sans',sans-serif}
.pr-btn-outline{border:1px solid rgba(255,255,255,0.15);color:var(--white);background:transparent}
.pr-btn-outline:hover{border-color:var(--gold);background:rgba(201,168,76,0.1);color:var(--gold)}
.pr-btn-dark{background:#0a0a0e;color:#C9A84C}
.pr-btn-dark:hover{background:#1a1714;transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.4)}

/* PRICING FLEX */
.pricing-flex{display:flex;align-items:center;gap:1.5rem;margin-top:2.5rem;padding:1.5rem 2rem;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;flex-wrap:wrap}
.pricing-flex-text{flex:1;min-width:200px}
.pricing-flex-title{font-size:15px;font-weight:700;color:var(--white);margin-bottom:0.25rem}
.pricing-flex-body{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.6}
.pricing-flex-btn{display:inline-flex;align-items:center;padding:10px 22px;background:var(--white);color:var(--black);border-radius:100px;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap;transition:all 0.2s;flex-shrink:0}
.pricing-flex-btn:hover{background:var(--gold-lt);transform:translateY(-1px)}

/* ══ FOOTER (Phase 9) ══ */
.ft-footer{background:#0a0a0e;border-top:1px solid rgba(255,255,255,0.06);padding:60px 24px 0;font-family:'DM Sans',sans-serif}
.ft-inner{max-width:1060px;margin:0 auto}
.ft-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.ft-brand{max-width:280px}
.ft-logo{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.ft-logo-text{font-family:'DM Sans',sans-serif;font-size:18px;font-weight:700;color:rgba(255,255,255,0.7)}
.ft-logo-text span{color:#C9A84C}
.ft-tagline{font-size:13px;color:rgba(255,255,255,0.35);line-height:1.7}
.ft-col{display:flex;flex-direction:column;gap:10px}
.ft-col-title{font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:4px}
.ft-col a{font-size:13px;color:rgba(255,255,255,0.35);text-decoration:none;transition:color 0.2s}
.ft-col a:hover{color:rgba(255,255,255,0.8)}
.ft-bottom{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-top:1px solid rgba(255,255,255,0.06);font-size:12px;color:rgba(255,255,255,0.25)}
.ft-bottom a{color:rgba(255,255,255,0.25);text-decoration:none;transition:color 0.2s}
.ft-bottom a:hover{color:rgba(255,255,255,0.6)}

/* Keep btn-pill-gold for hero and other usage */
.btn-pill-gold{background:var(--gold);color:var(--black);padding:16px 40px;border-radius:100px;font-size:16px;font-weight:700;border:none;cursor:pointer;transition:all 0.25s;font-family:'Plus Jakarta Sans',sans-serif;display:inline-block}
.btn-pill-gold:hover{background:var(--gold-lt);transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,168,76,0.3)}


/* MODAL */
.modal-overlay{display:none;position:fixed;inset:0;z-index:500;background:rgba(14,13,12,0.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);align-items:center;justify-content:center}
.modal-overlay.open{display:flex}
.modal{background:var(--white);border:1px solid var(--gray-lt);border-radius:14px;padding:2.5rem;width:100%;max-width:400px;position:relative;animation:lp-fadeUp 0.22s ease both;box-shadow:0 24px 64px rgba(0,0,0,0.14)}
.modal-close{position:absolute;top:1rem;right:1.25rem;background:none;border:none;cursor:pointer;font-size:1.3rem;color:var(--gray);transition:color 0.15s;line-height:1}
.modal-close:hover{color:var(--text)}
.modal-logo-line{font-size:16px;font-weight:800;color:var(--black);margin-bottom:1.25rem;letter-spacing:-0.02em;font-family:'Plus Jakarta Sans',sans-serif}
.modal-logo-line span{color:var(--gold)}
.modal h2{font-size:22px;font-weight:800;letter-spacing:-0.03em;color:var(--black);margin-bottom:0.3rem;font-family:'Plus Jakarta Sans',sans-serif}
.modal-sub{font-size:13px;color:var(--text2);margin-bottom:1.75rem}
.modal-field{margin-bottom:1rem}
.modal-field label{display:block;font-size:11px;font-weight:700;color:var(--text2);margin-bottom:0.4rem;letter-spacing:0.06em;text-transform:uppercase}
.modal-field input{width:100%;padding:10px 14px;border:1.5px solid var(--gray-lt);border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;color:var(--text);background:var(--white);outline:none;transition:border-color 0.2s,box-shadow 0.2s}
.modal-field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,0.1)}
.modal-error{font-size:12px;color:#b94040;margin-bottom:0.75rem;display:none;font-weight:500}
.modal-submit{width:100%;padding:12px;background:var(--black);color:var(--white);border:none;border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:background 0.2s;margin-top:0.25rem}
.modal-submit:hover:not(:disabled){background:#2a2825}
.modal-submit:disabled{opacity:0.6;cursor:not-allowed}


/* ════════════════════════════════════════════
   CLIENT DASHBOARD — LIGHT + DARK MODE
════════════════════════════════════════════ */

/* ── DARK MODE (default) ── */
:root {
  --d-bg:         #0a0908;
  --d-surface:    rgba(255,255,255,0.08);
  --d-surface2:   rgba(255,255,255,0.10);
  --d-border:     rgba(255,255,255,0.08);
  --d-border2:    rgba(255,255,255,0.14);
  --d-text:       #ffffff;
  --d-text2:      rgba(255,255,255,0.7);
  --d-text3:      rgba(255,255,255,0.55);
  --d-gold:       #C9A84C;
  --d-gold-lt:    rgba(201,168,76,0.12);
  --d-gold-glow:  rgba(201,168,76,0.22);
  --d-green:      #22c55e;
  --d-green-lt:   rgba(34,197,94,0.12);
  --d-red:        #f87171;
  --d-sidebar-w:  260px;
  --d-nav-h:      0px;
  --d-pill-h:     56px;
  --d-shadow:     0 2px 16px rgba(0,0,0,0.3);
  --d-shadow-lg:  0 8px 32px rgba(0,0,0,0.5);
}

/* ── LIGHT MODE ── */
[data-theme="light"] {
  --d-bg:         #F7F5F0;
  --d-surface:    rgba(255,255,255,0.8);
  --d-surface2:   rgba(255,255,255,0.6);
  --d-border:     rgba(0,0,0,0.06);
  --d-border2:    rgba(0,0,0,0.1);
  --d-text:       #0E0D0C;
  --d-text2:      #3a3835;
  --d-text3:      #6b6860;
  --d-gold:       #C9A84C;
  --d-gold-lt:    rgba(201,168,76,0.1);
  --d-gold-glow:  rgba(201,168,76,0.2);
  --d-green:      #2d7a4f;
  --d-green-lt:   rgba(45,122,79,0.1);
  --d-red:        #b94040;
  --d-shadow:     0 2px 16px rgba(0,0,0,0.06);
  --d-shadow-lg:  0 8px 32px rgba(0,0,0,0.1);
}



/* ── Live badge ── */
@keyframes livePulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(34,197,94,0.4); }
  50% { box-shadow: 0 0 0 6px rgba(34,197,94,0); }
}
@keyframes liveDotPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.7); }
}
.live-badge{
  display:flex;align-items:center;gap:7px;padding:4px 10px;
  background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.2);
  border-radius:100px;animation:livePulse 2s ease-in-out infinite;
}
.live-badge-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:liveDotPulse 1.5s ease-in-out infinite}
.live-badge span{font-size:11px;font-weight:700;color:#22c55e;letter-spacing:0.03em}

/* ── Greeting divider ── */
.greeting-divider{border:none;border-top:1px solid rgba(201,168,76,0.15);margin:16px 0}

#dashboard-page{display:none;min-height:100vh;transition:background-color 0.3s ease, color 0.3s ease;position:relative;
  background:
    radial-gradient(ellipse at 15% 0%, rgba(201,168,76,0.07) 0%, transparent 45%),
    radial-gradient(ellipse at 85% 0%, rgba(201,168,76,0.05) 0%, transparent 45%),
    linear-gradient(180deg, #0f0e0c 0%, #0a0908 40%, #080706 100%);
}
#dashboard-page::before{
  content:'';position:fixed;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
  pointer-events:none;z-index:0;
}
#dashboard-page::after{
  content:'';position:fixed;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg, transparent 0%, rgba(201,168,76,0.3) 30%, rgba(255,255,255,0.15) 50%, rgba(201,168,76,0.3) 70%, transparent 100%);
  pointer-events:none;z-index:200;
}
[data-theme="light"] #dashboard-page{
  background:
    radial-gradient(ellipse at 20% 0%, rgba(201,168,76,0.06) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 0%, rgba(201,168,76,0.04) 0%, transparent 40%),
    linear-gradient(180deg, #F0EDE6 0%, #E8E4DC 50%, #E2DDD4 100%);
}
[data-theme="light"] #dashboard-page::before{display:none}
[data-theme="light"] #dashboard-page::after{display:none}
.kpi-card,.dash-card,.dash-review,.review-full-card,.settings-card,.report-card,.reviews-filters,.reviews-stat-card,.pill-nav,.ai-response-card{transition:background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.25s, box-shadow 0.25s}
.kpi-val,.kpi-label,.kpi-delta,.dash-card-title,.dash-card-sub,.dr-name,.dr-text,.dr-platform,.page-title,.page-subtitle{transition:color 0.3s ease}

/* ── FLOATING PILL NAV ── */
.dash-nav{
  display:none; /* old nav hidden */
}
.pill-nav{
  position:fixed;top:16px;left:50%;transform:translateX(-50%);
  animation:pillDrop 0.4s cubic-bezier(0.34,1.56,0.64,1) both;
  z-index:200;
  display:flex;align-items:center;gap:0;
  padding:6px 8px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-radius:100px;
  box-shadow:0 8px 32px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.1), 0 1px 0 rgba(201,168,76,0.2) inset;
  transition:background 0.3s, border-color 0.3s, box-shadow 0.3s;
  will-change:transform;transform:translateX(-50%) translateZ(0);
  max-width:calc(100vw - 32px);
}
[data-theme="light"] .pill-nav{
  background:rgba(255,255,255,0.92);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 8px 32px rgba(0,0,0,0.08);
}
.pill-nav-logo{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;font-weight:800;
  color:#C9A84C;padding:0 14px 0 10px;white-space:nowrap;letter-spacing:-0.03em;
}
.pill-nav-tabs{display:flex;align-items:center;gap:2px}
.pill-nav-tab{
  padding:8px 14px;font-size:12px;font-weight:500;
  color:var(--d-text3);cursor:pointer;white-space:nowrap;
  border:none;background:none;font-family:'Plus Jakarta Sans',sans-serif;
  border-radius:100px;transition:color 0.2s;position:relative;
}
.pill-nav-tab:hover{color:var(--d-text);background:rgba(255,255,255,0.06)}
[data-theme="light"] .pill-nav-tab:hover{background:rgba(0,0,0,0.04)}
.pill-nav-tab.active{color:var(--d-text);font-weight:700}
.pill-nav-tab::after{
  content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%);
  width:0;height:2.5px;background:#C9A84C;border-radius:2px;
  transition:width 0.2s cubic-bezier(0.16,1,0.3,1);
  box-shadow:0 0 6px rgba(201,168,76,0.5);
}
.pill-nav-tab.active::after{width:20px}
.pill-nav-divider{width:1px;height:20px;background:rgba(255,255,255,0.1);margin:0 6px;flex-shrink:0}
[data-theme="light"] .pill-nav-divider{background:rgba(0,0,0,0.1)}
.pill-nav-right{display:flex;align-items:center;gap:6px;padding-left:4px}
.pill-nav-loc{
  display:flex;align-items:center;gap:4px;
  font-size:11px;font-weight:600;color:var(--d-text3);
  padding:8px 14px;border-radius:100px;cursor:pointer;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);
  font-family:'Plus Jakarta Sans',sans-serif;transition:border-color 0.2s;
  white-space:nowrap;max-width:160px;
}
[data-theme="light"] .pill-nav-loc{background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.08)}
.pill-nav-loc:hover{border-color:var(--d-gold)}
.pill-nav-loc select{
  background:transparent;border:none;outline:none;color:inherit;
  font-size:11px;font-family:inherit;font-weight:600;cursor:pointer;
  max-width:100px;
}
.pill-theme-toggle{
  width:32px;height:32px;border-radius:50%;
  background:transparent;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:var(--d-gold);font-size:16px;transition:transform 0.2s,color 0.2s;flex-shrink:0;
}
.pill-theme-toggle:hover{background:rgba(201,168,76,0.12)}
.pill-avatar{
  width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--d-gold),#a8873a);
  color:#fff;font-size:10px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;cursor:pointer;
}
.pill-signout{
  font-size:11px;font-weight:600;color:var(--d-text3);
  background:none;border:none;cursor:pointer;padding:6px 10px;
  font-family:'Plus Jakarta Sans',sans-serif;transition:color 0.2s;
  white-space:nowrap;
}
.pill-signout:hover{color:var(--d-text)}

/* Pill mobile hamburger */
.pill-hamburger{
  display:none;background:none;border:none;cursor:pointer;
  padding:6px;color:var(--d-text3);flex-shrink:0;
}
.pill-hamburger svg{width:18px;height:18px;display:block}
.pill-mobile-dropdown{
  display:none;position:fixed;top:80px;left:50%;transform:translateX(-50%);
  background:rgba(15,16,20,0.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,0.1);border-radius:16px;
  padding:8px;z-index:199;min-width:200px;
  box-shadow:0 16px 48px rgba(0,0,0,0.4);
}
[data-theme="light"] .pill-mobile-dropdown{
  background:rgba(255,255,255,0.95);border-color:rgba(0,0,0,0.08);
  box-shadow:0 16px 48px rgba(0,0,0,0.15);
}
.pill-mobile-dropdown.open{display:block}
.pill-mobile-dropdown a{
  display:block;padding:10px 16px;font-size:13px;font-weight:500;
  color:var(--d-text2);text-decoration:none;border-radius:8px;cursor:pointer;
  transition:background 0.15s;
}
.pill-mobile-dropdown a:hover{background:rgba(255,255,255,0.06)}
[data-theme="light"] .pill-mobile-dropdown a:hover{background:rgba(0,0,0,0.04)}
.pill-mobile-dropdown a.active{color:var(--d-gold);font-weight:700}

/* Old sidebar/nav elements hidden */
.dash-nav-left,.dash-nav-logo,.dash-nav-divider,.dash-page-title,
.dash-user-info,.dash-name,.dash-biz,.btn-signout,.dark-mode-toggle,
.dash-sidebar,.dash-sidebar-section,.dash-sidebar-label,.sidebar-bottom{display:none!important}

.nav-icon{display:flex;align-items:center;flex-shrink:0}
.nav-badge{background:var(--d-gold);color:#fff;font-size:9px;font-weight:800;padding:2px 6px;border-radius:5px;letter-spacing:0.03em;margin-left:2px}

/* ── LAYOUT ── */
.dash-layout{display:flex;flex-direction:column;min-height:100vh}

/* ── MAIN CONTENT ── */
.dash-main{overflow-y:auto;background:transparent;transition:background 0.3s;flex:1;position:relative;z-index:1}
.dash-panel{display:none;padding:80px 2.5rem 4rem;max-width:1280px;margin:0 auto}
.dash-panel.active{display:block;animation:panelFadeIn 0.18s cubic-bezier(0.16,1,0.3,1) both}

/* ── LOADING ── */
.dash-loading-screen{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:60vh;gap:1.25rem;
}
.dash-spinner{
  width:36px;height:36px;
  border:2px solid var(--d-border2);
  border-top-color:var(--d-gold);
  border-radius:50%;animation:spin 0.8s linear infinite;
}
.dash-loading-text{font-size:14px;color:var(--d-text3);letter-spacing:0.04em}

/* ── PAGE HEADER ── */
.page-header{margin-bottom:2.5rem}
.page-header-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.page-title{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:42px;font-weight:600;letter-spacing:-0.02em;
  color:var(--d-text);margin-bottom:0.3rem;line-height:1.1;
}
.page-subtitle{font-size:14px;color:var(--d-text2);font-weight:300}

/* ── KPI CARDS ── */
.kpi-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:1rem;margin-bottom:1.5rem}
.kpi-card{
  background:linear-gradient(145deg, rgba(255,255,255,0.065) 0%, rgba(255,255,255,0.03) 100%);
  border:1px solid rgba(255,255,255,0.10);
  border-left:2px solid rgba(201,168,76,0.4);
  border-radius:16px;padding:1.5rem 1.25rem;
  position:relative;overflow:hidden;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:transform 0.25s,box-shadow 0.25s,border-color 0.25s;
  cursor:default;will-change:transform;
  opacity:0;transform:translateY(20px);
  box-shadow:0 4px 24px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.08), inset 0 -1px 0 rgba(0,0,0,0.15);
}
[data-theme="light"] .kpi-card{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.07);
  border-left:3px solid rgba(201,168,76,0.6);
  box-shadow:0 1px 2px rgba(0,0,0,0.05), 0 4px 16px rgba(0,0,0,0.07), inset 0 1px 0 rgba(255,255,255,1);
}
.kpi-card.animated{opacity:1;transform:translateY(0);transition:opacity 0.5s ease,transform 0.5s ease,box-shadow 0.25s,border-color 0.25s}
.kpi-card:nth-child(1){z-index:4}
.kpi-card:nth-child(2){z-index:3}
.kpi-card:nth-child(3){z-index:2}
.kpi-card:nth-child(4){z-index:1}
.kpi-card:hover{
  z-index:10;
  transform:translateY(-3px) scale(1.005);
  box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(201,168,76,0.2);
}
[data-theme="light"] .kpi-card:hover{box-shadow:0 12px 40px rgba(0,0,0,0.12), inset 0 -1px 0 rgba(0,0,0,0.03)}
/* Hero KPI — Google Rating */
.kpi-hero{
  background:linear-gradient(135deg, rgba(255,255,255,0.08) 0%, rgba(201,168,76,0.06) 100%);
  border-left:3px solid #C9A84C;
  min-height:120px;
  box-shadow:0 0 40px rgba(201,168,76,0.1), 0 1px 0 rgba(255,255,255,0.06) inset, 0 4px 24px rgba(0,0,0,0.4);
  border-color:rgba(201,168,76,0.25);
}
.kpi-hero .kpi-val{font-size:42px}
[data-theme="light"] .kpi-hero{background:linear-gradient(135deg, #ffffff 0%, #fdf6e8 100%);border-left:3px solid #C9A84C;box-shadow:0 0 24px rgba(201,168,76,0.12), 0 4px 16px rgba(0,0,0,0.06)}
.kpi-icon{font-size:1.4rem;margin-bottom:1.1rem;display:block}
.kpi-label{
  font-size:11px;font-weight:700;letter-spacing:0.1em;
  text-transform:uppercase;color:var(--d-text3);
  margin-bottom:0.6rem;
}
[data-theme="light"] .kpi-label{color:#4a4845}
[data-theme="light"] .kc-label{color:#3a3835}
[data-theme="light"] .kc-val{color:#0E0D0C}
[data-theme="light"] .dash-card-title{color:#0E0D0C}
[data-theme="light"] .page-subtitle{color:#5a5855}
.kpi-val{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:36px;font-weight:800;letter-spacing:-0.03em;
  color:var(--d-text);line-height:1;margin-bottom:0.5rem;
}
.kpi-delta{font-size:12px;font-weight:600;color:var(--d-green);display:flex;align-items:center;gap:4px}
.kpi-delta.neg{color:var(--d-red)}
.kpi-delta.neutral{color:var(--d-text3)}

/* ── SECTION DIVIDER ── */
.section-divider{border:none;height:1px;margin:0.5rem 0 1.25rem;background:linear-gradient(90deg, transparent, rgba(201,168,76,0.15), transparent)}
[data-theme="light"] .section-divider{background:linear-gradient(90deg, transparent, rgba(0,0,0,0.06), transparent)}

/* ── CARDS ── */
.chart-row{display:grid;grid-template-columns:1fr 268px;gap:0.875rem;margin-bottom:0.875rem}
.dash-card{
  background:linear-gradient(145deg, rgba(255,255,255,0.055) 0%, rgba(255,255,255,0.025) 100%);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:16px;padding:1.5rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:border-color 0.25s,box-shadow 0.25s,transform 0.25s;
  box-shadow:0 4px 24px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.08), inset 0 -1px 0 rgba(0,0,0,0.15);
}
[data-theme="light"] .dash-card{background:#ffffff;border:1px solid rgba(0,0,0,0.09);box-shadow:0 1px 2px rgba(0,0,0,0.05), 0 4px 16px rgba(0,0,0,0.07), inset 0 1px 0 rgba(255,255,255,1)}
.dash-card:hover{border-color:rgba(201,168,76,0.2);box-shadow:0 12px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(201,168,76,0.2), inset 0 1px 0 rgba(255,255,255,0.07), inset 0 -1px 0 rgba(0,0,0,0.2);transform:translateY(-3px) scale(1.005);background:linear-gradient(145deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.04) 100%)}
[data-theme="light"] .dash-card:hover{box-shadow:0 12px 40px rgba(0,0,0,0.1), inset 0 -1px 0 rgba(0,0,0,0.03)}
.dash-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}
.dash-card-title{font-size:16px;font-weight:700;color:var(--d-text);margin-bottom:3px;position:relative;padding-left:12px}
.dash-card-title::before{
  content:'';display:block;width:3px;height:100%;position:absolute;left:0;top:0;
  background:#C9A84C;border-radius:0 2px 2px 0;box-shadow:0 0 6px rgba(201,168,76,0.4);
}
[data-theme="light"] .dash-card-title::before{box-shadow:none}
.dash-card-sub{font-size:12px;color:var(--d-text3);font-weight:400}
.dash-card-badge{
  font-size:11px;font-weight:600;padding:5px 14px;
  background:var(--d-gold-lt);color:var(--d-gold);
  border-radius:20px;letter-spacing:0.04em;
  border:1px solid var(--d-gold-glow);
}

/* ── TREND CHART ── */
.trend-months{display:flex;justify-content:space-between;font-size:11px;color:var(--d-text3);margin-top:0.875rem;padding:0 4px;letter-spacing:0.03em;font-weight:500}

/* ── RATING BARS ── */
.bar-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.bar-star{font-size:12px;color:var(--d-text2);width:24px;text-align:right;flex-shrink:0;font-weight:600}
.bar-bg{flex:1;height:8px;background:var(--d-surface2);border-radius:8px;overflow:hidden;border:1px solid var(--d-border)}
.bar-fill{
  height:100%;
  background:linear-gradient(90deg,var(--d-gold),rgba(201,168,76,0.6));
  border-radius:8px;
  transition:width 1.2s cubic-bezier(0.4,0,0.2,1);
  width:0;
}
.bar-count{font-size:12px;color:var(--d-text3);width:28px;text-align:right;flex-shrink:0;font-weight:500}

/* ── PLATFORM CHIPS ── */
.platform-row{display:flex;flex-direction:column;gap:0.5rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--d-border)}
.platform-chip{
  flex:1;min-width:0;overflow:hidden;background:var(--d-surface2);
  border:1px solid var(--d-border);
  border-radius:10px;padding:0.75rem 0.875rem;
  display:flex;align-items:center;gap:8px;
  transition:border-color 0.2s,background 0.2s,transform 0.2s;
}
.platform-chip:hover{border-color:var(--d-gold);background:var(--d-gold-lt);transform:translateY(-2px)}
.platform-chip-icon{font-size:1.2rem}
.platform-chip-name{font-size:12px;font-weight:700;color:var(--d-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.platform-chip-rating{font-size:12px;color:var(--d-text3)}
.platform-chip-stat{margin-left:auto;font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;font-weight:800;color:var(--d-text);letter-spacing:-0.03em;flex-shrink:0}

/* ── REVIEWS ── */
.reviews-section{margin-top:1.25rem}
.dash-reviews{display:flex;flex-direction:column;gap:1rem}
.dash-review{
  background:linear-gradient(145deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.02) 100%);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:1.75rem;cursor:pointer;
  transition:transform 0.25s,box-shadow 0.25s,border-color 0.25s;
  opacity:0;transform:translateY(20px);
  box-shadow:0 4px 20px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.06), inset 0 -1px 0 rgba(0,0,0,0.12);
}
[data-theme="light"] .dash-review{background:#ffffff;border:1px solid rgba(0,0,0,0.08);box-shadow:0 1px 2px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.05), inset 0 1px 0 rgba(255,255,255,1)}
.dash-review.animated{opacity:1;transform:translateY(0);transition:opacity 0.4s ease,transform 0.4s ease,border-color 0.25s,box-shadow 0.25s}
.dash-review:hover{
  border-color:rgba(201,168,76,0.3);
  transform:translateY(-2px);
  box-shadow:0 12px 40px rgba(0,0,0,0.2);
}
.dr-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0.75rem}
.dr-name{font-size:16px;font-weight:700;color:var(--d-text)}
.dr-platform{font-size:12px;color:var(--d-text3);margin-top:3px;font-weight:400}
.dr-stars{font-size:14px;color:var(--d-gold);letter-spacing:2px}
.dr-stars.low{color:var(--d-red)}
.dr-text{font-size:15px;line-height:1.8;color:var(--d-text2);font-style:italic;margin-bottom:1.1rem}
.dr-response{
  background:var(--d-gold-lt);
  border-left:3px solid var(--d-gold);
  border-radius:0 10px 10px 0;
  padding:1rem 1.25rem;
}
.dr-response-label{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--d-gold);margin-bottom:0.35rem}
.dr-response-text{font-size:13px;line-height:1.7;color:var(--d-text2)}
.dr-badge{
  display:inline-flex;align-items:center;gap:4px;
  font-size:10px;font-weight:700;
  padding:3px 10px;border-radius:20px;
  margin-left:8px;vertical-align:middle;
}
.badge-ok{background:rgba(34,197,94,0.15);color:#22c55e;border:1px solid rgba(34,197,94,0.25);border-radius:20px}
.badge-pnd{background:rgba(201,168,76,0.15);color:var(--d-gold);border:1px solid rgba(201,168,76,0.25);border-radius:20px}
.dash-empty{text-align:center;padding:3rem;color:var(--d-text3);font-size:14px}

/* ── ALL REVIEWS PANEL ── */
.reviews-filters{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;
  padding:1.25rem 1.5rem;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:14px;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
[data-theme="light"] .reviews-filters{background:#ffffff;border:1px solid rgba(0,0,0,0.07);box-shadow:0 1px 4px rgba(0,0,0,0.05)}
.filter-chips{display:flex;gap:0.5rem;flex-wrap:wrap}
.filter-chip{
  padding:7px 18px;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:20px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:12px;font-weight:600;
  background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.8);
  cursor:pointer;transition:border-color 0.15s,color 0.15s,background 0.15s;
}
[data-theme="light"] .filter-chip{background:transparent;color:#0E0D0C;border-color:rgba(0,0,0,0.15)}
.filter-chip:hover{border-color:var(--d-gold);color:var(--d-text)}
.filter-chip.active{
  background:#C9A84C;
  color:#0E0D0C;
  border-color:#C9A84C;
}
[data-theme="light"] .filter-chip.active{background:#0E0D0C;color:#ffffff;border-color:#0E0D0C}
.reviews-search-input{
  padding:9px 16px;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:10px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;
  color:#ffffff;
  background:rgba(255,255,255,0.08);
  outline:none;width:240px;
  transition:border-color 0.2s,box-shadow 0.2s;
}
[data-theme="light"] .reviews-search-input{background:rgba(0,0,0,0.03);border-color:rgba(0,0,0,0.1);color:#0E0D0C}
.reviews-search-input::placeholder{color:rgba(255,255,255,0.4)}
[data-theme="light"] .reviews-search-input::placeholder{color:#6b6860}
.reviews-search-input:focus{border-color:var(--d-gold);box-shadow:0 0 0 3px rgba(201,168,76,0.15)}
.review-full-card{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:1.75rem;
  margin-bottom:1rem;
  transition:transform 0.25s,box-shadow 0.25s,border-color 0.25s;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.07), inset 0 -1px 0 rgba(0,0,0,0.2);
}
[data-theme="light"] .review-full-card{background:#ffffff;border:1px solid rgba(0,0,0,0.07);box-shadow:0 1px 3px rgba(0,0,0,0.08), 0 8px 24px rgba(0,0,0,0.07)}
.review-full-card:hover{border-color:rgba(201,168,76,0.3);transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,0.2)}
.rfc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0.75rem}
.rfc-author{font-size:15px;font-weight:700;color:var(--d-text)}
.rfc-meta{font-size:12px;color:var(--d-text3);margin-top:3px}
.rfc-stars{font-size:14px;color:var(--d-gold);letter-spacing:2px}
.rfc-stars.low{color:var(--d-red)}
.rfc-text{font-size:14px;line-height:1.8;color:var(--d-text2);font-style:italic;margin-bottom:1.1rem}
.rfc-response{background:var(--d-gold-lt);border-left:3px solid var(--d-gold);padding:1rem 1.25rem;border-radius:0 8px 8px 0}
.rfc-response-label{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--d-gold);margin-bottom:0.35rem}
.rfc-response-text{font-size:13px;line-height:1.7;color:var(--d-text2)}
.rfc-no-response{font-size:13px;color:var(--d-text3);font-style:italic;padding:0.5rem 0}
.reviews-stat-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:1.75rem}
.reviews-stat-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:14px;padding:1.75rem;text-align:center;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:transform 0.2s,box-shadow 0.2s,border-color 0.2s;
}
[data-theme="light"] .reviews-stat-card{background:rgba(255,255,255,0.8);border-color:rgba(0,0,0,0.06)}
.reviews-stat-card:hover{border-color:var(--d-gold);transform:translateY(-2px);box-shadow:var(--d-shadow-lg)}
.reviews-stat-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:40px;font-weight:700;color:var(--d-text);line-height:1;margin-bottom:6px}
.reviews-stat-label{font-size:11px;color:var(--d-text3);font-weight:700;text-transform:uppercase;letter-spacing:0.1em}

/* ── SETTINGS PANEL ── */
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.settings-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;padding:2rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:border-color 0.2s,box-shadow 0.2s;
}
[data-theme="light"] .settings-card{background:#ffffff;border:1px solid rgba(0,0,0,0.07);box-shadow:0 1px 4px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.04)}
.settings-card:hover{border-color:var(--d-border2);box-shadow:var(--d-shadow-lg)}
.settings-card:nth-child(1){animation-delay:0.05s}
.settings-card:nth-child(2){animation-delay:0.1s}
.settings-card:nth-child(3){animation-delay:0.15s}
.settings-card:nth-child(4){animation-delay:0.2s}
.settings-card-icon{font-size:1.6rem;margin-bottom:0.875rem;display:block}
.settings-card-title{font-size:16px;font-weight:700;color:var(--d-text);margin-bottom:0.25rem}
.settings-card-sub{font-size:13px;color:var(--d-text3);margin-bottom:1.5rem}
.settings-field{margin-bottom:1.1rem}
.settings-field label{
  display:block;font-size:11px;font-weight:700;
  color:var(--d-text3);margin-bottom:0.5rem;
  letter-spacing:0.1em;text-transform:uppercase;
}
.settings-field input,.settings-field select,.settings-field textarea{
  width:100%;padding:11px 14px;
  border:1.5px solid var(--d-border2);
  border-radius:10px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;
  color:var(--d-text);
  background:var(--d-surface2);
  outline:none;transition:border-color 0.2s,box-shadow 0.2s;
}
.settings-field input::placeholder,.settings-field textarea::placeholder{color:var(--d-text3)}
.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{
  border-color:var(--d-gold);
  box-shadow:0 0 0 3px var(--d-gold-lt);
  background:var(--d-surface);
}
.settings-field textarea{resize:vertical;min-height:90px}
.settings-field select{cursor:pointer}
.toggle-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:13px 0;border-bottom:1px solid var(--d-border);
}
.toggle-row:last-of-type{border-bottom:none}
.toggle-label{font-size:14px;color:var(--d-text);font-weight:600}
.toggle-sub{font-size:12px;color:var(--d-text3);margin-top:2px}
.toggle{position:relative;width:46px;height:26px;flex-shrink:0}
.toggle input{opacity:0;width:0;height:0}
.toggle-slider{
  position:absolute;inset:0;
  background:var(--d-border2);
  border-radius:26px;cursor:pointer;transition:all 0.25s;
}
.toggle-slider::before{
  content:'';position:absolute;
  width:20px;height:20px;left:3px;top:3px;
  background:white;border-radius:50%;
  transition:transform 0.25s;
  box-shadow:0 2px 6px rgba(0,0,0,0.15);
}
.toggle input:checked+.toggle-slider{background:var(--d-text)}
.toggle input:checked+.toggle-slider::before{transform:translateX(20px)}
.btn-save{
  padding:12px 26px;
  background:#C9A84C;
  color:#0E0D0C;border:none;border-radius:10px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:700;
  cursor:pointer;transition:all 0.2s;margin-top:0.875rem;
  letter-spacing:0.02em;
}
[data-theme="light"] .btn-save{background:#0E0D0C;color:#ffffff}
.btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,0.3);opacity:0.9}
.save-msg{font-size:13px;margin-top:0.6rem;display:none;font-weight:600}
.save-msg.ok{color:var(--d-green)}
.save-msg.err{color:var(--d-red)}

/* ══ Billing Card ══ */
.billing-info{display:flex;flex-direction:column;gap:10px;margin:16px 0 20px}
.billing-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--d-border)}
.billing-row:last-child{border-bottom:none}
.billing-label{font-size:13px;color:var(--d-text2)}
.billing-value{font-size:14px;font-weight:600;color:var(--d-text)}
.billing-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em}
.billing-badge.badge-active{background:rgba(34,197,94,0.15);color:#22c55e}
.billing-badge.badge-trial{background:rgba(201,168,76,0.15);color:var(--d-gold)}
.billing-badge.badge-past-due{background:rgba(248,113,113,0.15);color:#f87171}
.billing-badge.badge-churned{background:rgba(255,255,255,0.08);color:var(--d-text3)}
.billing-upgrade{margin-top:8px}

/* ── MONTHLY REPORTS ── */
.report-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;padding:2.5rem;margin-bottom:1.5rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
[data-theme="light"] .report-card{background:rgba(255,255,255,0.95);border:1px solid rgba(0,0,0,0.06);box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.report-header-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}
.report-month{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:700;color:var(--d-text)}
.report-generated{font-size:13px;color:var(--d-text3);margin-top:3px}
.btn-pdf{
  display:inline-flex;align-items:center;gap:8px;padding:12px 24px;
  background:#C9A84C;
  color:#0E0D0C;border:none;border-radius:10px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:transform 0.2s,box-shadow 0.2s,opacity 0.2s;letter-spacing:0.02em;
}
[data-theme="light"] .btn-pdf{background:#0E0D0C;color:#ffffff}
.btn-pdf:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,0.3);opacity:0.9}
.report-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2rem}
.report-kpi{
  padding:1.5rem;
  background:var(--d-surface2);
  border-radius:14px;border:1px solid var(--d-border);
}
.report-kpi-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--d-text3);margin-bottom:0.6rem}
.report-kpi-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:700;color:var(--d-text);line-height:1;margin-bottom:4px}
.report-kpi-delta{font-size:12px;color:var(--d-green);font-weight:600}
.report-highlights-title{
  font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;
  color:var(--d-text3);margin-bottom:1.25rem;
  padding-top:1.5rem;border-top:1px solid var(--d-border);
}
.highlight-item{
  display:flex;gap:14px;padding:14px 0;
  border-bottom:1px solid var(--d-border);
  align-items:flex-start;font-size:14px;
  color:var(--d-text2);line-height:1.65;
}
.highlight-item:last-child{border-bottom:none}
.highlight-icon{font-size:16px;flex-shrink:0;margin-top:2px}

/* ── AI INSIGHTS ── */
.ai-insights-panel-wrap{background:transparent}
[data-theme="light"] .ai-insights-panel-wrap{background:transparent}
.ai-insights-header{
  display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem;position:relative;
}
.ai-insights-header::before{
  content:'';position:absolute;top:-20px;left:-20px;width:200px;height:80px;
  background:radial-gradient(ellipse, rgba(201,168,76,0.12) 0%, transparent 70%);
  filter:blur(20px);z-index:-1;
}
.ai-powered-badge{
  display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;
  color:#C9A84C;background:rgba(201,168,76,0.12);padding:5px 14px;
  border-radius:100px;border:1px solid rgba(201,168,76,0.4);
}
.ai-last-analyzed{font-size:11px;color:var(--d-text3);margin-top:6px}

/* AI Loading State */
@keyframes aiShimmer{0%{background-position:-200px 0}100%{background-position:200px 0}}
@keyframes aiFadeText{0%,100%{opacity:0}10%,90%{opacity:1}}
.ai-loading-message{
  text-align:center;font-size:15px;font-weight:600;color:var(--d-gold);
  margin-bottom:1.5rem;animation:aiFadeText 1.5s ease-in-out infinite;
}
.ai-skeleton-cards{display:flex;flex-direction:column;gap:1rem}
.ai-skeleton-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:1.5rem;
}
[data-theme="light"] .ai-skeleton-card{background:rgba(255,255,255,0.6);border-color:rgba(0,0,0,0.06)}
.ai-skeleton-line{height:12px;border-radius:6px;margin-bottom:10px;
  background:linear-gradient(90deg,rgba(201,168,76,0.06) 0%,rgba(201,168,76,0.15) 50%,rgba(201,168,76,0.06) 100%);
  background-size:400px 100%;animation:aiShimmer 1.5s ease-in-out infinite;
}
.ai-skeleton-line.long{width:90%}
.ai-skeleton-line.medium{width:65%}
.ai-skeleton-line.short{width:40%;margin-bottom:0}

/* Recommendation cards */
.ai-rec-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:14px 16px;margin-bottom:0.75rem;
  border-left:4px solid var(--d-gold);transition:transform 0.2s,box-shadow 0.2s;
}
[data-theme="light"] .ai-rec-card{background:#ffffff;border-color:rgba(0,0,0,0.06);border-left-width:3px}
.ai-rec-card:hover{transform:translateX(4px);box-shadow:var(--d-shadow)}
.ai-rec-card.priority-high{border-left-color:#ef4444}
.ai-rec-card.priority-medium{border-left-color:#f59e0b}
.ai-rec-card.priority-low{border-left-color:#22c55e}
.ai-rec-card[data-priority="high"] { border-left: 4px solid #ef4444 !important; }
.ai-rec-card[data-priority="medium"] { border-left: 4px solid #f59e0b !important; }
.ai-rec-card[data-priority="low"] { border-left: 4px solid #22c55e !important; }
.ai-rec-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.ai-rec-badge{font-size:10px;font-weight:800;letter-spacing:0.08em;padding:3px 8px;border-radius:4px;text-transform:uppercase}
.ai-rec-badge.high{background:rgba(239,68,68,0.15);color:#ef4444}
.ai-rec-badge.medium{background:rgba(245,158,11,0.15);color:#f59e0b}
.ai-rec-badge.low{background:rgba(34,197,94,0.15);color:#22c55e}
.ai-rec-title{font-size:13px;font-weight:700;color:var(--d-text)}
.ai-rec-action{font-size:12px;color:var(--d-text2);line-height:1.6;margin-bottom:6px}
.ai-rec-impact{font-size:12px;color:var(--d-text3);line-height:1.5}

/* Topic tags (replaces word cloud) */
.ai-topic-tags{display:flex;flex-wrap:wrap;gap:0.5rem;padding:0.5rem 0}
.ai-topic-tag{
  background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.2);
  color:rgba(201,168,76,0.8);border-radius:100px;padding:6px 14px;
  font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px;
}
[data-theme="light"] .ai-topic-tag{background:rgba(201,168,76,0.1)}

/* Trend items with colored dots */
.trend-item{
  display:flex;align-items:flex-start;gap:12px;
  padding:13px 0;border-bottom:1px solid var(--d-border);
  font-size:14px;color:var(--d-text2);line-height:1.6;
}
.trend-item:last-child{border-bottom:none}
.trend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:7px}
.trend-dot.positive{background:#22c55e}
.trend-dot.negative{background:#ef4444}
.trend-dot.neutral{background:#C9A84C}

/* AI Response cards — redesigned */
.ai-response-card{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;overflow:hidden;margin-bottom:1rem;
  transition:border-color 0.2s,box-shadow 0.2s;
}
[data-theme="light"] .ai-response-card{background:#ffffff;border-color:rgba(0,0,0,0.06)}
.ai-response-card:hover{border-color:var(--d-gold);box-shadow:var(--d-shadow-lg)}
.ai-response-review-section{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,0.06)}
[data-theme="light"] .ai-response-review-section{border-bottom-color:rgba(0,0,0,0.06)}
.ai-response-author{
  font-size:15px;font-weight:700;color:var(--d-text);
  margin-bottom:0.5rem;display:flex;align-items:center;gap:10px;
}
.ai-response-review{font-size:13px;color:var(--d-text3);font-style:italic}
.ai-response-stars{color:var(--d-gold);font-size:13px;letter-spacing:1px}
.ai-response-stars.low{color:var(--d-red)}
.ai-response-body{
  background:rgba(201,168,76,0.04);border-left:3px solid rgba(201,168,76,0.4);
  padding:1.25rem 1.5rem;
}
[data-theme="light"] .ai-response-body{background:rgba(201,168,76,0.06)}
.ai-response-label{font-size:10px;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:var(--d-gold);margin-bottom:4px;display:flex;align-items:center;gap:8px}
.ai-response-tone{font-size:10px;font-weight:600;color:rgba(201,168,76,0.6);background:rgba(201,168,76,0.08);padding:2px 8px;border-radius:100px;text-transform:none;letter-spacing:normal}
.ai-response-draft{
  font-size:14px;line-height:1.85;
  color:var(--d-text2);margin-bottom:1rem;
  white-space:pre-wrap;
}
.ai-response-actions{display:flex;gap:0.5rem;flex-wrap:wrap}
.btn-copy{
  padding:8px 16px;
  background:#C9A84C;
  color:#0E0D0C;border:none;border-radius:8px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;
  cursor:pointer;transition:transform 0.2s,box-shadow 0.2s,background 0.2s;letter-spacing:0.02em;
  display:inline-flex;align-items:center;gap:5px;
}
[data-theme="light"] .btn-copy{background:#0E0D0C;color:#ffffff}
.btn-copy:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,0.3)}
.btn-copy.copied{background:#22c55e;color:#fff}
.btn-regen,.btn-refine{
  padding:8px 16px;background:rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.8);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:12px;font-weight:600;cursor:pointer;transition:all 0.2s;
  display:inline-flex;align-items:center;gap:5px;
}
[data-theme="light"] .btn-regen,[data-theme="light"] .btn-refine{background:transparent;color:#0E0D0C;border-color:rgba(0,0,0,0.15)}
.btn-regen:hover,.btn-refine:hover{border-color:var(--d-gold);color:var(--d-gold)}
.btn-regen.spinning svg{animation:spin 0.7s linear infinite}
.ai-refine-input{
  display:none;margin-top:0.75rem;
}
.ai-refine-input.open{display:flex;gap:0.5rem;align-items:center}
.ai-refine-input input{
  flex:1;padding:8px 12px;background:var(--d-surface);border:1px solid var(--d-border);
  border-radius:8px;color:var(--d-text);font-size:13px;font-family:inherit;
}
.ai-refine-input input::placeholder{color:var(--d-text3)}
.ai-refine-input button{
  padding:8px 14px;background:var(--d-gold);color:#0f1014;border:none;border-radius:8px;
  font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;
}

/* ── AI INSIGHTS v2 — Header Dark Card ── */
.ai-insights-header-card{
  background:linear-gradient(135deg, #161412 0%, #1c1916 100%);
  border:0.5px solid rgba(201,168,76,0.25);
  border-radius:14px;padding:20px 24px;margin-bottom:1rem;
  position:relative;overflow:hidden;
  box-shadow:0 0 40px rgba(201,168,76,0.08), 0 4px 24px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.1), inset 0 -1px 0 rgba(0,0,0,0.2);
}
.ai-insights-header-card::before{
  content:'';position:absolute;top:-80px;right:-80px;width:260px;height:260px;
  border-radius:50%;background:rgba(201,168,76,0.05);pointer-events:none;
}
[data-theme="light"] .ai-insights-header-card{
  background:linear-gradient(135deg,#1a1a1f,#1e1c19);
}
#ai-run-btn{background:#C9A84C !important;color:#0E0D0C !important;border:none !important;border-radius:100px !important;padding:9px 20px !important;font-size:12px !important;font-weight:700 !important;cursor:pointer !important}
#ai-run-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(201,168,76,0.3)}
.ai-briefing-summary{
  font-size:12px;color:rgba(255,255,255,0.45);line-height:1.6;margin-top:4px;max-width:520px;
}

/* Risk Alert with pulse */
@keyframes riskPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,0.2)}
  50%{box-shadow:0 0 0 6px rgba(239,68,68,0)}
}
.ai-risk-alert{
  display:none;margin-top:14px;padding:12px 16px;
  background:rgba(239,68,68,0.08);border:1px solid rgba(239,68,68,0.2);
  border-radius:10px;animation:riskPulse 2.5s ease-in-out infinite;
}
.ai-risk-alert.visible{display:block}
.ai-risk-title{font-size:11px;font-weight:700;color:#ef4444;margin-bottom:4px}
.ai-risk-text{font-size:12px;color:rgba(255,255,255,0.6);line-height:1.5;margin-bottom:8px}
.ai-risk-action{
  background:rgba(239,68,68,0.15);border:1px solid rgba(239,68,68,0.3);
  color:#ef4444;font-size:10px;font-weight:700;padding:5px 12px;border-radius:6px;
  cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;transition:background 0.2s;
}
.ai-risk-action:hover{background:rgba(239,68,68,0.25)}

/* Month Comparison Grid */
.ai-compare-grid{display:grid;grid-template-columns:repeat(5, 1fr);gap:8px}
.ai-compare-cell{
  background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);
  border-radius:8px;padding:10px;text-align:center;
}
[data-theme="light"] .ai-compare-cell{background:rgba(0,0,0,0.02);border-color:rgba(0,0,0,0.06)}
.ai-compare-cell:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,0.07)}
.ai-compare-label{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--d-text3);margin-bottom:6px}
.ai-compare-curr{font-size:18px;font-weight:800;color:var(--d-text);line-height:1}
.ai-compare-prev{font-size:9px;color:var(--d-text3);margin-top:2px}
.ai-compare-delta{font-size:9px;font-weight:700;margin-top:3px}
.ai-compare-delta.up{color:#22c55e}
.ai-compare-delta.down{color:#ef4444}
.ai-compare-delta.flat{color:var(--d-text3)}

/* Velocity Bars */
.ai-velocity-bars{display:flex;align-items:flex-end;gap:6px;height:90px;margin-bottom:8px}
.ai-vel-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;height:100%}
.ai-vel-bar{
  width:100%;border-radius:4px 4px 0 0;background:rgba(201,168,76,0.25);
  transition:height 1.2s cubic-bezier(0.4,0,0.2,1);min-height:4px;
  position:relative;margin-top:auto;will-change:height;height:0;
}
.ai-vel-bar:hover{background:rgba(201,168,76,0.5)}
.ai-vel-bar-count{
  font-size:8px;font-weight:700;color:var(--d-text2);text-align:center;
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;
}
.ai-vel-bar-label{font-size:8px;color:var(--d-text3);text-align:center;margin-top:3px}
.ai-vel-footer{display:flex;justify-content:space-between;border-top:1px solid var(--d-border);padding-top:8px}
.ai-vel-stat{text-align:center}
.ai-vel-stat-val{font-size:14px;font-weight:800;color:var(--d-text)}
.ai-vel-stat-lbl{font-size:8px;color:var(--d-text3);text-transform:uppercase;letter-spacing:0.08em}

/* Topics with quotes */
.ai-topic-item{
  padding:10px 0;border-bottom:1px solid var(--d-border);
}
.ai-topic-item:last-child{border-bottom:none}
.ai-topic-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.ai-topic-name{font-size:12px;font-weight:700;color:var(--d-text)}
.ai-topic-track{
  flex:1;height:4px;background:rgba(255,255,255,0.06);border-radius:2px;margin:0 10px;
  overflow:hidden;
}
[data-theme="light"] .ai-topic-track{background:rgba(0,0,0,0.06)}
.ai-topic-fill{
  height:100%;border-radius:2px;background:var(--d-gold);
  transition:width 0.6s cubic-bezier(0.34,1.56,0.64,1);will-change:width;
}
.ai-topic-fill.positive{background:#22c55e}
.ai-topic-fill.negative{background:#ef4444}
.ai-topic-fill.neutral{background:var(--d-gold)}
.ai-topic-count{font-size:9px;font-weight:700;color:var(--d-text3);white-space:nowrap}
.ai-topic-quote{
  font-size:11px;color:var(--d-text3);font-style:italic;
  margin-top:4px;padding-left:10px;border-left:2px solid rgba(201,168,76,0.3);line-height:1.5;
}

/* Loyalty Signals */
.ai-loyalty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.ai-loyalty-cell{
  background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);
  border-radius:8px;padding:12px;text-align:center;
}
[data-theme="light"] .ai-loyalty-cell{background:rgba(0,0,0,0.02);border-color:rgba(0,0,0,0.06)}
.ai-loyalty-val{font-size:22px;font-weight:800;color:var(--d-gold);line-height:1}
.ai-loyalty-lbl{font-size:10px;font-weight:700;color:var(--d-text);margin-top:4px}
.ai-loyalty-sub{font-size:8px;color:var(--d-text3);margin-top:2px}
.ai-loyalty-quote{
  margin-top:10px;padding:10px 14px;
  background:rgba(201,168,76,0.06);border:1px solid rgba(201,168,76,0.12);
  border-radius:8px;font-size:12px;color:var(--d-text2);font-style:italic;line-height:1.6;
}
.ai-loyalty-attr{
  font-size:10px;color:var(--d-text3);font-style:normal;margin-top:4px;display:block;
}

/* Draft Cards */
.ai-draft-grid{display:flex;flex-direction:column;gap:0.75rem}
.ai-draft-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;overflow:hidden;transition:border-color 0.2s,box-shadow 0.2s;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.07);
}
[data-theme="light"] .ai-draft-card{background:#ffffff;border-color:rgba(0,0,0,0.06)}
.ai-draft-card:hover{border-color:var(--d-gold);box-shadow:var(--d-shadow-lg)}
.ai-draft-review-section{
  padding:14px 18px;border-bottom:1px solid rgba(255,255,255,0.06);
}
[data-theme="light"] .ai-draft-review-section{border-bottom-color:rgba(0,0,0,0.06)}
.ai-draft-response-section{
  padding:14px 18px;background:rgba(201,168,76,0.04);
  border-left:3px solid rgba(201,168,76,0.4);
}
[data-theme="light"] .ai-draft-response-section{background:rgba(201,168,76,0.06)}
.ai-draft-label-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.ai-draft-label{
  font-size:9px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--d-gold);
}
.ai-draft-tone{
  font-size:9px;font-weight:600;color:rgba(201,168,76,0.6);
  background:rgba(201,168,76,0.08);padding:2px 8px;border-radius:100px;
}
.ai-draft-text{
  font-size:13px;line-height:1.8;color:var(--d-text2);margin-bottom:10px;white-space:pre-wrap;
}

/* Draft Buttons */
.btn-copy-draft{
  padding:8px 16px;background:#C9A84C;color:#0E0D0C;border:none;border-radius:8px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;
  cursor:pointer;transition:transform 0.2s,box-shadow 0.2s,background 0.2s;letter-spacing:0.02em;
  display:inline-flex;align-items:center;gap:5px;
}
[data-theme="light"] .btn-copy-draft{background:#0E0D0C;color:#ffffff}
.btn-copy-draft:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,0.3)}
.btn-copy-draft.copied{background:#22c55e;color:#fff}
.btn-regen-draft,.btn-refine-draft{
  padding:6px 12px;background:rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.8);border:1px solid rgba(255,255,255,0.12);
  border-radius:6px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;font-weight:600;cursor:pointer;transition:border-color 0.2s,color 0.2s;
  display:inline-flex;align-items:center;gap:4px;
}
[data-theme="light"] .btn-regen-draft,[data-theme="light"] .btn-refine-draft{background:transparent;color:#0E0D0C;border-color:rgba(0,0,0,0.15)}
.btn-regen-draft:hover,.btn-refine-draft:hover{border-color:var(--d-gold);color:var(--d-gold)}
.btn-regen-draft.spinning svg{animation:spin 0.7s linear infinite}
.ai-refine-row{display:none;margin-top:8px}
.ai-refine-row.open{display:flex;gap:0.5rem;align-items:center}
.ai-refine-row .ai-refine-input{
  flex:1;padding:7px 10px;background:var(--d-surface);border:1px solid var(--d-border);
  border-radius:6px;color:var(--d-text);font-size:12px;font-family:inherit;display:block;margin-top:0;
}
.ai-refine-row .ai-refine-input::placeholder{color:var(--d-text3)}
.ai-refine-row .ai-refine-send{
  padding:7px 12px;background:var(--d-gold);color:#0f1014;border:none;border-radius:6px;
  font-family:inherit;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap;
}

/* AI Loading Spinner */
.ai-loading-spinner{
  width:32px;height:32px;border:3px solid rgba(201,168,76,0.15);
  border-top-color:var(--d-gold);border-radius:50%;
  animation:spin 0.8s linear infinite;margin:0 auto;
}

/* ── VIEW ALL BUTTON ── */
.dash-view-all-btn{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;padding:8px 18px;
  font-size:13px;cursor:pointer;
  color:rgba(255,255,255,0.8);
  transition:border-color 0.2s,color 0.2s,background 0.2s;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:600;letter-spacing:0.02em;
}
[data-theme="light"] .dash-view-all-btn{background:transparent;color:#0E0D0C;border-color:rgba(0,0,0,0.15)}
.dash-view-all-btn:hover{border-color:var(--d-gold);color:var(--d-gold);transform:scale(1.02)}

/* Gold flash on new reviews */
.dash-review.new-flash{animation:goldFlash 2s ease forwards}

/* ── Location switcher ── */
.loc-switcher{display:flex;align-items:center;gap:6px;background:var(--d-surface);border:1px solid var(--d-border);border-radius:8px;padding:5px 10px 5px 10px;font-size:12px;color:var(--d-text2);cursor:pointer;white-space:nowrap;max-width:220px}
.loc-switcher select{background:transparent;border:none;outline:none;color:var(--d-text);font-size:12px;font-family:inherit;font-weight:600;cursor:pointer;max-width:160px;min-width:80px}
.loc-switcher-icon{color:var(--d-gold);flex-shrink:0}
.loc-limit-msg{font-size:11px;color:var(--d-text3);padding:3px 6px;background:var(--d-surface2);border-radius:5px;border:1px solid var(--d-border)}
.add-loc-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--d-gold);background:transparent;border:1px solid rgba(201,168,76,0.3);border-radius:6px;padding:4px 9px;cursor:pointer;white-space:nowrap;transition:background 0.15s}
.add-loc-btn:hover{background:rgba(201,168,76,0.08)}

/* ── ADMIN DASHBOARD — Dark Glass ── */
#admin-page{display:none;min-height:100vh;background:#0f1014;position:relative;overflow-x:hidden}
#admin-page::before{
  content:'';position:fixed;top:-100px;left:50%;width:800px;height:800px;border-radius:50%;
  background:radial-gradient(circle, rgba(201,168,76,0.06) 0%, transparent 70%);
  filter:blur(150px);pointer-events:none;z-index:0;
  animation:auroraPulse 30s ease-in-out infinite;
}
.admin-nav{
  position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:200;
  display:flex;align-items:center;gap:0;padding:6px 12px;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-radius:100px;box-shadow:0 8px 32px rgba(0,0,0,0.3),0 1px 0 rgba(201,168,76,0.2) inset;
  animation:pillDrop 0.4s cubic-bezier(0.34,1.56,0.64,1) both;
  max-width:calc(100vw - 32px);
}
.admin-badge-role{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;background:var(--gold);color:#0f1014;padding:3px 10px;border-radius:20px;margin-left:10px}
.admin-user-row{display:flex;align-items:center;gap:0.75rem;padding-left:12px}
.admin-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dk));color:#0f1014;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}
.admin-uname{font-size:11px;font-weight:500;color:rgba(255,255,255,0.6)}
.btn-admin-signout{background:transparent;border:none;border-radius:100px;padding:6px 12px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:600;color:rgba(255,255,255,0.4);cursor:pointer;transition:all 0.2s}
.btn-admin-signout:hover{color:rgba(255,255,255,0.9)}
.admin-body{display:grid;grid-template-columns:220px 1fr;min-height:100vh}
.admin-sidebar{background:rgba(255,255,255,0.02);border-right:1px solid rgba(255,255,255,0.06);padding:90px 0 1.5rem;position:relative;z-index:1}
.admin-sidebar-label{font-size:10px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.25);padding:1rem 1.5rem 0.4rem}
.admin-sidebar a{display:flex;align-items:center;gap:9px;padding:10px 1.5rem;font-size:13px;color:rgba(255,255,255,0.45);text-decoration:none;border-left:2px solid transparent;transition:all 0.15s;cursor:pointer}
.admin-sidebar a:hover{color:rgba(255,255,255,0.8);background:rgba(255,255,255,0.04)}
.admin-sidebar a.active{color:var(--gold);border-left-color:var(--gold);background:rgba(201,168,76,0.06)}
.admin-main{padding:90px 2.5rem 2.5rem;overflow-y:auto;position:relative;z-index:1}
.admin-greeting{font-family:'Plus Jakarta Sans',sans-serif;font-size:26px;font-weight:800;letter-spacing:-0.02em;color:#ffffff;margin-bottom:0.25rem}
.admin-greeting-sub{font-size:13px;color:rgba(255,255,255,0.35);margin-bottom:2rem}
.admin-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.admin-kpi-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-left:2px solid rgba(201,168,76,0.4);
  border-radius:16px;padding:1.5rem 1.25rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:all 0.25s;
}
.admin-kpi-card:hover{border-color:rgba(201,168,76,0.3);transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,0.3)}
.admin-kpi-label{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:0.6rem}
.admin-kpi-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:30px;font-weight:800;letter-spacing:-0.02em;color:#ffffff;line-height:1;margin-bottom:0.3rem}
.admin-kpi-sub{font-size:11px;color:var(--gold)}
.admin-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;padding:1.5rem;margin-bottom:1rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.admin-card-title{font-size:13px;font-weight:600;color:#ffffff;margin-bottom:0.25rem}
.admin-card-sub{font-size:11px;color:rgba(255,255,255,0.3);margin-bottom:1.5rem}
.admin-revenue-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}
.admin-rev-card{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;padding:1.25rem 1.5rem;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.admin-rev-label{font-size:11px;color:rgba(255,255,255,0.3);margin-bottom:0.5rem;text-transform:uppercase;letter-spacing:0.08em;font-weight:600}
.admin-rev-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;color:#ffffff;line-height:1}
.admin-rev-sub{font-size:11px;color:var(--gold);margin-top:0.3rem}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.3);text-align:left;padding:0 1rem 0.75rem;border-bottom:1px solid rgba(255,255,255,0.07)}
.admin-table td{font-size:13px;color:rgba(255,255,255,0.65);padding:0.9rem 1rem;border-bottom:1px solid rgba(255,255,255,0.05)}
.admin-table tr:last-child td{border-bottom:none}
.admin-table tr:nth-child(even) td{background:rgba(255,255,255,0.02)}
.admin-table tr:hover td{background:rgba(201,168,76,0.06)}
.admin-table td strong{color:#ffffff;font-weight:600}
.admin-status-badge{background:rgba(201,168,76,0.15);color:var(--gold);font-size:10px;font-weight:600;padding:3px 10px;border-radius:20px}
.admin-loading{text-align:center;padding:4rem;color:rgba(255,255,255,0.3);font-size:14px}
.admin-panel{display:none}.admin-panel.active{display:block;animation:panelFadeIn 0.3s ease both}
.admin-status-badge.status-trial{background:rgba(59,130,246,0.15);color:#60a5fa}
.admin-status-badge.status-active{background:rgba(34,197,94,0.15);color:#4ade80}
.admin-status-badge.status-churned{background:rgba(239,68,68,0.15);color:#f87171}

/* ══ ADMIN DETAIL MODAL — Dark Glass ══ */
.admin-modal-overlay{display:none;position:fixed;inset:0;z-index:600;background:rgba(10,9,8,0.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center}
.admin-modal-overlay.open{display:flex}
.admin-modal{
  background:rgba(15,16,20,0.95);border:1px solid rgba(255,255,255,0.1);
  border-radius:16px;padding:2rem;width:100%;max-width:520px;max-height:85vh;
  overflow-y:auto;position:relative;animation:panelFadeIn 0.25s ease both;
  box-shadow:0 24px 64px rgba(0,0,0,0.5);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}
.admin-modal-close{position:absolute;top:1rem;right:1.25rem;background:none;border:none;cursor:pointer;font-size:1.5rem;color:rgba(255,255,255,0.4);transition:color 0.15s;line-height:1}
.admin-modal-close:hover{color:var(--white)}
.admin-modal-title{font-size:18px;font-weight:700;color:var(--white);margin-bottom:1.5rem;padding-right:2rem}
.cdm-section{border-bottom:1px solid rgba(255,255,255,0.06);padding-bottom:1rem;margin-bottom:1rem}
.cdm-section:last-child{border-bottom:none;margin-bottom:0}
.cdm-section-title{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:0.75rem}
.cdm-row{display:flex;justify-content:space-between;align-items:center;padding:0.35rem 0}
.cdm-label{font-size:12px;color:rgba(255,255,255,0.4);min-width:120px}
.cdm-value{font-size:13px;color:var(--white);text-align:right}
.cdm-edit-section .cdm-row{margin-bottom:0.5rem}

/* ── GLASS GLOSS OVERRIDES — moved to bottom of file for max specificity ── */

/* ══ RESPONSIVE — default hidden states ══ */
.dash-hamburger{display:none}
.dash-backdrop{display:none}
.admin-hamburger{display:none}
.admin-backdrop{display:none}

/* ══ RESPONSIVE ══ */
@media(max-width:768px){
  /* ── Landing page pill nav mobile ── */
  .lp-pill-nav{padding:8px 12px;border-radius:16px;max-width:calc(100vw - 24px)}
  .lp-pill-divider{display:none}
  .lp-pill-center{display:none}
  .lp-pill-right{display:none}
  .lp-pill-right.nav-open{display:flex;position:fixed;inset:0;top:60px;background:rgba(10,10,14,0.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:99;padding:2rem;border-radius:0}
  .lp-pill-right.nav-open .lp-pill-signin{font-size:18px;color:var(--white)}
  .lp-pill-right.nav-open .lp-pill-cta{font-size:16px;padding:14px 32px}
  .mobile-menu-toggle{display:flex;align-items:center;justify-content:center}
  section{padding:4rem 1.25rem}
  .hero{padding:4rem 1.25rem 3rem;min-height:auto}
  .aurora-band{filter:blur(50px)}
  .hero-headline{font-size:clamp(32px,9vw,56px)}
  .hero-sub{font-size:15px}
  .hero-stats{flex-wrap:wrap;gap:1.5rem}
  .hero-stat-divider{display:none}
  .how-v2-grid{flex-direction:column;gap:1.25rem}
  .how-v2-connector{display:none}
  /* old services-grid rule removed */
  .tm-grid{grid-template-columns:1fr}
  .pr-grid{grid-template-columns:1fr}
  .pr-card-left,.pr-card-right{border-radius:16px;border:1px solid rgba(255,255,255,0.08)}
  .pr-card-center{border-radius:16px;transform:none}
  .pr-card-center:hover{transform:translateY(-4px)}
  .wi-header{grid-template-columns:1fr;gap:2rem}
  .wi-header-right{flex-direction:column}
  .wi-row{grid-template-columns:48px 1fr;gap:12px}
  .wi-compare{grid-column:1/-1;flex-direction:row;gap:16px;padding-top:8px}
  .cta2-inner{grid-template-columns:1fr;text-align:center}
  .cta2-checks{justify-content:center}
  .cta2-card{padding:40px 24px}
  .ft-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .ft-brand{grid-column:1/-1}
  .ft-bottom{flex-direction:column;gap:8px;text-align:center}
  /* proof-strip removed */
  .reel-section{padding:60px 1rem}
  .reel-stage{border-radius:14px;min-height:auto}
  .rf1-layout{grid-template-columns:1fr;gap:12px}
  .rf1-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .rf2-layout{grid-template-columns:1fr;gap:12px}
  .rf3-grid{grid-template-columns:1fr}
  .rf3-compare-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .reel-tabs{display:none}
  /* proof-label removed */
  .reviews-stat-bar{grid-template-columns:repeat(2,1fr)}
  .admin-revenue-row{grid-template-columns:1fr}
  .su-plan-select-grid{grid-template-columns:1fr}
  .pricing-flex{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}
  .pricing-flex-btn{width:100%;justify-content:center}

  /* ── Dashboard layout ── */
  .dash-layout,.admin-body{grid-template-columns:1fr}

  /* ── Admin hamburger button visible on mobile ── */
  .admin-hamburger{
    display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;
    background:none;border:none;cursor:pointer;padding:6px;margin-right:8px;
    width:36px;height:36px;flex-shrink:0
  }
  .admin-hamburger span{display:block;width:20px;height:2px;background:rgba(255,255,255,0.8);border-radius:2px;transition:all 0.3s}

  /* ── Admin sidebar as mobile slide-over ── */
  .admin-sidebar{
    display:flex;flex-direction:column;
    position:fixed;top:0;left:0;bottom:0;
    width:240px;padding-top:80px;
    transform:translateX(-100%);
    transition:transform 0.3s ease;
    z-index:300;
    overflow-y:auto;
    background:rgba(15,16,20,0.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  }
  .admin-sidebar.sidebar-open{transform:translateX(0)}

  /* ── Admin backdrop ── */
  .admin-backdrop{
    display:none;position:fixed;inset:0;
    background:rgba(0,0,0,0.6);z-index:250;
    transition:opacity 0.3s
  }
  .admin-backdrop.visible{display:block}

  /* ── Admin nav compact ── */
  .admin-body{grid-template-columns:1fr}
  .admin-main{padding:80px 1.25rem 1.25rem}
  .admin-nav{padding:4px 8px;top:10px}

  /* ── Admin scrollable table wrapper ── */
  .admin-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -1.25rem;padding:0 1.25rem}
  .admin-table{min-width:600px}
  .admin-modal{max-width:calc(100vw - 2rem);margin:1rem;max-height:calc(100vh - 2rem)}

  /* ── Pill nav mobile ── */
  .pill-nav{padding:4px 6px;top:10px}
  .pill-nav-tabs{display:none}
  .pill-nav-divider{display:none}
  .pill-hamburger{display:flex}
  .pill-signout{display:none}
  .pill-nav-loc{max-width:120px}

  /* ── KPI grids 2x2 ── */
  .kpi-grid{grid-template-columns:repeat(2,1fr)}
  .admin-kpi-row{grid-template-columns:repeat(2,1fr)}
  .report-kpi-row{grid-template-columns:repeat(2,1fr)}

  /* ── Chart and settings stack ── */
  .chart-row{grid-template-columns:1fr}
  .settings-grid{grid-template-columns:1fr}

  /* ── Dashboard panel padding ── */
  .dash-panel{padding:80px 1rem 3rem}

  /* ── Review cards stacked layout ── */
  .dr-header{flex-direction:column;align-items:flex-start}
  .dr-stars{margin-top:4px}
  .rfc-top{flex-direction:column;align-items:flex-start}
  .rfc-stars{margin-top:4px}
}

@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
/* Multi-step signup modal */
.signup-overlay{display:none;position:fixed;inset:0;z-index:600;background:rgba(14,13,12,0.65);backdrop-filter:blur(5px);align-items:center;justify-content:center;padding:1rem}
.signup-overlay.open{display:flex}
.signup-modal{background:var(--white);border-radius:16px;width:100%;max-width:580px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 32px 80px rgba(0,0,0,0.18);animation:fadeUp 0.28s ease both}
.signup-header{padding:2rem 2rem 0;position:sticky;top:0;background:var(--white);z-index:2;border-radius:16px 16px 0 0}
.signup-progress{display:flex;align-items:center;gap:0;margin-bottom:1.5rem}
.signup-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;transition:all 0.3s}
.signup-step-dot.done{background:var(--black);color:var(--white)}
.signup-step-dot.active{background:var(--gold);color:var(--black);box-shadow:0 0 0 4px rgba(201,168,76,0.2)}
.signup-step-dot.pending{background:var(--cream2);color:var(--gray)}
.signup-step-line{flex:1;height:2px;background:var(--cream2);transition:background 0.3s}
.signup-step-line.done{background:var(--black)}
.signup-close{position:absolute;top:1.25rem;right:1.5rem;background:none;border:none;cursor:pointer;font-size:1.4rem;color:var(--gray);line-height:1;transition:color 0.15s}
.signup-close:hover{color:var(--text)}
.signup-body{padding:0 2rem 2rem}
.signup-step{display:none}
.signup-step.active{display:block;animation:fadeIn 0.25s ease both}
.signup-step-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:700;letter-spacing:-0.02em;color:var(--black);margin-bottom:0.3rem}
.signup-step-sub{font-size:13px;color:var(--text2);margin-bottom:1.75rem;line-height:1.6}
.su-field{margin-bottom:1rem}
.su-field label{display:block;font-size:11px;font-weight:600;color:var(--text2);margin-bottom:0.4rem;letter-spacing:0.05em;text-transform:uppercase}
.su-field input,.su-field select,.su-field textarea{width:100%;padding:11px 14px;border:1.5px solid var(--gray-lt);border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;color:var(--text);background:var(--white);outline:none;transition:border-color 0.2s,box-shadow 0.2s}
.su-field input:focus,.su-field select:focus,.su-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,0.1)}
.su-field textarea{resize:vertical;min-height:80px}
.su-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.platform-checks{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.5rem}
/* PLAN SELECTION IN SIGNUP */
.su-plan-select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;margin-bottom:0.5rem}
.su-plan-option{border:1.5px solid var(--gray-lt);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all 0.18s;position:relative;background:var(--cream)}
.su-plan-option:hover{border-color:var(--gold);background:#fdf7e8;transform:translateY(-2px)}
.su-plan-option.selected{border-color:var(--black);background:var(--white);box-shadow:0 4px 16px rgba(0,0,0,0.1)}
.su-plan-featured{border-color:var(--black)!important;background:var(--black)!important;color:var(--white)}
.su-plan-featured:hover{background:#1a1917!important;transform:translateY(-2px)}
.su-plan-featured.selected{box-shadow:0 4px 20px rgba(0,0,0,0.25)}
.su-plan-popular{font-size:9px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem}
.su-plan-option-name{font-size:13px;font-weight:800;color:var(--black);letter-spacing:-0.01em;margin-bottom:0.25rem}
.su-plan-featured .su-plan-option-name{color:var(--white)}
.su-plan-option-price{font-size:26px;font-weight:800;letter-spacing:-0.04em;color:var(--black);line-height:1;margin-bottom:0.25rem}
.su-plan-option-price span{font-size:13px;font-weight:400;color:var(--text2)}
.su-plan-featured .su-plan-option-price{color:var(--white)}
.su-plan-featured .su-plan-option-price span{color:rgba(255,255,255,0.5)}
.su-plan-option-desc{font-size:11px;color:var(--text2);margin-bottom:0.875rem;padding-bottom:0.875rem;border-bottom:1px solid var(--gray-lt)}
.su-plan-featured .su-plan-option-desc{color:rgba(255,255,255,0.5);border-bottom-color:rgba(255,255,255,0.1)}
.su-plan-option-features{list-style:none;margin-bottom:1rem}
.su-plan-option-features li{font-size:11px;color:var(--text2);padding:3px 0;display:flex;align-items:center;gap:5px}
.su-plan-option-features li::before{content:"✓";color:var(--gold);font-weight:700;flex-shrink:0}
.su-plan-featured .su-plan-option-features li{color:rgba(255,255,255,0.65)}
.su-plan-option-btn{font-size:12px;font-weight:700;color:var(--text2);text-align:center;padding:7px;border:1.5px solid var(--gray-lt);border-radius:7px;transition:all 0.15s}
.su-plan-option:hover .su-plan-option-btn,.su-plan-option.selected .su-plan-option-btn{border-color:var(--gold);color:var(--gold-dk);background:rgba(201,168,76,0.08)}
.su-plan-featured .su-plan-option-btn{border-color:rgba(255,255,255,0.2);color:rgba(255,255,255,0.7)}
.su-plan-featured:hover .su-plan-option-btn,.su-plan-featured.selected .su-plan-option-btn{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,0.1)}

.plat-cb{display:none}
.plat-label{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border:1.5px solid var(--gray-lt);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.15s;background:var(--cream);color:var(--text2);user-select:none}
.plat-cb:checked+.plat-label{border-color:var(--gold);background:#fdf7e8;color:var(--black);font-weight:600}
.su-error{font-size:12px;color:var(--red);margin-bottom:0.75rem;display:none;font-weight:500}
.su-btn-row{display:flex;gap:0.75rem;margin-top:1.5rem;align-items:center}
.su-btn-next{flex:1;padding:13px;background:var(--black);color:var(--white);border:none;border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s}
.su-btn-next:hover{background:#2a2825;transform:translateY(-1px)}
.su-btn-next:disabled{opacity:0.6;cursor:not-allowed;transform:none}
.su-btn-back{padding:13px 20px;background:transparent;color:var(--text2);border:1.5px solid var(--gray-lt);border-radius:100px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;cursor:pointer;transition:all 0.2s}
.su-btn-back:hover{border-color:var(--black);color:var(--text)}
.su-plan-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:rgba(201,168,76,0.12);color:var(--gold-dk);border-radius:20px;font-size:12px;font-weight:600;margin-bottom:1.25rem}
.su-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;color:var(--gray);font-size:12px}
.su-divider::before,.su-divider::after{content:'';flex:1;height:1px;background:var(--gray-lt)}

/* Step 4 — success */
.signup-success{text-align:center;padding:1rem 0 0.5rem}
.signup-success-icon{font-size:3.5rem;margin-bottom:1rem;display:block;animation:fadeUp 0.4s ease both}
.signup-success-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:700;color:var(--black);margin-bottom:0.75rem}
.signup-success-body{font-size:14px;color:var(--text2);line-height:1.7;margin-bottom:1.5rem}
.signup-success-steps{text-align:left;background:var(--cream);border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}
.signup-success-step{display:flex;gap:12px;padding:8px 0;font-size:13px;color:var(--text2);line-height:1.5;border-bottom:1px solid var(--gray-lt)}
.signup-success-step:last-child{border-bottom:none}
.signup-success-step-num{width:22px;height:22px;border-radius:50%;background:var(--black);color:var(--white);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
/* Step 4 — loading state */
.su-loading-spinner{width:40px;height:40px;border:2.5px solid var(--cream2);border-top-color:var(--gold);border-radius:50%;animation:spin 0.8s linear infinite;margin:0 auto 1.25rem}
.su-loading-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;font-weight:700;color:var(--black);margin-bottom:0.5rem}
.su-loading-sub{font-size:13px;color:var(--text2);line-height:1.6}

/* Chart grid lines */

/* ── Typewriter cursor ── */
.typewriter-cursor{display:inline-block;width:2px;height:1em;background:var(--d-gold);margin-left:2px;animation:blink 0.8s step-end infinite;vertical-align:text-bottom}
@keyframes blink{50%{opacity:0}}

/* ── Trend chart shimmer ── */
.trend-shimmer-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:1.5rem}
.trend-shimmer-bar{height:10px;border-radius:6px;background:linear-gradient(90deg,rgba(201,168,76,0.06) 0%,rgba(201,168,76,0.12) 50%,rgba(201,168,76,0.06) 100%);background-size:400px 100%;animation:aiShimmer 1.5s ease-in-out infinite}
[data-theme="light"] .trend-shimmer-bar{background:linear-gradient(90deg,rgba(0,0,0,0.04) 0%,rgba(0,0,0,0.08) 50%,rgba(0,0,0,0.04) 100%);background-size:400px 100%;animation:aiShimmer 1.5s ease-in-out infinite}
.trend-shimmer-msg{font-size:11px;color:var(--d-text3);margin-top:4px}

/* ── Chart placeholder ── */
.chart-placeholder{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  height:200px;border:1px dashed rgba(201,168,76,0.2);
  border-radius:12px;color:rgba(201,168,76,0.5);font-size:13px;
  text-align:center;padding:2rem;gap:0.75rem;
}
.chart-placeholder-icon{font-size:24px;opacity:0.5}
[data-theme="light"] .chart-placeholder{border-color:rgba(201,168,76,0.2)}
[data-theme="light"] #settings-locations-list > div{background:rgba(255,255,255,0.6)!important;border-color:rgba(0,0,0,0.06)!important}

/* ══ HIVE SCORE CARD ══ */
.hive-score-card{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:start !important;background:var(--d-surface);border:1px solid var(--d-border);border-radius:16px;padding:24px;position:relative;overflow:visible !important;min-height:0 !important;will-change:transform;box-shadow:0 0 40px rgba(201,168,76,0.08), 0 4px 24px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.1), inset 0 -1px 0 rgba(0,0,0,0.2)}
.hive-score-card::before{content:'';position:absolute;width:200px;height:200px;border-radius:50%;background:rgba(201,168,76,0.04);filter:blur(60px);top:-50px;right:-50px;pointer-events:none}
.hive-score-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--d-text3);margin-bottom:6px}
.hive-ring-wrap{position:relative;width:140px;height:140px;margin:0 auto 8px;overflow:visible}
.hive-ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
#hive-ring-svg{filter:drop-shadow(0 0 10px rgba(201,168,76,0.5));overflow:visible}
.hive-ring-wrap svg circle:last-child{filter:drop-shadow(0 0 8px rgba(201,168,76,0.5))}
.hive-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.hive-score-num{font-size:40px;font-weight:800;color:var(--d-text);line-height:1}
.hive-score-of{font-size:9px;color:var(--d-text3);margin-top:2px}
.hive-score-delta{font-size:10px;font-weight:600;color:var(--d-green);margin-bottom:10px}
.hive-google-row{display:flex;align-items:center;gap:6px;padding:6px 12px;background:rgba(201,168,76,0.06);border-radius:8px}
.hive-google-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--d-text3)}
.hive-google-val{font-size:13px;font-weight:700;color:var(--d-gold)}
.hive-breakdown-title{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--d-text3);margin-bottom:8px}
.hive-section-divider{border:none;border-top:1px solid var(--d-border);margin:12px 0}
.hive-factor-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.hive-factor-label{font-size:12px;color:var(--d-text2);width:90px;flex-shrink:0}
.hive-factor-track{flex:1;height:6px;background:rgba(255,255,255,0.06);border-radius:3px;overflow:hidden}
.hive-factor-fill{height:100%;background:linear-gradient(90deg,#e8d5a3,#C9A84C);border-radius:3px;transition:width 1.4s cubic-bezier(0.4,0,0.2,1);will-change:width}
.hive-factor-score{font-size:12px;font-weight:700;color:var(--d-text3);width:32px;text-align:right;flex-shrink:0}
.hive-star-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.hive-star-label{font-size:10px;color:var(--d-gold);width:24px;flex-shrink:0}
.hive-star-track{flex:1;height:5px;background:rgba(255,255,255,0.06);border-radius:3px;overflow:hidden}
.hive-star-fill{height:100%;background:var(--d-gold);border-radius:3px;transition:width 1.2s cubic-bezier(0.4,0,0.2,1);will-change:width}
.hive-star-count{font-size:10px;color:var(--d-text3);width:28px;text-align:right;flex-shrink:0}
[data-theme="light"] .hive-score-card{background:rgba(255,255,255,0.7);border-color:rgba(0,0,0,0.06)}
[data-theme="light"] .hive-factor-track,[data-theme="light"] .hive-star-track{background:rgba(0,0,0,0.06)}
[data-theme="light"] .hive-ring-wrap svg circle:first-child{stroke:rgba(0,0,0,0.06)}

/* ══ KPI MINI CELLS ══ */
.kc{background:var(--d-surface);border:1px solid var(--d-border);border-radius:8px;padding:10px;transition:border-color 0.2s,background 0.2s}
.kc:hover{border-color:rgba(201,168,76,0.3);background:rgba(201,168,76,0.05)}
.kc-label{font-size:9px;text-transform:uppercase;letter-spacing:0.07em;color:var(--d-text3);margin-bottom:4px}
.kc-val{font-size:22px;font-weight:700;color:var(--d-text);line-height:1}
.kc-delta{font-size:10px;font-weight:600;color:var(--d-green);margin-top:3px}
.kc-delta.neg{color:var(--d-red)}
[data-theme="light"] .kc{background:rgba(0,0,0,0.02)}

/* ══ ALERT BANNER ══ */
.dash-alert-banner{display:none;align-items:center;justify-content:space-between;padding:10px 16px;background:rgba(185,64,64,0.08);border:1px solid rgba(185,64,64,0.2);border-radius:10px;margin-bottom:12px}
.dash-alert-banner.visible{display:flex;animation:alertSlideDown 0.3s cubic-bezier(0.16,1,0.3,1) both}
.dash-alert-text{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--d-red)}
.dash-alert-dot{width:6px;height:6px;border-radius:50%;background:var(--d-red);animation:dashPulse 2s ease-in-out infinite}
.dash-alert-action{background:rgba(185,64,64,0.12);border:1px solid rgba(185,64,64,0.3);border-radius:6px;padding:5px 12px;font-size:11px;font-weight:600;color:var(--d-red);cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;transition:background 0.2s}
.dash-alert-action:hover{background:rgba(185,64,64,0.2)}
[data-theme="light"] .dash-alert-text{color:#7a5f1a}
[data-theme="light"] .dash-alert-banner{background:rgba(201,168,76,0.1);border-color:rgba(201,168,76,0.3)}

/* ══ SENTIMENT / MID CARD ══ */
.dash-mid-card{background:var(--d-surface);border:1px solid var(--d-border);border-radius:14px;padding:18px;margin-bottom:1rem}
.dash-mid-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}
.dash-sentiment-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.dash-sentiment-label{font-size:10px;font-weight:600;width:52px;flex-shrink:0}
.dash-sentiment-track{flex:1;height:6px;background:rgba(255,255,255,0.06);border-radius:3px;overflow:hidden}
.dash-sentiment-fill{height:100%;border-radius:3px;width:0;transition:width 1.2s cubic-bezier(0.4,0,0.2,1)}
.dash-sentiment-pct{font-size:10px;font-weight:600;color:var(--d-text3);width:28px;text-align:right;flex-shrink:0}
[data-theme="light"] .dash-mid-card{background:rgba(255,255,255,0.7);border-color:rgba(0,0,0,0.06)}
[data-theme="light"] .dash-sentiment-track{background:rgba(0,0,0,0.06)}

/* ══ TOPIC TAGS ══ */
.dash-topic-tag{display:inline-block;padding:3px 10px;background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.15);border-radius:20px;font-size:10px;font-weight:600;color:var(--d-gold);margin:2px 4px 2px 0}

/* ══ AI PREVIEW ══ */
.dash-ai-preview{font-size:11px;color:var(--d-text2);line-height:1.6;max-height:80px;overflow:hidden;position:relative}
.dash-ai-preview::after{content:'';position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(transparent,var(--d-surface))}
[data-theme="light"] .dash-ai-preview::after{background:linear-gradient(transparent,rgba(255,255,255,0.7))}

/* ══ 2-COL REVIEWS ══ */
.dash-reviews-2col{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:1rem}
.dash-review-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0.75rem}

/* ══ REVIEW BADGES ══ */
.badge-needs-reply{display:inline-block;padding:2px 8px;border-radius:20px;font-size:9px;font-weight:700;background:rgba(185,64,64,0.12);color:var(--d-red);margin-left:6px}
.badge-pending{display:inline-block;padding:2px 8px;border-radius:20px;font-size:9px;font-weight:700;background:rgba(201,168,76,0.12);color:var(--d-gold);margin-left:6px}
.badge-responded{display:inline-block;padding:2px 8px;border-radius:20px;font-size:9px;font-weight:700;background:rgba(58,125,82,0.12);color:var(--d-green);margin-left:6px}

/* ══ REVIEW AI FOOTER (hover reveal) ══ */
.dash-review .dr-ai-footer{max-height:0;opacity:0;overflow:hidden;transition:max-height 0.2s ease,opacity 0.2s ease;font-size:10px;color:var(--d-gold);font-weight:600;padding-top:0}
.dash-review:hover .dr-ai-footer.pending{max-height:40px;opacity:1;padding-top:8px}
.dash-review-ai-draft-hint{max-height:0;overflow:hidden;transition:max-height 0.2s ease,opacity 0.2s ease;opacity:0;font-size:11px;color:var(--d-gold);font-weight:600;padding:0 0 0 4px}
.dash-review:hover .dash-review-ai-draft-hint{max-height:30px;opacity:1}

/* ══ SCROLL REVEAL (dashboard) ══ */
.scroll-reveal{opacity:0;transform:translateY(16px);transition:opacity 0.5s ease,transform 0.5s ease}
.scroll-reveal.revealed{opacity:1;transform:translateY(0)}

/* ═══ GLASS EFFECT — MAXIMUM SPECIFICITY ═══ */
#dashboard-page .kpi-card,
#dashboard-page .dash-card,
#dashboard-page .dash-review,
#dashboard-page .review-full-card,
#dashboard-page .settings-card,
#dashboard-page .report-card,
#dashboard-page .kc,
#dashboard-page .dash-mid-card {
  box-shadow: 0 4px 24px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.09) !important;
  background: linear-gradient(160deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0.03) 100%) !important;
}
#dashboard-page[data-theme="light"] .kpi-card,
#dashboard-page[data-theme="light"] .dash-card,
#dashboard-page[data-theme="light"] .dash-review,
#dashboard-page[data-theme="light"] .review-full-card,
#dashboard-page[data-theme="light"] .settings-card,
#dashboard-page[data-theme="light"] .report-card,
#dashboard-page[data-theme="light"] .kc,
#dashboard-page[data-theme="light"] .dash-mid-card {
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.07), inset 0 1px 0 rgba(255,255,255,1) !important;
  background: #ffffff !important;
  border: 0.5px solid rgba(0,0,0,0.08) !important;
}
#dashboard-page[data-theme="light"] {
  background: linear-gradient(180deg, #E8E3D8 0%, #E2DDD4 100%) !important;
}
#dashboard-page .hive-score-card,
#dashboard-page .ai-insights-header-card {
  box-shadow: 0 0 40px rgba(201,168,76,0.1), 0 4px 24px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.1) !important;
}

/* ── REVIEWS PANEL POLISH ── */
.reviews-stat-card {
  background: linear-gradient(160deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0.03) 100%) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.09) !important;
  border: 0.5px solid rgba(255,255,255,0.08) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.reviews-stat-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.1) !important;
}
[data-theme="light"] .reviews-stat-card {
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.07), inset 0 1px 0 rgba(255,255,255,1) !important;
  border: 0.5px solid rgba(0,0,0,0.07) !important;
}
[data-theme="light"] .reviews-stat-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,1) !important;
}

.review-full-card {
  background: linear-gradient(160deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.025) 100%) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.07) !important;
  border: 0.5px solid rgba(255,255,255,0.07) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}
.review-full-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 24px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.09) !important;
  border-color: rgba(201,168,76,0.2) !important;
}
[data-theme="light"] .review-full-card {
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05), 0 4px 14px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,1) !important;
  border: 0.5px solid rgba(0,0,0,0.07) !important;
}
[data-theme="light"] .review-full-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,1) !important;
  border-color: rgba(201,168,76,0.3) !important;
}

@keyframes statCardIn { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.reviews-stat-card { animation: statCardIn 0.3s ease both; }
.reviews-stat-card:nth-child(1) { animation-delay: 0s; }
.reviews-stat-card:nth-child(2) { animation-delay: 0.06s; }
.reviews-stat-card:nth-child(3) { animation-delay: 0.12s; }
.reviews-stat-card:nth-child(4) { animation-delay: 0.18s; }

/* Filter pills */
.filter-chip.active {
  background: #C9A84C !important;
  color: #0a0908 !important;
  border-color: #C9A84C !important;
  box-shadow: 0 0 12px rgba(201,168,76,0.3) !important;
}
.filter-chip:not(.active):hover {
  border-color: rgba(201,168,76,0.4) !important;
  color: #C9A84C !important;
}
[data-theme="light"] .filter-chip.active {
  background: #0a0908 !important;
  color: #ffffff !important;
  border-color: #0a0908 !important;
}

/* Search bar */
.reviews-search-input:focus {
  border-color: rgba(201,168,76,0.4) !important;
  background: rgba(255,255,255,0.07) !important;
}

/* ── REPORTS PANEL POLISH ── */
@keyframes reportCardIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@keyframes statCellIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }

.report-card {
  animation: reportCardIn 0.3s cubic-bezier(0.16,1,0.3,1) both !important;
}

/* PDF button */
.btn-pdf {
  background: #C9A84C !important;
  color: #0a0908 !important;
  border: none !important;
  border-radius: 100px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  box-shadow: 0 4px 16px rgba(201,168,76,0.3) !important;
}
.btn-pdf:hover {
  background: #e8d5a3 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(201,168,76,0.4) !important;
}
[data-theme="light"] .btn-pdf {
  background: #0a0908 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important;
}

/* Report title divider */
.report-header-bar {
  border-bottom: 1px solid rgba(201,168,76,0.15);
  padding-bottom: 16px;
  margin-bottom: 20px;
}
.report-month { font-size: 32px !important; font-weight: 800 !important; letter-spacing: -0.04em !important; }

/* ── SETTINGS PANEL POLISH ── */
.settings-card {
  background: linear-gradient(160deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0.03) 100%) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.09) !important;
  border: 0.5px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  transition: box-shadow 0.2s ease, border-color 0.2s ease !important;
}
.settings-card:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.1) !important;
  border-color: rgba(201,168,76,0.15) !important;
}
[data-theme="light"] .settings-card {
  background: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 6px 24px rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,1) !important;
  border: 0.5px solid rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .settings-card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,1) !important;
  border-color: rgba(201,168,76,0.25) !important;
}

@keyframes settingsCardIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
.settings-card { animation: settingsCardIn 0.3s cubic-bezier(0.16,1,0.3,1) both; }
.settings-card:nth-child(1) { animation-delay: 0s; }
.settings-card:nth-child(2) { animation-delay: 0.07s; }
.settings-card:nth-child(3) { animation-delay: 0.14s; }
.settings-card:nth-child(4) { animation-delay: 0.21s; }

/* Settings input fields */
.settings-card input[type="text"],
.settings-card input[type="password"],
.settings-card select,
.settings-card textarea {
  background: rgba(255,255,255,0.05) !important;
  border: 0.5px solid rgba(255,255,255,0.1) !important;
  border-radius: 8px !important;
  color: rgba(255,255,255,0.9) !important;
  padding: 10px 14px !important;
  font-size: 13px !important;
  font-family: inherit !important;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease !important;
}
.settings-card input:focus,
.settings-card select:focus,
.settings-card textarea:focus {
  border-color: rgba(201,168,76,0.5) !important;
  background: rgba(255,255,255,0.07) !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.1) !important;
  outline: none !important;
}
.settings-card input::placeholder { color: rgba(255,255,255,0.25) !important; }

[data-theme="light"] .settings-card input[type="text"],
[data-theme="light"] .settings-card input[type="password"],
[data-theme="light"] .settings-card select {
  background: #f8f6f2 !important;
  border: 0.5px solid rgba(0,0,0,0.1) !important;
  color: #0a0908 !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.05) !important;
}
[data-theme="light"] .settings-card input:focus,
[data-theme="light"] .settings-card select:focus {
  border-color: #C9A84C !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12) !important;
  background: #ffffff !important;
}

/* Settings buttons */
.settings-card .btn-gold, .settings-card button[type="submit"] {
  background: #C9A84C !important;
  color: #0a0908 !important;
  border: none !important;
  border-radius: 100px !important;
  padding: 10px 24px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(201,168,76,0.3) !important;
}
.settings-card .btn-gold:hover, .settings-card button[type="submit"]:hover {
  background: #e8d5a3 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(201,168,76,0.4) !important;
}
[data-theme="light"] .settings-card .btn-gold, [data-theme="light"] .settings-card button[type="submit"] {
  background: #0a0908 !important;
  color: #ffffff !important;
}
[data-theme="light"] .settings-card .btn-gold:hover, [data-theme="light"] .settings-card button[type="submit"]:hover {
  background: #C9A84C !important;
  color: #0a0908 !important;
}

/* Location items in settings */
#settings-locations-list > div {
  background: rgba(255,255,255,0.04) !important;
  border: 0.5px solid rgba(255,255,255,0.07) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease !important;
  margin-bottom: 8px !important;
}
#settings-locations-list > div:hover {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(201,168,76,0.2) !important;
  transform: translateX(3px) !important;
}
[data-theme="light"] #settings-locations-list > div {
  background: #f8f6f2 !important;
  border: 0.5px solid rgba(0,0,0,0.07) !important;
}
[data-theme="light"] #settings-locations-list > div:hover {
  background: #f0ede6 !important;
  border-color: rgba(201,168,76,0.3) !important;
}

/* Settings icons, titles, billing badge */
.settings-card-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(201,168,76,0.1);
  border: 0.5px solid rgba(201,168,76,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin-bottom: 12px;
}
[data-theme="light"] .settings-card-icon { background: rgba(201,168,76,0.08); }

.settings-card-title { font-size: 17px !important; font-weight: 700 !important; letter-spacing: -0.02em; }
.settings-card-sub { font-size: 12px !important; color: var(--d-text3) !important; margin-bottom: 16px !important; }

.billing-label { color: var(--d-text3); font-size: 13px; }
.billing-value { font-weight: 600; color: var(--d-text); font-size: 14px; }
.billing-badge.badge-trial {
  background: rgba(201,168,76,0.12) !important;
  color: #C9A84C !important;
  border: 0.5px solid rgba(201,168,76,0.3) !important;
}
