/* Local implementation of the violet conversation panel, Figma 287:593. */
.home-hero:has(.hero-chat) .eyebrow{text-transform:none}
.home-hero:has(.hero-chat) .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,520px)}
.home-hero .home-hero-art:has(.hero-chat){max-height:none;overflow:visible;padding:40px 0;margin:0;width:100%}
.hero-chat{width:100%;max-width:520px;padding:24px;border:1px solid rgba(174,145,231,.2);border-radius:29px;background:linear-gradient(180deg,rgba(42,28,64,.92),rgba(25,17,40,.98));box-shadow:0 20px 60px rgba(4,2,11,.35);display:flex;flex-direction:column;gap:16px;isolation:isolate;container-type:inline-size;color:var(--text);font-size:16px;line-height:26px}
.hero-chat-header{display:flex;gap:10px;align-items:center;min-height:24px;line-height:24px}
.hero-chat-brand{width:24px;height:24px;object-fit:contain;flex:none}
.hero-chat-name{font-weight:500;font-size:16px}
.hero-chat-tagline{color:#c6c1d0;font-size:12px;font-weight:500;margin-left:10px}
.hero-chat-toggle{display:grid;place-items:center;margin-left:auto;padding:0;width:24px;height:24px;background:transparent;border:0;border-radius:6px;color:#c6c1d0;font-size:16px;line-height:1}
.hero-chat-toggle:hover{color:var(--text);background:#ffffff12}
.hero-chat-viewport{position:relative;height:256px;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain;outline-offset:4px}
.hero-chat-viewport::-webkit-scrollbar{display:none}
.hero-chat-history{display:flex;flex-direction:column;gap:18px;position:relative;width:100%}
.hero-chat-turn{display:flex;align-items:flex-start;width:100%}
.hero-chat-turn.is-user{justify-content:flex-end}
.hero-chat-bubble{position:relative;padding:12px 16px;border-radius:16px;min-width:0}
.hero-chat .is-user .hero-chat-bubble{width:81.78%;border-bottom-right-radius:6px;background:linear-gradient(180deg,#8968b8,#63488d)}
.hero-chat .is-agent .hero-chat-bubble{width:94.92%;border-bottom-left-radius:6px;background:rgba(54,35,69,.42);display:flex;flex-direction:column;gap:8px}
.hero-chat-author{font-size:12px;line-height:18px;font-weight:500;color:var(--purple)}
.hero-chat-text p{color:var(--text);font-size:16px;line-height:26px;overflow-wrap:anywhere;margin:0}
.hero-chat-typing{display:none;gap:7px;align-items:center;height:26px;width:45px}.hero-chat .is-typing .hero-chat-typing{display:flex}
.hero-chat-dot{display:block;flex:none;width:5px;height:5px;border-radius:50%;background:#c7b5f5}
.hero-chat-dot img{display:block}
.hero-chat-footer{position:relative;padding-top:clamp(76px,25cqw,116px)}
.hero-chat-nebby-stage{position:absolute;inset:0 0 56px;overflow:visible;pointer-events:none}
/* Visible character ≈ one third of the card, matching the Tolan reference. */
.hero-chat-nebby{position:absolute;left:4px;bottom:0;width:43%;max-width:196px;height:auto;aspect-ratio:1;object-fit:contain;transform:translateY(20%)}
.hero-chat-composer{position:relative;z-index:1;display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 8px 6px 16px;background:rgba(20,13,34,.96);border:1px solid rgba(152,112,206,.28);border-radius:19px}
.hero-chat-composer>span:first-child{flex:1;min-width:0;font-size:14px;line-height:24px;color:#9690a8}
.hero-chat-send{width:40px;height:40px;flex:none;border-radius:28px;background:linear-gradient(180deg,#9b77ed,#bd77bf);display:grid;place-items:center}
.hero-chat-composer:hover{border-color:#a880df}
.hero-chat-composer:hover>span:first-child{color:#c6c1d0}
/* Topic controls stay outside the scrolling message area. */
.hero-chat [hidden]{display:none!important}
.hero-chat-topics{display:flex;gap:6px}
.hero-chat-topic{flex:1;min-width:0;min-height:36px;padding:4px 6px;border:1px solid transparent;border-radius:10px;background:transparent;color:#b9accb;font:inherit;font-size:12px;line-height:20px;cursor:pointer}
.hero-chat-topic:hover{background:#ffffff0a;color:var(--text)}
.hero-chat-topic[aria-pressed="true"]{color:#eee5ff;background:#aa83df24;border-color:#bb96ef40}
.hero-chat-topic:focus-visible,.hero-chat-toggle:focus-visible{outline:2px solid #c7b5f5;outline-offset:3px}
@media(max-width:1120px) and (min-width:761px){.home-hero:has(.hero-chat) .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);gap:28px}.hero-chat{padding:20px}.hero-chat .is-user .hero-chat-bubble{width:88%}.hero-chat .is-agent .hero-chat-bubble{width:97%}}
@media(max-width:760px){.home-hero:has(.hero-chat) .home-hero-grid{grid-template-columns:minmax(0,1fr);gap:0}.home-hero .home-hero-art:has(.hero-chat){padding:24px 0 12px}.hero-chat{margin-inline:auto}.home-hero:has(.hero-chat) .hero-copy{padding-bottom:0}}
@media(max-width:420px){.hero-chat{padding:18px;border-radius:24px}.hero-chat-tagline{margin-left:4px}.hero-chat .is-user .hero-chat-bubble{width:90%}.hero-chat .is-agent .hero-chat-bubble{width:98%}.hero-chat-bubble{padding:12px 14px}.hero-chat-typing{left:14px}.hero-chat-composer{padding-left:12px;gap:6px}.hero-chat-composer>span:first-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-chat-toggle{display:none}}
