/* Forum F2A: öffentliche Forumprojektion mit begrenztem Gästebuch-Schreibpfad. */

/* Forum-UI-System: klarer Schreibfluss, ruhige Owner-Aktionen und lesbare Zustände. */
.forum-btn {
  --forum-btn-surface: rgba(31, 52, 88, 0.78);
  --forum-btn-surface-hover: rgba(42, 70, 116, 0.9);
  --forum-btn-border: rgba(139, 181, 246, 0.5);
  --forum-btn-border-hover: rgba(179, 210, 255, 0.78);
  --forum-btn-focus: rgba(143, 190, 255, 0.48);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid var(--forum-btn-border);
  border-radius: 11px;
  background: linear-gradient(180deg, rgba(235, 246, 255, 0.12), rgba(255, 255, 255, 0) 45%), var(--forum-btn-surface);
  box-shadow: inset 0 1px 0 rgba(238, 247, 255, 0.12), 0 5px 12px rgba(2, 8, 22, 0.2);
  color: #f4f8ff;
  cursor: pointer;
  font: inherit;
  font-size: 0.94rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 120ms ease;
}

.forum-btn:hover {
  border-color: var(--forum-btn-border-hover);
  background: linear-gradient(180deg, rgba(241, 248, 255, 0.16), rgba(255, 255, 255, 0) 48%), var(--forum-btn-surface-hover);
  box-shadow: inset 0 1px 0 rgba(246, 251, 255, 0.18), 0 7px 15px rgba(2, 8, 22, 0.28);
  color: #ffffff;
  text-decoration: none;
}

.forum-btn:active {
  transform: translateY(1px);
}

.forum-btn:focus-visible {
  outline: 3px solid var(--forum-btn-focus);
  outline-offset: 3px;
}

.forum-btn--primary {
  --forum-btn-surface: rgba(35, 84, 159, 0.92);
  --forum-btn-surface-hover: rgba(48, 105, 190, 0.98);
  --forum-btn-border: rgba(155, 203, 255, 0.72);
  --forum-btn-border-hover: rgba(202, 229, 255, 0.92);
  --forum-btn-focus: rgba(124, 186, 255, 0.56);
}

.forum-btn--secondary {
  --forum-btn-surface: rgba(45, 57, 81, 0.78);
  --forum-btn-surface-hover: rgba(59, 74, 102, 0.9);
  --forum-btn-border: rgba(164, 183, 219, 0.42);
  --forum-btn-border-hover: rgba(192, 211, 244, 0.7);
  --forum-btn-focus: rgba(175, 199, 243, 0.46);
}

.forum-btn--ghost {
  --forum-btn-surface: transparent;
  --forum-btn-surface-hover: rgba(104, 142, 201, 0.16);
  --forum-btn-border: rgba(149, 182, 232, 0.38);
  --forum-btn-border-hover: rgba(184, 212, 251, 0.7);
  box-shadow: none;
  color: #d7e7ff;
}

.forum-btn--danger {
  --forum-btn-surface: rgba(104, 42, 52, 0.8);
  --forum-btn-surface-hover: rgba(132, 54, 66, 0.92);
  --forum-btn-border: rgba(255, 170, 178, 0.48);
  --forum-btn-border-hover: rgba(255, 197, 203, 0.78);
  --forum-btn-focus: rgba(255, 155, 167, 0.46);
  color: #fff5f6;
}

.forum-btn--link {
  min-height: auto;
  padding: 2px 0;
  border-color: transparent;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #c9e0ff;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(190, 219, 255, 0.62);
  text-underline-offset: 0.18em;
}

.forum-btn--link:hover {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  color: #f0f7ff;
}

.forum-btn:disabled,
.forum-btn[aria-disabled="true"] {
  border-color: rgba(148, 161, 186, 0.22);
  background: rgba(47, 53, 65, 0.66);
  box-shadow: none;
  color: rgba(212, 220, 236, 0.5);
  cursor: not-allowed;
  transform: none;
}

.forum-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
}

.forum-action-row > [role="status"],
.forum-action-row > .forum-composer__status,
.forum-action-row > .forum-post__action-status,
.forum-action-row > .forum-thread-actions__status {
  flex: 1 1 240px;
}

