:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#134e4a;--bg:#f0fdfa;--line:#b7d8d1;--accent:#0f766e}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.6 system-ui,PingFang SC,sans-serif}main{min-height:100vh;padding:32px clamp(20px,4vw,64px)}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:24px;display:flex}h1{margin:0;font-size:34px}header p{margin:4px 0}small{color:#475569}.notice{border-left:3px solid var(--accent);background:#fff;margin:24px 0;padding:12px 16px}.composer{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px}.inputrow{gap:12px;margin-top:8px;display:flex}input[type=text]{min-width:0;font:inherit;border:1px solid #6e9991;border-radius:7px;flex:1;padding:12px}button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:7px;min-height:44px;padding:10px 20px}button:hover{background:#e4f4ef}.primary{background:var(--accent);color:#fff}.primary:hover{background:#115e59}:focus-visible{outline-offset:3px;outline:3px solid #ea580c}button:disabled{opacity:.55;cursor:wait}.status{min-height:30px;margin:12px 0}ul{padding:0;list-style:none}li{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:18px 8px;display:flex}li span{overflow-wrap:anywhere;flex:1}.done{color:#52716c;text-decoration:line-through}input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent)}.empty{text-align:center;color:#475569;padding:48px 16px}.rowform{flex:1;gap:8px;display:flex}.danger{color:#b91c1c}@media (max-width:600px){main{padding:20px}header{align-items:start}h1{font-size:28px}.composer{padding:16px}li,.rowform{flex-wrap:wrap}button{padding:10px 14px}}.undo{align-items:center;gap:16px;display:flex}.undo span{flex:1}.datefield{flex-direction:column;justify-content:center;gap:3px;display:flex}.datefield label{font-size:13px}.datefield input{font:inherit;min-height:44px;color:var(--ink);background:#fff;border:1px solid #6e9991;border-radius:7px;padding:6px 10px}.due{font-size:14px;text-decoration:none;display:block}.inputrow{align-items:end}.inputrow>input{min-height:48px}@media (max-width:600px){.inputrow{flex-wrap:wrap}.inputrow>input{flex-basis:100%}.datefield{flex:1}}
