:root{--blu-deep:#12324f;--blu-blue:#2f8fbf;--blu-sky:#6ec8f0;--blu-glow:#b8e9ff;--blu-foam:#e8f7ff;--blu-sun:#f5c400;--blu-coral:#ff6b5c;--blu-ink:#0b1f33;--ink:var(--blu-foam);--ink-soft:#9fd4ea;--teal:var(--blu-blue);--teal-dark:var(--blu-deep);--mint:color-mix(in srgb, var(--blu-sky) 24%, var(--blu-ink));--pale:var(--blu-deep);--paper:var(--blu-ink);--line:color-mix(in srgb, var(--blu-glow) 42%, transparent);--muted:#9fd4ea;--coral:var(--blu-coral);--shadow:0 18px 48px #12324f14;--shadow-card:0 1px 2px #12324f0a, 0 8px 20px -8px #12324f1a;--focus-ring:0 0 0 3px #2f8fbf47;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:radial-gradient(900px 420px at 50% -8%,#12324f 0%,#0000 60%),#0b1f33;margin:0;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}button,input,select{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blu-deep);outline-offset:3px}.onboarding,.dashboard{background:var(--pale);max-width:440px;min-height:100dvh;margin:0 auto;padding:0 16px 28px;box-shadow:0 0 0 1px #12324f0f}.skip-link{z-index:100;border:1px solid var(--blu-glow);border-radius:var(--radius-md);background:var(--paper);color:var(--blu-glow);box-shadow:var(--shadow-card);padding:12px 16px;font-size:14px;font-weight:700;position:fixed;top:12px;left:12px}.skip-link:not(:focus-visible){clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden}.skip-link:focus-visible{outline:3px solid var(--blu-blue);outline-offset:3px}.dashboard{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;height:auto;min-height:64px;padding:8px 0;display:flex}.brand{min-height:44px;color:var(--ink);letter-spacing:-1.2px;align-items:center;gap:9px;font:750 24px/1 Segoe UI,sans-serif;text-decoration:none;display:inline-flex}.prototype-tag{border:1px solid var(--line);background:var(--paper);color:var(--blu-glow);border-radius:99px;padding:7px 12px;font-size:11px;font-weight:650}.topbar-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.text-button{color:var(--blu-sky);cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:13px;font-weight:700}.text-button:hover{text-decoration:underline}.topbar-right .text-button,.section-heading>.text-button{min-height:44px}.welcome-panel{flex-direction:column;gap:18px;padding:16px 0 28px;display:flex}.welcome-copy{max-width:none}.welcome-copy h1{max-width:none;margin:10px 0;font-size:32px;line-height:1.08}.eyebrow{color:var(--blu-sky);letter-spacing:1.1px;text-transform:uppercase;font-size:11px;font-weight:700}h1,h2,p{margin-top:0}h1,h2{color:var(--blu-glow);letter-spacing:-.4px;font-family:Segoe UI,Arial,sans-serif}.welcome-copy>p{max-width:none;color:var(--ink-soft);font-size:16px;line-height:1.55}.flow-step{color:var(--blu-sky);margin:0 0 8px;font-size:15px;font-weight:700}.lead-help{color:var(--ink-soft);margin:0 0 16px;font-size:17px;line-height:1.5}.help-path{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--blu-foam) 70%, var(--paper));margin:0 0 18px;padding:12px 14px}.help-path summary{cursor:pointer;min-height:44px;color:var(--blu-glow);align-items:center;font-size:16px;font-weight:700;display:flex}.help-path p{color:var(--ink-soft);margin:8px 0 12px;font-size:16px;line-height:1.5}.topics-count{color:var(--blu-glow);margin:0 0 10px;font-size:16px;font-weight:700}.habit-grid--plain{gap:12px}.habit-option--plain{align-items:flex-start;gap:12px;min-height:72px;padding:14px 16px;font-size:18px}.habit-option-copy{gap:4px;min-width:0;display:grid}.habit-option-title{font-size:18px;font-weight:700;line-height:1.25}.habit-option-desc{color:var(--ink-soft);font-size:15px;font-weight:500;line-height:1.4}.habit-option--plain.selected .habit-option-desc{color:color-mix(in srgb, var(--blu-foam) 82%, white)}.selection-count--plain{color:var(--blu-glow);margin:4px 0 18px;font-size:16px;font-weight:700}.consent-plain{border-top:1px solid var(--line);margin:8px 0 14px;padding:12px 0 0}.consent-plain legend{color:var(--blu-glow);padding:0;font-size:16px;font-weight:700}.consent-row--plain{margin:10px 0;font-size:16px;line-height:1.45}.consent-row--plain input{flex:0 0 22px;width:22px;height:22px;margin-top:2px}.consent-optional summary{cursor:pointer;min-height:44px;color:var(--blu-sky);align-items:center;font-size:15px;font-weight:650;display:flex}.help-note{color:var(--ink-soft);text-align:left;margin:12px 0 0;font-size:15px;line-height:1.5}.disclaimer{border-left:2px solid var(--coral);max-width:none;color:var(--ink-soft);gap:13px;margin-top:16px;padding:5px 0 5px 16px;font-size:13px;line-height:1.6;display:flex}.disclaimer span{color:var(--coral);font-size:16px}.disclaimer p{margin:0}.onboarding-card,.chat-card,.review-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-card)}.onboarding-card{padding:29px 30px 24px}.onboarding-card fieldset{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;min-width:0;margin:18px 0;padding:12px 0 2px}.onboarding-card fieldset legend{color:var(--ink-soft);padding:0 6px 0 0;font-size:12px;font-weight:600}.onboarding-card .consent-row{cursor:pointer;align-items:center;min-height:44px;margin:5px 0;font-size:12px}.onboarding-card .consent-row input{flex:0 0 18px;width:18px;height:18px}.onboarding-card a:not(.brand){color:var(--blu-sky);text-underline-offset:3px;font-size:14px;font-weight:700;text-decoration-thickness:1px}.onboarding-card a:not(.brand):hover{color:var(--teal)}.card-heading,.section-heading,.review-top{justify-content:space-between;align-items:center;display:flex}.step-label,.step-count{color:var(--muted);letter-spacing:.7px;font-size:11px;font-weight:700}.step-count{color:var(--ink-soft)}.onboarding-card h2{margin:21px 0 7px;font-size:25px}.muted{color:var(--muted);margin:0;font-size:13px}.habit-grid{grid-template-columns:1fr;gap:9px;margin:22px 0 10px;display:grid}.habit-option{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--blu-ink);min-height:56px;color:var(--blu-foam);cursor:pointer;text-align:left;overflow-wrap:break-word;align-items:center;gap:10px;padding:10px 12px;font-size:16px;font-weight:600;transition:all .15s;display:flex}.habit-option:hover{border-color:var(--blu-sky);background:color-mix(in srgb, var(--blu-sky) 18%, var(--blu-ink))}.habit-option.selected{border-color:var(--blu-sky);background:color-mix(in srgb, var(--blu-sky) 28%, var(--blu-ink));color:var(--blu-foam)}.habit-icon{background:var(--mint);width:27px;height:27px;color:var(--teal);border-radius:8px;flex:0 0 27px;place-items:center;font-size:16px;display:grid}.selection-indicator{color:var(--teal);margin-left:auto;font-size:17px}.selection-count{color:var(--muted);margin:0 0 18px;font-size:11px}.consent-row{color:var(--ink-soft);align-items:flex-start;gap:10px;margin:18px 0;font-size:11px;line-height:1.55;display:flex}.consent-row input{accent-color:var(--teal);margin-top:2px}.button{border-radius:var(--radius-md);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-size:16px;font-weight:700;transition:background-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.46}.button-dark{background:var(--blu-sky);color:var(--blu-ink)}.button-dark:hover:not(:disabled){background:var(--blu-glow);box-shadow:0 4px 12px #6ec8f047}.button-light{border:1px solid var(--blu-glow);color:var(--blu-glow);background:0 0}.button-light:hover:not(:disabled){border-color:var(--blu-blue);background:var(--blu-foam)}.full-width{width:100%}.tiny-note{color:var(--ink-soft);text-align:center;margin:12px 0 0;font-size:12px;line-height:1.5}.inline-notice{color:var(--blu-sky);margin:10px 0 0;font-size:14px}.cancel-edit{margin:8px auto 0;display:block}.page-footer,.dashboard-footer{border-top:1px solid var(--line);color:var(--ink-soft);flex-direction:column;align-items:stretch;gap:12px;padding:18px 0;font-size:14px;display:flex}.app-header{z-index:20;border-bottom:1px solid var(--line);background:#12324f;position:sticky;top:0}.dashboard>.app-header .topbar{border-bottom:0;height:auto;min-height:66px}.dashboard-nav{z-index:30;width:min(440px,100%);padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#0b1f33;justify-content:space-between;align-items:stretch;gap:2px;margin:0;display:flex;position:fixed;bottom:0;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 -8px 24px #00000047}.dashboard-nav::-webkit-scrollbar{display:none}.dashboard-nav a{min-height:48px;color:var(--blu-foam);text-align:center;border:1px solid #0000;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;padding:4px 2px;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.dashboard-nav a:hover{border-color:var(--line);background:var(--blu-deep);color:var(--blu-glow)}#habits-heading,#week-plan,#review-heading,#chat-heading,#privacy-controls{scroll-margin-top:132px}.dashboard-hero{border:1px solid var(--blu-glow);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--blu-deep) 0%, var(--blu-ink) 100%);box-shadow:var(--shadow-card);color:var(--blu-foam);flex-direction:column;align-items:stretch;gap:12px;margin:16px 0 18px;padding:18px 16px 16px;display:flex}.hero-copy{max-width:610px}.hero-kicker{color:var(--blu-sky);letter-spacing:1.2px;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:800;display:inline-flex}.hero-kicker-dot{background:var(--blu-blue);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #2f8fbf24}.hero-date{color:var(--blu-sky);letter-spacing:.2px;margin:12px 0 6px;font-size:15px;font-weight:600}.hero-copy h1{max-width:none;color:var(--blu-glow);letter-spacing:-.4px;margin:0;font-size:30px;line-height:1.08}.hero-copy h1 span{color:var(--blu-sky)}.hero-description{max-width:430px;color:var(--ink-soft);margin:10px 0 14px;font-size:14px;line-height:1.55}.hero-link{border:1px solid var(--blu-blue);background:var(--blu-blue);color:#fff;border-radius:999px;align-items:center;gap:10px;min-height:44px;padding:0 16px;font-size:12px;font-weight:700;text-decoration:none;transition:background .18s,border-color .18s;display:inline-flex}.hero-link:hover{border-color:var(--blu-glow);background:var(--blu-glow);color:var(--blu-ink)}.hero-link span{color:var(--blu-sun);font-size:16px}.hero-blu{flex-direction:column;order:-1;align-items:center;gap:8px;display:flex}.hero-blu .blu-presence{width:148px;height:168px}.hero-blu-line{display:none}.dashboard-hero .reminder-box .text-button{border:1px solid var(--blu-glow);background:var(--blu-ink);min-height:44px;color:var(--blu-glow);border-radius:999px;padding:0 14px}.dashboard-hero .reminder-box .text-button:hover:not(:disabled){border-color:var(--blu-sky);background:color-mix(in srgb, var(--blu-sky) 22%, var(--blu-ink));color:var(--blu-foam);text-decoration:none}.dashboard-hero .reminder-box .text-button:disabled{color:var(--muted);cursor:not-allowed}.dashboard-hero .reminder-box .tiny-note{max-width:310px;color:var(--ink-soft);text-align:left}.dashboard-hero .reminder-box .inline-notice{color:var(--blu-sky)}.hero-progress{color:var(--blu-foam);padding:8px 0 2px}.progress-caption{color:var(--blu-sky);letter-spacing:.8px;font-size:11px;font-weight:800}.progress-count{align-items:baseline;gap:5px;margin:8px 0;display:flex}.progress-count strong{color:var(--blu-glow);letter-spacing:-1.5px;font-size:34px;font-weight:700;line-height:1}.progress-count span{color:var(--ink-soft);font-size:12px}.progress-track{background:var(--blu-glow);border-radius:99px;height:8px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--blu-blue), var(--blu-sky));height:100%;transition:width .3s;display:block}.progress-message{min-height:22px;color:var(--ink-soft);margin:7px 0 0;font-size:12px;line-height:1.5}.content-grid{grid-template-columns:1fr;align-items:start;gap:22px;padding-bottom:28px;display:grid}.main-column,.side-column{min-width:0}.section-heading{margin:0 0 14px}.section-heading h2,.review-top h2{margin:5px 0 0;font-size:21px}.daily-list{gap:0;display:grid}.daily-card{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;align-items:center;gap:15px;min-height:91px;padding:15px 6px;transition:background-color .18s;display:flex}.daily-card:first-child{border-top:1px solid var(--line)}.daily-card.completed{background:color-mix(in srgb, var(--blu-sky) 18%, var(--blu-ink))}.daily-icon{background:var(--mint);width:42px;height:42px;color:var(--teal);border-radius:12px;flex:0 0 42px;place-items:center;font-size:20px;display:grid}.daily-copy{flex:1}.category-label{color:var(--blu-sky);letter-spacing:.35px;font-size:11px;font-weight:700}.daily-copy p{color:var(--ink);margin:5px 0 0;font-size:13px;line-height:1.45}.check-button{border:1px solid var(--blu-glow);background:var(--blu-ink);min-width:88px;min-height:44px;color:var(--blu-foam);cursor:pointer;border-radius:999px;padding:0 14px;font-size:14px;font-weight:700;transition:background-color .16s,color .16s,border-color .16s}.completed .check-button{border-color:var(--teal);background:var(--teal);color:#fff}.review-card{box-shadow:none;margin-top:22px;padding:23px}.review-stats{flex-wrap:wrap;gap:22px 40px;margin:18px 0;display:flex}.review-stats div{gap:4px;display:grid}.review-stats strong{color:var(--blu-glow);font:700 28px/1 Segoe UI,sans-serif}.review-stats strong small{color:var(--ink-soft);font-size:14px}.review-stats span{color:var(--ink-soft);font-size:12px}.review-note{color:var(--ink-soft);margin:0 0 15px;font-size:13px;line-height:1.6}.period-picker{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px 14px;margin:16px 0 10px;padding:8px 0;display:flex}.period-picker legend{color:var(--ink-soft);padding:0 8px 0 0;font-size:12px;font-weight:650}.period-picker .consent-row{align-items:center;width:auto;min-height:36px;margin:0;font-size:12px}.period-picker input{accent-color:var(--blu-blue)}.review-empty-state{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:10px 0;padding:15px 0}.review-empty-state p{color:var(--ink);margin:0 0 5px;font-size:14px;font-weight:650}.review-empty-state a{color:var(--blu-sky);text-underline-offset:3px;font-size:13px;font-weight:650}.review-history{margin:8px 0 14px}.history-days{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:0 16px;margin:10px 0 0;padding:0;list-style:none;display:grid}.history-day{border-bottom:1px solid var(--line);min-height:36px;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.history-day time{color:var(--ink-soft);font-variant-numeric:tabular-nums}.history-day.has-activity span{color:var(--blu-glow);font-weight:700}.adaptation-record{color:var(--blu-sky);margin:12px 0 0;font-size:14px;line-height:1.6}.adapt-row{flex-wrap:wrap;gap:8px;display:flex}.adapt-row select{border:1px solid var(--line);background:var(--blu-ink);min-width:130px;min-height:44px;color:var(--blu-foam);border-radius:8px;flex:125px;padding:0 10px;font-size:14px}.adapt-row .button{flex:150px}.evidence-note{color:var(--ink-soft);gap:8px;margin:14px 0;font-size:12px;line-height:1.5;display:flex}.evidence-note span{color:var(--teal)}.chat-card{padding:22px}.chat-heading{align-items:center;gap:11px;display:flex}.chat-heading h2{letter-spacing:-.3px;margin:4px 0 0;font-size:16px}.chat-disclosure{border-left:2px solid var(--blu-sky);color:var(--ink-soft);margin:16px 0 14px;padding:3px 0 3px 12px;font-size:12px;line-height:1.55}.chat-voice-control{min-height:44px;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:12px;margin:0;font-size:12px;font-weight:700;display:flex}.chat-voice-control select{border:1px solid var(--line);background:var(--paper);min-width:132px;min-height:40px;color:var(--ink);border-radius:999px;padding:0 30px 0 11px;font-size:12px}.chat-voice-hint{color:var(--muted);margin:0 0 10px;font-size:12px;line-height:1.5}.chat-voice-cloud-note{color:var(--ink-soft);margin:0 0 8px;font-size:12px;line-height:1.5}.chat-voice-toggle{min-height:40px}.chat-voice-toggle:disabled{opacity:.6;cursor:wait}.chat-voice-status,.speak-error{color:var(--blu-glow);margin:6px 0 0;font-size:14px;line-height:1.5}.speak-control{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.speak-control .text-button{border:1px solid var(--blu-sky);min-height:44px;color:var(--blu-glow);border-radius:999px;padding:0 16px;font-size:16px}.speak-control .text-button:disabled{opacity:1;cursor:default;text-decoration:none}.speak-status,.speak-error{color:var(--blu-glow);margin:6px 0 0;font-size:15px;line-height:1.45}.chat-messages{flex-direction:column;gap:9px;min-height:150px;max-height:270px;padding:3px 1px 10px;display:flex;overflow-y:auto}.chat-bubble{border-radius:var(--radius-md);background:var(--blu-ink);max-width:91%;color:var(--blu-foam);overflow-wrap:break-word;margin:0;padding:11px 13px;font-size:15px;line-height:1.55}.chat-bubble.you{background:color-mix(in srgb, var(--blu-sky) 22%, var(--blu-ink));color:var(--blu-foam);border-bottom-right-radius:3px;align-self:flex-end}.chat-bubble.blu{border-bottom-left-radius:3px;align-self:flex-start}.chat-form{border-top:1px solid var(--line);gap:7px;padding-top:11px;display:flex}.chat-form input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;font-size:16px}.chat-form button{background:var(--blu-sky);min-width:44px;height:44px;min-height:44px;color:var(--blu-ink);cursor:pointer;border:0;border-radius:999px;flex:none;padding:0 16px;font-size:16px;font-weight:700}.chat-form button:disabled{opacity:.45;cursor:not-allowed}.chat-privacy{color:var(--ink-soft);margin:8px 0 0;font-size:11px}.principle-card{border-top:1px solid var(--line);margin-top:18px;padding:16px 0 0}.principle-card p{max-width:42ch;color:var(--ink);margin:8px 0;font:600 14px/1.55 Segoe UI,sans-serif}.principle-caption{color:var(--ink-soft);font-size:14px}.dashboard-footer{align-items:stretch;width:100%}.toast{color:var(--blu-sky);margin:-17px 0 20px;font-size:14px}.loading-screen,.error-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.loading-screen{color:var(--muted);align-content:center;gap:15px;font-size:13px}.loading-screen .brand-mark{width:46px;height:46px}.error-card{border:1px solid var(--blu-coral);background:var(--blu-deep);max-width:480px;color:var(--blu-foam);border-radius:16px;padding:30px}.error-card h1{margin:12px 0;font-size:29px}.error-card p{color:var(--ink-soft);font-size:13px;line-height:1.6}.error-card .button{margin-top:6px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:800px){.onboarding,.dashboard{padding-left:16px;padding-right:16px}.welcome-panel{gap:18px;padding-top:12px}.welcome-copy h1{font-size:32px}}@media (max-width:540px){.onboarding,.dashboard{padding-left:16px;padding-right:16px}.hero-copy h1{font-size:28px}.progress-caption{grid-column:1/-1}.progress-count{grid-area:2/1/span 2;margin:6px 0 0}.progress-count strong{font-size:32px}.progress-track{grid-area:2/2;align-self:end;width:100%}.progress-message{grid-area:3/2;min-height:0;margin:5px 0 0;font-size:11px}.dashboard-hero .reminder-box .tiny-note{margin-top:5px}.section-heading h2,.review-top h2{font-size:18px}.daily-card{gap:10px;padding:14px 4px}.daily-copy p{font-size:13px}.check-button{min-width:88px;min-height:44px;padding:0 14px}.review-card{padding:18px}.review-stats{gap:20px}.period-picker{gap:2px 10px}.history-days{grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:0 10px}.side-column{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.week-bars{align-items:flex-end;gap:.5rem;min-height:4.5rem;margin:0;padding:.5rem 0 0;list-style:none;display:flex}.week-bar-item{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.week-bar{background:var(--blu-sky);border-radius:.35rem .35rem 0 0;width:100%;max-width:2rem;min-height:.35rem}.week-bar-item:hover .week-bar{background:var(--blu-blue)}details.review-card summary{cursor:pointer;padding-right:42px;list-style:none;position:relative}details.review-card summary::-webkit-details-marker{display:none}details.review-card summary:before{content:none}details.review-card summary:after{border:1px solid var(--line);background:var(--paper);width:32px;height:32px;color:var(--blu-glow);content:"+";border-radius:50%;place-items:center;font-size:18px;font-weight:400;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%)}details[open].review-card summary:after{content:"−"}.review-details>summary{cursor:pointer;min-height:44px;padding:8px 34px 8px 0;list-style:none;position:relative}.review-details>summary::-webkit-details-marker{display:none}.review-details>summary:after{color:var(--blu-blue);content:"+";font-size:18px;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.review-details[open]>summary:after{content:"−"}.review-details fieldset{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);flex-wrap:wrap;align-items:center;gap:4px 14px;margin:16px 0;padding:10px 12px;display:flex}.review-details fieldset legend{color:var(--ink-soft);padding:0 6px;font-size:12px;font-weight:600}.review-details .consent-row{align-items:center;width:auto;min-height:36px;margin:0;font-size:12px}.review-details input{accent-color:var(--blu-blue)}.space-details{margin:22px 0 12px}.space-details>summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;min-height:48px;padding:10px 0;list-style:none;display:flex}.space-details>summary::-webkit-details-marker{display:none}.daily-copy details>summary::-webkit-details-marker{display:none}.space-details>summary:after{color:var(--blu-glow);content:"+";font-size:20px}.space-details[open]>summary:after{content:"−"}.space-details>summary h2{color:var(--ink-soft);text-align:left;margin:0;font-size:13px;font-weight:650}.optional-label{color:var(--ink-soft);margin-left:auto;padding-right:12px;font-size:11px}.daily-copy details>summary{align-items:center;gap:6px;min-height:32px;text-decoration:none;list-style:none;display:inline-flex}.daily-copy details>summary:after{color:var(--teal);content:"+";font-size:14px}.daily-copy details[open]>summary:after{content:"−"}.chat-bubble p{margin:0 0 .25rem}.habit-grid.compact{grid-template-columns:1fr;gap:10px}.habit-grid.compact .habit-option{overflow-wrap:break-word;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px}:focus-visible{outline:3px solid var(--teal);outline-offset:3px;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.button:active:not(:disabled){transform:translateY(1px)}.text-button{border-radius:var(--radius-sm);min-height:44px}.text-button:hover{color:var(--blu-glow)}.check-button:focus-visible,.habit-option:focus-visible{outline-offset:1px}.chat-bubble.blu>p{margin-top:0}.tiny-note{color:var(--ink-soft)}.onboarding-card,.error-card,.review-card,.chat-card{box-sizing:border-box;overflow-wrap:break-word;max-width:100%}.blu-intro{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:1.25rem;display:flex}.blu-intro-line{color:var(--blu-foam);max-width:100%;margin:0;font-size:18px;line-height:1.4}.language-select select{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--blu-glow);border-radius:999px;font-size:16px;font-weight:700}.companion-line{max-width:100%;color:var(--blu-glow);text-align:center;margin:0;font-size:16px;font-weight:700;line-height:1.4}.portrait-card{border:1px solid var(--blu-glow);border-radius:var(--radius-lg);background:var(--blu-ink);margin:0 0 18px;padding:16px}.portrait-card h2{margin:0 0 8px;font-size:20px}.portrait-habit{border:0;margin:12px 0;padding:0}.portrait-habit legend{margin-bottom:8px;font-size:13px;font-weight:700}.portrait-choices{gap:8px;display:grid}.portrait-list{margin:8px 0 0;padding:0;list-style:none}.portrait-list li{border-top:1px solid var(--line);padding:10px 0}.portrait-list p{color:var(--ink-soft);margin:4px 0 0;font-size:13px;line-height:1.45}.blu-mood--waiting{animation:2.8s ease-in-out infinite blu-float}.blu-mood--encouraging{animation:1.1s ease-in-out infinite blu-hop}.blu-mood--celebrate{animation:.85s ease-in-out infinite blu-cheer}.blu-mood--thriving{filter:drop-shadow(0 10px 16px #2f8fbf66);animation:2.2s ease-in-out infinite blu-float}.blu-mood--resting{animation:3.6s ease-in-out infinite blu-rest}@keyframes blu-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes blu-hop{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-10px)scale(1.04)}}@keyframes blu-cheer{0%,to{transform:rotate(0)translateY(0)}30%{transform:rotate(-6deg)translateY(-8px)}60%{transform:rotate(6deg)translateY(-4px)}}@keyframes blu-rest{0%,to{transform:translateY(0)scale(.98)}50%{transform:translateY(3px)scale(.96)}}.chat-bubble.blu{align-items:flex-start;gap:.5rem;display:flex}.chat-bubble-body p{margin:0 0 .25rem}html,body{overflow-x:clip}.onboarding-card,.error-card{width:100%}.blu-intro p,.consent-row span,.chat-bubble-body{min-width:0}.baseline-value{margin:.35rem 0;font-size:15px}.baseline-value strong{letter-spacing:-1px;color:var(--ink);font-size:34px}.blu-presence{filter:drop-shadow(0 3px 4px #12324f24);flex:none;display:inline-flex}.blu-presence--sm{width:38px;height:38px}.blu-presence--md{width:56px;height:56px}.blu-presence--lg{width:96px;height:96px}.blu-live-svg{width:100%;height:100%;display:block;overflow:visible}.blu-live-body{transform-origin:50% 82%;transform-box:fill-box}.blu-live-eye,.blu-live-mouth{transform-box:fill-box;transform-origin:50%;transition:transform .28s}.blu-live-arm-wave{transform-origin:70px 110px;transform-box:fill-box}.blu-live-heart{transform-origin:50%;transform-box:fill-box}.blu-live-dots circle{fill:#60b8f8}.blu-state--welcome .blu-live-body,.blu-state--acknowledge .blu-live-body,.blu-state--welcome .blu-face-img,.blu-state--acknowledge .blu-face-img{animation:.7s blu-companion-bob}.blu-state--welcome .blu-live-arm-wave,.blu-state--acknowledge .blu-live-arm-wave{animation:.7s blu-wave-arm}.blu-state--responding .blu-live-body,.blu-state--responding .blu-face-img{animation:1.2s ease-in-out infinite blu-companion-pulse}.blu-state--responding .blu-live-dots{opacity:1}.blu-state--responding .blu-live-dots circle{animation:1.1s ease-in-out infinite blu-dot}.blu-state--responding .blu-live-dots circle:nth-child(2){animation-delay:.18s}.blu-state--responding .blu-live-dots circle:nth-child(3){animation-delay:.36s}.blu-state--acknowledge .blu-live-eye{transform:scaleY(.18)}.blu-state--pause .blu-live-body,.blu-state--unavailable .blu-live-body{transform:scale(.97)}.blu-state--unavailable .blu-live-body{transform:rotate(3deg)scale(.97)}.blu-state--pause .blu-live-heart,.blu-state--unavailable .blu-live-heart{animation:.9s blu-heart-pop}@keyframes blu-companion-bob{0%{transform:translateY(0)rotate(0)}40%{transform:translateY(-4%)rotate(-4deg)}to{transform:translateY(0)rotate(0)}}@keyframes blu-companion-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes blu-wave-arm{0%{transform:rotate(0)}35%{transform:rotate(-18deg)}to{transform:rotate(0)}}@keyframes blu-heart-pop{0%{opacity:.4;transform:scale(.6)}45%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.blu-face-svg{display:block}.blu-backdrop{fill:#e6f4ee;stroke:#fffefa;stroke-width:3px}.blu-body{fill:#167c74;transform-origin:50% 84%;transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.blu-highlight{fill:none;stroke:#fff;stroke-linecap:round;stroke-opacity:.24;stroke-width:3px}.blu-eye{fill:#fffefa;transform-box:fill-box;transform-origin:50%;transition:transform .4s}.blu-pupil{fill:#143b39}.blu-eye-glint{fill:#fff}.blu-mouth{fill:none;stroke:#fffefa;stroke-width:3.5px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;transition:transform .4s}.blu-brows path{fill:none;stroke:#d7eee4;stroke-width:2.6px;stroke-linecap:round;opacity:0;transition:opacity .3s}.blu-dots circle{fill:#fffefa;opacity:0}.blu-state--welcome .blu-body{animation:.6s blu-wave}@keyframes blu-wave{0%{transform:rotate(0)}35%{transform:rotate(-7deg)translateY(-1.5%)}to{transform:rotate(0)}}.blu-state--responding .blu-dots circle{animation:1.1s ease-in-out infinite blu-dot}.blu-state--responding .blu-dots circle:nth-child(2){animation-delay:.18s}.blu-state--responding .blu-dots circle:nth-child(3){animation-delay:.36s}@keyframes blu-dot{0%,to{opacity:.25}50%{opacity:1}}.blu-state--responding .blu-mouth{opacity:0;transition:opacity .15s}.blu-state--acknowledge .blu-eye{transform:scaleY(.15)}.blu-state--acknowledge .blu-mouth{transform:scaleX(1.18)translateY(1px)}.blu-state--pause .blu-eye{transform:scaleY(.55)}.blu-state--pause .blu-body{transform:scale(.97)}.blu-state--unavailable .blu-brows path{opacity:1}.blu-state--unavailable .blu-body{transform:rotate(3deg)}.blu-state--unavailable .blu-mouth{transform:scaleX(.8)}@media (prefers-reduced-motion:reduce){.blu-presence,.blu-presence *{transition:none!important;animation:none!important}.blu-state--responding .blu-dots circle{opacity:.85}.blu-state--responding .blu-mouth{opacity:0}.blu-state--responding .blu-live-dots{opacity:1}.blu-state--responding .blu-live-dots circle{opacity:.85}}.blu-presence.blu-reduced,.blu-presence.blu-reduced *{transition:none!important;animation:none!important}.blu-presence.blu-reduced{filter:drop-shadow(0 3px 4px #12324f24);transform:none!important}.blu-presence.blu-reduced.blu-state--responding .blu-dots circle{opacity:.85}.chat-thinking{min-height:1.2em;color:var(--ink-soft);margin:4px 0 8px}.privacy-panel{border:1px solid var(--blu-glow);border-radius:var(--radius-xl);background:var(--blu-ink);min-width:0;box-shadow:var(--shadow-card);flex-direction:column;gap:16px;padding:22px;display:flex}.privacy-panel-copy,.privacy-title,.privacy-lead,.privacy-legal{overflow-wrap:break-word;min-width:0;max-width:100%}.privacy-title{letter-spacing:0;color:var(--blu-glow);margin:0;font-size:22px;line-height:1.25}.privacy-lead{max-width:none;color:var(--blu-foam);margin:8px 0 0;font-size:16px;line-height:1.5}.privacy-actions{gap:10px;margin:0;padding:0;list-style:none;display:grid}.privacy-action{border:1px solid var(--line);background:var(--blu-deep);text-align:left;cursor:pointer;border-radius:12px;gap:4px;width:100%;min-height:44px;padding:12px 16px;display:grid}.privacy-action:hover{border-color:var(--blu-sky)}.privacy-action-name{color:var(--blu-glow);font-size:16px;font-weight:700}.privacy-action-desc{color:var(--ink-soft);font-size:14px;line-height:1.4}.privacy-action--danger .privacy-action-name{color:var(--coral)}.privacy-legal{color:var(--blu-foam);margin:0;font-size:14px;line-height:1.5}
