:root{--bg:#F7F6F2;--surface:#FFFFFF;--surface2:#EFEFE9;--ink:#26302B;--muted:#6C7A72;--line:#E2E4DD;--accent:#2F6B4F;--accent-ink:#FFFFFF;--done:#5B708A;--done-bg:#E6EBF1;--never:#828A84;--never-bg:#EAECE8;--hi:#A9481E;--hi-bg:#F6E5DC;--url:#2F6B4F;--url-bg:#E4EFE8;--warn:#8A5B1E;--warn-bg:#F6ECD9;--err:#9C2B2B;--err-bg:#F7E2E2;--shadow:0 1px 3px rgba(38,48,43,.08)}@media (prefers-color-scheme: dark){:root{--bg:#171B19;--surface:#1F2522;--surface2:#242B27;--ink:#E8EBE6;--muted:#96A29A;--line:#2C332F;--accent:#6FBF95;--accent-ink:#12231B;--done:#8FA6C4;--done-bg:#232B36;--never:#7E8781;--never-bg:#272C29;--hi:#E08A5E;--hi-bg:#3A2A20;--url:#6FBF95;--url-bg:#233A2F;--warn:#D9B36A;--warn-bg:#3A311D;--err:#E08787;--err-bg:#3A2222;--shadow:0 1px 3px rgba(0,0,0,.4)}}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:Zen Kaku Gothic New,Hiragino Sans,Yu Gothic,sans-serif;font-size:15px;line-height:1.6;-webkit-tap-highlight-color:transparent}.wrap{max-width:560px;margin:0 auto;padding:0 14px 110px;overflow-x:clip}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}input,select{font:inherit;font-size:16px;color:var(--ink)}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}header.app{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line);margin:0 -14px;padding:10px 14px}.app-head{display:flex;align-items:center}.app-head .titles{flex:1}.app h1{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:20px;margin:0;letter-spacing:.04em}.app .sub{font-size:11px;color:var(--muted);letter-spacing:.08em}.gear{color:var(--muted);font-size:18px;padding:6px}.filters{display:flex;gap:6px;margin-top:9px;overflow-x:auto;scrollbar-width:none}.filters button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:4px 13px;font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums}.filters button[data-on="1"]{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:700}.banner{background:var(--err-bg);color:var(--err);font-size:12px;border-radius:8px;padding:8px 12px;margin-top:8px}.toolbar{display:flex;align-items:center;gap:10px;margin:14px 0 10px}.toolbar .info{flex:1;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.add{background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:14px;border-radius:999px;padding:8px 18px;box-shadow:var(--shadow)}.division{font-family:Shippori Mincho B1,serif;font-weight:600;font-size:15px;letter-spacing:.12em;color:var(--muted);margin:22px 2px 8px;display:flex;align-items:baseline;gap:8px}.division small{font-size:11px;letter-spacing:.05em}.catlist{display:flex;flex-direction:column;gap:8px}.cat{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 14px;box-shadow:var(--shadow)}.cat .nm{flex:1;min-width:0}.cat .nm b{font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat .nm span{font-size:11px;color:var(--muted)}.cat .ct{font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted);white-space:nowrap}.cat .ct b{color:var(--ink);font-weight:500}.cat .chev{color:var(--muted)}.crumbs{display:flex;align-items:center;gap:10px;margin:14px 0 10px}.back{color:var(--accent);font-weight:500;font-size:14px}.crumbs h2{font-family:Shippori Mincho B1,serif;font-size:17px;font-weight:600;margin:0;flex:1}.bulk{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:5px 12px;background:var(--surface)}.bulk.confirm{color:var(--never);background:var(--never-bg);border-color:transparent;font-weight:700}.hint{font-size:12px;color:var(--muted);margin:8px 2px}.items{display:flex;flex-direction:column;gap:6px}.item{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.row .nm .n{overflow-wrap:anywhere}.row{display:flex;align-items:center;gap:8px;padding:9px 12px 9px 14px}.row .nm{flex:1;min-width:0;text-align:left}.row .nm .n{font-weight:500}.row .nm .t{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 4px;margin-left:6px;white-space:nowrap;vertical-align:1px}.row .nm .cat-note{display:block;font-size:11px;color:var(--muted)}.row .nm .chips{display:flex;gap:5px;margin-top:2px;flex-wrap:wrap}.item.never .row .n{color:var(--never);text-decoration:line-through}.item.done .row .n{color:var(--done)}.chev2{color:var(--muted)}.chip{font-size:11px;border-radius:5px;padding:1px 7px;white-space:nowrap;font-weight:500}.chip.pr-高{background:var(--hi-bg);color:var(--hi)}.chip.pr-中{background:var(--surface2);color:var(--muted)}.chip.pr-低{background:var(--surface2);color:var(--muted);opacity:.7}.chip.tm{background:var(--done-bg);color:var(--done)}.chip.url{background:var(--url-bg);color:var(--url)}.chip.rp{background:var(--warn-bg);color:var(--warn)}.chip.st-done{background:var(--done-bg);color:var(--done)}.chip.st-never{background:var(--never-bg);color:var(--never)}.chip.ago{background:var(--surface2);color:var(--muted)}.dactions{display:flex;gap:6px;flex-wrap:wrap}.dactions button{border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;white-space:nowrap}.dactions .b-done[data-on="1"]{background:var(--done-bg);color:var(--done);border-color:transparent;font-weight:700}.dactions .b-never[data-on="1"]{background:var(--never-bg);color:var(--never);border-color:transparent;font-weight:700}.dactions .b-more{margin-left:auto}.dactions .b-more[data-on="1"]{background:var(--surface);border-color:var(--accent);color:var(--accent)}.detail{border-top:1px solid var(--line);padding:12px 14px;display:flex;flex-direction:column;gap:12px}.frow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.frow label{font-size:12px;color:var(--muted);min-width:3.5em}.segs{display:flex;gap:4px;flex-wrap:wrap}.segs button{border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:7px;padding:5px 12px;font-size:13px}.segs button[data-on="1"]{background:var(--url-bg);color:var(--url);border-color:transparent;font-weight:700}.rp-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.rp-toggle button{border:1px solid var(--line);background:var(--surface2);border-radius:999px;padding:4px 14px;font-size:13px;color:var(--muted)}.rp-toggle button[data-on="1"]{background:var(--warn-bg);color:var(--warn);border-color:transparent;font-weight:700}.urladd{display:flex;gap:6px;flex:1;min-width:0}.urladd input{flex:1 1 0;width:0;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.urladd button{flex:none;border:1px solid var(--accent);color:var(--accent);border-radius:7px;padding:5px 12px;font-weight:500;white-space:nowrap}.urls{display:flex;flex-direction:column;gap:4px}.urls a{color:var(--done);font-size:13px;word-break:break-all;text-decoration:underline}.urls .u{display:flex;gap:8px;align-items:baseline}.urls .u button{color:var(--muted);font-size:12px}.memo input{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.dec select{padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--bg);overflow-y:auto}.overlay .inner{max-width:560px;margin:0 auto;padding:14px}.overlay .shead{display:flex;gap:10px;align-items:center;position:sticky;top:0;background:var(--bg);padding:4px 0 10px}.overlay input{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.overlay .close{color:var(--accent);font-weight:500;white-space:nowrap}.sres{display:flex;flex-direction:column;gap:6px}.sres button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px;width:100%}.sres .c{font-size:11px;color:var(--muted)}.sres .custom{border-style:dashed;color:var(--accent);font-weight:500}.empty{color:var(--muted);text-align:center;padding:44px 20px;line-height:2}.empty b{font-family:Shippori Mincho B1,serif;font-size:16px;color:var(--ink);display:block}.note{font-size:11px;color:var(--muted);margin:26px 2px 0;border-top:1px solid var(--line);padding-top:10px}.gate{max-width:400px;margin:0 auto;padding:60px 20px}.gate h1{font-family:Shippori Mincho B1,serif;font-size:24px;margin:0 0 4px;letter-spacing:.04em}.gate .sub{font-size:12px;color:var(--muted);margin-bottom:28px;letter-spacing:.06em}.gate form,.gate .box{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow);margin-bottom:14px}.gate label{font-size:12px;color:var(--muted)}.gate input{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.gate .primary{background:var(--accent);color:var(--accent-ink);font-weight:700;border-radius:8px;padding:11px}.gate .linkish{color:var(--accent);font-size:13px;text-align:center;padding:6px}.gate .err{color:var(--err);font-size:12px}.gate h2{font-size:15px;margin:0}.loading{color:var(--muted);text-align:center;padding:80px 20px}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#00000059;display:flex;align-items:flex-end;justify-content:center}.sheet .body{background:var(--bg);border-radius:14px 14px 0 0;max-width:560px;width:100%;padding:18px 18px 28px;display:flex;flex-direction:column;gap:12px}.sheet h3{margin:0;font-size:16px;font-family:Shippori Mincho B1,serif}.sheet .code{font-size:22px;letter-spacing:.15em;font-variant-numeric:tabular-nums;background:var(--surface2);border-radius:8px;padding:10px;text-align:center;-webkit-user-select:all;user-select:all}.sheet .row2{display:flex;gap:8px;justify-content:flex-end}.sheet .row2 button{border:1px solid var(--line);border-radius:8px;padding:8px 14px;font-size:13px;color:var(--muted)}
