/* ZipChat Predictive Arc Canvas: decorative, dependency-free, and provider-free. */
.zipchat-visual { position: relative; overflow: hidden; isolation: isolate; border: 1px solid rgba(103,232,249,.18); border-radius: 22px; background: linear-gradient(145deg, rgba(8,17,31,.96), rgba(7,31,61,.64)); }
.predictive-arc { min-height: 172px; }
.predictive-arc canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; opacity: .92; }
.predictive-arc::after { content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 1; background: radial-gradient(ellipse at 50% 48%, transparent 0 34%, rgba(3,10,23,.22) 74%, rgba(3,10,23,.68) 100%), linear-gradient(90deg, rgba(3,10,23,.46), transparent 28% 72%, rgba(3,10,23,.46)); }
.predictive-arc .visual-core { position: absolute; z-index: 2; left: 50%; top: 48%; width: 42px; height: 42px; transform: translate(-50%,-50%); border: 1px solid rgba(165,243,252,.75); border-radius: 50%; background: rgba(8,47,73,.78); box-shadow: 0 0 26px rgba(34,211,238,.38), inset 0 0 18px rgba(37,99,235,.5); }
.predictive-arc .visual-core::after { content: ''; position: absolute; inset: 9px; border: 1px solid rgba(125,211,252,.7); border-radius: 50%; }
.visual-caption { position: absolute; z-index: 2; inset-inline: 16px; bottom: 12px; color: #7dd3fc; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.predictive-arc--network { min-height: 150px; }
.predictive-arc--network .visual-core { width: 28px; height: 28px; }
.predictive-arc--network .visual-core::after { inset: 6px; }
.aha-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.aha-step { display: flex; gap: 10px; align-items: flex-start; min-width: 0; padding: 14px; border: 1px solid rgba(103,232,249,.16); border-radius: 16px; background: rgba(2,8,23,.34); }
.aha-step strong { display: grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; color: #082f49; background: #67e8f9; font-size: .72rem; }
.aha-step b { display: block; color: #f8fafc; font-size: .86rem; }
.aha-step span { display: block; margin-top: 3px; color: #94a3b8; font-size: .75rem; line-height: 1.5; }
.predictive-arc--fallback { background: radial-gradient(circle at 50% 45%, rgba(34,211,238,.11), transparent 56%), rgba(2,8,23,.52); }
@media (max-width: 640px) { .aha-flow { grid-template-columns: 1fr; } .predictive-arc { min-height: 138px; } .predictive-arc--network { min-height: 128px; } .aha-step { padding: 12px; } .visual-caption { font-size: .6rem; } }
@media (prefers-reduced-motion: reduce) { .predictive-arc canvas { opacity: .78; } }

/* Launch hero: compact, static atmosphere with the action hierarchy kept above the fold. */
.hero-stage { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(20px, 3vw, 38px) clamp(24px, 4vw, 46px); }
.hero-stage > * { position: relative; z-index: 2; }
.hero-stage::before { content: ''; position: absolute; z-index: 0; width: min(720px, 78vw); height: min(420px, 52vw); top: -150px; left: 50%; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(ellipse at center, rgba(37,99,235,.22), rgba(6,182,212,.08) 42%, transparent 72%); filter: blur(18px); pointer-events: none; }
.hero-stage::after { content: ''; position: absolute; z-index: 0; inset: 12% 8% 0; border-radius: 32px; background-image: radial-gradient(rgba(103,232,249,.16) 1px, transparent 1px), linear-gradient(135deg, rgba(8,47,73,.12), transparent 55%); background-size: 24px 24px, 100% 100%; opacity: .28; mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 80%, transparent); pointer-events: none; }
.hero-stage .hero-static-atmosphere { position: absolute; z-index: 1; inset: 18% 20% 4%; border: 1px solid rgba(103,232,249,.1); border-radius: 50%; background: radial-gradient(ellipse at center, rgba(8,47,73,.2), transparent 68%); box-shadow: 0 0 90px rgba(37,99,235,.12); pointer-events: none; }
.hero-stage .hero-input-panel { position: relative; z-index: 3; }
.static-research-visual { min-height: 104px; border-color: rgba(103,232,249,.12); background: radial-gradient(circle at 50% 45%, rgba(34,211,238,.12), transparent 20%), linear-gradient(135deg, rgba(8,47,73,.3), rgba(2,8,23,.66)); }
.static-research-visual .visual-core { position: absolute; left: 50%; top: 45%; width: 28px; height: 28px; transform: translate(-50%, -50%); border: 1px solid rgba(165,243,252,.65); border-radius: 50%; background: rgba(8,47,73,.72); box-shadow: 0 0 26px rgba(34,211,238,.26), inset 0 0 15px rgba(37,99,235,.38); }
.static-research-visual .visual-core::after { content: ''; position: absolute; inset: 6px; border: 1px solid rgba(125,211,252,.65); border-radius: 50%; }
.static-research-visual .visual-caption { position: absolute; inset-inline: 16px; bottom: 12px; color: #7dd3fc; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
@media (max-width: 640px) { .hero-stage { padding-block: 18px 30px; } .hero-stage::after { inset-inline: 0; background-size: 20px 20px, 100% 100%; } .hero-stage .hero-static-atmosphere { inset: 18% 8% 5%; } .static-research-visual { min-height: 88px; } .static-research-visual .visual-caption { font-size: .6rem; } }
@media (prefers-reduced-motion: reduce) { .hero-stage::before { filter: blur(14px); } }

/* Pre-launch decision-first hierarchy: presentation only, no model or API changes. */
.market-strip-home { margin-top: 10px; margin-bottom: 4px; }
.market-strip-home + main#top { padding-top: clamp(18px, 3vw, 34px); }
.hero-stage { max-width: 960px !important; }
.hero-stage h1 { max-width: 820px; margin-inline: auto; text-wrap: balance; }
.hero-stage h2 { max-width: 720px; margin-inline: auto; text-wrap: balance; }
.hero-input-panel { margin-top: clamp(22px, 3vw, 32px) !important; border-color: rgba(103,232,249,.24); box-shadow: 0 26px 72px rgba(2,6,23,.26), 0 0 0 1px rgba(103,232,249,.04) inset; }
.hero-input-panel .analyze-cta { min-height: 48px; font-weight: 900; letter-spacing: .01em; box-shadow: 0 12px 28px rgba(37,99,235,.22); }
.hero-input-panel .label { color: #d8e7f5; font-weight: 800; }
.hero-input-panel #domainInput { border-color: rgba(103,232,249,.28); background: rgba(2,6,23,.68); }
#decisionCard { border-color: rgba(103,232,249,.34); background: linear-gradient(135deg, rgba(8,47,73,.7), rgba(17,24,39,.94)); }
#decisionCard .section-title, #summaryCard .section-title { letter-spacing: -.01em; }
#summaryCard { border-color: rgba(96,165,250,.28); }
#valuationPanel { border-color: rgba(52,211,153,.24); }
#valuationPanel .valuation-accordion[open] { border-color: rgba(103,232,249,.2); background: rgba(2,6,23,.18); }
#evidencePanel { border-color: rgba(74,222,128,.24); }
#buyerDiscoveryPanel { border-color: rgba(251,191,36,.24); }
#buyerDiscoveryPanel .section-title { color: #fff7ed; }
#buyerDiscoveryPanel #finderBtn { min-height: 44px; font-weight: 900; box-shadow: 0 10px 24px rgba(217,119,6,.16); }
#buyerDiscoveryPanel #manualFinderBtn { min-height: 44px; }
@media (max-width: 640px) {
  .market-strip-home { margin-top: 8px; }
  .market-strip-home + main#top { padding-top: 14px; }
  .hero-stage { padding-inline: 0; }
  .hero-stage h1 { font-size: clamp(2rem, 11vw, 3.25rem); line-height: 1.08; }
  .hero-stage h2 { line-height: 1.7; }
  .hero-input-panel { margin-top: 18px !important; padding: 14px !important; }
  .hero-input-panel .analyze-cta { width: 100%; }
}
[dir="rtl"] .market-strip-home .market-strip-head,
[dir="rtl"] .market-strip-home .market-strip-note { text-align: right; }
