:root{--bg:#FAF8F3;--ink:#1D2420;--muted:#5D6862;--line:#E4E0D6;--green:#174E3F;--surface:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#121614;--ink:#ECEFEC;--muted:#A3ADA7;--line:#2A322E;--green:#6FC2A2;--surface:#1A201D}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16.5px/1.7 "Plus Jakarta Sans",system-ui,-apple-system,"Hiragino Sans",sans-serif}
.top{display:flex;align-items:center;gap:10px;padding:16px;max-width:820px;margin:0 auto}
.top a{color:inherit;text-decoration:none;font-weight:800}
.mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--green);color:#fff;font-weight:800}
main{max-width:820px;margin:0 auto;padding:8px 16px 64px}
h1{font-size:30px;line-height:1.25;margin:18px 0 6px}h2{font-size:20px;margin:34px 0 8px}
p,li{color:var(--ink)}.muted{color:var(--muted)}small{color:var(--muted)}
table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
th,td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line)}th{width:34%;font-weight:700}
.jp{display:block;font-size:13px;color:var(--muted);font-weight:500}
.box{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;margin-top:18px}
.todo{background:#FFF3C4;color:#5a4500;padding:0 4px;border-radius:4px}
input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;background:var(--bg);color:var(--ink)}
button{min-height:48px;border:0;border-radius:12px;background:var(--green);color:#fff;font:inherit;font-weight:700;padding:0 20px;cursor:pointer;width:100%;margin-top:12px}
a{color:var(--green)}
