:root{
  --paper:#F3F0E8; --charcoal:#14181A; --steel:#5B7B7A; --brass:#C9A66B; --brick:#8B4B3B;
  --bg:var(--paper); --fg:var(--charcoal); --fg-soft:#55594f; --panel:#e9e5d9; --panel-raised:#ffffff; --line:#d8d3c4; --line-soft:#e6e2d6;
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --bg:#10130F; --fg:#EDE9DD; --fg-soft:#a8a89c; --panel:#1A1F1A; --panel-raised:#1F251F; --line:#2c322b; --line-soft:#232922; } }
:root[data-theme="dark"]{ --bg:#10130F; --fg:#EDE9DD; --fg-soft:#a8a89c; --panel:#1A1F1A; --panel-raised:#1F251F; --line:#2c322b; --line-soft:#232922; }
*{box-sizing:border-box;}
html,body{margin:0;}
body{background:var(--bg);color:var(--fg);font-family:'Space Grotesk',system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;
  padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);}
a{color:var(--steel);}
[hidden]{display:none !important;}
.lg-top{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);position:sticky;top:0;backdrop-filter:blur(8px);z-index:5;}
.lg-top-in{max-width:860px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px;}
.lg-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);font-family:'Roboto Slab',serif;font-weight:600;font-size:17px;}
.lg-brand b{color:var(--brass);font-weight:600;}
.lg-top nav{margin-left:auto;display:flex;gap:16px;font-size:14px;}
.lg-top nav a{text-decoration:none;color:var(--fg-soft);font-weight:500;}
.lg-top nav a[aria-current]{color:var(--fg);border-bottom:2px solid var(--brass);}
main{max-width:860px;margin:0 auto;padding:34px 20px 70px;}
h1{font-family:'Roboto Slab',serif;font-size:34px;line-height:1.15;margin:0 0 6px;}
.lg-meta{color:var(--fg-soft);font-size:14px;margin:0 0 22px;}
.lg-draft{border:1px dashed var(--brick);color:var(--brick);border-radius:10px;padding:10px 14px;font-size:13.5px;margin:0 0 22px;background:color-mix(in srgb, var(--brick) 6%, transparent);}
.lg-key{border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:10px;background:var(--panel-raised);padding:16px 20px;margin:0 0 28px;}
.lg-key h2{margin-top:0 !important;font-size:17px !important;}
.lg-key ul{margin:8px 0 0;padding-left:20px;}
.lg-toc{columns:2;column-gap:28px;font-size:14px;padding-left:20px;margin:0 0 30px;}
.lg-toc li{break-inside:avoid;margin-bottom:3px;}
h2{font-family:'Roboto Slab',serif;font-size:21px;margin:34px 0 8px;scroll-margin-top:70px;}
h3{font-size:15.5px;margin:20px 0 4px;}
p,li{font-size:15px;}
ul{padding-left:22px;}
li{margin-bottom:5px;}
table{border-collapse:collapse;width:100%;font-size:14px;margin:10px 0;}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top;}
th{background:var(--panel);}
.lg-scroll{overflow-x:auto;}
.ph{background:color-mix(in srgb, var(--brick) 12%, transparent);color:var(--brick);border-radius:4px;padding:0 4px;font-weight:600;}
footer{border-top:1px solid var(--line);margin-top:40px;padding-top:16px;font-size:13px;color:var(--fg-soft);}
@media (max-width:640px){ h1{font-size:27px;} .lg-toc{columns:1;} .lg-top nav{gap:12px;font-size:13px;} .lg-brand span{display:none;} }
@media print{ .lg-top{position:static;} .lg-draft{display:none;} body{background:#fff;color:#000;} }
