/* Community layer — shared styles for community.html and the server-rendered /t/:id page.
   Matches the marketplace palette + type exactly. */

:root{
  --base:#f6f7fb;
  --base-2:#eeeff7;
  --base-3:#e2e4f0;
  --ink:#0d0b1f;
  --ink-2:#312e4a;
  --ink-3:#6b6890;
  --ink-4:#a5a3bd;
  --line:#e2e4f0;
  --line-2:#eeeff7;
  --card:#ffffff;
  --hot:#ff3d7f;
  --hot-dark:#e01d63;
  --hot-soft:#ffe4ee;
  --amber:#ffb84d;
  --amber-dark:#f59e0b;
  --amber-soft:#fff3d9;
  --pos:#10b981;
  --pos-soft:#d1fae7;
  --neg:#ef4444;
  --gold:#b8862c;
  --gold-soft:#f0d998;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:'Space Grotesk',-apple-system,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--base);-webkit-font-smoothing:antialiased;min-height:100vh}
.serif{font-family:'Fraunces',Georgia,serif;font-optical-sizing:auto}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;font-variant-numeric:tabular-nums}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
::selection{background:var(--hot);color:#fff}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* ── Top bar (matches marketplace) ─────────────────────── */
.topbar{background:var(--ink);color:#fff;position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(255,255,255,.08)}
.topbar-inner{display:flex;align-items:center;gap:20px;padding:12px 0}
.brand{display:inline-flex;align-items:center;gap:8px;font-family:'Fraunces',serif;font-weight:700;font-size:22px;letter-spacing:-.02em;color:#fff}
.brand-dot{width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,var(--hot),var(--amber));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces',serif;font-style:italic;font-size:15px;font-weight:700;box-shadow:0 4px 12px -2px rgba(255,61,127,.5)}
.brand em{font-style:italic;color:var(--amber);font-weight:500}
.topbar-nav{display:flex;align-items:center;gap:2px}
.topbar-nav a{padding:8px 14px;font-size:13px;font-weight:600;color:rgba(255,255,255,.7);border-radius:8px;transition:background .15s,color .15s}
.topbar-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.topbar-nav a.active{color:var(--amber);background:rgba(255,184,77,.1)}
.topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.topbar-signin{padding:9px 14px;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);border-radius:8px;transition:background .15s}
.topbar-signin:hover{background:rgba(255,255,255,.08);color:#fff}
.topbar-search{flex:1;max-width:420px;position:relative}
.topbar-search input{width:100%;padding:10px 14px 10px 40px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.06);border-radius:9px;color:#fff;font-size:14px;font-family:inherit}
.topbar-search input::placeholder{color:rgba(255,255,255,.5)}
.topbar-search input:focus{outline:0;background:rgba(255,255,255,.14);border-color:var(--hot)}
.topbar-search .ico{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.5);width:16px;height:16px}
.btn-hot{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:linear-gradient(135deg,var(--hot),var(--hot-dark));color:#fff;border-radius:9px;font-size:13px;font-weight:700;transition:transform .12s,box-shadow .15s;box-shadow:0 6px 18px -4px rgba(255,61,127,.45);border:0;cursor:pointer}
.btn-hot:hover{transform:translateY(-1px);box-shadow:0 10px 24px -4px rgba(255,61,127,.55)}
.btn-hot .arr{font-family:'JetBrains Mono',monospace;font-weight:600}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;background:transparent;border:1px solid var(--line);color:var(--ink-2);border-radius:9px;font-size:13px;font-weight:600;cursor:pointer}
.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}

/* ── Community index ───────────────────────────────────── */
.c-hero{padding:36px 0 20px}
.c-hero-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.c-hero h1{font-family:'Fraunces',serif;font-weight:500;font-size:clamp(32px,3.6vw,44px);letter-spacing:-.02em;line-height:1.05;color:var(--ink);margin-bottom:6px}
.c-hero h1 em{font-style:italic;color:var(--hot);font-weight:500}
.c-hero-sub{color:var(--ink-3);font-size:15px;line-height:1.55;max-width:520px}
.c-hero .btn-hot{align-self:center}

.c-catstrip{padding:12px 0 22px}
.c-catstrip-inner{display:flex;gap:8px;flex-wrap:wrap}
.c-cat{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border-radius:11px;font-size:13px;font-weight:600;color:var(--ink-2);background:var(--card);border:1px solid var(--line);transition:transform .15s,box-shadow .15s,border-color .15s;cursor:pointer}
.c-cat:hover{transform:translateY(-1px);box-shadow:0 8px 18px -6px rgba(13,11,31,.15);color:var(--ink)}
.c-cat.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.c-cat.active .c-cat-count{color:rgba(255,255,255,.6)}
.c-cat-ico{width:22px;height:22px;border-radius:6px;background:var(--c,var(--hot));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:10px}
.c-cat-count{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600}

.c-toolbar{display:flex;gap:12px;align-items:center;padding:10px 14px;background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;flex-wrap:wrap}
.c-toolbar-search{flex:1;min-width:220px;position:relative}
.c-toolbar-search input{width:100%;padding:9px 14px 9px 34px;border:1px solid var(--line);background:var(--base);border-radius:8px;font-size:13px;font-family:inherit;color:var(--ink);transition:border-color .12s,background .12s}
.c-toolbar-search input:focus{outline:0;border-color:var(--hot);background:#fff}
.c-toolbar-search .ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-4);width:14px;height:14px}
.c-toolbar-sort{display:flex;gap:2px;padding:3px;background:var(--base-2);border-radius:8px}
.c-toolbar-sort button{padding:6px 12px;font-size:12px;font-weight:600;color:var(--ink-3);border-radius:6px;transition:background .12s,color .12s;font-family:'JetBrains Mono',monospace}
.c-toolbar-sort button:hover{color:var(--ink)}
.c-toolbar-sort button.active{background:#fff;color:var(--ink);box-shadow:0 2px 6px -2px rgba(13,11,31,.15)}

/* Thread list rows */
.c-list{display:flex;flex-direction:column;gap:6px;padding-bottom:60px}
.c-row{display:grid;grid-template-columns:64px 1fr 140px 44px 60px;gap:16px;align-items:center;padding:14px 18px;background:var(--card);border:1px solid var(--line-2);border-radius:12px;transition:border-color .12s,transform .12s;cursor:pointer;text-decoration:none;color:inherit}
.c-row:hover{border-color:var(--ink-4);transform:translateY(-1px);box-shadow:0 6px 14px -8px rgba(13,11,31,.12)}
.c-row.pinned{background:linear-gradient(180deg,var(--amber-soft) 0%,var(--card) 30%)}
.c-rx{display:flex;flex-direction:column;align-items:center;gap:2px;font-family:'JetBrains Mono',monospace}
.c-rx-n{font-size:15px;font-weight:700;color:var(--hot)}
.c-rx-l{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--ink-4);font-weight:700}
.c-title-cell{min-width:0}
.c-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.c-title{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:15px;letter-spacing:-.005em;color:var(--ink);line-height:1.25}
.c-pin{font-size:11px;color:var(--amber-dark);font-weight:700;font-family:'JetBrains Mono',monospace}
.c-lock{font-size:11px;color:var(--ink-3);font-family:'JetBrains Mono',monospace}
.c-tagline{font-size:13px;color:var(--ink-3);line-height:1.45;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.c-attach-mini{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:var(--base-2);border-radius:6px;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--ink-2);margin-top:6px}
.c-attach-mini::before{content:'';width:5px;height:5px;background:var(--hot);border-radius:50%}
.c-cat-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:var(--c-soft,var(--hot-soft));color:var(--c,var(--hot-dark));border-radius:6px;font-size:11px;font-weight:700;font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;justify-self:start}
.c-author-cell{display:flex;align-items:center;gap:8px;min-width:0}
.c-av{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:13px;font-weight:700;color:#fff;flex-shrink:0}
.c-author-txt{min-width:0;overflow:hidden}
.c-author-name{font-size:12px;font-weight:700;color:var(--ink);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c-author-handle{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--ink-3);font-weight:600}
.c-comments{display:flex;flex-direction:column;align-items:center;gap:2px;font-family:'JetBrains Mono',monospace}
.c-comments-n{font-size:14px;font-weight:700;color:var(--ink)}
.c-comments-l{font-size:9px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.11em;font-weight:700}
.c-time{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600;text-align:right}
.c-empty{padding:60px 20px;text-align:center;background:var(--card);border:1px dashed var(--line);border-radius:14px}
.c-empty h3{font-family:'Fraunces',serif;font-size:24px;font-weight:600;margin-bottom:8px}
.c-empty h3 em{color:var(--hot);font-style:italic;font-weight:500}
.c-empty p{color:var(--ink-3);margin-bottom:18px}

@media (max-width:820px){
  .c-row{grid-template-columns:44px 1fr auto;gap:12px;padding:14px}
  .c-cat-tag,.c-author-cell,.c-time{display:none}
  .c-comments{flex-direction:row;gap:6px}
}

/* ── Composer modal ────────────────────────────────────── */
.modal{position:fixed;inset:0;background:rgba(13,11,31,.6);backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}
.modal-box{background:#fff;border-radius:16px;max-width:640px;width:100%;padding:28px;box-shadow:0 30px 80px -20px rgba(13,11,31,.5)}
.modal-box h3{font-family:'Fraunces',serif;font-size:26px;font-weight:600;letter-spacing:-.015em;margin-bottom:6px}
.modal-hint{font-size:13px;color:var(--ink-3);margin-bottom:20px}
.modal-field{margin-bottom:14px}
.modal-field label{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-3);margin-bottom:6px}
.modal-field input, .modal-field select, .modal-field textarea{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:9px;background:var(--base);color:var(--ink);font:14px/1.5 'Space Grotesk',sans-serif;transition:border-color .12s,background .12s}
.modal-field textarea{font-family:'Space Grotesk',sans-serif;min-height:180px;resize:vertical}
.modal-field input:focus, .modal-field select:focus, .modal-field textarea:focus{outline:0;border-color:var(--hot);background:#fff}
.modal-md-hint{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-4);margin-top:6px}
.modal-md-hint code{background:var(--base-2);padding:1px 5px;border-radius:3px;color:var(--ink-2)}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:22px;border-top:1px dashed var(--line)}
.modal-error{background:var(--hot-soft);border:1px solid var(--hot);color:var(--hot-dark);padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600;margin-bottom:14px}

