:root{--bg:#fff;--fg:#1f2933;--muted:#616e7c;--line:#e4e7eb;--side:#f7f8fa;--accent:#0b63b6;--accent-bg:#e6f0fa;--flag:#fff4e0;--flag-fg:#8a5300}
@media (prefers-color-scheme:dark){:root{--bg:#15191e;--fg:#e4e7eb;--muted:#9aa5b1;--line:#2c333b;--side:#1b2026;--accent:#6cb2f5;--accent-bg:#1e2d3d;--flag:#3a2e17;--flag-fg:#f5c97a}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;height:56px;padding:0 16px;background:var(--bg);border-bottom:1px solid var(--line)}
.brand{color:var(--fg);text-decoration:none;font-size:18px;white-space:nowrap}
.navtoggle{display:none;background:none;border:1px solid var(--line);color:var(--fg);border-radius:6px;font-size:18px;padding:2px 10px}
.search{position:relative;margin-left:auto;width:min(360px,50vw)}
.search input{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:var(--side);color:var(--fg);font-size:15px}
#results{position:absolute;top:40px;right:0;left:0;max-height:70vh;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,.15);display:none}
#results a{display:block;padding:6px 10px;text-decoration:none;color:var(--fg);font-size:14px}
#results a small{display:block;color:var(--muted)}
#results a:hover,#results a.sel{background:var(--accent-bg)}
.wrap{display:flex;min-height:calc(100vh - 56px)}
.side{flex:0 0 300px;max-height:calc(100vh - 56px);position:sticky;top:56px;overflow:auto;background:var(--side);border-right:1px solid var(--line);padding:12px 8px 40px;font-size:14px}
.side select{width:100%;margin:0 0 10px;padding:6px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}
.side ul{list-style:none;margin:0;padding:0 0 0 12px}
.side>ul{padding:0}
.side li{margin:0}
.side .row{display:flex;align-items:flex-start}
.side .tw{flex:0 0 18px;cursor:pointer;color:var(--muted);user-select:none;text-align:center;line-height:26px;font-size:11px}
.side a{flex:1;display:block;padding:3px 6px;border-radius:4px;color:var(--fg);text-decoration:none;line-height:20px}
.side a:hover{background:var(--accent-bg)}
.side a.cur{background:var(--accent);color:#fff}
.side li.closed>ul{display:none}
.content{flex:1;min-width:0;max-width:960px;padding:24px 40px 80px}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:8px}
.crumbs a{color:var(--muted)}
h1{font-size:30px;line-height:1.25;margin:0 0 6px}
.meta{color:var(--muted);font-size:13px;margin:0 0 20px}
.flag{background:var(--flag);color:var(--flag-fg);padding:6px 10px;border-radius:6px;font-size:14px}
.also{border-top:1px solid var(--line);margin-top:32px;padding-top:12px;font-size:14px;color:var(--muted)}
.children{border-top:1px solid var(--line);margin-top:32px}
.children h2{font-size:18px}
.body img,.body video,.body iframe{max-width:100%;height:auto}
.body table{max-width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.body td,.body th{vertical-align:top}
.body pre{background:var(--side);padding:12px;overflow:auto;border-radius:6px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:24px}
.card{display:block;padding:18px;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--fg)}
.card:hover{border-color:var(--accent)}
.card span{display:block;color:var(--muted);font-size:14px}
@media (max-width:800px){
 .navtoggle{display:block}.brand{font-size:16px}
 .side{position:fixed;top:56px;left:0;bottom:0;width:85vw;max-height:none;z-index:4;transform:translateX(-100%);transition:transform .2s}
 body.navopen .side{transform:none}
 .content{padding:16px}
}
#results a .snip{display:block;color:var(--muted);font-size:13px;line-height:1.4;margin-top:2px}
#results a mark{background:var(--accent-bg);color:inherit;font-weight:600;padding:0}
#results .note{padding:6px 10px;color:var(--muted);font-size:13px}
