:root{--ink:#17201c;--muted:#5f6963;--line:#d4ddd6;--paper:#fbfaf4;--accent:#0f7667;--field:#f3f7f2}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(135deg,rgba(15,118,103,.10),transparent 32%),var(--paper);color:var(--ink);font-family:Avenir Next,Trebuchet MS,Verdana,sans-serif;line-height:1.45}
main{width:min(1200px,calc(100% - 32px));margin:0 auto;padding:24px 0 48px}
a{color:var(--accent);font-weight:700;text-decoration:none}a:hover{text-decoration:underline}
h1{font-family:Optima,Avenir Next,sans-serif;font-size:clamp(30px,4vw,52px);margin:0 0 8px}
h2{margin:28px 0 10px}.meta,.small{color:var(--muted)}
.hero,.panel{border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.86);box-shadow:0 18px 45px rgba(23,32,28,.10);padding:20px;margin:18px 0}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.toolbar input{flex:1;min-width:240px;border:1px solid var(--line);border-radius:9px;background:var(--field);font:inherit;padding:11px 12px}
.file-list{list-style:none;margin:0;padding:0}.file-list li{border-top:1px solid var(--line);padding:10px 0}.file-list code{color:var(--muted)}
.crumbs{margin:0 0 14px;color:var(--muted)}
pre{white-space:pre-wrap;word-break:break-word;border:1px solid var(--line);border-radius:12px;background:#17201c;color:#f4fbf6;padding:18px;overflow:auto;font:13px/1.5 Menlo,Consolas,monospace}
.path{font-family:Menlo,Consolas,monospace;font-size:13px;color:var(--muted)}
.badge{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:#fff;color:var(--muted);font-size:13px;margin:2px}