/* Project attach typeahead */
.attach-picker{position:relative}
.attach-picker input{padding-left:36px}
.attach-picker::before{content:'📎';position:absolute;left:12px;top:12px;font-size:14px;pointer-events:none}
.attach-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:9px;max-height:220px;overflow-y:auto;margin-top:4px;box-shadow:0 12px 24px -8px rgba(13,11,31,.15);z-index:5;display:none}
.attach-suggestions.open{display:block}
.attach-sugg{padding:10px 14px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:8px;color:var(--ink-2)}
.attach-sugg:hover{background:var(--base-2);color:var(--ink)}
.attach-sugg-t{font-weight:700}
.attach-sugg-c{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--ink-4)}
.attach-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;background:var(--hot-soft);color:var(--hot-dark);border-radius:8px;font-size:12px;font-weight:700;margin-top:8px}
.attach-chip button{color:var(--hot-dark);font-weight:900;padding:0 4px;font-size:16px;line-height:1}

/* ── Thread page ───────────────────────────────────────── */
.pt-body{background:var(--base)}
.pt-wrap{max-width:800px;margin:0 auto;padding:32px 24px 80px}
.pt-crumb{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ink-3);flex-wrap:wrap}
.pt-crumb a{color:var(--ink-3);font-weight:600;transition:color .12s}
.pt-crumb a:hover{color:var(--ink)}
.pt-crumb .sep{color:var(--ink-4)}
.pt-cat{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--card);border:1px solid var(--line);border-radius:6px;font-weight:700}
.pt-cat-dot{width:8px;height:8px;background:var(--c);border-radius:2px}
.pt-pin,.pt-lock{padding:3px 8px;background:var(--amber-soft);color:var(--amber-dark);border-radius:6px;font-weight:700;font-size:11px}
.pt-lock{background:var(--base-2);color:var(--ink-3)}

