
:root{
  --bg:#f7f5ef;
  --paper:#fffdf8;
  --ink:#111;
  --muted:#666;
  --line:#d8d3c7;
  --accent:#b91c1c;
  --warm:#d97706;
  --cool:#2563eb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink)}
body{font-family:Georgia,"Times New Roman",serif}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:22px 16px 40px}
.site-header,.site-footer{max-width:1100px;margin:0 auto;padding:16px}
.site-header{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:flex-end}
.brand-small,.nav,.meta,.helper,.field,.btn,.section-label,.status,.chat-meta,.badge{font-family:Arial,Helvetica,sans-serif}
.brand-small{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}
.brand-title{font-size:28px;font-weight:700;letter-spacing:-.03em}
.nav{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.nav a{text-decoration:none;padding:6px 0}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.panel{background:var(--paper);border:1px solid var(--line)}
.content-panel{padding:18px}
.eyebrow{font:11px Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#8b6b1f;margin-bottom:10px}
h1{margin:0 0 10px;font-size:clamp(34px,6vw,62px);line-height:.94;letter-spacing:-.05em}
.lede{margin:0;font-size:18px;line-height:1.55}
.stack{display:grid;gap:18px}
.grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;align-items:start}
.section-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.form-row{display:grid;gap:10px}
.field{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--ink);background:#fff;font-size:15px}
textarea.field{min-height:120px;padding:10px 12px;resize:vertical}
.btn{min-height:44px;padding:0 14px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.btn.secondary{background:transparent;color:var(--ink)}
.inline-actions{display:flex;gap:10px;flex-wrap:wrap}
.meta{font-size:12px;color:var(--muted)}
.helper{font-size:13px;color:var(--muted);line-height:1.45}
.status{font-size:13px;color:#8b6b1f}
.list{list-style:none;padding:0;margin:0}
.list li{padding:10px 0;border-bottom:1px solid var(--line)}
.list li:last-child{border-bottom:none}
.chat-messages{max-height:320px;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:10px 0}
.chat-row{display:flex;margin:8px 0}
.chat-row.me{justify-content:flex-end}
.chat-row.them{justify-content:flex-start}
.chat-bubble{max-width:85%;padding:10px 12px;border:1px solid var(--line);background:#fff}
.chat-row.me .chat-bubble{background:#f3efe6}
.chat-meta{font-size:11px;color:var(--muted);margin-top:4px}
.badge{display:inline-block;padding:2px 7px;border:1px solid var(--line);background:#eee6d8;font-size:11px;border-radius:999px}
#graph3d{width:100%;height:560px;background:radial-gradient(circle at 20% 20%, rgba(255,255,255,.92), rgba(255,255,255,.4) 30%, rgba(236,231,219,.2) 55%, rgba(236,231,219,.05) 100%), linear-gradient(180deg, rgba(255,253,248,.95), rgba(247,245,239,.92));touch-action:manipulation}
.footer-note{margin-top:24px;padding-top:12px;border-top:1px solid var(--line);font:12px Arial,sans-serif;color:var(--muted);letter-spacing:.05em}
.hidden{display:none !important}
@media (max-width:900px){
 .hero,.grid{grid-template-columns:1fr}
 #graph3d{height:460px}
}