.forum-composer {
  border-color: rgba(117, 167, 239, 0.56);
  background: linear-gradient(145deg, rgba(29, 60, 108, 0.54), rgba(11, 27, 50, 0.78) 58%);
  box-shadow: inset 0 1px 0 rgba(218, 235, 255, 0.12), 0 12px 26px rgba(2, 10, 25, 0.18);
}

.forum-composer[aria-busy="true"],
.forum-post-editor[aria-busy="true"],
.forum-thread-editor[aria-busy="true"] {
  border-color: rgba(255, 216, 143, 0.72);
}

.forum-composer[aria-busy="true"] .forum-btn,
.forum-post-editor[aria-busy="true"] .forum-btn,
.forum-thread-editor[aria-busy="true"] .forum-btn {
  cursor: progress;
}

.forum-thread-card {
  border: 1px solid rgba(130, 157, 205, 0.28);
  border-radius: var(--radius-sm);
  background: linear-gradient(145deg, rgba(20, 43, 76, 0.44), rgba(10, 24, 46, 0.54));
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.forum-thread-card:hover {
  border-color: rgba(151, 190, 246, 0.5);
  background: linear-gradient(145deg, rgba(28, 58, 101, 0.54), rgba(12, 29, 55, 0.64));
  box-shadow: 0 8px 18px rgba(2, 10, 25, 0.16);
}

.forum-thread-states {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.forum-reply-card {
  border-left: 3px solid rgba(126, 172, 239, 0.68);
}

.forum-opening-card {
  border-left: 3px solid rgba(166, 204, 255, 0.84);
}

.forum-page .forum-page__layout > .hero {
  width: 100%;
  max-width: none;
  justify-self: stretch;
  margin-bottom: var(--space-4);
}

.forum-page__layout {
  display: grid;
  gap: var(--space-4);
}

.forum-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  align-items: start;
}

.forum-page__primary,
.forum-page__context {
  min-width: 0;
}

.forum-page__primary {
  display: grid;
  gap: var(--space-3);
}

.forum-page__context {
  display: grid;
  gap: var(--space-3);
}

.forum-category,
.forum-thread-header,
.forum-post,
.forum-context-card,
.forum-state {
  margin: 0;
}

.forum-category {
  display: grid;
  gap: var(--space-3);
  padding: clamp(16px, 2vw, 24px);
}

.forum-category__thread-creation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.forum-category__thread-creation p {
  margin: 0;
  color: rgba(214, 230, 252, 0.84);
}

.forum-category__header {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  align-items: start;
}

.forum-category h2,
.forum-thread-header h2,
.forum-post h3,
.forum-replies h3,
.forum-context-card h2,
.forum-state h2,
.forum-pilot-notice h2 {
  margin: 0;
  color: #f3f7ff;
}

.forum-category__header p,
.forum-context-card p,
.forum-state p,
.forum-pilot-notice p {
  margin: 6px 0 0;
}

.forum-status-badge {
  flex: 0 0 auto;
  padding: 4px 8px;
  border: 1px solid rgba(130, 177, 244, 0.58);
  border-radius: 999px;
  background: rgba(38, 82, 145, 0.24);
  color: #dceaff;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.2;
}

.forum-thread-list {
  display: grid;
  gap: 10px;
}

.forum-thread-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.55fr);
  gap: var(--space-3);
  padding: 14px;
}

.forum-thread-row:last-child {
  padding-bottom: 14px;
}

.forum-thread-row__main {
  min-width: 0;
}

.forum-thread-row h3 {
  margin: 0;
  font-size: 1rem;
}

.forum-thread-row h3 a,
.forum-breadcrumb a {
  color: #e8f1ff;
  text-decoration-color: rgba(141, 183, 246, 0.66);
  text-underline-offset: 0.18em;
}

.forum-thread-row h3 a:hover,
.forum-thread-row h3 a:focus-visible,
.forum-breadcrumb a:hover,
.forum-breadcrumb a:focus-visible {
  color: #b9d7ff;
}

.forum-thread-row p {
  margin: 5px 0 0;
  color: rgba(218, 231, 252, 0.8);
  font-size: 0.92rem;
  line-height: 1.45;
}

.forum-thread-meta {
  display: grid;
  grid-template-columns: minmax(72px, auto) minmax(0, 1fr);
  align-content: start;
  gap: 4px 10px;
  margin: 0;
  color: rgba(220, 232, 253, 0.86);
  font-size: 0.82rem;
  font-variant-numeric: tabular-nums;
}