.pt-thread{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:32px 34px;position:relative;overflow:hidden}
.pt-thread::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--hot),var(--amber))}
.pt-title{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(26px,3vw,36px);letter-spacing:-.02em;line-height:1.15;margin-bottom:18px;color:var(--ink)}
.pt-meta{display:flex;align-items:center;gap:14px;padding-bottom:20px;border-bottom:1px dashed var(--line);margin-bottom:22px;flex-wrap:wrap}
.pt-author{display:inline-flex;align-items:center;gap:10px}
.pt-av{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:18px;font-weight:600;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(15,23,42,.06)}
.pt-author-name{font-size:14px;font-weight:700;color:var(--ink)}
.pt-author-handle{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600}
.pt-time{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-4);font-weight:600;margin-left:auto}
.pt-follow-btn{padding:6px 14px;border-radius:7px;font-size:12px;font-weight:700;border:1px solid var(--line);background:var(--card);color:var(--ink-2);cursor:pointer;transition:all .12s;font-family:'Space Grotesk',sans-serif}
.pt-follow-btn:hover{border-color:var(--ink);color:var(--ink)}
.pt-follow-btn.following{background:var(--ink);color:#fff;border-color:var(--ink)}
.pt-follow-btn.following:hover{background:var(--neg);border-color:var(--neg)}

.pt-attach{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--base-2);border:1px solid var(--line);border-radius:10px;margin-bottom:22px;color:inherit;transition:border-color .12s,transform .12s}
.pt-attach:hover{border-color:var(--ink);transform:translateY(-1px)}
.pt-attach-ico{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:11px;flex-shrink:0}
.pt-attach-t{font-family:'Fraunces',serif;font-weight:600;font-size:15px}
.pt-attach-u{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600}
.pt-attach-cta{margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;color:var(--hot)}

