:root{font-family:system-ui,-apple-system,Segoe UI,Noto Sans JP,sans-serif;color:#26372f;background:#f5f7f4;font-synthesis:none;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #d4ddd5;border-radius:10px;padding:10px 15px;color:inherit;min-height:44px}button:disabled{cursor:default;opacity:.48}button:hover:not(:disabled){background:#eff4ef}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #75a994;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:.03em;margin-bottom:0}h1 span{font-size:16px;color:#6d8375;font-weight:500;vertical-align:middle;margin-left:9px}h2{font-size:20px}h3{font-size:16px;margin:26px 0 12px}.app{max-width:760px;margin:0 auto;padding:52px 24px 80px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.eyebrow{color:#738578;font-size:12px;letter-spacing:.09em;margin-bottom:8px}.icon{border:0;background:transparent;font-size:24px;line-height:1;min-width:44px;padding:8px}.settings{color:#6b7c71;font-size:26px}.add{color:#276b56;width:100%;text-align:left;background:#edf4ee;border:1px dashed #aec5b4;font-weight:600;padding:14px 18px;margin-bottom:16px}.tasks{list-style:none;margin:0;padding:0;background:#fff;border:1px solid #e0e6e0;border-radius:14px}.task{display:flex;align-items:center;gap:12px;padding:16px 12px 16px 18px;position:relative;min-height:78px}.task:not(:last-child){border-bottom:1px solid #edf0ec}.task input[type=checkbox]{appearance:none;flex-shrink:0;margin:0;width:24px;height:24px;border:1.5px solid #bacabd;border-radius:50%;cursor:pointer}.task input:checked{background:#3c8068;border-color:#3c8068}.task input:checked:after{content:"✓";color:#fff;display:block;text-align:center;font-size:17px;line-height:22px}.tasktitle{flex:1;min-width:0;border:0;background:none;text-align:left;padding:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere;min-height:44px}.done .tasktitle{color:#8b968e;text-decoration:line-through}.due{flex-shrink:0;font-size:12px;color:#647d6e;background:#f0f5ef;border-radius:6px;padding:5px 8px;white-space:nowrap}.due.overdue{color:#b45544;background:#fff0ec}.due.uncertain{color:#9b7738;background:#fcf5e8}.menubox{position:relative}.menu{position:absolute;right:0;top:42px;z-index:2;background:#fff;padding:5px;box-shadow:0 5px 25px #25372b22;border:1px solid #dde5dd;border-radius:10px;min-width:110px}.menu button{border:0;display:block;width:100%;text-align:left}.textdanger{color:#b64c40}.completed{margin-top:30px;color:#7a8a7e}.completed summary{padding:12px 2px;cursor:pointer;font-size:14px}.completed summary span{margin-left:5px;font-size:12px}.completed .tasks{margin-top:8px}.empty{text-align:center;color:#829186;padding:58px 20px;font-size:14px}.empty span{display:inline-grid;place-items:center;background:#e7f0e8;width:52px;height:52px;border-radius:50%;font-size:26px;margin-bottom:14px}.login{max-width:390px;margin:10vh auto;padding:28px}.login h1{text-align:center;margin-bottom:12px}.brand{width:52px;height:52px;background:#276b56;border-radius:16px;color:#fff;display:grid;place-items:center;font-size:30px;margin:0 auto 24px}.muted{text-align:center;color:#7a8b7e;font-size:14px;margin-bottom:32px}label{display:block;font-size:13px;margin:18px 0 6px;font-weight:600}input:not([type=checkbox]),select{display:block;width:100%;padding:12px;border:1px solid #ced9cf;background:#fff;border-radius:8px;color:#26372f;margin-top:8px;min-height:46px}input[type=checkbox]{accent-color:#276b56}.checkline{display:flex;gap:9px;align-items:center;font-weight:400;font-size:12px;margin:22px 0}.checkline input{width:18px;height:18px}.primary{background:#276b56;color:#fff;border-color:#276b56}.primary:hover:not(:disabled){background:#205e4b}.login .primary{width:100%}.hint{color:#7f8a82;font-size:12px;line-height:1.8;margin-top:16px}.error{color:#a74235;font-size:13px;line-height:1.7}.banner{background:#fff0ed;border-radius:10px;padding:14px;margin-bottom:16px}.banner button{margin-left:10px;padding:5px 10px;min-height:36px}.notice{background:#f9f0d9;padding:12px;border-radius:8px;font-size:13px}dialog{width:min(480px,calc(100% - 32px));border:1px solid #dce5dc;border-radius:18px;padding:28px;color:#26372f;box-shadow:0 20px 80px #19322030;max-height:90dvh;overflow:auto}dialog::backdrop{background:#19352455}.dialoghead{display:flex;align-items:center;justify-content:space-between}.dialoghead h2{margin:0}.dates{display:flex;gap:12px}.dates label{flex:1;min-width:0}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.wrap{flex-wrap:wrap;justify-content:flex-start}.danger{background:#ac493e;color:#fff;border:0}@media(max-width:520px){.app{padding:30px 16px 60px}h1{font-size:27px}.task{padding:13px 6px 13px 13px;gap:9px;flex-wrap:wrap}.tasktitle{font-size:14px;flex-basis:calc(100% - 87px)}.due{margin-left:33px;order:4;margin-top:-8px}.task .menubox{align-self:flex-start}.task input[type=checkbox]{margin-top:10px;align-self:flex-start}dialog{padding:22px}.dates{flex-wrap:wrap}.dates label{min-width:135px}.login{margin-top:5vh}}
