body{font:16px/1.6 system-ui,-apple-system,sans-serif;max-width:48rem;margin:3rem auto;padding:0 1.5rem;color:#1a1a1a}
h1{font-size:1.6rem}h2{font-size:1.25rem;margin-top:2rem}
a{color:#0969da;text-decoration:none}a:hover{text-decoration:underline}
ul.index{list-style:none;padding:0}ul.index li{margin:.5rem 0}
code{background:#f6f8fa;border-radius:6px;padding:.1em .35em}
pre{background:#f6f8fa;border-radius:6px;padding:1rem;overflow:auto}
pre code{background:none;padding:0}
table{border-collapse:collapse}th,td{border:1px solid #d0d7de;padding:.4rem .6rem}
blockquote{margin:0;padding:0 1rem;color:#656d76;border-left:.25rem solid #d0d7de}
.meta{color:#656d76;font-size:.85rem;margin-top:3rem}
.nav{font-size:.9rem;margin-bottom:2rem}

/* commented lines: persistent tint, defined before .src-hl so hover wins */
.cmt-line{background:#fff9db}
pre.cmt-line,pre.cmt-line code{background:#fff9db}

/* source-line attribution (srcline.js) */
.src-hl{background:#fff3bf;cursor:pointer}
pre.src-hl,pre.src-hl code{background:#fff3bf}
#src-badge{position:fixed;bottom:1rem;right:1rem;background:#1a1a1a;color:#fff;font:12px/1.4 ui-monospace,monospace;padding:.25rem .6rem;border-radius:6px;pointer-events:none}

/* line-anchored comments (comments.js) */
.cmt-marker{position:absolute;background:#fff;border:1px solid #d0d7de;border-radius:12px;font-size:12px;line-height:1.5;padding:0 .45rem;cursor:pointer}
.cmt-marker:hover{background:#f6f8fa}
.cmt-panel{position:absolute;width:22rem;max-width:90vw;background:#fff;border:1px solid #d0d7de;border-radius:8px;box-shadow:0 8px 24px rgba(140,149,159,.2);padding:.75rem;font-size:.9rem;z-index:10;animation:cmt-pop-in .18s ease-out}
@keyframes cmt-pop-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.cmt-panel.cmt-closing{animation:cmt-pop-out .2s ease-in forwards;pointer-events:none}
@keyframes cmt-pop-out{to{opacity:0;transform:translateY(14px)}}
.cmt-shard{position:absolute;background:#fff;border:1px solid #d0d7de;z-index:11;pointer-events:none}
.cmt-shard-img{position:absolute;z-index:11;pointer-events:none}
.cmt-spark{position:absolute;width:6px;height:6px;border-radius:50%;z-index:12;pointer-events:none}
@media (prefers-reduced-motion:reduce){.cmt-panel,.cmt-panel.cmt-closing{animation:none}}
.cmt-head{font:12px ui-monospace,monospace;color:#656d76;margin-bottom:.4rem}
.cmt-comment{border-bottom:1px solid #eaeef2;padding:.4rem 0;box-sizing:border-box}
.cmt-actions button.danger{color:#cf222e;transition:background .15s,color .15s,transform .15s}
.cmt-actions button.danger:hover{background:#cf222e;color:#fff;border-color:#cf222e}
.cmt-actions button.danger.armed{background:#cf222e;color:#fff;border-color:#cf222e;transform:scale(1.06)}
.cmt-orphan-thread{border:1px solid #eaeef2;border-radius:8px;padding:.6rem .75rem;margin:.75rem 0}
.cmt-author{font-weight:600;font-size:.8rem}
.cmt-time{color:#656d76;font-size:.75rem;margin-left:.4rem}
.cmt-body{white-space:pre-wrap;margin:.2rem 0 0}
.cmt-panel textarea{width:100%;box-sizing:border-box;min-height:4rem;font:inherit;font-size:.9rem;border:1px solid #d0d7de;border-radius:6px;padding:.4rem;margin-top:.5rem}
.cmt-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}
.cmt-actions button{font:inherit;font-size:.85rem;padding:.25rem .75rem;border-radius:6px;border:1px solid #d0d7de;background:#f6f8fa;cursor:pointer}
.cmt-actions button.primary{background:#1f883d;color:#fff;border-color:#1f883d}
#cmt-orphans{margin-top:3rem;border-top:1px solid #d0d7de;padding-top:1rem}
#cmt-orphans h2{font-size:1rem}
.cmt-orphan-quote{text-decoration:line-through;font-size:.9rem}
.cmt-orphan-where{color:#656d76;font-size:.75rem}
