@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--ink:#26322e;--muted:#77827c;--green:#376b59;--deep:#153e32;--soft:#e9eee8;--line:#e6eae4;--cream:#f8f9f5;--orange:#d69368}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.brand{letter-spacing:-1.5px;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-size:25px;font-weight:800;display:flex}.brand-mark{color:#315e4a;background:#d9e6d4;border-radius:11px;justify-content:center;align-items:center;width:35px;height:35px;font-size:27px;font-weight:400;display:inline-flex}.brand-dot,.heading-dot{color:#d9986b}.eyebrow{letter-spacing:2.2px;color:#6e917e;font-size:11px;font-weight:800}.loading-screen{background:var(--cream);min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.loading-screen .brand-mark{width:56px;height:56px;font-size:40px}.auth-page{grid-template-columns:minmax(360px,1fr) minmax(400px,1fr);min-height:100vh;display:grid}.auth-intro{background:#e8f0e5;flex-direction:column;justify-content:space-between;padding:48px 8%;display:flex;position:relative;overflow:hidden}.intro-content{z-index:1;max-width:570px;margin:70px 0 110px;position:relative}.intro-content h1{letter-spacing:-5px;color:#264a39;margin:25px 0;font-family:Manrope,sans-serif;font-size:clamp(48px,5.4vw,85px);font-weight:800;line-height:1.12}.intro-content em{color:#8aaf91;font-style:normal}.intro-content p{color:#607768;max-width:450px;font-size:18px;line-height:1.75}.intro-art{width:370px;height:230px;margin-top:28px;position:relative}.art-orbit{border:1px solid #b6cdb7;border-radius:50%;position:absolute;transform:rotate(-24deg)}.art-orbit-one{width:330px;height:156px;top:43px;left:0}.art-orbit-two{width:230px;height:115px;top:67px;left:80px}.art-core{color:#426d52;background:#d3e2d0;border-radius:30px;justify-content:center;align-items:center;width:110px;height:110px;font-size:68px;display:flex;position:absolute;top:49px;left:125px;transform:rotate(-12deg);box-shadow:12px 14px #c1d4c1}.art-star{color:#d1936d;font-size:35px;position:absolute}.art-star-one{top:20px;left:20px}.art-star-two{font-size:22px;bottom:25px;right:16px}.intro-footer{color:#789080;font-size:13px}.auth-panel{background:#fbfcf9;justify-content:center;align-items:center;padding:55px 40px;display:flex}.auth-card{width:min(100%,420px)}.auth-card h2{letter-spacing:-1.8px;margin:12px 0 6px;font-family:Manrope,sans-serif;font-size:39px}.auth-subtitle{color:var(--muted);margin:0 0 34px}.auth-tabs{background:#eff2ec;border-radius:13px;margin-bottom:30px;padding:5px;display:flex}.auth-tabs button{color:#7b897f;background:0 0;border:0;border-radius:9px;flex:1;padding:12px;font-weight:700}.auth-tabs button.selected{color:var(--deep);background:#fff;box-shadow:0 2px 8px #1c3a2912}.auth-form{flex-direction:column;display:flex}.auth-form label{margin-bottom:9px;font-size:13px;font-weight:700}.auth-form input{background:#fff;border:1px solid #dce3da;border-radius:11px;outline:none;height:53px;padding:0 16px;transition:border-color .15s,box-shadow .15s}.auth-form input:focus,.add-form input:focus{border-color:#7aa18c;box-shadow:0 0 0 3px #9dc6a344}.auth-form input::placeholder,.add-form input::placeholder{color:#a8b3aa}.field-hint{color:#9ca8a0;margin:7px 0 23px;font-size:11px}.auth-form label[for=password]{margin-top:0}.auth-form input[name=password]{margin-bottom:25px}.primary-button{background:var(--deep);color:#fff;border:0;border-radius:11px;justify-content:center;align-items:center;gap:14px;height:54px;font-weight:700;transition:background .15s,transform .15s;display:flex}.primary-button:hover{background:#255d49;transform:translateY(-1px)}.primary-button span{font-size:21px;font-weight:400}.form-error{color:#9c3d38;background:#fcebe8;border-radius:8px;margin:0 0 16px;padding:11px 13px;font-size:13px}.auth-note{color:#9aa69c;text-align:center;margin-top:24px;font-size:12px}.app-shell{background:var(--cream);grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#f0f4ee;border-right:1px solid #e1e8df;flex-direction:column;padding:31px 24px 25px;display:flex}.sidebar .brand{margin-bottom:68px}.side-section-label{letter-spacing:1.8px;color:#99a99a;margin-bottom:15px;padding:0 12px;font-size:10px;font-weight:800}.side-link{color:#6d8273;border-radius:11px;align-items:center;gap:14px;padding:14px 13px;font-size:14px;font-weight:700;display:flex}.side-link.active{color:#24513c;background:#dce9db}.side-link-icon{font-size:20px;font-weight:400}.side-count{text-align:center;background:#c8dac8;border-radius:6px;min-width:24px;margin-left:auto;padding:2px;font-size:12px}.side-bottom{margin-top:auto}.side-quote{color:#6a8b70;background:#e8f0e7;border:1px solid #d8e4d7;border-radius:15px;margin-bottom:25px;padding:20px 19px;font-family:Manrope,sans-serif;font-size:14px;font-weight:700;line-height:1.6}.side-quote span{color:#9bb89b;font-size:32px;line-height:10px;display:block}.profile{border-top:1px solid #dce6dc;align-items:center;gap:11px;padding:17px 0;display:flex}.avatar{color:#315c43;background:#b9d1b7;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:flex}.profile strong,.profile small{display:block}.profile strong{font-size:13px}.profile small{color:#8d9e90;margin-top:4px;font-size:11px}.signout-button{color:#829687;text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;padding:11px 3px;font-size:12px;display:flex}.signout-button:hover{color:var(--deep)}.mobile-header{display:none}.main-content{min-width:0}.content-inner{width:min(100%,950px);margin:auto;padding:64px 55px 45px}.topline{justify-content:space-between;align-items:center;display:flex}.date-label{color:#8c9b90;font-size:12px}.heading-row{justify-content:space-between;align-items:center;margin:22px 0 36px;display:flex}.heading-row h1{letter-spacing:-3px;margin:0;font-family:Manrope,sans-serif;font-size:clamp(36px,4vw,54px);line-height:1.15}.heading-row p{color:#8a998e;margin:13px 0 0;font-size:15px}.progress-badge{color:#437a56;background:#edf4eb;border:1px solid #dce7da;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:99px;height:99px;display:flex}.progress-number{font-family:Manrope,sans-serif;font-size:33px;font-weight:800;line-height:1}.progress-badge span:last-child{margin-top:7px;font-size:11px;font-weight:700}.add-form{background:#fff;border:1px solid #e0e8df;border-radius:15px;align-items:center;margin-bottom:48px;padding:8px 8px 8px 20px;display:flex;box-shadow:0 7px 22px #314c3610}.add-plus{color:#80a286;margin-right:11px;font-size:26px}.add-form input{min-width:0;height:48px;color:var(--ink);border:0;outline:none;flex:1;font-size:14px;box-shadow:none!important}.add-form button{background:var(--deep);color:#fff;white-space:nowrap;border:0;border-radius:10px;height:43px;padding:0 21px;font-size:13px;font-weight:700}.add-form button:hover{background:#255d49}.add-form button span{margin-left:9px;font-size:17px}.app-error{margin-top:-34px;margin-bottom:23px}.list-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;padding-bottom:16px;display:flex}.list-header>div:first-child{align-items:baseline;gap:12px;display:flex}.list-header h2{letter-spacing:-.5px;margin:0;font-family:Manrope,sans-serif;font-size:21px}.list-header span{color:#a0ada1;font-size:12px}.filters{gap:5px;display:flex}.filters button{color:#87958a;background:0 0;border:0;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:700}.filters button.selected{color:#315c42;background:#e4eee2}.task-list{margin:0;padding:0;list-style:none}.task-row{border-bottom:1px solid var(--line);align-items:center;gap:15px;min-height:66px;padding:10px 7px;display:flex}.check-button{color:#fff;background:#fff;border:1.5px solid #b6c9b8;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:23px;height:23px;font-size:14px;font-weight:800;display:flex}.check-button:hover{border-color:var(--green)}.task-row.completed .check-button{background:#5c9470;border-color:#5c9470}.task-title{overflow-wrap:anywhere;font-size:14px;line-height:1.4}.task-row.completed .task-title{color:#a0aca2;text-decoration:line-through}.delete-button{color:#adbaaf;background:0 0;border:0;margin-left:auto;padding:7px;font-size:25px;line-height:1}.delete-button:hover{color:#b86559}.empty-state{text-align:center;background:#fcfdfa;border:1px dashed #d9e5da;border-radius:17px;margin-top:24px;padding:52px 20px}.empty-icon{color:#6d9c75;background:#e9f2e7;border-radius:17px;justify-content:center;align-items:center;width:62px;height:62px;margin:auto;font-size:37px;display:flex}.empty-state h3{margin:20px 0 7px;font-family:Manrope,sans-serif;font-size:19px}.empty-state p{color:#96a59a;margin:0;font-size:13px}.list-footer{color:#a0ada2;margin-top:23px;font-size:12px}@media (max-width:800px){.auth-page{grid-template-columns:1fr}.auth-intro{min-height:280px;padding:30px 7%}.intro-content{margin:35px 0 10px}.intro-content h1{letter-spacing:-2.5px;margin:13px 0;font-size:43px}.intro-content p{font-size:14px;line-height:1.5}.intro-art,.intro-footer{display:none}.auth-panel{padding:45px 7% 65px}.app-shell{display:block}.sidebar{display:none}.mobile-header{border-bottom:1px solid var(--line);background:#f0f4ee;justify-content:space-between;align-items:center;padding:18px 5%;display:flex}.mobile-header button{color:var(--green);background:0 0;border:0;font-size:12px;font-weight:700}.content-inner{padding:36px 5% 50px}.heading-row h1{font-size:38px}.progress-badge{width:75px;height:75px}.progress-number{font-size:27px}}@media (max-width:500px){.heading-row{gap:10px}.heading-row h1{letter-spacing:-1.8px;font-size:32px}.heading-row p{font-size:13px}.progress-badge{width:64px;height:64px}.progress-number{font-size:23px}.progress-badge span:last-child{font-size:9px}.add-form{padding-left:12px}.add-form button{padding:0 11px;font-size:12px}.add-form button span{display:none}.list-header{flex-direction:column;align-items:flex-start;gap:10px}.filters button:first-child{padding-left:0}.auth-card h2{font-size:32px}}