.pt-body.md-body{font-size:16px;line-height:1.65;color:var(--ink-2)}
.md-body p.md-p{margin:0 0 14px}
.md-body h3.md-h,.md-body h4.md-h,.md-body h5.md-h{font-family:'Fraunces',serif;font-weight:600;letter-spacing:-.015em;margin:22px 0 10px;color:var(--ink)}
.md-body h3.md-h{font-size:22px}
.md-body h4.md-h{font-size:19px}
.md-body h5.md-h{font-size:16px}
.md-body ul.md-ul,.md-body ol.md-ol{margin:0 0 14px 22px}
.md-body ul.md-ul li,.md-body ol.md-ol li{margin-bottom:6px}
.md-body code{font-family:'JetBrains Mono',monospace;background:var(--base-2);padding:1px 6px;border-radius:4px;font-size:.9em;color:var(--ink)}
.md-body pre.md-pre{background:var(--ink);color:var(--base);padding:16px 18px;border-radius:10px;overflow-x:auto;margin:0 0 16px;font-size:13px}
.md-body pre.md-pre code{background:transparent;padding:0;color:inherit}
.md-body a{color:var(--hot);text-decoration:underline;text-decoration-color:var(--hot-soft);text-underline-offset:3px;font-weight:600}
.md-body a:hover{text-decoration-color:var(--hot)}
.md-body strong{color:var(--ink);font-weight:700}
.md-body em{font-style:italic}

.pt-reactions{display:flex;flex-wrap:wrap;gap:6px;padding-top:22px;border-top:1px dashed var(--line);margin-top:22px}
.rx-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--card);border:1px solid var(--line);border-radius:20px;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--ink-2);cursor:pointer;transition:all .12s;position:relative}
.rx-btn:hover{border-color:var(--ink-4);transform:translateY(-1px)}
.rx-btn.mine{background:var(--amber-soft);border-color:var(--amber);color:var(--amber-dark);box-shadow:0 0 0 2px rgba(255,184,77,.15)}
.rx-emoji{font-size:14px;line-height:1}
.rx-count{font-variant-numeric:tabular-nums}
.rx-btn.zero .rx-count{color:var(--ink-4)}
.rx-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11px;padding:4px 10px;border-radius:5px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .1s;font-family:'Space Grotesk',sans-serif}
.rx-btn:hover .rx-tooltip{opacity:1}

