/* Exact palette and fern from findyourreset.health; reference supplies layout only. */
.scene-topbar .scene-space{background:#17352b;color:#fffdf8}
:root{--paper:#f7f5ed;--ink:#17352b;--muted:#6b7d74;--green:#17352b;--sage:#5f9278;--mist:#eaf2ec;--clay:#5f9278;--line:#DBE4DC;--white:#fffdf8}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}
.scene-wordmark,.login-art>.brand,.sidebar .brand{font-family:Georgia,"Times New Roman",serif;text-transform:none;font-size:44px;letter-spacing:-3px;color:var(--ink);font-weight:400;line-height:1}
.scene-wordmark .brand-dot,.login-art>.brand .brand-dot,.sidebar .brand .brand-dot{display:inline-block;color:var(--sage);font-family:Arial,sans-serif;font-size:19px;letter-spacing:0;margin:5px 0 0 5px;vertical-align:top}
.scene-wordmark small,.login-art>.brand small{display:block;font-family:Arial,sans-serif;font-size:7px;letter-spacing:2px;color:var(--sage);margin-top:10px;text-align:center;line-height:1}
.scene-topbar{background:#f7f5ed20}.inner-page .scene-topbar{background:var(--paper)}
.hero{background:radial-gradient(ellipse at 50% 83%,#f7f5ed 0%,#f7f5ed 28%,#eaf2ec 63%,#eaf2ec 100%);box-shadow:inset 0 0 110px #5f927810}
.login-screen{background:radial-gradient(ellipse at 55% 83%,#f7f5ed,#eaf2ec 67%,#eaf2ec)}
.pearl-halo{background:radial-gradient(ellipse,#F7F5DC80,transparent 69%)}
.pearl-shadow{background:radial-gradient(ellipse,#5f927835 0,#9DBBA620 40%,transparent 70%)}
.pearl-ripple{border-color:#f7f5ed50;box-shadow:0 -9px 19px #5f927820,inset 0 10px 14px #5f927825,0 15px 20px #f7f5edAA}
.scene-caption strong{color:var(--sage)}.scene-bottom i:first-of-type{background:var(--clay)}
.hero-content h1{font-size:29px}.hero-content p{color:var(--muted);font-size:12px}.hero-content .pill{color:var(--sage)}
.card{border-radius:15px;background:var(--white);border-color:var(--line)}
.lumi-note{background:#eaf2ec}.lumi-note .orb{background:radial-gradient(circle at 38% 34%,#9DBBA6,var(--sage) 42%,var(--green));color:#eaf2ec;box-shadow:0 8px 15px #5f927825}
.signature{font-family:Georgia,serif;font-style:italic;font-size:17px;color:var(--green)}
.secondary{background:var(--mist);color:var(--green)}.dark,.primary{background:var(--green)}.dark:hover,.primary:hover{background:#245341}
.mood-scale button.selected{background:var(--sage);border-color:var(--sage)}
.stat{border-radius:15px;background:var(--mist)}.stat strong{font-family:Georgia,serif;letter-spacing:-1px;color:var(--green)}
.library-intro,.story-card{border-radius:15px;background:var(--mist)}.story-card h2{color:var(--ink)}
.breathing-orb{background:radial-gradient(circle at 38% 34%,#9DBBA6,var(--sage) 42%,var(--green));color:white;box-shadow:0 20px 30px #5f927830,0 0 0 15px #eaf2ec80}
dialog{background:var(--paper);color:var(--ink);border-radius:16px}dialog::backdrop{background:#17352b55}
.login-form h2{font-size:28px}.login-art>small,.scene-caption{color:var(--sage)}
.sidebar .brand{font-size:38px}.sidebar .brand-caption{color:var(--sage)}
@media(max-width:800px){.scene-wordmark{font-size:38px}.scene-wordmark small{font-size:6px;margin-top:7px}.hero-content h1{font-size:26px}}
@media(max-width:520px){.scene-wordmark{font-size:33px}.scene-wordmark .brand-dot{font-size:15px;margin-top:3px}.scene-wordmark small{font-size:5px;letter-spacing:1.5px}.hero-content h1{font-size:27px}.hero-content p{font-size:11px}.login-art>.brand{font-size:40px}.login-form h2{font-size:28px}}

.scene-wordmark,.login-art>.brand{font-size:31px;letter-spacing:-1px;white-space:nowrap}.scene-wordmark small,.login-art>.brand small{font-size:11px;letter-spacing:.3px;text-transform:none;color:var(--sage);margin-top:8px}.sidebar .brand{font-size:26px;letter-spacing:-1px;white-space:nowrap}.sidebar .brand-caption{text-transform:none;letter-spacing:.5px;font-size:12px}.scene-wordmark .brand-dot,.login-art>.brand .brand-dot{font-size:16px;margin-top:3px}@media(max-width:800px){.scene-wordmark{font-size:27px}.scene-wordmark small{font-size:10px}}@media(max-width:520px){.scene-wordmark{font-size:23px}.scene-wordmark small{font-size:9px;margin-top:5px}.scene-topbar .scene-space{width:34px;height:34px;padding:0;justify-content:center}.scene-space .space-label{display:none}.scene-wordmark .brand-dot{font-size:12px}.login-art>.brand{font-size:29px}}
/* Reserve space beneath the wordmark, including the orb's upward motion. */
.scene-topbar{background:var(--paper);border-bottom:1px solid #DBE4DC66;backdrop-filter:none}
.hero .pearl{width:clamp(280px,min(36vw,46svh),550px);top:max(280px,40%)}
.login-art .pearl{width:clamp(280px,min(37vw,46svh),560px);top:max(285px,38%)}
@media(max-width:1050px){.hero .pearl{width:min(390px,46svh);top:max(280px,37%)}.login-art .pearl{width:min(380px,46svh);top:max(285px,32%)}}
@media(max-width:800px){.hero .pearl{width:min(350px,44svh);top:max(270px,35%)}.login-art .pearl{width:min(340px,44svh);top:max(285px,30%)}}
@media(max-width:520px){.hero .pearl{width:min(320px,80vw);top:max(265px,32%)}.login-art .pearl{width:300px;top:230px}}

/* Slow continuous motion, with no repeating impacts or busy ring patterns. */
.pearl{animation:quiet-breath 10s ease-in-out infinite;filter:drop-shadow(0 16px 26px #17352b12)}
@keyframes quiet-breath{0%,100%{transform:translate(-50%,-50%) scale(.98)}50%{transform:translate(-50%,-50%) translateY(-4px) scale(1.015)}}
.pearl-ripple{opacity:.35;border-color:#f7f5ed30;filter:blur(7px)}
.pearl-ripple.second{opacity:.16;filter:blur(13px)}
.pearl-shadow{background:radial-gradient(ellipse at center,#17352b55 0%,#5f927838 28%,#9DBBA61F 48%,transparent 72%);filter:blur(6px);opacity:1}
.pearl-shadow::after{content:"";position:absolute;inset:28% 20%;border-radius:50%;background:#17352b55;filter:blur(7px)}
.pearl-ripple{opacity:.42;box-shadow:0 -5px 14px #5f927826,inset 0 7px 13px #5f927830,0 12px 18px #f7f5ed80}
.pearl-halo{width:65%;height:65%;background:radial-gradient(ellipse,#F7F5DC55,transparent 67%);filter:blur(40px)}
@media(prefers-reduced-motion:reduce){.pearl{animation:none}}

/* A brief introduction, followed by a long interval of uninterrupted flow. */
.sphere-intro{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;opacity:0;animation:lumi-introduction 26s ease-in-out 3s infinite;color:#f7f5ed;text-shadow:0 1px 12px #17352b35;padding:20px}
.sphere-intro span{font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,2.4vw,35px);letter-spacing:-.5px;font-weight:400;line-height:1.2}
.sphere-intro small{font-size:clamp(10px,1vw,13px);letter-spacing:1px;margin-top:12px;color:#f7f5ed}
@keyframes lumi-introduction{0%{opacity:0;transform:translateY(5px)}7%,22%{opacity:1;transform:translateY(0)}30%,100%{opacity:0;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.sphere-intro{animation:none;opacity:0}}

/* The same flowing Lumi sphere, with a four-second inhale and exhale. */
.pearl{animation-duration:8s}
@keyframes quiet-breath{0%,100%{transform:translate(-50%,-50%) scale(.92)}50%{transform:translate(-50%,-50%) scale(1.08)}}
.practice-scene{position:relative;height:290px;margin:12px auto 8px;display:flex;align-items:center;justify-content:center}
.breathing-orb.practice-sphere{position:relative;width:260px;height:260px;margin:0;background:none;box-shadow:none;flex-shrink:0;transform:scale(.9);transition:transform 4s ease-in-out;z-index:1;border-radius:50%}
.practice-sphere img{width:100%;height:100%;display:block;filter:drop-shadow(0 12px 18px #17352b12)}
.practice-sphere #breath-label{position:absolute;inset:0;display:grid;place-items:center;color:#f7f5ed;font-family:Georgia,"Times New Roman",serif;font-size:23px;text-shadow:0 1px 10px #17352b35}
.breathing-orb.practice-sphere.expand{transform:scale(1.1)}
.practice-shadow{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:170px;height:32px;border-radius:50%;background:radial-gradient(ellipse,#17352b50,transparent 72%);filter:blur(5px)}
@media(max-width:520px){#reset-dialog{padding:30px 22px}.practice-scene{height:260px}.breathing-orb.practice-sphere{width:230px;height:230px}}
@media(prefers-reduced-motion:reduce){.pearl{animation:none}.breathing-orb.practice-sphere,.breathing-orb.practice-sphere.expand{transition:none;transform:none}}

.hero,.login-screen{background:radial-gradient(ellipse at 50% 43%,#eaf2ec 0%,#f7f5ed 75%)}

/* A barely visible skyline, behind the floating sphere and interface. */
.hero::before,.login-art::before{content:"";position:absolute;left:0;right:0;bottom:10%;height:clamp(140px,24svh,260px);background:url('/static/uae-skyline.svg') center bottom / auto 100% no-repeat;opacity:.065;pointer-events:none}
@media(max-width:520px){.hero::before{bottom:14%;height:175px;background-position:62% bottom}.login-art::before{bottom:48%;height:165px;background-position:62% bottom}}

.practice-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin:14px 0 4px}.practice-controls #reset-timer{margin:0;text-align:center;font-size:18px;font-variant-numeric:tabular-nums}.practice-controls #reset-voice{width:auto;min-width:112px;margin-top:0;justify-content:center;font-size:12px;padding:9px 15px;border:1px solid var(--line);border-radius:30px}.voice-status{font-size:11px;min-height:16px;margin:8px 0 18px}.practice-controls #reset-voice[aria-pressed="false"]{background:transparent}.practice-controls #reset-voice:disabled{opacity:.5}

/* Progress opens over the current page, mirroring the navigation drawer. */
.progress-drawer{position:fixed;inset:0 0 0 auto;width:min(520px,100%);height:100dvh;z-index:12;padding:64px 32px 32px;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);box-shadow:-15px 0 60px #17352b15;transform:translateX(105%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.progress-open #progress{transform:translateX(0);visibility:visible}
.progress-open{overflow:hidden}
.progress-close{position:absolute;right:25px;top:25px;border:0;background:none;color:var(--muted);font-size:25px;padding:5px;line-height:1}
#progress-backdrop{position:fixed;inset:0;width:100%;height:100%;border:0;background:#17352b38;backdrop-filter:blur(6px);z-index:11}
.progress-drawer .page-heading{margin-bottom:24px}
.progress-drawer h1{font-size:35px;line-height:1.15;margin-bottom:14px}
.progress-drawer .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
.progress-drawer .stat{padding:20px}.progress-drawer .stat strong{font-size:36px}
.progress-drawer .card{padding:22px}.progress-drawer .card-heading{align-items:flex-start;gap:12px}
.progress-drawer .card-heading h3{font-size:23px}.progress-drawer .card-heading>span{font-size:10px;white-space:nowrap;padding-top:7px}
.progress-drawer .mood-chart{gap:8px}.progress-drawer .wins-history{margin-top:20px}
.progress-drawer .win-entry{flex-direction:column;gap:5px}
@media(max-width:520px){.progress-drawer{width:calc(100% - 24px);padding:64px 22px 28px}.progress-drawer h1{font-size:31px}.progress-drawer .card{padding:18px}.progress-drawer .stat{padding:18px}.progress-drawer .card-heading h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.progress-drawer{transition:none}}

.explore-section{max-width:1080px;margin:40px auto 0;padding:26px 0}.explore-section h2{font-size:34px;margin-bottom:12px}.explore-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.guide-card{display:flex;flex-direction:column}.guide-card h3{font-size:24px}.guide-card .text-button{margin-top:auto;padding-top:12px;text-align:left}.explore-all{width:auto}.track-learn{text-align:left;margin:0 0 16px}.track .secondary{margin-top:0}
.guide-drawer{width:min(620px,100%)}.guide-open{overflow:hidden}.guide-open .guide-drawer{transform:translateX(0);visibility:visible}#guide-backdrop{position:fixed;inset:0;width:100%;height:100%;border:0;background:#17352b38;backdrop-filter:blur(6px);z-index:11}#guide-back{margin:0 0 28px}#guide-title{font-size:38px;line-height:1.12;margin-bottom:24px}#guide-list{display:grid;gap:16px}.guide-intro{font-size:16px;line-height:1.85;color:var(--muted)}.guide-listen{padding:24px;background:var(--mist);border-radius:15px;margin:28px 0}.guide-listen h3{font-size:26px}.guide-listen select{padding:10px 14px;background:var(--white);border:1px solid var(--line);border-radius:20px;color:var(--ink);margin-bottom:18px}.guide-listen .muted{font-size:11px;margin:14px 0 0}.guide-copy{margin:30px 0}.guide-copy h2{font-size:27px;margin-bottom:14px}.guide-copy p{font-size:14px;line-height:1.95;color:var(--muted)}.guide-sources{border-top:1px solid var(--line);padding-top:20px;font-size:12px;line-height:1.8;color:var(--muted)}.guide-sources a{display:inline-block;margin-right:12px;color:var(--green)}.guide-note{font-size:11px;margin-top:22px}
@media(max-width:1100px){.explore-section{margin-left:35px;margin-right:35px}}@media(max-width:800px){.explore-previews{grid-template-columns:1fr}.explore-section{margin-left:25px;margin-right:25px}}@media(max-width:520px){.explore-section{margin:24px 18px 0}.explore-section h2{font-size:29px}.guide-drawer{width:calc(100% - 24px)}#guide-title{font-size:31px}.guide-listen{padding:20px}.guide-intro{font-size:14px}.guide-copy h2{font-size:25px}}

.founder-home{display:block;margin:0 0 24px}.founder-copy p{white-space:pre-line;font-size:15px}.founder-copy p:last-child{color:var(--ink);font-family:Georgia,serif}
.lumi-chat-launch{position:fixed;right:25px;bottom:85px;z-index:8;border:1px solid #DBE4DC;background:var(--green);color:var(--paper);padding:13px 18px;border-radius:30px;box-shadow:0 6px 25px #17352b20;font-size:12px;display:flex;gap:10px;align-items:center}.lumi-chat-launch span{font-size:22px}.chat-open{overflow:hidden}.chat-open .chat-drawer{transform:translateX(0);visibility:visible}.chat-drawer{display:flex;flex-direction:column;width:min(520px,100%);padding:64px 26px 20px;overflow:hidden}#chat-backdrop{position:fixed;inset:0;width:100%;height:100%;border:0;background:#17352b38;backdrop-filter:blur(6px);z-index:11}.chat-heading{display:flex;align-items:center;gap:16px}.chat-heading .eyebrow{margin-bottom:8px}#chat-title{font-size:27px;line-height:1.15;margin:0}.chat-orb{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;font-size:24px;border-radius:50%;background:radial-gradient(circle at 25% 25%,var(--mist),var(--sage));color:var(--paper)}.chat-mode{font-size:11px;line-height:1.6;color:var(--muted);margin:16px 0;padding-bottom:12px;border-bottom:1px solid var(--line)}.chat-messages{flex:1;min-height:100px;overflow:auto;overscroll-behavior:contain;padding:5px 0 16px}.chat-bubble{max-width:94%;padding:15px 17px;border-radius:16px;background:var(--mist);margin-bottom:14px}.chat-bubble.user{margin-left:auto;background:var(--white);border:1px solid var(--line)}.chat-author{font-size:10px;letter-spacing:.4px;color:var(--sage)}.chat-bubble p{font-size:13px;line-height:1.8;margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-options{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.chat-options button{font-size:10px;border:1px solid var(--line);background:var(--white);color:var(--ink);padding:8px 10px;border-radius:20px}#chat-form{display:flex;align-items:flex-end;gap:8px;margin-top:10px}#chat-input{width:100%;min-width:0;max-height:100px;resize:vertical;border:1px solid var(--line);background:var(--white);border-radius:15px;padding:12px;color:var(--ink);font-size:13px}#chat-form .primary{white-space:nowrap;flex-shrink:0;font-size:11px;padding:13px 16px}.chat-footer{font-size:10px;line-height:1.5;color:var(--muted);margin:12px 0 0}#chat-actions .secondary{margin-top:6px;font-size:11px}#chat-action-status{font-size:11px;margin:7px 0 0}
@media(max-width:520px){.chat-drawer{width:calc(100% - 16px);padding:60px 20px 18px}.lumi-chat-launch{right:18px;bottom:78px;padding:11px 14px}#chat-title{font-size:25px}.chat-options button{font-size:9px}.chat-mode{font-size:10px}}

.sidebar{overflow-y:auto;overscroll-behavior:contain}.sidebar nav{margin-top:34px;gap:5px}.sidebar .nav-item{padding:15px 12px}.menu-open .lumi-chat-launch,.progress-open .lumi-chat-launch,.guide-open .lumi-chat-launch,.chat-open .lumi-chat-launch{visibility:hidden}

#chat-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#chat-actions .secondary{margin:0;padding:11px 13px;text-align:left;line-height:1.5}#chat-action-status{grid-column:1/-1}.chat-drawer #chat-form .primary{max-width:115px;white-space:normal}

/* Quiet choices balance the sphere on desktop and follow it on mobile. */
.moment-with-lumi{position:absolute;right:6%;top:43%;transform:translateY(-50%);width:clamp(210px,19vw,285px);z-index:4}.moment-with-lumi .eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:17px}.moment-with-lumi h2{font-size:clamp(27px,2.5vw,39px);line-height:1.16;margin:0 0 24px;color:var(--ink)}.moment-options{display:grid;gap:10px}.moment-options button{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #5f927830;background:#fffdf855;color:var(--ink);border-radius:28px;padding:14px 18px;font-size:12px;text-align:left;transition:background .2s,border-color .2s}.moment-options button:hover{background:var(--mist);border-color:var(--sage)}.moment-options button>span:last-child{color:var(--sage)}.moment-options .moment-mobile{display:none}
@media(max-width:1050px){.moment-with-lumi{right:4%;width:205px}.moment-with-lumi h2{font-size:28px}.moment-options button{font-size:11px;padding:13px 16px}}
@media(max-width:800px){.hero{height:auto;min-height:960px;max-height:none;padding-top:1px}.hero .pearl{top:270px;width:min(320px,76vw)}.hero .pearl-shadow,.hero .pearl-ripple{top:430px}.hero-content{position:relative;left:auto;bottom:auto;width:auto;max-width:360px;margin:480px 8% 0;padding:0}.moment-with-lumi{position:relative;right:auto;top:auto;transform:none;width:auto;max-width:450px;margin:32px 8% 110px}.moment-with-lumi h2{font-size:25px;margin-bottom:18px}.moment-with-lumi h2 br{display:none}.moment-with-lumi .eyebrow{font-size:8px;margin-bottom:10px}.moment-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.moment-options button{justify-content:center;min-height:46px;padding:12px 10px;font-size:12px}.moment-options .moment-desktop,.moment-options button>span:last-child{display:none}.moment-options .moment-mobile{display:inline}.hero .scene-caption{display:none}main>header{top:80px;justify-content:center}.inner-page main>header{top:87px;justify-content:flex-start}}
@media(max-width:360px){.moment-options{grid-template-columns:1fr;gap:7px}.moment-options button{justify-content:flex-start;padding:12px 18px}.moment-with-lumi{margin-bottom:100px}}
@media(prefers-reduced-motion:reduce){.moment-options button{transition:none}}

.chat-consent{display:flex;gap:8px;align-items:flex-start;font-size:10px;line-height:1.6;color:var(--muted);margin:8px 0}.chat-consent input{flex-shrink:0;margin-top:4px}#chat-clear{font-size:10px;text-align:left;margin-bottom:5px}#device-dialog{max-width:480px;width:calc(100% - 32px);padding:48px 28px 30px;border:0;border-radius:22px;background:var(--paper);color:var(--ink)}#device-dialog::backdrop{background:#17352b55;backdrop-filter:blur(5px)}#device-dialog h2{font-size:34px}#device-dialog h3{font-size:25px;margin:22px 0 12px}#device-dialog p{line-height:1.7;font-size:13px}#device-dialog hr{border:0;border-top:1px solid var(--line);margin:24px 0}#reminder-time{display:block;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);margin-top:8px}#disable-reminder{display:block;margin-top:16px;font-size:12px}

/* A quiet conversation space, with its own rhythm. */
.chat-drawer{inset:var(--chat-top,16px) 16px auto auto;width:min(680px,60vw);min-width:min(520px,100%);height:var(--chat-height,calc(100dvh - 32px));padding:0;border:1px solid #dce5dc;border-radius:28px;box-shadow:-15px 10px 70px #17352b20;background:var(--paper);isolation:isolate}
#chat-backdrop{background:#17352b25;backdrop-filter:blur(3px)}
.chat-drawer>.lumi-chat-header{position:relative;inset:auto;width:100%;height:auto;min-height:100px;padding:25px 30px;display:flex;justify-content:space-between;gap:15px;flex-shrink:0;border-bottom:1px solid #17352b10;background:#fffdf866;margin:0;z-index:2}
.chat-heading{gap:13px}.chat-heading>div>p{font-size:11px;margin:5px 0 0;color:var(--muted);letter-spacing:.3px}
.chat-drawer #chat-title{font-size:30px;font-weight:400;letter-spacing:-.8px;line-height:1;margin:0}.chat-drawer #chat-title span{font-size:14px;vertical-align:middle;margin-left:3px}
.chat-orb{width:45px;height:45px;background:none}.chat-orb img,.chat-welcome-orb img{width:100%;height:100%;object-fit:contain;animation:lumi-chat-breathe 8s ease-in-out infinite}
.chat-header-actions{display:flex;align-items:center;gap:7px;align-self:center}#chat-close,#chat-settings summary{width:38px;height:38px;border:1px solid #17352b12;border-radius:50%;background:transparent;color:var(--green);display:grid;place-items:center;cursor:pointer;font-size:24px;line-height:1;padding:0}#chat-settings summary{list-style:none;font-size:13px;letter-spacing:1px}#chat-settings summary::-webkit-details-marker{display:none}
.chat-settings-content{position:absolute;top:82px;right:26px;width:min(310px,calc(100vw - 60px));padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--white);box-shadow:0 14px 40px #17352b18;z-index:5}.chat-settings-content .chat-mode{font-size:12px;line-height:1.8;margin:12px 0 16px;padding:0;border:0}.chat-settings-content>p:last-child{font-size:11px;line-height:1.7;margin:15px 0 0}.chat-settings-content #chat-clear{font-size:12px;color:var(--green)}
.chat-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:28px 32px 20px;scrollbar-width:thin;scrollbar-color:#b7cbbd transparent}
.chat-welcome{max-width:390px;margin:8px auto 32px;text-align:center}.chat-welcome-orb{width:94px;height:94px;margin:0 auto 24px;filter:drop-shadow(0 14px 15px #17352b20)}.chat-welcome .eyebrow{font-size:9px;letter-spacing:2px;margin:0 0 15px}.chat-welcome h2{font:400 42px/1.1 Georgia,serif;letter-spacing:-1.3px;margin:0 0 18px;color:var(--green)}.chat-welcome>p:last-child{font-size:13px;line-height:1.8;color:var(--muted);max-width:285px;margin:auto}
.chat-messages{overflow:visible;min-height:0;padding:0;flex:none}.chat-bubble{width:fit-content;max-width:90%;padding:17px 21px;border-radius:20px 20px 20px 5px;background:var(--white);border:1px solid #17352b09;margin:0 0 22px}.chat-bubble.user{border:0;background:#e4ede4;border-radius:20px 20px 5px 20px;margin-left:auto}.chat-author{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sage)}.chat-bubble p{font-size:14px;line-height:1.9;margin:8px 0 0}.chat-typing{font-size:11px;color:var(--muted);margin:0 0 24px;padding-left:8px}.chat-typing>span{font-size:8px;letter-spacing:3px;color:var(--sage);margin-right:7px}
.chat-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-width:490px;margin:0 auto 8px}.chat-options button{padding:17px 8px 14px;border-radius:17px;background:transparent;border:1px solid #17352b1c;font-size:11px;line-height:1.5;transition:background .2s,border-color .2s}.chat-options button span{display:block;font:22px Georgia,serif;margin-bottom:7px;color:var(--sage)}.chat-options button:hover{background:var(--mist);border-color:var(--sage)}
.chat-compose-area{flex-shrink:0;padding:16px 28px 18px;border-top:1px solid #17352b0c;background:var(--paper)}.chat-compose-area #chat-form{margin:0;padding:8px 8px 8px 17px;background:var(--white);border:1px solid #17352b22;border-radius:22px;gap:8px;box-shadow:0 4px 18px #17352b04}.chat-compose-area #chat-form:focus-within{border-color:var(--sage);box-shadow:0 0 0 3px #5f927812}.chat-compose-area #chat-input{border:0;background:transparent;font-size:16px;line-height:1.6;padding:8px 0;min-height:58px;max-height:140px;resize:none;box-shadow:none;outline:none}.chat-compose-area #chat-form .primary{flex:0 0 44px;max-width:44px;width:44px;height:44px;min-height:44px;padding:0;margin:0 0 3px;display:grid;place-items:center;font-size:24px;border-radius:50%;line-height:1}.chat-footer{text-align:center;font-size:10px;letter-spacing:.3px;margin:12px 0 0;color:var(--muted)}.chat-compose-area .chat-consent{margin:0 0 12px;font-size:10px;line-height:1.6;text-align:left}.chat-compose-area .chat-consent input{width:15px;height:15px;margin-right:2px;accent-color:var(--green)}
@keyframes lumi-chat-breathe{0%,100%{transform:scale(.97)}50%{transform:scale(1.04)}}
@media(max-width:760px){.chat-drawer{inset:var(--chat-top,0px) 0 auto;width:100%;min-width:0;height:var(--chat-height,100dvh);border:0;border-radius:0}.chat-drawer>.lumi-chat-header{padding:calc(18px + env(safe-area-inset-top)) 20px 18px;min-height:88px}.chat-drawer #chat-title{font-size:28px}.chat-scroll{padding:26px 20px 18px}.chat-welcome{margin:10px auto 28px}.chat-welcome h2{font-size:38px}.chat-welcome-orb{width:88px;height:88px;margin-bottom:22px}.chat-bubble{max-width:94%;padding:16px 18px}.chat-bubble p{font-size:14px}.chat-compose-area{padding:12px 16px max(14px,env(safe-area-inset-bottom))}.chat-options{gap:8px}.chat-options button{font-size:11px;padding:15px 5px 12px}.chat-settings-content{top:80px;right:18px}.chat-heading>div>p{font-size:10px}#chat-actions{grid-template-columns:1fr}}
@media(max-height:650px){.chat-welcome-orb{width:64px;height:64px;margin-bottom:16px}.chat-welcome h2{font-size:32px}.chat-welcome{margin:0 auto 22px}}
@media(prefers-reduced-motion:reduce){.chat-orb img,.chat-welcome-orb img{animation:none}.chat-options button{transition:none}}
.chat-compose-area #chat-form .primary{justify-content:center;align-content:center;text-align:center}
.chat-compose-area .chat-consent{align-items:center;justify-content:space-between;gap:10px}.chat-consent label{display:flex;align-items:center;gap:8px;margin:0;font-size:11px;line-height:1.5;font-weight:400}.chat-consent #chat-privacy{padding:4px 0;flex-shrink:0;font-size:11px;text-decoration:underline;margin:0}.chat-compose-area .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(min-width:761px) and (max-height:800px){.chat-welcome{margin:0 auto 24px}.chat-welcome-orb{width:72px;height:72px;margin-bottom:20px}.chat-welcome h2{font-size:36px;margin-bottom:16px}.chat-welcome>p:last-child{font-size:12px;line-height:1.7}.chat-options button{padding:12px 8px}.chat-options button span{margin-bottom:4px}}
