
@layer base {
  :root {
    --font-heading: 'Manrope', sans-serif;
    --font-body: 'Inter', sans-serif;
    --font-num: 'Space Grotesk', sans-serif;
    --color-brand-green: #00C853;
    --color-brand-blue: #2962FF;
    --color-brand-gold: #F9A825;
  }
}

.font-heading {
  font-family: var(--font-heading);
}

.font-body {
  font-family: var(--font-body);
}

.font-num {
  font-family: var(--font-num);
}

/* Custom Glassmorphism & Soft Shadows */
.glass-panel {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(226, 232, 240, 0.8);
}

.glass-card {
  background: #ffffff;
  border: 1px solid #E2E8F0;
  box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.04), 0 2px 6px -1px rgba(15, 23, 42, 0.02);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.glass-card:hover {
  border-color: #CBD5E1;
  box-shadow: 0 12px 30px -4px rgba(15, 23, 42, 0.08), 0 4px 12px -2px rgba(15, 23, 42, 0.04);
}

.glow-badge {
  box-shadow: 0 0 15px rgba(0, 200, 83, 0.35);
}

.glow-blue {
  box-shadow: 0 0 20px rgba(41, 98, 255, 0.3);
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #F1F5F9;
}
::-webkit-scrollbar-thumb {
  background: #CBD5E1;
  border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94A3B8;
}

@keyframes pulse-subtle {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.85; transform: scale(1.03); }
}

.animate-pulse-subtle {
  animation: pulse-subtle 2.5s infinite ease-in-out;
}

