
:root{
  --bg:#f7f2e9;
  --paper:#fffdf8;
  --ink:#171717;
  --muted:#6d6558;
  --line:#ddd3c2;
  --accent:#c6363c;
  --warm:#e58a16;
  --cool:#2f6df6;
  --warm-soft:#ffd596;
  --cool-soft:#b8d5ff;
}
*{box-sizing:border-box}
html{margin:0;padding:0;overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;background:var(--bg);color:var(--ink)}
body{margin:0;padding:0;min-width:0;max-width:100%;overflow-x:hidden;color:var(--ink)}
body{font-family:Georgia,"Times New Roman",serif;background:radial-gradient(circle at top left, rgba(255,236,210,.45), transparent 28%), radial-gradient(circle at top right, rgba(189,216,255,.35), transparent 24%), var(--bg)}
a{color:inherit}
.site-shell{
  width:100%;
  min-width:0;
  max-width:1100px;
  margin-right:auto;
  margin-left:auto;
  padding-right:16px;
  padding-left:16px;
}
.wrap{padding-top:22px;padding-bottom:40px;min-width:0}
.site-header,
.site-footer{
  width:100%;
}

.site-header-inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.site-footer-inner {
  padding-bottom: 16px;
}
.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}
.brand-domain{font:12px Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#8b6b1f;margin-top:3px}
.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;border-bottom:1px solid transparent}
.nav a.active{border-bottom-color:var(--ink)}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.panel{min-width:0;max-width:100%;overflow:hidden;background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,244,.96));border:1px solid var(--line);box-shadow:0 8px 20px rgba(85,62,28,.05)}
.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;min-width:0}
.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;transition:transform .18s ease, box-shadow .18s ease, background .18s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.08)}
.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{position:relative;width:100%;max-width:100%;min-width:0;height:560px;overflow:hidden;background:radial-gradient(circle at 18% 18%, rgba(255,221,170,.55), rgba(255,221,170,0) 26%), radial-gradient(circle at 82% 18%, rgba(180,211,255,.52), rgba(180,211,255,0) 24%), radial-gradient(circle at 50% 80%, rgba(255,244,223,.38), rgba(255,244,223,0) 36%), linear-gradient(180deg, rgba(255,253,248,.98), rgba(247,245,239,.94));border-radius:16px;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}
}

@media (max-width:640px){
  .site-header-inner{
    align-items:flex-start;
    flex-direction:column;
  }
}

#graph3d > div,
#graph3d canvas{
  display:block;
  max-width:100%;
}

#graph3d > div,
#graph3d canvas{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}