.pt-stats{display:flex;gap:16px;align-items:center;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ink-3);margin-top:18px;padding-top:16px;border-top:1px dashed var(--line-2)}
.pt-stats b{color:var(--ink);font-weight:700}
.pt-report{margin-left:auto;color:var(--ink-4);font-family:'JetBrains Mono',monospace;font-size:11px;padding:4px 8px;border-radius:5px;cursor:pointer;transition:color .12s,background .12s}
.pt-report:hover{background:var(--hot-soft);color:var(--hot-dark)}

.pt-comments-wrap{margin-top:28px}
.pt-comments-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;padding:0 6px}
.pt-comments-head h2{font-family:'Fraunces',serif;font-size:22px;font-weight:600;letter-spacing:-.015em}

#pt-composer-slot{margin-bottom:16px}
.pt-composer{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.pt-composer textarea{width:100%;min-height:80px;border:0;background:transparent;color:var(--ink);font:14px/1.55 'Space Grotesk',sans-serif;resize:vertical;padding:0}
.pt-composer textarea:focus{outline:0}
.pt-composer-foot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line-2)}
.pt-composer-hint{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-4)}
.pt-composer-signin{background:var(--card);border:1px dashed var(--line);border-radius:12px;padding:16px 20px;text-align:center;color:var(--ink-3);font-size:14px}
.pt-composer-signin a{color:var(--hot);font-weight:700;text-decoration:underline}
.pt-composer-locked{background:var(--base-2);border:1px solid var(--line);border-radius:12px;padding:14px 18px;color:var(--ink-3);font-size:13px;text-align:center;font-family:'JetBrains Mono',monospace}

.pt-comments{display:flex;flex-direction:column;gap:12px}
.pt-empty{padding:32px 20px;text-align:center;color:var(--ink-4);font-size:14px;background:var(--card);border:1px dashed var(--line);border-radius:12px}
.pt-c{background:var(--card);border:1px solid var(--line-2);border-radius:12px;padding:16px 20px}
.pt-c-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.pt-c-av{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:13px;font-weight:700;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(15,23,42,.06)}
.pt-c-name{font-size:13px;font-weight:700;color:var(--ink)}
.pt-c-handle{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600}
.pt-c-time{margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-4);font-weight:600}
.pt-c-body{color:var(--ink-2);font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}
.pt-c-body a{color:var(--hot);text-decoration:underline;font-weight:600}
.pt-c-body code{font-family:'JetBrains Mono',monospace;background:var(--base-2);padding:1px 5px;border-radius:3px;font-size:.9em}
.pt-c-foot{display:flex;gap:12px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line-2)}
.pt-c-reply{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:700;cursor:pointer;padding:3px 8px;border-radius:5px;transition:background .12s,color .12s}
.pt-c-reply:hover{background:var(--base-2);color:var(--ink)}
.pt-c-actions{margin-left:auto;display:flex;gap:8px}
.pt-c-act{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-4);cursor:pointer;padding:3px 6px;border-radius:4px}
.pt-c-act:hover{color:var(--neg);background:var(--hot-soft)}
.pt-c-replies{margin-left:24px;padding-left:16px;border-left:2px solid var(--line-2);margin-top:10px;display:flex;flex-direction:column;gap:10px}
.pt-c .pt-c{background:var(--base)}

.pt-foot{text-align:center;padding:24px 0;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-3);font-weight:600;letter-spacing:.06em}

@media (max-width:640px){
  .pt-wrap{padding:20px 16px 60px}
  .pt-thread{padding:22px 20px;border-radius:12px;margin:0 -4px}
  .pt-meta{gap:10px}
  .pt-time{margin-left:0;flex-basis:100%}
  .pt-follow-slot{margin-left:auto}
}

/* Signin tooltip for reactions */
.rx-signin{position:relative}
.rx-signin::after{content:attr(data-tt);position:absolute;bottom:calc(100% + 4px);left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11px;padding:5px 10px;border-radius:5px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s;font-family:'Space Grotesk',sans-serif;font-weight:600}
.rx-signin:hover::after{opacity:1}
