
/* v57 immersive thread reader */
.thread-reader-shell{
  display:grid;
  gap:18px;
  width:100%;
}
.thread-reader-hero{
  position:relative;
  border:1px solid rgba(184,154,88,.36);
  background:
    radial-gradient(circle at 82% 0%, rgba(218,197,141,.07), transparent 32%),
    radial-gradient(circle at 14% 18%, rgba(61,111,122,.08), transparent 42%),
    linear-gradient(180deg,rgba(7,14,15,.94),rgba(3,7,8,.98));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 22px 70px rgba(0,0,0,.30);
  padding:28px 30px;
  overflow:visible;
}
.thread-reader-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(218,197,141,.055),transparent 18%,transparent 82%,rgba(218,197,141,.04)),
    repeating-linear-gradient(90deg,rgba(218,197,141,.022) 0 1px,transparent 1px 122px);
  opacity:.5;
}
.thread-reader-hero > *{position:relative;z-index:1}
.thread-reader-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin:0 0 18px;
  color:rgba(218,197,141,.68);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.thread-reader-breadcrumb span:last-child{
  color:var(--text);
  text-transform:none;
  letter-spacing:.04em;
}
.thread-reader-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.thread-reader-title{
  margin:0;
  font-family:Cinzel,serif;
  color:var(--gold2);
  letter-spacing:.08em;
  text-transform:none;
  font-size:clamp(32px,4vw,52px);
  line-height:1.02;
}
.thread-reader-meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:14px;
  color:var(--muted);
  font-size:13px;
}
.thread-reader-meta b{color:var(--gold)}
.thread-reader-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.thread-reader-actions{
  flex:0 0 auto;
  position:relative;
}
.thread-reader-actions details summary{list-style:none}
.thread-reader-actions details summary::-webkit-details-marker{display:none}
.thread-action-button{
  min-height:40px;
  border:1px solid rgba(218,197,141,.58);
  background:rgba(4,10,12,.76);
  color:var(--gold2);
  padding:0 16px;
  display:grid;
  place-items:center;
  cursor:pointer;
  text-transform:uppercase;
  letter-spacing:.16em;
  font:800 11px/1 Inter,system-ui,sans-serif;
}
.thread-action-menu{
  position:absolute;
  right:0;
  top:48px;
  z-index:40;
  min-width:240px;
  border:1px solid rgba(184,154,88,.36);
  background:linear-gradient(180deg,rgba(12,16,16,.98),rgba(3,6,7,.98));
  box-shadow:0 18px 48px rgba(0,0,0,.62);
  padding:8px;
}
.thread-action-menu form{margin:0}
.thread-action-menu button,
.thread-action-menu a{
  width:100%;
  min-height:36px;
  border:0;
  background:transparent;
  color:var(--text);
  display:flex;
  align-items:center;
  gap:10px;
  text-align:left;
  padding:8px 10px;
  text-decoration:none;
  cursor:pointer;
  font-size:13px;
}
.thread-action-menu button:hover,
.thread-action-menu a:hover{
  background:rgba(218,197,141,.09);
  color:var(--gold2);
}
.thread-action-menu hr{
  border:0;
  border-top:1px solid rgba(184,154,88,.18);
  margin:8px 0;
}
.thread-reader-feedback{
  border:1px solid rgba(218,197,141,.30);
  background:rgba(218,197,141,.08);
  color:var(--gold2);
  padding:12px 14px;
}
.transmission-list{
  display:grid;
  gap:12px;
}
.transmission-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  border:1px solid rgba(184,154,88,.30);
  background:
    radial-gradient(circle at 92% 0%,rgba(218,197,141,.045),transparent 28%),
    linear-gradient(180deg,rgba(7,13,14,.90),rgba(2,6,7,.96));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 16px 46px rgba(0,0,0,.22);
  overflow:hidden;
}
.transmission-card.primary{
  border-color:rgba(218,197,141,.48);
  box-shadow:inset 0 0 0 1px rgba(218,197,141,.04),0 20px 58px rgba(0,0,0,.28);
}
.transmission-author{
  border-right:1px solid rgba(184,154,88,.22);
  padding:20px 16px;
  text-align:center;
  background:linear-gradient(180deg,rgba(218,197,141,.035),rgba(0,0,0,.06));
}
.transmission-avatar .tm-avatar-img,
.transmission-avatar .tm-avatar-fallback,
.transmission-avatar-img,
.transmission-avatar-fallback{
  width:98px;
  height:98px;
  border-radius:50%;
  margin:0 auto 14px;
  display:grid;
  place-items:center;
  border:1px solid rgba(218,197,141,.78);
  background:radial-gradient(circle,rgba(218,197,141,.12),rgba(4,10,12,.96));
  object-fit:cover;
  color:var(--gold2);
  font:700 42px/1 Georgia,serif;
  text-transform:uppercase;
}
.transmission-author-name{
  display:block;
  color:var(--gold);
  font-weight:800;
  font-size:17px;
  margin-bottom:4px;
}
.transmission-author-role{
  display:block;
  color:var(--text);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.transmission-author-glyph{
  margin:14px auto 0;
  width:28px;
  height:28px;
  border:1px solid rgba(218,197,141,.46);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:rgba(218,197,141,.75);
  font-size:12px;
}
.transmission-content{
  padding:20px 20px 18px;
  min-width:0;
}
.transmission-post-meta{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  margin-bottom:18px;
  color:var(--muted);
  font-size:13px;
}
.transmission-time::before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:9px;
  border-radius:50%;
  background:var(--gold);
  box-shadow:0 0 12px rgba(218,197,141,.48);
}
.transmission-number{
  color:#fff4c8;
  font-weight:800;
}
.transmission-body{
  color:var(--text);
  font-size:16px;
  line-height:1.78;
  min-height:72px;
  overflow-wrap:anywhere;
}
.transmission-body blockquote,
.transmission-body .preview-quote{
  border-left:3px solid var(--gold);
  background:rgba(218,197,141,.08);
  margin:12px 0;
  padding:12px 14px;
  color:#e7ddbd;
}
.transmission-body a{color:#c9a93d}
.transmission-likebar{
  border:1px solid rgba(184,154,88,.18);
  background:rgba(218,197,141,.045);
  color:var(--muted);
  padding:8px 10px;
  margin-top:14px;
  font-size:12px;
}
.transmission-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.transmission-actions{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
  margin-top:18px;
  border-top:1px solid rgba(184,154,88,.14);
  padding-top:14px;
}
.transmission-actions button,
.transmission-actions a,
.transmission-actions summary{
  border:0;
  background:transparent;
  color:var(--gold2);
  cursor:pointer;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.12em;
  font:700 11px/1 Inter,system-ui,sans-serif;
}
.transmission-actions button:hover,
.transmission-actions a:hover,
.transmission-actions summary:hover{
  color:#fff3c8;
}
.thread-divider-sigil{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:rgba(218,197,141,.58);
  margin:8px 0 0;
  letter-spacing:.24em;
}
.thread-divider-sigil::before,
.thread-divider-sigil::after{
  content:"";
  height:1px;
  flex:1;
  background:linear-gradient(90deg,transparent,rgba(184,154,88,.24),transparent);
}
.thread-reader-shell .composer-panel{
  margin-top:0!important;
}
@media(max-width:900px){
  .thread-reader-head{flex-direction:column}
  .thread-reader-actions{width:100%}
  .thread-action-button{width:100%}
  .thread-action-menu{left:0;right:auto;width:100%}
  .transmission-card{grid-template-columns:1fr}
  .transmission-author{
    border-right:0;
    border-bottom:1px solid rgba(184,154,88,.20);
  }
}


/* v59 moderator tools selector; only one selected tool displays */
.thread-mod-tools{
  border:1px solid rgba(184,154,88,.28);
  background:
    radial-gradient(circle at 18% 0%, rgba(218,197,141,.055), transparent 32%),
    linear-gradient(180deg,rgba(7,14,15,.92),rgba(3,7,8,.98));
  padding:18px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018);
}
.thread-mod-tools-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,360px);
  gap:16px;
  align-items:end;
}
.thread-mod-tools h2{
  margin:0;
  font-family:Cinzel,serif;
  color:var(--gold2);
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:22px;
}
.thread-mod-tool-select{
  min-height:42px;
  width:100%;
  border:1px solid rgba(184,154,88,.38);
  background:rgba(1,5,6,.84);
  color:var(--text);
  padding:0 12px;
}
.thread-mod-panel{
  margin-top:14px;
}
.thread-mod-panel[hidden]{
  display:none!important;
}
@media(max-width:900px){
  .thread-mod-tools-head{
    grid-template-columns:1fr;
  }
}


