@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{font-family:DM Sans,sans-serif;color:#34443a;background:#f4f2ec;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f2ec}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;flex-shrink:0;border-right:1px solid #E8E6DE;background:#faf9f6;padding:28px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 42px}.brand-mark{width:39px;height:39px;background:#78917c;color:#fff;border-radius:12px;display:grid;place-items:center;font:700 23px Manrope;box-shadow:none}.brand strong{display:block;font:700 19px Manrope;letter-spacing:-.5px}.brand span{display:block;color:#89958a;font-size:9px;letter-spacing:1.4px;margin-top:2px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{border:0;background:transparent;color:#69766b;text-align:left;padding:13px 14px;border-radius:9px;font-size:14px;transition:background .2s,color .2s}.sidebar nav button:hover{background:#f0f1eb;color:#34443a}.sidebar nav button span{display:inline-block;width:27px;color:#89958a;font-size:17px}.sidebar nav button.active{background:#e8eee6;color:#34443a;font-weight:600}.sidebar nav button.active span{color:#66836b}.sidebar-bottom{margin-top:auto;padding:14px 10px;color:#788579;font-size:11px;border-top:1px solid #E8E6DE}.sidebar-bottom small{display:block;color:#9aa39a;line-height:1.5;margin-top:7px}.sync-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#78917c;margin-right:8px}.main{flex:1;min-width:0}.topbar{height:112px;border-bottom:1px solid #E8E6DE;padding:25px 42px;display:flex;align-items:center;justify-content:space-between;background:#faf9f6a6}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#829184;font-weight:700}.topbar h1{font:600 25px Manrope;margin:5px 0 0;letter-spacing:-.6px}.date-control input{background:#fff;color:#34443a;border:1px solid #E2E3DA;border-radius:8px;padding:10px 12px;color-scheme:light}.content{max-width:1250px;margin:0 auto;padding:34px 42px 60px}.welcome-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.welcome-row h2,.section-actions h2{font:600 21px Manrope;margin:0 0 5px}.welcome-row p,.section-actions p{color:#89958a;margin:0;font-size:13px}.progress-card{display:flex;gap:13px;align-items:center;background:#fff;border:1px solid #E8E6DE;border-radius:12px;padding:12px 17px;min-width:190px;box-shadow:0 2px 8px #34443a08}.progress-number{font:600 27px Manrope;color:#66836b}.progress-number span{color:#a5aea5;font-size:16px}.progress-copy{flex:1}.progress-copy strong{font-size:11px}.progress-copy small{display:block;color:#929d92;font-size:10px;margin-top:4px}.progress-track{height:4px;background:#e9ede6;border-radius:5px;margin-top:6px;overflow:hidden}.progress-track i{height:100%;display:block;background:#78917c;border-radius:5px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:18px}.panel{background:#fff;border:1px solid #E8E6DE;border-radius:13px;overflow:hidden;box-shadow:0 2px 10px #34443a08}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 21px;border-bottom:1px solid #F0EFEA}.panel-heading h3{font:600 17px Manrope;margin:5px 0 0}.pill{background:#f0f1eb;color:#788579;border-radius:20px;padding:6px 10px;font-size:10px}.pill.green{background:#e8eee6;color:#58745d}.task-list{padding:3px 20px}.task-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #F0EFEA;cursor:pointer}.task-row:last-child{border:0}.task-row input{position:absolute;opacity:0}.checkmark{width:19px;height:19px;border:1px solid #C6CEC4;border-radius:6px;flex-shrink:0;display:grid;place-items:center;transition:background .2s,border-color .2s}.task-row input:checked+.checkmark{background:#78917c;border-color:#78917c}.task-row input:checked+.checkmark:after{content:"✓";color:#fff;font-size:13px;font-weight:700}.task-main{display:grid;gap:4px;flex:1}.task-main strong{font-size:13px;font-weight:600}.task-main small,.recurrence{font-size:10px;color:#929d92}.recurrence{text-transform:capitalize}.is-done .task-main strong{text-decoration:line-through;color:#a5aea5}.schedule-panel{padding-bottom:0}.suggestion-list{padding:13px 20px 5px}.suggestion{display:grid;grid-template-columns:75px 12px 1fr;gap:12px;min-height:64px}.time{font-size:11px;color:#536256;font-weight:600;padding-top:2px}.time span{display:block;color:#9aa39a;font-size:10px;margin-top:5px;font-weight:400}.suggestion-line{width:1px;background:#e1e7de;position:relative;margin:2px auto 0}.suggestion-line:before{content:"";position:absolute;top:0;left:-4px;width:9px;height:9px;border-radius:50%;background:#78917c}.suggestion-copy{display:grid;align-content:start;gap:5px}.suggestion-copy strong{font-size:12px}.suggestion-copy small{color:#929d92;font-size:10px}.capacity{border-top:1px solid #F0EFEA;margin-top:8px;padding:14px 20px}.capacity div{display:flex;justify-content:space-between;font-size:11px;color:#829184}.capacity strong{color:#66836b;font:600 14px Manrope}.capacity small{display:block;color:#a0a99f;font-size:10px;margin-top:5px}.note-banner{display:flex;gap:13px;align-items:flex-start;margin-top:18px;padding:16px 19px;border:1px solid #E0E8DC;background:#edf2ea;border-radius:11px}.note-banner>span{color:#66836b;font-size:20px}.note-banner strong{font-size:12px;color:#465b49}.note-banner p{font-size:11px;color:#829184;margin:4px 0 0}.section-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.primary{border:0;background:#78917c;color:#fff;border-radius:8px;padding:11px 16px;font-size:12px;font-weight:700;transition:background .2s}.primary:hover{background:#667f6b}.table-panel{padding:4px 20px}.library-row{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid #F0EFEA}.library-row:last-child{border:0}.library-row>div{flex:1;display:grid;gap:5px}.library-row strong{font-size:13px}.library-row small{color:#929d92;font-size:10px}.library-row>span{color:#66836b;font-size:12px}.text-button{background:transparent;border:0;color:#829184;font-size:11px}.text-button:hover{color:#a36f66}.empty,.loading{padding:25px;color:#89958a;font-size:12px;line-height:1.6}.error{margin:20px 42px 0;padding:12px;background:#f8eae7;color:#9b554b;border:1px solid #F0D7D1;border-radius:8px;font-size:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#34443a66;display:grid;place-items:center;padding:20px;z-index:10}.modal{width:min(480px,100%);background:#faf9f6;border:1px solid #E8E6DE;border-radius:14px;padding:23px;display:grid;gap:14px;box-shadow:0 20px 60px #34443a20}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.modal-head h2{font:600 19px Manrope;margin:0}.modal-head button{background:transparent;border:0;color:#829184;font-size:25px}.modal label{display:grid;gap:6px;color:#69766b;font-size:11px}.modal input,.modal select{width:100%;background:#fff;border:1px solid #E2E3DA;border-radius:7px;padding:10px;color:#34443a;font-size:12px;color-scheme:light}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{width:100%;margin-top:5px}@media (max-width:900px){.sidebar{width:205px}.content{padding:28px 24px}.topbar{padding:22px 24px}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:620px){.app-shell{display:block;padding-bottom:68px}.sidebar{position:fixed;z-index:5;bottom:0;left:0;right:0;width:auto;height:64px;padding:6px 10px;border-right:0;border-top:1px solid #E8E6DE;background:#faf9f6}.brand,.sidebar-bottom{display:none}.sidebar nav{height:100%;display:flex;justify-content:space-around;gap:4px}.sidebar nav button{flex:1;text-align:center;padding:8px 4px;font-size:10px}.sidebar nav button span{display:block;width:auto;font-size:17px;margin-bottom:2px}.topbar{height:auto;padding:19px 17px}.topbar h1{font-size:21px}.date-control input{max-width:145px;padding:8px 5px;font-size:11px}.content{padding:22px 14px 30px}.welcome-row{align-items:flex-start;gap:12px;flex-direction:column}.progress-card{width:100%}.dashboard-grid{gap:13px}.section-actions{align-items:flex-start;gap:12px}.section-actions h2{font-size:19px}.section-actions p{max-width:230px;line-height:1.5}.section-actions .primary{white-space:nowrap;padding:10px}.form-grid{grid-template-columns:1fr}}
