:root{font-family:Roboto,Segoe UI,system-ui,sans-serif;color:#161d1d;background:#f4fbfa;font-synthesis:none;--primary:#006a6a;--muted:#4a6363;--line:#bec9c8;--panel:#fff;--chip:#e3eeee;--error:#ba1a1a;color-scheme:light dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:none;border:0;color:var(--primary);min-height:44px;border-radius:8px;padding:8px 12px}button:hover{background:var(--chip)}button:disabled{opacity:.5;cursor:default}a{color:var(--primary)}:focus-visible{outline:3px solid var(--primary);outline-offset:3px}input,textarea,select{background:var(--panel);color:inherit;border:1px solid var(--line);border-radius:8px;padding:10px;min-height:44px;max-width:100%}h1{font-size:clamp(26px,4vw,36px);letter-spacing:-.7px;font-weight:600;margin:5px 0 0}h2{font-size:16px;font-weight:600;margin:0}p{line-height:1.6}.app{max-width:848px;margin:auto;padding:40px 28px 210px}header{display:flex;align-items:center;justify-content:space-between;gap:16px}.date{color:var(--primary);margin:0;font-size:14px}.account-button{border:1px solid var(--line);max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-state{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted);min-height:44px}.save-state button{font-size:13px;padding:4px}.progress{display:flex;gap:16px;align-items:center;font-size:13px;color:var(--muted);margin:10px 0 24px}progress{height:6px;flex:1;accent-color:var(--primary)}section{margin-top:28px}section h2{color:var(--primary);display:flex;gap:12px;margin-bottom:6px}section h2 span{font-weight:400}.overdue h2{color:var(--error)}ul{list-style:none;margin:0;padding:0}.task{display:flex;align-items:center;gap:12px;min-height:66px;border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.check{flex-shrink:0;border:2px solid var(--muted);border-radius:50%;width:26px;height:26px;min-height:26px;padding:0;position:relative}.check:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.check.high{border-color:var(--error)}.check.medium{border-color:#a56e00}.task-copy{text-align:left;flex:1;color:inherit;min-width:0;padding:12px 0;border-radius:0}.task-copy span{display:block;overflow-wrap:anywhere}.task-copy small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.task-copy small:empty{display:none}.done .task-copy span{text-decoration:line-through;color:var(--muted)}.delete{font-size:25px;color:var(--muted);flex-shrink:0}.completed-header{display:flex;justify-content:space-between;align-items:center}.completed-header button:first-child{color:var(--muted);padding-left:0}.completed-header span{margin-left:8px}.muted{color:var(--muted);font-size:13px}.empty{text-align:center;padding:65px 0 45px;color:var(--muted)}.empty h2{font-size:21px;color:inherit;margin:16px 0 0}.empty-icon{display:inline-grid;place-items:center;font-size:40px;border:2px solid var(--primary);color:var(--primary);border-radius:50%;height:64px;width:64px}.quick-add{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,848px);padding:18px 28px max(18px,env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);z-index:2}.add-line{display:flex;gap:12px}.add-line input{flex:1;min-width:0;border:0;background:transparent;font-size:17px}.primary{background:var(--primary);color:var(--panel);padding:10px 20px}.primary:hover{filter:brightness(1.15);background:var(--primary)}.chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:8px}.chips button,.chips select,.chips input{font-size:12px;min-height:36px;padding:7px 9px}.chips input{width:142px}.chips .selected{background:var(--chip);color:var(--primary)}.snackbar{position:fixed;bottom:175px;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);display:flex;align-items:center;gap:25px;background:#253535;color:#fff;padding:8px 18px;border-radius:10px;z-index:5}.snackbar button{color:#9cf1f0}.error{color:var(--error);background:color-mix(in srgb,var(--error) 7%,var(--panel));padding:12px 16px;border-radius:8px;overflow-wrap:anywhere;font-size:14px}.error button{float:right;color:inherit}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center;padding:20px;z-index:10}.dialog,dialog{background:var(--panel);color:inherit;border:0;border-radius:20px;padding:28px;width:460px;max-width:calc(100vw - 32px);position:relative;max-height:90dvh;overflow:auto}.dialog p{margin:18px 0}.dialog h2,dialog h2{font-size:22px;padding-right:25px}.close{position:absolute;right:10px;top:10px;font-size:25px;color:var(--muted)}dialog::backdrop{background:#0006}dialog label{display:flex;flex-direction:column;gap:6px;margin-top:18px;font-size:14px}dialog textarea{resize:vertical}.fields{display:flex;gap:14px}.fields label{flex:1;min-width:0}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.privacy{max-width:720px}.privacy h1{margin-top:30px}.privacy p{max-width:65ch}button,input,textarea,select{transition:background .12s}dialog form{margin:0}@media (max-width:540px){.app{padding:24px 20px 230px}.quick-add{padding-left:12px;padding-right:12px}.chips{gap:2px}.chips button,.chips input,.chips select{font-size:11px;padding-left:6px;padding-right:6px}.chips input{width:124px}.snackbar{bottom:192px}.dialog,dialog{padding:24px}.account-button{font-size:13px;padding:8px}.task{gap:12px}}@media (prefers-color-scheme:dark){:root{color:#dde4e3;background:#0e1514;--primary:#80d5d4;--muted:#b0cccb;--line:#3f4948;--panel:#161d1d;--chip:#253b3b;--error:#ffb4ab}.primary{color:#003737}.check.medium{border-color:#ffc94d}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
