.lp{overflow-x:clip}.lp-wrap{width:min(1160px,100% - 40px);margin:0 auto}.lp-nav{top:var(--space-3);z-index:30;width:min(1160px,100% - 32px);height:64px;margin:var(--space-3) auto 0;position:sticky}.lp-nav:before,.lp-nav:after{content:"";border-radius:var(--nav-radius);pointer-events:none;transition:transform var(--dur) ease-out, opacity var(--dur) ease-out;position:absolute;inset:0}.lp-nav:before{background:var(--surface-raised);border:var(--nav-border);box-shadow:var(--nav-shadow)}.lp-nav:after{box-shadow:var(--nav-shadow);opacity:0}.lp-nav.scrolled:before,.lp-nav.scrolled:after{transform:scaleY(.875)}.lp-nav.scrolled:after{opacity:1}.lp-nav-inner{z-index:1;align-items:center;gap:var(--space-2);height:100%;padding:0 var(--space-3) 0 var(--space-4);display:flex;position:relative}.lp-brand{margin-right:var(--space-4);border-radius:var(--nav-radius-sm);text-decoration:none;display:inline-flex}.lp-links{align-items:center;gap:var(--space-1);display:none}.lp-link{height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-muted);transition:background-color var(--dur-fast) ease-out, color var(--dur-fast) ease-out;align-items:center;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.lp-link:hover,.lp-link.active{background:color-mix(in srgb, var(--pine) 8%, transparent);color:var(--pine)}.lp-link:focus-visible,.lp-login:focus-visible,.lp-brand:focus-visible,.site-founder:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.site-founder{height:28px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--sun-soft);color:var(--sun-ink);white-space:nowrap;justify-self:start;align-items:center;gap:6px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.site-founder-dot{background:var(--sun);border-radius:50%;width:6px;height:6px}.site-founder-bar,.lp-theme-slot,.lp-nav .lp-login{display:none}.lp-login{height:40px;padding:0 var(--space-2);color:var(--ink);border-radius:var(--nav-radius-sm);align-items:center;font-size:15px;font-weight:500;text-decoration:none}.btn-site{justify-content:center;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--pine);color:var(--on-pine);font:600 15px/1 var(--font-sans);white-space:nowrap;box-shadow:inset 0 1px 0 #ffffff2e, var(--nav-shadow-button);transition:transform var(--dur-fast) ease-out, box-shadow var(--dur-fast) ease-out;text-decoration:none;display:inline-flex}.btn-site:hover{transform:translateY(-1px)}.btn-site:active{transform:translateY(1px)}.btn-site:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn-site-lg{height:var(--control-lg);width:100%;font-size:17px}.lp-menu-btn{width:40px;height:40px;color:var(--ink);border-radius:var(--radius-md)}.lp-nav .icon-btn,.lp-drawer .icon-btn{border-radius:var(--nav-radius-sm)}@media (width<=767px){.lp-nav{top:var(--space-2);width:calc(100% - 16px);height:56px;margin-top:var(--space-2)}.lp-nav.scrolled:before,.lp-nav.scrolled:after{transform:none}.lp-nav-inner{padding:0 var(--space-2) 0 var(--space-3)}.lp-brand{margin-right:0}}@media (width<=359px){.lp-nav .lp-brand .wordmark{display:none}}@media (width>=768px){.lp-links{display:flex}.lp-theme-slot{display:contents}.lp-nav .lp-login{display:inline-flex}.lp-nav .lp-menu-btn,.lp-drawer,.lp-drawer-backdrop{display:none}}@media (width>=1100px){.site-founder-bar{margin-right:var(--space-2);display:inline-flex}}.lp-drawer-backdrop{display:none}.lp-drawer{z-index:41;padding:var(--space-2) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--surface-raised);opacity:0;visibility:hidden;transition:opacity var(--dur) ease-out, transform var(--dur) ease-out, visibility 0s linear var(--dur);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto;transform:translateY(8px)}.lp-drawer.open{opacity:1;visibility:visible;transition:opacity var(--dur) ease-out, transform var(--dur) ease-out;transform:none}.lp-drawer-head{height:56px;padding:0 0 0 var(--space-3);justify-content:space-between;align-items:center;display:flex}.lp-drawer-links{padding:var(--space-6) 0;display:grid}.lp-drawer-links a{min-height:64px;padding:0 var(--space-3);border-bottom:var(--nav-border);color:var(--ink);opacity:0;transition:opacity var(--dur) ease-out, transform var(--dur) ease-out;justify-content:space-between;align-items:center;font-size:20px;font-weight:600;text-decoration:none;display:flex;transform:translateY(8px)}.lp-drawer.open .lp-drawer-links a{opacity:1;transform:none}.lp-drawer-links a.active{color:var(--pine)}.lp-drawer-links a>svg{color:var(--ink-muted)}.lp-drawer-foot{gap:var(--space-4);margin-top:auto;display:grid}.lp-drawer-row{justify-content:space-between;align-items:center;display:flex}.lp-drawer-row .lp-login{font-size:17px;display:inline-flex}@media (width<=600px){.lp-hero h1{min-height:3.06em}}.lp-feature{position:relative}.lp-feature-link{color:inherit;text-decoration:none}.lp-feature-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.lp-feature-link:focus-visible{outline:none}.lp-feature:has(.lp-feature-link:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}.lp-more{margin-top:var(--space-6);text-align:center;font-weight:600}.lp-more a{color:var(--pine)}.mk-main{gap:var(--space-8);padding-top:var(--space-6);padding-bottom:var(--space-8);display:grid}.crumbs{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.crumbs a{color:var(--ink-muted);align-items:center;min-height:24px;display:inline-flex}.crumbs a:hover{color:var(--pine)}.mk-head{gap:var(--space-3);max-width:760px;display:grid}.mk-head h1{font-size:var(--text-display);letter-spacing:-.035em;line-height:1.05}.mk-head .lead{font-size:var(--text-lg);color:var(--ink-muted);line-height:1.6}.mk-article{gap:var(--space-8);max-width:760px;display:grid}.mk-section{gap:var(--space-3);max-width:760px;display:grid}.mk-section h2{font-size:var(--text-h2);letter-spacing:-.02em;line-height:1.2}.mk-section p{line-height:1.7}.mk-section ul{gap:var(--space-2);margin:0;padding-left:1.25em;line-height:1.7;display:grid}.mk-list,.mk-steps{gap:var(--space-2);margin:0;padding-left:1.25em;line-height:1.6;display:grid}.mk-note{gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-sunken);max-width:760px;display:grid}.mk-note h2{font-size:var(--text-h3)}.mk-related{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.mk-related a{color:var(--pine);align-items:center;min-height:32px;font-weight:600;display:inline-flex}.mk-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));margin:0;padding:0;list-style:none;display:grid}.mk-card{gap:var(--space-4);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);color:var(--ink);box-sizing:border-box;height:100%;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);grid-template-columns:auto 1fr auto;align-items:center;text-decoration:none;display:grid}.mk-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.mk-card>span:nth-child(2){gap:4px;display:grid}.mk-card .ic{background:var(--pine-soft);width:44px;height:44px;color:var(--pine);border-radius:12px;place-items:center;display:grid}.mk-card>svg{color:var(--ink-muted)}.mk-toc ul{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));margin:0;padding:0;list-style:none;display:grid}.mk-toc a{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--ink);font-weight:600;text-decoration:none;display:block}.mk-toc a:hover{border-color:var(--pine)}.legal-section{scroll-margin-top:88px}.mk-services{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);margin:0;padding:0;list-style:none;display:grid}.mk-services li{gap:2px var(--space-4);padding:var(--space-4) var(--space-6);line-height:1.55;display:grid}.mk-services li+li{border-top:1px solid var(--line)}@media (width>=640px){.mk-services li{grid-template-columns:170px 1fr}.mk-services li>span:last-child{grid-column:2}}.mk-faq{border-bottom:1px solid var(--line)}.mk-faq summary{cursor:pointer;align-items:center;min-height:44px;padding:10px 0;font-weight:600;display:flex}.mk-faq p{color:var(--ink-muted);margin:0 0 12px;line-height:1.65}.mk-new{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;padding:0;list-style:none;display:grid}.mk-new li{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);gap:4px;display:grid}.mk-new a{color:var(--pine);text-underline-offset:2px;font-weight:600;text-decoration:underline}.mk-qa{gap:4px;display:grid}.mk-qa h3{font-family:var(--font-sans);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:700}.mk-qa p{color:var(--ink-muted);line-height:1.65}.mk-pricing{gap:var(--space-8);align-items:start;display:grid}@media (width>=960px){.mk-pricing{gap:var(--space-10);grid-template-columns:minmax(0,440px) minmax(0,1fr)}}.mk .lp-final{padding:var(--space-10) 0 var(--space-4)}.lib-meta{margin-top:var(--space-1)}.lib-section{scroll-margin-top:88px}.lib-section a,.lib-sources a,.mk-qa a{color:var(--pine);text-underline-offset:2px;text-decoration:underline}.lib-toc{gap:var(--space-2);padding:var(--space-4) var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);max-width:760px;display:grid}.lib-toc ol{gap:2px;margin:0;padding-left:1.25em;display:grid}.lib-toc a{color:var(--ink);align-items:center;min-height:32px;display:inline-flex}.lib-toc a:hover{color:var(--pine)}.lib-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);overflow-x:auto}.lib-table{border-collapse:collapse;width:100%;min-width:560px;font-size:15px;line-height:1.5}.lib-table caption{caption-side:top;text-align:left;padding:var(--space-3) var(--space-4) 0;color:var(--ink-muted);font-size:14px}.lib-table th,.lib-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.lib-table tbody tr:last-child>*{border-bottom:0}.lib-table thead th{color:var(--ink);font-weight:700}.lib-table tbody th{color:var(--ink-muted);width:22%;font-weight:600}@media (width<=640px){.lib-table{min-width:0}.lib-table caption{width:auto;padding-bottom:var(--space-2);border-bottom:1px solid var(--line);display:block}.lib-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.lib-table,.lib-table tbody,.lib-table tr,.lib-table th,.lib-table td{display:block}.lib-table tbody tr{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line)}.lib-table tbody tr:last-child{border-bottom:0}.lib-table tbody th,.lib-table td{border:0;width:auto;padding:2px 0}.lib-table tbody th{color:var(--ink);padding-bottom:var(--space-1);font-weight:700}.lib-table td[data-label]:not([data-label=""]):before{content:attr(data-label) ": ";color:var(--ink-muted);font-weight:600}}.lib-template{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-sunken);margin:0;overflow:hidden}.lib-template figcaption{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-bottom:1px solid var(--line);font-size:14px;font-weight:600;display:flex}.lib-template pre{padding:var(--space-4);white-space:pre-wrap;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.6;overflow-x:auto}.lib-tool{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);max-width:960px}.lw-grid,.sv-grid{gap:var(--space-6);display:grid}@media (width>=860px){.lw-grid,.sv-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.lw-sliders{gap:var(--space-3);display:grid}.lw-row{gap:4px var(--space-3);grid-template-columns:minmax(0,1fr) 2.25rem;align-items:center;display:grid}.lw-label{gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;display:flex}.lw-row input[type=range]{width:100%;min-height:44px;accent-color:var(--pine)}.lw-value{font-variant-numeric:tabular-nums;text-align:right;font-weight:700}.lw-result{gap:var(--space-4);justify-items:center;display:grid}.lw-svg{aspect-ratio:1;width:100%;max-width:340px;height:auto}.lw-summary{gap:var(--space-3);justify-items:start;width:100%;display:grid}.sv-form{gap:var(--space-4);display:grid}.sv-field{gap:6px;font-size:15px;font-weight:600;display:grid}.sv-input{align-items:center;gap:var(--space-2);display:flex}.sv-field input,.sv-field select{width:100%;min-height:44px;padding:0 var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:inherit;font-weight:400}.sv-input .small{white-space:nowrap;font-weight:400}.sv-result{gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--pine-soft);justify-items:start;display:grid}.sv-big{gap:2px;display:grid}.sv-big b{font-family:var(--font-display,inherit);color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(2rem,6vw,2.75rem);line-height:1.1}.sv-list{gap:var(--space-2);width:100%;margin:0;display:grid}.sv-list div{justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--line);padding-bottom:var(--space-2);display:flex}.sv-list dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.lp-hero{gap:var(--space-10);padding:var(--space-8) 0 var(--space-10);align-items:center;display:grid}.lp-hero-copy{justify-items:start;display:grid}.lp-pill{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-raised);border:1px solid var(--line);max-width:100%;box-shadow:var(--shadow-1);color:var(--ink-muted);padding:4px 12px 4px 4px;font-size:13px;font-weight:600;display:inline-flex}.lp-pill-tag{background:var(--sun-soft);color:var(--sun-ink);border-radius:var(--radius-pill);white-space:nowrap;padding:2px 10px;font-weight:700}.lp-hero h1{font-size:var(--text-display);letter-spacing:-.035em;margin-top:var(--space-6);line-height:1.02}.lp-hero h1 em{color:var(--pine);font-style:italic;font-weight:500}.lp-hero .lead{color:var(--ink-muted);max-width:540px;margin-top:var(--space-6);font-size:clamp(17px,1rem + .35vw,20px);line-height:1.6}.lp-cta{gap:var(--space-3);width:100%;margin-top:var(--space-8);display:grid}.lp-cta .btn{width:100%}.lp-proof{margin:var(--space-6) 0 0;gap:var(--space-2) var(--space-4);color:var(--ink-muted);flex-wrap:wrap;padding:0;font-size:14px;list-style:none;display:flex}.lp-proof li{align-items:center;gap:6px;display:inline-flex}.lp-proof svg{color:var(--pine)}.lp-visual{gap:var(--space-3);padding:var(--space-6) var(--space-4);border-radius:var(--radius-lg);background:linear-gradient(160deg, var(--pine-soft), color-mix(in srgb, var(--sun-soft) 70%, var(--surface)) 120%);display:grid;position:relative;overflow:hidden}.lp-route{opacity:.5;width:100%;height:100%;position:absolute;inset:0}.lp-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:var(--space-4);position:relative}.lp-card .label{color:var(--ink-muted);letter-spacing:.06em}.lp-card-head{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.lp-card-b,.lp-card-c{display:none}.lp-mini{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:7px 0;font-size:14px;display:flex}.lp-mini:last-child{border-bottom:0}.lp-mini i{border:2px solid var(--line-strong);border-radius:5px;flex:none;width:18px;height:18px}.lp-mini i.on{background:var(--pine);border-color:var(--pine)}.lp-mini s{color:var(--ink-muted);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.lp-mini em{color:var(--ink-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-style:normal;font-weight:600}.lp-dots{gap:5px;margin-top:8px;display:flex}.lp-dots span{background:var(--line);border-radius:6px;width:22px;height:22px}.lp-dots span.on{background:var(--pine)}.lp-dots span.sun{background:var(--sun)}.lp-big{font-family:var(--font-display);letter-spacing:-.02em;font-size:36px;font-weight:600;line-height:1.1}.lp-goal{margin:6px 0 10px;font-weight:600}.lp-section{padding:var(--space-16) 0;scroll-margin-top:72px}@media (width<=480px){.lp-section{padding:var(--space-10) 0}.lp-section.lp-founder{padding:var(--space-6) 0}}.lp-section-alt{background:var(--surface-sunken)}.lp-section-head{gap:var(--space-3);max-width:660px;margin-bottom:var(--space-8);display:grid}.lp-section-head h2,.lp-band h2,.lp-pricing h2,.lp-faq-side h2{letter-spacing:-.03em;font-size:clamp(1.875rem,1.3rem + 2vw,3rem);line-height:1.08}.lp-section-head p{font-size:var(--text-lg);color:var(--ink-muted);line-height:1.6}.lp-features{gap:var(--space-2);display:grid}.lp-feature{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-1);transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);align-items:flex-start;display:flex}.lp-feature .ic{border-radius:var(--radius-md);background:var(--pine-soft);width:40px;height:40px;color:var(--pine);flex:none;place-items:center;display:grid}.lp-feature.sun .ic{background:var(--sun-soft);color:var(--sun-ink)}.lp-feature h3{font-family:var(--font-sans);letter-spacing:-.01em;font-size:16px;font-weight:700;line-height:1.35}.lp-feature p{color:var(--ink-muted);margin-top:2px;font-size:15px;line-height:1.5}.lp-steps{gap:var(--space-4);counter-reset:none;margin:0;padding:0;list-style:none;display:grid}.lp-step{gap:var(--space-3);grid-template-columns:40px minmax(0,1fr);align-items:start;display:grid;position:relative}.lp-step-body{padding:14px var(--space-4) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);gap:6px;display:grid}.lp-step-body h3,.lp-step-body p{margin:0}.lp-step .n{z-index:1;background:var(--pine);width:40px;height:40px;color:var(--on-pine);font-family:var(--font-display);box-shadow:0 0 0 6px var(--surface-sunken);border-radius:50%;place-items:center;font-size:18px;font-weight:600;display:grid;position:relative}.lp-step:last-child .n{background:var(--sun);color:#1c2826}.lp-step p{color:var(--ink-muted)}.lp-band{color:#fff;border-radius:var(--radius-lg);padding:var(--space-10) var(--space-6);gap:var(--space-8);background:#1e5a4c;align-items:center;display:grid;overflow:hidden}.lp-band h2{margin-top:var(--space-3)}.lp-band p{opacity:.85;margin-top:var(--space-4);font-size:17px;line-height:1.6}.lp-notifs{gap:var(--space-3);display:grid}.lp-notif{color:#1c2826;padding:var(--space-3);gap:var(--space-3);background:#fffdf8f7;border-radius:16px;align-items:center;display:flex;box-shadow:0 12px 32px -12px #00000059}.lp-notif>div{flex:1;min-width:0}.lp-notif b{font-size:14px;display:block}.lp-notif span{color:#5a6662;font-size:14px;display:block}.lp-notif em{color:#5a6662;align-self:flex-start;font-size:12px;font-style:normal}.lp-pricing{gap:var(--space-10);align-items:start;display:grid}.lp-pricing-copy{gap:var(--space-3);align-content:start;display:grid}.lp-pricing-lead{font-size:var(--text-lg);color:var(--ink-muted);line-height:1.6}.lp-timeline{margin:var(--space-4) 0 0;gap:0;padding:0;list-style:none;display:grid}.lp-timeline li{padding:0 0 var(--space-6) var(--space-8);gap:2px;display:grid;position:relative}.lp-timeline li:before{content:"";background:var(--surface-raised);border:3px solid var(--pine);border-radius:50%;width:14px;height:14px;position:absolute;top:4px;left:6px}.lp-timeline li:after{content:"";background:var(--line-strong);width:2px;position:absolute;top:22px;bottom:2px;left:12px}.lp-timeline li:last-child{padding-bottom:0}.lp-timeline li:last-child:before{border-color:var(--sun);background:var(--sun)}.lp-timeline li:last-child:after{display:none}.lp-timeline span{color:var(--ink-muted)}.lp-guarantee{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--line);align-items:flex-start;display:flex}.lp-guarantee svg{color:var(--pine);flex:none;margin-top:2px}.lp-guarantee span{color:var(--ink-muted);font-size:15px}.lp-guarantee b{color:var(--ink)}.lp-faq-layout{gap:var(--space-8);display:grid}.lp-faq-side{gap:var(--space-3);align-content:start;display:grid}.lp-faq-side p{font-size:var(--text-lg);color:var(--ink-muted);line-height:1.6}.lp-faq-title{gap:var(--space-3);display:grid}.lp-ask{gap:var(--space-1);margin-top:var(--space-3);padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);background:var(--pine-soft);justify-items:start;display:grid}.lp-ask span{color:var(--ink-muted);margin-bottom:var(--space-2);font-size:15px}.lp-faq{gap:var(--space-8);display:grid}.lp-price-col{gap:var(--space-3);align-content:start;display:grid}.lp-promise-line{justify-content:center;gap:6px var(--space-4);color:var(--ink-muted);flex-wrap:wrap;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.lp-promise-line li{align-items:center;gap:6px;display:inline-flex}.lp-promise-line svg{color:var(--pine);flex:none}.lp-founder{padding-block:var(--space-8)}.founder-note-home{gap:var(--space-4);max-width:720px;padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);align-items:flex-start;margin:0 auto;display:flex}.founder-note-home h2{font-family:var(--font-display);margin:0;font-size:clamp(1.35rem,3.5vw,1.75rem);line-height:1.2}.founder-more{font-weight:600}@media (width<=480px){.founder-note-home{padding:var(--space-4);gap:var(--space-3)}}.lp-new{margin-top:var(--space-6);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised)}.lp-new h3{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--sun-ink);margin-bottom:var(--space-3);font-size:13px;font-weight:700}.lp-new ul{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0;padding:0;list-style:none;display:grid}.lp-new li{color:var(--ink-muted);line-height:1.55}.lp-new li b{color:var(--ink)}.lp-new a{color:var(--pine);text-underline-offset:2px;white-space:nowrap;font-weight:600;text-decoration:underline}.lp-faq-group{display:grid}.lp-faq-group h3{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--sun-ink);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-strong);font-size:13px;font-weight:700}.lp-faq details{border-bottom:1px solid var(--line)}.lp-faq summary{cursor:pointer;gap:var(--space-4);padding:var(--space-4) 0;border-radius:var(--radius-sm);align-items:center;font-size:16px;font-weight:600;line-height:1.4;list-style:none;display:flex}.lp-faq summary::-webkit-details-marker{display:none}.lp-faq summary:hover{color:var(--pine)}.lp-faq summary:after{content:"";background:var(--surface-sunken) center / 12px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 1v10M1 6h10' stroke='%231E5A4C' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");width:28px;height:28px;transition:transform .2s var(--ease);border-radius:50%;flex:none;margin-left:auto}.lp-faq details[open] summary:after{transform:rotate(45deg)}.lp-faq details p{color:var(--ink-muted);padding:0 var(--space-10) var(--space-4) 0;line-height:1.65}.lp-final{text-align:center;gap:var(--space-4);padding:var(--space-16) 0;justify-items:center;display:grid}.lp-final h2{letter-spacing:-.035em;max-width:760px;font-size:clamp(2rem,1.3rem + 3vw,3.5rem);line-height:1.06}.lp-final p{color:var(--ink-muted);font-size:var(--text-lg);margin-bottom:var(--space-2)}.lp-footer{border-top:1px solid var(--line);padding:var(--space-10) 0;gap:var(--space-8) var(--space-6);color:var(--ink-muted);grid-template-columns:1fr 1fr;font-size:15px;display:grid}.lp-footer-brand{gap:var(--space-3);grid-column:1/-1;justify-items:start;display:grid}.lp-footer-brand p{max-width:320px}.lp-footer nav{gap:var(--space-2);align-content:start;display:grid}.lp-footer nav b{color:var(--ink);font-size:14px}.lp-footer a{color:var(--ink-muted);text-decoration:none}.lp-footer a:hover{color:var(--ink)}.lp-follow{align-items:center;gap:var(--space-2);display:flex}.lp-follow ul{gap:2px;margin:0;padding:0;list-style:none;display:flex}.lp-follow a{border-radius:var(--radius-md);width:44px;height:44px;color:var(--ink-muted);place-items:center;display:grid}.lp-follow a:hover{color:var(--ink);background:var(--surface-sunken)}.lp-copy{padding-top:var(--space-6);border-top:1px solid var(--line);grid-column:1/-1;font-size:13px}@media (width>=600px){.lp-cta{flex-wrap:wrap;width:auto;display:flex}.lp-cta .btn{width:auto}.lp-features{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.lp-card-b{display:block}.lp-visual{grid-template-columns:1fr 1fr;align-items:start}.lp-card-a{grid-row:span 2}.lp-card-c{display:block}}@media (width>=840px){.lp-steps{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr))}.lp-step{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.lp-step .n{margin-left:var(--space-4)}.lp-band{padding:var(--space-16) var(--space-10);gap:var(--space-10);grid-template-columns:1.1fr 1fr}.lp-notif:nth-child(2){margin-left:var(--space-8)}.lp-pricing{gap:var(--space-16);grid-template-columns:1fr minmax(0,460px)}.lp-faq-layout{gap:var(--space-16);grid-template-columns:minmax(0,340px) 1fr}.lp-faq-side{align-self:stretch}.lp-faq-title{gap:var(--space-3);display:grid;position:sticky;top:96px}.lp-footer{grid-template-columns:2fr 1fr 1fr 1fr}.lp-footer-brand{grid-column:auto}}@media (width>=1024px){.lp-hero{gap:var(--space-16);padding:var(--space-16) 0;grid-template-columns:1.05fr 1fr}.lp-features{grid-template-columns:repeat(4,minmax(0,1fr))}.lp-feature{padding:var(--space-6);border-radius:var(--radius-lg);flex-direction:column}.lp-feature:hover{box-shadow:var(--shadow-2);border-color:var(--line-strong);transform:translateY(-2px)}.lp-feature h3{font-family:var(--font-display);font-size:19px;font-weight:600}.lp-visual{background:0 0;min-height:480px;padding:0;display:block;overflow:visible}.lp-route{opacity:1}.lp-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);padding:var(--space-4) var(--space-6);position:absolute}.lp-card-a{width:62%;top:6%;left:2%}.lp-card-b{width:52%;top:46%;right:0}.lp-card-c{width:50%;bottom:0;left:8%}}.lp-witness{gap:var(--space-10);align-items:center;display:grid}.lp-witness h2{letter-spacing:-.03em;margin-top:var(--space-3);font-size:clamp(1.875rem,1.3rem + 2vw,3rem);line-height:1.08}.lp-witness-lead{font-size:var(--text-lg);color:var(--ink-muted);margin-top:var(--space-4);line-height:1.6}.lp-witness-points{margin:var(--space-6) 0 0;gap:var(--space-4);padding:0;list-style:none;display:grid}.lp-witness-points li{gap:var(--space-3);align-items:flex-start;display:flex}.lp-witness-points svg{color:var(--pine);flex:none;margin-top:3px}.lp-witness-points span{color:var(--ink-muted)}.lp-witness-points b{color:var(--ink)}.lp-witness-demo{gap:var(--space-3);padding:var(--space-8) var(--space-6);border-radius:var(--radius-lg);background:linear-gradient(160deg, var(--pine-soft), color-mix(in srgb, var(--sun-soft) 60%, var(--surface)) 130%);display:grid;position:relative}.lp-wcard{gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);box-shadow:var(--shadow-2);display:grid}.lp-wcard .label{color:var(--sun-ink);letter-spacing:.06em}.lp-wcard-goal{font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1.2}.lp-wcard-row{justify-content:space-between;gap:var(--space-3);color:var(--ink-muted);font-size:14px;display:flex}.lp-wcard-row b{color:var(--ink)}.lp-cheer{gap:var(--space-3);padding:var(--space-3) var(--space-4);color:#1c2826;box-shadow:var(--shadow-pop);margin-left:var(--space-8);background:#fffdf8;border-radius:16px;align-items:center;display:flex}.lp-cheer-ic{color:#fff;background:#f0a04e;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.lp-cheer b{font-size:14px;display:block}.lp-cheer span{color:#5a6662;font-size:14px}@media (width>=840px){.lp-witness{gap:var(--space-16);grid-template-columns:1.05fr 1fr}}.lp-promises{gap:var(--space-3);display:grid}.lp-promise{gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);align-items:flex-start;display:flex}.lp-promise-ic{background:var(--pine-soft);width:42px;height:42px;color:var(--pine);border-radius:12px;flex:none;place-items:center;display:grid}.lp-promise h3{font-family:var(--font-sans);letter-spacing:-.01em;font-size:16px;font-weight:700}.lp-promise p{color:var(--ink-muted);margin-top:4px;font-size:15px;line-height:1.55}@media (width>=700px){.lp-promises{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.lp-promises{grid-template-columns:repeat(3,minmax(0,1fr))}}.lp-reviews{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.lp-reviews>[role=listitem]{display:flex}.lp-review{padding:var(--space-6);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);box-shadow:var(--shadow-1);gap:var(--space-3);flex-direction:column;flex:1;margin:0;display:flex}.lp-review blockquote{font-family:var(--font-display);color:var(--ink);flex:1;margin:0;font-size:18px;line-height:1.55}.lp-review blockquote.clamped{-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lp-review-more{align-self:flex-start;padding:0}.lp-review figcaption{padding-top:var(--space-3);border-top:1px solid var(--line);gap:2px;display:grid}.lp-reviews-note{margin-top:var(--space-6);max-width:70ch}@media (width<=699px){.lp-reviews{scroll-snap-type:x mandatory;gap:var(--space-3);margin:var(--space-6) calc(-1 * var(--space-4)) 0;padding:0 var(--space-4) var(--space-3);scroll-padding:0 var(--space-4);display:flex;overflow-x:auto}.lp-reviews>[role=listitem]{scroll-snap-align:start;flex:0 0 86%}}.lp-early{max-width:760px;padding:var(--space-8) var(--space-6);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface-raised);gap:var(--space-4);justify-items:start;margin:0 auto;display:grid}.lp-early p{color:var(--ink-muted);line-height:1.6}.lp-early-points{gap:var(--space-2);margin:0;padding:0;font-size:15px;list-style:none;display:grid}.lp-early-points li{gap:var(--space-2);align-items:flex-start;display:flex}.lp-early-points svg{color:var(--pine);flex:none;margin-top:3px}.lp-rating{margin-top:var(--space-4);color:var(--ink-muted);align-items:center;gap:8px;font-size:14px;text-decoration:none;display:inline-flex}.lp-rating b{color:var(--ink)}.lp-compare{margin-top:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-1);overflow:hidden}.lp-compare-row{padding:var(--space-4);border-top:1px solid var(--line);grid-template-columns:1fr;gap:4px;display:grid}.lp-compare-row:first-child{border-top:0}.lp-compare-row>span:first-child{font-weight:700}.lp-compare-row .us{color:var(--pine);align-items:flex-start;gap:6px;font-weight:600;display:flex}.lp-compare-row .us svg{flex:none;margin-top:3px}.lp-compare-row .them{color:var(--ink-muted)}.lp-compare-row .them:before{content:"Usual setup: ";font-weight:600}.lp-compare-head{display:none}@media (width>=760px){.lp-compare-row{gap:var(--space-4);padding:var(--space-4) var(--space-6);grid-template-columns:1.2fr 1fr 1fr;align-items:center}.lp-compare-head{background:var(--pine-soft);font-size:14px;font-weight:700;display:grid}.lp-compare-row .them:before{content:none}}@media (pointer:coarse){.btn,.icon-btn{min-height:44px}.icon-btn{min-width:44px}.lp-footer nav{gap:0}.lp-footer nav a{align-items:center;min-height:44px;display:flex}}.hero-demo{--loop:14s}.demo-input{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;align-items:center;height:36px;margin:4px 0 6px;padding:0 10px;font-size:14px;display:flex;position:relative;overflow:hidden}.demo-type{white-space:nowrap;opacity:0;display:inline-block;position:relative;overflow:hidden}.demo-type:after{content:"";background:var(--surface);position:absolute;inset:0;transform:translate(100%)}.demo-placeholder{color:var(--ink-muted);position:absolute;left:10px}.demo-new .demo-when{color:var(--pine)}.demo-streak{align-items:baseline;gap:6px;display:flex}.demo-count{height:1.1em;display:inline-grid;overflow:hidden}.demo-count span{display:block;transform:translateY(-100%)}.demo-check{background:var(--pine) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 14px no-repeat;border-radius:7px;align-self:center;width:22px;height:22px;margin-left:auto}.demo-path{width:100%;height:auto;display:block;overflow:visible}.demo-path circle{fill:var(--line-strong)}.demo-path circle.on{fill:var(--pine)}.demo-path .demo-sun{fill:var(--sun);opacity:.5}.demo-path-box{position:relative}.demo-dot-track{pointer-events:none;transform:translate(var(--dx), var(--dy));position:absolute;inset:0}.demo-dot{aspect-ratio:1;background:var(--pine);width:4.6%;box-shadow:0 0 0 2px var(--surface-raised);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.demo-cheer{left:var(--space-4);right:var(--space-4);bottom:var(--space-3);z-index:2;background:color-mix(in srgb, var(--surface-raised) 92%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-pop);border-radius:14px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;line-height:1.35;display:flex;position:absolute}.demo-cheer>span{display:grid}.demo-cheer span span{color:var(--ink-muted)}@media (width>=1024px){.demo-cheer{width:46%;bottom:2%;left:auto;right:0}}@media (prefers-reduced-motion:no-preference){.hero-demo.playing .demo-type{animation:demo-typed var(--loop) linear infinite}.hero-demo.playing .demo-type:after{animation:demo-cover var(--loop) infinite}.hero-demo.playing .demo-placeholder{animation:demo-placeholder var(--loop) linear infinite}.hero-demo.playing .demo-new{animation:demo-row var(--loop) var(--ease-out) infinite}.hero-demo.playing .demo-count span{animation:demo-count var(--loop) var(--ease-out) infinite}.hero-demo.playing .demo-check,.hero-demo.playing .demo-today{animation:demo-check var(--loop) var(--ease-out) infinite}.hero-demo.playing .demo-dot-track{animation:demo-dot var(--loop) var(--ease-out) infinite}.hero-demo.playing .demo-cheer{animation:demo-cheer var(--loop) var(--ease-out) infinite}}@keyframes demo-typed{0%,18%{opacity:1}20.5%,to{opacity:0}}@keyframes demo-cover{0%,2%{animation-timing-function:steps(21,end);transform:translate(0)}16%,to{transform:translate(100%)}}@keyframes demo-placeholder{0%{opacity:1}1.5%,20.5%{opacity:0}23%,to{opacity:1}}@keyframes demo-row{0%,20%{opacity:0;transform:translateY(6px)}22.8%,94%{opacity:1;transform:none}96.5%,to{opacity:0;transform:none}}@keyframes demo-check{0%,30%{opacity:.25;transform:scale(.85)}32.8%,95%{opacity:1;transform:none}98%,to{opacity:.25;transform:scale(.85)}}@keyframes demo-count{0%,31%{transform:translateY(0)}33.8%,95%{transform:translateY(-100%)}98%,to{transform:translateY(0)}}@keyframes demo-dot{0%,48%{transform:none}50.8%,95%{transform:translate(var(--dx), var(--dy))}98%,to{transform:none}}@keyframes demo-cheer{0%,62%{opacity:0;transform:translateY(14px)}64.8%,91%{opacity:1;transform:none}93.8%,to{opacity:0;transform:translateY(14px)}}.reveal.later{opacity:0;transform:translateY(12px)}.reveal.later.in{opacity:1;transition:opacity var(--dur-path) var(--ease-out), transform var(--dur-path) var(--ease-out);transform:none}@media (prefers-reduced-motion:reduce){.reveal.later{opacity:1;transform:none}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.lp-feature:hover .ic svg,.lp-feature:focus-within .ic svg{animation:var(--feature-move,feature-lift) var(--dur-path) var(--ease-out) 1}}.lp-feature[data-move=tasks]{--feature-move:feature-tick}.lp-feature[data-move=habits]{--feature-move:feature-spin}.lp-feature[data-move=goals]{--feature-move:feature-rise}.lp-feature[data-move=finance]{--feature-move:feature-drop}.lp-feature[data-move=bell]{--feature-move:feature-ring}@keyframes feature-lift{50%{transform:translateY(-3px)}}@keyframes feature-tick{40%{transform:scale(1.15)}}@keyframes feature-spin{to{transform:rotate(180deg)}}@keyframes feature-rise{50%{transform:translateY(-4px)}}@keyframes feature-drop{0%{opacity:.4;transform:translateY(-6px)}70%{opacity:1;transform:translateY(1px)}to{transform:none}}@keyframes feature-ring{20%{transform:rotate(12deg)}50%{transform:rotate(-10deg)}80%{transform:rotate(4deg)}}.lp-sticky{display:none}@media (width<=720px){.lp-sticky{z-index:30;align-items:center;gap:var(--space-3);padding:12px var(--space-4) calc(12px + env(safe-area-inset-bottom));background:var(--surface-raised);border-top:1px solid var(--line);transition:transform var(--dur-slow) var(--ease-out);visibility:hidden;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%);box-shadow:0 -12px 28px -16px #1c282659}.lp-sticky.show{visibility:visible;transform:none}.lp-sticky-price{flex:1;gap:1px;min-width:0;line-height:1.25;display:grid}.lp-sticky-price b{font-family:var(--font-display);color:var(--ink);font-size:22px;font-weight:600}.lp-sticky-price b s{font-family:var(--font-sans);color:var(--ink-muted);margin-left:6px;font-size:14px;font-weight:500}.lp-sticky-price span{color:var(--ink-muted);font-size:13px}.lp-sticky .btn{flex:none}}.lp-steps-wrap{position:relative}.how-route{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.how-route circle{fill:var(--pine);opacity:0}.how-route.drawn circle{opacity:.45;animation:step-in var(--dur) var(--ease-out) both}.how-route circle{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:reduce){.how-route circle{opacity:.45}}.how-mock{height:210px;margin-top:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);align-content:center;display:grid;position:relative;overflow:hidden}@media (width>=840px){.how-mock{height:260px}.lp-step-body{gap:var(--space-2);padding:var(--space-4)}.how-goals{padding:var(--space-3);gap:8px}}.how-wheel{width:100%;max-width:320px;height:100%;margin:0 auto;display:block}.how-wheel-ring{fill:none;stroke:var(--line);stroke-width:1px}.how-wheel-shape{fill:color-mix(in srgb, var(--pine) 18%, transparent);stroke:var(--pine);stroke-width:2px;stroke-linejoin:round}.how-wheel-dot{fill:var(--pine)}.how-wheel-label{font:600 14px var(--font-sans);fill:var(--ink-muted)}.how-wheel .low .how-wheel-dot{fill:var(--sun)}.how-wheel .low .how-wheel-label{fill:var(--sun-ink);font-weight:800}.how-wheel-focus rect{fill:var(--sun-soft)}.how-wheel-focus text{font:700 14px var(--font-sans);fill:var(--sun-ink)}.how-goals{align-content:center;gap:6px;height:100%;margin:0;padding:10px;list-style:none;display:grid}.how-goals li{background:var(--surface-raised);border:1px solid var(--line);border-radius:12px;gap:2px;padding:7px 11px;display:grid}.how-goal{align-items:baseline;gap:8px;font-size:14px;display:flex}.how-goal b{color:var(--ink)}.how-goal span{color:var(--ink-muted);font-size:12.5px}.how-habit{color:var(--pine);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.how-habit svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.how-shot{position:absolute;inset:0}.how-shot img{object-fit:cover;object-position:50% 56%;width:100%;height:100%;display:block}.lp-deco,.lp-deco img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lp-shot-dark{display:none!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .lp-shot-light{display:none!important}:root:not([data-theme=light]) .lp-shot-dark{display:block!important}}:root[data-theme=dark] .lp-shot-light{display:none!important}:root[data-theme=dark] .lp-shot-dark{display:block!important}.year-hero{gap:var(--space-6);align-items:center;display:grid}@media (width>=1024px){.year-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.year-steps{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.year-steps li{gap:var(--space-3);grid-template-columns:40px minmax(0,1fr);align-items:start;display:grid}.year-steps .n{background:var(--pine);width:40px;height:40px;color:var(--on-pine);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:18px;font-weight:600;display:grid}.year-steps li:last-child .n{background:var(--sun);color:#1c2826}.year-steps h3{margin:6px 0 2px}.year-steps p{color:var(--ink-muted);margin:0}.year-ideas{gap:var(--space-3);display:grid}@media (width>=720px){.year-ideas{grid-template-columns:repeat(3,minmax(0,1fr))}}.year-ideas ul{margin:var(--space-2) 0 0;color:var(--ink-muted);padding-left:1.1em}.year-price{gap:var(--space-4);justify-items:start;display:grid}.hero-art{--sun-at:89.3% 15.7%;pointer-events:none}.hero-layer{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hero-dawn-breathe{transform-origin:var(--sun-at);position:absolute;inset:0}.dawn-stop{stop-color:var(--sun);stop-opacity:.12}.dawn-stop-out{stop-opacity:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dawn-stop:not(.dawn-stop-out){stop-opacity:.2}}:root[data-theme=dark] .dawn-stop:not(.dawn-stop-out){stop-opacity:.2}.hero-sun,.hero-pulse{transform-origin:var(--sun-at)}.hero-pulse{opacity:0}@keyframes sunrise{0%{opacity:0;transform:translateY(40px)scale(.85)}}@keyframes dawn-in{0%{opacity:0}}@keyframes dot-in{0%{opacity:0}}@keyframes sun-pulse{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}@keyframes dawn-breathe{to{transform:scale(1.03)}}html:not([data-sunrise=seen]) .lp-hero .hero-sun{will-change:transform, opacity;animation:1.4s cubic-bezier(.2,.8,.2,1) both sunrise}html:not([data-sunrise=seen]) .lp-hero .hero-sun.risen{will-change:auto}html:not([data-sunrise=seen]) .lp-hero .hero-dawn{animation:1.4s ease-out both dawn-in}html:not([data-sunrise=seen]) .lp-hero .dawn-dot{animation:.2s ease-out both dot-in}html:not([data-sunrise=seen]) .lp-hero .hero-pulse{animation:.6s ease-out 1.4s both sun-pulse}.lp-hero .hero-demo .hero-dawn-breathe{animation:6s ease-in-out 1.4s infinite alternate paused dawn-breathe}.lp-hero .hero-demo.in-view:not(.tab-hidden) .hero-dawn-breathe{animation-play-state:running}.js .lp-hero .hero-demo:not(.sun-go) :is(.hero-sun,.hero-dawn,.dawn-dot,.hero-pulse){animation-play-state:paused}@keyframes hero-travel{0%{opacity:0;transform:translate(40px,420px)}2.9%{opacity:1;transform:translate(71.6px,414.2px)}5.7%{opacity:1;transform:translate(103.1px,405.6px)}8.6%{opacity:1;transform:translate(134.7px,391.7px)}11.4%{opacity:1;transform:translate(166.2px,371.1px)}14.3%{opacity:1;transform:translate(197.8px,343.6px)}17.1%{opacity:1;transform:translate(229.3px,310px)}20%{opacity:1;transform:translate(260.9px,272.4px)}22.9%{opacity:1;transform:translate(292.5px,233.5px)}25.7%{opacity:1;transform:translate(324px,196.2px)}28.6%{opacity:1;transform:translate(355.6px,163.2px)}31.4%{opacity:1;transform:translate(387.1px,136.4px)}34.3%{opacity:1;transform:translate(418.7px,116.5px)}37.1%{opacity:1;transform:translate(450.2px,103.3px)}40%{opacity:0;transform:translate(481.8px,95.1px)}to{opacity:0;transform:translate(481.8px,95.1px)}}.hero-traveler{fill:var(--pine);stroke:var(--surface);stroke-width:3px;opacity:0;transform:translate(40px,420px)}.lp-hero .hero-demo .hero-traveler{animation:7s linear 1.8s infinite paused hero-travel}.lp-hero .hero-demo.sun-go.in-view:not(.tab-hidden) .hero-traveler{animation-play-state:running}.lp-theme{color:var(--ink);border-radius:var(--radius-md);width:40px;height:40px;transition:background-color var(--dur-fast) ease-out;flex:none}.lp-theme:hover{background:color-mix(in srgb, var(--pine) 8%, transparent)}.lp-theme .lp-theme-sun{display:none}:root[data-theme=dark] .lp-theme .lp-theme-sun{display:block}:root[data-theme=dark] .lp-theme .lp-theme-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .lp-theme .lp-theme-sun{display:block}:root:not([data-theme=light]) .lp-theme .lp-theme-moon{display:none}}.lp-theme svg{transition:transform var(--dur) var(--ease-out)}.lp-theme:hover svg{transform:rotate(-12deg)}.ny-list{gap:var(--space-10);margin:0;padding:0;list-style:none;display:grid}.ny-step{gap:var(--space-4);align-items:center;display:grid}.ny-text{gap:var(--space-2);justify-items:start;display:grid}.ny-text h3{margin:0}.ny-text p{color:var(--ink-muted);margin:0;line-height:1.6}.ny-text .n{background:var(--pine);width:40px;height:40px;color:var(--on-pine);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:18px;font-weight:600;display:grid}.ny-step:last-child .ny-text .n{background:var(--sun);color:#1c2826}.ny-shot{--ny-bezel:#1c2826;background:var(--ny-bezel);width:min(260px,72%);box-shadow:var(--shadow-pop);border-radius:30px;order:2;justify-self:center;margin:0;padding:8px}.ny-shot img{background:var(--surface-raised);border-radius:22px;width:100%;height:auto;display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ny-shot{--ny-bezel:#0a0f0e}}:root[data-theme=dark] .ny-shot{--ny-bezel:#0a0f0e}@media (width>=760px){.ny-step{gap:var(--space-10);grid-template-columns:280px minmax(0,1fr)}.ny-shot{order:0;width:100%}.ny-step:nth-child(2n){grid-template-columns:minmax(0,1fr) 280px}.ny-step:nth-child(2n) .ny-shot{order:2}}.ht-figure{margin:var(--space-2) 0 0;gap:var(--space-2);text-align:center;justify-items:center;display:grid}.ht-figure .ny-shot{order:0;width:min(260px,72%)}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/figtree-latin.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-italic-latin.woff2)format("woff2")}@font-face{font-family:Fraunces Fallback;src:local(Georgia);font-weight:100 500;size-adjust:76%;ascent-override:98%;descent-override:26%;line-gap-override:0%}@font-face{font-family:Fraunces Fallback;src:local(Georgia Bold),local(Georgia-Bold);font-weight:501 900;size-adjust:75.6%;ascent-override:98%;descent-override:26%;line-gap-override:0%}@font-face{font-family:Fraunces Fallback;src:local(Georgia Italic),local(Georgia-Italic);font-style:italic;font-weight:100 500;size-adjust:82%;ascent-override:98%;descent-override:26%;line-gap-override:0%}@font-face{font-family:Fraunces Fallback;src:local(Georgia Bold Italic),local(Georgia-BoldItalic);font-style:italic;font-weight:501 900;size-adjust:80%;ascent-override:98%;descent-override:26%;line-gap-override:0%}@font-face{font-family:Figtree Fallback;src:local(Arial),local(ArialMT);font-weight:100 500;size-adjust:99.4%;ascent-override:95%;descent-override:25%;line-gap-override:0%}@font-face{font-family:Figtree Fallback;src:local(Arial Bold),local(Arial-BoldMT);font-weight:501 900;size-adjust:95.4%;ascent-override:95%;descent-override:25%;line-gap-override:0%}:root{--surface:#f6f2ea;--surface-raised:#fffdf8;--line:#ded6c8;--ink:#1c2826;--ink-muted:#5a6662;--pine:#1e5a4c;--pine-soft:#ddebe4;--on-pine:#fff;--sun:#e08a2e;--sun-ink:#94500f;--sun-soft:#fbe7cf;--danger:#b3261e;--line-strong:#cbc1b0;--card-border:#d3c9b8;--shadow-card:0 1px 2px #1c28260f, 0 4px 12px -6px #1c282624;--surface-sunken:#efe9de;--focus-ring:var(--pine);--nav-radius:16px;--nav-radius-sm:8px;--nav-border:1px solid #d3c9b8;--nav-shadow:0 4px 8px #1c28260a, 0 24px 56px -16px #1c282647;--nav-shadow-button:0 2px 4px #1c28260d, 0 12px 28px -10px #1c28262e;--shadow-1:0 1px 2px #1c28260a, 0 1px 1px #1c282608;--shadow-2:0 2px 4px #1c28260a, 0 8px 24px -8px #1c28261f;--shadow-pop:0 12px 32px -12px #1c282640;--ease:cubic-bezier(.2, .7, .2, 1);--font-display:"Fraunces", "Fraunces Fallback", Georgia, "Times New Roman", serif;--font-sans:"Figtree", "Figtree Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-h3:1.25rem;--text-h2:clamp(1.5rem, 1.2rem + 1vw, 1.875rem);--text-h1:clamp(2rem, 1.55rem + 1.6vw, 2.75rem);--text-display:clamp(2.75rem, 1.6rem + 4.2vw, 4.5rem);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-10:40px;--space-16:64px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:9999px;--control-border:#8c8476;--success:#1a6b4a;--success-soft:#dcefe5;--danger-soft:#fbe4e1;--warning:var(--sun-ink);--warning-soft:var(--sun-soft);--control-sm:36px;--control-md:44px;--control-lg:52px;--icon-sm:16px;--icon-md:20px;--dur-fast:.15s;--dur:.2s;--dur-count:.3s;--dur-slow:.32s;--dur-path:.4s;--ease-out:cubic-bezier(.2, .9, .3, 1);--z-sticky:5;--z-nav:10;--z-overlay:30;--z-toast:60;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--surface:#121716;--surface-raised:#1b2220;--line:#2c3533;--ink:#efeae0;--ink-muted:#a5afab;--pine:#6cc4a6;--pine-soft:#163a31;--on-pine:#0c1b17;--sun:#f0a04e;--sun-ink:#f4b370;--sun-soft:#3a2611;--danger:#f2a39c;--shadow-pop:0 12px 32px -12px #0009;--line-strong:#3b4643;--card-border:#2c3533;--shadow-card:0 1px 2px #0000004d;--surface-sunken:#0e1312;--nav-border:1px solid #33403d;--nav-shadow:inset 0 1px 0 #ffffff0f, 0 4px 8px #0000004d, 0 24px 56px -16px #000000b3;--nav-shadow-button:inset 0 1px 0 #ffffff0d, 0 2px 4px #00000059, 0 12px 28px -10px #0009;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 2px 4px #0000004d, 0 8px 24px -8px #00000080;--success:#7dd3ae;--control-border:#66726e;--success-soft:#16352a;--danger-soft:#3a1a18;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--surface:#121716;--surface-raised:#1b2220;--line:#2c3533;--ink:#efeae0;--ink-muted:#a5afab;--pine:#6cc4a6;--pine-soft:#163a31;--on-pine:#0c1b17;--sun:#f0a04e;--sun-ink:#f4b370;--sun-soft:#3a2611;--danger:#f2a39c;--shadow-pop:0 12px 32px -12px #0009;--line-strong:#3b4643;--card-border:#2c3533;--shadow-card:0 1px 2px #0000004d;--surface-sunken:#0e1312;--nav-border:1px solid #33403d;--nav-shadow:inset 0 1px 0 #ffffff0f, 0 4px 8px #0000004d, 0 24px 56px -16px #000000b3;--nav-shadow-button:inset 0 1px 0 #ffffff0d, 0 2px 4px #00000059, 0 12px 28px -10px #0009;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 2px 4px #0000004d, 0 8px 24px -8px #00000080;--success:#7dd3ae;--control-border:#66726e;--success-soft:#16352a;--danger-soft:#3a1a18;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (display-mode:standalone){body{overscroll-behavior-y:none}}body{background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-variant-numeric:lining-nums;margin:0;line-height:1.55}::selection{background:var(--sun-soft);color:var(--ink)}img{max-width:100%;display:block}a{color:var(--pine);text-underline-offset:3px}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3{font-family:var(--font-display);font-optical-sizing:auto;text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--text-h1);letter-spacing:-.025em;line-height:1.08}h2{font-size:var(--text-h2);letter-spacing:-.02em;line-height:1.18}h3{font-size:var(--text-h3);letter-spacing:-.01em;line-height:1.3}p{text-wrap:pretty;margin:0}.muted{color:var(--ink-muted)}.small{font-size:var(--text-sm);line-height:1.45}.label{font-size:var(--text-xs);font-weight:600;line-height:1.25}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--sun-ink);font-size:12px;font-weight:700;line-height:16px}.tnum{font-variant-numeric:tabular-nums}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.logo{color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.wordmark{font-family:var(--font-sans);letter-spacing:-.05em;color:inherit;white-space:nowrap;padding-right:.04em;font-weight:800;line-height:1}.wordmark-o{border:.11em solid #f0a04e;border-radius:50%;width:.5em;height:.5em;margin:0 .045em 0 .03em;display:inline-block}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);letter-spacing:-.005em;cursor:pointer;box-shadow:var(--shadow-1);transition:transform .12s var(--ease), background .15s var(--ease), border-color .15s var(--ease), box-shadow .15s var(--ease), filter .15s var(--ease);font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--pine);border-color:var(--pine);color:var(--on-pine);box-shadow:inset 0 1px 0 #ffffff1f, var(--shadow-1)}.btn-primary:hover{border-color:var(--pine);filter:brightness(1.08)}.btn-sun{background:var(--sun);border-color:var(--sun);color:#1c2826}.btn-ghost{box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover{box-shadow:none;background:var(--pine-soft);border-color:#0000}.btn-sm{min-height:36px;padding:0 var(--space-3);font-size:14px}.btn-lg{min-height:52px;padding:0 var(--space-6);font-size:16px}.btn-block{width:100%}.icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--ink-muted);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--pine-soft);color:var(--ink)}.field{gap:var(--space-1);display:grid}.input,.textarea,.select{width:100%;min-height:44px;padding:10px var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink);transition:border-color .15s var(--ease), box-shadow .15s var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--ink-muted);opacity:.75}.input:focus,.textarea:focus,.select:focus{outline:2px solid var(--focus-ring);outline-offset:0;border-color:#0000}.textarea{resize:vertical;min-height:120px;line-height:24px}.row{gap:var(--space-2);align-items:center;display:flex}.row>.input,.row>.select{min-width:0}.row>.btn{flex:none}.row-wrap{flex-wrap:wrap}.spacer{flex:1}.stack{gap:var(--space-4);align-content:start;display:grid}.stack-sm{gap:var(--space-2);align-content:start;display:grid}.card{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card)}.card-tight{padding:var(--space-4)}.card-head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.card-head h3{font-size:var(--text-lg);line-height:1.35}.card-head>a.small{color:var(--ink-muted);border-radius:var(--radius-sm);transition:color .15s var(--ease);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.card-head>a.small:after{content:"→";transition:transform .15s var(--ease)}.card-head>a.small:hover{color:var(--pine)}.card-head>a.small:hover:after{transform:translate(2px)}.card-pine{background:var(--pine-soft);box-shadow:none;border-color:#0000}.card-sun{background:var(--sun-soft);box-shadow:none;border-color:#0000}.chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);background:var(--pine-soft);color:var(--pine);padding:2px 10px;font-size:13px;font-weight:600;line-height:20px;display:inline-flex}.chip-sun{background:var(--sun-soft);color:var(--sun-ink)}.chip-quiet{border:1px solid var(--line);color:var(--ink-muted);background:0 0}.pro-badge{border-radius:var(--radius-pill);background:var(--sun-soft);height:20px;color:var(--sun-ink);letter-spacing:.04em;align-items:center;gap:4px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.progress{border-radius:var(--radius-pill);background:var(--line);height:8px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--pine);height:100%;transition:width .3s;display:block}.progress.sun>span{background:var(--sun)}.empty{text-align:center;padding:var(--space-10) var(--space-6);color:var(--ink-muted);gap:var(--space-3);justify-items:center;display:grid}.check{appearance:none;border:2px solid var(--ink-muted);border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;transition:background .15s var(--ease), border-color .15s var(--ease), transform .12s var(--ease);background:0 0;flex:none;place-items:center;margin:0;display:inline-grid}.check:hover{border-color:var(--pine)}.check:active{transform:scale(.92)}.check:after{content:"";border:2px solid var(--on-pine);opacity:0;border-top:0;border-right:0;width:10px;height:6px;transform:rotate(-45deg)translate(1px,-1px)}.check:checked{background:var(--pine);border-color:var(--pine)}.check:checked:after{opacity:1}.list{margin:0;padding:0;list-style:none;display:grid}.list:empty{display:none}.list-item{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line);display:flex}.list-item:last-child{border-bottom:0}.list-item .title{flex:1;min-width:0}.list-item.done .title{color:var(--ink-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.shell{grid-template-columns:248px 1fr;min-height:100%;display:grid}.sidebar{border-right:1px solid var(--line);height:100vh;padding:var(--space-6) var(--space-4);background:var(--surface-raised);gap:var(--space-6);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.nav{gap:2px;display:grid}.nav-group{text-transform:uppercase;color:var(--ink-muted);padding:var(--space-3) var(--space-3) var(--space-1);letter-spacing:.08em;font-size:11px;font-weight:700}.nav a,.nav .nav-btn{align-items:center;gap:var(--space-3);padding:8px var(--space-3);border-radius:var(--radius-sm);color:var(--ink-muted);transition:background .15s var(--ease), color .15s var(--ease);font-size:15px;font-weight:500;text-decoration:none;display:flex;position:relative}.nav a:hover,.nav .nav-btn:hover{background:var(--surface-sunken);color:var(--ink)}.nav .nav-btn{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;font-family:inherit}.nav a.active{background:var(--pine-soft);color:var(--pine);font-weight:600}.nav a.active:before{content:"";background:var(--pine);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-16px}.nav a .pro-badge{margin-left:auto}.main{min-width:0;padding:var(--space-8) var(--space-10) var(--space-16)}.page{gap:var(--space-6);grid-template-columns:minmax(0,1fr);max-width:1040px;margin:0 auto;display:grid}.page-head{align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head>div:not(.row){gap:var(--space-1);flex:1;min-width:240px;display:grid}.grid-2{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid-3{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.grid-4{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.span-2{grid-column:span 2}.tabbar,.topbar{display:none}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.main{padding:var(--space-4) var(--space-4) calc(150px + env(safe-area-inset-bottom))}.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:auto}.card{padding:18px}.card-tight{padding:var(--space-4)}h1{font-size:32px;line-height:40px}.topbar{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);padding-top:calc(var(--space-3) + env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--surface-raised);z-index:5;display:flex;position:sticky;top:0;box-shadow:0 8px 24px -18px #1c28264d}.tabbar{z-index:10;background:var(--surface-raised);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--ink-muted);border-radius:var(--radius-sm);justify-items:center;gap:2px;padding:6px 0;font-size:11px;font-weight:600;text-decoration:none;display:grid}.tabbar a.active{color:var(--pine)}}.drawer-backdrop{z-index:20;animation:fade-in .2s var(--ease) both;background:#00000059;position:fixed;inset:0}.drawer{z-index:21;background:var(--surface-raised);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-2) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));max-height:82vh;animation:drawer-in .22s var(--ease);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -12px 40px -12px #0000004d}.drawer .nav a{padding:12px var(--space-3);font-size:16px}.drawer .nav a.active:before{display:none}.drawer-handle{background:var(--line-strong);width:40px;height:4px;margin:4px 0 var(--space-2);border-radius:2px;justify-self:center}@keyframes drawer-in{0%{opacity:0;transform:translateY(24px)}}.back-link{min-height:32px;font-size:var(--text-sm);color:var(--ink-muted);justify-self:start;align-items:center;gap:2px;font-weight:600;text-decoration:none;display:inline-flex}.back-link svg{transform:rotate(180deg)}.back-link:hover{color:var(--pine)}.hub-card{align-items:center;gap:var(--space-3);color:inherit;transition:border-color .15s var(--ease), transform .15s var(--ease);text-decoration:none;display:flex}.hub-card:hover{border-color:var(--pine)}.hub-card:active{transform:scale(.99)}.hub-icon{border-radius:var(--radius-md);background:var(--pine-soft);width:40px;height:40px;color:var(--pine);flex:none;place-items:center;display:grid}.hub-text{flex:1;gap:2px;min-width:0;display:grid}.hub-card>svg{color:var(--ink-muted);flex:none}.start-card{border-color:var(--pine)}.start-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.start-step{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2);border-radius:var(--radius-md);display:flex}.start-step.next{background:var(--pine-soft);padding:var(--space-3) var(--space-2)}.start-step.done strong{color:var(--ink-muted);font-weight:500;text-decoration:line-through}.start-tick{border:2px solid var(--line-strong);width:24px;height:24px;color:var(--on-pine);border-radius:50%;flex:none;place-items:center;display:grid}.start-step.done .start-tick{background:var(--pine);border-color:var(--pine)}.start-step.next .start-tick{border-color:var(--pine)}.start-text{flex:1;gap:2px;min-width:0;display:grid}.start-step .btn{flex:none}.card-foot{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line)}.card-foot a{color:var(--ink-muted);font-weight:600;text-decoration:none}.card-foot a:hover{color:var(--pine)}.goal-mini{min-width:0;color:inherit;flex:1;gap:6px;text-decoration:none;display:grid}.goal-mini:hover strong{color:var(--pine)}details.fold{padding:0}details.fold>summary{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);cursor:pointer;font-weight:600;list-style:none;display:flex}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary>svg{color:var(--ink-muted);transition:transform .2s var(--ease);transform:rotate(90deg)}details.fold[open]>summary>svg{transform:rotate(-90deg)}.fold-title{align-items:center;gap:var(--space-2);display:inline-flex}.fold-body{padding:0 var(--space-6) var(--space-4)}.small-quote{color:var(--ink-muted);padding:0 var(--space-6) var(--space-6);margin:0;font-size:18px}@media (width<=600px){details.fold>summary{padding:var(--space-4)}.fold-body,.small-quote{padding:0 var(--space-4) var(--space-4)}.start-step{flex-wrap:wrap}.start-step .btn{margin-left:36px}}@media (width<=420px){.start-text{flex-basis:calc(100% - 36px)}}.modal-backdrop{z-index:30;padding:var(--space-4);background:#0c121173;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface-raised);border-radius:var(--radius-lg);width:min(520px,100%);padding:var(--space-6);box-shadow:var(--shadow-pop);gap:var(--space-4);max-height:90vh;display:grid;overflow-y:auto}.toast{left:50%;bottom:calc(146px + env(safe-area-inset-bottom));z-index:60;align-items:center;gap:var(--space-3);color:#fffdf8;background:#1c2826;border-radius:14px;max-width:min(92vw,460px);padding:10px 10px 10px 18px;font-size:14px;font-weight:600;animation:.32s cubic-bezier(.2,.9,.3,1.2) toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 16px 40px -12px #00000073}.toast>span{padding:4px 8px 4px 0}.toast-action{color:#f0a04e;cursor:pointer;background:#ffffff1f;border:0;border-radius:10px;flex:none;padding:7px 12px;font-size:14px;font-weight:800}.toast-action:hover{background:#fff3}@media (width>=901px){.toast{bottom:32px}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)scale(.96)}}.days{grid-template-columns:repeat(7,minmax(0,56px));gap:6px;display:grid}.day-dot{border-radius:var(--radius-sm);border:1px solid var(--line);height:44px;transition:background .15s var(--ease), border-color .15s var(--ease);color:var(--ink-muted);cursor:pointer;background:0 0;place-items:center;font-size:12px;font-weight:600;display:grid}.day-dot.on{background:var(--pine);border-color:var(--pine);color:var(--on-pine)}.day-dot.today{outline:2px solid var(--sun);outline-offset:1px}.heat{grid-template-rows:repeat(7,12px);grid-auto-columns:12px;grid-auto-flow:column;justify-content:start;gap:3px;padding-bottom:4px;display:grid;overflow-x:auto}.heat span{background:var(--line);border-radius:3px;width:12px;height:12px}.heat span.on{background:var(--pine)}.mood{gap:var(--space-2);display:flex}.mood button{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;min-height:52px;color:var(--ink-muted);flex:1;place-items:center;gap:2px;padding:6px 0;font-size:13px;font-weight:600;display:grid}.mood button.on{border-color:var(--pine);background:var(--pine-soft);color:var(--pine)}.locked{position:relative}.locked-cover{gap:var(--space-4);justify-items:start;display:grid}.center-screen{min-height:100%;padding:var(--space-6) var(--space-4);place-items:center;display:grid}.auth-card{gap:var(--space-6);width:min(440px,100%);display:grid}.steps{gap:6px;display:flex}.steps span{border-radius:var(--radius-pill);background:var(--line);flex:1;height:4px}.steps span.on{background:var(--pine)}.option-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.option{text-align:left;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);cursor:pointer;align-items:center;gap:var(--space-2);font-weight:600;display:flex}.option.on{border-color:var(--pine);background:var(--pine-soft);color:var(--pine)}.slider{width:100%;accent-color:var(--pine)}.greeting{align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.greeting h1{flex:1;min-width:260px}.stat{gap:2px;display:grid}.stat b{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:600;line-height:1.05}.quote{font-family:var(--font-display);letter-spacing:-.01em;font-size:22px;font-style:italic;font-weight:500;line-height:1.4}.thought{gap:var(--space-3);flex-direction:column;display:flex}.thought .quote{color:var(--ink);flex:1;font-size:clamp(22px,1.2rem + .6vw,28px)}.thought-mark{font-family:var(--font-display);color:var(--pine);opacity:.25;margin-top:var(--space-4);font-size:88px;line-height:.6}.goal-path{padding:var(--space-2) 0;align-items:center;gap:0;display:flex;overflow-x:auto}.goal-path .seg{background:var(--line);flex:1;min-width:20px;height:3px}.goal-path .seg.on{background:var(--pine)}.goal-path .node{border:2px solid var(--line);background:var(--surface-raised);border-radius:50%;flex:none;width:14px;height:14px}.goal-path .node.on{background:var(--pine);border-color:var(--pine)}.goal-path .sun{background:var(--line);border-radius:50%;flex:none;width:22px;height:22px}.goal-path .sun.on{background:var(--sun);box-shadow:0 0 0 6px var(--sun-soft)}.vision-grid{columns:3 220px;column-gap:var(--space-4)}.vision-item{break-inside:avoid;margin-bottom:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-raised);position:relative;overflow:hidden}.vision-item img{width:100%;height:auto}.vision-item .caption{padding:var(--space-3) var(--space-4);font-family:var(--font-display);font-size:18px;line-height:26px}.vision-item .icon-btn{background:var(--surface-raised);position:absolute;top:8px;right:8px}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:15px}.table th{text-align:left;color:var(--ink-muted);border-bottom:1px solid var(--line);padding:8px 6px;font-size:13px;font-weight:600}.table td{border-bottom:1px solid var(--line);padding:10px 6px}.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table td.num,.money-amount{white-space:nowrap}.pos{color:var(--pine)}.neg{color:var(--danger)}.segmented{border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--line);gap:2px;padding:3px;display:inline-flex}.segmented button{cursor:pointer;color:var(--ink-muted);background:0 0;border:0;border-radius:9px;padding:6px 14px;font-size:14px;font-weight:600}.segmented button.on{background:var(--surface-raised);color:var(--ink)}.segmented[role=radiogroup]{flex-wrap:wrap;place-self:flex-start start;max-width:100%}.segmented[role=radiogroup] button{align-items:center;gap:6px;display:inline-flex}.deal-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg);position:relative;overflow:hidden;box-shadow:0 1px 2px #1c28260a,0 30px 60px -30px #e08a2e73}.deal-card:before{content:"";background:linear-gradient(90deg,#1e5a4c,#f0a04e);height:4px;position:absolute;inset:0 0 auto}.deal-top{gap:var(--space-3);padding:var(--space-8) var(--space-6) var(--space-6);display:grid}.deal-top h2,.deal-top h3{letter-spacing:-.02em;font-size:26px;line-height:1.2}.deal-badge{border-radius:var(--radius-pill);background:var(--sun-soft);color:var(--sun-ink);justify-self:start;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-flex}.deal-price{align-items:flex-end;gap:var(--space-3);margin:var(--space-2) 0 var(--space-3);display:flex}.deal-now{font-family:var(--font-display);letter-spacing:-.04em;font-size:64px;font-weight:600;line-height:.9}.deal-price-md .deal-now{font-size:44px}.deal-was{color:var(--ink-muted);font-weight:500}.founder-line{margin:0 0 var(--space-3)}.deal-meta{color:var(--ink-muted);gap:2px;padding-bottom:4px;font-size:14px;font-weight:500;display:grid}.deal-meta b{color:var(--ink);font-size:18px;font-weight:700}.deal-note{text-align:center;color:var(--ink-muted);font-size:13px;line-height:1.6}.deal-bottom{gap:var(--space-3);padding:var(--space-6);background:var(--surface-sunken);border-top:1px solid var(--line);display:grid}.deal-bottom .label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em}.deal-perks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.deal-perks li{align-items:flex-start;gap:10px;font-size:15px;line-height:1.45;display:flex}.deal-perks svg{color:var(--pine);flex:none;margin-top:1px}.deal-page{max-width:1000px}.deal-head{gap:var(--space-3);justify-items:start;max-width:640px;display:grid}.deal-layout{gap:var(--space-6);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.deal-layout{grid-template-columns:1fr}}.trial-card{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--sun-soft);color:var(--sun-ink);transition:filter .15s var(--ease);text-decoration:none;display:grid}.trial-card:hover{filter:brightness(.98)}.trial-card .progress{background:color-mix(in srgb, var(--sun) 25%, transparent);height:6px}.trial-card b{color:var(--ink);font-size:14px}.spin{border:2px solid var(--line);border-top-color:var(--pine);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.admin{min-height:100%;overflow-x:clip}.admin-bar{z-index:5;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--line);background:var(--surface-raised);box-shadow:0 1px 0 var(--line), 0 8px 24px -16px #1c282640;flex-wrap:wrap;display:flex;position:sticky;top:0}.admin-page{max-width:1200px;padding:var(--space-8) var(--space-6) var(--space-16)}.admin-tiles{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=900px){.admin-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page{padding:var(--space-6) var(--space-4) var(--space-16)}}.admin-tile{padding:var(--space-4) var(--space-6);gap:var(--space-1)}.admin-table-wrap{margin:0 calc(var(--space-6) * -1);padding:0 var(--space-6);overflow-x:auto}.admin-table-wrap .table td{white-space:nowrap}.admin-email{text-overflow:ellipsis;max-width:280px;font-weight:500;overflow:hidden}.bars{margin:var(--space-2) 0 0;gap:var(--space-2);display:grid}.bars-plot{border-bottom:1px solid var(--line);grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:2px;height:160px;display:grid}.bars-col{cursor:default;outline:none;align-items:flex-end;height:100%;display:flex;position:relative}.bars-bar{background:var(--pine);width:100%;min-height:2px;transition:opacity .15s var(--ease);border-radius:4px 4px 0 0}.bars-bar[data-zero]{background:var(--line)}.bars-plot:hover .bars-bar,.bars-plot:focus-within .bars-bar{opacity:.45}.bars-col:hover .bars-bar,.bars-col:focus .bars-bar{opacity:1}.bars-tip{z-index:2;border-radius:var(--radius-sm);background:var(--ink);color:var(--surface);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s var(--ease);padding:4px 8px;font-size:12px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.bars-col:hover .bars-tip,.bars-col:focus .bars-tip{opacity:1}.bars-col:first-child .bars-tip{left:0;transform:none}.bars-col:last-child .bars-tip{left:auto;right:0;transform:none}.bars-axis{justify-content:space-between;display:flex}.schedule{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken);display:grid}.weekday{border:1px solid var(--line);background:var(--surface-raised);width:36px;height:36px;color:var(--ink-muted);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease), border-color .15s var(--ease);border-radius:50%;font-size:13px;font-weight:700}.weekday.on{background:var(--pine);border-color:var(--pine);color:var(--on-pine)}.day-dot.rest:not(.on){background:repeating-linear-gradient(135deg, transparent 0 4px, var(--line) 4px 5px);border-style:dashed}.day-dot.frozen:not(.on){color:var(--ink);background:#7fb3d538;border-color:#7fb3d5}.heat span.rest{background:repeating-linear-gradient(135deg, var(--line) 0 2px, transparent 2px 4px)}.heat span.frozen{background:#7fb3d5}.timeline-wrap{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.timeline-tray{gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--line-strong);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr);display:grid}.tray-item{align-items:center;gap:var(--space-3);display:flex}.tray-item .title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tray-item.done .title{color:var(--ink-muted);text-decoration:line-through}.tray-item .input{flex:none;width:112px;min-height:34px;padding:4px 8px}.timeline-empty{padding:var(--space-4);border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;margin:0}@media (width<=600px){.tray-item{flex-wrap:wrap;row-gap:6px}.tray-item .title{white-space:normal;overflow-wrap:anywhere;flex:calc(100% - 40px)}.tray-item .input{margin-left:34px}.timeline-wrap .timeline{height:auto;overflow:visible}}.timeline{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);height:440px;position:relative;overflow-y:auto}.timeline-grid{margin-left:56px;position:relative}.timeline-hour{border-top:1px solid var(--line);height:0;position:absolute;left:-56px;right:0}.timeline-hour span{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;position:absolute;top:2px;left:8px}.timeline-now{background:var(--sun);z-index:3;pointer-events:none;height:2px;position:absolute;left:-6px;right:0}.timeline-now:before{content:"";background:var(--sun);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-4px}.block{z-index:2;align-items:flex-start;gap:var(--space-2);border-radius:var(--radius-sm);background:var(--pine-soft);border-left:3px solid var(--pine);color:var(--ink);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-1);transition:box-shadow .15s var(--ease), opacity .15s var(--ease);padding:6px 8px;display:flex;position:absolute;left:6px;right:8px;overflow:hidden}.block:hover{box-shadow:var(--shadow-2)}.block.dragging{cursor:grabbing;box-shadow:var(--shadow-pop);z-index:4;opacity:.95}.block.high{background:var(--sun-soft);border-left-color:var(--sun)}.block.done{opacity:.55}.block.done .block-title{text-decoration:line-through}.block .check{width:18px;height:18px;margin-top:1px}.block-body{flex:1;min-width:0;display:grid}.block-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.block-time{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:12px}.block.short{align-items:center;padding-top:2px;padding-bottom:2px}.block.short .block-body{gap:var(--space-2);align-items:baseline;display:flex}.block-dur{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.block-unpin{opacity:0;width:24px;height:24px}.block:hover .block-unpin,.block:focus-within .block-unpin{opacity:1}.block-time>span{white-space:nowrap}.block.short .block-time{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (hover:none){.block-unpin{opacity:.7}}@media (width<=600px){.block{gap:6px}.block .block-unpin{width:28px;min-width:28px}.block.short .block-title{flex:auto;min-width:0}.block.short .block-time{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}.focus{gap:var(--space-3);display:grid}.focus-on{align-items:center;gap:var(--space-6);background:var(--pine-soft);box-shadow:none;border-color:#0000;display:flex}.focus-ring{--p:0;flex:none;place-items:center;width:112px;height:112px;display:grid;position:relative}.focus-ring:before{content:"";background:conic-gradient(var(--pine) calc(var(--p) * 360deg), color-mix(in srgb, var(--pine) 14%, transparent) 0);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 47px,#000 48px);mask:radial-gradient(circle,#0000 47px,#000 48px)}.focus-time{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px;font-weight:600;position:relative}.focus-task{font-size:var(--text-lg);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.factors{margin:0;padding:0;list-style:none;display:grid}.factor{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line);display:flex}.factor:last-child{border-bottom:0}.factor-badge{border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.factor-badge.up{background:var(--pine-soft);color:var(--pine)}.factor-badge.down{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.factor-compare{flex:none;gap:4px;width:120px;display:grid}.factor-compare span{border-radius:3px;height:6px}.factor-compare .with{background:var(--pine)}.factor-compare .with.neg{background:var(--danger)}.factor-compare .without{background:var(--line-strong)}.pixels-scroll{overflow-x:auto}.pixels{gap:3px;min-width:620px;display:grid}.pixels-row{grid-template-columns:36px repeat(31,minmax(0,1fr));align-items:center;gap:3px;display:grid}.pixels-month,.pixels-daynum{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.pixels-daynum{text-align:center}.px{aspect-ratio:1;min-width:12px;box-shadow:inset 0 0 0 1px var(--line);background:0 0;border-radius:3px;display:inline-block}.px-none{box-shadow:none}.px-future{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--line) 45%, transparent)}.px-today{box-shadow:0 0 0 2px var(--sun)}.px[data-mood]{box-shadow:none}.px[data-mood="1"]{background:color-mix(in srgb, var(--pine) 22%, var(--surface-raised))}.px[data-mood="2"]{background:color-mix(in srgb, var(--pine) 38%, var(--surface-raised))}.px[data-mood="3"]{background:color-mix(in srgb, var(--pine) 58%, var(--surface-raised))}.px[data-mood="4"]{background:color-mix(in srgb, var(--pine) 80%, var(--surface-raised))}.px[data-mood="5"]{background:var(--pine)}.pixels-legend{gap:var(--space-4);flex-wrap:wrap;display:flex}.pixels-legend span{align-items:center;gap:6px;display:inline-flex}.pixels-legend .px{width:14px}.weekbars{gap:var(--space-3);grid-template-columns:repeat(7,1fr);display:grid}.weekbar{justify-items:center;gap:var(--space-1);display:grid}.weekbar-val{color:var(--ink-muted);font-size:12px;font-weight:600}.weekbar-track{border-bottom:1px solid var(--line);align-items:flex-end;width:100%;max-width:44px;height:120px;display:flex}.weekbar-track span{background:color-mix(in srgb, var(--pine) 55%, var(--surface-raised));border-radius:4px 4px 0 0;width:100%;min-height:2px}.weekbar-track span.best{background:var(--pine)}.weekbar-label{font-size:12px;font-weight:600}@media (width<=560px){.factor-compare{display:none}}.coach-thinking{align-items:center;gap:var(--space-3);padding:var(--space-6) 0;display:flex}.coach-note{font-family:var(--font-display);font-style:italic;font-size:var(--text-lg);color:var(--ink);padding-left:var(--space-3);border-left:3px solid var(--sun);line-height:1.45}.note-issues{padding-left:var(--space-4);color:var(--ink);margin:0}.coach-option{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken);cursor:pointer;align-items:flex-start;display:flex}.coach-option .check{margin-top:2px}.coach-blocks{gap:2px;margin:0;padding:0;list-style:none;display:grid}.coach-blocks li{align-items:center;gap:var(--space-3);padding:8px var(--space-3);border-radius:var(--radius-sm);background:var(--pine-soft);display:flex}.coach-blocks li.extra{border:1px dashed var(--line-strong);color:var(--ink-muted);background:0 0}.coach-time{width:44px;font-size:14px;font-weight:700}.coach-title{gap:var(--space-2);flex:1;align-items:center;min-width:0;font-weight:500;display:flex}.admin-tabs{z-index:4;padding:0 var(--space-6);border-bottom:1px solid var(--line);background:var(--surface-raised);scrollbar-width:none;gap:2px;display:flex;position:sticky;top:57px;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;align-items:center;gap:6px;padding:12px 14px;font-size:14px;font-weight:600;display:inline-flex}.admin-tabs button:hover{color:var(--ink)}.admin-tabs button.on{color:var(--pine);border-bottom-color:var(--pine)}.admin-tiles-3{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-targets{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.metric-bar{background:var(--surface-sunken);border-radius:5px;height:10px;display:block;position:relative;overflow:hidden}.metric-bar>span{background:var(--line-strong);border-radius:5px;position:absolute;top:0;bottom:0;left:0}.metric-bar>.metric-bar-in{background:var(--pine)}@media (width<=900px){.admin-tiles-3{grid-template-columns:1fr}.admin-tabs{padding:0 var(--space-3);top:53px}.admin-updated{display:none}}.admin-tile.tone-good b{color:var(--pine)}.admin-tile.tone-warn b{color:var(--sun-ink)}.admin-tile.tone-bad b{color:var(--danger)}.admin-tile b{font-size:26px}.status-dot{background:var(--line-strong);border-radius:50%;flex:none;width:10px;height:10px}.status-dot.ok{background:#2e9e6b;box-shadow:0 0 0 4px #2e9e6b2e}.status-dot.warn{background:var(--sun);box-shadow:0 0 0 4px color-mix(in srgb, var(--sun) 20%, transparent)}.status-dot.down{background:var(--danger);box-shadow:0 0 0 4px color-mix(in srgb, var(--danger) 18%, transparent)}.checks{margin:0;padding:0;list-style:none;display:grid}.check-row{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.check-row:last-child{border-bottom:0}.check-name{min-width:240px;font-weight:600}.check-detail{flex:1;min-width:160px}.event-list{margin:0;padding:0;list-style:none;display:grid}.event{gap:var(--space-3);border-bottom:1px solid var(--line);grid-template-columns:54px 80px 1fr auto;align-items:baseline;padding:8px 0;font-size:14px;display:grid}.event:last-child{border-bottom:0}.event-level{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-size:11px;font-weight:800}.event-level.warn{color:var(--sun-ink)}.event-level.error{color:var(--danger)}.event-kind{color:var(--ink-muted);font-size:12px;font-weight:700}.event-msg{overflow-wrap:anywhere;min-width:0}@media (width<=600px){.event{grid-template-columns:1fr auto}.event-level,.event-kind{display:none}}.funnel{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.funnel li{gap:var(--space-3);grid-template-columns:minmax(140px,220px) 1fr 56px 48px;align-items:center;display:grid}.funnel-label{font-size:14px;font-weight:600}.funnel-track{background:var(--surface-sunken);border-radius:6px;height:12px;overflow:hidden}.funnel-track span{background:var(--pine);border-radius:6px;height:100%;display:block}@media (width<=600px){.funnel li{grid-template-columns:1fr 48px}.funnel-track{grid-area:2/1/auto/-1}.funnel li>.small{display:none}}.row-link{cursor:pointer}.row-link:hover td,.row-link:focus td{background:var(--surface-sunken)}.side-panel{z-index:21;background:var(--surface-raised);border-left:1px solid var(--line);width:min(460px,100%);padding:var(--space-6);gap:var(--space-4);animation:panel-in .25s var(--ease);align-content:start;display:grid;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-24px 0 60px -20px #00000059}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}}.side-panel-head{gap:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.side-panel-title{overflow-wrap:anywhere;font-size:20px;line-height:1.3}.facts{gap:6px var(--space-3);grid-template-columns:120px 1fr;margin:0;font-size:14px;display:grid}.facts dt{color:var(--ink-muted)}.facts dd{margin:0}.usage-grid{gap:6px var(--space-3);grid-template-columns:1fr 1fr;margin-top:6px;font-size:14px;display:grid}.stars{color:#e9a23b;letter-spacing:1px;font-size:16px}.stars-off{color:var(--line-strong)}.review-admin-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.review-admin{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);display:grid}.announce-banner{align-items:center;gap:var(--space-3);padding:10px var(--space-4);border-radius:var(--radius-md);background:var(--pine);color:#fff;text-decoration:none;display:flex}.announce-banner .small{opacity:.9}.announce-banner .icon-btn{color:#fff}.announce-banner .icon-btn:hover{color:#fff;background:#ffffff26}.settings-follow{min-height:44px;color:var(--pine);text-underline-offset:2px;align-items:center;text-decoration:underline;display:inline-flex}.invite-card{margin-top:var(--space-4)}.invite-title{align-items:flex-start;gap:8px;display:flex}.invite-title svg{color:var(--pine);flex:none;margin-top:.3em}.invite-link-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.invite-link-row .input{flex:220px;min-width:0}.founder-mark{background:#1e5a4c;border-radius:50%;flex:none;place-items:center;display:inline-grid;overflow:hidden}.founder-mark svg{width:78%;height:78%}.founder-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.founder-head h2{margin:0}.founder-body{gap:var(--space-3);max-width:60ch;display:grid}.founder-body p{margin:0;line-height:1.7}.founder-body a{color:var(--pine);text-underline-offset:2px;text-decoration:underline}.founder-sign{color:var(--ink-muted);font-style:italic}#why{scroll-margin-top:88px}.whats-new{border-color:var(--pine);background:var(--pine-soft);margin:0 0 var(--space-6)}.whats-new>.row>svg{color:var(--pine);flex:none;margin-top:3px}.whats-new-list{gap:4px;margin:0;padding-left:18px;display:grid}.btn-witness-on{border-color:var(--pine);color:var(--pine);background:var(--pine-soft)}.witness-privacy{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken);grid-template-columns:1fr 1fr;font-size:14px;display:grid}.witness-privacy ul{color:var(--ink-muted);gap:4px;margin:6px 0 0;padding-left:18px;display:grid}@media (width<=520px){.witness-privacy{grid-template-columns:1fr}}.cheer-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.cheer-list li{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--line)}.cheer-list p{margin-top:2px}.witness-page{min-height:100%;padding:var(--space-4) var(--space-4) var(--space-16);background:linear-gradient(180deg, var(--pine-soft), var(--surface) 360px)}.witness-top{width:min(640px,100%);margin:0 auto var(--space-6);justify-content:space-between;align-items:center;display:flex}.witness-top a{text-decoration:none}.witness-card{width:min(640px,100%);margin:0 auto}.witness-goal{font-size:clamp(1.75rem,1.3rem + 2vw,2.5rem);line-height:1.12}.witness-check{border:2px solid var(--line-strong);color:#fff;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;display:grid}.witness-check.on{background:var(--pine);border-color:var(--pine)}.witness-stats{gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.witness-stats>div{gap:2px;display:grid}.witness-stats b{font-family:var(--font-display);font-size:22px;line-height:1.2}@media (width<=520px){.witness-stats{grid-template-columns:1fr}}.witness-idea{cursor:pointer}.witness-idea:hover{border-color:var(--pine);color:var(--pine)}.star-input{align-items:center;gap:2px;display:flex}.star-input button{min-width:44px;min-height:44px;color:var(--line-strong);cursor:pointer;transition:transform .12s var(--ease), color .12s var(--ease);background:0 0;border:0;padding:2px;font-size:32px;line-height:1}.star-input button.on{color:#e9a23b}.star-input button:hover{transform:scale(1.12)}.star-input .small{margin-left:var(--space-2)}.review-prompt{border-color:color-mix(in srgb, var(--sun) 50%, var(--line))}.announce-live{margin-bottom:var(--space-4);animation:drawer-in .3s var(--ease)}.announce-live:empty{display:none}.announce-link{align-items:center;gap:var(--space-3);min-width:0;color:inherit;flex:1;text-decoration:none;display:flex}.bell{position:relative}.bell-badge{background:var(--danger);color:#fff;text-align:center;min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface-raised);border-radius:9px;padding:0 5px;font-size:11px;font-weight:800;line-height:18px;position:absolute;top:2px;right:0}.nav-count{background:var(--danger);color:#fff;text-align:center;border-radius:10px;min-width:22px;height:20px;margin-left:auto;padding:0 6px;font-size:12px;font-weight:800;line-height:20px}.inbox-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.inbox-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--line);color:var(--ink);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);text-decoration:none;display:flex}.inbox-item:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.inbox-item.unread{border-color:color-mix(in srgb, var(--pine) 40%, var(--line));background:color-mix(in srgb, var(--pine-soft) 45%, var(--surface-raised))}.inbox-item.unread .inbox-text b:after{content:"";background:var(--pine);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:8px;display:inline-block}.inbox-ic{background:var(--pine-soft);width:38px;height:38px;color:var(--pine);border-radius:11px;flex:none;place-items:center;display:grid}.inbox-ic.kind-cheer,.inbox-ic.kind-streak{background:var(--sun-soft);color:var(--sun-ink)}.inbox-ic.kind-letter{color:#5b3f9a;background:#ede7f6}.inbox-text{flex:1;gap:2px;min-width:0;display:grid}.inbox-text .small{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.push-ask{align-items:center;gap:var(--space-4);border-color:color-mix(in srgb, var(--pine) 35%, var(--line));background:linear-gradient(135deg, var(--surface-raised), var(--pine-soft));flex-wrap:wrap;display:flex}.push-ask-text{flex:1;gap:2px;min-width:220px;display:grid}.push-ask-actions{flex:none}.install-ic{background:var(--pine);color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.install-guide{border-color:color-mix(in srgb, var(--pine) 35%, var(--line))}.install-steps{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.install-steps li{align-items:center;gap:var(--space-3);display:flex}.step-n{background:var(--pine-soft);width:26px;height:26px;color:var(--pine);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.ios-glyph{background:var(--surface-sunken);color:#0a84ff;vertical-align:middle;border-radius:8px;place-items:center;width:28px;height:28px;margin:0 2px;display:inline-grid}.ios-guide{gap:var(--space-4);grid-template-columns:96px 1fr;align-items:start;display:grid}.ios-guide>.btn{grid-column:1/-1;justify-self:start}.ios-guide-phone{border:3px solid var(--ink);background:var(--surface-sunken);border-radius:18px;width:96px;height:170px;padding:6px}.ios-guide-screen{background:var(--surface);border-radius:12px;height:100%;position:relative;overflow:hidden}.ios-guide-share{color:#0a84ff;border-radius:8px;place-items:center;width:28px;height:28px;transition:background .3s,transform .3s;display:grid;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.ios-guide-sheet{background:var(--surface-raised);border-radius:10px;gap:3px;padding:6px;font-size:8px;transition:bottom .4s;display:grid;position:absolute;bottom:-80px;left:4px;right:4px;box-shadow:0 -2px 10px #00000026}.ios-guide-sheet>span{border-radius:4px;justify-content:space-between;align-items:center;padding:3px 4px;display:flex}.ios-guide-home{opacity:0;place-content:center;justify-items:center;gap:4px;font-size:9px;transition:opacity .4s;display:grid;position:absolute;inset:0}.ios-guide-home img{border-radius:9px}.step-0 .ios-guide-share{background:#0a84ff2e;transform:translate(-50%)scale(1.15)}.step-1 .ios-guide-sheet{bottom:6px}.step-1 .ios-guide-add{background:#0a84ff2e;font-weight:700}.step-2 .ios-guide-home{opacity:1}.step-2 .ios-guide-share{opacity:0}.install-steps li.on .step-n{background:var(--pine);color:#fff}@media (prefers-reduced-motion:reduce){.ios-guide-share,.ios-guide-sheet,.ios-guide-home{transition:none}}@media (width<=380px){.ios-guide{grid-template-columns:1fr}.ios-guide-phone{display:none}}.letter-paper{background:#fffdf6;background-image:repeating-linear-gradient(transparent 0 31px, color-mix(in srgb, var(--line) 70%, transparent) 31px 32px);border-color:color-mix(in srgb, var(--sun) 30%, var(--line))}:root[data-theme=dark] .letter-paper{background-color:var(--surface-raised)}.letter-subject{font-family:var(--font-display);background:0 0;font-size:20px;font-weight:600}.letter-body{min-height:260px;font-family:var(--font-display);background:0 0;font-size:17px;line-height:32px}.letter-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));margin:0;padding:0;list-style:none;display:grid}.letter-sealed{padding:var(--space-6) var(--space-4) var(--space-4);border-radius:var(--radius-md);background:linear-gradient(160deg, #fff7ea, var(--surface-raised));border:1px solid color-mix(in srgb, var(--sun) 35%, var(--line));box-shadow:var(--shadow-1);gap:6px;display:grid;position:relative}.letter-sealed .seal{top:-12px;left:var(--space-4);color:#fff;background:#b23a2e;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;box-shadow:0 2px 6px #0003}.letter-del{width:28px;height:28px;position:absolute;top:6px;right:6px}.letter-head{all:unset;cursor:pointer;gap:2px;display:grid}.letter-text{white-space:pre-wrap;font-family:var(--font-display);font-size:17px;line-height:1.7}.letter-paper .letter-subject,.letter-paper .letter-body{box-shadow:none;background:0 0;border-color:#0000;padding-left:0;padding-right:0}.letter-paper .letter-subject:focus,.letter-paper .letter-body:focus{border-bottom-color:var(--pine);outline:none}.route-enter{animation:route-in .32s var(--ease) both}@keyframes route-in{0%{opacity:0;transform:translateY(8px)}}.btn,.chip,.icon-btn,.tabbar a,.fab{-webkit-user-select:none;user-select:none}.btn:active:not(:disabled){transform:translateY(1px)scale(.985)}.icon-btn:active{transform:scale(.92)}.chip{transition:background .15s var(--ease), color .15s var(--ease), border-color .15s var(--ease), transform .12s var(--ease)}button.chip:active{transform:scale(.96)}.check:checked{animation:.28s cubic-bezier(.2,.9,.3,1.4) check-pop}@keyframes check-pop{40%{transform:scale(1.18)}}.check:checked:after{animation:check-draw .2s 50ms var(--ease) both}@keyframes check-draw{0%{opacity:0;transform:rotate(-45deg)translate(1px,-1px)scale(.4)}}.list-item .title{transition:color .2s var(--ease)}.list-item,.inbox-item,.cheer-list li{animation:item-in .28s var(--ease) both}@keyframes item-in{0%{opacity:0;transform:translateY(4px)}}a.card,.lp-feature,.letter-sealed{transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease)}.letter-sealed:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.modal-backdrop{animation:fade-in .2s var(--ease) both}.modal{animation:.26s cubic-bezier(.2,.9,.3,1.1) both modal-in}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}.goal-path .sun.on{animation:sun-glow var(--dur-path) var(--ease-out) 1}@keyframes sun-glow{50%{box-shadow:0 0 0 10px var(--sun-soft)}}@media (width<=900px){.tabbar a{transition:color .2s var(--ease);position:relative}.tabbar a.active:before{content:"";background:var(--pine-soft);z-index:-1;width:44px;height:30px;animation:pill-in .25s var(--ease);border-radius:15px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.tabbar a svg{position:relative}.tabbar{isolation:isolate}}@keyframes pill-in{0%{opacity:0;transform:translate(-50%)scale(.6)}}.app-loader{gap:var(--space-4);align-content:center;justify-items:center;display:grid}.app-loader svg{animation:1.6s ease-in-out infinite breathe}@keyframes breathe{50%{transform:scale(1.06)}}.loader-bar{background:var(--line);border-radius:2px;width:96px;height:4px;position:relative;overflow:hidden}.loader-bar:after{content:"";background:var(--pine);width:40%;animation:loader 1.1s var(--ease) infinite;border-radius:2px;position:absolute;inset:0}@keyframes loader{0%{transform:translate(-100%)}to{transform:translate(250%)}}.confetti{z-index:80;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.fab{display:none}@media (width<=900px){.fab{right:18px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:11;background:var(--pine);width:56px;height:56px;color:var(--on-pine);cursor:pointer;transition:transform .15s var(--ease);border:0;border-radius:18px;place-items:center;display:grid;position:fixed;box-shadow:0 10px 24px -8px #1e5a4cb3}.fab:active{transform:scale(.92)}:is(body:has(input:focus,textarea:focus,select:focus,[contenteditable]:focus) .fab,body:has(.sheet-backdrop,.modal-backdrop,.chat-backdrop) .fab){display:none}}.sidebar-add{justify-content:flex-start;gap:var(--space-2)}.sidebar-add kbd{font:700 11px/1 var(--font-sans);background:#ffffff2e;border-radius:5px;margin-left:auto;padding:3px 6px}.sheet-backdrop{z-index:50;animation:fade-in .2s var(--ease) both;background:#0c121173;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{gap:var(--space-4);width:100%;max-width:560px;padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));background:var(--surface-raised);border-radius:22px 22px 0 0;animation:.3s cubic-bezier(.2,.9,.3,1) both sheet-in;display:grid;box-shadow:0 -16px 40px -12px #00000059}@keyframes sheet-in{0%{opacity:0;transform:translateY(32px)}}@media (width>=901px){.sheet-backdrop{align-items:flex-start;padding-top:14vh}.sheet{padding:var(--space-6);border-radius:20px;animation-name:modal-in}.sheet-handle{display:none}}.sheet-handle{background:var(--line-strong);border-radius:3px;justify-self:center;width:40px;height:5px}.quick-input{width:100%;font-family:var(--font-display);color:var(--ink);padding:var(--space-2) 0;background:0 0;border:0;outline:none;font-size:22px;font-weight:600}.quick-input::placeholder{color:var(--ink-muted);opacity:.6}.quick-opts{gap:var(--space-2)}.quick-opts .chip{cursor:pointer;border:1px solid #0000}.quick-sep{background:var(--line);width:1px;height:20px}.quick-time{gap:6px}.quick-time input{font:inherit;color:inherit;background:0 0;border:0;width:84px}@media (width<=900px){.quick-hint{display:none}}@media (prefers-reduced-motion:reduce){.route-enter,.modal,.sheet,.toast,.list-item,.inbox-item{animation:none!important}}.code-input{letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.code-boxes{width:100%;max-width:calc(var(--boxes) * 56px);position:relative}.code-boxes-row{grid-template-columns:repeat(var(--boxes), minmax(0, 1fr));gap:8px;display:grid}.code-box{border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface-raised);font-variant-numeric:tabular-nums;height:58px;color:var(--ink);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);place-items:center;font-size:26px;font-weight:700;display:grid}.code-boxes-input{opacity:0;color:#0000;caret-color:#0000;z-index:1;background:0 0;border:0;width:100%;height:100%;padding:0;font-size:16px;position:absolute;inset:0}.code-boxes-input:focus-visible+.code-boxes-row .code-box.current,.code-boxes-input:focus+.code-boxes-row .code-box.current{border-color:var(--pine);box-shadow:0 0 0 3px color-mix(in srgb, var(--pine) 22%, transparent)}.code-boxes.is-invalid .code-box{border-color:var(--danger)}.code-boxes.is-disabled .code-box{opacity:.6}@media (width<=380px){.code-box{height:50px;font-size:22px}.code-boxes-row{gap:6px}}.code-actions{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.parse-chips{margin-top:var(--space-2);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.parse-undo{color:var(--ink-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:2px 4px;text-decoration:underline}.parse-undo:hover{color:var(--ink)}.sheet .parse-chips{margin-top:0}.stepper{align-items:center;gap:2px;display:inline-flex}.stepper .icon-btn{width:44px;height:44px;font-size:18px;line-height:1}.stepper .icon-btn:disabled{opacity:.35;cursor:default}.dump-list{max-height:min(52vh,460px);margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);overflow:auto}.dump-item{align-items:flex-start}.dump-item .check{margin-top:10px}.dump-item.off .dump-main{opacity:.45}.dump-main{flex:1;gap:6px;min-width:0;display:grid}.dump-title{font-weight:600}.dump-kind{width:auto;min-width:92px;height:auto;padding-top:4px;padding-bottom:4px;font-size:13px}.dump-date .input{width:auto;height:auto;padding-top:4px;padding-bottom:4px;font-size:13px}.goal-pace{color:var(--ink-muted)}.goal-pace.behind{color:var(--ink);font-weight:600}.goal-pace.reached,.goal-pace.ahead{color:var(--success)}.sync-note{border-radius:var(--radius-md);background:var(--sun-soft);color:var(--sun-ink);align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.sync-status{align-items:center;gap:8px;padding:0 12px;display:inline-flex}.topbar .sync-status{padding:0 6px}.sync-dot{background:var(--success);border-radius:50%;flex:none;width:8px;height:8px}.sync-saving .sync-dot{background:var(--sun);animation:1.2s ease-in-out infinite sync-pulse}.sync-offline .sync-dot{background:var(--danger)}@keyframes sync-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.sync-saving .sync-dot{animation:none}}@media (width<=480px){.onboarding-actions .btn-lg{flex:100%}}.first-week{gap:6px;margin:0;padding:0;list-style:none;display:grid}.first-week li{gap:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);grid-template-columns:56px 1fr;align-items:baseline;padding:8px 12px;display:grid}.lite-bar{align-items:center;gap:var(--space-3);padding:10px var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--sun-soft);color:var(--sun-ink);flex-wrap:wrap;font-size:14px;font-weight:600;display:flex}.lite-bar span{min-width:200px}.plan-adds{gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.plan-adds li{align-items:flex-start;gap:8px;display:flex}.plan-adds svg{color:var(--pine);flex:none;margin-top:3px}.plan-table-wrap{margin-top:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.plan-table{border-collapse:collapse;width:100%;font-size:15px}.plan-table th,.plan-table td{padding:12px var(--space-3);text-align:left;vertical-align:top;border-top:1px solid var(--line)}.plan-table thead th,.plan-table thead td{border-top:0}.plan-table thead th{width:30%;font-size:16px}.plan-table thead th span{color:var(--ink-muted);font-size:13px;font-weight:500;display:block}.plan-table tbody th{font-weight:500}.plan-table td svg{color:var(--pine)}.plan-table th:last-child,.plan-table td:last-child{background:color-mix(in srgb, var(--pine) 6%, transparent)}@media (width<=400px){.plan-table{font-size:14px}.plan-table th,.plan-table td{padding:10px 8px}}.update-bar{align-items:center;gap:var(--space-3);padding:10px var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--line);font-size:14px;font-weight:600;display:flex}.btn-link{font:inherit;color:var(--pine);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline;display:inline}.btn-link:focus-visible{outline:2px solid var(--pine);outline-offset:2px;border-radius:4px}.tour-card{text-align:center;justify-items:center;gap:var(--space-3);align-content:start;min-height:210px;display:grid}.tour-card h3{margin:0;font-size:20px;line-height:28px}.tour-ic{background:color-mix(in srgb, var(--pine) 14%, var(--surface));width:56px;height:56px;color:var(--pine);border-radius:16px;place-items:center;display:grid}.tour-dots{justify-content:center;gap:6px;display:flex}.tour-dots span{background:var(--line);width:6px;height:6px;transition:width .2s var(--ease), background .2s;border-radius:3px}.tour-dots span.on{background:var(--pine);width:18px}.menu-wrap{display:inline-flex;position:relative}.menu-wrap>.icon-btn{color:var(--ink)}.menu-dots{stroke-width:3.6px}.menu{z-index:var(--z-overlay);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);min-width:180px;box-shadow:var(--shadow-2);transform-origin:100% 0;animation:menu-in var(--dur) var(--ease-out) both;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}.menu-item{align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;font-weight:600;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-sunken,var(--pine-soft));outline:none}.menu-item.danger{color:var(--danger)}.tap-44,.btn.tap-44,.btn-sm.tap-44{justify-content:center;min-width:44px;min-height:44px}.hit-44{position:relative}.hit-44:after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sleep-chips{gap:var(--space-2);padding-block:9px}@media (width<=360px){.money-table,.money-table tbody{width:100%;display:block}.money-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.money-table tr{column-gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto 44px;grid-template-areas:"date cat amt del""note note note del";align-items:center;display:grid}.money-table td{border:0;min-width:0;padding:0;display:block}.money-table .mt-date{grid-area:date;font-weight:600}.money-table .mt-cat{text-overflow:ellipsis;white-space:nowrap;grid-area:cat;overflow:hidden}.money-table .mt-amt{text-align:right;grid-area:amt}.money-table .mt-note{font-size:var(--text-sm);overflow-wrap:anywhere;grid-area:note}.money-table .mt-note:empty{display:none}.money-table .mt-del{grid-area:del;width:auto!important}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-4);z-index:var(--z-toast);border-radius:var(--radius-md);background:var(--pine);color:var(--on-pine);padding:10px 16px;font-weight:700;text-decoration:none;position:absolute;top:-60px}.skip-link:focus{top:var(--space-4)}.btn{min-height:var(--control-md);transition-duration:var(--dur-fast)}.btn-sm{min-height:var(--control-sm)}.btn-lg{min-height:var(--control-lg)}.btn:focus-visible,.icon-btn:focus-visible,.chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:color-mix(in srgb, var(--danger) 45%, var(--line));background:var(--danger-soft)}.btn-danger-solid{background:var(--danger);border-color:var(--danger);color:#fff}:root[data-theme=dark] .btn-danger-solid{color:#1b0a08}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-danger-solid{color:#1b0a08}}.btn-danger-solid:hover{filter:brightness(1.06);border-color:var(--danger)}.btn-text{min-height:auto;box-shadow:none;color:var(--pine);text-underline-offset:3px;background:0 0;border:0;padding:2px 4px;text-decoration:underline}.btn-text:hover{box-shadow:none;color:var(--ink)}.btn[aria-busy=true]{cursor:progress;pointer-events:none;position:relative}.btn[aria-busy=true]:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}.icon-btn{flex:none}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{color:var(--ink-muted);background:0 0}.input,.textarea,.select{min-height:var(--control-md);border-radius:var(--radius-md)}.input:disabled,.textarea:disabled,.select:disabled{opacity:.6;cursor:not-allowed;background:var(--surface-sunken)}.input::placeholder,.textarea::placeholder{opacity:.85}.select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--ink-muted) 50%), linear-gradient(135deg, var(--ink-muted) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}.textarea{field-sizing:content;max-height:60vh}.field>.label{color:var(--ink)}.field-hint{font-size:var(--text-sm);color:var(--ink-muted)}.field-error{font-size:var(--text-sm);color:var(--danger);align-items:flex-start;gap:6px;font-weight:600;display:flex}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus,.textarea[aria-invalid=true]:focus{outline-color:var(--danger)}.req{color:var(--danger);margin-left:2px}.char-count{font-size:var(--text-xs);color:var(--ink-muted);font-variant-numeric:tabular-nums}.char-count.near{color:var(--warning);font-weight:700}.input[type=date],.input[type=time]{appearance:none;align-items:center;display:inline-flex}.input[type=date]::-webkit-date-and-time-value{text-align:left}.input[type=time]::-webkit-date-and-time-value{text-align:left}.input[type=number]{appearance:textfield}.input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.money-field{min-width:0;display:block;position:relative}.money-field>span{color:var(--ink-muted);pointer-events:none;font-weight:600;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.money-field>.input{padding-left:28px}@media (width<=900px){.input,.textarea,.select{font-size:max(16px,1em)}}.switch{appearance:none;background:var(--line-strong);cursor:pointer;width:44px;height:26px;transition:background var(--dur) var(--ease);border-radius:13px;flex:none;margin:0;position:relative}.switch:after{content:"";width:20px;height:20px;transition:transform var(--dur) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch:checked:after{transform:translate(18px)}.switch:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.setting-row{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line);cursor:pointer;display:flex}.setting-row:last-child{border-bottom:0}.setting-row>span{flex:1;gap:2px;min-width:0;display:grid}.modal-backdrop{z-index:var(--z-overlay)}.modal{overscroll-behavior:contain;outline:none;max-height:min(90vh,90dvh)}.modal-sm{width:min(420px,100%)}.modal-head h2{font-size:22px;line-height:28px}.modal-actions{padding-top:var(--space-2)}@media (width<=600px){.modal-backdrop{place-items:end center;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;padding:var(--space-6) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));max-height:92dvh;animation-name:sheet-in}.modal-actions{bottom:calc(-1 * var(--space-6));margin:0 calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);background:var(--surface-raised);position:sticky}}.loading-block{place-items:center;min-height:140px;display:grid}.notice{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);align-items:flex-start;display:flex}.notice-error{background:var(--danger-soft);color:var(--danger)}.notice-success{background:var(--success-soft);color:var(--success)}.notice-info{background:var(--pine-soft);color:var(--pine)}.notice>svg{flex:none;margin-top:2px}.toast{z-index:var(--z-toast)}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--line) 50%, var(--surface-sunken) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.page-head p.muted{max-width:62ch}.list-item .title{overflow-wrap:anywhere}.chip{white-space:nowrap}.card,.modal{overflow-wrap:break-word}.tabbar a{align-content:center;min-height:48px}.tabbar a:focus-visible{outline-offset:-2px}@media (width>=1440px){.page{max-width:1120px}.main{padding-left:var(--space-16);padding-right:var(--space-16)}}@media (width>=640px) and (width<=900px){.grid-2.tablet-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=360px){.main{padding-left:var(--space-3);padding-right:var(--space-3)}.card{padding:var(--space-4)}.tabbar a{font-size:10px}h1{font-size:28px;line-height:34px}}.list-item.done{opacity:.92}.list-item{transition:opacity var(--dur) var(--ease)}.task-open{all:unset;cursor:pointer;border-radius:var(--radius-sm);overflow-wrap:anywhere;flex:1;min-width:0}.task-open:hover{color:var(--pine)}.task-open:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.list-item.done .task-open{color:var(--ink-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.main:focus{outline:none}.topbar>.chip{text-overflow:ellipsis;flex:0 auto;min-width:0;display:block;overflow:hidden}.topbar>.icon-btn{flex:none}@media (width<=420px){.quick-row{flex-wrap:wrap}.quick-row>.input:first-child{flex:100%}.quick-row>.quick-time-input{flex:auto;width:auto!important}}.input,.textarea,.select{border-color:var(--control-border)}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-muted)}.switch{background:var(--control-border)}.switch:checked{background:var(--pine)}@media (width>=901px){.today-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}.card:has(>form>.quick-row){container-type:inline-size}@container (width<=400px){.quick-row{flex-wrap:wrap}.quick-row>.input:first-child{flex:100%}.quick-row>.quick-time-input{flex:auto;width:auto!important}}.modal{max-height:calc(100dvh - 32px)}.modal-actions{bottom:calc(-1 * var(--space-6));z-index:1;margin:0 calc(-1 * var(--space-6)) calc(-1 * var(--space-6));padding:var(--space-3) var(--space-6) var(--space-6);background:var(--surface-raised);border-top:1px solid var(--line);position:sticky}@media (width<=600px){.modal{max-height:calc(100dvh - env(safe-area-inset-top) - 12px)}.modal-actions{margin:0 calc(-1 * var(--space-4)) calc(-1 * (var(--space-6) + env(safe-area-inset-bottom)));padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.modal-backdrop:has(>.modal-sm){padding:var(--space-4);place-items:center}.modal.modal-sm{border-radius:var(--radius-lg);padding-bottom:var(--space-6);max-height:calc(100dvh - 32px);animation-name:modal-in}.modal-sm .modal-actions{margin-bottom:calc(-1 * var(--space-6));padding-bottom:var(--space-4)}}@media (height<=520px){.modal{padding-top:var(--space-4);gap:var(--space-3);max-height:calc(100dvh - 8px)}.modal-backdrop{padding:4px}.modal-head h2{font-size:18px;line-height:24px}}.sheet{outline:none;max-height:calc(100dvh - 24px);overflow-y:auto}.side-panel:focus,.lp-drawer:focus,.modal:focus{outline:none}.sidebar-search{align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-sm);margin-top:calc(-1 * var(--space-3));padding:0 var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-muted);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);font-size:14px;display:flex}.sidebar-search:hover{border-color:var(--ink-muted);color:var(--ink)}.sidebar-search span{text-align:left;flex:1}.sidebar-search kbd,.search-keys kbd{font:600 11px/1 var(--font-sans);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink-muted);border-radius:4px;padding:3px 5px}.search-box{align-items:center;display:flex;position:relative}.search-box>svg{color:var(--ink-muted);pointer-events:none;position:absolute;left:12px}.search-box>.input{padding-left:38px;padding-right:40px;font-size:17px}.search-box>.icon-btn{position:absolute;right:4px}.search-box>.input::-webkit-search-cancel-button{display:none}.search-results{min-height:120px;max-height:min(56vh,520px);margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);overscroll-behavior:contain;gap:2px;display:grid;overflow-y:auto}.search-group{z-index:1;padding:var(--space-3) var(--space-2) var(--space-1);background:var(--surface-raised);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:11px;font-weight:700;position:sticky;top:0}.search-item{align-items:center;gap:var(--space-3);padding:10px var(--space-2);border-radius:var(--radius-md);cursor:pointer;display:flex}.search-item.on{background:var(--pine-soft)}.search-item.on .search-ic{background:var(--pine);color:var(--on-pine)}.search-ic{background:var(--surface-sunken);width:30px;height:30px;color:var(--ink-muted);border-radius:9px;flex:none;place-items:center;display:grid}.search-text{gap:1px;min-width:0;display:grid}.search-text b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.search-text .small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-hint,.search-empty{padding:var(--space-6) var(--space-2);text-align:center;gap:var(--space-3);color:var(--ink-muted);justify-items:center;display:grid}.search-more{padding:4px var(--space-2) var(--space-2)}@media (width<=600px){.search-results{max-height:none}}.flash{animation:flash 1.6s var(--ease)}@keyframes flash{0%,40%{box-shadow:0 0 0 3px var(--sun)}to{box-shadow:var(--shadow-1)}}.filter-bar{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.filter-bar>.select{flex:0 auto;width:auto;min-width:0}.filter-search{flex:220px;min-width:0}.filter-search>.input{font-size:inherit;padding-right:var(--space-3)}@media (width<=600px){.filter-bar>.select{flex:1 1 calc(50% - var(--space-2))}}.btn-apple{color:#fff;background:#000;border-color:#000}.btn-apple:hover{background:#1a1a1a;border-color:#1a1a1a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-apple{color:#000;background:#fff;border-color:#fff}}:root[data-theme=dark] .btn-apple{color:#000;background:#fff;border-color:#fff}.sidebar-chat{align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-sm);margin-top:calc(-1 * var(--space-4));padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--sun-soft);color:var(--sun-ink);cursor:pointer;transition:filter var(--dur-fast) var(--ease);border:1px solid #0000;font-size:14px;font-weight:600;display:flex}.sidebar-chat:hover{filter:brightness(.97)}.chat-btn{color:var(--sun-ink)}.chat-backdrop{z-index:var(--z-overlay);animation:fade-in var(--dur) var(--ease) both;background:#0c121159;justify-content:flex-end;display:flex;position:fixed;inset:0}.chat-panel{background:var(--surface-raised);border-left:1px solid var(--line);width:min(440px,100%);height:100dvh;animation:panel-in var(--dur-slow) var(--ease-out) both;outline:none;flex-direction:column;display:flex;box-shadow:-24px 0 60px -24px #00000059}.chat-head{align-items:center;gap:var(--space-3);padding:var(--space-4);padding-top:calc(var(--space-4) + env(safe-area-inset-top));border-bottom:1px solid var(--line);display:flex}.chat-head h2{font-size:20px;line-height:1.2}.chat-head-text{flex:1;min-width:0;display:grid}.chat-avatar{background:var(--sun-soft);width:36px;height:36px;color:var(--sun-ink);border-radius:50%;flex:none;place-items:center;display:grid}.chat-log{overscroll-behavior:contain;padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-welcome{gap:var(--space-3);color:var(--ink-muted);display:grid}.chat-suggestions{gap:var(--space-2);flex-wrap:wrap;display:flex}.chat-suggestions .chip{white-space:normal;text-align:left;cursor:pointer;min-height:32px}.chat-msg{gap:var(--space-2);max-width:88%;display:grid}.chat-msg.user{align-self:flex-end}.chat-msg.assistant{align-self:flex-start}.chat-bubble{overflow-wrap:anywhere;border-radius:16px;gap:8px;padding:10px 14px;line-height:1.5;display:grid}.chat-msg.user .chat-bubble{background:var(--pine);color:var(--on-pine);border-bottom-right-radius:4px}.chat-msg.assistant .chat-bubble{background:var(--surface-sunken);color:var(--ink);border-bottom-left-radius:4px}.chat-msg.crisis .chat-bubble{background:var(--danger-soft);color:var(--ink);border:1px solid color-mix(in srgb, var(--danger) 40%, transparent)}.chat-facts{border-top:1px solid var(--line);gap:4px;padding-top:8px;display:grid}.chat-facts .label{font-size:12px}.chat-actions{gap:6px;margin:0;padding:0;list-style:none;display:grid}.chat-actions li{align-items:center;gap:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);padding:8px 10px;display:flex}.chat-action-ic{background:var(--pine-soft);width:28px;height:28px;color:var(--pine);border-radius:8px;flex:none;place-items:center;display:grid}.chat-action-text{flex:1;min-width:0;display:grid}.chat-action-text b{overflow-wrap:anywhere;font-size:14px;font-weight:600}.chat-typing{align-items:center;gap:4px;min-height:20px;display:flex}.chat-typing span{background:var(--ink-muted);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typing}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-input{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);align-items:flex-end;display:flex}.chat-input .textarea{resize:none;min-height:44px;max-height:140px;padding-top:10px;line-height:22px}.chat-input .btn svg{transform:none}.chat-foot{padding:0 var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));gap:4px;display:grid}.switch-sm{width:34px;height:20px}.switch-sm:after{width:14px;height:14px}.switch-sm:checked:after{transform:translate(14px)}@media (width<=600px){.chat-panel{border-left:0;width:100%}.chat-msg{max-width:92%}}.task-main{flex:1;gap:3px;min-width:0;display:grid}.task-main .task-open{box-sizing:border-box;justify-self:stretch;max-width:100%;min-height:44px;margin-block:-10px;padding-block:10px;display:block}.task-meta{align-items:center;gap:4px var(--space-2);flex-wrap:wrap;display:flex}.task-meta .chip{min-height:22px;font-size:var(--text-xs);padding-block:0}.task-options>summary{cursor:pointer;color:var(--ink-muted);align-items:center;min-height:32px;font-weight:600;display:flex}.task-options>summary:hover{color:var(--pine)}.task-options[open]>summary{margin-bottom:var(--space-2)}.week-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(290px,1fr));align-items:start;display:grid}.week-day{gap:var(--space-2);padding:var(--space-4);transition:box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);display:grid}.week-day.is-today{border-color:var(--sun);box-shadow:0 0 0 1px var(--sun) inset}.week-day.is-past{background:var(--surface)}.week-day.drop-on{border-color:var(--pine);box-shadow:0 0 0 2px var(--pine) inset}.week-day-head{align-items:center;gap:var(--space-2);display:flex}.week-day-head h2{font-size:var(--text-lg)}.week-day-head h2 .muted{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600}.week-day .list-item{padding:var(--space-2) 0}.week-day .list-item[draggable=true]{cursor:grab}.week-empty{padding:var(--space-2) 0;margin:0}.week-add{justify-self:start}.week-someday{border-style:dashed}.move-select{width:92px;min-height:var(--control-sm);font-size:var(--text-sm);flex:none;padding-block:0}@media (width<=400px){.move-select{width:78px;padding-inline:8px 22px}}.review-stats{grid-template-columns:repeat(auto-fit, minmax(min(130px, calc(50% - var(--space-3))), 1fr));gap:var(--space-3);display:grid}.review-stats .stat{padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-sunken);gap:2px;display:grid}.review-stats .stat b{font-size:var(--text-h3)}.review-list{font-size:var(--text-sm);gap:6px;margin:0;padding:0;list-style:none;display:grid}.review-list li{gap:var(--space-2);overflow-wrap:anywhere;align-items:baseline;display:flex}.review-list li>svg{color:var(--pine);flex:none;transform:translateY(2px)}.review-habit{gap:4px var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.review-habit .progress{grid-column:1/-1}.energy-check{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--line);flex-wrap:wrap;display:flex}.calm-focus{z-index:var(--z-overlay);padding:calc(var(--space-4) + env(safe-area-inset-top)) var(--space-6) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--surface);animation:route-in var(--dur-slow) var(--ease-out);outline:none;grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.calm-top{align-items:center;gap:var(--space-3);display:flex}.calm-sound{color:var(--ink-muted);cursor:pointer;gap:8px}.calm-center{place-self:center;gap:var(--space-3);text-align:center;justify-items:center;width:min(640px,100%);display:grid}.calm-task{overflow-wrap:anywhere;font-size:clamp(1.75rem,1.2rem + 2.4vw,2.75rem);line-height:1.15}.calm-actions{margin-top:var(--space-3);justify-content:center}.breath{justify-items:center;gap:var(--space-2);display:grid}.breath-dot{background:var(--pine-soft);border:2px solid var(--pine);border-radius:50%;width:56px;height:56px;transition:transform 4s ease-in-out;transform:scale(.7)}.breath-dot.in{transition-duration:4s;transform:scale(1)}.breath-dot.out{transition-duration:6s;transform:scale(.7)}@media (prefers-reduced-motion:reduce){.breath-dot,.breath-dot.in,.breath-dot.out{transition:none;transform:none}}.dictate{align-items:center}.dictate .small{flex:1;min-width:200px}.rec-dot{background:currentColor;border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite rec}@keyframes rec{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.rec-dot{animation:none}}.dump-extra{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.dump-extra legend{margin-bottom:var(--space-2);padding:0}label.dump-extra{gap:var(--space-2);align-items:center;display:flex}.quiet-fields{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken)}.cal-link>.input{min-width:0;font-size:var(--text-sm);flex:1}.cal-link>.btn{flex:none}.cal-help>summary{cursor:pointer;color:var(--ink-muted);align-items:center;min-height:32px;font-weight:600;display:flex}.cal-help>summary:hover{color:var(--pine)}.cal-help ol{margin:var(--space-2) 0;gap:6px;padding-left:1.25em;display:grid}.month-grid{padding:var(--space-3);gap:4px;display:grid}.month-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.month-head span{text-align:center;padding-bottom:4px}.month-head abbr{text-decoration:none}.month-day{all:unset;box-sizing:border-box;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;min-height:64px;transition:border-color var(--dur) var(--ease);align-content:space-between;padding:6px;display:grid}.month-day:hover{border-color:var(--pine)}.month-day:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.month-day.out{color:var(--ink-muted);background:0 0;border-style:dashed}.month-day.is-today{border-color:var(--sun);box-shadow:0 0 0 1px var(--sun) inset}.month-num{font-variant-numeric:tabular-nums;font-weight:700}.month-count{color:var(--ink-muted);font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.month-dot{border:2px solid var(--pine);border-radius:50%;width:8px;height:8px}.month-dot.done{background:var(--pine)}@media (width<=480px){.month-grid{padding:var(--space-2);gap:3px}.month-row{gap:3px}.month-day{min-height:52px;padding:4px}}h2.h3{font-size:var(--text-h3);letter-spacing:-.01em;line-height:1.3}.card-title,.card-head h2{font-size:var(--text-lg);letter-spacing:-.01em;line-height:1.35}.wheel-history{margin:0;padding:0;list-style:none;display:grid}.wheel-history li{gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--line);display:grid}.wheel-history li:last-child{border-bottom:0}.wheel-history-date{gap:4px var(--space-3);flex-wrap:wrap;align-items:baseline;display:flex}.wheel-history-scores{gap:4px var(--space-4);flex-wrap:wrap;display:flex}@media (width<=900px){.money-totals{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.money-totals .stat{padding:var(--space-3)}.money-totals .stat b{overflow-wrap:anywhere;font-size:clamp(1rem,4.6vw,1.5rem)}}@media (width<=640px){.pixels{gap:2px;min-width:0}.pixels-row{grid-template-columns:26px repeat(31,minmax(0,1fr));gap:2px}.pixels-month,.pixels-daynum{font-size:10px}.pixels-row .px{border-radius:2px;min-width:0}.pixels-daynum{white-space:nowrap;overflow:visible}}.back-row{margin-bottom:var(--space-2)}.card-head>a.small,.card-foot a,.stack>a.small{align-items:center;min-height:32px;display:inline-flex}.stack>a.small{justify-self:start}.card-foot{column-gap:var(--space-4)}.slider{min-height:24px}.topbar{min-width:0;max-width:100vw}.topbar>*{min-width:0}@media (width<=479px){.topbar{padding-inline:var(--space-3);gap:4px}.topbar>.topbar-search:not(.topbar-search-free){display:none}}.topbar-brand{border-radius:var(--radius-sm);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}@media (width<=359px){.topbar:has(.topbar-trial) .logo .wordmark{display:none}}@media (width>=480px){.hub-search{display:none}}.shell{overflow-x:clip}button.hub-card{border:1px solid var(--line);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}.topbar>.topbar-trial{white-space:nowrap;flex:none;align-items:center;min-height:32px;text-decoration:none;display:inline-flex;overflow:visible}.earlier{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line);display:grid}.earlier>summary{justify-content:space-between;align-items:center;gap:var(--space-2);cursor:pointer;min-height:40px;list-style:none;display:flex}.earlier>summary::-webkit-details-marker{display:none}.earlier>summary>svg{color:var(--ink-muted);transition:transform var(--dur) var(--ease);transform:rotate(90deg)}.earlier[open]>summary>svg{transform:rotate(-90deg)}.earlier>p{margin:0}:is(body:has(.chat-panel) .toast,body:has(.import-bar) .toast,body:has(.calm-focus) .toast){top:calc(var(--space-4) + env(safe-area-inset-top));animation-name:toast-in-top;bottom:auto}@keyframes toast-in-top{0%{opacity:0;transform:translate(-50%,-12px)scale(.96)}}.dropzone{justify-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);border:2px dashed var(--control-border);border-radius:var(--radius-lg);background:var(--surface);text-align:center;cursor:pointer;color:var(--ink-muted);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);display:grid}.dropzone b{color:var(--ink)}.dropzone:hover,.dropzone.on,.dropzone:focus-within{border-color:var(--pine);background:var(--pine-soft)}.import-files{gap:4px;margin:0;padding:0;list-style:none;display:grid}.import-files li{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--surface-sunken);padding:6px 10px;display:flex}.import-files li>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.howto{gap:var(--space-3);margin:0;display:grid}.howto dt{font-weight:600}.howto dd{margin:2px 0 0}.import-report{font-size:var(--text-sm);gap:4px;margin:0;list-style:none;display:grid}.import-preview{white-space:pre-wrap;max-height:220px;padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-sunken);font-size:12px;overflow:auto}.import-rules{gap:var(--space-2);display:grid}.import-tabs{flex-wrap:wrap;max-width:100%}.import-tabs .tnum{opacity:.7;margin-left:2px}.import-list{margin:0;padding:0;list-style:none;display:grid}.import-item{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line);align-items:flex-start;display:flex}.import-item:last-child{border-bottom:0}.import-item>.check{margin-top:11px}.import-item>.icon-btn{margin-top:4px}.import-item.off .import-main{opacity:.55}.import-main{flex:1;gap:6px;min-width:0;display:grid}.import-fields{flex-wrap:wrap}.import-fields>.input:first-child{flex:220px}.import-fields>.select{flex:none;width:auto}.import-date{flex:none;width:160px!important}.import-meta{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.import-meta>span{overflow-wrap:anywhere}.import-warning{color:var(--warning);align-items:flex-start;gap:6px;display:flex}.import-warning svg{flex:none;margin-top:3px}.import-list-head{margin-bottom:var(--space-2)}.import-bar{z-index:2;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-2);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.import-bar-count{min-width:0}@media (width<=900px){.import-bar{bottom:calc(72px + env(safe-area-inset-bottom))}}@media (width<=600px){.import-date{flex:100%;width:100%!important}.import-fields>.select{flex:auto}}.import-done{margin-top:var(--space-4);text-align:center;padding:var(--space-10) var(--space-6);justify-items:center}.import-done-ic{background:var(--success-soft);width:56px;height:56px;color:var(--success);border-radius:50%;place-items:center;display:grid}.guarantee{margin:var(--space-2) 0 0;color:var(--ink-muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.guarantee svg{color:var(--pine);flex:none}.lp-hero .guarantee{text-align:left;justify-content:flex-start}.cal-sources{gap:var(--space-2);display:grid}.cal-source{align-items:center;gap:var(--space-3);min-width:0;display:flex}.cal-source>svg{color:var(--pine);flex:none}.cal-source-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600;display:grid}.cal-source-name .small{font-weight:400}.cal-events{gap:var(--space-1);margin-top:var(--space-3);display:grid}.cal-event-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.cal-event{gap:var(--space-2);border-left:3px solid var(--line-strong);background:var(--surface-sunken);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);align-items:baseline;padding:6px 10px;display:grid}.cal-event.free{border-left-style:dashed}.cal-event-time{color:var(--ink-muted);white-space:nowrap}.cal-event-title{color:var(--ink);overflow-wrap:anywhere}.cal-events.compact{margin-top:var(--space-2)}.cal-events.compact .cal-event{padding:4px 8px}.block.cal-block{background:var(--surface-sunken);border-left-color:var(--line-strong);cursor:default;color:var(--ink)}.block.cal-block:hover{box-shadow:none}.block.cal-block.free{border-left-style:dashed}.block.cal-block>svg{color:var(--ink-muted);flex:none;margin-top:2px}.timeline-allday{margin:0 0 var(--space-2);align-items:center;gap:6px;display:flex}.coach-letter{gap:var(--space-3);font-size:1.0625rem;line-height:1.65;display:grid}.coach-letter p{margin:0}.coach-letter-greeting{font-family:var(--font-display);color:var(--ink);font-size:1.375rem}.coach-letter-step{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background:var(--sun-soft);border-left:3px solid var(--sun);justify-items:start;display:grid}.coach-letter-step p{color:var(--ink)}.coach-letter-signoff{color:var(--ink-muted);font-style:italic}.if-then{margin:var(--space-2) 0 0;border-radius:var(--radius-sm);background:var(--sun-soft);color:var(--ink);align-items:flex-start;gap:6px;padding:8px 10px;display:flex}.if-then svg{color:var(--sun-ink);flex:none;margin-top:2px}.list-item.has-if-then{flex-wrap:wrap}.list-item.has-if-then .if-then{flex-basis:100%}.chip.chip-pine{background:var(--pine-soft);color:var(--pine);border-color:#0000}.chip.comeback svg{flex:none}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}}@keyframes step-in{0%{opacity:0;transform:scale(.3)}}@keyframes sun-halo{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@keyframes sun-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes badge-in{0%{opacity:0;transform:translateY(4px)scale(.92)}}.sun-path{gap:var(--space-1);display:grid}.sun-path svg,.sun-moment svg{width:100%;max-width:360px;height:auto;display:block;overflow:visible}.sun-path-step{fill:var(--line-strong)}.sun-path-step.on{fill:var(--pine)}.sun-path-dot{transition:transform var(--dur-path) var(--ease-out)}.sun-path-dot circle{fill:var(--pine);stroke:var(--surface-raised);stroke-width:2.5px}.sun-path-sun{transition:transform var(--dur-path) var(--ease-out)}.sun-path-disc{fill:var(--sun);opacity:0;transition:opacity var(--dur-path) var(--ease-out)}.sun-path-ring{fill:var(--sun);fill-opacity:.15;stroke:var(--sun);stroke-width:1.5px}.sun-path-level{fill:var(--sun);transform-box:fill-box;transform-origin:50% 100%;transition:transform var(--dur-path) var(--ease-out)}.sun-path-halo{fill:var(--sun);opacity:0;transform-box:fill-box;transform-origin:50%}.sun-path.reached .sun-path-disc{opacity:1}.sun-path.reached .sun-path-sun{transform:translateY(-3px)}.sun-path.rising .sun-path-halo{animation:sun-halo var(--dur-path) var(--ease-out) var(--dur-path) both}.sun-path-note{color:var(--sun-ink);animation:fade-up var(--dur-slow) var(--ease-out) both;margin:0;font-weight:700}.sun-moment{justify-items:center;display:grid}.sun-moment-step{fill:var(--pine);transform-box:fill-box;transform-origin:50%;animation:step-in var(--dur) var(--ease-out) both}.sun-moment-sun{animation:sun-rise var(--dur-path) var(--ease-out) .72s both}.sun-moment-sun .sun-path-disc{opacity:1}.sun-moment .sun-path-halo{animation:sun-halo var(--dur-path) var(--ease-out) 1.12s both}.route-art{width:100%;max-width:200px;height:auto;margin:0 auto var(--space-1);display:block}.route-art circle{fill:var(--line-strong)}.route-art .route-art-start{fill:var(--pine)}.route-art .route-art-sun{fill:var(--sun);opacity:.75}.sun-burst{z-index:80;pointer-events:none;width:0;height:0;position:fixed}.sun-burst span{background:var(--sun);opacity:0;width:6px;height:6px;animation:burst var(--dur-path) var(--ease-out) both;border-radius:50%;position:absolute;top:-3px;left:-3px}@keyframes burst{0%{opacity:.9;transform:translate(0)scale(.6)}to{opacity:0;transform:translate(var(--dx), var(--dy)) scale(1)}}.strike{background:linear-gradient(var(--ink-muted), var(--ink-muted)) no-repeat 0 58% / 0 1.5px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size var(--dur) var(--ease-out)}.list-item.done .strike{background-size:100% 1.5px}.list-item.done .task-open.fx-strike{text-decoration:none}.progress>span{transform-origin:0;width:100%;transition:transform var(--dur-path) var(--ease-out)}.count-meter{background:var(--line);border-radius:2px;width:100%;height:4px;margin-top:3px;display:block;overflow:hidden}.count-meter>span{background:var(--pine);transform-origin:0;height:100%;transition:transform var(--dur-count) var(--ease-out);display:block}.count-meter.full>span{background:var(--sun)}.milestone{animation:badge-in var(--dur-slow) var(--ease-out) both}.all-done{gap:var(--space-4);background:linear-gradient(135deg, var(--sun-soft), var(--surface-raised) 70%);border-color:color-mix(in srgb, var(--sun) 30%, var(--line));animation:fade-up var(--dur-slow) var(--ease-out) both;grid-template-columns:auto 1fr;align-items:center;display:grid}.all-done svg{width:72px;height:48px}.all-done h2{margin:0}.all-done p{margin:2px 0 var(--space-3)}@media (prefers-reduced-motion:reduce){.menu{animation:none}}.sun-path-mini svg{max-width:220px}.sun-path-mini .sun-path-note{display:none}.block.lifted{z-index:4;box-shadow:var(--shadow-pop);cursor:grabbing;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}.skel{border-radius:var(--radius-sm);background:var(--surface-sunken);max-width:100%;display:block}.skel-page{animation:fade-in var(--dur-slow) var(--ease-out) both}.skel-card{gap:var(--space-3);display:grid}.skel-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ptr{top:calc(env(safe-area-inset-top) + 8px);z-index:var(--z-toast);background:var(--surface-raised);width:40px;height:40px;box-shadow:var(--shadow-2);pointer-events:none;border-radius:50%;place-items:center;margin-top:-40px;display:grid;position:fixed;left:50%}.ptr svg{fill:none;width:24px;height:24px;stroke:var(--line-strong);stroke-width:2px;stroke-linecap:round;transition:transform var(--dur) var(--ease-out)}.ptr svg circle{fill:var(--line-strong)}.ptr.ready svg{stroke:var(--sun);transform:rotate(45deg)scale(1.08)}.ptr.ready svg circle{fill:var(--sun)}.ptr.busy svg{animation:1.2s ease-in-out infinite breathe}.tab-indicator{display:none}@media (width<=900px){.tabbar.has-indicator a.active:before{display:none}.tab-indicator{z-index:-1;pointer-events:none;width:calc(20% - 1.6px);height:30px;transition:transform var(--dur-slow) var(--ease-out);justify-content:center;display:flex;position:absolute;top:8px;left:4px}.tab-indicator:before{content:"";background:var(--pine-soft);border-radius:15px;width:44px;height:30px}}::view-transition-old(root){animation-duration:var(--dur);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--dur);animation-timing-function:var(--ease-out)}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.template-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.template{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);animation:item-in var(--dur-slow) var(--ease-out) both;display:flex}.share-preview{width:min(240px,70vw);box-shadow:var(--shadow-2);background:var(--surface-sunken);border-radius:14px;justify-self:center;overflow:hidden}.share-preview.share-story{aspect-ratio:9/16}.share-preview.share-post{aspect-ratio:4/5}.share-preview img,.share-preview .skel{width:100%;height:100%;display:block}.reach-btn{animation:fade-up var(--dur-slow) var(--ease-out) both;justify-self:start}.year-card{align-items:flex-start;gap:var(--space-3);background:linear-gradient(135deg, var(--sun-soft), var(--surface-raised) 70%);animation:fade-up var(--dur-slow) var(--ease-out) both;display:flex}.year-card>svg{color:var(--sun-ink);flex:none;margin-top:2px}.year-card h2{margin:0}.year-card p{margin:2px 0 var(--space-3)}.plan-steps{gap:var(--space-2) var(--space-4);color:var(--ink-muted);flex-wrap:wrap;margin:0;padding:0;font-size:14px;font-weight:600;list-style:none;display:flex}.plan-steps li{align-items:center;gap:6px;display:flex}.plan-steps span{background:var(--surface-sunken);border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.plan-steps .current{color:var(--ink)}.plan-steps .current span{background:var(--pine);color:var(--on-pine)}.plan-steps .done span{background:var(--pine-soft);color:var(--pine)}.plan-goal{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.plan-habit{gap:var(--space-2)}.plan-low{color:var(--sun-ink)}.plan-ready{gap:var(--space-2);text-align:left;width:100%;max-width:420px;margin:0;padding:0;list-style:none;display:grid}.plan-ready li{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);gap:2px;display:grid}.plan-year .option{text-align:left;align-content:start;gap:2px;display:grid}.habit-head{align-items:start;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.habit-title{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:6px 0 0;display:-webkit-box;overflow:hidden}.habit-actions{gap:2px;display:flex}.habit-badges{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.vision-upload{gap:var(--space-3)}.vision-upload label.btn{cursor:pointer}.vision-photo-wait{aspect-ratio:4/3;background:var(--surface-sunken);display:block}.radar{aspect-ratio:400/340;width:100%;max-width:460px;margin:0 auto;position:relative}.radar>svg{width:100%;height:100%;display:block}.radar-label{white-space:nowrap;pointer-events:none;font:600 13px/1.2 var(--font-sans);color:var(--ink);background:color-mix(in srgb, var(--surface-raised) 85%, transparent);border-radius:6px;padding:1px 4px;position:absolute;transform:translate(-50%,-50%)}@media (width>=600px){.radar-label{font-size:14px}}.recap-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.recap-tile{gap:var(--space-1);animation:fade-up var(--dur-slow) var(--ease-out) both;align-content:start;display:grid}.recap-tile.wide{grid-column:1/-1}.recap-num{font-family:var(--font-display);color:var(--pine);white-space:nowrap;font-size:clamp(1.5rem,8vw,2.25rem);line-height:1.1}.recap-title{font-family:var(--font-display);color:var(--ink);overflow-wrap:anywhere;font-size:1.375rem;line-height:1.25}.recap-goals{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.recap-goals li{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.recap-goals b.reached{color:var(--sun-ink)}
