
:root{--bg:#0b0a08;--bg2:#12100c;--bg3:#1c1912;--border:#332d1d;
--amber:#e8b04a;--dim:#9a824a;--text:#d6cba9;--muted:#77704f;--red:#c2452f}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{background:var(--bg);color:var(--text);font-size:14px;line-height:1.55;
font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
display:flex;flex-direction:column}
a{color:var(--amber);text-decoration:none}
a:hover{text-decoration:underline}
header{border-bottom:1px solid var(--border);background:var(--bg2);
padding:14px 20px;flex-shrink:0}
.brand a{color:var(--amber);font-weight:700;letter-spacing:1px}
.brand a:hover{text-decoration:none}
.brand img{height:34px;width:auto;vertical-align:middle;margin-right:10px}
.brand{display:flex;align-items:center}
.tagline{color:var(--muted);font-size:12px;margin-top:2px}
.layout{display:flex;flex:1;min-height:0}
nav.side{width:250px;flex-shrink:0;border-right:1px solid var(--border);
background:var(--bg2);padding:14px 0;overflow-y:auto;font-size:13px}
nav.side .grp{color:var(--muted);font-size:11px;letter-spacing:1px;
text-transform:uppercase;padding:4px 14px;margin-top:8px}
nav.side a{display:block;color:var(--text);padding:3px 14px;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
nav.side a:hover{background:var(--bg3);color:var(--amber);text-decoration:none}
nav.side a.cur{background:var(--bg3);color:var(--amber);
border-left:2px solid var(--amber);padding-left:12px}
nav.side a.dim{color:var(--dim)}
main{flex:1;min-width:0;overflow-y:auto;padding:18px 26px 60px}
.crumbs{color:var(--muted);font-size:12px;margin-bottom:16px}
.crumbs a{color:var(--dim)}
h2{color:var(--muted);font-size:12px;letter-spacing:2px;
text-transform:uppercase;font-weight:400;margin:22px 0 8px}
h2::before{content:"++ "}
h2::after{content:" ++"}
.box{border:1px solid var(--border);background:var(--bg2)}
.tree .row{display:flex;justify-content:space-between;gap:18px;
padding:5px 14px;border-top:1px solid var(--border);color:var(--text)}
.tree .row span:first-child{flex:1;min-width:0}
.tree .row .sz{flex-shrink:0;text-align:right;white-space:nowrap}
.tree .row:first-child{border-top:none}
.tree .row:hover{background:var(--bg3);text-decoration:none;color:var(--amber)}
.tree .row .sz{color:var(--muted);font-size:12px}
.desc{padding:12px 14px;color:var(--dim)}
.desc b{color:var(--text)}
.btn{display:inline-block;border:1px solid var(--amber);color:var(--amber);
padding:5px 14px;margin:14px 0 4px;font-size:13px}
.btn:hover{background:var(--amber);color:var(--bg);text-decoration:none}
.filehdr{display:flex;justify-content:space-between;color:var(--muted);
font-size:12px;margin-bottom:10px}
.filehdr .path{color:var(--amber)}
pre{border:1px solid var(--border);background:var(--bg2);overflow:auto;
font-size:13px}
pre code{display:block;padding:14px 16px;line-height:1.55;
font-family:inherit;background:transparent}
.blob{border:1px solid var(--border);background:var(--bg2);
color:var(--muted);padding:26px;text-align:center}
.md{padding:16px 18px;overflow-wrap:break-word}
.md-updated{border-top:1px solid var(--border);margin-top:16px;padding-top:8px;
color:var(--muted);font-size:11px;letter-spacing:1px;text-transform:uppercase}
.md h1,.md h2,.md h3,.md h4{color:var(--amber);margin:18px 0 8px;
font-size:15px;letter-spacing:0;text-transform:none;font-weight:700}
.md h1::before,.md h1::after,.md h2::before,.md h2::after{content:""}
.md h1{font-size:17px;border-bottom:1px solid var(--border);padding-bottom:6px}
.md p{margin:8px 0}
.md ul,.md ol{margin:8px 0 8px 24px}
.md code{background:var(--bg3);padding:1px 5px;color:var(--amber)}
.md pre{margin:10px 0}
.md pre code{background:transparent;padding:12px 14px}
.md blockquote{border-left:3px solid var(--red);padding:4px 12px;
color:var(--dim);margin:10px 0;background:var(--bg3)}
.md hr{border:none;border-top:1px solid var(--border);margin:14px 0}
.md img{max-width:100%}
.md table{border-collapse:collapse;margin:10px 0;display:block;
overflow-x:auto}
.md th,.md td{border:1px solid var(--border);padding:4px 10px;
text-align:left}
.md th{color:var(--amber)}
@media (max-width:700px){
.layout{flex-direction:column}
nav.side{width:100%;max-height:220px;border-right:none;
border-bottom:1px solid var(--border)}
}
