/* ═══════════════════════════════════════════════════════════════════
   GPM V23 — CONTAINED LAYOUT + HEADER/FOOTER + ALL FIXES
   No full-width. Max-width containers for all sections.
   ═══════════════════════════════════════════════════════════════════ */

/* ── CONTAINED LAYOUT ── */
.site-wrapper{max-width:var(--sr-lane-wide, 92rem);margin:0 auto;overflow-x:hidden}

/* Section containers — legacy pages only */
body:not(.sr-site) #dashboard>div,
body:not(.sr-site) #guide>div,
body:not(.sr-site) #about{max-width:80rem!important;margin-left:auto!important;margin-right:auto!important;padding-left:1rem!important;padding-right:1rem!important}
.sr-intelligence-shell{max-width:72rem!important;margin-left:auto!important;margin-right:auto!important;padding-left:1rem!important;padding-right:1rem!important}
.hero-stage-shell{max-width:48rem!important;margin-left:auto!important;margin-right:auto!important}
.hero-control-grid{max-width:64rem!important;margin-left:auto!important;margin-right:auto!important}
.hero-features-strip{max-width:56rem!important;margin-left:auto!important;margin-right:auto!important}

/* ── GLOBAL OVERFLOW FIX ── */
html,body{overflow-x:clip!important;max-width:100%!important}
body>div:first-child{max-width:100%!important;overflow-x:clip!important}
section,main,footer,article{max-width:100%!important;overflow-x:clip!important;box-sizing:border-box!important}
body.sr-site nav.nav-glass.nav-premium,
body.sr-site nav.nav-premium .nav-shell,
body.sr-site nav.nav-premium .nav-center,
body.sr-site nav.nav-premium .nav-pills{overflow:visible!important;overflow-x:auto!important}
body.sr-site nav.nav-premium .nav-pill,
body.sr-site nav.nav-premium .nav-pill span{overflow:visible!important;text-overflow:clip!important;max-width:none!important;flex-shrink:0!important}
body.sr-site nav.nav-glass>div{max-width:100%!important}
body.sr-site nav.nav-premium .nav-shell{
  display:grid!important;
  grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto)!important;
  align-items:center!important;
  overflow:visible!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:0!important;
}
.grid{min-width:0!important}
.grid>*{min-width:0!important;overflow:hidden!important}
body.sr-site .sr-footer-lang-grid,
body.sr-site .sr-footer-lang-pill,
body.sr-site .sr-footer-columns,
body.sr-site .sr-footer-col{overflow:visible!important}
body.sr-site .grid.sr-footer-columns>*{overflow:visible!important}

/* ═══════════════════════════════════════════════════════════════════
   HEADER — PREMIUM GLASS NAV
   ═══════════════════════════════════════════════════════════════════ */
