:root{--color-bg:#fff;--color-fg:#1b1b1b;--color-muted:#6b7280;--color-border:#e2e2e2;--color-accent:#3b5bdb;--color-accent-fg:#fff;--color-card:#fafafa;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--radius:8px;--font:system-ui, -apple-system, Segoe UI, Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);color:var(--color-fg);background:var(--color-bg);line-height:1.55}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:880px;padding:var(--space-4);margin:0 auto}.nav{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);align-items:center;display:flex}.nav strong{margin-right:auto}.card{border:1px solid var(--color-border);background:var(--color-card);border-radius:var(--radius);padding:var(--space-3);margin-bottom:var(--space-3)}.btn{padding:var(--space-2) var(--space-3);border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-accent-fg);border-radius:var(--radius);cursor:pointer;font:inherit;display:inline-block}.btn.secondary{color:var(--color-accent);background:0 0}.field{margin-bottom:var(--space-3);display:block}.field label{color:var(--color-muted);margin-bottom:var(--space-1);font-size:.85rem;display:block}.field input,.field textarea,.field select{width:100%;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);font:inherit}.muted{color:var(--color-muted)}.error{color:#c0392b}.badge{padding:0 var(--space-2);background:var(--color-border);border-radius:999px;font-size:.8rem;display:inline-block}.story-body{white-space:pre-wrap}.tree-node{cursor:pointer;color:var(--color-accent);border-bottom:1px dashed var(--color-border)}.tree-node:hover,.tree-node:focus{outline:none;text-decoration:underline}.profile-head{gap:var(--space-3);margin-bottom:var(--space-3);align-items:center;display:flex}.photo-thumb{object-fit:cover;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-card);justify-content:center;align-items:center;width:96px;height:96px;font-size:.8rem;display:inline-flex}.photo-grid{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}