.forum-thread-meta dt {
  color: rgba(173, 198, 234, 0.72);
}

.forum-thread-meta dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
}

.forum-category__empty {
  margin: 0;
  padding: 4px 0 0;
  color: rgba(218, 231, 252, 0.78);
}

.forum-context-card {
  display: grid;
  gap: 4px;
  padding: 14px;
}

.forum-context-card h2 {
  font-size: 0.96rem;
}

.forum-context-card p {
  color: rgba(220, 232, 253, 0.84);
  font-size: 0.9rem;
  line-height: 1.45;
}

.forum-context-details {
  display: block;
  padding: 0;
}

.forum-context-details__summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 14px;
  color: #f3f7ff;
  cursor: pointer;
  list-style: none;
  transition: background-color 160ms ease, box-shadow 160ms ease;
}

.forum-context-details__summary::-webkit-details-marker {
  display: none;
}

.forum-context-details__summary::marker {
  content: '';
}

.forum-context-details__summary:hover {
  background: rgba(92, 135, 201, 0.12);
}

.forum-context-details__summary:focus-visible {
  outline: 3px solid rgba(143, 190, 255, 0.64);
  outline-offset: -3px;
}

.forum-context-details__summary-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.forum-context-details__summary-copy strong {
  font-size: 0.96rem;
}

.forum-context-details__subtitle {
  color: rgba(220, 232, 253, 0.84);
  font-size: 0.86rem;
  line-height: 1.4;
}

.forum-context-details__chevron {
  flex: 0 0 auto;
  color: #c9e0ff;
  font-size: 1.35rem;
  line-height: 1;
  transform: translateY(2px);
  transition: transform 160ms ease;
}

.forum-context-details[open] .forum-context-details__summary {
  border-bottom: 1px solid rgba(130, 157, 205, 0.25);
}

.forum-context-details[open] .forum-context-details__chevron {
  transform: translateY(2px) rotate(90deg);
}

.forum-context-details__body {
  display: grid;
  gap: 14px;
  padding: 14px;
}

.forum-context-details__body > h2 {
  font-size: 0.96rem;
  line-height: 1.35;
}

.forum-context-details__body > p,
.forum-rules__item p {
  margin: 0;
}

.forum-rules {
  display: grid;
  gap: 12px;
}

.forum-rules__item {
  display: grid;
  gap: 3px;
}

.forum-rules__item h3 {
  margin: 0;
  color: #e8f1ff;
  font-size: 0.9rem;
  line-height: 1.35;
}

.forum-rules__moderation-hint {
  margin: 0;
  padding-left: 10px;
  border-left: 2px solid rgba(139, 180, 239, 0.72);
  color: rgba(208, 225, 250, 0.8);
  font-size: 0.86rem;
}

.forum-rules__link {
  color: #c9e0ff;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.4;
  text-underline-offset: 0.18em;
}

.forum-rules__link:hover,
.forum-rules__link:focus-visible {
  color: #f0f7ff;
}

.forum-pilot-notice {
  padding: 14px 16px;
  border: 1px solid rgba(131, 164, 218, 0.42);
  border-left: 4px solid #6f9be1;
  border-radius: var(--radius-sm);
  background: rgba(16, 32, 59, 0.62);
}

.forum-pilot-notice h2 {
  font-size: 1rem;
}

.forum-pilot-notice p {
  color: rgba(225, 235, 252, 0.9);
}

.forum-state {
  display: grid;
  gap: var(--space-2);
  padding: clamp(18px, 2vw, 28px);
  border-left: 4px solid rgba(138, 174, 230, 0.7);
}

.forum-state--setup {
  border-color: rgba(128, 163, 221, 0.62);
}

.forum-state--error {
  border-color: rgba(235, 127, 135, 0.68);
  border-left-color: #e8848e;
  background: rgba(97, 33, 42, 0.42);
}

.forum-state--success {
  border-color: rgba(132, 225, 166, 0.68);
  border-left-color: #8ce4ad;
  background: rgba(27, 83, 54, 0.38);
}

.forum-state--empty,
.forum-state--loading {
  border-color: rgba(132, 163, 214, 0.46);
}

.forum-state--loading {
  border-left-color: #9cc7ff;
  background: rgba(25, 56, 102, 0.42);
}

