@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap";:root{--surface: #f7f9ff;--surface-container-low: #f1f4fa;--surface-container: #ebeef4;--surface-container-high: #e5e8ee;--surface-container-highest: #dfe3e8;--surface-container-lowest: #ffffff;--surface-dim: #d7dae0;--primary: #005bbf;--primary-container: #1a73e8;--primary-fixed: #d8e2ff;--primary-fixed-dim: #adc7ff;--on-primary: #ffffff;--on-primary-fixed-variant: #004493;--secondary: #475e8c;--secondary-container: #b2c9fe;--secondary-fixed: #d8e2ff;--on-secondary: #ffffff;--on-secondary-container: #3d5481;--tertiary: #9e4300;--tertiary-fixed: #ffdbcb;--tertiary-fixed-dim: #ffb691;--on-tertiary: #ffffff;--error: #ba1a1a;--error-container: #ffdad6;--on-error: #ffffff;--on-error-container: #93000a;--on-surface: #181c20;--on-surface-variant: #414754;--outline: #727785;--outline-variant: #c1c6d6;--inverse-surface: #2d3135;--inverse-on-surface: #eef1f7;--gradient-primary: linear-gradient(135deg, #005bbf 0%, #1a73e8 100%);--gradient-warm: linear-gradient(135deg, #9e4300 0%, #c55500 100%);--shadow-sm: 0 2px 8px rgba(24,28,32,.04);--shadow-md: 0 4px 20px rgba(24,28,32,.06);--shadow-lg: 0 10px 40px rgba(24,28,32,.08);--shadow-xl: 0 20px 60px rgba(24,28,32,.1);--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--font-headline: "Manrope", sans-serif;--font-body: "DM Sans", sans-serif;--nav-height-mobile: 80px;--sidebar-width: 256px;--topbar-height: 64px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--surface);color:var(--on-surface);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-headline)}*{scrollbar-width:thin;scrollbar-color:var(--outline) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--outline);border:2px solid transparent;background-clip:padding-box;border-radius:99px}::-webkit-scrollbar-thumb:hover{background-color:var(--on-surface-variant)}[role=dialog]{max-height:calc(100dvh - 2rem);min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;display:inline-flex;align-items:center;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}html:not([data-material-symbols=ready]) .material-symbols-outlined{font-size:0!important}.icon-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.icon-sm{font-size:18px}.icon-lg{font-size:28px}.icon-xl{font-size:36px}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes bounceSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-fade-up{animation:fadeUp .4s ease both}.animate-fade-in{animation:fadeIn .3s ease both}.animate-scale-in{animation:scaleIn .25s ease both}.animate-slide-right{animation:slideInRight .3s ease both}.animate-pulse{animation:pulse 2s ease infinite}.animate-spin{animation:spin .8s linear infinite}.animate-bounce-subtle{animation:bounceSubtle 2s ease infinite}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.loading-spinner{animation-duration:.9s!important;animation-iteration-count:infinite!important}}.skeleton{background:linear-gradient(90deg,var(--surface-container) 25%,var(--surface-container-high) 50%,var(--surface-container) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.card{background:var(--surface-container-lowest);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.btn-primary{background:var(--gradient-primary);color:var(--on-primary);border:none;border-radius:var(--radius-full);font-family:var(--font-headline);font-weight:600;cursor:pointer;transition:opacity .2s,transform .15s}.btn-primary:hover{opacity:.92}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.input-base{width:100%;background:var(--surface-container-low);border:1.5px solid var(--outline-variant);border-radius:var(--radius-lg);padding:.75rem 1rem;font-family:var(--font-body);font-size:.9375rem;color:var(--on-surface);transition:border-color .2s,box-shadow .2s;outline:none}.input-base:focus{border-color:var(--primary);box-shadow:0 0 0 3px #005bbf1f}.input-base::placeholder{color:var(--outline)}.context-photo{display:block;max-width:100%;object-fit:cover;object-position:center;animation:context-photo-reveal .28s ease-out both;transition:transform .24s ease,opacity .28s ease}@media (hover: hover) and (pointer: fine){.context-photo:hover{transform:translateY(-2px)}}.auth-hero__photos,.auth-hero__photo-wash{position:absolute;top:0;right:0;bottom:0;left:0}.auth-hero__photos{z-index:0;overflow:hidden}.auth-hero__photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 2.2s ease-in-out}.auth-hero__photo.is-active{opacity:1}.auth-hero__photo-wash{z-index:0;background:linear-gradient(180deg,#092a5d47,#0626589e);pointer-events:none}.auth-hero__copy{margin-right:.5rem;padding:clamp(1rem,2.2vw,1.5rem);border:1px solid rgba(255,255,255,.26);border-radius:var(--radius-2xl);background:#082857d1;box-shadow:0 18px 44px #06183538,inset 0 1px #ffffff26}@supports (backdrop-filter: blur(1px)){.auth-hero__copy{background:#08285757;-webkit-backdrop-filter:blur(15px) saturate(125%);backdrop-filter:blur(15px) saturate(125%)}}.auth-hero__features>div{border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 22px #06183529}.auth-hero__logo>div{box-shadow:0 8px 24px #06183533}.auth-form-panel{min-width:0}.family-back-link{color:var(--primary);font-size:.875rem;font-weight:700;text-decoration:none;padding:.625rem 0}.family-back-link:hover{text-decoration:underline}.family-page{max-width:850px;margin:auto;padding:clamp(1rem,4vw,2rem)}.family-page-heading{margin:1rem 0 1.5rem}.family-page-heading h1{font-size:clamp(1.5rem,4vw,2rem);font-weight:800}.family-page-heading p{color:var(--on-surface-variant);line-height:1.6;max-width:38rem;margin-top:.5rem}.integration-note{padding:.875rem 1rem;margin-bottom:1rem;border-left:3px solid var(--primary);background:var(--surface-container-low);border-radius:var(--radius-md);font-size:.8125rem;line-height:1.65;color:var(--on-surface-variant)}.dashboard-welcome{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,30%);align-items:center;gap:1.5rem}.dashboard-welcome__copy{min-width:0}.dashboard-welcome__photo{width:100%;height:auto;aspect-ratio:1.65;object-position:center 44%;border-radius:var(--radius-xl)}.medications-page-header{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;align-items:center;gap:1rem;margin-bottom:1.5rem}.medications-header-photo{width:100%;height:auto;aspect-ratio:1.8;border-radius:var(--radius-xl);object-position:center 73%}.medications-embedded-header{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);align-items:center;gap:1rem;margin-bottom:1.25rem}.medications-embedded-header>:last-child{justify-self:end}.drug-scan-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,30%);align-items:center;gap:1.25rem}.drug-scan-intro__photo{width:100%;height:auto;aspect-ratio:1.55;border-radius:var(--radius-xl);object-position:center 20%}.symptom-context-photo{width:100%;height:clamp(120px,20vw,170px);margin-bottom:1rem;border-radius:var(--radius-xl);object-position:center 54%}.pregnancy-stage-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:1.5rem;border-radius:var(--radius-2xl);padding:1.5rem;background:linear-gradient(135deg,#d8e4ff,#edf4ff);overflow:hidden}.pregnancy-stage-hero__media{position:relative;min-width:0;width:100%;aspect-ratio:.72}.pregnancy-stage-hero__photo{width:100%;height:100%;border-radius:var(--radius-xl);object-position:center 42%}.pregnancy-stage-hero__art{position:absolute;left:-1rem;bottom:-.5rem;display:grid;justify-items:center;width:90px;padding:.35rem;border:1px solid white;border-radius:var(--radius-xl);background:#ffffffeb;box-shadow:var(--shadow-sm)}.pregnancy-stage-hero__image{display:block;width:100%;height:auto;aspect-ratio:776 / 1179;object-fit:contain}.pregnancy-stage-hero__month{padding:.2rem;color:var(--primary);font-size:.6875rem;font-weight:700;line-height:1.3;text-align:center}.pregnancy-stage-hero__title{font-size:clamp(1.8rem,6vw,2.5rem)}.pregnancy-guidance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}.pregnancy-journey{list-style:none;margin:1rem 0 0;padding:0}.pregnancy-journey li{position:relative;padding:0 0 1.25rem 1.5rem;border-left:2px solid var(--outline-variant);margin-left:.4rem}.pregnancy-journey li:last-child{border-color:transparent;padding-bottom:0}.pregnancy-journey li:before{content:"";position:absolute;left:-6px;top:.35rem;width:10px;height:10px;border:2px solid var(--outline);background:var(--surface-container-lowest);border-radius:50%}.pregnancy-journey li[data-current=true]:before{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-fixed)}.pregnancy-journey__content{padding:.875rem 1rem;border-radius:var(--radius-lg);background:var(--surface-container-low)}.pregnancy-journey li[data-current=true] .pregnancy-journey__content{background:var(--primary-fixed)}.pregnancy-journey__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.75rem;color:var(--primary);font-weight:700;margin-bottom:.5rem}.pregnancy-journey h3{font-size:.9375rem;font-weight:700}.pregnancy-journey p{font-size:.875rem;color:var(--on-surface-variant);line-height:1.6;margin-top:.375rem}.appointments-empty-photo{width:100%;height:auto;aspect-ratio:2 / 1;max-height:16rem;border-radius:var(--radius-xl);margin-bottom:1.25rem;object-position:center 43%}.baby-profile-card__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,38%);align-items:center;gap:1.25rem}.baby-profile-card__image{width:100%;height:auto;aspect-ratio:1.5;border-radius:var(--radius-xl);object-position:center 42%}.family-context-panel{display:grid;grid-template-columns:minmax(0,1fr) 45%;align-items:center;gap:1.5rem;padding:1.25rem;border:1px solid var(--outline-variant);border-radius:var(--radius-2xl);background:var(--surface-container-low)}.family-context-panel__photos{position:relative;padding:0 2.5rem 1.25rem 0}.family-context-panel__main{width:100%;height:auto;aspect-ratio:1.4;border-radius:var(--radius-xl)}.family-context-panel__inset{position:absolute;right:0;bottom:0;width:38%;height:auto;aspect-ratio:.78;object-position:center 70%;border:3px solid var(--surface-container-low);border-radius:var(--radius-lg)}.mood-context-panel{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:1rem;align-items:center;padding:1rem 1.25rem;border-radius:var(--radius-xl);background:var(--surface-container-low)}.mood-context-panel h2{font-size:1.25rem;font-weight:700;margin:.25rem 0}.mood-context-panel p{font-size:.875rem;line-height:1.6;color:var(--on-surface-variant)}.mood-context-panel .feature-eyebrow{font-size:.6875rem;font-weight:700;letter-spacing:.08em;color:var(--primary)}.mood-context-panel__photo{width:100%;height:auto;aspect-ratio:1;border-radius:var(--radius-xl);object-position:center 45%}@keyframes context-photo-reveal{0%{opacity:.65}to{opacity:1}}@media (max-width: 640px){.dashboard-welcome{grid-template-columns:minmax(0,1fr);gap:1rem}.dashboard-welcome__photo{aspect-ratio:2.5;max-height:150px;object-position:center 36%}.medications-page-header{grid-template-columns:minmax(0,1fr) auto}.medications-page-header .medications-header-photo{grid-column:1 / -1;grid-row:2;max-height:130px}.medications-embedded-header{grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.medications-embedded-header .medications-header-photo{aspect-ratio:1.6}.drug-scan-intro{grid-template-columns:minmax(0,1fr);gap:1rem}.drug-scan-intro__photo{aspect-ratio:2.4;max-height:150px}.pregnancy-stage-hero{grid-template-columns:minmax(0,1fr);padding:1.25rem;gap:1.25rem}.pregnancy-stage-hero__media{width:160px;aspect-ratio:.8;justify-self:center;margin-bottom:.5rem}.pregnancy-stage-hero__art{width:85px;left:auto;right:-3rem}.pregnancy-guidance{grid-template-columns:minmax(0,1fr)}.baby-profile-card__layout{grid-template-columns:minmax(0,1fr);gap:1rem}.baby-profile-card__image{aspect-ratio:1.8;max-height:190px}.family-context-panel{grid-template-columns:minmax(0,1fr);gap:1rem}.family-context-panel__photos{max-width:380px;width:100%;justify-self:center}.family-context-panel__main{aspect-ratio:1.8}.family-context-panel__inset{width:30%}.mood-context-panel{grid-template-columns:minmax(0,1fr) 100px;padding:1rem}}@media (prefers-reduced-motion: reduce){.context-photo{animation:none!important;transition:none!important}.auth-hero__photo,.pregnancy-stage-hero__art{transition:none!important}.context-photo:hover,.pregnancy-stage-hero__art:hover{transform:none!important}}@media (max-width: 800px){.auth-page{flex-direction:column}.auth-form-panel{flex:1;align-items:flex-start!important;padding:1.5rem 1.25rem 2rem!important}.auth-hero__photo{object-position:center 32%!important}}@keyframes voiceWave{0%{transform:scaleY(.45);opacity:.55}to{transform:scaleY(1.15);opacity:1}}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.care-tabs{min-width:0}.care-tabs button{min-width:0;min-height:44px}.tab-label-compact{display:none}@media (max-width: 639px){.care-tabs button{flex-direction:column;gap:.25rem!important}.tab-label-text{display:none}.tab-label-compact{display:block;font-size:.625rem;line-height:1.3;white-space:nowrap}}.dashboard-family-card{display:grid;grid-template-columns:128px minmax(0,1fr) auto;align-items:center;gap:1.25rem;margin-top:1rem;padding:1rem;border:1px solid var(--outline-variant);border-radius:var(--radius-xl);background:var(--surface-container-lowest);box-shadow:var(--shadow-sm);color:var(--on-surface);text-decoration:none;transition:border-color .15s,box-shadow .15s}.dashboard-family-card__photo{width:100%;height:auto;aspect-ratio:1.2;object-position:center 45%;border-radius:var(--radius-lg)}.dashboard-family-card__copy{min-width:0}.dashboard-family-card__heading{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem;margin-bottom:.5rem}.dashboard-family-card h2{font-size:1rem;font-weight:700}.dashboard-family-card p{color:var(--on-surface-variant);font-size:.8125rem;line-height:1.6;max-width:28rem}.dashboard-family-card__action{color:var(--primary);font-size:.8125rem;font-weight:700;white-space:nowrap}.dashboard-family-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.dashboard-family-card:focus-visible{outline:3px solid var(--primary);outline-offset:3px}@media (max-width: 640px){.dashboard-family-card{grid-template-columns:88px minmax(0,1fr);gap:.875rem}.dashboard-family-card__photo{aspect-ratio:.85}.dashboard-family-card__action{grid-column:2}}
