/* Publika home: all activity and counts come from published records. */
body.fs-page {
  background: #0a0a0a;
  color: #f3f0ed;
}

.pk-top {
  position: relative;
  z-index: 3;
  min-height: 68px;
  border-bottom: 1px solid #242424;
  background: #0a0a0a;
}

.pk-top .pk-search {
  max-width: 440px;
  margin-left: clamp(8px, 6vw, 100px);
}

.pk-top .pk-search label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.pk-top .pk-search .pk-control {
  background: #181818;
  border-color: #2b2b2b;
}

.pk-top-login { margin-left: auto; }
.pk-top-join { min-width: 128px; }
.pk-frame { gap: 0; padding: 0; }
.pk-rail {
  flex: 0 0 205px;
  gap: 4px;
  min-height: calc(100vh - 68px);
  padding: 16px 12px;
  border-right: 1px solid #242424;
}
.pk-rail a {
  color: #bbb;
  padding: 10px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 500;
}
.pk-rail a:hover, .pk-rail a[aria-current="page"] {
  color: #f6f3f0;
  background: #181818;
}
.pk-rail a[aria-current="page"] { color: #ef442a; font-weight: 700; }
.pk-stage { min-width: 0; }
.pk-home { display: block; max-width: 100%; }
.pk-home-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 310px);
  gap: 24px;
  padding: 24px;
}
.pk-home-primary { min-width: 0; }
.pk-home-intro { margin: 0 0 24px; }
.pk-home-intro h1 { max-width: 18ch; margin: 8px 0; font-size: clamp(32px, 3.3vw, 52px); line-height: 1.05; letter-spacing: -.04em; }
.pk-home-intro > p:last-child { max-width: 54ch; margin: 0; color: #b9b4b0; font-size: 16px; line-height: 1.5; }
.pk-home-onboard { padding: 24px; margin-bottom: 20px; border: 1px solid #783528; border-radius: 9px; background: #21100c; }
.pk-home-onboard h2 { margin: 5px 0; }
.pk-home-onboard p { max-width: 60ch; color: #c9bbb4; }
.pk-home-topics { display: flex; gap: 7px; overflow-x: auto; margin-bottom: 28px; padding-bottom: 5px; }
.pk-home-topics a { flex: none; padding: 9px 13px; border: 1px solid #303030; border-radius: 99px; color: #d7d3d0; background: #181818; text-decoration: none; font-size: 13px; }
.pk-home-topics a:hover { border-color: #ef442a; color: white; }
.pk-home-stream-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 16px; }
.pk-home-stream-head h2 { margin: 0 0 3px; }
.pk-home-stream-head p { margin: 0; color: #aaa; }
.pk-home-feed { display: grid; gap: 11px; padding: 0; margin: 0; list-style: none; }
.pk-home-feed .pk-home-card article { min-height: 0; padding: 21px; }
.pk-home-image{display:block;margin:14px -3px 0;aspect-ratio:16/8.2;overflow:hidden;border-radius:7px;background:#1a1a1a}
.pk-home-image img{width:100%;height:100%;object-fit:cover;display:block}
.pk-home-author{display:inline-flex;align-items:center;gap:7px;color:#cfcac6;text-decoration:none}
.pk-home-author img{width:28px;height:28px;border-radius:50%;object-fit:cover}
.pk-home-feed .pk-home-card h2 { margin: 12px 0 7px; font-size: clamp(19px, 1.5vw, 23px); line-height: 1.25; }
.pk-home-feed .pk-home-card h2 a { color: #f5f3f0; text-decoration: none; }
.pk-home-feed .pk-home-card p { margin: 0; }
.pk-home-open { margin-top: 18px; align-self: flex-start; color: #ef8b7c; font-size: 13px; text-decoration: none; }
.pk-home-side-card > a { display: block; }
.pk-home-opening h2 { margin-top: 0; color: #fff; }
.pk-home-section { margin: 0 0 36px; }
.pk-home-section-head, .pk-home-side-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
  margin-bottom: 16px;
}
.pk-home-section-head h1, .pk-home-section-head h2, .pk-home-side h2 {
  margin: 0 0 5px;
  color: #f5f3f0;
  letter-spacing: -.025em;
}
.pk-home-section-head h1 { font-size: clamp(24px, 2.25vw, 34px); }
.pk-home-section-head h2 { font-size: clamp(20px, 1.6vw, 26px); }
.pk-home-section-head p, .pk-home-side p {
  margin: 0;
  color: #aaa;
  line-height: 1.5;
}
.pk-home-kicker {
  color: #ef442a !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.pk-home-section-head a, .pk-home-side a {
  flex: none;
  color: #d4d0cc;
  font-size: 13px;
  text-decoration: none;
}
.pk-home-section-head a:hover, .pk-home-side a:hover { color: #fff; }
.pk-home-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.pk-home-recent { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pk-home-card { min-width: 0; }
.pk-home-card article {
  display: flex;
  flex-direction: column;
  min-height: 186px;
  height: 100%;
  padding: 17px;
  border: 1px solid #282828;
  border-radius: 8px;
  background: #151515;
}
.pk-home-card-top, .pk-home-card-foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.pk-home-kind, .pk-home-status {
  color: #aaa;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.pk-home-status { color: #e55b47; }
.pk-home-card h3 { margin: 22px 0 8px; font-size: 18px; line-height: 1.2; }
.pk-home-card h3 a { color: #f5f3f0; text-decoration: none; }
.pk-home-card h3 a:hover { color: #ff7863; }
.pk-home-card p { margin: 0 0 16px; color: #999; font-size: 13px; }
.pk-home-card-foot { margin-top: auto; color: #999; font-size: 12px; }
.pk-home-card-foot a { color: #ef8b7c; text-decoration: none; }
.pk-home-opening, .pk-home-empty {
  padding: 22px;
  border: 1px solid #2b2b2b;
  border-radius: 8px;
  background: #151515;
  color: #aaa;
}
.pk-home-opening-title { margin: 0 0 6px; color: #fff; font-size: 20px; font-weight: 700; }
.pk-home-opening p { max-width: 58ch; line-height: 1.5; }
.pk-home-opening .fs-button { margin-top: 6px; }
.pk-home-prompts { margin-top: 28px; }
.pk-home-prompts h2 { margin: 0 0 4px; font-size: 22px; }
.pk-home-prompts > p { margin: 0 0 14px; color: #aaa; }
.pk-home-prompt-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.pk-home-prompt-grid a {
  display: flex;
  flex-direction: column;
  min-height: 138px;
  gap: 10px;
  padding: 18px;
  border: 1px solid #2b2b2b;
  border-radius: 8px;
  background: #151515;
  color: #f2f0ed;
  text-decoration: none;
}
.pk-home-prompt-grid a:hover { border-color: #b23724; }
.pk-home-prompt-grid span { color: #ef654f; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.pk-home-prompt-grid strong { font-size: 16px; line-height: 1.2; }
.pk-home-prompt-grid small { margin-top: auto; color: #aaa; font-size: 12px; }
.pk-home-empty { margin: 0; }
.pk-home-side { display: grid; align-content: start; gap: 14px; }
.pk-home-side-card {
  padding: 18px;
  border: 1px solid #282828;
  border-radius: 8px;
  background: #141414;
}
.pk-home-side-card nav { display: grid; }
.pk-home-side-card nav a { padding: 11px 0; border-bottom: 1px solid #292929; }
.pk-home-side-card nav a:last-child { border-bottom: 0; }
.pk-home-side-card > a { display: inline-block; margin-top: 14px; }
.pk-home-side-list { padding: 0; margin: 0; list-style: none; }
.pk-home-side-list .pk-home-card + .pk-home-card { margin-top: 10px; }
.pk-home-side-list .pk-home-card article { min-height: 0; padding: 12px; }
.pk-home-side-list .pk-home-card h3 { margin-top: 8px; font-size: 15px; }
.pk-home-side-list .pk-home-card-foot { display: none; }
.pk-home-join {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 28px 32px;
  border-top: 1px solid #60251d;
  border-bottom: 1px solid #60251d;
  background: #1b0c0a;
}
.pk-home-join h2 { margin: 5px 0; font-size: clamp(26px, 3vw, 38px); }
.pk-home-join p { margin: 0; color: #c0b7b5; }
.pk-home-join-actions { display: flex; gap: 10px; }
.pk-foot { border-top: 1px solid #292929; }

@media (max-width: 1280px) {
  .pk-home-recent { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1040px) {
  .pk-home-layout { grid-template-columns: 1fr; }
  .pk-home-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pk-home-side-card:last-child { grid-column: 1 / -1; }
}
@media (max-width: 759px) {
  .pk-top { gap: 8px; padding: 10px 12px; }
  .pk-top .pk-search { order: 4; flex-basis: 100%; max-width: none; margin: 0; }
  .pk-top-login { margin-left: auto; }
  .pk-top-join { min-width: 0; }
  .pk-frame { display: block; }
  .pk-home-layout { padding: 18px 12px 64px; }
  .pk-home-recent, .pk-home-cards, .pk-home-side { grid-template-columns: 1fr; }
  .pk-home-prompt-grid { grid-template-columns: 1fr; }
  .pk-home-side-card:last-child { grid-column: auto; }
  .pk-home-section-head { align-items: start; }
  .pk-home-section-head > a { margin-top: 6px; }
  .pk-home-stream-head { align-items: flex-start; flex-direction: column; }
  .pk-home-join { display: block; padding: 25px 16px 74px; }
  .pk-home-join-actions { margin-top: 18px; flex-wrap: wrap; }
}
/* Creator-run servers */
.pk-reply-box{border:1px solid #3e2e29;background:#17110f;border-radius:12px;padding:24px;margin:24px 0;display:grid;gap:12px}.pk-reply-box h2,.pk-reply-box p{margin:0}.pk-reply-box p{color:#c6bbb6}.pk-reply-box .fs-button{justify-self:start}.pk-reply-box form{display:grid;gap:12px}.pk-reply-box textarea{min-height:130px}.pk-reply-box label{font-weight:650}.pk-reply-box #reply-status{min-height:1.3em;color:#ff9777}
.pk-thread-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0}.pk-thread-actions .fs-button[aria-pressed="true"]{border-color:#f15a36;color:#ff9a7e}.pk-thread-actions [role="status"]{flex-basis:100%;min-height:1.2em;color:#ff9777;margin:0}
.pk-home-side-card > a{display:block;margin-top:12px}
.pk-servers > p a,.pk-servers .pk-home-intro a{color:#ff815e}.pk-server-card a,.pk-server-channels a{color:#f4f2f0}
.pk-servers{max-width:1180px;margin:0 auto;padding:26px}.pk-server-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;padding:0}.pk-server-card,.pk-server-create,.pk-server-channels,.pk-server-conversation{border:1px solid #2d2d2d;background:#111;border-radius:12px;padding:22px}.pk-server-card h2{margin:0 0 10px}.pk-server-card p{color:#aaa;min-height:3em}.pk-server-card a,.pk-server-channels a{color:#f5f5f5}.pk-server-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px}.pk-server-channels{align-self:start}.pk-server-channels a{display:block;padding:9px 10px;border-radius:8px;text-decoration:none}.pk-server-channels a[aria-current]{background:#28201e;color:#ff6a43}.pk-servers form{display:grid;gap:12px;margin-top:20px}.pk-servers label{display:grid;gap:6px}.pk-servers input,.pk-servers textarea{width:100%;box-sizing:border-box;background:#080808;border:1px solid #444;color:white;border-radius:7px;padding:10px}.pk-servers textarea{min-height:110px}.pk-servers [role=status]{color:#ff997f}.pk-server-create{max-width:700px;margin-top:24px}@media(max-width:760px){.pk-server-layout{grid-template-columns:1fr}.pk-servers{padding:18px}}
.pk-legal-page { max-width: 940px; margin: 0 auto; }
.pk-legal-document { padding: clamp(24px, 4vw, 56px); line-height: 1.7; }
.pk-legal-document h1 { font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.08; margin: .3em 0 .8em; }
.pk-legal-document h2 { font-size: 1.3rem; line-height: 1.3; margin: 2em 0 .5em; }
.pk-legal-document p { max-width: 74ch; }
.pk-legal-document a { color: #ff704d; text-underline-offset: .2em; }
.pk-legal-links { display: flex; flex-wrap: wrap; gap: 12px 24px; border-top: 1px solid #343434; margin-top: 3rem; padding-top: 1.5rem; }
.pk-home-suggestions { list-style: none; margin: 8px 0 12px; padding: 0; }
.pk-home-suggestions li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 0; border-bottom: 1px solid #303030; }
.pk-home-suggestions li > a { display: flex; align-items: center; gap: 8px; min-width: 0; text-decoration: none; color: #eee; }
.pk-home-suggestions img { width: 34px; height: 34px; object-fit: cover; border-radius: 7px; }
.pk-home-suggestions strong,.pk-home-suggestions small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-home-suggestions small { color: #aaa; }
.pk-home-suggestions button { font-size: 12px; padding: 6px 8px; }
.pk-home-suggestions [role="status"] { font-size: 11px; max-width: 90px; margin: 2px 0 0; }