/* v1.5 mobile spacing + contrast fixes */
.fresh-issue-card,
.equity-holding-card {
  background: #0f172a !important;
  color: #fff !important;
  border-color: #334155 !important;
}
.fresh-issue-card h3,
.fresh-issue-card strong,
.fresh-issue-card .text-white,
.equity-holding-card h3,
.equity-holding-card .text-white { color:#fff !important; }
.fresh-issue-card .text-slate-300,
.equity-holding-card .text-slate-300 { color:#cbd5e1 !important; }
.fresh-issue-card .text-slate-400,
.equity-holding-card .text-slate-400 { color:#94a3b8 !important; }
.fresh-issue-card .bg-slate-800\/80,
.equity-holding-card .bg-slate-800\/80 { background:rgba(30,41,59,.92) !important; }

.verdict-card {
  background: #111827 !important;
  border-color:#334155 !important;
  color:#fff !important;
}
.verdict-card .text-slate-300 { color:#cbd5e1 !important; }
.verdict-card .text-slate-400 { color:#94a3b8 !important; }
.verdict-card .text-emerald-400 { color:#34d399 !important; }

@media (max-width: 640px) {
  /* Consistent 15–25px vertical breathing room per section */
  main section:not(:first-child),
  .section-compact {
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }
  .section-compact > div { padding-left: 14px !important; padding-right: 14px !important; }

  /* remove exaggerated gaps between headings and cards */
  .section-compact .mb-14,
  .section-compact .mb-12 { margin-bottom: 20px !important; }
  .section-compact .mb-8,
  .section-compact .mb-10 { margin-bottom: 18px !important; }
  .section-compact .gap-8 { gap: 16px !important; }
  .section-compact .space-y-6 > :not([hidden]) ~ :not([hidden]) { margin-top: 14px !important; }
  .section-compact .space-y-4 > :not([hidden]) ~ :not([hidden]) { margin-top: 10px !important; }

  /* Investment driver cards: content only, no pseudo-link footer spacing */
  .strengths-risks-section .glass-card,
  .business-section .glass-card { padding: 16px !important; }

  /* Financial tabs then metric cards, compact */
  .financial-section .mb-4 { margin-bottom: 10px !important; }
  .financial-section .mb-3 { margin-bottom: 10px !important; }
  .financial-section .grid.grid-cols-2 { gap: 10px !important; }
  .financial-section .glass-card { border-radius: 20px !important; }

  /* Valuation table: remove horizontal-scroll feel and show decision columns */
  .valuation-section .overflow-x-auto { overflow-x: visible !important; }
  .valuation-section table { table-layout: fixed !important; width:100% !important; }
  .valuation-section th:nth-child(n+4),
  .valuation-section td:nth-child(n+4) { display:none !important; }
  .valuation-section th,
  .valuation-section td { padding: 12px 8px !important; font-size:11px !important; }
  .valuation-section th:first-child,
  .valuation-section td:first-child { width:52% !important; padding-left:12px !important; }
  .valuation-section th:nth-child(2),
  .valuation-section td:nth-child(2) { width:20% !important; }
  .valuation-section th:nth-child(3),
  .valuation-section td:nth-child(3) { width:28% !important; padding-right:12px !important; }
  .valuation-section td:first-child { line-height:1.25 !important; }
  .valuation-section td:first-child span { word-break:normal !important; }

  /* Fresh issue: explicit mobile contrast and compact content */
  .fresh-issue-card { padding:18px !important; gap:12px !important; }
  .fresh-issue-card h3 { font-size:14px !important; line-height:1.35 !important; }
  .fresh-issue-card p { color:#cbd5e1 !important; }
  .fresh-issue-card .p-4 { padding:13px !important; }

  /* Strength header */
  .strengths-risks-section .bg-emerald-50,
  .strengths-risks-section .bg-rose-50 { padding:12px 14px !important; }
  .strengths-risks-section h3 { font-size:13px !important; line-height:1.3 !important; }

  /* Promoter equity holding */
  .equity-holding-card { padding:18px !important; gap:14px !important; }
  .equity-holding-card h3 { font-size:15px !important; }
  .equity-holding-card .space-y-4 > :not([hidden]) ~ :not([hidden]) { margin-top:12px !important; }

  /* Official recommendation */
  .verdict-card { padding:18px !important; }
  .verdict-card .grid { gap:18px !important; }
  .verdict-card .text-3xl { font-size:28px !important; }
  .verdict-card .px-6.py-3 { padding:12px 18px !important; }
  .verdict-section .mt-8 { margin-top:18px !important; }
  .verdict-section .pt-6 { padding-top:16px !important; }

  /* Hero quick summary compact inner padding */
  .quick-summary-card { padding:16px !important; border-radius:22px !important; }
  .quick-summary-card .my-5 { margin-top:14px !important; margin-bottom:14px !important; }
  .quick-summary-card .p-4 { padding:12px !important; }
  .quick-summary-card .text-3xl { font-size:28px !important; }
}

/* v1.5: simplified conversion-focused layout, built on the stable v1.3 component base */
.hero-cta-row,.hero-proof-row,.hero-live-feed,.hero-summary-apply,
.scenario-selector,.selected-scenario,.gmp-alert-btn,.financial-metric-cards{display:none!important;}
@media(max-width:640px){
  section{scroll-margin-top:68px}
  .section-compact{padding-top:22px!important;padding-bottom:22px!important}
  .quick-summary-card{padding:18px!important}
}

/* v1.6 CTA placement */
.hero-cta-row{display:flex!important;margin-top:14px!important}
.hero-cta-row button{display:none!important}
.hero-cta-row a{display:flex!important;width:100%!important;max-width:430px!important;background:#2563eb!important;color:#fff!important;border-color:#3b82f6!important;box-shadow:0 10px 30px rgba(37,99,235,.25)!important}
.hero-proof-row{display:none!important}
body{padding-bottom:56px!important}
.telegram-sticky-footer{min-height:56px}
@media(min-width:641px){
 .telegram-sticky-footer{left:50%!important;right:auto!important;transform:translateX(-50%);bottom:16px!important;width:min(560px,calc(100% - 32px))!important;border:1px solid rgba(96,165,250,.35)!important;border-radius:18px!important}
 body{padding-bottom:76px!important}
}

/* v1.7: remove hero Telegram button; keep sticky footer CTA */
.hero-cta-row{display:none!important;}

/* v1.8 calculator restoration */
.hero-summary-apply{display:flex!important}