.nav-glass{
  position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:100!important;
  padding:0.75rem 0 0!important;
  background:rgba(3,7,18,0.5)!important;backdrop-filter:blur(16px)!important;
  backdrop-filter:blur(24px) saturate(1.8)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.8)!important;
  border-bottom:1px solid rgba(255,255,255,0.04)!important;
}
.nav-glass.scrolled{
  background:rgba(3,7,18,0.5)!important;backdrop-filter:blur(16px)!important;
  box-shadow:0 4px 30px rgba(0,0,0,0.4)!important;
}
.nav-glass>div{max-width:80rem!important;margin:0 auto!important;padding-left:1rem!important;padding-right:1rem!important}
.nav-shell{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:1rem!important;min-height:64px!important;padding:0.65rem 1.25rem!important;
  border-radius:1.25rem!important;
  background:linear-gradient(145deg,rgba(15,23,42,0.65),rgba(8,12,28,0.55))!important;
  border:1px solid rgba(255,255,255,0.07)!important;
  box-shadow:0 16px 48px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.02) inset!important;
  overflow:hidden!important;max-width:100%!important;
}
.nav-brand{display:flex!important;align-items:center!important;gap:0.75rem!important;text-decoration:none!important;flex-shrink:0!important}
.brand-title{font-size:1.1rem!important;font-weight:800!important;letter-spacing:-0.02em!important;color:#fff!important;line-height:1.2!important}
.brand-caption{font-size:9px!important;font-weight:700!important;letter-spacing:0.1em!important;text-transform:uppercase!important;color:rgba(56,189,248,0.8)!important}
.brand-subcopy{font-size:10px!important;color:#64748b!important}
.nav-center{display:flex!important;align-items:center!important;gap:0.35rem!important;padding:0.35rem!important;border-radius:0.75rem!important;background:rgba(255,255,255,0.02)!important;overflow-x:auto!important;scrollbar-width:none!important;flex-shrink:1!important;min-width:0!important}
.nav-center::-webkit-scrollbar{display:none!important}
.nav-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:0 0.85rem!important;border-radius:0.65rem!important;color:#64748b!important;font-size:11px!important;font-weight:700!important;letter-spacing:0.06em!important;text-transform:uppercase!important;transition:all 0.2s ease!important;border:1px solid transparent!important;white-space:nowrap!important;flex:0 0 auto!important;text-decoration:none!important}
.nav-pill:hover,.nav-pill:focus-visible{color:#e2e8f0!important;background:rgba(255,255,255,0.04)!important}
.nav-pill.active{color:#fbbf24!important;background:rgba(251,191,36,0.1)!important;border-color:rgba(251,191,36,0.15)!important}
.nav-right{display:flex!important;align-items:center!important;gap:0.5rem!important;flex-shrink:0!important}
.nav-live-strip{display:inline-flex!important;align-items:center!important;gap:0.6rem!important;padding:0.4rem 0.7rem!important;border-radius:999px!important;background:rgba(255,255,255,0.03)!important;border:1px solid rgba(255,255,255,0.05)!important;color:#94a3b8!important;font-size:11px!important;font-weight:600!important}
.nav-live-strip strong{color:#f8fafc!important;font-weight:700!important}
.nav-live-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:linear-gradient(135deg,#22c55e,#4ade80)!important;box-shadow:0 0 6px rgba(34,197,94,0.4)!important;animation:dot-blink 2s ease-in-out infinite!important}
@keyframes dot-blink{0%,100%{opacity:1}50%{opacity:0.4}}
.nav-cta-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0.4rem!important;min-height:38px!important;padding:0 1rem!important;border-radius:0.7rem!important;background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;color:#030712!important;font-size:11px!important;font-weight:800!important;letter-spacing:0.04em!important;text-transform:uppercase!important;box-shadow:0 8px 20px rgba(245,158,11,0.2)!important;transition:transform 0.2s,box-shadow 0.2s!important;text-decoration:none!important}
.nav-cta-link:hover{transform:translateY(-1px)!important;box-shadow:0 12px 28px rgba(245,158,11,0.3)!important}

/* ── MOBILE NAV ── */
.nav-mobile-toggle{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:0.5rem;background:transparent;border:1px solid rgba(255,255,255,0.08);color:#94a3b8;cursor:pointer;transition:all 0.2s}
.nav-mobile-toggle:hover{background:rgba(255,255,255,0.04);color:#f8fafc}
.menu-icon{width:16px;height:12px;position:relative}
.menu-icon span,.menu-icon::before,.menu-icon::after{content:'';position:absolute;left:0;width:100%;height:1.5px;background:currentColor;border-radius:1px;transition:all 0.3s}
.menu-icon span{top:50%;transform:translateY(-50%)}
.menu-icon::before{top:0}
.menu-icon::after{bottom:0}
.nav-mobile-overlay{display:none;position:fixed;inset:0;z-index:100;background:rgba(1,2,6,0.98);backdrop-filter:blur(24px);overflow-y:auto;padding:80px 1.5rem 2rem}
.nav-mobile-overlay.active{display:flex;flex-direction:column}
.nav-mobile-menu{display:flex;flex-direction:column;gap:0.25rem}
.nav-mobile-links{display:flex;flex-direction:column;gap:0.25rem}
.nav-mobile-link{display:flex;align-items:center;gap:0.75rem;padding:0.875rem 1rem;border-radius:0.75rem;font-size:1rem;font-weight:500;color:#94a3b8;text-decoration:none;transition:all 0.2s}
.nav-mobile-link:hover{background:rgba(56,189,248,0.08);color:#f8fafc}
.nav-mobile-link.active{background:rgba(56,189,248,0.12);color:#38bdf8}
.nav-mobile-link.star-link{background:rgba(251,191,36,0.08);color:#fbbf24}
.nav-mobile-footer{margin-top:auto;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.06)}

/* ═══════════════════════════════════════════════════════════════════
   FOOTER — PREMIUM REDESIGN
   ═══════════════════════════════════════════════════════════════════ */
.footer-premium{
  background:transparent!important;
  border-top:1px solid rgba(255,255,255,0.05)!important;
  position:relative!important;z-index:10!important;padding:0!important;
}
.footer-premium>div{max-width:80rem!important;margin:0 auto!important}
.footer-premium-shell{max-width:72rem!important;margin:0 auto!important;padding:4rem 1.5rem 2rem!important}
.footer-premium-hero{text-align:center!important;padding:2.5rem 0!important;margin-bottom:3rem!important;border-bottom:1px solid rgba(255,255,255,0.05)!important}
.footer-premium-brand{background:rgba(15,23,42,0.4)!important;border:1px solid rgba(255,255,255,0.06)!important;border-radius:1.5rem!important;padding:2rem!important;display:inline-block!important;max-width:32rem!important;text-align:left!important}
.footer-premium-brand-head{display:flex!important;align-items:center!important;gap:0.75rem!important;margin-bottom:1.25rem!important}
.footer-premium-logo{width:40px!important;height:40px!important;border-radius:12px!important;background:linear-gradient(135deg,#38bdf8,#818cf8)!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}
.footer-premium-logo svg{width:22px!important;height:22px!important;stroke:#fff!important}
.footer-premium-kicker{font-size:9px!important;font-weight:700!important;letter-spacing:0.15em!important;text-transform:uppercase!important;color:#38bdf8!important;margin-bottom:0.25rem!important}
.footer-premium-brand h3{font-size:1.25rem!important;font-weight:800!important;color:#f8fafc!important;letter-spacing:-0.01em!important;margin:0!important}
.footer-premium-brand p{font-size:0.8125rem!important;color:#94a3b8!important;line-height:1.7!important;margin:1rem 0 0!important}
.footer-premium-chip-row{display:flex!important;gap:0.5rem!important;flex-wrap:wrap!important;margin-top:1.25rem!important}
.footer-premium-chip{font-size:9px!important;font-weight:700!important;letter-spacing:0.08em!important;text-transform:uppercase!important;padding:0.3rem 0.65rem!important;border-radius:999px!important;background:rgba(56,189,248,0.08)!important;color:#38bdf8!important;border:1px solid rgba(56,189,248,0.12)!important}
.footer-premium-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:2rem!important}
@media(max-width:1023px){.footer-premium-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:639px){.footer-premium-grid{grid-template-columns:1fr!important}}
.footer-premium-col{background:rgba(15,23,42,0.3)!important;border:1px solid rgba(255,255,255,0.04)!important;border-radius:1rem!important;padding:1.5rem!important}
.footer-premium-col h4{font-size:10px!important;font-weight:700!important;letter-spacing:0.15em!important;text-transform:uppercase!important;color:#fbbf24!important;margin:0 0 1.25rem 0!important;padding-bottom:0.75rem!important;border-bottom:1px solid rgba(255,255,255,0.04)!important}
.footer-premium-col a{display:block!important;font-size:0.8125rem!important;color:#94a3b8!important;padding:0.4rem 0!important;text-decoration:none!important;transition:all 0.2s!important}
.footer-premium-col a:hover{color:#f8fafc!important;transform:translateX(4px)!important}
.footer-premium-bottom{border-top:1px solid rgba(255,255,255,0.04)!important;padding:2rem 0 0!important;margin-top:3rem!important;text-align:center!important}
.footer-premium-bottom p{font-size:0.75rem!important;color:#475569!important;margin:0.25rem 0!important}
.footer-premium-bottom a{color:#64748b!important;text-decoration:none!important}

/* ═══════════════════════════════════════════════════════════════════
   ALL OTHER SECTIONS
   ═══════════════════════════════════════════════════════════════════ */

/* ── HARMONIC BAR FIX ── */
.harmonic-bar{height:4px!important;border-radius:999px!important;background:linear-gradient(90deg,#fbbf24,#f59e0b)!important;box-shadow:0 0 8px rgba(251,191,36,0.3)!important}

/* ── ANIMATION PERFORMANCE ── */
/* Globe shell styles handled by schumann-atmosphere.css */
.bg-vignette{position:absolute!important;inset:0!important;z-index:4!important;background:radial-gradient(ellipse at center,transparent 25%,rgba(3,6,15,0.9) 100%)!important;pointer-events:none!important}

/* ── FADE UP ANIMATION ── */
.fade-up{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease}
.fade-up.visible,.fade-up.is-visible{opacity:1;transform:translateY(0)}

/* ── METRIC CARDS ── */
.metric-card{background:rgba(13,17,23,0.85)!important;border:1px solid rgba(255,255,255,0.08)!important;border-radius:1rem!important;backdrop-filter:blur(16px)!important;transition:transform 0.3s,border-color 0.3s}
.metric-card:hover{transform:translateY(-2px);border-color:rgba(56,189,248,0.15)!important}

/* ── HERO CONTROL CARDS ── */
.hero-control-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
@media(max-width:767px){.hero-control-grid{grid-template-columns:1fr}}
.hero-control-card{background:rgba(13,17,23,0.85);border:1px solid rgba(255,255,255,0.08);border-radius:1.25rem;padding:1.5rem;backdrop-filter:blur(16px);transition:border-color 0.3s}
.hero-control-card:hover{border-color:rgba(56,189,248,0.2)}
.hero-control-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:0.75rem}
.hero-control-kicker{font-size:0.625rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:#94a3b8}
.hero-control-chip{font-size:0.625rem;font-weight:600;padding:0.25rem 0.625rem;border-radius:999px;background:rgba(34,197,94,0.15);color:#22c55e;letter-spacing:0.05em}
.hero-control-chip.cool{background:rgba(56,189,248,0.15);color:#38bdf8}
.hero-control-title{font-size:1.125rem;font-weight:700;color:#f8fafc;margin-bottom:0.5rem}
.hero-control-copy{font-size:0.8125rem;color:#94a3b8;line-height:1.5;margin-bottom:1rem}
.hero-control-meter{height:4px;background:rgba(255,255,255,0.06);border-radius:999px;overflow:hidden;margin-bottom:1rem}
.hero-control-meter-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#38bdf8);transition:width 0.6s}
.hero-control-actions{display:flex;gap:0.5rem;flex-wrap:wrap}
.hero-quick-btn{font-size:0.75rem;font-weight:600;padding:0.5rem 1rem;border-radius:0.5rem;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:#94a3b8;cursor:pointer;transition:all 0.2s}
.hero-quick-btn:hover{background:rgba(56,189,248,0.1);border-color:rgba(56,189,248,0.3);color:#f8fafc}
.hero-quick-btn.ghost{background:transparent;border-color:rgba(255,255,255,0.08)}
.hero-comfort-options{display:flex;gap:0.5rem;margin-top:0.75rem}
.hero-comfort-btn{font-size:0.75rem;font-weight:600;padding:0.5rem 1rem;border-radius:0.5rem;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);color:#94a3b8;cursor:pointer;transition:all 0.2s}
.hero-comfort-btn:hover,.hero-comfort-btn.active{background:rgba(56,189,248,0.12);border-color:rgba(56,189,248,0.3);color:#38bdf8}
.hero-features-strip .card{background:rgba(13,17,23,0.6)!important;border:1px solid rgba(255,255,255,0.06)!important;border-radius:1rem!important;backdrop-filter:blur(12px)!important;padding:1rem!important}

/* ── LIVE NOTE ── */
.live-note{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1rem;background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:0.75rem;backdrop-filter:blur(12px)}
.live-note-badge{font-size:0.5625rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:0.25rem 0.5rem;border-radius:0.375rem;background:rgba(34,197,94,0.15);color:#22c55e}
.live-note-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse 2s infinite}
.live-note-headline{font-size:0.8125rem;font-weight:600;color:#f8fafc}
.live-note-sub{font-size:0.6875rem;color:#94a3b8}

/* ── SR INTELLIGENCE BAND ── */
.sr-intelligence-band{padding:3rem 1rem}
.sr-intelligence-copy{margin-bottom:2rem}
.sr-intelligence-copy h2{font-size:1.5rem;font-weight:800;color:#f8fafc;margin-bottom:0.75rem}
.sr-intelligence-copy p{font-size:0.875rem;color:#94a3b8;line-height:1.7}
.sr-intelligence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:767px){.sr-intelligence-grid{grid-template-columns:1fr}}
.sr-eyebrow{font-size:0.625rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:#38bdf8;margin-bottom:0.5rem}
.sr-intelligence-card{background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1rem;padding:1.25rem;backdrop-filter:blur(12px);text-align:center}
.sr-intelligence-card strong{display:block;font-size:1.5rem;font-weight:800;color:#38bdf8;margin-bottom:0.25rem}
.sr-intelligence-card span{font-size:0.75rem;color:#94a3b8}

/* ── STAR CHART MODAL ── */
.star-modal-backdrop{display:none;position:fixed;inset:0;z-index:200;background:rgba(1,2,6,0.95);backdrop-filter:blur(24px);overflow-y:auto}
.star-modal-backdrop.active{display:block}
.star-modal{position:fixed;inset:0;z-index:201;display:none;overflow-y:auto}
.star-modal.open{display:block}
.star-modal-shell{max-width:42rem;margin:2rem auto;background:rgba(13,17,23,0.95);border:1px solid rgba(255,255,255,0.08);border-radius:1.5rem;padding:2rem;backdrop-filter:blur(24px);position:relative}
.star-modal-header{margin-bottom:1.5rem}
.star-modal-kicker{font-size:0.625rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:#fbbf24;margin-bottom:0.5rem}
.star-modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s}
.star-modal-close:hover{background:rgba(255,255,255,0.1);color:#f8fafc}
.star-modal-close-fab{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s}
.star-modal-close-fab:hover{background:rgba(239,68,68,0.15);border-color:rgba(239,68,68,0.3);color:#ef4444}
.star-modal-steps{display:flex;gap:0.5rem;margin-bottom:1.5rem}
.star-modal-step{flex:1;height:3px;border-radius:999px;background:rgba(255,255,255,0.06);transition:background 0.3s}
.star-modal-step.active{background:#fbbf24}
.star-step-panel{display:none}
.star-step-panel.active{display:block}
.star-form-field{margin-bottom:1rem}
.star-form-field.full{grid-column:1/-1}
.star-form-input{width:100%;padding:0.75rem 1rem;border-radius:0.75rem;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);color:#f8fafc;font-size:0.875rem;transition:border-color 0.2s;outline:none}
.star-form-input:focus{border-color:rgba(251,191,36,0.4)}
.star-form-input::placeholder{color:#64748b}
.star-primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;border-radius:0.75rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#030712;font-weight:700;font-size:0.875rem;border:none;cursor:pointer;transition:all 0.2s}
.star-primary-btn:hover{transform:scale(1.02);box-shadow:0 8px 24px rgba(245,158,11,0.25)}
.star-primary-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none}
.star-ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;border-radius:0.75rem;background:transparent;border:1px solid rgba(255,255,255,0.08);color:#94a3b8;font-weight:600;font-size:0.875rem;cursor:pointer;transition:all 0.2s}
.star-ghost-btn:hover{background:rgba(255,255,255,0.04);color:#f8fafc}
.star-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;border-radius:0.75rem;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:#f8fafc;font-weight:600;font-size:0.875rem;cursor:pointer;transition:all 0.2s}
.star-secondary-btn:hover{background:rgba(255,255,255,0.1)}
.star-loading{display:flex;align-items:center;justify-content:center;padding:3rem}
.star-loading-inner{width:40px;height:40px;border:3px solid rgba(255,255,255,0.06);border-top-color:#fbbf24;border-radius:50%;animation:spin 0.8s linear infinite}
.star-spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,0.06);border-top-color:#fbbf24;border-radius:50%;animation:spin 0.8s linear infinite;display:inline-block}
.star-surface{background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1rem;padding:1.25rem}
.star-surface-badge{font-size:0.5625rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:0.25rem 0.5rem;border-radius:999px;background:rgba(251,191,36,0.15);color:#fbbf24;display:inline-block;margin-bottom:0.75rem}
.star-surface-title{font-size:1.125rem;font-weight:700;color:#f8fafc;margin-bottom:0.5rem}
.star-surface-body{font-size:0.8125rem;color:#94a3b8;line-height:1.6}
.star-mini-card{background:rgba(13,17,23,0.5);border:1px solid rgba(255,255,255,0.04);border-radius:0.75rem;padding:0.875rem}
.star-feature-list{display:flex;flex-direction:column;gap:0.5rem}
.star-feature-item{display:flex;align-items:flex-start;gap:0.5rem;font-size:0.8125rem;color:#94a3b8;line-height:1.5}
.star-download-note{font-size:0.6875rem;color:#64748b;padding:0.5rem 0.75rem;background:rgba(255,255,255,0.02);border-radius:0.5rem;border:1px solid rgba(255,255,255,0.04)}
.star-floating-panel{position:fixed;bottom:2rem;right:2rem;z-index:50;background:rgba(13,17,23,0.95);border:1px solid rgba(255,255,255,0.08);border-radius:1rem;padding:1rem;backdrop-filter:blur(24px);max-width:20rem;box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.star-floating-badge{font-size:0.5625rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:0.125rem 0.375rem;border-radius:999px;background:rgba(251,191,36,0.15);color:#fbbf24}
.star-floating-title{font-size:0.9375rem;font-weight:700;color:#f8fafc;margin:0.5rem 0 0.25rem}
.star-floating-copy{font-size:0.75rem;color:#94a3b8;line-height:1.5}
.star-floating-cta{margin-top:0.75rem}
.star-floating-button{display:inline-flex;align-items:center;gap:0.375rem;padding:0.5rem 1rem;border-radius:0.5rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#030712;font-weight:700;font-size:0.75rem;border:none;cursor:pointer;transition:all 0.2s}
.star-floating-button:hover{transform:scale(1.02)}
.star-preview-shell{padding:1rem 0}
.star-preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.star-preview-countdown{font-size:0.75rem;color:#fbbf24;font-weight:600}
.star-preview-stage{width:100%;border-radius:1rem;overflow:hidden;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);margin-bottom:0.85rem}
.star-preview-poster{width:100%;background:linear-gradient(180deg,rgba(56,189,248,0.1),rgba(251,191,36,0.05))}
.star-preview-lock{margin-top:1rem}
.star-preview-lock-card{background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1rem;padding:1.5rem;text-align:center}
.star-preview-lock-card h4{font-size:1rem;font-weight:700;color:#f8fafc;margin:0.75rem 0 0.5rem}
.star-preview-lock-card p{font-size:0.8125rem;color:#94a3b8;line-height:1.6;margin-bottom:1rem}
.star-follow-actions{display:flex;flex-wrap:wrap;gap:0.75rem;justify-content:center;margin-top:1rem}
.star-result-layout{display:grid;gap:1.5rem}
.star-result-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.star-result-poster{background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1rem;overflow:hidden}
.star-result-summary{background:rgba(13,17,23,0.5);border:1px solid rgba(255,255,255,0.04);border-radius:0.75rem;padding:1rem}
.star-poster-head{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.75rem}
.star-poster-brand{font-size:0.625rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#fbbf24}
.star-poster-name{font-size:1rem;font-weight:700;color:#f8fafc}
.star-poster-state{font-size:0.6875rem;color:#94a3b8}
.star-poster-copy{font-size:0.8125rem;color:#94a3b8;line-height:1.6}
.star-planet-list{display:flex;flex-direction:column;gap:0.375rem}
.star-planet-row{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 0.75rem;border-radius:0.5rem;background:rgba(255,255,255,0.02);font-size:0.8125rem}
.star-wheel-wrap{display:flex;align-items:center;justify-content:center;padding:2rem}
.star-wheel-shell{position:relative;width:200px;height:200px}
.star-wheel{width:100%;height:100%;border-radius:50%;border:2px solid rgba(251,191,36,0.2);animation:spin 20s linear infinite}

/* ── SPECTROGRAM ── */
.spectro-container{position:relative;background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1.25rem;overflow:hidden;backdrop-filter:blur(12px)}
.spectro-overlay{position:absolute;inset:0;pointer-events:none}
.spectro-overlay-note{font-size:0.6875rem;color:#94a3b8;padding:0.5rem 0.75rem;background:rgba(13,17,23,0.7);border-radius:0.5rem;border:1px solid rgba(255,255,255,0.06)}
.spectro-marker{position:absolute;pointer-events:auto;cursor:pointer}
.spectro-marker-line{width:1px;background:rgba(56,189,248,0.3);position:absolute}
.spectro-marker-badge{font-size:0.5625rem;font-weight:700;padding:0.125rem 0.375rem;border-radius:0.25rem;background:rgba(56,189,248,0.2);color:#38bdf8;white-space:nowrap}
.spectro-analysis-card{background:rgba(13,17,23,0.7);border:1px solid rgba(255,255,255,0.06);border-radius:1rem;padding:1.25rem;backdrop-filter:blur(12px)}
.spectro-analysis-kicker{font-size:0.625rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:#38bdf8;margin-bottom:0.5rem}
.spectro-analysis-intro{font-size:0.8125rem;color:#94a3b8;line-height:1.6;margin-bottom:1rem}
.spectro-analysis-footnote{font-size:0.6875rem;color:#64748b;margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid rgba(255,255,255,0.04)}
.spectro-insight-card{background:rgba(13,17,23,0.6);border:1px solid rgba(255,255,255,0.04);border-radius:0.75rem;padding:1rem}
.spectro-insight-label{font-size:0.6875rem;color:#64748b;margin-bottom:0.25rem}
.spectro-insight-value{font-size:1.25rem;font-weight:700;color:#f8fafc}
.spectro-insight-caption{font-size:0.625rem;color:#94a3b8;margin-top:0.25rem}
.spectro-legend-list{display:flex;flex-wrap:wrap;gap:0.75rem}
.spectro-legend-item{display:flex;align-items:center;gap:0.375rem;font-size:0.6875rem;color:#94a3b8}
.spectro-legend-swatch{width:12px;height:12px;border-radius:3px}
.spectro-legend-swatch.color{background:#38bdf8}
.spectro-legend-swatch.burst{background:#f59e0b}
.spectro-legend-swatch.band{background:#818cf8}

/* ── TAB / CHIP / MISC ── */
.tab-btn{font-size:0.8125rem;font-weight:600;padding:0.5rem 1.25rem;border-radius:0.5rem;background:transparent;border:1px solid rgba(255,255,255,0.08);color:#94a3b8;cursor:pointer;transition:all 0.2s}
.tab-btn:hover{background:rgba(255,255,255,0.04);color:#f8fafc}
.tab-btn.active{background:rgba(56,189,248,0.12);border-color:rgba(56,189,248,0.3);color:#38bdf8}
.star-chip{font-size:0.625rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:0.25rem 0.625rem;border-radius:999px;background:rgba(251,191,36,0.15);color:#fbbf24}
.back-to-top{position:fixed;bottom:2rem;right:2rem;width:40px;height:40px;border-radius:50%;background:rgba(56,189,248,0.15);border:1px solid rgba(56,189,248,0.3);color:#38bdf8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s;z-index:40;opacity:0;pointer-events:none}
.back-to-top.visible{opacity:1;pointer-events:auto}
.back-to-top:hover{background:rgba(56,189,248,0.25);transform:translateY(-2px)}
.brand-spectrum{position:absolute;inset:0;overflow:hidden;border-radius:50%}
.brand-spectrum-line{position:absolute;width:100%;height:1px;left:0;opacity:0.3}
.brand-spectrum-line-a{top:30%;background:#38bdf8;animation:sf 3s ease-in-out infinite}
.brand-spectrum-line-b{top:50%;background:#fbbf24;animation:sf 3s ease-in-out infinite 1s}
.brand-spectrum-line-c{top:70%;background:#a78bfa;animation:sf 3s ease-in-out infinite 2s}
@keyframes sf{0%,100%{opacity:.2;transform:scaleX(.8)}50%{opacity:.5;transform:scaleX(1)}}
.hero-orbit-glow{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:120vw;height:120vh;background:radial-gradient(circle,rgba(56,189,248,0.04)0%,transparent 50%);pointer-events:none;z-index:0}
.scroll-progress{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,#38bdf8,#818cf8,#fbbf24);z-index:9999;transition:width 0.1s linear}

/* ── SECTION SPACING — legacy pages only ── */
section{position:relative}
body:not(.sr-site) #dashboard,
body:not(.sr-site) #guide,
body:not(.sr-site) #about{padding:5rem 1rem}
@media(max-width:767px){
body:not(.sr-site) #dashboard,
body:not(.sr-site) #guide,
body:not(.sr-site) #about{padding:3rem 0.75rem}}

/* ── CARD ── */
.card{background:rgba(13,17,23,0.85)!important;border:1px solid rgba(255,255,255,0.08)!important;border-radius:1rem!important;backdrop-filter:blur(16px)!important;transition:transform 0.3s,border-color 0.3s}
.card:hover{transform:translateY(-2px);border-color:rgba(56,189,248,0.15)!important}

/* ── TEXT COLORS ── */
.text-brand-400{color:#fbbf24!important}
.text-blue-400{color:#60a5fa!important}
.text-purple-400{color:#a78bfa!important}
.text-gray-700{color:#94a3b8!important}

/* ── ANIMATIONS ── */
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── RESPONSIVE ── */
@media(max-width:767px){
.nav-shell{min-height:56px!important;padding:0.5rem 0.75rem!important;border-radius:1rem!important;gap:0.5rem!important}
.brand-title{font-size:0.9rem!important}
.nav-live-strip{display:none!important}
.star-modal-shell{margin:1rem;padding:1.25rem;border-radius:1rem}
.star-floating-panel{right:1rem;bottom:1rem;max-width:calc(100vw - 2rem)}
.spectro-container{border-radius:.75rem}
.star-result-panels{grid-template-columns:1fr}
.star-preview-head{flex-direction:column}
}
@media(max-width:1023px){
.nav-shell{min-height:60px!important;padding:0.55rem 0.85rem!important;border-radius:1.1rem!important}
}

/* ═══════════════════════════════════════════════════════════════════
   APP DOWNLOAD — Premium Device-Aware Card V2
   Content left, device mockup right
   ═══════════════════════════════════════════════════════════════════ */
.app-download-wrap{
  max-width:56rem!important;
  margin:2.5rem auto 0!important;
  padding:0 1rem!important;
}
.app-download-card{
  background:linear-gradient(145deg,rgba(15,23,42,0.8),rgba(8,12,28,0.7))!important;
  border:1px solid rgba(56,189,248,0.1)!important;
  border-radius:1.75rem!important;
  padding:2.25rem 2.5rem!important;
  backdrop-filter:blur(28px)!important;
  -webkit-backdrop-filter:blur(28px)!important;
  box-shadow:0 32px 80px rgba(0,0,0,0.4),0 0 120px rgba(56,189,248,0.03),inset 0 1px 0 rgba(255,255,255,0.04)!important;
  overflow:hidden!important;
  position:relative!important;
}
.app-download-card::before{
  content:''!important;
  position:absolute!important;
  top:0!important;left:0!important;right:0!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent 5%,rgba(56,189,248,0.4) 30%,rgba(168,85,247,0.2) 60%,rgba(251,191,36,0.15) 80%,transparent 95%)!important;
}
.app-download-card::after{
  content:''!important;
  position:absolute!important;
  bottom:-40%!important;right:-20%!important;
  width:60%!important;height:80%!important;
  background:radial-gradient(circle,rgba(56,189,248,0.04),transparent 60%)!important;
  pointer-events:none!important;
}
.app-download-grid{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:2.5rem!important;
  align-items:center!important;
  position:relative!important;
  z-index:1!important;
}
@media(max-width:767px){
  .app-download-grid{grid-template-columns:1fr!important;gap:1.75rem!important;text-align:center!important}
  .app-download-card{padding:1.5rem!important}
  .app-download-visual{justify-self:center!important;order:-1!important}
  .app-download-chips{justify-content:center!important}
  .app-download-actions{justify-content:center!important}
}
.app-download-content{min-width:0!important;overflow:hidden!important}
.app-download-badge{
  display:inline-flex!important;align-items:center!important;gap:0.35rem!important;
  font-size:9px!important;font-weight:700!important;letter-spacing:0.14em!important;text-transform:uppercase!important;
  padding:0.3rem 0.7rem!important;border-radius:999px!important;margin-bottom:0.85rem!important;
}
.app-download-badge.macos-badge{background:rgba(56,189,248,0.1)!important;color:#38bdf8!important;border:1px solid rgba(56,189,248,0.2)!important}
.app-download-badge.ios-badge{background:rgba(168,85,247,0.1)!important;color:#a78bfa!important;border:1px solid rgba(168,85,247,0.2)!important}
.app-download-badge.android-badge{background:rgba(34,197,94,0.1)!important;color:#22c55e!important;border:1px solid rgba(34,197,94,0.2)!important}
.app-download-badge.cross-badge{background:rgba(251,191,36,0.1)!important;color:#fbbf24!important;border:1px solid rgba(251,191,36,0.2)!important}
.app-download-title{
  font-size:1.35rem!important;font-weight:800!important;color:#f8fafc!important;
  line-height:1.2!important;margin-bottom:0.5rem!important;letter-spacing:-0.025em!important;
}
.app-download-body{
  font-size:0.8125rem!important;color:#94a3b8!important;
  line-height:1.65!important;margin-bottom:0.85rem!important;
}
.app-download-chips{
  display:flex!important;flex-wrap:wrap!important;gap:0.4rem!important;margin-bottom:1.1rem!important;
}
.app-chip{
  display:inline-flex!important;align-items:center!important;gap:0.3rem!important;
  font-size:0.5625rem!important;font-weight:600!important;color:#94a3b8!important;
  padding:0.2rem 0.5rem!important;border-radius:999px!important;
  background:rgba(255,255,255,0.03)!important;border:1px solid rgba(255,255,255,0.06)!important;
  white-space:nowrap!important;
}
.app-chip-dot{
  width:3px!important;height:3px!important;border-radius:50%!important;
  background:#38bdf8!important;flex-shrink:0!important;
}
.app-download-actions{
  display:flex!important;align-items:center!important;gap:0.6rem!important;flex-wrap:wrap!important;
}
.app-download-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0.5rem!important;
  padding:0.7rem 1.5rem!important;border-radius:0.75rem!important;
  background:linear-gradient(135deg,#38bdf8,#0ea5e9)!important;color:#030712!important;
  font-size:0.8125rem!important;font-weight:800!important;border:none!important;cursor:pointer!important;
  transition:all 0.25s!important;box-shadow:0 8px 24px rgba(56,189,248,0.2)!important;
}
.app-download-btn:hover{transform:translateY(-2px)!important;box-shadow:0 14px 36px rgba(56,189,248,0.3)!important}
.app-download-btn svg{flex-shrink:0!important}
.app-notify-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0.4rem!important;
  padding:0.65rem 1.1rem!important;border-radius:0.75rem!important;
  background:rgba(255,255,255,0.04)!important;color:#94a3b8!important;
  font-size:0.75rem!important;font-weight:600!important;
  border:1px solid rgba(255,255,255,0.08)!important;cursor:pointer!important;transition:all 0.25s!important;
}
.app-notify-btn:hover{background:rgba(255,255,255,0.08)!important;color:#f8fafc!important;border-color:rgba(255,255,255,0.15)!important}
.app-notify-btn svg{flex-shrink:0!important}

/* ── DEVICE MOCKUP ── */
.app-download-visual{
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.app-device-mockup{
  position:relative!important;width:160px!important;height:200px!important;
  border-radius:1.5rem!important;
  background:rgba(13,17,23,0.7)!important;
  border:1px solid rgba(255,255,255,0.1)!important;
  overflow:hidden!important;
  box-shadow:0 20px 60px rgba(0,0,0,0.4),0 0 40px rgba(56,189,248,0.06)!important;
}
.app-mockup-screen{position:relative!important;width:100%!important;height:100%!important}
.app-mockup-bar{
  display:flex!important;align-items:center!important;gap:0.35rem!important;
  padding:0.5rem 0.6rem!important;
  background:rgba(0,0,0,0.3)!important;
  border-bottom:1px solid rgba(255,255,255,0.05)!important;
}
.app-mockup-dot{width:5px!important;height:5px!important;border-radius:50%!important;background:#22c55e!important;box-shadow:0 0 4px rgba(34,197,94,0.5)!important}
.app-mockup-title{font-size:7px!important;font-weight:700!important;color:#94a3b8!important;letter-spacing:0.05em!important}
.app-mockup-body{
  padding:0.75rem 0.6rem!important;
  display:flex!important;flex-direction:column!important;gap:0.5rem!important;
}
.app-mockup-wave{
  height:2px!important;border-radius:999px!important;
  background:linear-gradient(90deg,#38bdf8,#818cf8)!important;
  animation:mockupPulse 3s ease-in-out infinite!important;
}
.app-mockup-wave.w2{background:linear-gradient(90deg,#818cf8,#fbbf24)!important;animation-delay:1s!important;width:80%!important}
.app-mockup-wave.w3{background:linear-gradient(90deg,#fbbf24,#38bdf8)!important;animation-delay:2s!important;width:60%!important}
@keyframes mockupPulse{0%,100%{opacity:0.4;transform:scaleX(0.8)}50%{opacity:1;transform:scaleX(1)}}
.app-mockup-freq{
  font-size:14px!important;font-weight:800!important;color:#38bdf8!important;
  text-align:center!important;margin-top:0.25rem!important;
  text-shadow:0 0 12px rgba(56,189,248,0.4)!important;
}
.app-device-glow{
  position:absolute!important;inset:-30%!important;border-radius:50%!important;
  background:radial-gradient(circle,rgba(56,189,248,0.06),transparent 60%)!important;
  pointer-events:none!important;z-index:-1!important;
}

/* RESTORE HOTFIX 2026-05-13: keep content visible if reveal JS is interrupted */
body:not(.sr-motion-ready) #dashboard .fade-up,
body:not(.sr-motion-ready) #guide .fade-up,
body:not(.sr-motion-ready) #about .fade-up,
body:not(.sr-motion-ready) .sr-intelligence-band,
body:not(.sr-motion-ready) .sr-intelligence-card,
body:not(.sr-motion-ready) #spectrogram,
body:not(.sr-motion-ready) .metric-card,
body:not(.sr-motion-ready) .card.fade-up {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
body:not(.sr-motion-ready) #dashboard [style*="opacity: 0"],
body:not(.sr-motion-ready) #guide [style*="opacity: 0"],
body:not(.sr-motion-ready) #about [style*="opacity: 0"] {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
.hero-stage { margin-bottom: 0 !important; }
#dashboard { padding-top: clamp(36px, 5vw, 72px) !important; }
@media (max-width: 767px) { #dashboard, #guide, #about { padding-top: 44px !important; padding-bottom: 44px !important; } .hero-stage { min-height: auto !important; } }
