
/* One-screen dashboard: content panes own their overflow, never the page. */
html,body{height:100%;overflow:hidden}
#platform{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
#platform>.top{flex:0 0 72px;position:relative}
#platform>.layout,body:not([data-view=chat]) #platform>.layout{flex:1;min-height:0;height:calc(100dvh - 72px);grid-template-rows:minmax(0,1fr)}
.sidebar{position:relative;top:0;height:100%;min-height:0}
.nav-contextual{min-height:0;overflow:auto}
.workspace,body:not([data-view=chat]) .workspace{height:100%;min-height:0;max-width:none;overflow:auto;padding:24px clamp(18px,3vw,48px)}
body[data-view=chat] .workspace{display:flex;flex-direction:column;overflow:hidden;gap:0}
body[data-view=chat] .workspace>footer{display:none}
.chat-heading{flex:none;margin-bottom:4px}
.chat-heading .eyebrow{display:none}
.chat-heading h1{font-size:clamp(25px,2.4vw,34px);margin:0 0 6px}
.chat-heading .lead{font-size:14px;line-height:1.45;margin:0}
.chat-toolbar{flex:none;margin:10px 0;min-height:28px}
.chat-log,.lidia-dock .chat-log{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none;overflow:hidden;gap:10px;margin:0}
.chat-welcome{padding:8px 0;min-height:0;margin:auto 0}
.welcome-orbit{width:52px;height:52px;font-size:34px;margin:0 auto 12px}
.chat-welcome h2{font-size:23px;margin-bottom:8px}
.chat-welcome p{font-size:13px;margin-bottom:8px}
.starter-grid{margin:12px auto 0;gap:8px;max-width:680px}
.starter-grid button{padding:10px 12px;min-height:38px}
.message{flex:none;min-height:0;padding:10px 14px;max-width:100%;overflow:visible;line-height:1.5}
.message.user{max-width:88%;align-self:flex-end;width:fit-content}
.message-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.message-heading strong{display:block}
.message-heading button{min-height:24px;font-size:10px;padding:3px 6px;border:0;background:transparent}
.message-text{white-space:pre-wrap;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;font-size:14px;line-height:1.5}
.chat-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none;margin:6px 0}
.chat-pagination button{min-height:28px;padding:4px 9px;font-size:11px}
.chat-pagination small{font-size:10px}
.live-caption{flex:none;max-height:44px;overflow:hidden;color:var(--muted);font-size:12px;margin:0}
.topic-strip{flex:none;flex-wrap:nowrap;min-height:0;max-height:68px;overflow:hidden;margin:8px 0;gap:8px}
.topic-card{padding:8px 11px;min-width:0;flex:1}
.topic-card:nth-child(n+4){display:none}
.topic-card>span{font-size:19px}.topic-card strong{font-size:11px}.topic-card small{font-size:9px}
.topic-card button{padding:5px 7px;min-height:28px;font-size:10px}
.composer,.lidia-dock .composer{flex:none;position:static;bottom:auto;margin-top:10px;padding:10px 14px;gap:6px}
.composer textarea{height:44px;min-height:44px;max-height:44px;resize:none;padding:7px 0}
.composer .chat-options{max-height:52px;overflow:auto}
.voice-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.composer .voice-tools .live-call{min-height:42px;padding:10px 17px;border-radius:24px;background:#765569;color:#fff;border:1px solid #765569;font-size:13px;font-weight:500}
.composer .voice-tools .end-call{background:#fff;border-color:#c4a5b8;color:#84516d}
.voice-tools button{font-size:11px;min-height:34px;padding:7px 10px}
.live-status{min-height:15px}
body>.cv-location{display:none}
.top .cv-location{display:block;margin:0 0 0 18px;font-size:11px;max-width:240px}
.top .cv-location summary{max-width:240px;min-height:34px;padding:6px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.top .cv-location-body{position:absolute;left:0;top:36px;width:min(470px,80vw);max-height:calc(100dvh - 110px);overflow:auto;z-index:100}
.top .cv-location>#cv-nearby-results{position:absolute;top:40px;left:0;width:400px;max-height:60dvh;overflow:auto;background:#fff;border:1px solid var(--line);padding:14px;border-radius:14px}
.lidia-dock{position:relative;top:0;height:100%;min-height:0;margin:0;padding:18px 14px;overflow:hidden}
.lidia-dock .dock-heading{flex:none;margin-bottom:8px}
.lidia-dock .chat-welcome h2{font-size:17px}.lidia-dock .starter-grid{display:none}
.lidia-dock .chat-toolbar{margin:4px 0}.lidia-dock .composer{padding:9px}
.lidia-dock .message{padding:8px;font-size:12px}
.lidia-dock .message-text{-webkit-line-clamp:4;font-size:12px}
.lidia-dock .composer .row>.row{width:auto}
.pending-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:30px;margin:0}
.pending-screen .welcome-orbit{margin:0}
.pending-screen p{font-size:14px;color:var(--muted)}
.message-reader{white-space:pre-wrap;font-size:14px;line-height:1.55}
#review[open]{max-height:calc(100dvh - 32px);overflow:auto}
@media(max-width:1150px) and (min-width:801px){body:not([data-view=chat]) #platform>.layout{grid-template-columns:180px minmax(0,1fr) 290px}.lidia-dock{grid-column:auto;grid-row:auto}.sidebar{grid-row:auto}}
@media(max-width:800px){
 #platform>.layout,body:not([data-view=chat]) #platform>.layout{display:block}
 .workspace,body:not([data-view=chat]) .workspace{padding:16px}
 .sidebar{position:fixed;top:72px;height:calc(100dvh - 72px)}
 .top .cv-location{margin-left:3px;max-width:110px}.top .cv-location summary{max-width:110px;font-size:9px;padding:5px 8px}
 .top .cv-location-body{left:-100px;width:calc(100vw - 32px)}
 .chat-heading h1{font-size:25px}.chat-heading .lead{font-size:12px}
 .chat-welcome h2{font-size:20px}.starter-grid{gap:6px}.starter-grid button{font-size:10px;min-height:34px;padding:7px}
 .composer{padding:9px 11px}.composer .row.spread{align-items:flex-end}.composer .voice-tools .live-call{padding:9px 12px;font-size:12px}
 .voice-tools button{padding:6px 8px;font-size:10px}.chat-options{font-size:10px}
 .topic-card{flex:none;width:calc(50% - 5px)}.topic-card:nth-child(n+3){display:none}
 body:not([data-view=chat]) .lidia-dock{position:fixed;bottom:12px;right:12px;top:auto;height:auto;max-height:210px;width:min(360px,calc(100vw - 24px));background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 24px #76556918;padding:12px;z-index:12}
 .lidia-dock .chat-log,.lidia-dock .chat-toolbar,.lidia-dock .chat-pagination{display:none}
 .lidia-dock .composer{margin-top:0}.lidia-dock .chat-options{display:none}
}
@media(max-height:700px){
 .workspace,body:not([data-view=chat]) .workspace{padding-top:14px;padding-bottom:14px}
 .chat-heading h1{font-size:25px}.chat-heading .lead{font-size:12px}
 .chat-welcome .welcome-orbit{display:none}.chat-welcome{padding:0}
 .chat-welcome h2{font-size:18px}.chat-welcome p{display:none}
 .message-text{-webkit-line-clamp:4}.topic-strip{max-height:50px;margin:5px 0}
 .chat-toolbar{margin:5px 0}.composer textarea{height:36px;min-height:36px;max-height:36px}
}

body[data-view=conversations] .workspace{display:flex;flex-direction:column;overflow:hidden}
body[data-view=conversations] .workspace>footer{display:none}
body[data-view=conversations] .workspace>h1{font-size:30px;margin-bottom:8px}
body[data-view=conversations] .workspace>.lead{font-size:13px;margin-bottom:12px}
.conversation-list{flex:1;min-height:0;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.conversation-list .conversation-card{min-height:0;margin:0;padding:14px 18px;overflow:hidden}
.conversation-list .conversation-card h2{font-size:17px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.conversation-list .conversation-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:6px 0 0}
.conversation-list .conversation-card small{font-size:10px}
@media(max-height:560px){.chat-heading .lead,.topic-strip,.chat-options{display:none}.chat-heading h1{font-size:21px}.chat-welcome h2{font-size:17px}.starter-grid button:nth-child(n+3){display:none}.message-text{-webkit-line-clamp:2}.conversation-list .conversation-card p{display:none}}


/* Keep the conversation readable while the composer stays in place. */
.chat-log,.lidia-dock .chat-log{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding-bottom:12px}
.chat-log .message-text{display:block;overflow:visible;-webkit-line-clamp:unset;overflow-wrap:anywhere}
.chat-care-results{flex:none;min-width:0;border-top:1px solid var(--line);padding:18px 0 6px}
.chat-care-results h2{font-size:20px;margin:0 0 12px}
.care-results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.care-results-grid .card{margin:0;padding:16px;min-width:0;overflow-wrap:anywhere}
.care-results-grid h3{font-size:17px;margin:0 0 10px}
.care-results-grid p{font-size:13px;line-height:1.5;margin:8px 0}
.care-results-grid .row{align-items:flex-start;flex-wrap:wrap;gap:8px}
.care-results-grid button{font-size:12px;padding:8px 10px;min-height:36px}
.care-results-grid .care-source{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
#review:has(.care-results-grid){width:min(1000px,calc(100vw - 32px));max-width:1000px}
@media(max-width:600px){.message.user{max-width:95%}.chat-care-results{padding-top:12px}.care-results-grid{grid-template-columns:1fr}}

:root{--response-border:#e8e1eb;--response-ink:#342d39}
.message-text:has(.response-prose){white-space:normal}
.response-prose{color:var(--response-ink);font-size:1rem;line-height:1.65;overflow-wrap:anywhere;max-width:100%}
.response-prose p{margin:.4rem 0 1rem}.response-prose h3{font-size:1.05rem;margin:1.35rem 0 .5rem}.response-prose ul,.response-prose ol{margin:.5rem 0 1rem;padding-left:1.5rem}.response-prose li{margin:.4rem 0}.response-prose strong{font-weight:650}.response-prose blockquote{border-left:3px solid #8b7395;margin:1rem 0;padding:.5rem 1rem;background:#f7f3f8;border-radius:0 10px 10px 0}.response-prose code{background:#f2edf4;border-radius:5px;padding:.1rem .3rem;font-size:.9em}.response-prose a,.response-source-link{color:#675174;text-decoration:underline;text-underline-offset:3px}.response-citation{font-size:.8em;vertical-align:super;white-space:nowrap}
.response-table-scroll{overflow-x:auto;margin:1rem 0;border:1px solid var(--response-border);border-radius:16px;max-width:100%}.response-table-scroll table{border-collapse:collapse;width:100%;min-width:440px;text-align:left}.response-table-scroll th,.response-table-scroll td{padding:.75rem 1rem;border-bottom:1px solid var(--response-border);vertical-align:top;font-size:.93rem;white-space:normal}.response-table-scroll th{background:#f5eff7;font-weight:650}.response-table-scroll tr:last-child td{border-bottom:0}
.response-cards{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 2px 16px;margin:0 0 1rem;max-width:100%}.response-card{flex:0 0 248px;max-width:280px;scroll-snap-align:start;border:1px solid var(--response-border);border-radius:25px;overflow:hidden;background:#fff;box-shadow:0 5px 20px #382a4510}.response-card-banner{height:112px;position:relative;display:grid;place-items:center;background:linear-gradient(135deg,#7a668d,#d6c4db)}.response-tone-1 .response-card-banner{background:linear-gradient(135deg,#2e5b67,#bacfca)}.response-tone-2 .response-card-banner{background:linear-gradient(135deg,#b06f68,#ead0c0)}.response-tone-3 .response-card-banner{background:linear-gradient(135deg,#657492,#c5cfe6)}.response-monogram{width:58px;height:58px;display:grid;place-items:center;background:#fffffff2;border-radius:18px;font-size:1.2rem;font-weight:700;color:#4f405d;box-shadow:0 7px 20px #0002}.response-kind{position:absolute;bottom:8px;left:14px;color:white;font-size:.72rem;font-weight:600;text-shadow:0 1px 3px #0005}.response-card-content{padding:16px;display:flex;gap:9px;flex-direction:column}.response-card-content h3{font-size:1rem;margin:0;line-height:1.3}.response-card-content p{font-size:.84rem;margin:0;line-height:1.45}.response-card-content .response-fact{color:#68606e}.response-card-content .response-price{font-weight:650}.response-card-content .secondary{margin-top:4px;width:100%}.response-source-link{font-size:.76rem;overflow-wrap:anywhere}.response-sources{margin:.6rem 0 1rem;padding:.65rem .9rem;border:1px solid var(--response-border);border-radius:14px;font-size:.85rem}.response-sources summary{cursor:pointer;color:#66516f;font-weight:600}.response-sources li{margin:.5rem 0}.response-sources a{color:#66516f}.response-reader{max-height:72vh;overflow:auto;padding:4px}.response-map summary{cursor:pointer;font-weight:600;padding:.75rem 0}.response-map iframe{width:100%;height:300px;border:1px solid var(--response-border);border-radius:18px}.response-map-options{display:flex;gap:8px;flex-wrap:wrap}.response-map-options button{white-space:normal;text-align:left;max-width:260px}.provider-ai .message:has(.response-prose){white-space:normal}
@media(max-width:600px){.response-card{flex-basis:218px}.response-card-banner{height:96px}.response-prose{font-size:.95rem}.response-table-scroll th,.response-table-scroll td{padding:.6rem .7rem}.response-reader{max-height:70vh}}