.forum-state--locked {
  border-color: rgba(255, 210, 129, 0.62);
  border-left-color: #ffd281;
  background: rgba(105, 69, 24, 0.34);
}

.forum-state--action {
  border-color: rgba(137, 182, 248, 0.64);
  border-left-color: #91c0ff;
  background: rgba(22, 56, 103, 0.4);
}

.forum-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  color: rgba(205, 222, 248, 0.8);
  font-size: 0.9rem;
}

.forum-thread-header {
  display: grid;
  gap: 10px;
  padding: clamp(16px, 2vw, 24px);
}

.forum-section__eyebrow {
  margin: 0;
  color: #a9c9ff;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.forum-post {
  display: grid;
  gap: var(--space-3);
  padding: clamp(16px, 2vw, 24px);
}

.forum-post > header {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  align-items: start;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(130, 157, 205, 0.25);
}

.forum-post__meta {
  margin: 2px 0 0;
  color: rgba(197, 216, 246, 0.78);
  font-size: 0.86rem;
  text-align: right;
}

.forum-post__body {
  display: grid;
  gap: var(--space-2);
  color: #e7effd;
  line-height: 1.62;
  overflow-wrap: anywhere;
}

.forum-post__body p {
  margin: 0;
  white-space: pre-wrap;
}

.forum-post__actions,
.forum-post-editor__actions,
.forum-thread-actions,
.forum-thread-editor__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
}

.forum-post__action-status {
  flex: 1 1 220px;
  margin: 0;
  color: rgba(197, 216, 246, 0.88);
}

.forum-post__action-status[data-variant="error"] {
  color: #ffb6b6;
}

.forum-post__action-status[data-variant="success"] {
  color: #b9f2ce;
}

.forum-thread-actions__status {
  flex: 1 1 220px;
  margin: 0;
  color: rgba(197, 216, 246, 0.88);
}

.forum-thread-actions__status[data-variant="error"] {
  color: #ffb6b6;
}

.forum-thread-actions__status[data-variant="success"] {
  color: #b9f2ce;
}

.forum-post-editor,
.forum-thread-editor {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-3);
  border: 1px solid rgba(143, 187, 244, 0.48);
  border-radius: var(--radius-md);
  background: rgba(10, 27, 50, 0.44);
}

.forum-post-editor textarea {
  width: 100%;
  min-height: 10rem;
  resize: vertical;
}

.forum-thread-editor input[type="text"] {
  width: 100%;
  box-sizing: border-box;
  margin-top: 7px;
  border: 1px solid rgba(137, 177, 239, 0.62);
  border-radius: var(--radius-sm);
  background: rgba(8, 21, 42, 0.82);
  color: #f0f6ff;
  font: inherit;
  line-height: 1.5;
  padding: 10px 12px;
}

.forum-composer {
  display: grid;
  gap: var(--space-3);
  padding: clamp(16px, 2vw, 24px);
}

.forum-composer > h3 {
  margin: 0;
  color: #f3f7ff;
}

.forum-composer > h2 {
  margin: 0;
  color: #f3f7ff;
}

.forum-composer > p {
  margin: -6px 0 0;
  color: rgba(220, 232, 253, 0.9);
}

.forum-composer label,
.forum-composer legend,
.forum-moderation-card > label,
.forum-moderation-filters label {
  color: #e7effd;
  font-weight: 700;
}

.forum-composer textarea,
.forum-composer input[type="text"],
.forum-moderation-card textarea,
.forum-moderation-filters input,
.forum-moderation-filters select {
  width: 100%;
  box-sizing: border-box;
  margin-top: 7px;
  border: 1px solid rgba(137, 177, 239, 0.62);
  border-radius: var(--radius-sm);
  background: rgba(8, 21, 42, 0.82);
  color: #f0f6ff;
  font: inherit;
  line-height: 1.5;
  padding: 10px 12px;
}

.forum-composer textarea:focus-visible,
.forum-composer input[type="text"]:focus-visible,
.forum-post-editor textarea:focus-visible,
.forum-moderation-card textarea:focus-visible,
.forum-moderation-filters input:focus-visible,
.forum-moderation-filters select:focus-visible,
.forum-thread-editor input[type="text"]:focus-visible,
.forum-composer input[type="radio"]:focus-visible,
.forum-composer input[type="checkbox"]:focus-visible,
.forum-moderation-card button:focus-visible,
.forum-moderation-tabs button:focus-visible,
.forum-moderation-pagination button:focus-visible,
.forum-thread-pagination button:focus-visible,
.forum-moderation-filters button:focus-visible {
  outline: 3px solid #a9c9ff;
  outline-offset: 3px;
}

