:root{--bg: #14161a;--surface: #1c1f25;--surface-2: #23272f;--border: #333944;--text: #e8e4dc;--text-dim: #9aa0ab;--accent: #d9a84e;--accent-dim: #8a6c33;--parchment: #f4e3c1;--global: #7aa2d6;--regional: #86b98a;--local: #d9a84e;--personal: #c98bb8;--danger: #d1685e;--ok: #6fae7a;--radius: 8px;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 12px;cursor:pointer}button:hover:not(:disabled){border-color:var(--accent-dim)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);color:#201a0c;border-color:var(--accent);font-weight:600}button.danger{border-color:var(--danger);color:var(--danger)}input,select,textarea{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 10px}input:focus,select:focus{outline:1px solid var(--accent-dim)}.shell{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:20px 0;display:flex;flex-direction:column}.brand{padding:0 20px 20px;border-bottom:1px solid var(--border);margin-bottom:12px}.brand h1{font-size:15px;margin:0;letter-spacing:.5px;font-family:Georgia,serif;color:var(--parchment)}.brand span{font-size:11px;color:var(--text-dim)}.nav a{display:block;padding:9px 20px;color:var(--text-dim);border-left:2px solid transparent}.nav a:hover{color:var(--text);text-decoration:none;background:var(--surface-2)}.nav a.active{color:var(--accent);border-left-color:var(--accent);background:var(--surface-2)}.sidebar-foot{margin-top:auto;padding:12px 20px 0;border-top:1px solid var(--border)}.main{flex:1;padding:24px 28px;max-width:1400px;min-width:0}.page-head{margin-bottom:20px}.page-head h2{margin:0 0 4px;font-size:20px;font-family:Georgia,serif}.page-head p{margin:0;color:var(--text-dim);font-size:13px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.card h3{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);font-weight:600}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{text-align:left}.stat .value{font-size:26px;font-weight:600;color:var(--parchment);line-height:1.1}.stat .label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--border)}td{padding:9px 10px;border-bottom:1px solid var(--surface-2)}tbody tr:hover{background:var(--surface-2)}.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.3px;border:1px solid currentColor}.badge.global{color:var(--global)}.badge.regional{color:var(--regional)}.badge.local{color:var(--local)}.badge.personal{color:var(--personal)}.badge.brewing{color:var(--text-dim)}.badge.active{color:var(--ok)}.badge.resolving{color:var(--accent)}.badge.resolved{color:var(--text-dim);opacity:.7}.badge.hidden{color:var(--danger)}.badge.rumored{color:var(--accent)}.badge.public{color:var(--text-dim)}.bar{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden;min-width:70px}.bar>span{display:block;height:100%;background:var(--accent)}.timeline{list-style:none;margin:0;padding:0}.timeline li{position:relative;padding:0 0 14px 20px;border-left:1px solid var(--border)}.timeline li:last-child{border-left-color:transparent;padding-bottom:0}.timeline li:before{content:"";position:absolute;left:-4px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--border)}.timeline li.progress:before{background:var(--accent-dim)}.timeline li.resolution:before{background:var(--ok)}.timeline li.player_influence:before,.timeline li.admin_intervention:before{background:var(--personal)}.timeline .beat-kind{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim)}.timeline .beat-text{color:var(--text)}.timeline time{font-size:11px;color:var(--text-dim)}.muted{color:var(--text-dim)}.small{font-size:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}.stack{display:flex;flex-direction:column;gap:16px}.error-banner{background:#3a1f1d;border:1px solid var(--danger);color:#f0c4bf;padding:10px 14px;border-radius:var(--radius);margin-bottom:16px}.gate{max-width:420px;margin:12vh auto}.gate .card{text-align:left}.gate input{width:100%;margin:10px 0}.map-frame{background:var(--parchment);border-radius:var(--radius);padding:8px;overflow:auto}.map-frame svg{display:block;width:100%;height:auto}.slot-pip{display:inline-block;width:10px;height:10px;border-radius:2px;border:1px solid var(--accent-dim);margin-right:3px}.slot-pip.spent{background:transparent;opacity:.35}.slot-pip.open{background:var(--accent)}.docs-layout{display:grid;grid-template-columns:250px 1fr;gap:16px;align-items:start}@media (max-width: 900px){.docs-layout{grid-template-columns:1fr}}.docs-nav{position:sticky;top:24px}.docs-nav-item{display:block;width:100%;text-align:left;background:none;border:none;border-left:2px solid transparent;border-radius:0;padding:6px 10px;color:var(--text-dim);font-size:13px}.docs-nav-item:hover{color:var(--text);background:var(--surface-2);border-color:var(--border)}.docs-nav-item.active{color:var(--accent);border-left-color:var(--accent);background:var(--surface-2)}.doc-body{max-width:78ch;line-height:1.68}.doc-body>:first-child{margin-top:0}.doc-body h1{font-family:Georgia,serif;font-size:25px;margin:0 0 6px;color:var(--parchment)}.doc-body h2{font-family:Georgia,serif;font-size:19px;margin:32px 0 10px;padding-top:10px;border-top:1px solid var(--border);color:var(--parchment)}.doc-body h3{font-size:15px;margin:22px 0 8px;color:var(--text)}.doc-body p,.doc-body li{color:var(--text)}.doc-body a{text-decoration:underline}.doc-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;background:var(--surface-2);padding:1px 5px;border-radius:4px;color:var(--parchment)}.doc-body pre{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;overflow-x:auto}.doc-body pre code{background:none;padding:0;font-size:12.5px;line-height:1.5}.doc-body blockquote{margin:16px 0;padding:2px 16px;border-left:3px solid var(--accent-dim);color:var(--text-dim);background:var(--surface-2);border-radius:0 6px 6px 0}.doc-body blockquote p{color:var(--text-dim)}.doc-body table{margin:14px 0;font-size:13px}.doc-body td,.doc-body th{vertical-align:top}.doc-body hr{border:none;border-top:1px solid var(--border);margin:28px 0}.doc-body ul,.doc-body ol{padding-left:22px}.doc-body li{margin-bottom:5px}.doc-body li>input[type=checkbox]{margin-right:6px}.attr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:8px}.attr{background:var(--surface-2);border-radius:6px;padding:8px;text-align:center}.attr .name{font-size:10px;text-transform:uppercase;color:var(--text-dim);letter-spacing:.6px}.attr .score{font-size:19px;font-weight:600;color:var(--parchment)}.attr .mod{font-size:12px;color:var(--accent)}
