:root{--bg: #f4f6f5;--card: #ffffff;--fg: #1d2724;--muted: #5e6b67;--line: #dfe5e3;--grid: #e6ebe9;--accent: #0f5b5c;--accent-2: #2f8f83;--warn: #b45309;--warn-bg: #fff7e6;--err: #b42318;--side: #0f3b3c;--side-fg: #d8ebe8;--chip: #eef3f2;--sel: #e3f0ee;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #111716;--card: #1a2221;--fg: #e3ebe9;--muted: #9db0ab;--line: #2c3836;--grid: #26302e;--accent: #5cc2b4;--accent-2: #3ea597;--warn: #f0a94a;--warn-bg: #2d2416;--err: #ff8b80;--side: #0b1413;--side-fg: #cfe4e0;--chip: #233130;--sel: #203634;color-scheme:dark}}:root[data-theme=dark]{--bg: #111716;--card: #1a2221;--fg: #e3ebe9;--muted: #9db0ab;--line: #2c3836;--grid: #26302e;--accent: #5cc2b4;--side: #0b1413;--chip: #233130;--sel: #203634;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--fg);font-family:Hiragino Sans,Noto Sans JP,Yu Gothic UI,system-ui,sans-serif;font-size:15px;line-height:1.6}a{color:var(--accent)}h1{font-size:1.5rem;margin:0 0 .25rem}h2{font-size:1.05rem;margin:0}h3{font-size:1rem;margin:1rem 0 .4rem}code{font-size:.85em;background:var(--chip);padding:0 .3em;border-radius:4px}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:#fff;padding:.35rem .8rem;border-radius:8px;cursor:pointer;min-height:36px}button.ghost{background:transparent;color:var(--accent)}button.small,.small button{font-size:.8rem;padding:.15rem .5rem;min-height:28px}button.link{background:none;border:none;color:var(--accent);padding:0;min-height:0;text-align:left}button:disabled{opacity:.5;cursor:default}input,select,textarea{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.35rem .5rem;min-height:36px;max-width:100%}textarea{width:100%}input[type=range]{width:100%;padding:0}input[type=checkbox]{min-height:0}.muted{color:var(--muted)}.small{font-size:.82rem}.pad{padding:1rem}.error{color:var(--err);padding:.5rem 0}.lead{color:var(--muted);margin:0 0 1rem}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.side{background:var(--side);color:var(--side-fg);padding:1rem .7rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:.6rem;align-items:center;margin-bottom:1.2rem}.brand img{width:38px}.brand b{display:block;font-size:1rem}.brand span{font-size:.8rem;opacity:.8}.side nav{display:flex;flex-direction:column;gap:2px}.side nav a{color:var(--side-fg);text-decoration:none;padding:.5rem .6rem;border-radius:8px;display:flex;gap:.6rem;align-items:center;font-size:.92rem}.side nav a i{font-style:normal;width:1.2em;text-align:center;opacity:.8}.side nav a.active,.side nav a:hover{background:#ffffff1a;color:#fff}.side-foot{margin-top:auto;font-size:.72rem;opacity:.65}.main{padding:1.4rem 1.6rem 3rem;min-width:0}.page{max-width:1280px;margin:0 auto}.tabbar{display:none}.offline{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn);padding:.4rem .7rem;border-radius:8px;margin-bottom:1rem;font-size:.85rem}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1rem;min-width:0}.card.inset{background:var(--chip)}.card-h{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;flex-wrap:wrap}.card-actions{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.row2{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.row4{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem;margin-bottom:1rem}.stat{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.6rem .7rem}.stat-v{font-size:1.4rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.stat-l{font-size:.78rem;color:var(--muted)}.stat-s{font-size:.72rem;color:var(--muted)}.bar{position:relative;height:22px;background:var(--chip);border-radius:6px;overflow:hidden;flex:1}.bar div{height:100%;background:var(--accent-2)}.bar span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:.75rem;display:flex;align-items:center;justify-content:center}.prog{display:grid;grid-template-columns:7em 1fr;gap:.5rem;align-items:center;margin-bottom:.4rem;font-size:.85rem}.todo li{margin-bottom:.3rem;font-size:.9rem}.timeline{display:flex;flex-direction:column;gap:.7rem}.tl-item{display:grid;grid-template-columns:4em 1fr;gap:.6rem;border-left:3px solid var(--accent-2);padding-left:.6rem}.tl-year{font-weight:700;color:var(--accent)}.flist{padding-left:1.1rem}.flist li{margin-bottom:.5rem;font-size:.9rem}.refs{display:inline-flex;flex-wrap:wrap;gap:.3rem}.ref{font-size:.75rem;background:var(--chip);padding:0 .4rem;border-radius:6px;text-decoration:none;white-space:nowrap}.badge{font-size:.75rem;font-weight:600;white-space:nowrap}.b-fact{color:#1d6b3a}.b-claim{color:#3a5ea5}.b-analysis{color:#8a4d00}.b-hypo{color:#b5446e}.b-pred{color:#6b4c9a}.b-calc{color:#0f5b5c}.b-unknown{color:var(--muted)}@media (prefers-color-scheme: dark){.b-fact{color:#6fd39a}.b-claim{color:#8fb3ff}.b-analysis{color:#f0b45a}.b-hypo{color:#f38bb0}.b-pred{color:#c3a6f0}.b-calc{color:#5cc2b4}}.pill{font-size:.72rem;padding:.05rem .5rem;border-radius:999px;white-space:nowrap;border:1px solid transparent}.st-0{background:#eceff0;color:#555}.st-1{background:#e3eefa;color:#2b5b8f}.st-2{background:#dff2ee;color:#1d6b5f}.st-3{background:#0f5b5c;color:#fff}@media (prefers-color-scheme: dark){.st-0{background:#333;color:#ccc}.st-1{background:#1f3550;color:#a9c8ef}.st-2{background:#173d37;color:#8fe0d1}}.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.7rem}.filters input[type=search]{flex:1 1 240px}.split{display:grid;grid-template-columns:1fr;gap:1rem}.split.has-detail{grid-template-columns:minmax(280px,380px) 1fr}.srclist{list-style:none;padding:0;margin:0;max-height:70vh;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--card)}.srclist li{padding:.55rem .7rem;border-bottom:1px solid var(--line);cursor:pointer}.srclist li:hover,.srclist li.active{background:var(--sel)}.srclist .t{font-size:.88rem;font-weight:600;word-break:break-all}.srclist .row{display:flex;gap:.4rem;align-items:center}.back{display:none}.dtitle{word-break:break-all;margin-top:0}.meta{display:grid;grid-template-columns:6.5em 1fr;gap:.2rem .6rem;font-size:.85rem;margin:0 0 .6rem}.meta dt{color:var(--muted)}.meta dd{margin:0;word-break:break-all}.statusbar{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;font-size:.85rem}.statusbar button{background:transparent;color:var(--accent);font-size:.8rem;padding:.1rem .5rem;min-height:30px}.statusbar button.on{background:var(--accent);color:#fff}.kv{margin:.5rem 0}.kv b{font-size:.8rem;color:var(--muted)}.kv p{margin:.1rem 0 0;font-size:.9rem}.field{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.5rem;font-size:.85rem;min-width:0}.field-l{color:var(--muted)}.field-h{font-size:.75rem;color:var(--muted)}.check{display:inline-flex;gap:.3rem;align-items:center;font-size:.85rem}.chips{display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center;margin-bottom:.5rem}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:.6rem}table{border-collapse:collapse;width:100%;font-size:.82rem}th,td{border-bottom:1px solid var(--line);padding:.3rem .45rem;text-align:left;vertical-align:top}th{color:var(--muted);font-weight:600;white-space:nowrap}td.warn{color:var(--warn);font-weight:600}.miss{color:var(--warn);font-size:.75rem}.kvtable th{white-space:normal;width:55%}.kvtable td{font-variant-numeric:tabular-nums}table.rank tr{cursor:pointer}table.rank tr.active,table.rank tr:hover{background:var(--sel)}.dslist{list-style:none;padding:0}.dslist li{padding:.3rem 0;border-bottom:1px solid var(--line);display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.dslist li.active{background:var(--sel)}.tabs{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.7rem}.tabs button{background:transparent;color:var(--accent)}.tabs button.on{background:var(--accent);color:#fff}.chart{width:100%;min-width:0}.chartbox{margin:0 0 .6rem}.chartbox figcaption{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.eq{font-family:"Cambria Math","STIX Two Math",serif;background:var(--chip);padding:.5rem .7rem;border-radius:8px;margin-bottom:.7rem;overflow-x:auto;font-size:.95rem}.slider{margin-bottom:.6rem}.slider-top{display:flex;justify-content:space-between;font-size:.85rem;gap:.5rem}.slider-top input{width:6.5em;min-height:28px;padding:.1rem .3rem;text-align:right}.warnlist{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn);border-radius:8px;padding:.5rem .5rem .5rem 1.6rem;font-size:.85rem}.note{background:var(--chip);padding:.4rem .6rem;border-radius:8px}.graph-split{display:grid;grid-template-columns:1fr 360px;gap:1rem}.graphwrap{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:auto}.graphwrap svg{width:100%;min-width:900px;height:auto;display:block}.graphwrap{max-height:80vh}.edge{stroke:var(--line);stroke-width:1}.edge.on{stroke:var(--accent);stroke-width:2}.gnode{cursor:pointer}.gnode text{font-size:11px;fill:var(--fg);paint-order:stroke;stroke:var(--card);stroke-width:3px}.gnode.dim{opacity:.2}details{border-bottom:1px solid var(--line);padding:.5rem 0}summary{cursor:pointer}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.phase{background:var(--chip);border-radius:10px;padding:.6rem .8rem}.phase h3{margin-top:0}.toc{display:flex;flex-wrap:wrap;gap:.3rem .8rem;margin-bottom:1rem;font-size:.85rem}.md{font-size:.92rem;overflow-x:auto}.md h1{font-size:1.3rem;border-bottom:2px solid var(--accent-2);padding-bottom:.2rem}.md h2{font-size:1.1rem;margin-top:1.2rem}.md h3{font-size:1rem}.md table{margin:.5rem 0}.md pre{background:var(--chip);padding:.6rem;border-radius:8px;overflow-x:auto;font-size:.78rem}.md blockquote{border-left:3px solid var(--accent-2);margin:.5rem 0;padding:.1rem .8rem;color:var(--muted)}.editor{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.editor textarea{font-family:ui-monospace,monospace;font-size:.82rem}.print-title{display:none}@media (max-width: 960px){.grid2,.graph-split,.editor{grid-template-columns:1fr}.row4{grid-template-columns:1fr 1fr}.split.has-detail{grid-template-columns:1fr}.split.has-detail .list-pane{display:none}.back{display:inline-block;margin-bottom:.5rem}}@media (max-width: 720px){html,body{font-size:14px}.shell{grid-template-columns:1fr}.side{display:none}.main{padding:.8rem 1rem calc(76px + env(safe-area-inset-bottom))}.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--side);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tabbar a{flex:1;color:var(--side-fg);text-decoration:none;display:flex;flex-direction:column;align-items:center;padding:.35rem 0;font-size:.62rem;min-height:52px;justify-content:center}.tabbar a i{font-style:normal;font-size:1.05rem}.tabbar a.active{color:#fff;background:#ffffff1f}.row2,.roadmap{grid-template-columns:1fr}.row4,.stats{grid-template-columns:1fr 1fr}.card{padding:.8rem}h1{font-size:1.25rem}.meta{grid-template-columns:5.5em 1fr}}@media print{.side,.tabbar,.noprint,.card-actions,.offline{display:none!important}.shell{display:block}.main{padding:0}body{background:#fff;color:#000;font-size:10.5pt}.card{border:none;padding:0;margin:0 0 1rem;break-inside:auto}.print-title{display:block;font-size:16pt;font-weight:700;margin-bottom:1rem}.md h1{break-before:page}.sec:first-of-type .md h1{break-before:auto}a{color:#000}}.cptable td.cp{text-align:center;font-size:13px;padding:2px}.cp-ok{color:#0f5b5c}.cp-part{color:#b07a12}.cp-no{color:#9aa3a1}.cp-ng{color:#b23a3a;font-weight:700}.cp-na{color:#c3c8c7}.cptable th.vert{writing-mode:vertical-rl;font-size:11px;font-weight:500;padding:4px 2px;white-space:nowrap}.learn.done{opacity:.75;border-left:4px solid #2f8f83}.learn textarea,.plan-edit textarea{width:100%;box-sizing:border-box;font:inherit}.chip{display:inline-block;margin:2px 6px 2px 0;padding:2px 8px;border:1px solid var(--line,#ccd);border-radius:12px;font-size:12px;text-decoration:none}.litlist{list-style:none;padding:0}.litlist li{border-bottom:1px solid var(--line,#e2e6e5);padding:8px 0}.litlist .t{font-weight:600;margin:2px 0}.deliv{padding-left:18px}.deliv li{margin:4px 0}.note{background:var(--chip);border:1px solid var(--line);border-radius:8px;padding:.45rem .7rem;margin-bottom:1rem;font-size:.88rem}.note.update{border-color:var(--accent)}.sheet-bg{position:fixed;inset:0 0 calc(56px + env(safe-area-inset-bottom)) 0;background:#00000059;z-index:20;display:flex;align-items:flex-end}.sheet{background:var(--card);width:100%;border-radius:16px 16px 0 0;padding:.6rem .8rem calc(.8rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.2rem}.sheet a{display:flex;gap:.7rem;align-items:center;padding:.75rem .5rem;color:var(--fg);text-decoration:none;border-radius:10px;min-height:44px}.sheet a:active{background:var(--sel)}.sheet a i{font-style:normal;width:1.4em;text-align:center;color:var(--accent)}.chk{display:flex;gap:.45rem;align-items:flex-start;padding:.25rem 0;min-height:32px}.chk input{margin-top:.3rem}.chk.consent{background:var(--warn-bg);border:1px solid var(--warn);border-radius:8px;padding:.5rem;margin:.5rem 0}.checklist{display:flex;flex-direction:column;max-height:14rem;overflow:auto}.joblist{list-style:none;padding:0;margin:0}.joblist li{border-bottom:1px solid var(--line);padding:.6rem 0}.joblist pre{white-space:pre-wrap;word-break:break-all;font-size:.75rem;max-height:16rem;overflow:auto;background:var(--chip);padding:.4rem;border-radius:6px}.pill.job-done{background:var(--sel);color:var(--accent)}.pill.job-failed{color:var(--err)}@media (max-width: 720px){input,select,textarea{font-size:16px}button{min-height:40px}.main{padding-top:max(.8rem,env(safe-area-inset-top))}.tabbar a{font-size:.7rem}.tabbar a i{font-size:1.2rem}.filters{flex-wrap:wrap}}@media (display-mode: standalone){.side-foot{display:none}}