.forum-composer__author-mode {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(130, 157, 205, 0.35);
  border-radius: var(--radius-sm);
}

.forum-composer__author-mode legend {
  padding: 0 5px;
}

.forum-composer__mode-choice,
.forum-composer__acknowledgement {
  display: flex;
  align-items: start;
  gap: 7px;
  font-weight: 400;
}

.forum-composer__mode-choice input,
.forum-composer__acknowledgement input {
  flex: 0 0 auto;
  margin-top: 0.25em;
}

.forum-composer__author-status,
.forum-composer__hint,
.forum-composer__count,
.forum-composer__status {
  margin: 0;
  color: rgba(214, 230, 252, 0.88);
  font-size: 0.9rem;
  line-height: 1.45;
}

.forum-composer__count {
  margin-top: -8px;
  color: rgba(180, 207, 247, 0.86);
  font-variant-numeric: tabular-nums;
}

.forum-composer__guest-alias {
  display: grid;
}

.forum-composer__guest-alias[hidden] {
  display: none;
}

.forum-composer__actions,
.forum-moderation-card__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
}

.forum-composer__actions .forum-composer__status,
.forum-moderation-card__actions .forum-composer__status {
  flex: 1 1 220px;
}

.forum-composer__status[data-variant="error"] {
  color: #ffb8bf;
}

.forum-composer__status[data-variant="success"] {
  color: #bcecc9;
}

.forum-composer__status[data-variant="pending"] {
  color: #ffd88f;
}

.forum-composer__status[data-variant],
.forum-post__action-status[data-variant],
.forum-thread-actions__status[data-variant] {
  padding: 8px 10px;
  border: 1px solid rgba(155, 183, 226, 0.32);
  border-radius: 9px;
  background: rgba(8, 21, 42, 0.4);
}

.forum-composer__status[data-variant="success"],
.forum-post__action-status[data-variant="success"],
.forum-thread-actions__status[data-variant="success"] {
  border-color: rgba(132, 225, 166, 0.48);
  background: rgba(35, 105, 65, 0.22);
}

.forum-composer__status[data-variant="error"],
.forum-post__action-status[data-variant="error"],
.forum-thread-actions__status[data-variant="error"] {
  border-color: rgba(246, 152, 162, 0.5);
  background: rgba(112, 37, 50, 0.25);
}

.forum-composer__status[data-variant="pending"],
.forum-composer__status[data-variant="loading"] {
  border-color: rgba(255, 216, 143, 0.52);
  background: rgba(118, 81, 18, 0.24);
}

.forum-composer__honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.forum-moderation-card > label {
  display: grid;
}

.forum-moderation-tabs,
.forum-moderation-pagination,
.forum-moderation-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 14px;
}

.forum-moderation-tabs button[aria-pressed="true"] {
  border-color: rgba(154, 201, 255, 0.9);
  background: rgba(45, 98, 172, 0.42);
  color: #f2f7ff;
}

.forum-moderation-filters {
  display: grid;
  gap: var(--space-3);
}

.forum-moderation-filters h3 {
  margin: 0;
  color: #f3f7ff;
}

.forum-moderation-filters__fields {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.forum-moderation-filters label,
.forum-moderation-card__reason {
  display: grid;
  gap: 7px;
}

.forum-moderation-filters__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.forum-moderation-pagination {
  justify-content: center;
}

.forum-thread-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 14px;
  padding: 14px;
}

.forum-thread-pagination p {
  margin: 0;
  color: rgba(220, 232, 253, 0.9);
  font-variant-numeric: tabular-nums;
}

.forum-moderation-pagination p {
  margin: 0;
  color: rgba(220, 232, 253, 0.9);
  font-variant-numeric: tabular-nums;
}

.forum-moderation-card > header > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.forum-status-badge--pending {
  border-color: rgba(255, 216, 143, 0.78);
  background: rgba(123, 85, 20, 0.28);
  color: #ffe7ad;
}

.forum-status-badge--published {
  border-color: rgba(132, 225, 166, 0.74);
  background: rgba(36, 111, 66, 0.28);
  color: #ceffdb;
}

