/* Mint, ink and apricot. Motion follows the rhythm of the day. */
:root{--bg:#f3f5f2;--paper:#fff;--text:#182e32;--muted:#637779;--line:#e3e9e4;--accent:#196653;--accent-soft:#e5f5ed;--green:#26775b;--shadow:0 8px 32px #19392e06;font-family:"Segoe UI Variable Text","Segoe UI",Arial,sans-serif}
body{background:var(--bg)}button{transition:background .18s,transform .18s,box-shadow .18s;color:var(--text)}button:active:not(:disabled){transform:scale(.96)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#35a783}h1{font-weight:650;letter-spacing:-2.8px;font-size:clamp(42px,4.2vw,66px);line-height:1.04;max-width:10ch;margin:0 0 20px}h2{letter-spacing:-.65px}.sidebar{width:238px;background:#152e32;color:#d9e6df;border:0;padding:34px 22px;z-index:5}.brand{color:#fff;letter-spacing:-.7px;font-size:21px}.brand small{color:#91aca6;font-size:11px}.brand-mark{background:#c7f9dc;color:#173d32;border-radius:50%;width:42px;height:42px;flex-shrink:0;font-family:inherit;font-size:30px;font-weight:600;padding:0 0 5px;box-shadow:0 0 0 5px #d0ffdf0a}nav{margin-top:52px;gap:10px}.nav-button{color:#a6bdb8;border-radius:13px;padding:15px 16px;font-weight:500;gap:13px;position:relative}.nav-button.active{color:#163d32;background:#c7f9dc;box-shadow:0 5px 20px #0a242625}.nav-button:hover:not(.active){background:#ffffff0c;color:#fff}.nav-button span{display:flex;align-items:center;justify-content:center}.nav-button svg{width:21px;height:21px;stroke-width:1.8}.sidebar-bottom p{font-size:16px;color:#b1c9be;line-height:1.65;padding:20px 0;border-top:1px solid #ffffff16;margin-bottom:18px;max-width:18ch}.sidebar-bottom .text-button{color:#a6bdb8;font-size:12px}.sidebar-bottom small{color:#819d96}.text-button:hover{color:var(--accent)}main{margin-left:238px;padding:0 38px;max-width:none}.topbar{height:78px;border:0;font-size:13px;font-weight:500}.local-label{background:var(--paper);padding:7px 13px;border:1px solid var(--line);border-radius:30px;font-size:11px;font-weight:400}.local-label:before{background:#39a87c;box-shadow:0 0 0 3px #39a87c15}.page-heading{background:#dff3e5;border:1px solid #d2e9dc;border-radius:26px;padding:31px 38px;min-height:292px;margin:5px 0 27px;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,31%);gap:20px;isolation:isolate}.hero-copy{position:relative;z-index:2;min-width:0}.eyebrow{color:#39644f;font-size:12px;margin-bottom:16px;font-weight:500;display:flex;gap:8px;align-items:center}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:#429568}.page-heading #page-description{color:#4f7164;max-width:42ch;font-size:14px;margin-bottom:22px}.primary{background:#173d32;color:white;padding:13px 20px;border-radius:12px;font-weight:550;font-size:13px;display:inline-flex;gap:9px;align-items:center;justify-content:center;box-shadow:0 4px 10px #163e3212}.primary:hover{filter:none;transform:translateY(-2px);background:#245d49;box-shadow:0 8px 18px #193e3225}.primary svg{width:17px;height:17px}.secondary{border-radius:12px;color:var(--accent);padding:12px 17px}.hero-art{width:100%;max-width:320px;justify-self:center;position:relative}.hero-art svg{width:100%;height:auto;display:block;overflow:visible}.orbit-turn{transform-origin:160px 160px;animation:orbit 28s linear infinite}.orbit-reverse{animation-direction:reverse;animation-duration:38s}.orb-core{filter:drop-shadow(0 12px 12px #1b513b20)}.orbit-number{fill:#214d3b;font-size:41px;font-weight:550;letter-spacing:-2px}.orbit-caption{fill:#547561;font-size:11px}.orbit-outline{stroke:#a8ccad;fill:none;stroke-width:1}.orbit-progress{stroke:#286947;fill:none;stroke-width:3;stroke-linecap:round;transform:rotate(-90deg);transform-origin:160px 160px;transition:stroke-dasharray .5s}.hero-art:after{content:"";position:absolute;inset:10% 5%;border-radius:50%;z-index:-1;background:#f3ffe745;filter:blur(26px)}.layout{gap:22px;grid-template-columns:minmax(0,1fr) 300px}.panel{border:1px solid var(--line);border-radius:21px;padding:25px;box-shadow:var(--shadow)}.date-nav{margin-bottom:23px}.date-nav h2{font-size:23px;font-weight:600}.date-controls{background:var(--bg);border-radius:10px;padding:3px;gap:0}.date-controls input{background:transparent;border:0;font-size:12px;width:130px}.icon-button{color:var(--muted);width:34px;height:34px;border-radius:9px}.icon-button svg{width:16px;height:16px;stroke-width:1.65}.icon-button:hover{background:var(--accent-soft)}.progress-copy{font-size:12px}.progress-copy strong{background:var(--green-soft);padding:1px 8px;border-radius:5px}.progress-track{height:5px;background:#eef1ec;margin-bottom:20px}.progress-track span{background:#488c6b;transition:width .45s}.habit-row{border:1px solid var(--line);border-radius:13px;padding:17px 15px;margin-bottom:10px;gap:15px;background:var(--paper);transition:background .2s,border-color .2s;min-height:87px}.habit-row:last-child{border:1px solid var(--line);margin-bottom:0}.habit-row:hover{border-color:#bfdbcd;background:#f7fbf8}.check{width:28px;height:28px;border-color:#c9d8cf;border-radius:9px;transition:background .2s,box-shadow .2s}.check:checked{background:#3b8966;border-color:#3b8966;box-shadow:0 0 0 4px #3b89660c}.check:checked:after{font-size:16px}.completed{background:#f1f8f2!important;border-color:#d5e7d8!important}.completed .row-title{font-weight:500}.row-title{font-size:14px;font-weight:600;line-height:1.5}.row-copy p{font-size:12px;line-height:1.55;margin-top:4px;max-width:75ch}.row-actions{max-width:none;flex-wrap:nowrap;gap:0}.row-actions .icon-button{width:27px;height:32px;font-size:16px}.row-actions .icon-button svg{width:14px;height:14px}.side-stack{gap:20px}.calendar-heading{margin-bottom:19px}.calendar-heading h2{font-size:15px;letter-spacing:-.3px}.calendar-grid{gap:4px}.weekday{font-size:10px}.day{font-size:12px;border-radius:9px;transition:background .2s,transform .2s}.day.selected{background:#1c5946;box-shadow:0 4px 10px #1c59461a}.day:hover:not(:disabled):not(.selected){background:var(--accent-soft)}.day.today{outline-color:#47886a}.calendar-legend{font-size:10px;line-height:1.5}.stats{border-top:1px solid var(--line);padding-top:18px;margin-top:20px;gap:20px;justify-content:space-between}.stats strong{font-size:27px;letter-spacing:-1px;font-weight:600}.stats span{font-size:10px}.gentle-note{background:#ffe9dc;border:1px solid #f0dacd;border-radius:21px;padding:25px;position:relative;overflow:hidden}.gentle-note:after{content:"";width:100px;height:100px;position:absolute;right:-30px;top:-28px;border:18px solid #f7c6a945;border-radius:50%;pointer-events:none}.gentle-note .spark{font-size:35px;color:#956d50;margin:0 0 12px}.gentle-note h3{font-size:18px;font-weight:550;letter-spacing:-.4px;line-height:1.4;color:#604c40;position:relative;z-index:1}.gentle-note p{font-size:12px;color:#806b5b;max-width:35ch}.tabs{background:var(--bg);border-radius:11px;width:fit-content;padding:4px;gap:2px}.filter{font-size:12px;padding:8px 13px;border-radius:8px}.filter.active{background:var(--paper);box-shadow:0 2px 8px #203e3010;color:var(--text)}.group-title{font-size:12px;margin-bottom:10px}.pill{font-size:10px;border-radius:5px}.ideas-grid{gap:15px}.idea-card{border-radius:17px;padding:23px;position:relative;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.idea-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #1f4a3410}.idea-card.pinned{border-top:1px solid #ccdebd;background:#f2f6e8}.idea-card h3{font-size:17px;font-weight:600;letter-spacing:-.3px}.idea-card p{font-size:13px;line-height:1.65}.idea-bottom{border-top:1px solid var(--line);padding-top:14px}.idea-bottom .icon-button{width:32px;height:32px}.search{border-radius:12px;margin-top:7px;padding:13px 15px}.composer{padding:28px}.composer h2{font-size:23px}.composer textarea{background:#f6f8f4;border-color:#e1e8df;border-radius:13px;min-height:130px;padding:15px;line-height:1.6;font-size:14px}.voice-button{font-size:12px;border-radius:12px;padding:13px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.voice-button svg{width:17px;height:17px}.voice-status{font-size:12px}.voice-disclaimer{font-size:10px;line-height:1.6}.voice-button.listening{animation:voicePulse 1.5s ease-in-out infinite}.voice-button.listening:before{content:"";width:7px;height:7px;background:var(--red);border-radius:50%}footer{font-size:10px;padding:25px 0 32px}dialog{border-radius:21px;animation:dialogIn .22s ease-out}dialog::backdrop{background:#17303266}.field input,.field textarea,.field select{border-radius:11px}.page-enter{animation:pageIn .45s cubic-bezier(.2,.75,.25,1) both}.row-pop .check{animation:checkIn .3s ease-out}.row-pop .check:after{animation:checkIn .3s ease-out}.sidebar-bottom .text-button:hover{color:#c7f9dc}#toast{border-radius:12px;box-shadow:0 10px 30px #102d3220}#toast.visible{animation:toastIn .2s ease-out}
body.dark{--bg:#14272b;--paper:#1b3439;--text:#e6f1e9;--muted:#a1bbb1;--line:#2d484a;--accent:#b8ebcb;--accent-soft:#284e43;--green:#8edab1;--green-soft:#2a4d40;--shadow:0 8px 32px #06181912}body.dark .sidebar{background:#102226}body.dark .page-heading{background:#294b3c;border-color:#3c6050}body.dark .page-heading h1{color:#e0f6e5}body.dark .eyebrow,body.dark #page-description{color:#b2d5bb}body.dark .primary{background:#c4f4d5;color:#19382c}body.dark .primary:hover{background:#d6ffe3}body.dark .orbit-number{fill:#def6e3}body.dark .orbit-caption{fill:#b0d6b9}body.dark .orbit-outline{stroke:#568568}body.dark .orbit-progress{stroke:#b9e8c4}body.dark .hero-art:after{background:#0b342622}body.dark .habit-row:hover{background:#23443e;border-color:#496859}body.dark .completed{background:#244537!important;border-color:#395c48!important}body.dark .progress-track{background:#304c46}body.dark .gentle-note{background:#4b3d32;border-color:#635143}body.dark .gentle-note h3{color:#f7dccc}body.dark .gentle-note p{color:#dabfac}body.dark .gentle-note .spark{color:#efc9ac}body.dark .gentle-note:after{border-color:#b78a5420}body.dark .composer textarea{background:#173034;border-color:#345249}body.dark .idea-card.pinned{background:#2d4135;border-color:#4a644f}body.dark .day.selected{background:#bfe8c9;color:#173827}body.dark .day.selected:after{background:#173827}
@keyframes orbit{to{transform:rotate(360deg)}}@keyframes pageIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes checkIn{0%{transform:scale(.7)}60%{transform:scale(1.15)}100%{transform:scale(1)}}@keyframes dialogIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes voicePulse{50%{box-shadow:0 0 0 5px #b24c5e12}}@keyframes toastIn{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
@media(min-width:1700px){.sidebar{width:258px;padding:38px 26px}main{margin-left:258px;padding:0 54px}.page-heading{grid-template-columns:minmax(0,1fr) 35%;min-height:350px;padding:38px 48px}.hero-art{max-width:340px}.layout{grid-template-columns:minmax(0,1fr) minmax(340px,25%);gap:28px}.panel{padding:30px}.habit-row{padding:20px 22px;min-height:100px}.row-title{font-size:16px}.row-copy p{font-size:13px}.ideas-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.row-actions .icon-button{width:35px;height:36px}.calendar-grid{gap:6px}}
@media(max-width:1150px){.sidebar{width:192px;padding:28px 15px}.brand{font-size:18px}.brand small{font-size:10px}.brand-mark{width:33px;height:33px;font-size:25px}main{margin-left:192px;padding:0 25px}.page-heading{padding:28px;grid-template-columns:minmax(0,1fr) 210px;min-height:290px}h1{font-size:49px}.layout{grid-template-columns:minmax(0,1fr) 255px;gap:18px}.panel{padding:20px}.row-actions{flex-wrap:wrap;max-width:58px}.date-nav{flex-direction:column}.habit-row{padding:15px 12px}.row-title{font-size:13px}.row-copy p{font-size:11px}.gentle-note{padding:22px}.ideas-grid{grid-template-columns:1fr}}
@media(max-width:850px){.sidebar{width:165px;padding:25px 12px}.brand{font-size:16px;gap:8px}.brand small{font-size:9px}.nav-button{font-size:12px;padding:13px 12px;gap:10px}.brand-mark{width:30px;height:30px;font-size:23px}main{margin-left:165px;padding:0 22px}.topbar{height:66px}.page-heading{padding:25px;grid-template-columns:minmax(0,1fr) 145px;gap:10px;min-height:280px}h1{font-size:43px;letter-spacing:-1.9px}.page-heading #page-description{font-size:12px}.eyebrow{font-size:10px}.page-heading .primary{font-size:12px}.layout{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}.row-actions{max-width:none;flex-wrap:nowrap}.habit-row{min-height:87px;padding:17px 14px}.row-title{font-size:14px}.row-copy p{font-size:12px}.date-nav{flex-direction:row;align-items:center}.date-controls input{width:112px}.panel{padding:22px}.calendar-grid{gap:3px}.gentle-note{padding:22px}.gentle-note h3{font-size:17px}.ideas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ideas-grid .idea-card{padding:20px}.idea-bottom .row-actions{flex-wrap:wrap;max-width:68px}.sidebar-bottom p{font-size:14px}}
@media(max-width:600px){.sidebar{inset:auto 12px 12px;width:auto;border-radius:20px;background:#152e32f5;backdrop-filter:blur(18px);border:1px solid #ffffff15;padding:0;box-shadow:0 10px 30px #0b24252b;padding-bottom:env(safe-area-inset-bottom)}nav{margin:0;padding:7px;gap:4px}.nav-button{color:#a8c4ba;padding:9px 3px;gap:5px;border-radius:13px;font-size:10px}.nav-button svg{width:20px;height:20px}.nav-button.active{box-shadow:none}main{margin:0;padding:0 16px 96px}.topbar{height:60px;font-size:11px}.topbar:after{font-size:13px;color:#2f6a51}.page-heading{display:grid;grid-template-columns:minmax(0,1fr) 105px;align-items:start;gap:0;border-radius:21px;padding:25px 23px;min-height:0;margin:0 0 20px}.hero-copy{grid-column:1 / -1}.page-heading h1{font-size:45px;max-width:8ch;letter-spacing:-2px;margin-bottom:15px;position:relative;z-index:2}.eyebrow{font-size:10px;max-width:210px;margin-bottom:18px}.page-heading #page-description{font-size:12px;max-width:31ch;margin-bottom:20px;position:relative;z-index:2}.page-heading .primary{width:100%;font-size:12px;padding:13px}.hero-art{position:absolute;width:142px;height:142px;right:9px;top:46px;opacity:.65;z-index:0}.hero-copy h1{max-width:6ch}.hero-art .orbit-number{font-size:39px}.hero-art .orbit-caption{display:none}.layout{gap:18px}.panel{padding:19px;border-radius:19px}.date-nav{flex-direction:column;align-items:flex-start;gap:14px}.date-nav h2{font-size:22px}.date-controls{width:100%;justify-content:space-between}.date-controls input{max-width:210px;font-size:12px}.habit-row{padding:15px 11px;gap:11px;min-height:96px;align-items:flex-start;border-radius:12px}.check{width:27px;height:27px;margin-top:2px}.row-title{font-size:13px}.row-copy p{font-size:11px}.row-actions{max-width:36px;flex-wrap:wrap;margin-top:-4px}.row-actions .icon-button{width:32px;height:29px}.row-actions .icon-button svg{width:14px;height:14px}.habit-row .row-actions [data-action=up],.habit-row .row-actions [data-action=down]{width:16px;height:25px}.side-stack{grid-template-columns:1fr}.day{height:37px;font-size:13px}.gentle-note{padding:23px}.gentle-note .spark{float:right;font-size:36px}.gentle-note h3{max-width:240px;font-size:18px}.gentle-note p{font-size:12px;max-width:40ch}.ideas-grid{grid-template-columns:1fr}.idea-bottom .row-actions{max-width:none;flex-wrap:nowrap}.idea-bottom .icon-button{width:36px;height:36px}.composer textarea{min-height:145px}.composer-actions{gap:10px}.composer-actions .primary{width:auto;font-size:12px;padding:13px 12px}.voice-button{font-size:11px;padding:13px 10px;gap:6px}.voice-button svg{width:15px}.voice-disclaimer{font-size:10px}.mobile-settings{font-size:11px;padding:18px}footer{font-size:9px}#toast{bottom:103px}.ideas-grid .idea-card{padding:23px}.filter{font-size:11px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body.dark .orbit-number{fill:#214d3b}body.dark .orbit-caption{fill:#547561}@media(max-width:600px){body[data-section=daily] .page-heading h1{font-size:38px;max-width:none;line-height:1.08;letter-spacing:-1.7px}.hero-art{width:100px;height:100px;right:-13px;top:55px;opacity:.6}.habit-row{flex-wrap:wrap;min-height:0;gap:9px;padding:15px 13px}.habit-row .row-copy{flex-basis:calc(100% - 46px)}.habit-row .row-actions{max-width:none;flex-basis:100%;flex-wrap:nowrap;justify-content:flex-end;margin:2px 0 -5px;gap:5px}.habit-row .row-actions .icon-button,.habit-row .row-actions [data-action=up],.habit-row .row-actions [data-action=down]{width:34px;height:34px}.habit-row .row-actions .icon-button svg{width:15px;height:15px}}
