.hero-card{background:#f7f5ee}
.hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.mobile-bottom-nav{display:none}
@media(max-width:760px){
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
  body{min-height:100dvh;padding-top:env(safe-area-inset-top);background:#f7f8f4}
  .main-area{padding:0 18px calc(104px + env(safe-area-inset-bottom))}
  .topbar{position:sticky;top:env(safe-area-inset-top);z-index:8;height:58px;margin:0 -18px;padding:0 18px;background:rgba(247,248,244,.94);backdrop-filter:blur(16px);border-bottom-color:rgba(226,232,225,.8)}
  .mobile-brand{font-size:16px;gap:8px}.brand-mark.small{width:32px;height:32px;border-radius:11px}.brand-mark.small svg{width:21px}
  .top-actions{gap:8px}.icon-button{width:40px;height:40px;border-radius:13px;font-size:18px}.top-add{min-height:40px}
  .welcome-row,.page-title-row{margin:22px 0 17px;align-items:center;gap:12px}.welcome-row h1,.page-title-row h1{font-size:24px;line-height:1.25}.eyebrow,.panel-kicker{font-size:10px;letter-spacing:1.5px}.subheading{font-size:13px;line-height:1.6;margin-top:7px}
  .welcome-row>.button{font-size:11px;padding:11px 12px;white-space:nowrap;min-height:42px}.page-title-row .button{font-size:12px;padding:11px 12px;white-space:nowrap;min-height:44px}
  .hero-card{height:228px;padding:19px 18px;border-radius:22px;margin-bottom:25px;box-shadow:0 12px 30px rgba(57,91,66,.08)}.hero-content{max-width:69%;align-self:center}.hero-pill{font-size:10px;line-height:1.4;padding:7px 10px}.hero-card h2{font-size:20px;line-height:1.4;margin:13px 0 7px;max-width:240px}.hero-card p{font-size:11px;line-height:1.75;max-width:250px;margin-bottom:12px}.hero-card .button{min-height:42px;font-size:12px;padding:10px 14px}.hero-art{width:49%;opacity:1}.hero-art:after{content:"";position:absolute;inset:0 auto 0 0;width:22%;background:linear-gradient(90deg,#f7f5ee,transparent)}.hero-art img{object-position:100% center}
  .section-heading{margin:27px 1px 14px;align-items:center}.section-heading h2{font-size:17px}.section-heading p{font-size:11px;margin-top:5px}.text-button,.more-button{font-size:11px;min-height:40px}
  .stats-grid{gap:10px}.stat-card{min-height:116px;padding:14px;border-radius:17px}.stat-icon{width:34px;height:34px;top:12px;right:12px}.stat-name{font-size:12px}.stat-card strong{font-size:13px;margin-top:11px}.stat-card small{font-size:10px;line-height:1.5;margin-top:4px}
  .dashboard-grid,.bottom-grid,.growth-lower-grid,.health-grid{gap:12px}.panel{padding:17px;border-radius:18px}.panel-heading h2{font-size:15px}.panel-description{font-size:11px;line-height:1.6}.panel-kicker{font-size:9px}.timeline,.record-list{font-size:12px}.empty-inline{font-size:11px}.upcoming-empty strong{font-size:13px}.upcoming-empty p{font-size:11px;line-height:1.65}.calendar-art{font-size:24px}
  .quick-action-grid{gap:10px}.quick-tile{min-height:116px;padding:15px;border-radius:18px}.quick-tile>span{width:35px;height:35px;font-size:18px;margin-bottom:10px}.quick-tile strong{font-size:13px}.quick-tile small{font-size:10px;margin-top:5px}
  .page-title-row h1{font-size:24px}.growth-summary-strip{padding:14px 5px;border-radius:17px}.growth-summary-strip>div{padding:0 9px;gap:8px}.summary-icon{width:32px;height:32px}.growth-summary-strip small{font-size:9px}.growth-summary-strip strong{font-size:13px}
  .large-chart-panel{padding:17px}.panel-heading h2{font-size:15px}.panel-description{max-width:250px}.segmented button{min-height:34px;padding:7px 9px;font-size:10px}.large-chart{height:205px}.legend-row{font-size:10px;gap:10px}.source-hint{max-width:57%;font-size:9px}
  .memory-grid{gap:10px}.memory-image,.memory-image-placeholder{height:150px}.memory-card-copy{padding:11px}.memory-card-copy strong{font-size:12px}.memory-card-copy p{font-size:10px}.memory-card-copy small{font-size:9px}.filter-chip{min-height:36px;padding:7px 10px;font-size:10px}.memory-toolbar{gap:8px}.memory-quote p{font-size:13px}
  .mobile-bottom-nav{position:fixed;z-index:12;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 8px calc(7px + env(safe-area-inset-bottom));min-height:calc(66px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid #e9eee7;backdrop-filter:blur(20px);box-shadow:0 -8px 28px rgba(37,58,43,.07)}
  .mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:48px;padding:3px;border:0;background:transparent;color:#8d998f;border-radius:14px;-webkit-tap-highlight-color:transparent}.mobile-nav-item span{font-size:21px;line-height:1.1}.mobile-nav-item small{font-size:10px;font-weight:500}.mobile-nav-item.active{color:#477d61}.mobile-nav-item.active span{transform:translateY(-1px)}.mobile-nav-item.active small{font-weight:700}
  .floating-ai{right:15px;bottom:calc(81px + env(safe-area-inset-bottom));min-height:46px;padding:0 15px;border-radius:24px;box-shadow:0 8px 22px rgba(39,80,57,.24)}.floating-ai small{font-size:11px}.floating-ai span{font-size:17px}
  .ai-panel{left:10px;right:10px;bottom:calc(72px + env(safe-area-inset-bottom));width:auto;height:min(72dvh,620px);border-radius:22px;transform:translateY(12px)}.ai-panel-head{padding:16px}.ai-panel-head strong{font-size:13px}.ai-panel-head small{font-size:10px}.ai-avatar{width:40px;height:40px}.ai-messages{padding:16px}.assistant-message,.user-message{font-size:12px;line-height:1.75;padding:12px 13px}.ai-suggestions{gap:7px;padding:10px 14px}.ai-suggestions button{min-height:36px;padding:7px 10px;font-size:10px}.ai-input-row{padding:10px 13px}.ai-input-row input{min-height:46px;font-size:16px}.ai-input-row button{width:46px;font-size:20px}.ai-disclaimer{font-size:9px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .modal-backdrop{align-items:end;padding:0;background:rgba(26,39,30,.34)}.modal{width:100%;max-height:92dvh;border-radius:24px 24px 0 0;padding:21px 20px calc(20px + env(safe-area-inset-bottom));animation:sheet-in .22s ease}.modal-head h2{font-size:19px}.modal-head p{font-size:11px}.close-button{width:40px;height:40px;font-size:24px}.form-grid{gap:10px}.field{gap:7px;margin-bottom:13px}.field label{font-size:11px}.field input,.field select,.field textarea{min-height:46px;padding:11px 12px;font-size:16px;border-radius:12px}.field textarea{min-height:88px}.file-drop{padding:13px;font-size:11px;border-radius:12px}.file-drop input{font-size:12px}.modal-actions{gap:10px;margin-top:17px}.modal-actions .button{min-height:46px;flex:1;font-size:13px}
  .toast{bottom:calc(81px + env(safe-area-inset-bottom));max-width:calc(100vw - 36px);font-size:12px;padding:12px 16px}.footer-note{font-size:11px;padding:22px 5px}
}
@media(max-width:390px){.main-area{padding-left:14px;padding-right:14px}.topbar{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}.hero-content{max-width:73%}.hero-card{height:220px;padding-left:15px}.hero-card h2{font-size:18px}.hero-card p{font-size:10px}.hero-art{width:47%}.welcome-row h1,.page-title-row h1{font-size:22px}.welcome-row>.button{font-size:10px;padding:9px}.growth-summary-strip>div{padding:0 5px}.summary-icon{width:28px;height:28px}}
@keyframes sheet-in{from{opacity:.5;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
