:root { --bg:#0b0c10; --fg:#e5e7eb; --card:#151922; --accent:#7c3aed; }
*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--fg);text-decoration:none;opacity:.9}a:hover{opacity:1}
.top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #222;position:sticky;top:0;background:var(--bg);z-index:10}
h1{font-size:20px;margin:0}nav a{margin-left:12px}
main{max-width:800px;margin:24px auto;padding:0 16px}
.card{background:var(--card);padding:16px;border-radius:12px;border:1px solid #2a3040;margin-bottom:16px}
.row{display:flex;gap:8px;align-items:center;margin:8px 0}
label{width:52px;opacity:.8}
input{flex:1;padding:8px 10px;border:1px solid #3a4050;border-radius:8px;background:#0f1320;color:var(--fg)}
button{padding:10px 14px;border:0;border-radius:8px;background:#2b3245;color:var(--fg);cursor:pointer}
button:hover{background:#3a4260}button:disabled{opacity:.5;cursor:not-allowed}
audio{width:100%;margin-top:8px}
.post{padding:12px;border-radius:10px;border:1px solid #2a3040;margin-bottom:12px}
.meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.time{font-size:12px;opacity:.7}
#status{opacity:.8;font-size:14px}
/* CSP-safe avatar (no inline style) */
.avatar{width:24px;height:24px;border-radius:50%;vertical-align:middle;margin-right:.4rem}
