@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";:root{font-family:DM Sans,sans-serif;color:#292c35;background:#fffaf4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 88% 6%,#fff0c9 0 8%,transparent 25%),#fffaf4}.app-shell{max-width:940px;margin:auto;padding:24px 24px 42px}.topbar{display:flex;align-items:center;justify-content:space-between}.brand{font-weight:700;display:flex;align-items:center;gap:9px;letter-spacing:-.4px}.brand-mark{height:32px;width:32px;display:grid;place-items:center;color:#fff;background:#e9766b;border-radius:11px;transform:rotate(-6deg)}.sync-status{font:500 12px DM Mono;display:flex;gap:7px;align-items:center;padding:8px 11px;border-radius:99px}.connected{color:#438362;background:#ebf6ed}.local{color:#98763f;background:#fff3d9}.hero{min-height:274px;display:flex;align-items:center;justify-content:space-between;padding:55px 7% 31px}.eyebrow{font:500 11px DM Mono;letter-spacing:.09em;text-transform:uppercase;color:#8e7d73;margin:0 0 12px}.hero h1{font:700 clamp(40px,6vw,61px)/.98 "Playfair Display";letter-spacing:-2.7px;margin:0}.hero h1 em{color:#e87669}.intro{max-width:410px;line-height:1.55;color:#726862;margin:18px 0 0;font-size:15px}.sunshine{position:relative;width:180px;height:170px;flex-shrink:0}.sun-core{width:112px;height:112px;display:grid;place-items:center;color:#ef9c3b;background:#ffd36e;border-radius:50%;font-size:57px;box-shadow:0 0 0 13px #ffe9b3,0 0 0 26px #fff3d9;position:absolute;top:25px;left:20px}.sun-note{position:absolute;right:0;bottom:0;padding:9px 13px;background:#fff;border-radius:12px;box-shadow:0 5px 22px #cfae8430;font:500 10px/1.35 DM Mono;color:#866f5b;transform:rotate(4deg)}.checklist-card{background:#fff;border:1px solid #f3e7dc;border-radius:23px;box-shadow:0 16px 44px #614b3512;padding:31px}.card-heading{display:flex;justify-content:space-between;align-items:center}.date-row{display:flex;align-items:center;gap:7px}.date-row button,.close{border:0;background:#f8f1ea;color:#655e59;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;cursor:pointer}.date-row h2{font:700 20px Playfair Display;margin:0 5px;letter-spacing:-.5px}.progress-copy{text-align:right}.progress-copy strong{display:block;font-size:25px;line-height:1;color:#e87669}.progress-copy small{font-size:14px}.progress-copy span{font:500 10px DM Mono;color:#978b83}.progress-track{height:7px;background:#f6eee8;border-radius:20px;margin:25px 0 20px;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef9a78,#e87669);transition:width .3s}.task-list{display:grid;gap:9px}.task{border:1px solid #f1e8e1;background:#fff;width:100%;border-radius:15px;min-height:70px;padding:12px 14px;display:flex;align-items:center;text-align:left;gap:14px;cursor:pointer;transition:.18s}.task:hover{transform:translateY(-1px);border-color:#e8cfc4;box-shadow:0 5px 16px #5d45350b}.task.done{background:#fffcf9}.task-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;flex-shrink:0}.coral{background:#ffe3dd;color:#df7064}.yellow{background:#fff0bd;color:#d79a2c}.mint{background:#dff4e9;color:#4e9a71}.blue{background:#e2effa;color:#5189b2}.lavender{background:#ede7fa;color:#8271b2}.task-text{display:grid;gap:3px;flex:1}.task-text strong{font-size:15px;color:#373435}.task-text small{font-size:12px;color:#9a8e87}.done .task-text strong,.done .task-text small{text-decoration:line-through;color:#aaa19b}.checkbox{width:25px;height:25px;border:2px solid #e1d7cf;border-radius:8px;display:grid;place-items:center;color:#fff;flex-shrink:0}.done .checkbox{background:#e87669;border-color:#e87669}.add-task{margin-top:19px;border:0;background:none;color:#d8655b;padding:8px 3px;font:600 13px DM Sans;display:flex;align-items:center;gap:6px;cursor:pointer}.bottom-note{display:flex;gap:7px;justify-content:center;align-items:center;margin:21px 0 0;color:#998b81;font:400 11px DM Mono}.loading{padding:50px;text-align:center;color:#9a8e87;font-size:14px}.spin{vertical-align:middle;animation:spin 1s linear infinite}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#3d2c2640;display:grid;place-items:center;padding:20px;z-index:3}.add-modal{position:relative;background:#fff;border-radius:20px;padding:30px;width:min(100%,410px);box-shadow:0 18px 60px #39251f3d}.add-modal h2{font:700 26px Playfair Display;margin:0 0 21px}.close{position:absolute;right:17px;top:17px}.add-modal input{font:15px DM Sans;width:100%;border:1px solid #e8ddd4;border-radius:11px;padding:13px 14px;outline-color:#e87669}.save-task{margin-top:12px;width:100%;border:0;background:#e87669;color:#fff;border-radius:11px;padding:13px;display:flex;align-items:center;justify-content:center;gap:5px;font-weight:700;cursor:pointer}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:600px){.app-shell{padding:19px 15px 30px}.hero{padding:48px 8px 31px;min-height:0}.hero h1{font-size:43px;letter-spacing:-2px}.sunshine{display:none}.checklist-card{padding:22px 17px;border-radius:19px}.card-heading{align-items:flex-start}.date-row h2{font-size:17px}.date-row{gap:3px}.progress-copy{padding-top:20px}.task{min-height:67px;padding:10px}.task-icon{width:39px;height:39px}.task-text small{font-size:11px}.topbar .sync-status span{display:none}}.startup-error{max-width:620px;margin:15vh auto;padding:36px;background:#fff;border:1px solid #f0ddd4;border-radius:20px;box-shadow:0 14px 45px #5d45351a}.startup-error p{font:500 11px DM Mono;color:#d8655b;text-transform:uppercase;letter-spacing:.09em}.startup-error h1{font:700 34px Playfair Display;margin:8px 0 17px}.startup-error code{display:block;white-space:pre-wrap;background:#fff4ef;padding:14px;border-radius:10px;color:#804a40;font:12px/1.5 DM Mono}.startup-error button{margin-top:18px;border:0;border-radius:10px;background:#e87669;color:#fff;padding:11px 15px;font-weight:700;cursor:pointer}.time-group{margin-top:25px}.group-title{display:flex;align-items:baseline;gap:9px;margin:0 3px 9px}.group-title span{font:700 18px Playfair Display;color:#514640}.group-title small{font:500 10px DM Mono;color:#ad9a8e}.task-actions{display:flex;gap:15px;align-items:center;margin-top:15px}.manage-task{border:0;background:none;color:#8b776a;padding:8px 3px;font:600 13px DM Sans;cursor:pointer}
