:root{color:#20332b;background:#e6e7e2;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}svg{width:1.25rem;height:1.25rem;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-shell{min-height:100vh;padding:clamp(14px,2.3vw,32px);display:grid;place-items:center;background:linear-gradient(rgba(51,77,65,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(51,77,65,.035) 1px,transparent 1px),#e6e7e2;background-size:32px 32px}.workspace{width:min(1180px,100%);min-height:min(780px,calc(100vh - 64px));background:#f8f7f1;border:1px solid rgba(27,58,45,.14);box-shadow:0 28px 80px #20342c1c;display:flex;flex-direction:column}.topbar{min-height:76px;padding:0 clamp(24px,4.3vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde0d8}.brand{min-height:44px;display:inline-flex;align-items:center;gap:12px;color:#183c2e;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;letter-spacing:.25em;text-decoration:none}.brand-mark{width:27px;height:27px;border:1.5px solid #183c2e;display:grid;place-items:center;transform:rotate(45deg)}.brand-mark span{width:6px;height:6px;background:#d7ff73}.save-note{display:inline-flex;align-items:center;gap:9px;color:#607168;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.save-dot{width:7px;height:7px;border-radius:50%;background:#85a847;box-shadow:0 0 0 4px #85a84721}.content-grid{flex:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr)}.intro-panel{position:relative;overflow:hidden;padding:clamp(44px,5vw,72px) clamp(28px,5.4vw,72px) 48px;background:#173e30;color:#f6f5eb}.intro-panel:before{content:"";position:absolute;width:310px;height:310px;left:-160px;top:140px;border:1px solid rgba(220,255,126,.12);transform:rotate(45deg)}.intro-panel:after{content:"";position:absolute;width:140px;height:140px;right:-75px;bottom:-72px;background:#d9ff75;transform:rotate(45deg);opacity:.08}.eyebrow{position:relative;z-index:1;display:flex;align-items:center;gap:12px;color:#d9ff75;font-size:11px;font-weight:700;letter-spacing:.18em}.eyebrow span{width:25px;height:1px;background:#d9ff75}h1{position:relative;z-index:1;margin:24px 0 18px;font-family:DM Sans,sans-serif;font-size:clamp(48px,5vw,68px);line-height:.99;letter-spacing:-.055em;font-weight:500}.intro-copy{position:relative;z-index:1;margin:0 0 38px;color:#b8c9c1;font-size:13px;line-height:1.7}.todo-form{position:relative;z-index:1}.field-group{margin-bottom:18px}.field-group label{display:block;margin-bottom:8px;color:#dbe6e0;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.field-group input{width:100%;min-height:52px;padding:0 15px;border:1px solid rgba(240,249,244,.2);border-radius:0;outline:none;background:#ffffff0e;color:#fff;font-size:13px;transition:border-color .2s,background .2s,box-shadow .2s}.field-group input::placeholder{color:#81968d}.field-group input:focus{border-color:#d9ff75;background:#ffffff16;box-shadow:0 0 0 3px #d9ff751a}.date-input-wrap{position:relative}.date-input-wrap>svg{position:absolute;left:15px;top:16px;color:#9eb2a9;pointer-events:none}.date-input-wrap input{padding-left:46px;color-scheme:dark}.add-button{width:100%;min-height:56px;margin-top:8px;padding:0 16px 0 8px;border:0;display:flex;align-items:center;gap:13px;background:#d9ff75;color:#173e30;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.03em;transition:transform .18s,background .18s,opacity .18s}.add-button:hover:not(:disabled){background:#e5ff9f;transform:translateY(-1px)}.add-button:focus-visible{outline:3px solid white;outline-offset:3px}.add-button:disabled{cursor:wait;opacity:.7}.add-button>svg{margin-left:auto}.button-icon{width:40px;height:40px;display:grid;place-items:center;background:#173e30;color:#d9ff75}.form-message{min-height:25px}.form-message p{margin:10px 0 0;font-size:11px;line-height:1.45}.error-message{color:#ffc0a6}.success-message{color:#d9ff75}.list-panel{padding:clamp(44px,5vw,72px) clamp(28px,5.4vw,72px) 46px;background:#f8f7f1}.list-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.list-kicker{color:#7a887f;font-size:10px;font-weight:700;letter-spacing:.17em}h2{margin:9px 0 0;color:#183c2e;font-family:DM Sans,sans-serif;font-size:clamp(34px,4vw,46px);line-height:1;letter-spacing:-.045em;font-weight:500}.count-badge{min-height:30px;padding:7px 12px;border:1px solid #d5dbd2;color:#5d6c64;font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.rule{width:100%;height:1px;margin:27px 0 16px;background:#d9ded7}.list-action-error{margin:0 0 12px;padding:10px 12px;border-left:3px solid #a56754;background:#f4e8e1;color:#754838;font-size:11px;line-height:1.45}.todo-list{list-style:none;margin:0;padding:0}.todo-item{min-height:90px;padding:17px 4px;display:flex;align-items:flex-start;gap:15px;border-bottom:1px solid #e1e4de}.item-marker{flex:0 0 auto;width:12px;height:12px;margin-top:5px;border:2px solid #789181;transform:rotate(45deg)}.status-button{flex:0 0 44px;width:44px;height:44px;margin:-8px -10px 0 -12px;padding:0;border:0;display:grid;place-items:center;background:transparent;color:#173e30;cursor:pointer}.status-button .item-marker{margin:0;display:grid;place-items:center;font-size:11px;line-height:1}.status-button[aria-pressed=true] .item-marker{background:#d9ff75;width:18px;height:18px;transform:none}.status-button:focus-visible{outline:2px solid #61806f;outline-offset:-3px}.status-button:disabled{opacity:.5;cursor:wait}.is-completed .item-main h3{text-decoration:line-through;color:#758178}.completed-label{font-size:10px;font-weight:700;color:#294b3d}.deadline-row{flex-wrap:wrap}.item-main{min-width:0;flex:1}.item-main h3{margin:0;color:#284238;font-size:14px;line-height:1.45;font-weight:600;overflow-wrap:anywhere}.deadline-row{margin-top:9px;display:flex;align-items:center;gap:9px}.deadline-row time{color:#758178;font-size:11px;text-transform:capitalize}.deadline-pill{padding:4px 7px;font-size:10px;line-height:1;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.deadline-pill.is-upcoming{background:#e9eddc;color:#68764b}.deadline-pill.is-today{background:#d9ff75;color:#284131}.deadline-pill.is-overdue{background:#f4ded6;color:#8b4d3e}.delete-button{flex:0 0 auto;width:44px;height:44px;margin:-8px -8px 0 0;border:0;display:grid;place-items:center;background:transparent;color:#89958e;cursor:pointer;transition:color .18s,background .18s}.delete-button svg{width:17px;height:17px}.delete-button:hover:not(:disabled){color:#8b4d3e;background:#f4e8e1}.delete-button:focus-visible{outline:2px solid #61806f;outline-offset:-3px}.delete-button:disabled{cursor:wait;opacity:.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.empty-state,.loading-state{min-height:220px;padding:46px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#78857e}.empty-icon{width:44px;height:44px;margin-bottom:16px;display:grid;place-items:center;border:1px solid #cbd2ca;color:#678073;font-size:18px;transform:rotate(45deg)}.empty-icon>svg{transform:rotate(-45deg)}.empty-state h3{margin:0 0 7px;color:#365045;font-family:DM Sans,sans-serif;font-size:17px;font-weight:600}.empty-state p,.loading-state p{max-width:280px;margin:0;font-size:11px;line-height:1.6}.empty-state button{min-height:42px;margin-top:16px;padding:0 18px;border:1px solid #294b3d;background:transparent;color:#294b3d;cursor:pointer;font-size:11px;font-weight:700}.empty-state button:focus-visible{outline:3px solid #a8ca50;outline-offset:3px}.loading-bar{width:min(230px,70%);height:8px;margin:5px;background:linear-gradient(90deg,#e1e4de 25%,#f0f1ed,#e1e4de 65%);background-size:250% 100%;animation:shimmer 1.4s infinite}.loading-bar.short{width:min(160px,50%)}.loading-state p{margin-top:14px}@keyframes shimmer{to{background-position:-250% 0}}footer{min-height:56px;padding:0 clamp(24px,4.3vw,64px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #dde0d8;color:#8b958f;font-size:10px;letter-spacing:.04em}footer span{color:#51665b;font-weight:700;letter-spacing:.19em}footer p{margin:0}@media(max-width:820px){.app-shell{padding:0;display:block}.workspace{min-height:100vh;border:0;box-shadow:none}.content-grid{grid-template-columns:1fr}.intro-panel,.list-panel{padding:46px clamp(24px,8vw,54px) 40px}.intro-panel:before{top:100px}.list-panel{min-height:390px}}@media(max-width:480px){.topbar{min-height:66px;padding:0 20px}.brand{font-size:11px;gap:10px}.brand-mark{width:24px;height:24px}.save-note{max-width:92px;line-height:1.35;font-size:10px;letter-spacing:.04em}.intro-panel,.list-panel{padding-left:21px;padding-right:21px}.intro-panel{padding-top:40px}h1{font-size:49px}.intro-copy br{display:none}.add-button{font-size:11px}.list-heading-row{align-items:center}.list-panel{padding-top:40px}.rule{margin-top:23px}footer{min-height:66px;padding:14px 20px;align-items:flex-start;flex-direction:column;justify-content:center;gap:5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(./dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(./dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(./dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(./dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(./dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(./dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(./dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(./dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(./manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(./manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(./manrope-latin-500-normal-DMZssgOp.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(./manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(./manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-ext-400-normal-CMDvPJRp.woff2) format("woff2"),url(./manrope-latin-ext-400-normal-C-X6QNXX.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(./manrope-latin-ext-500-normal-dm74KBQw.woff2) format("woff2"),url(./manrope-latin-ext-500-normal-EtoS1VaI.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-latin-ext-600-normal-_gBojHdJ.woff2) format("woff2"),url(./manrope-latin-ext-600-normal-u5Pl7hTU.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-latin-ext-700-normal-DYOwVNan.woff2) format("woff2"),url(./manrope-latin-ext-700-normal-eVCcYqtJ.woff) format("woff")}
