
:root { --dark:#141413; --light:#faf9f5; --mid:#b0aea5; --soft:#e8e6dc;
        --muted:#5e5d59; --orange:#d97757; --blue:#6a9bcc; --green:#788c5d;
        --head:"Poppins","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;
        --body:"Lora","Noto Serif CJK SC","Songti SC",Georgia,serif;
        --mono:"SF Mono",Menlo,Consolas,monospace; }
* { box-sizing:border-box; }
body { margin:0; background:var(--light); color:var(--dark); font:17px/1.8 var(--body); }
main { max-width:780px; margin:0 auto; padding:56px 24px 96px; }
h1,h2,h3 { font-family:var(--head); font-weight:600; line-height:1.35; }
h1 { font-size:28px; margin:0 0 14px; }
h2 { font-size:21px; margin:44px 0 10px; padding-bottom:6px; border-bottom:1px solid var(--soft); }
a { color:inherit; text-decoration:underline; text-decoration-color:var(--orange); text-underline-offset:3px; }
code { font-family:var(--mono); font-size:.85em; background:var(--soft); padding:1px 5px; border-radius:4px; }
pre { background:#0d1117; color:#d7dde4; border-radius:8px; padding:12px 14px; overflow-x:auto; font-size:13px; }
pre code { background:none; padding:0; color:inherit; }
table { width:100%; border-collapse:collapse; font:14px/1.6 var(--head); margin:14px 0; }
th,td { text-align:left; padding:7px 10px; border-bottom:1px solid var(--soft); vertical-align:top; }
th { font-weight:500; color:var(--muted); }
blockquote { border-left:3px solid var(--orange); margin:16px 0; padding:2px 0 2px 14px; color:var(--muted); }
.nav { font:14px var(--head); margin-bottom:28px; color:var(--muted); }
.stamp { font:13px var(--head); color:var(--mid); margin-top:60px; }
ul.idx { list-style:none; padding:0; }
ul.idx li { margin:0 0 18px; }
ul.idx .t { font:600 16px var(--head); }
ul.idx .s { display:block; font-size:14.5px; color:var(--muted); margin-top:2px; }
ul.idx li.grp { font:600 13px var(--head); letter-spacing:.06em; color:var(--mid);
        margin:34px 0 12px; padding-bottom:5px; border-bottom:1px solid var(--soft); }
ul.idx li.item { margin:0 0 22px; }
ul.idx .q { display:block; font:600 14px var(--head); color:var(--muted); margin-top:3px; }
ul.idx .a { display:block; font-size:14.5px; margin-top:4px; }
ul.idx .tags { display:block; margin-top:6px; }
.tag { display:inline-block; font:600 11.5px var(--head); padding:1px 8px;
        border-radius:10px; margin-right:6px; }
.tag.ok { background:#e6efe0; color:var(--green); }
.tag.no { background:#f6e3dc; color:var(--orange); }
.tag.mix { background:#eae6da; color:var(--muted); }
.legend { font-size:13px; color:var(--muted); background:var(--soft);
        border-radius:8px; padding:10px 14px; margin:18px 0 10px; line-height:2; }
.legend b { color:var(--dark); font-family:var(--mono); font-weight:600; }
h3 { font-size:17px; margin:30px 0 6px; }
.bg { font-size:15px; }
ul.refs, ol.refs { font-size:14px; color:var(--muted); line-height:1.75; padding-left:22px; }
ul.refs li, ol.refs li { margin:0 0 7px; }
ol.refs li { margin:0 0 10px; padding:7px 11px; border-radius:8px;
        transition:background .35s ease, box-shadow .35s ease; scroll-margin-top:20px; }
ol.refs li:target { background:#fbf1ec; color:var(--dark);
        box-shadow:0 0 0 2px var(--orange), 0 6px 16px rgba(217,119,87,.22); }

img { max-width:100%; height:auto; }
body { overflow-wrap:break-word; }
mjx-container[display="true"] { max-width:100%; overflow-x:auto; overflow-y:hidden; }
.table-wrap { max-width:100%; overflow-x:auto; margin:14px 0; }
.table-wrap table { margin:0; }
mjx-container:not([display="true"]) { display:inline-block; max-width:100%; overflow-x:auto; overflow-y:hidden; vertical-align:middle; }