/* v60 BBCode image embeds */
.tm-image-embed{
  margin:16px 0;
  padding:10px;
  border:1px solid rgba(184,154,88,.26);
  background:
    radial-gradient(circle at 50% 0%, rgba(218,197,141,.055), transparent 38%),
    rgba(1,5,6,.58);
  max-width:100%;
}
.tm-image-embed a{
  display:block;
  color:var(--gold2);
}
.tm-image-embed img{
  display:block;
  width:auto;
  max-width:100%;
  max-height:640px;
  height:auto;
  margin:0 auto;
  border:1px solid rgba(218,197,141,.18);
  object-fit:contain;
  box-shadow:0 18px 50px rgba(0,0,0,.32);
}
.tm-image-embed figcaption{
  margin-top:8px;
  text-align:center;
  color:rgba(218,197,141,.66);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.tm-invalid-embed{
  display:inline-block;
  border:1px solid rgba(184,154,88,.26);
  background:rgba(218,197,141,.06);
  color:var(--gold2);
  padding:2px 8px;
  font-size:.9em;
}
@media(max-width:700px){
  .tm-image-embed{
    padding:7px;
  }
  .tm-image-embed img{
    max-height:420px;
  }
}


/* v61 BBCode image container-fit correction */
.transmission-body .tm-image-embed,
.composer-preview .tm-image-embed{
  box-sizing:border-box;
  display:block;
  width:min(100%, 720px);
  max-width:100%;
  margin:18px auto;
  padding:10px;
  overflow:hidden;
  border:1px solid rgba(184,154,88,.32);
  background:
    linear-gradient(180deg, rgba(218,197,141,.045), rgba(0,0,0,.18)),
    rgba(1,5,6,.72);
}
.transmission-body .tm-image-embed-frame,
.composer-preview .tm-image-embed-frame{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:100%;
  min-height:120px;
  overflow:hidden;
  border:1px solid rgba(218,197,141,.16);
  background:
    radial-gradient(circle at 50% 50%, rgba(218,197,141,.06), transparent 58%),
    rgba(0,0,0,.26);
}
.transmission-body .tm-image-embed-link,
.composer-preview .tm-image-embed-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:100%;
  overflow:hidden;
}
.transmission-body .tm-image-embed img,
.composer-preview .tm-image-embed img{
  box-sizing:border-box;
  display:block;
  width:auto!important;
  max-width:100%!important;
  max-height:360px!important;
  height:auto!important;
  margin:0 auto;
  object-fit:contain;
  object-position:center center;
  border:0;
  box-shadow:none;
}
.transmission-body .tm-image-embed figcaption,
.composer-preview .tm-image-embed figcaption{
  display:block;
  margin:9px 0 0;
  text-align:center;
  line-height:1.2;
}
.transmission-body .tm-image-embed figcaption a,
.composer-preview .tm-image-embed figcaption a{
  display:inline-block;
  width:auto;
  color:rgba(218,197,141,.76);
  text-decoration:none;
}
.transmission-body .tm-image-embed figcaption a:hover,
.composer-preview .tm-image-embed figcaption a:hover{
  color:#fff3c8;
}
@media(max-width:700px){
  .transmission-body .tm-image-embed,
  .composer-preview .tm-image-embed{
    width:100%;
    padding:7px;
    margin:14px 0;
  }
  .transmission-body .tm-image-embed-frame,
  .composer-preview .tm-image-embed-frame{
    min-height:90px;
  }
  .transmission-body .tm-image-embed img,
  .composer-preview .tm-image-embed img{
    max-height:280px!important;
  }
}

