:root{--brand-teal:#0e7c7b;--brand-crimson:#d62246;--brand-charcoal:#242424;--brand-mint:#00e6d4;--text:#3d3d3d;--text-h:#242424;--muted:#24242494;--bg:#f5f4f1;--chat-canvas:#f5f4f1;--panel:#ffffffd1;--panel-strong:#fffffff2;--border:#2424241f;--accent:var(--brand-teal);--accent-2:var(--brand-crimson);--accent-bg:#0e7c7b1a;--shadow:#0e7c7b1f 0 20px 50px -18px;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--heading:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, monospace;font:16px / 150% var(--sans);letter-spacing:.12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#ffffffd6;--text-h:#fffffff2;--muted:#ffffff94;--bg:#0a1010;--chat-canvas:#0a1010;--panel:#ffffff0f;--panel-strong:#ffffff17;--border:#ffffff24;--accent:#3cb0ae;--accent-2:#e84866;--accent-bg:#3cb0ae26;--shadow:#00000073 0 24px 80px -28px}.emailGateStart{background:linear-gradient(135deg, var(--accent) 0%, #2a8a88 45%, var(--accent-2) 100%);box-shadow:0 12px 28px -14px #3cb0ae59}.composerSend{background:var(--accent)}.composerSend:hover:not(:disabled){background:#4bc4c2}.msgU .msgBubble{background:#3cb0ae33}.chatStickyFooter{box-shadow:0 -4px 24px #00000059}}html{height:100%}body{background:var(--chat-canvas);flex-direction:column;min-height:max(100%,100dvh);margin:0;display:flex}html:has(.appShell--chat){height:100%;overflow:hidden}body:has(.appShell--chat){height:100dvh;max-height:100dvh;overflow:hidden}#root{flex-direction:column;flex:auto;width:100%;min-height:100dvh;display:flex}#root:has(.appShell--chat){height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}h1,h2,h3{font-family:var(--heading);color:var(--text-h);font-weight:500}p{margin:0}*{box-sizing:border-box}button,textarea{font:inherit}kbd{font-family:var(--mono);border:1px solid var(--border);background:var(--panel);border-radius:6px;padding:2px 6px;font-size:12px}.appShell{flex-direction:column;flex:auto;width:min(900px,100% - 32px);min-height:0;margin:0 auto;padding:20px 0 24px;display:flex}.appShell--chat{flex:auto;width:100%;max-width:720px;height:100%;min-height:0;max-height:100%;padding:0;overflow:hidden}.topBar{border:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.topBar--chat{border:none;border-bottom:1px solid var(--border);box-shadow:none;background:var(--chat-canvas);-webkit-backdrop-filter:none;backdrop-filter:none;padding:max(12px, env(safe-area-inset-top,0px)) 16px 12px;border-radius:0;flex-shrink:0}.appShell--chat .mainColumn{flex-direction:column;flex:1;min-height:0;margin-top:0;display:flex}@media (width<=768px){.appShell--chat .topBar{display:none}.appShell--chat .chatScroll{padding-top:max(16px, env(safe-area-inset-top,0px))}.appShell--chat .chatPane--boot{padding-top:max(40px, env(safe-area-inset-top,0px))}}.topBar--chat .brandLogo{border-radius:0;width:auto;max-width:160px;height:32px}.brand{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.brandText{flex-direction:column;justify-content:center;gap:0;min-width:0;display:flex}.brandLogo{object-fit:contain;object-position:left center;border-radius:0;width:auto;max-width:min(220px,52vw);height:40px;display:block}.brandChatTitle{color:var(--text-h);letter-spacing:-.02em;font-size:15px;font-weight:600;line-height:1.2}.mainColumn{flex-direction:column;flex:1;min-height:0;margin-top:16px;display:flex}.emailGate{flex:1;justify-content:center;align-items:center;padding:24px 16px;display:flex}.emailGateCard{border:1px solid var(--border);background:#fff;border-radius:20px;width:100%;max-width:480px;padding:28px 24px 24px;box-shadow:0 4px 6px -1px #0000000f,0 12px 40px -12px #0e7c7b26}.emailGateHero{align-items:center;gap:14px;margin-bottom:22px;display:flex}.emailGateAvatar{border:2px solid #ffffffe6;border-radius:50%;flex-shrink:0;width:52px;height:52px;display:block;overflow:hidden;box-shadow:0 4px 14px #0e7c7b59}.emailGateAvatarImg{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.emailGateHeroText{min-width:0}.emailGateName{color:var(--text-h);letter-spacing:-.02em;font-size:17px;font-weight:700;line-height:1.2}.emailGateRole{color:var(--muted);margin-top:4px;font-size:13px;font-weight:500;line-height:1.3}.emailGateHeadline{color:var(--text-h);letter-spacing:-.03em;margin:0 0 12px;font-size:1.35rem;font-weight:700;line-height:1.28}.emailGateIntro{color:var(--muted);margin:0 0 20px;font-size:15px;line-height:1.55}.emailGateBenefits{background:#0e7c7b14;border:1px solid #0e7c7b1f;border-radius:14px;margin:0 0 24px;padding:16px 16px 16px 18px;list-style:none}.emailGateBenefits li{color:var(--text);margin-bottom:12px;padding-left:14px;font-size:14px;line-height:1.5;position:relative}.emailGateBenefits li:last-child{margin-bottom:0}.emailGateBenefits li:before{content:"";background:var(--brand-teal);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.emailGateBenefits strong{color:var(--text-h);font-weight:650}.emailGateLabel{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:500;display:block}.emailGateInput{width:100%;color:var(--text-h);background:#fafafa;border:1px solid #24242424;border-radius:14px;outline:none;margin-bottom:8px;padding:12px 14px;font-size:16px;line-height:1.4}.emailGateInput:focus{border-color:#0e7c7b8c;box-shadow:0 0 0 4px #0e7c7b24}.emailGateError{color:var(--brand-crimson);margin:0 0 12px;font-size:13px}@media (prefers-color-scheme:dark){.emailGateError{color:#ff7a8e}.emailGateCard{border-color:var(--border);box-shadow:var(--shadow);background:#ffffff0f}.emailGateBenefits{background:#3cb0ae1f;border-color:#3cb0ae38}.emailGateInput{border-color:var(--border);background:#ffffff0f}}.emailGateStart{touch-action:manipulation;letter-spacing:-.1px;color:#fff;background:linear-gradient(125deg, var(--brand-teal) 0%, #0a5c5b 42%, var(--brand-crimson) 100%);cursor:pointer;border:0;border-radius:14px;width:100%;margin-top:8px;padding:12px 16px;font-size:16px;font-weight:650;box-shadow:0 12px 28px -14px #0e7c7b8c}.emailGateStart:disabled{opacity:.5;cursor:not-allowed}.chatPane{flex-direction:column;flex:1;height:100%;min-height:0;display:flex;overflow:hidden}.chatPane--boot{background:var(--chat-canvas);width:100%;min-height:max(240px,40vh);color:var(--text-h);flex:1;justify-content:center;align-items:center;padding:32px 20px}.chatBootText{color:var(--text-h);opacity:.85;text-align:center;margin:0;font-size:16px;line-height:1.5}.flowErrorPaneWrap{min-height:0;padding:max(24px, env(safe-area-inset-top,0px)) 24px max(32px, env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.flowErrorPage{text-align:center;width:100%;max-width:28rem;margin:0 auto}.flowErrorPageText{color:var(--text-h);margin:0;font-size:1.05rem;font-weight:500;line-height:1.5}.questionnairePaneWrap{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;padding:16px 16px 0;display:flex;overflow:hidden}@media (width>=640px){.questionnairePaneWrap{padding:24px 20px 0}}.questionnaireCompleteWrap{-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:flex-end;min-height:0;display:flex;overflow:hidden auto}.questionnairePane{flex-direction:column;flex:1;width:100%;max-width:520px;min-height:0;margin:0 auto;display:flex}.questionnaireCard{border:1px solid var(--border);background:var(--panel-strong);border-radius:20px;flex-direction:column;flex:1;width:100%;min-height:0;padding:0;display:flex;overflow:hidden;box-shadow:0 4px 6px -1px #0000000f,0 12px 40px -12px #0e7c7b1f}@media (prefers-color-scheme:dark){.questionnaireCard{background:#ffffff0f}}.questionnaireHeader{border-bottom:1px solid var(--border);flex-shrink:0;margin:0;padding:22px 20px 16px}.questionnaireHero{align-items:center;gap:12px;display:flex}.questionnaireAvatar{border:2px solid #ffffffd9;border-radius:50%;flex-shrink:0;width:48px;height:48px;overflow:hidden;box-shadow:0 4px 14px #0e7c7b47}.questionnaireAvatarImg{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.questionnaireName{color:var(--text-h);letter-spacing:-.02em;font-size:16px;font-weight:700}.questionnaireMeta{color:var(--muted);margin-top:2px;font-size:13px;font-weight:500}.questionnaireMain{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 20px 20px;display:flex;overflow:hidden auto}.questionnaireFooter{border-top:1px solid var(--border);background:var(--chat-canvas);padding:12px 20px max(12px, env(safe-area-inset-bottom,0px));flex-shrink:0;box-shadow:0 -4px 24px #0000000f}@media (prefers-color-scheme:dark){.questionnaireFooter{box-shadow:0 -4px 24px #00000059}}.questionnaireQuestionTitle{color:var(--text-h);letter-spacing:-.02em;flex-shrink:0;margin:0;font-size:1.1rem;font-weight:650;line-height:1.35}.questionnaireSummaryTitle{color:var(--text-h);letter-spacing:-.02em;flex-shrink:0;margin:0;font-size:1.2rem;font-weight:700}.questionnaireSummaryLead{color:var(--muted);flex-shrink:0;margin:0 0 4px;font-size:14px;line-height:1.5}.questionnaireLabel{color:var(--muted);flex-shrink:0;font-size:13px;font-weight:500}.questionnaireTextarea{border:1px solid var(--border);color:#1a1a1a;resize:vertical;background:#fff;border-radius:14px;outline:none;width:100%;min-height:120px;padding:12px 14px;font-size:16px;line-height:1.45}.questionnaireMain:has(#guidebook-answer) .questionnaireTextarea{flex:auto;min-height:140px}.questionnaireTextarea:focus{border-color:#0e7c7b73;box-shadow:0 0 0 3px #0e7c7b1f}.questionnaireTextarea:disabled{opacity:.65}.questionnaireCharCount{color:var(--muted);text-align:right;flex-shrink:0;margin:-4px 0 0;font-size:12px;line-height:1.3}@media (prefers-color-scheme:dark){.questionnaireTextarea{color:#ffffffeb;background:#ffffff14}.questionnaireTextarea:focus{border-color:#3cb0ae8c;box-shadow:0 0 0 3px #3cb0ae2e}}.questionnaireSummaryList{flex-direction:column;gap:16px;margin:8px 0 0;padding:0 0 0 18px;display:flex}.questionnaireSummaryItem{margin:0}.questionnaireSummaryQ{color:var(--text-h);margin-bottom:6px;font-size:13px;font-weight:600;line-height:1.4}.questionnaireSummaryA{color:var(--text);white-space:pre-wrap;font-size:15px;line-height:1.5}.questionnaireActions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;margin:0;display:flex}.questionnaireBtn{cursor:pointer;touch-action:manipulation;border:1px solid #0000;border-radius:12px;min-height:44px;padding:0 18px;font-size:15px;font-weight:650}.questionnaireBtn:disabled{opacity:.45;cursor:not-allowed}.questionnaireBtn--ghost{border-color:var(--border);color:var(--text-h);background:0 0}.questionnaireBtn--ghost:hover:not(:disabled){background:var(--panel)}.questionnaireBtn--primary{color:#fff;background:var(--brand-teal);border:none;transition:background .15s,opacity .15s;box-shadow:0 10px 24px -14px #0e7c7b73}.questionnaireBtn--primary:hover:not(:disabled){background:#0c6a69}.questionnaireBtn--wide{min-width:7.5rem}.questionnaireError{color:var(--brand-crimson);margin:0;font-size:14px;line-height:1.45}@media (prefers-color-scheme:dark){.questionnaireError{color:#ff9aa8}}.chat{background:0 0;flex-direction:column;flex:1;height:100%;min-height:0;display:flex;overflow:hidden}.chatScroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;padding:16px 16px 24px;overflow:hidden auto}@media (width>=640px){.chatScroll{padding:24px 20px 32px}}.msg{margin:0 0 1.25rem;display:flex}.msg:last-child{margin-bottom:0}.msgA{justify-content:flex-start}.msgU{justify-content:flex-end}.msgBubble{white-space:pre-wrap;max-width:min(100%,42rem);color:var(--text-h);background:0 0;border:none;border-radius:0;padding:0;font-size:15px;line-height:1.6}.msgA .msgBubble{padding-right:.5rem}.msgU .msgBubble{max-width:85%;color:var(--text-h);background:#0e7c7b1a;border-radius:1.15rem;padding:.65rem .95rem}.msgThinking{color:var(--muted);font-size:14px}.chatStickyFooter{z-index:4;background:var(--chat-canvas);border-top:1px solid var(--border);flex-shrink:0;position:sticky;bottom:0;box-shadow:0 -4px 24px #0000000f}.chatUsageMeter{background:var(--chat-canvas);grid-template-columns:minmax(0,1fr) 44px;align-items:center;column-gap:8px;padding:8px 12px 4px;display:grid}@media (width>=640px){.chatUsageMeter{padding:8px 16px 4px}}.chatUsageMeterRow{flex-direction:row;grid-column:1;justify-self:center;align-items:center;gap:10px;width:95%;min-width:0;display:flex}.chatUsageMeterText{color:var(--muted);text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;margin:0;font-size:12px;line-height:1.25;overflow:hidden}.chatUsageMeterTrack{background:#0e7c7b1f;border-radius:999px;flex:1 1 0;min-width:48px;height:5px;overflow:hidden}.chatUsageMeterSendPad{grid-area:1/2;justify-self:end;width:44px}.chatStickyFooter:has(.chatUsageMeter) .chatComposer{padding-top:6px}.chatUsageMeterFill{background:linear-gradient(90deg, var(--brand-teal) 0%, #0a6564 50%, var(--brand-crimson) 100%);border-radius:999px;min-width:0;height:100%;transition:width .35s}.chatUsageMeter--limit .chatUsageMeterFill{background:var(--muted);opacity:.85}.chatComposer{padding:12px 12px max(12px, env(safe-area-inset-bottom,0px));background:var(--chat-canvas);flex-direction:row;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}@media (width>=640px){.chatComposer{padding:16px 16px 20px}}.composerInput{resize:none;border:1px solid var(--border);color:#1a1a1a;caret-color:#1a1a1a;background:#fff;border-radius:1.25rem;outline:none;flex:1;min-width:0;min-height:44px;max-height:200px;padding:11px 14px;font-size:16px;line-height:1.45;box-shadow:0 1px 2px #0000000a}.composerInput::placeholder{color:#6b6b6b;opacity:1}.composerInput:focus{border-color:#0e7c7b73;box-shadow:0 0 0 3px #0e7c7b1f}@media (prefers-color-scheme:dark){.composerInput{color:#ffffffeb;caret-color:#fff;box-shadow:none;background:#ffffff17}.composerInput::placeholder{color:#ffffff73}.composerInput:focus{border-color:#3cb0ae8c;box-shadow:0 0 0 3px #3cb0ae2e}}.composerSend{color:#fff;background:var(--brand-teal);cursor:pointer;width:44px;height:44px;box-shadow:none;touch-action:manipulation;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,opacity .15s;display:inline-flex}.composerSend:hover:not(:disabled){background:#0c6a69}.composerSendIcon{display:block}.composerSend--wide{border-radius:999px;width:auto;min-width:5.5rem;padding:0 14px}.composerSendText{letter-spacing:.02em;font-size:13px;font-weight:650}.composerSend:disabled{opacity:.45;cursor:not-allowed}.chatHint{color:var(--muted);text-align:center;flex-shrink:0;padding:6px 16px 12px;font-size:12px}.chatHint--desktop{display:none}@media (width>=769px){.chatHint--desktop{display:block}}.collectionComplete{border-top:1px solid var(--border);background:var(--chat-canvas);padding:20px 16px max(24px, env(safe-area-inset-bottom,0px));flex-shrink:0}@media (width>=640px){.collectionComplete{padding:24px 20px max(28px, env(safe-area-inset-bottom,0px))}}.collectionCompleteCard{text-align:left;background:#e9f5f5;border:1px solid #d1e8e8;border-radius:16px;width:90%;max-width:36rem;margin:0 auto;padding:24px}@media (width>=640px){.collectionCompleteCard{padding:28px 32px}}.collectionCompleteTitle{color:#1a1a1a;letter-spacing:-.02em;margin:0 0 12px;font-size:1.25rem;font-weight:700;line-height:1.25}.collectionCompleteLead{color:#4a4a4a;margin:0 0 12px;font-size:15px;font-weight:400;line-height:1.5}.collectionCompleteBody{color:#4a4a4a;margin:0;font-size:15px;font-weight:400;line-height:1.5}.collectionCompleteNote{color:#757575;margin:16px 0 0;font-size:13px;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){.collectionCompleteCard{background:#3cb0ae24;border-color:#64c8c659}.collectionCompleteTitle{color:#fffffff0}.collectionCompleteLead,.collectionCompleteBody{color:#ffffffc7}.collectionCompleteNote{color:#ffffff85}}
