:root{font-family:"Segoe UI","Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:15px;color:#363b35;background:#fafbf8;font-synthesis:none;--green:#42644a;--muted:#81877d;--line:#e8ebe3}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:none;border:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #79986e;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid #a8b99b;outline-offset:1px}[hidden]{display:none!important}.icon{width:19px;height:19px;flex-shrink:0;vertical-align:middle}.app-shell{max-width:838px;margin:auto;padding:0 48px}.app-header{height:112px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:30px;font-weight:750;letter-spacing:-1.4px;color:#3d5a41;line-height:1}.brand span{color:#93a57e}.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;color:#89917e}.icon-button:hover{background:#edf1e8}.page-heading{margin:30px 0 30px}.notebook-label{font-size:9px;letter-spacing:2px;color:#98a18e;margin-bottom:14px}h1{font-size:32px;letter-spacing:1px;font-weight:600;line-height:1.4;margin:0 0 12px}.page-heading p{font-size:13px;color:#939b8a;margin:0;line-height:1.8}.add-box{background:white;border:1px solid #dfe5d7;border-radius:10px;box-shadow:0 2px 4px #30432b03;margin:0 0 22px;overflow:hidden}.add-box:focus-within{border-color:#9cb28a;box-shadow:0 0 0 3px #a6bd8b0d}.add-main{display:flex;align-items:center;gap:11px;padding:15px 16px 8px}.add-main>.icon{color:#9aa98d;width:21px;height:21px}.add-main>input{width:100%;min-width:0;font-size:15px;border:0;background:transparent;color:#3f4e35;outline:0;padding:10px 0}.add-main>input::placeholder{color:#a0a793}.add-main>input:focus{outline:0}.add-button{font-size:12px;min-width:55px;min-height:35px;color:#6d805c;background:#f0f4e9;border-radius:6px;font-weight:600}.add-button:hover{background:#e4edda}.add-options{padding:0 17px 12px 48px;display:flex;justify-content:space-between;align-items:center;gap:10px}.schedule-toggle{display:flex;gap:6px;align-items:center;font-size:11px;color:#879676;padding:6px 0;min-height:30px}.schedule-toggle .icon{width:14px;height:14px}.option-chevron{margin-left:3px;color:#a3b08f}.add-options>span{font-size:10px;color:#9ea793}.schedule-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;padding:18px 20px 0;border-top:1px solid var(--line);background:#fcfdf9}.schedule-fields label{font-size:10px;color:#7d8b70}.schedule-fields input,.schedule-fields select{width:100%;min-width:0;margin:7px 0 12px;border:1px solid #dfe5d6;border-radius:6px;padding:9px;background:white;font-size:12px;min-height:38px;color:#5a6a4d}.field-hint{font-size:11px;color:#87957a;line-height:1.9}#schedule-options>.field-hint{margin:0;padding:0 20px 18px;background:#fcfdf9}.sample-note{font-size:10px;color:#9da690;display:flex;justify-content:space-between;margin:-4px 0 37px;gap:10px}.sample-note button{font-size:10px;color:#899a72;padding:0;text-decoration:underline;text-underline-offset:3px}.list-section{margin:31px 0 0}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}.section-heading h2{font-size:12px;letter-spacing:.3px;font-weight:600;margin:0;color:#808b73;display:flex;align-items:center;gap:10px}.section-heading h2>span{font-size:10px;color:#a3ad97;font-weight:400;letter-spacing:0}.section-heading>p{font-size:10px;color:#a1aa96;margin:0}.todo-list{list-style:none;padding:0;margin:0}.todo-row{display:flex;align-items:center;gap:4px;min-height:79px;border-bottom:1px solid var(--line);position:relative;padding:9px 0;transition:background .15s;border-radius:3px}.todo-row:hover{background:#f4f6ef}.complete{display:flex;align-items:center;justify-content:center;min-width:40px;width:40px;height:44px;padding:0;margin-left:-7px;color:#7c996b}.complete>span{width:19px;height:19px;border:1.5px solid #c4cdb9;border-radius:50%;transition:background .15s}.complete:hover>span{background:#e9f0df;border-color:#8da478}.complete.checked .icon{width:19px;height:19px}.row-body{display:flex;align-items:flex-start;flex-direction:column;gap:8px;flex:1;min-width:0;padding:9px 8px 9px 2px;text-align:left;min-height:52px}.row-title{font-size:15px;font-weight:450;color:#43503a;line-height:1.6;overflow-wrap:anywhere}.row-meta{display:flex;gap:13px;align-items:center;color:#9aa48d;font-size:10px;line-height:1.5;flex-wrap:wrap}.repeat-label{display:inline-flex;align-items:center;gap:4px;color:#98a78a}.repeat-label>.icon{width:11px;height:11px}.row-meta .past-date{color:#a48b68}.defer-button{display:flex;align-items:center;justify-content:center;gap:5px;padding:9px 9px;color:#9aa68d;border-radius:6px;font-size:10px;min-height:36px;opacity:0;transition:opacity .15s}.defer-button>.icon{width:14px;height:14px}.defer-button:hover{background:#eaf0e1;color:#6c8755}.todo-row:hover .defer-button,.todo-row:focus-within .defer-button,.defer-button.restore{opacity:1}.row-menu{width:32px;min-width:32px;color:#a4af99}.row-menu .icon{width:17px;height:17px}.deferred-section{border-left:2px solid #e2d6bf;padding-left:18px;margin-left:-20px}.deferred-section h2{color:#a28b63}.deferred-section .row-title{color:#7a775f}.deferred-section .row-meta{color:#a49b82}.someday-section{margin-top:39px}.someday-section h2{color:#8b947e}.someday-section .row-title{color:#7e8870}.future-divider{margin:52px 0 28px;padding:25px 0 0;border-top:1px dashed #dce4d2}.future-divider>span{display:flex;align-items:center;gap:7px;font-size:11px;color:#889a75}.future-divider .icon{width:14px;height:14px}.future-divider p{font-size:10px;color:#a1ad94;margin:9px 0 0}.future-section{margin-top:25px}.future-section .row-title{color:#7d8971;font-size:14px}.future-section .row-meta{color:#a1ad96}.future-section .complete>span{border-color:#d1dac7}.future-section .todo-row{border-bottom-color:#ecf0e6}.empty-list{padding:20px 0;color:#a2ad97;font-size:12px;line-height:2}.bought-section{margin:44px 0 30px;border-top:1px solid var(--line)}.bought-toggle{width:100%;text-align:left;display:flex;align-items:center;gap:8px;padding:20px 0;font-size:11px;color:#929f83}.bought-toggle>.icon{width:14px;height:14px}.bought-toggle>span:not(.toggle-chevron){font-size:10px;color:#aab49e;margin-left:2px}.toggle-chevron{margin-left:auto}.is-done .row-title{color:#a2ad96;text-decoration:line-through;text-decoration-color:#c9d3bf}.empty-bought{font-size:11px;color:#9fac91;padding:0 0 20px;line-height:1.8}footer{display:flex;justify-content:space-between;padding:18px 0 40px;color:#aab39f;font-size:9px;gap:20px}#suggestions:empty{display:none}#suggestions{border-top:1px solid var(--line);background:#fcfdf9}.suggestion-heading{padding:12px 18px 3px;font-size:10px;color:#96a287}#suggestions ul{list-style:none;margin:0;padding:0 8px 8px}#suggestions li button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 10px;text-align:left;border-radius:6px}#suggestions li button:hover{background:#eff4e7}#suggestions li button>span{font-size:13px;flex:1;overflow-wrap:anywhere}#suggestions small{font-size:10px;color:#94a381}#suggestions .icon{width:14px;height:14px;color:#93a27e}.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}dialog{border:1px solid #e1e8d8;border-radius:12px;background:#fff;box-shadow:0 25px 100px #1e382d24;padding:0;width:min(460px,calc(100% - 32px));max-height:90dvh;color:#47583c}dialog::backdrop{background:#24352259;backdrop-filter:blur(2px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:17px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:1}.modal-header h2{font-size:16px;font-weight:600;margin:0}.modal-body,dialog form{padding:22px}.modal-body p{font-size:12px;color:#81916f;line-height:2;margin:0 0 20px}.modal-body h3{font-size:17px;font-weight:500;margin:0 0 10px}dialog form label{font-size:11px;color:#80926e;display:block;margin-bottom:19px}dialog input,dialog select,dialog textarea{display:block;width:100%;margin-top:8px;padding:11px;border:1px solid #dce5d2;border-radius:6px;background:#fcfdf9;min-height:42px;font-size:14px;color:#4f6540}dialog textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}dialog form .field-hint{margin:-10px 0 20px;font-size:10px;color:#94a182;line-height:1.9}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.primary,.secondary{min-height:40px;padding:10px 22px;border-radius:6px;font-size:12px}.primary{background:#526f48;color:#fff}.primary:hover{background:#3f5d35}.secondary{background:#f2f5ec;color:#82956e}.remove-button{margin-right:auto;font-size:10px;color:#a28e74;padding:10px 0}.purchase-history{border:1px solid #e7ecdf;border-radius:7px;padding:14px 13px;color:#8a9a77;font-size:10px;margin-top:24px}.purchase-history summary{cursor:pointer;line-height:1.7}.purchase-history>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:12px;font-size:11px}.purchase-history small{display:block;font-size:9px;color:#a0ad8e;line-height:1.8}.purchase-history strong{font-weight:500;color:#728b5f}.setting-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 0;border-top:1px solid var(--line);text-align:left;font-size:12px;color:#7b9167}.setting-row>span{color:#a7b69a}.settings .field-hint{font-size:10px;margin:15px 0;color:#92a17f}#toast{position:fixed;bottom:27px;left:50%;transform:translate(-50%,12px);z-index:30;max-width:calc(100vw - 30px);width:max-content;display:flex;align-items:center;gap:20px;background:#455e3d;color:white;border-radius:9px;box-shadow:0 5px 25px #263b2820;padding:14px 20px;font-size:12px;line-height:1.8;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}#toast.visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}#toast button{font-size:11px;color:#dbe9ca;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}.error{background:#fff1e4;color:#9e7754;border:1px solid #f1dbc0;border-radius:7px;font-size:12px;line-height:1.9;padding:16px;margin-bottom:20px}
@media(hover:none){.defer-button{opacity:1}}
@media(max-width:600px){.app-shell{padding:0 24px}.app-header{height:80px}.brand{font-size:26px}.page-heading{margin:23px 0 26px}h1{font-size:29px}.notebook-label{font-size:8px}.page-heading p{font-size:12px}.add-main{padding:12px 12px 6px;gap:8px}.add-main>input{font-size:16px}.add-options{padding-left:40px;padding-right:12px;gap:7px}.add-options>span{font-size:9px}.schedule-toggle{font-size:10px}.add-button{font-size:11px;min-width:48px}.sample-note{margin-bottom:28px;font-size:9px}.sample-note button{font-size:9px}.section-heading{display:block;margin-bottom:6px}.section-heading>p{font-size:10px;margin:7px 0 0}.deferred-section{margin-left:-12px;padding-left:10px}.todo-row{min-height:79px;gap:2px}.row-title{font-size:15px}.row-meta{font-size:10px;gap:9px}.complete{width:33px;min-width:33px;margin-left:-5px}.complete>span{width:19px;height:19px}.defer-button{opacity:1;padding:10px 6px;font-size:10px;min-width:37px}.defer-button>.icon{display:none}.row-menu{width:29px;min-width:29px}.row-menu>.icon{width:16px;height:16px}.future-section .row-title{font-size:14px}.future-divider{margin-top:43px}.schedule-fields{grid-template-columns:1fr 1fr;gap:10px;padding:16px 14px 0}.schedule-fields label:last-child{grid-column:1/-1}.schedule-fields input,.schedule-fields select{font-size:16px;min-height:42px}footer{font-size:8px;gap:10px;padding-bottom:32px}.modal-header{padding:14px 18px}.modal-body,dialog form{padding:20px}dialog input,dialog select,dialog textarea{font-size:16px}.form-grid{gap:10px}.form-actions{gap:10px}.remove-button{font-size:10px}.primary,.secondary{padding:10px 17px}#toast{font-size:11px;padding:13px 16px;gap:13px;bottom:20px}#suggestions li button{flex-wrap:wrap;gap:5px 10px}#suggestions li button>span{flex-basis:70%}#suggestions small{font-size:9px;flex:1}#suggestions .icon{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.row-meta{color:#7f8b76}.repeat-label{color:#849578}.future-section .row-meta{color:#89977e}.section-heading h2{color:#738367}.page-heading p{color:#819074}.field-hint{color:#7e8f6e}
.account-tools{display:flex;align-items:center;gap:12px;min-width:0}.account-button{font-size:11px;color:#7a8d6c;padding:9px 2px;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-button>span{margin-left:7px;color:#a6b69b}.share-entry{color:#587947}.provider-button{display:block;text-align:center;border:1px solid #d7e2cd;border-radius:7px;padding:13px;margin:10px 0;font-size:13px;color:#537540;background:#f5f8ef}.checkbox-label{display:flex!important;gap:10px;align-items:center;line-height:1.8}.checkbox-label>input{width:18px;min-height:18px;flex-shrink:0;margin:0}.setting-row>small{font-size:10px;color:#9caa90}.setup-note,.sync-note{font-size:11px;line-height:1.9;color:#957c58;background:#f5f2e9;padding:14px;border-radius:7px}.sync-note{margin-bottom:18px}.viewer-note{font-size:12px;color:#8c9e7d}.read-only .add-box,.read-only .defer-button,.read-only .sample-note{display:none}.read-only .complete{pointer-events:none;opacity:.5}.members{border-top:1px solid var(--line)}.member-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.member-row>span{flex:1;min-width:0;overflow-wrap:anywhere}.member-row small{font-size:10px;color:#96a687;display:block;line-height:1.8}.member-role{width:100px;min-height:34px;font-size:12px;padding:6px;margin:0}.member-row .remove-button{margin:0;white-space:nowrap}.settings #invite-form{padding:20px 0 0}.settings #invite-form .field-hint{margin-top:12px}.invite-url-label{font-size:12px;color:#789268}.invite-url{width:100%;font-size:12px!important;user-select:all}.read-only .todo-row button[data-action="edit"]{cursor:default}
@media(max-width:600px){.account-tools{gap:8px}.account-button{font-size:10px;max-width:145px}.account-tools>.icon-button{width:30px}.app-header{gap:20px}.brand{flex-shrink:0}.member-row{gap:8px}.member-role{width:88px;font-size:12px}}
.account-tools{flex:1;justify-content:flex-end}.account-tools .account-button:first-child{min-width:0;flex-shrink:1}.account-tools>.icon-button{flex-shrink:0}
.password-form label{display:block;margin:14px 0 6px;font-size:12px;color:#6d825e}.password-form .field-hint{font-size:11px;line-height:1.8}.password-form .error{margin-top:16px}.password-form button:disabled{opacity:.55;cursor:wait}
