/* Chat-only illustration of the platform's research progress and answer flow. */
.z-investor { position: relative; margin: 0; min-width: 0; container-type: inline-size; }
.z-investor-screen { border: 0; background: var(--z-card-subtle); color: #c3c5cd; font-size: clamp(10px, 4.3cqw, 13px); line-height: 1.7; letter-spacing: 0; }
.z-investor svg { width: 1.15em; height: 1.15em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.z-investor-scroll { position: absolute; inset: 0 0 20%; overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #ffffff22 transparent; mask-image: linear-gradient(transparent, #000 4% 94%, transparent); }
.z-investor.is-animated .z-investor-scroll { pointer-events: none; }
.z-investor-transcript { position: relative; padding: 7% 6% 8%; }
.z-investor [hidden] { display: none !important; }
.z-investor-user { width: fit-content; max-width: 92%; margin: 1.6em 0 1.8em auto; padding: .8em 1em; border: 1px solid #ffffff06; border-radius: 1.4em; background: #2a2b2f; color: #eeeef0; font-size: .95em; line-height: 1.7; }
.z-investor:not(.is-animated) .z-investor-user { display: none; }
.z-investor-progress { margin-bottom: 1.6em; color: #999a9f; }
.z-investor-progress-heading { display: flex; align-items: center; gap: .55em; font-size: .9em; min-height: 1.7em; }
.z-investor-progress-heading svg { width: .85em; height: .85em; }
.z-investor-progress-heading span { font-variant-numeric: tabular-nums; }
.z-investor[data-phase="2"] .z-investor-progress-heading,
.z-investor[data-phase="3"] .z-investor-progress-heading,
.z-investor[data-phase="4"] .z-investor-progress-heading,
.z-investor[data-phase="5"] .z-investor-progress-heading,
.z-investor[data-phase="6"] .z-investor-progress-heading { margin-bottom: 1.3em; padding-bottom: .9em; border-bottom: 1px solid #ffffff12; }
.z-investor.is-working .z-investor-progress-heading svg { transform: rotate(90deg); }
.z-investor-history { display: grid; gap: 1.4em; }
.z-investor-history > p { color: #c3c5cd; }
.z-investor-tool { display: flex; align-items: center; gap: .6em; min-height: 1.65em; font-size: .9em; line-height: 1.65; }
.z-investor-tool svg { width: 1.1em; height: 1.1em; }
.z-investor-current { margin-top: 1.5em; font-size: .95em; }
.z-investor.is-animated .z-investor-current > span { color: transparent; background: linear-gradient(105deg, #999a9f 0%, #999a9f 35%, #eeeef0 50%, #999a9f 65%, #999a9f 100%); background-size: 220% 100%; background-clip: text; -webkit-background-clip: text; animation: investor-status-shimmer 3.4s ease-in-out infinite; animation-play-state: paused; }
.z-investor[data-running="true"] .z-investor-current > span { animation-play-state: running; }
.z-investor-answer strong { font-weight: 500; color: #e0e2e8; }
.z-investor-answer ol { margin: 1.5em 0; padding-left: 1.45em; }
.z-investor-answer li { padding-left: .1em; margin-top: 1.5em; }
.z-investor-answer li::marker { color: #949caa; font-size: .9em; }
.z-investor-answer li > strong { font-size: 1.03em; }
.z-investor-property-meta { display: block; margin-top: .25em; color: #999a9f; font-size: .87em; }
.z-investor-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: .8em; margin: .85em 0 .65em; }
.z-investor-metrics > span { color: #999a9f; font-size: .8em; }
.z-investor-metrics b { display: block; font-size: 1.45em; font-weight: 500; color: #e0e2e8; line-height: 1.5; }
.z-investor-answer li p { font-size: .9em; }
.z-investor-assumptions { margin-top: 1.2em; color: #999a9f; font-size: .85em; }
.z-investor-response-actions { display: flex; gap: .6em; align-items: center; margin-top: 1.3em; color: #999a9f; font-size: .85em; }
.z-investor-composer { position: absolute; z-index: 2; left: 5%; right: 5%; bottom: 5%; display: flex; align-items: center; justify-content: space-between; gap: .7em; min-height: 2.85em; padding: .6em .65em .6em 1em; border-radius: 1.6em; background: linear-gradient(120deg, #2c2d31, #28292c); color: #81838b; font-size: .9em; box-shadow: 0 -8px 20px var(--z-card-subtle); }
.z-investor-composer > span { min-width: 0; }
.z-investor-composer > div { display: flex; justify-content: flex-end; flex: none; }
.z-investor-send { display: grid; place-items: center; width: 1.9em; height: 1.9em; border-radius: 50%; color: #d4e5ff; background: #2f8cff4d; }
.z-investor-send svg { width: 1.05em; height: 1.05em; }
.z-investor-stop { display: none; }
.z-investor.is-working .z-investor-send { background: #ffffff0d; color: #b6bac4; }
.z-investor.is-working .z-investor-send-arrow { display: none; }
.z-investor.is-working .z-investor-stop { display: block; fill: currentColor; stroke: none; }
.z-investor.is-intro .z-investor-composer { bottom: 50%; transform: translateY(50%); min-height: 56%; align-items: stretch; flex-direction: column; border-radius: 1.6em; padding: 1.2em 1em .7em; color: #eeeef0; font-size: .95em; box-shadow: 0 8px 25px #0002; }
.z-investor.is-intro .z-investor-send { color: #fff; background: var(--z-blue); }
.z-investor.is-intro [data-investor-typing]::after { content: ''; display: inline-block; width: 1px; height: 1em; margin-left: 2px; background: #c3c5cd; vertical-align: -.1em; }
.z-investor-pause { position: absolute; z-index: 3; right: 4%; top: 4%; display: grid; place-items: center; width: 28px; height: 28px; padding: 0; border: 1px solid #ffffff0b; border-radius: 50%; color: #a4a8b0; background: #ffffff03; opacity: .5; transition: opacity .2s; }
.z-investor-pause:hover, .z-investor-pause:focus-visible { opacity: 1; }
.z-investor-pause svg { width: 12px; height: 12px; }
.z-investor-play-icon, .z-investor[data-paused="true"] .z-investor-pause-icon { display: none; }
.z-investor[data-paused="true"] .z-investor-play-icon { display: block; }
@keyframes investor-status-shimmer { from { background-position: 180% 0; } to { background-position: -80% 0; } }
@media (prefers-reduced-motion: reduce), (forced-colors: active) { .z-investor.is-animated .z-investor-current > span { animation: none; background: none; color: #999a9f; } }
