
:root{--ink:#243e37;--muted:#738079;--green:#285b4d;--light:#eaf0e7;--line:#e3e6dd;--paper:#fbfaf6}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 'Segoe UI',sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bb8e4b;outline-offset:4px}[hidden]{display:none!important}h1,h2,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:46px;letter-spacing:-1.5px}h2{font-size:25px;margin-bottom:10px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--muted);margin-bottom:14px}.muted{color:var(--muted)}.small{font-size:12px}aside{position:fixed;inset:0 auto 0 0;width:252px;background:#f0f2e9;padding:38px 27px;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--green);font:25px Georgia,serif;margin-bottom:62px}.brand small{display:block;font:9px 'Segoe UI',sans-serif;letter-spacing:2.6px;margin-top:8px}.brand:first-letter{font-size:40px}nav{display:grid;gap:7px}nav button{display:flex;align-items:center;text-align:left;gap:12px;border:0;background:transparent;padding:12px 10px;border-radius:9px;color:#748077}nav button.active{background:#dfe7d9;color:var(--green)}nav button .number{border:1px solid #c9d2c3;border-radius:50%;width:27px;height:27px;text-align:center;line-height:25px;flex-shrink:0;font-size:11px}nav small{display:block;font-size:10px;color:#7c877a}nav strong{font-size:12px;font-weight:600}.sidebar-note{margin-top:auto;padding-top:35px;color:#7a876f}.sidebar-note>span{font-size:24px}.sidebar-note p{font:italic 16px/1.7 Georgia,serif;margin:8px 0 27px}.text-button{background:transparent;border:0;color:var(--muted);text-align:left;font-size:12px;padding:9px 0}main{margin-left:252px;max-width:1500px;padding:30px 58px}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line);font-size:12px}header .eyebrow{margin-bottom:4px;font-size:9px}.private-badge{padding:7px 12px;border:1px solid var(--line);border-radius:20px;font-size:11px;color:var(--muted)}.welcome{display:flex;justify-content:space-between;align-items:center;min-height:255px;padding:34px 12px 20px}.welcome h1{margin-bottom:18px}.welcome h1 span{color:#a7b48b}.welcome p:not(.eyebrow){font-size:14px;color:var(--muted)}.content-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:25px}.day-panel,.reflection,.calendar{border:1px solid var(--line);border-radius:14px;background:#fffefa;padding:28px}.section-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.section-heading .eyebrow{margin-bottom:9px}.arrows{display:flex;gap:7px}.arrows button{width:31px;height:31px;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--ink)}#day-intro{font-size:13px;margin-bottom:20px}.task{display:flex;gap:13px;padding:18px 0;border-top:1px solid var(--line);cursor:pointer}.task input{appearance:none;width:22px;height:22px;flex-shrink:0;border:1px solid #bfcbbb;border-radius:6px;margin:3px 0;background:white}.task input:checked{background:var(--green);border-color:var(--green)}.task input:checked:after{content:'✓';display:block;text-align:center;color:white;line-height:20px}.task strong{font-size:14px;font-weight:500}.task small{display:block;color:var(--muted);font-size:12px;margin-top:5px;line-height:1.6}.task:has(input:checked) strong{color:#7e8d7d}.exercise{background:#eef2e8;border-radius:8px;padding:15px 17px;font-size:12px;margin-top:8px}.exercise summary{list-style:none;cursor:pointer;color:var(--green);font-weight:600}.exercise summary span{float:right}.exercise p{margin:14px 0 8px}.exercise small{color:var(--muted)}.gentle{display:flex;gap:9px;color:#8b947f;font-size:11px;margin-top:18px}.reflection{background:#f3f1e9}.reflection .muted{font-size:12px}.energy{display:flex;gap:10px;margin-top:21px}.energy button{flex:1;border:1px solid #d7dccf;background:#faf9f4;border-radius:10px;padding:10px 0;font-size:20px;color:#7c8b70}.energy button.active{background:#dce6d5;border-color:#7e9d76;box-shadow:0 0 0 1px #7e9d76}.energy-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin:6px 0 27px}label[for=note]{font-size:13px;font-weight:500}#prompt{margin:6px 0 12px}textarea{width:100%;min-height:165px;resize:vertical;border:1px solid #dce0d3;border-radius:9px;background:#fcfbf7;padding:15px;font-size:12px;line-height:1.8;color:var(--ink)}textarea:focus,input:focus{outline:2px solid #9ab18d}textarea::placeholder{color:#98a08f}.primary{display:flex;justify-content:space-between;align-items:center;background:var(--green);border:0;color:white;border-radius:8px;padding:12px 18px;width:100%;font-size:13px;margin-top:17px}.save-status{text-align:center;font-size:10px;color:var(--muted);min-height:16px;margin:10px 0 0}.calendar{margin-top:25px;padding-bottom:18px}.days{display:grid;grid-template-columns:repeat(15,1fr);gap:7px;margin:21px 0 14px}.days button{position:relative;border:1px solid var(--line);border-radius:7px;background:#fafaf5;color:#6f7b69;padding:10px 0;font-size:12px}.days button.active{background:var(--green);color:white;border-color:var(--green)}.days button.saved:after{content:'';position:absolute;bottom:4px;left:calc(50% - 2px);height:4px;width:4px;border-radius:50%;background:#9bae83}footer{font-size:11px;color:#8d9687;padding:26px 5px}footer details{max-width:760px}footer summary{cursor:pointer}footer details p{margin-top:12px}.plant{position:relative;width:180px;height:180px;margin-right:65px;opacity:.65}.plant b{position:absolute;left:89px;top:10px;width:2px;height:137px;background:#7f936b;transform:rotate(-8deg)}.plant i{position:absolute;width:39px;height:68px;background:#bac8a6;border-radius:80% 5% 80% 10%;left:50px;top:30px;transform:rotate(-45deg)}.plant i:nth-child(2){left:92px;top:13px;transform:rotate(20deg);background:#94ac7f}.plant i:nth-child(3){left:55px;top:78px;transform:rotate(-65deg);width:33px;height:57px}.plant i:nth-child(4){left:97px;top:64px;transform:rotate(30deg);width:30px;height:57px}.plant span{position:absolute;bottom:4px;left:58px;width:69px;height:39px;background:#d6cdbb;border-radius:4px 4px 25px 25px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(ellipse at 20% 30%,#e1e8d8,transparent 65%)}.login-card{width:100%;max-width:410px;padding:40px;background:#fffdf6;border:1px solid var(--line);border-radius:18px;box-shadow:0 25px 80px #324c3710}.login-card h1{font-size:40px}.login-card label{font-size:12px;display:block;margin:25px 0 7px}.login-card input{width:100%;border:1px solid #cfd8c6;border-radius:7px;padding:11px;background:var(--paper)}.login-card small{font-size:11px;color:var(--muted)}.brand-icon{font-size:40px;color:var(--green)}#login-error{color:#9c4c38;font-size:12px;margin-top:10px}
@media(min-width:1550px){main{margin-right:auto;margin-left:270px}}@media(max-width:1100px){aside{width:210px;padding:28px 18px}main{margin-left:210px;padding:25px}.content-grid{gap:15px}.day-panel,.reflection{padding:20px}.plant{margin-right:15px}.days{grid-template-columns:repeat(10,1fr)}}@media(max-width:760px){aside{position:static;width:auto;padding:18px 20px;display:block}.brand{margin:0 0 20px;font-size:22px}.brand small{display:inline;margin-left:12px;font-size:8px}aside>.eyebrow,.sidebar-note{display:none}nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:5px}nav button{min-width:141px;padding:8px}nav small{font-size:9px}nav strong{font-size:11px}aside>.text-button{display:inline-block;margin:10px 20px 0 0}main{margin:0;padding:20px}.welcome{min-height:220px;padding:25px 0 10px}.welcome h1{font-size:36px}.welcome p:not(.eyebrow){font-size:12px}.plant{width:90px;transform:scale(.65);transform-origin:center;margin:0 0 0 -35px}.content-grid{grid-template-columns:1fr;gap:18px}.days{grid-template-columns:repeat(10,1fr);gap:5px}.calendar{padding:20px}.private-badge{font-size:9px;padding:5px 8px}header{font-size:10px}header .eyebrow{font-size:8px}.calendar h2{font-size:21px}.calendar .section-heading{display:block}#visit-count{font-size:11px}}

.draft-note{font-size:10px;color:#7b806b;margin:0 0 18px;padding:9px 13px;border-left:2px solid #bcc8a7;background:#f0f1e8;border-radius:0 5px 5px 0}
.auth-tabs{display:flex;gap:8px;margin:20px 0}.auth-tabs button{flex:1;border:1px solid var(--line);border-radius:7px;padding:9px;background:transparent;color:var(--muted);font-size:12px}.auth-tabs button.active{background:var(--light);color:var(--green)}dialog{border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);width:min(430px,92vw);padding:30px}dialog::backdrop{background:#20362e77}dialog label{display:block;font-size:12px;margin:15px 0 6px}dialog input{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px}#account-status{font-size:12px;margin-top:12px}
