.garden-cat-travel{transform:translate(103px,249px) scale(.8);animation:garden-cat-stroll 20s linear infinite;pointer-events:none}.cat-bob{animation:garden-cat-bob .5s ease-in-out infinite;transform-origin:0 0}.cat-paw{transform-box:fill-box;transform-origin:center top;animation:garden-cat-step .5s ease-in-out infinite alternate}.cat-paw-back{animation-delay:-.25s}.cat-tail{transform-origin:-15px 0;animation:garden-cat-tail 1.5s ease-in-out infinite alternate}@keyframes garden-cat-stroll{0%,4%{transform:translate(103px,249px) scale(.8)}44%,49%{transform:translate(307px,249px) scale(.8)}50%,54%{transform:translate(307px,249px) scale(-.8,.8)}94%,99%{transform:translate(103px,249px) scale(-.8,.8)}to{transform:translate(103px,249px) scale(.8)}}@keyframes garden-cat-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@keyframes garden-cat-step{0%{transform:rotate(-22deg)}to{transform:rotate(22deg)}}@keyframes garden-cat-tail{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}html[data-motion=off] .garden-cat-travel,html[data-motion=off] .garden-cat-travel *{animation:none!important}@media(prefers-reduced-motion:reduce){.garden-cat-travel,.garden-cat-travel *{animation:none!important}}.cat-companion{--cat-duration: 36s;--cat-delay: 0s;position:fixed;left:0;top:0;z-index:45;width:86px;height:64px;pointer-events:none;animation:companion-lap var(--cat-duration) linear var(--cat-delay) infinite;transform:translate(calc(100vw - 110px),calc(100dvh - 160px));opacity:.94}.cat-route-1{--cat-delay: -12s}.cat-route-2{--cat-delay: -24s}.garden-cat-pet{transform:translate(0)}.cat-walking{animation:cat-walk-state var(--cat-duration) steps(1,end) var(--cat-delay) infinite}.cat-curled{opacity:0;animation:cat-curl-state var(--cat-duration) steps(1,end) var(--cat-delay) infinite}.cat-breathing{transform-origin:0 8px;animation:cat-breathe 3s ease-in-out infinite}@keyframes companion-lap{0%,5%{transform:translate(calc(100vw - 110px),calc(100dvh - 160px)) scaleX(-1)}30%,68%{transform:translate(35vw,calc(100dvh - 160px)) scaleX(-1)}69%{transform:translate(35vw,calc(100dvh - 160px)) scaleX(1)}88%{transform:translate(calc(100vw - 110px),130px) scaleX(1)}to{transform:translate(calc(100vw - 110px),calc(100dvh - 160px)) scaleX(1)}}@keyframes cat-walk-state{0%{opacity:1}32%{opacity:0}68%,to{opacity:1}}@keyframes cat-curl-state{0%{opacity:0}32%{opacity:1}68%,to{opacity:0}}@keyframes cat-breathe{0%,to{scale:1}50%{scale:1.015 1.035}}html[data-motion=off] .cat-companion,html[data-motion=off] .cat-companion *{animation:none!important}.ground-plant{transform-box:fill-box;transform-origin:center bottom}.plant-watered .ground-plant{animation:plant-watered .9s ease-out}@keyframes plant-watered{0%,to{scale:1}45%{scale:1.045}}@media(prefers-reduced-motion:reduce){.cat-companion,.cat-companion *,.ground-plant{animation:none!important}}.plant-body{transform-origin:55px 108px;transition:transform .6s,filter .6s}.plant-health-wilting .plant-body{transform:rotate(-10deg);filter:saturate(.45)}.plant-health-dry .plant-body{transform:rotate(-18deg);filter:grayscale(.75) sepia(.4);opacity:.7}html[data-motion=off] .cat-walking{opacity:0}html[data-motion=off] .cat-curled{opacity:1}@media(prefers-reduced-motion:reduce){.cat-walking{opacity:0}.cat-curled{opacity:1}}.pwa-install{font-family:DM Sans,sans-serif;margin-top:22px}.pwa-install-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #bccbb0;border-radius:8px;min-height:44px;padding:11px 17px;background:#f7faf2;color:#426345;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.pwa-install-button:hover{background:#eaf1e1}.pwa-install-button:disabled{opacity:.6;cursor:wait}.pwa-install-description{color:#66725e;font-size:11px;line-height:1.7;margin:10px 0 0;max-width:340px}.pwa-installed{display:flex;align-items:center;gap:7px;color:#5d7750;font-size:12px}.pwa-install-app{padding:19px 0 22px;border-bottom:1px solid var(--line, #e5e7dc);margin:0 0 22px}.pwa-install-app .pwa-install-description{color:var(--muted, #66725e)}.pwa-dialog{font-family:DM Sans,sans-serif;color:#364332;background:#fffdf8;border:1px solid #dce5d1;border-radius:18px;width:min(490px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:30px;box-shadow:0 15px 80px #25321c30;overflow:auto}.pwa-dialog::backdrop{background:#20301d66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pwa-dialog h2{font-size:24px;letter-spacing:-.6px;font-weight:550;margin:18px 25px 20px 0}.pwa-dialog ol{padding-left:22px;font-size:13px;line-height:1.8}.pwa-dialog li{padding-left:5px;margin-bottom:13px}.pwa-dialog p{font-size:11px;line-height:1.8;color:#68745e;margin:17px 0}.pwa-dialog .pwa-private{padding:13px;background:#f0f4e9;border-radius:8px}.pwa-dialog-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;color:#74965e;background:#edf3e3}.pwa-close{position:absolute;top:15px;right:15px;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:8px;color:#758269;background:none;cursor:pointer}.pwa-confirm{font:inherit;font-size:12px;min-height:44px;width:100%;padding:11px 15px;background:#426b48;color:#fff;border:0;border-radius:8px;cursor:pointer;margin-top:7px}.pwa-update{font-family:DM Sans,sans-serif;position:fixed;bottom:88px;left:50%;transform:translate(-50%);z-index:85;display:flex;align-items:center;gap:13px;width:min(640px,calc(100vw - 28px));padding:17px 20px;border:1px solid #c8d5bd;border-radius:12px;background:#f5f8ef;color:#3d5836;box-shadow:0 8px 35px #283d1d20}.pwa-update strong{font-size:12px;font-weight:600}.pwa-update p{font-size:10px;margin:5px 0 0;line-height:1.6;color:#65765b}.pwa-update>button{flex-shrink:0;min-height:44px;padding:10px 13px;border:0;background:#426b48;color:#fff;border-radius:7px;font:inherit;font-size:11px;cursor:pointer}.pwa-install button:focus-visible,.pwa-update button:focus-visible{outline:2px solid #426b48;outline-offset:4px}html[data-theme=dark] .pwa-install-button{background:#354230;color:#c5d8b5;border-color:#687a58}html[data-theme=dark] .pwa-installed{color:#bdd4a8}@media(max-width:650px){.pwa-install-website{margin-top:22px}.pwa-install-button{font-size:11px;padding:10px 14px}.pwa-install-description{font-size:10px;max-width:300px}.pwa-dialog{padding:26px 22px}.pwa-dialog h2{font-size:22px}.pwa-update{flex-wrap:wrap;gap:9px;padding:15px}.pwa-update>div{flex:1}.pwa-update>button{width:100%}.pwa-update>svg{width:17px}}.release-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;color:var(--muted, #56664d);font-size:12px;line-height:1.7}.release-meta a{display:inline-flex;align-items:center;gap:4px;min-height:44px;min-width:44px;text-decoration:underline;text-underline-offset:4px}.release-meta a:focus-visible{outline:3px solid var(--green, #416547);outline-offset:3px}.page-footer,.website .footer-bottom{flex-wrap:wrap;gap:12px}.page-footer>.release-meta,.website .footer-bottom>.release-meta{flex:0 0 100%;border-top:1px solid var(--line, #dde3d5);padding-top:8px}.sidebar .release-meta{padding:0 4px 8px}.legal-links{display:flex;flex-wrap:wrap;gap:0 16px;flex-basis:100%;align-items:center}.legal-links a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;overflow-wrap:anywhere;font-size:.875rem}.legal-links a:focus-visible{outline:3px solid var(--green, #416547);outline-offset:3px}.sidebar .legal-links{display:grid;gap:0}.habit-schedule-fields{border:1px solid var(--control-border);border-radius:10px;padding:16px;margin:24px 0;min-width:0}.habit-schedule-fields legend{padding-inline:8px;font-weight:600}.habit-plan{display:flex;gap:4px 14px;flex-wrap:wrap}.habit-plan span{overflow-wrap:anywhere}:root{font-size:100%}body,:root .app-shell,:root .website{font-size:1.125rem;line-height:1.65}.heading-line{display:block}:root .app-shell h1{font-size:clamp(2rem,3vw,2.5rem)}:root .app-shell h2{font-size:1.5rem}:root .app-shell h3,:root .app-shell .habit-info h3,:root .app-shell .managed-habit h3,:root .app-shell .plant-card h3,:root .app-shell .setting-row strong{font-size:1.125rem;line-height:1.55}:root .app-shell p,:root .app-shell label,:root .app-shell .button,:root .app-shell .text-button,:root .app-shell input,:root .app-shell textarea,:root .app-shell select,:root .app-shell .muted,:root .app-shell .small-note,:root .app-shell .info-box,:root .app-shell .habit-info p,:root .app-shell .managed-habit p,:root .app-shell .managed-habit small,:root .app-shell .setting-row p,:root .app-shell .settings-card p,:root .app-shell .local-save-status p,:root .app-shell .local-save-status time,:root .app-shell .rest-actions .button,:root .app-shell .tabs button,:root .app-shell .tabs.small button,:root .app-shell .weekly-link strong,:root .app-shell .account-identity span{font-size:1rem;line-height:1.65}:root .app-shell .nav-item{font-size:1.0625rem}:root .app-shell .eyebrow,:root .app-shell .sidebar-label,:root .app-shell .offline-status,:root .app-shell .local-note,:root .app-shell .page-footer,:root .app-shell .profile small,:root .app-shell .count-badge,:root .app-shell .habit-toolbar>span,:root .app-shell .quote-bottom,:root .app-shell .level-hint,:root .app-shell .level-row>div>span,:root .app-shell .garden-stats small,:root .app-shell .xp-text small,:root .app-shell .garden-view-label,:root .app-shell .garden-card>p,:root .app-shell .day-progress p,:root .app-shell .joy-foot,:root .app-shell .joy-heading p,:root .app-shell .plant-card small,:root .app-shell .plant-card>span,:root .app-shell .milestone p,:root .app-shell .milestone small,:root .app-shell .week-navigation,:root .app-shell .week-nav>span,:root .app-shell .heatmap-day-label,:root .app-shell .heat-legend,:root .app-shell .settings-footer small,:root .app-shell .breadcrumb,:root .app-shell .habit-period-progress>span,:root .app-shell .review-stat small,:root .app-shell .review-stat>span:not(.stat-icon),:root .app-shell .weekly-link small,:root .app-shell .mood-picker button span,:root .app-shell .joy-chip,:root .app-shell .summary-joys>span,:root .app-shell .recent-joys button{font-size:.875rem;line-height:1.65}:root .app-shell .profile strong{font-size:1rem}:root .app-shell .quote-card blockquote{font-size:1.125rem;line-height:1.8}:root .app-shell .week-day{font-size:.875rem}:root .app-shell .week-day strong{font-size:1.125rem}:root .app-shell .habit-streak{display:inline-flex;width:auto;min-width:0;white-space:normal;font-size:.875rem;line-height:1.5;gap:5px;color:var(--muted)}:root .app-shell .habit-toolbar,:root .app-shell .rest-actions{flex-wrap:wrap}:root .app-shell .habit-info{min-width:0}:root .app-shell .toast{font-size:1rem}:root .app-shell .first-step{margin-block:16px;padding:20px}.first-step p{margin-block:8px 12px;color:var(--muted)}.backup-prompt{display:flex;align-items:flex-start;gap:12px;padding:20px;margin-block:16px;border:1px solid var(--control-border);border-radius:12px;background:var(--soft)}.backup-prompt>div{flex:1;min-width:0}.backup-prompt p{margin-block:6px 12px}.backup-prompt>svg{flex-shrink:0;margin-top:4px}.weekly-care{margin-block:24px;padding:20px;border:1px solid var(--line);border-radius:12px}.weekly-care-title{font-size:1rem}.weekly-care-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:16px}.weekly-care-bars>div{text-align:center;font-size:.875rem}.weekly-care-bars>div>div{display:flex;align-items:flex-end;height:80px;margin-block:8px;background:var(--bg);border-radius:5px;overflow:hidden}.weekly-care-bars i{display:block;width:100%;background:var(--green);border-radius:5px}:root .website p,:root .website .hero-description,:root .website .section-heading>p,:root .website .feature-card p,:root .website .demo-copy>p,:root .website .center-heading p,:root .website .step-card p,:root .website .privacy-strip p,:root .website .faq-section>div:first-child>p,:root .website .faq-list details>p,:root .website .final-cta p{font-size:1.0625rem;line-height:1.8}:root .website .site-button,:root .website .site-link,:root .website .site-nav,:root .website .footer-main nav,:root .website .faq-list summary,:root .website .demo-copy li,:root .website .philosophy p{font-size:1rem;line-height:1.65}:root .website .site-eyebrow,:root .website .hero-trust,:root .website .feature-foot,:root .website .demo-copy>small,:root .website .demo-caption,:root .website .demo-heading>span,:root .website .demo-heading p,:root .website .demo-habit small,:root .website .demo-window-top small,:root .website .garden-baseline,:root .website .floating-habit small,:root .website .floating-label,:root .website .footer-main>p,:root .website .footer-bottom,:root .website .final-cta>div,:root .website .demo-tabs button{font-size:.875rem;line-height:1.6}:root .website .demo-habit>span:nth-child(2){font-size:1rem}:root .website .demo-habit small{display:block}:root .website .demo-heading h3,:root .website .floating-habit strong{font-size:1.0625rem}:root .website .feature-card h3,:root .website .step-card h3{font-size:1.25rem}:root .website .demo-habit{min-height:72px}:root .website .demo-tabs{flex-wrap:wrap}:root .website .demo-content{min-height:0}.pwa-install .pwa-install-button,.pwa-confirm,.pwa-update>button{font-size:1rem}.pwa-install .pwa-install-description,.pwa-dialog p,.pwa-update p,.pwa-installed{font-size:.875rem}.pwa-dialog ol,.pwa-details summary,.pwa-update strong{font-size:1rem}.pwa-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline}.pwa-details summary:focus-visible{outline:3px solid #426b48;outline-offset:3px}.pwa-external{margin-block:16px}.pwa-external a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px;border-radius:8px;background:#426b48;color:#fff;font-size:1rem;text-decoration:none}:root .app-shell .drive-card .small-note,:root .app-shell .drive-card time,:root .app-shell .local-save-status .small-note{font-size:.875rem}@media(max-width:840px){:root .app-shell .bottom-nav button,:root .app-shell .bottom-nav button>span{font-size:.8125rem}}@media(max-width:650px){:root .app-shell .page-heading h1{font-size:2rem}:root .app-shell .page-heading p{font-size:1rem}:root .app-shell .habit-streak{display:inline-flex}:root .website .floating-habit{max-width:calc(100% - 20px)}:root .website .demo-habit{flex-wrap:wrap}:root .website .demo-habit>span:nth-child(2){flex:1;min-width:0}:root .website .step-card{grid-template-columns:70px minmax(0,1fr);padding-inline:0;column-gap:18px}:root .website .step-card h3,:root .website .step-card p{grid-column:2;min-width:0;max-width:none}:root .website .step-plant{width:70px;grid-column:1;grid-row:1 / span 2}:root .website .step-plant svg{max-width:100%}:root .website .site-nav{font-size:1rem}.weekly-care{padding:14px}.weekly-care-bars{gap:6px}}