.forum-status-badge--hidden,
.forum-status-badge--rejected {
  border-color: rgba(255, 174, 125, 0.78);
  background: rgba(120, 62, 25, 0.28);
  color: #ffdfc3;
}

.forum-status-badge--deleted {
  border-color: rgba(225, 140, 151, 0.76);
  background: rgba(121, 44, 54, 0.3);
  color: #ffd5db;
}

.forum-status-badge--pinned {
  border-color: rgba(164, 202, 255, 0.76);
  background: rgba(39, 84, 148, 0.34);
  color: #d8eaff;
}

.forum-status-badge--locked {
  border-color: rgba(255, 216, 143, 0.76);
  background: rgba(122, 83, 23, 0.32);
  color: #ffe8b5;
}

.forum-moderation-card__details {
  display: grid;
  grid-template-columns: minmax(110px, auto) minmax(0, 1fr);
  gap: 4px 12px;
  margin: 0;
  color: rgba(220, 232, 253, 0.88);
  font-size: 0.9rem;
}

.forum-moderation-card__details dt {
  color: rgba(173, 198, 234, 0.72);
}

.forum-moderation-card__details dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.forum-moderation-card__thread-link,
.forum-moderation-card__last-action,
.forum-moderation-card__protection,
.forum-moderation-card__reason-hint {
  margin: 0;
  color: rgba(211, 228, 252, 0.86);
  font-size: 0.9rem;
  line-height: 1.45;
}

.forum-moderation-card__thread-link {
  color: #c9e0ff;
  text-underline-offset: 0.18em;
}

.forum-moderation-card__protection {
  padding: 10px 12px;
  border-left: 3px solid #8bb4ef;
  background: rgba(22, 52, 94, 0.35);
}

.forum-moderation-history {
  display: grid;
  gap: var(--space-3);
}

.forum-moderation-history__item {
  display: grid;
  gap: 7px;
  padding: 14px;
}

.forum-moderation-history__item h3,
.forum-moderation-history__item p {
  margin: 0;
}

.forum-moderation-history__item h3 {
  color: #f3f7ff;
}

.forum-moderation-history__item > p,
.forum-moderation-history__reason {
  color: rgba(214, 230, 252, 0.88);
}

.forum-context-card a {
  color: #c9e0ff;
  text-underline-offset: 0.18em;
}

.forum-replies {
  display: grid;
  gap: var(--space-3);
}

.forum-replies > h3 {
  font-size: 1.05rem;
}

@media (min-width: 1181px) {
  :root[data-layout-mode="extended"] #app-content[data-page-type="forum"][data-supports-wide-view="true"] {
    --shell-inline-padding: var(--dbook-extended-shell-gutter);
  }

  :root[data-layout-mode="extended"] #app-content[data-page-type="forum"][data-supports-wide-view="true"] > .page,
  :root[data-layout-mode="extended"] #app-content[data-page-type="forum"][data-supports-wide-view="true"] .forum-page__layout {
    width: 100%;
    max-width: none;
  }

  :root[data-layout-mode="extended"] #app-content[data-page-type="forum"][data-supports-wide-view="true"] .forum-workspace {
    grid-template-columns: minmax(0, 8.5fr) minmax(280px, 3.5fr);
    gap: clamp(20px, 2vw, 32px);
  }

  :root[data-layout-mode="extended"] body.forum-page .site-shell > footer {
    width: calc(100% - (2 * var(--dbook-extended-shell-gutter)));
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 760px) {
  .forum-category__header,
  .forum-post > header {
    flex-direction: column;
  }

  .forum-thread-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .forum-thread-meta {
    grid-template-columns: minmax(74px, auto) minmax(0, 1fr);
  }

  .forum-moderation-filters__fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .forum-moderation-card__details {
    grid-template-columns: minmax(92px, auto) minmax(0, 1fr);
  }

  .forum-post__meta {
    text-align: left;
  }

  .forum-action-row {
    align-items: stretch;
  }

  .forum-action-row .forum-btn {
    flex: 1 1 100%;
  }

  .forum-action-row > [role="status"],
  .forum-action-row > .forum-composer__status,
  .forum-action-row > .forum-post__action-status,
  .forum-action-row > .forum-thread-actions__status {
    flex-basis: 100%;
  }

  .forum-thread-states {
    margin-top: 6px;
  }
}
