:root { --ink:#e8e4d9; --bg:#12110f; --mute:#8a8478; --line:#2a2824; --acc:#e2b14a; }
* { box-sizing:border-box; }
body { margin:0; font:18px/1.45 Georgia, serif; background:var(--bg); color:var(--ink); }
a { color:var(--acc); }
.top { display:flex; gap:1rem; align-items:center; padding:1rem 1.25rem; border-bottom:1px solid var(--line); }
.top nav { margin-left:auto; display:flex; gap:1rem; }
.mark { font-weight:700; color:var(--ink); text-decoration:none; letter-spacing:.04em; }
.badge { font:12px/1 sans-serif; border:1px solid var(--acc); color:var(--acc); padding:.2rem .4rem; }
main { max-width:42rem; margin:0 auto; padding:2rem 1.25rem 4rem; }
.hero h1 { font-size:2.1rem; }
.fine, .kicker { color:var(--mute); font-size:.95rem; }
.actions { display:flex; gap:.75rem; flex-wrap:wrap; }
.btn { display:inline-block; background:var(--acc); color:#111; text-decoration:none; border:0; padding:.6rem 1rem; font:600 15px/1 sans-serif; cursor:pointer; }
.btn.ghost { background:transparent; color:var(--ink); border:1px solid var(--line); }
.thread { list-style:none; padding:0; }
.thread li { padding:.75rem 0; border-bottom:1px solid var(--line); white-space:pre-wrap; }
.thread .tutor { color:#f3efe4; }
.thread .learner { color:#c9c3b5; }
.composer textarea, input[type=password] { width:100%; background:#1b1a17; color:var(--ink); border:1px solid var(--line); padding:.7rem; font:inherit; }
.pulse { display:flex; flex-wrap:wrap; gap:.6rem; margin:.6rem 0; font:14px sans-serif; color:var(--mute); }
table { width:100%; border-collapse:collapse; font:15px/1.3 sans-serif; }
th, td { text-align:left; padding:.45rem .3rem; border-bottom:1px solid var(--line); vertical-align:top; }
.clip { max-width:14rem; }
.card { display:grid; gap:.8rem; }
.inline { display:inline; }
.stack { display:grid; gap:.4rem; margin:.6rem 0 1.2rem; }
.stack input, .stack textarea, .stack select { width:100%; background:#1b1a17; color:var(--ink); border:1px solid var(--line); padding:.5rem; font:inherit; }
code { font:13px ui-monospace, monospace; }
