.moderation-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 22px;
  border-bottom: 2px solid rgba(7, 19, 63, 0.1);
  padding: 0 4px 12px;
}

.moderation-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  border: 2px solid rgba(7, 19, 63, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  color: #405fa8;
  font-weight: 900;
  text-decoration: none;
  padding: 8px 16px;
}

.moderation-tab:hover,
.moderation-tab:focus-visible,
.moderation-tab.is-active {
  border-color: rgba(240, 92, 157, 0.5);
  background: #fff0f7;
  color: #9f1f4e;
}

.moderation-tab strong {
  display: grid;
  min-width: 21px;
  height: 21px;
  place-items: center;
  border-radius: 999px;
  background: #f05c9d;
  color: #fff;
  font-size: 0.72rem;
}

.moderation-app[hidden],
[data-moderation-rules][hidden],
.moderation-status[hidden] {
  display: none;
}

.moderation-tab-panel {
  display: grid;
  gap: 20px;
}

.moderation-warning-panel > summary {
  width: fit-content;
  cursor: pointer;
  border: 2px solid rgba(7, 19, 63, 0.18);
  border-radius: 10px;
  background: #fff0f7;
  color: #842348;
  padding: 12px 18px;
  font-weight: 800;
}

.moderation-warning-panel[open] > summary {
  margin-bottom: 12px;
}

.moderation-warning-panel > summary:focus-visible {
  outline: 3px solid #405fa8;
  outline-offset: 3px;
}

.moderation-section-head,
.moderation-report-copy,
.moderation-report-form,
.moderation-report-detail,
.moderation-user-reports,
.moderation-public-record,
.moderation-staff-list-panel,
.moderation-staff-detail-panel,
.moderation-empty-state {
  border: 2px solid rgba(7, 19, 63, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 24px rgba(7, 19, 63, 0.06);
  padding: clamp(18px, 2.4vw, 30px);
}

.moderation-section-head h2,
.moderation-report-copy h2,
.moderation-subhead h3,
.moderation-subhead h4,
.moderation-list-heading h3,
.moderation-report-detail-head h3 {
  margin: 0;
  color: #07133f;
}

.moderation-section-head p:last-child,
.moderation-report-copy > p:last-of-type {
  max-width: 760px;
  margin-bottom: 0;
  color: #405fa8;
  line-height: 1.6;
}

.moderation-report-layout {
  grid-template-columns: minmax(0, 0.75fr) minmax(420px, 1.25fr);
  align-items: start;
}

.moderation-report-copy ul {
  color: #405fa8;
  line-height: 1.6;
  padding-left: 22px;
}

.moderation-report-form {
  display: grid;
  gap: 15px;
}

.moderation-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.moderation-field {
  display: grid;
  gap: 7px;
}

.moderation-field > span,
.moderation-check > span {
  color: #07133f;
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.moderation-field input,
.moderation-field select,
.moderation-field textarea {
  width: 100%;
  border: 2px solid rgba(7, 19, 63, 0.14);
  border-radius: 9px;
  background: #fff;
  color: #07133f;
  font: inherit;
  line-height: 1.45;
  padding: 11px 12px;
}

.moderation-field textarea {
  resize: vertical;
}

.moderation-field input:focus,
.moderation-field select:focus,
.moderation-field textarea:focus {
  border-color: #63d9ca;
  outline: 3px solid rgba(99, 217, 202, 0.18);
}

.moderation-check {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  line-height: 1.5;
}

.moderation-check input {
  width: 19px;
  height: 19px;
  margin-top: 1px;
  accent-color: #f05c9d;
}

.moderation-primary-button,
.moderation-table-action {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #f05c9d, #d92f7c);
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-weight: 950;
  text-decoration: none;
  box-shadow: 0 4px 0 rgba(125, 19, 59, 0.22);
  padding: 10px 18px;
}

.moderation-primary-button:disabled {
  cursor: wait;
  opacity: 0.62;
}

.moderation-status {
  margin: 0 0 18px;
  border: 2px solid rgba(7, 19, 63, 0.12);
  border-radius: 10px;
  background: #fff;
  color: #405fa8;
  font-weight: 850;
  padding: 12px 15px;
}

.moderation-status.is-success {
  border-color: rgba(25, 163, 87, 0.34);
  background: #ecfff4;
  color: #126b3b;
}

.moderation-status.is-error {
  border-color: rgba(204, 42, 88, 0.34);
  background: #fff0f4;
  color: #9c164e;
}

.moderation-report-detail,
.moderation-user-reports,
.moderation-public-record {
  display: grid;
  gap: 17px;
}

.moderation-report-detail-head,
.moderation-subhead,
.moderation-list-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.moderation-report-status {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  background: #eaf0ff;
  color: #405fa8;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
  padding: 6px 10px;
}

.moderation-report-status.is-ban-issued,
.moderation-report-status.is-denied {
  background: #ffe7ee;
  color: #a51d4f;
}

.moderation-report-status.is-resolved,
.moderation-report-status.is-approved,
.moderation-report-status.is-no-action {
  background: #e9fff1;
  color: #147442;
}

.moderation-report-status.is-under-review,
.moderation-report-status.is-warning-issued {
  background: #fff6d8;
  color: #7a5b00;
}

.moderation-report-facts {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.moderation-report-facts div,
.moderation-report-outcome span {
  display: grid;
  gap: 3px;
  border-radius: 9px;
  background: rgba(233, 239, 255, 0.58);
  padding: 10px 12px;
}

.moderation-report-facts dt,
.moderation-report-outcome strong {
  color: #405fa8;
  font-size: 0.7rem;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.moderation-report-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
  color: #07133f;
  font-weight: 800;
}

.moderation-report-body {
  display: grid;
  gap: 12px;
}

.moderation-report-body section,
.moderation-report-note,
.moderation-appeal-review {
  border-left: 4px solid #63d9ca;
  border-radius: 4px 10px 10px 4px;
  background: rgba(240, 255, 252, 0.58);
  padding: 12px 15px;
}

.moderation-report-body h4,
.moderation-report-body p,
.moderation-report-note p {
  margin: 0;
}

.moderation-report-body p,
.moderation-report-note p {
  margin-top: 6px;
  color: #27447f;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.moderation-report-thread,
.moderation-report-note-list {
  display: grid;
  gap: 10px;
}

.moderation-report-note > div:first-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
}

.moderation-report-note small {
  color: #6175a8;
}

.moderation-appeal-decision {
  margin-top: 12px;
  border-top: 1px solid rgba(7, 19, 63, 0.1);
  padding-top: 10px;
}

.moderation-report-outcome {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.moderation-user-report-list {
  display: grid;
  gap: 9px;
}

.moderation-user-report-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 12px;
  border: 2px solid rgba(7, 19, 63, 0.1);
  border-radius: 10px;
  background: #fff;
  color: #07133f;
  text-decoration: none;
  padding: 12px 14px;
}

.moderation-user-report-card:hover,
.moderation-user-report-card.is-active {
  border-color: rgba(240, 92, 157, 0.5);
  background: #fff7fb;
}

.moderation-user-report-card span {
  display: grid;
}

.moderation-user-report-card small,
.moderation-user-report-card em {
  color: #6175a8;
  font-size: 0.82rem;
}

.moderation-user-report-card em {
  grid-column: 1 / -1;
  font-style: normal;
}

.moderation-public-table-wrap,
.moderation-staff-table-wrap {
  overflow-x: auto;
}

.moderation-public-table,
.moderation-staff-table {
  width: 100%;
  border-collapse: collapse;
  color: #07133f;
  font-size: 0.86rem;
}

.moderation-public-table th,
.moderation-public-table td,
.moderation-staff-table th,
.moderation-staff-table td {
  border-bottom: 1px solid rgba(7, 19, 63, 0.09);
  padding: 10px;
  text-align: left;
  vertical-align: top;
}

.moderation-public-table th,
.moderation-staff-table th {
  color: #405fa8;
  font-size: 0.72rem;
  text-transform: uppercase;
}

.moderation-public-table small,
.moderation-staff-table small {
  display: block;
  margin-top: 3px;
  color: #7182ac;
}

.moderation-staff-table tr.is-active,
.moderation-staff-table tbody tr:hover {
  background: #fff3f9;
}

.moderation-decision-status {
  color: #a51d4f;
  font-weight: 900;
}

.moderation-empty-state {
  margin: 0;
  color: #6175a8;
  font-weight: 750;
}

.moderation-staff-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.moderation-staff-stat {
  display: grid;
  justify-items: center;
  gap: 3px;
  border: 2px solid rgba(7, 19, 63, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.86);
  color: #405fa8;
  text-decoration: none;
  padding: 13px;
}

.moderation-staff-stat strong {
  color: #07133f;
  font-size: 1.45rem;
}

.moderation-staff-stat.is-active,
.moderation-staff-stat:hover {
  border-color: rgba(240, 92, 157, 0.5);
  background: #fff0f7;
  color: #9f1f4e;
}

.moderation-staff-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(400px, 0.9fr);
  gap: 16px;
  align-items: start;
}

.moderation-staff-list-panel,
.moderation-staff-detail-panel {
  min-width: 0;
}

.moderation-staff-detail-panel {
  display: grid;
  gap: 14px;
}

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

@media (max-width: 980px) {
  .moderation-report-layout,
  .moderation-staff-workspace {
    grid-template-columns: 1fr;
  }

  .moderation-report-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .moderation-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .moderation-tab {
    justify-content: center;
    text-align: center;
  }

  .moderation-staff-stats,
  .moderation-report-facts,
  .moderation-report-outcome,
  .moderation-form-grid {
    grid-template-columns: 1fr 1fr;
  }

  .moderation-section-head,
  .moderation-report-copy,
  .moderation-report-form,
  .moderation-report-detail,
  .moderation-user-reports,
  .moderation-public-record,
  .moderation-staff-list-panel,
  .moderation-staff-detail-panel {
    padding: 16px;
  }
}

@media (max-width: 430px) {
  .moderation-tabs,
  .moderation-staff-stats,
  .moderation-report-facts,
  .moderation-report-outcome,
  .moderation-form-grid {
    grid-template-columns: 1fr;
  }
}

/* Readable report cards and a spacious review pane. */
.moderation-staff-workspace { grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:22px; }
.moderation-staff-list-panel,.moderation-staff-detail-panel,.moderation-report-detail { border:1px solid #c4bdce; border-radius:6px; background:#fff; box-shadow:4px 4px 0 #d6d8e5; padding:20px; }
.moderation-staff-detail-panel > .moderation-report-detail { border:0; padding:0; box-shadow:none; }
.moderation-list-heading,.moderation-report-detail-head { padding:14px 16px; margin-bottom:16px; background:#fff0f7; border:1px solid #e8c8da; align-items:center; }
.moderation-report-detail-head { flex-wrap:wrap; margin-bottom:0; }
.moderation-list-heading h3 { font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:20px; }
.moderation-report-detail-head h3 { font-size:24px; overflow-wrap:anywhere; }
.moderation-list-heading > span { font-size:12px; white-space:nowrap; color:#74677b; }
.moderation-report-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
.moderation-report-facts > div { min-width:0; padding:13px 0; border-radius:0; border-bottom:1px solid #e5e5ef; background:transparent; }
.moderation-report-facts > .moderation-fact-wide { grid-column:1/-1; }
.moderation-report-facts dt { color:#80708c; font-size:11px; }
.moderation-report-facts dd { font-size:17px; line-height:1.4; font-weight:600; }
.moderation-report-facts a { color:#9b4673; }
.moderation-queue-list { display:grid; gap:12px; }
.moderation-queue-card { display:grid; gap:9px; padding:16px; border:1px solid #d6d2e0; border-left:4px solid #b9c3d4; border-radius:4px; background:#fff; color:#101941; text-decoration:none; min-width:0; }
.moderation-queue-card.is-active { background:#fff8fc; border-color:#d6a6c1; border-left-color:#e978ad; }
.moderation-queue-card:hover { background:#fff0f7; }
.moderation-queue-card:focus-visible { outline:3px solid #c85d96; outline-offset:3px; }
.moderation-queue-card-head { display:flex; gap:12px; justify-content:space-between; align-items:center; }
.moderation-queue-card-head > strong { font-size:21px; overflow-wrap:anywhere; min-width:0; }
.moderation-queue-reference { color:#80708c; font-size:12px; overflow-wrap:anywhere; }
.moderation-queue-category { color:#9b4673; font-size:13px; font-weight:700; }
.moderation-queue-summary { color:#45445b; font-size:15px; line-height:1.45; overflow-wrap:anywhere; }
.moderation-queue-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; border-top:1px solid #eadde6; padding-top:10px; color:#80708c; font-size:12px; }
.moderation-queue-footer b { color:#9b4673; }
.moderation-staff-detail-panel .moderation-decision-form { border:1px solid #d6d2e0; border-radius:4px; background:#faf9fd; box-shadow:none; padding:18px; }
@media(max-width:1050px) { .moderation-staff-workspace { grid-template-columns:1fr; } }
@media(max-width:480px) { .moderation-staff-list-panel,.moderation-staff-detail-panel,.moderation-report-detail { padding:14px; } .moderation-report-facts { grid-template-columns:1fr; } .moderation-report-detail-head h3 { font-size:20px; } }

/* Socipic community records: compact pixel headings and paper-like panels. */
.legal-page-moderation .legal-hero { padding:24px 28px; border:1px solid #b8b8cc; border-top:5px solid #ee82b2; border-radius:4px; background:#fff8fc; box-shadow:4px 4px 0 #bec4da; align-items:center; }
.legal-page-moderation .legal-hero h1 { font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:44px; line-height:1.15; text-transform:none; text-shadow:2px 2px 0 #f4bad6; }
.legal-page-moderation .legal-hero p:not(.legal-eyebrow) { font-family:inherit; font-size:17px; font-weight:500; margin-top:8px; }
.legal-page-moderation .legal-hero-meta { background:transparent; border:0; box-shadow:none; padding:0; }
.legal-page-moderation .legal-meta-row { background:transparent; border:0; padding:0; }
.legal-page-moderation .legal-hero-meta strong { font-size:17px; }
.legal-page-moderation .legal-eyebrow { font-size:12px; letter-spacing:.06em; color:#a94b7d; }
.legal-page-moderation .moderation-tabs { gap:10px; padding:0 0 14px; margin:22px 0; background:transparent; box-shadow:none; border:0; border-bottom:1px solid #bec4da; border-radius:0; }
.legal-page-moderation .moderation-tab { border:1px solid #a8acc2; border-radius:2px; background:#fff; box-shadow:3px 3px 0 #c2c6d8; font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:18px; min-height:44px; padding:10px 18px; color:#15204a; }
.legal-page-moderation .moderation-tab.is-active,.legal-page-moderation .moderation-tab:hover { background:#fac6e1; border-color:#a26387; box-shadow:3px 3px 0 #d19eb8; color:#532048; }
.legal-page-moderation .moderation-tab[hidden] { display:none; }
.legal-page-moderation .moderation-tab[data-moderation-tab="queue"] { margin-left:auto; }
.legal-page-moderation .moderation-section-head,.legal-page-moderation .moderation-report-copy,.legal-page-moderation .moderation-report-form,.legal-page-moderation .moderation-empty-state,.legal-page-moderation .legal-toc,.legal-page-moderation .legal-document { border:1px solid #c4bdce; border-radius:4px; background:#fff; box-shadow:3px 3px 0 #d6d8e5; padding:20px; }
.legal-page-moderation .moderation-section-head { background:#fff6fb; align-items:center; gap:18px; }
.legal-page-moderation .moderation-section-head h2,.legal-page-moderation .moderation-report-copy h2 { font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; text-transform:none; font-size:28px; text-shadow:1px 2px 0 #f2c7dd; line-height:1.2; }
.legal-page-moderation .moderation-section-head p:last-child,.legal-page-moderation .moderation-report-copy p { font-family:inherit; font-size:16px; line-height:1.5; font-weight:500; margin-top:8px; }
.moderation-record-count { flex-shrink:0; color:#82637e; font-size:14px; }
.moderation-personal-workspace { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); align-items:start; gap:22px; }
.moderation-record-groups,.moderation-personal-detail { display:grid; gap:18px; min-width:0; }
.moderation-record-group { min-width:0; }
.moderation-record-group .moderation-list-heading { margin:0 0 10px; background:#eefaf7; border-color:#c0dbd5; }
.moderation-record-group .moderation-user-report-card { border:1px solid #c4bdce; border-left:4px solid #c4c7dc; border-radius:3px; padding:14px; box-shadow:2px 2px 0 #d6d8e5; }
.moderation-record-group .moderation-user-report-card.is-active { border-left-color:#e978ad; background:#fff4fa; }
.moderation-user-report-card strong { font-size:20px; overflow-wrap:anywhere; }
.moderation-user-report-card small,.moderation-user-report-card em { font-size:14px; line-height:1.45; overflow-wrap:anywhere; }
.moderation-user-report-card .moderation-report-status { display:inline-flex; align-self:start; }
.moderation-public-decisions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.moderation-public-decision { min-width:0; padding:20px; background:#fff; border:1px solid #c4bdce; box-shadow:3px 3px 0 #d6d8e5; }
.moderation-public-decision-head { display:flex; justify-content:space-between; align-items:start; gap:14px; }
.moderation-public-decision-head > div { display:grid; gap:4px; min-width:0; }
.moderation-public-decision-head a { color:#101941; font-size:24px; font-weight:700; text-decoration:none; overflow-wrap:anywhere; }
.moderation-public-decision-head a:hover { color:#a94b7d; text-decoration:underline; }
.moderation-public-decision small,.moderation-public-decision footer { color:#80708c; font-size:13px; }
.moderation-public-decision footer { padding-top:14px; overflow-wrap:anywhere; }
.legal-page-moderation .moderation-primary-button { background:#fac6e1; color:#532048; border:1px solid #a26387; border-radius:2px; box-shadow:3px 3px 0 #d19eb8; min-height:44px; font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:18px; }
.legal-page-moderation .moderation-field input,.legal-page-moderation .moderation-field select,.legal-page-moderation .moderation-field textarea { border:1px solid #bfc1d4; border-radius:3px; font-size:16px; }
.legal-page-moderation .legal-toc h2 { font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:22px; text-transform:none; }
.legal-page-moderation .legal-toc a { border-radius:2px; font-size:13px; }
.legal-page-moderation .legal-document h2 { font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:23px; line-height:1.3; }
.legal-page-moderation .moderation-report-status.is-pending { background:#fff1c2; color:#806017; }
@media(max-width:850px) { .moderation-personal-workspace,.moderation-public-decisions { grid-template-columns:1fr; } }
@media(max-width:620px) {
 .legal-page-moderation .legal-hero { grid-template-columns:1fr; gap:14px; padding:20px; }
 .legal-page-moderation .legal-hero h1 { font-size:36px; }
 .legal-page-moderation .legal-hero-meta { display:none; }
 .legal-page-moderation .moderation-tabs { display:grid; grid-template-columns:1fr 1fr; }
 .legal-page-moderation .moderation-tab[data-moderation-tab="queue"] { margin-left:0; grid-column:1/-1; }
 .legal-page-moderation .moderation-tab { font-size:16px; padding:10px; }
 .legal-page-moderation .moderation-section-head { flex-wrap:wrap; padding:16px; }
 .moderation-public-decision { padding:16px; }
 .legal-page-moderation .moderation-staff-stats { grid-template-columns:1fr 1fr; }
}

.legal-page-moderation .moderation-report-facts > div { border:0; border-bottom:1px solid #e5e5ef; }
.legal-page-moderation .moderation-tabs .moderation-tab { grid-column:auto; }
@media(max-width:620px) { .legal-page-moderation .moderation-tabs .moderation-tab[data-moderation-tab="queue"] { grid-column:1/-1; } }

/* Expandable public case ledger. */
.moderation-record-table-wrap { border:1px solid #b9b8cd; background:#fff; box-shadow:4px 4px 0 #c7cbdc; }
.moderation-record-table { width:100%; border-collapse:collapse; table-layout:fixed; color:#15204a; font-size:16px; }
.moderation-record-table th { background:#fff0f7; color:#78506b; font-family:"Easy Pixel","Barlow Semi Condensed",sans-serif; font-size:16px; text-align:left; padding:14px; border-bottom:1px solid #d6bccb; }
.moderation-record-table td { padding:16px 14px; border-bottom:1px solid #e1deea; vertical-align:top; overflow-wrap:anywhere; }
.moderation-record-table th:first-child { width:22%; }
.moderation-record-table th:nth-child(3) { width:20%; }
.moderation-record-table a { color:#15204a; font-weight:700; text-decoration:none; font-size:20px; }
.moderation-record-table a:hover { text-decoration:underline; color:#a94b7d; }
.moderation-record-table small { display:block; margin-top:5px; color:#80708c; font-size:12px; }
.moderation-record-row:nth-of-type(4n+3) { background:#faf9fd; }
.moderation-record-row.is-expandable { cursor:pointer; }
.moderation-record-row.is-expandable:hover,.moderation-record-row.is-open { background:#fff2f9; }
.moderation-expand-case { display:inline-flex; gap:5px; align-items:center; padding:6px 0; color:#9b4673; font:inherit; font-weight:700; background:none; border:0; cursor:pointer; text-align:left; }
.moderation-expand-case:focus-visible { outline:2px solid #a94b7d; outline-offset:4px; }
.moderation-no-comment { color:#80708c; font-size:14px; }
.moderation-expanded-row[hidden] { display:none; }
.moderation-expanded-row > td { padding:0; }
.moderation-expanded-case { padding:20px 24px; background:#fcfbff; border-left:4px solid #e78bb6; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:24px; }
.moderation-expanded-case .moderation-report-facts { align-content:start; }
.moderation-expanded-case .moderation-report-body section:first-child { background:#fff0f7; border-left-color:#e78bb6; }
.moderation-visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:760px) {
 .moderation-record-table,.moderation-record-table tbody { display:block; }
 .moderation-record-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .moderation-record-row { display:grid; grid-template-columns:1fr 1fr; padding:12px; border-bottom:1px solid #c4bdce; }
 .moderation-record-table .moderation-record-row td { display:block; border:0; padding:8px; }
 .moderation-record-row td::before { content:attr(data-label); display:block; font-size:11px; text-transform:uppercase; color:#80708c; margin-bottom:5px; }
 .moderation-expanded-row,.moderation-expanded-row > td { display:block; width:100%; }
 .moderation-expanded-case { padding:16px; grid-template-columns:1fr; gap:18px; }
}

.moderation-recommendation { padding: 18px; margin: 0 0 22px; border: 1px solid #d2c9e4; border-left: 4px solid #d978ac; border-radius: 6px; background: #fff6fb; color: #243052; }
.moderation-recommendation h3 { margin: 4px 0 10px; font-size: 1.35rem; }
.moderation-recommendation p { margin: 8px 0; }
.moderation-recommendation-scope { font-weight: bold; }
.moderation-recommendation small { display: block; color: #58627d; }
.moderation-recommendation summary { cursor: pointer; font-weight: bold; padding: 8px 0; }
.moderation-recommendation table { width: 100%; border-collapse: collapse; margin: 8px 0; }
.moderation-recommendation caption { text-align: left; margin-bottom: 8px; font-weight: bold; }
.moderation-recommendation th, .moderation-recommendation td { padding: 8px; border-bottom: 1px solid #e4d9e8; text-align: left; vertical-align: top; }
.moderation-recommendation .is-recommended { background: #f5deed; font-weight: bold; }
.moderation-schedule-legend { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 12px; }
.moderation-schedule-legend span { padding: 5px 9px; border: 1px solid #bbc7c4; border-radius: 3px; font-size: 12px; font-weight: 700; }
.moderation-schedule-sheet { max-width: 100%; overflow-x: auto; border: 1px solid #9babaa; border-radius: 4px; box-shadow: 0 3px 10px #243b3320; background: #fff; }
.moderation-schedule-sheet:focus-visible { outline: 3px solid #5ba38d; outline-offset: 3px; }
.moderation-schedule-table { width: 100%; min-width: 740px; border-collapse: separate; border-spacing: 0; table-layout: fixed; font: 13px/1.45 Arial, sans-serif; color: #233d38; }
.moderation-schedule-table caption { padding: 11px 14px; text-align: left; font-weight: 700; background: #eaf2ef; color: #315b4e; }
.moderation-schedule-table th, .moderation-schedule-table td { box-sizing: border-box; padding: 12px 9px; border-right: 1px solid #b8c8c2; border-bottom: 1px solid #b8c8c2; vertical-align: middle; overflow-wrap: anywhere; }
.moderation-schedule-table thead th { background: #2b715b; color: #fff; font-weight: 700; text-align: center; }
.moderation-schedule-table .schedule-row-number { width: 32px; padding: 8px 3px; background: #edf1f0; color: #70817b; text-align: center; font-size: 11px; }
.moderation-schedule-table .schedule-category { width: 190px; text-align: left; }
.moderation-schedule-table tbody .schedule-category { position: sticky; left: 0; z-index: 1; background: #f5f8f6; box-shadow: 1px 0 0 #b8c8c2; font-weight: 700; }
.moderation-schedule-table .schedule-category a { color: #285d4d; text-decoration: none; }
.moderation-schedule-table .schedule-category a:hover { text-decoration: underline; }
.moderation-schedule-table .schedule-category small { display: block; margin-top: 5px; color: #64766f; font-size: 10px; font-weight: 400; }
.moderation-schedule-table td:not(.schedule-row-number) { text-align: center; font-weight: 600; }
.schedule-warning { background: #dff1e5; color: #246541; }
.schedule-short { background: #fff1c7; color: #705917; }
.schedule-extended { background: #ffe0c7; color: #874919; }
.schedule-severe { background: #f6d5df; color: #8f3150; }
.schedule-manual { background: #eeebf4; color: #625a77; }
.moderation-schedule-table tbody tr:hover td { box-shadow: inset 0 0 0 999px #ffffff22; }
.moderation-schedule-table tr:last-child td, .moderation-schedule-table tr:last-child th { border-bottom: 0; }
.moderation-schedule-table tr > :last-child { border-right: 0; }
.moderation-schedule-hint { font-size: .85em; color: #68776e; }
@media (max-width: 600px) { .moderation-schedule-table .schedule-category { width: 156px; } .moderation-schedule-table { min-width: 750px; } }

.moderation-team {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.moderation-team > li { width: 144px; max-width: calc((100% - 14px) / 2); }
.moderation-team-member {
  --plaque-paper: #fff0f6;
  --plaque-stitch: #e2acc7;
  --plaque-ink: #794763;
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  height: 100%;
  padding: 12px 8px 10px;
  border: 3px solid #fff;
  border-radius: 18px 18px 14px 14px;
  background: linear-gradient(145deg, #ffffffb3, transparent 55%), var(--plaque-paper);
  box-shadow: 0 4px 0 var(--plaque-stitch), 0 8px 12px #4d426c17;
  color: var(--plaque-ink);
  font-family: "TAY Dumpling", "Barlow Semi Condensed", Arial, sans-serif;
  font-synthesis: none;
  text-align: center;
  text-decoration: none;
}
.moderation-team > li:nth-child(4n + 2) .moderation-team-member { --plaque-paper: #eaf8f3; --plaque-stitch: #a9cfc4; --plaque-ink: #3f6b64; }
.moderation-team > li:nth-child(4n + 3) .moderation-team-member { --plaque-paper: #f2edff; --plaque-stitch: #c4b4df; --plaque-ink: #685183; }
.moderation-team > li:nth-child(4n + 4) .moderation-team-member { --plaque-paper: #fff8df; --plaque-stitch: #dbc68f; --plaque-ink: #7c653d; }
.moderation-team-member::before {
  content: "";
  position: absolute;
  inset: 5px;
  z-index: -1;
  border: 1px dashed var(--plaque-stitch);
  border-radius: 12px 12px 9px 9px;
  pointer-events: none;
}
.moderation-team-member::after {
  content: "✦";
  position: absolute;
  top: 10px;
  right: 8px;
  color: var(--plaque-stitch);
  font-family: Arial, sans-serif;
  font-size: 18px;
  text-shadow: 0 1px 0 white;
  pointer-events: none;
}
.moderation-team-member img {
  width: 72px;
  height: 96px;
  margin-bottom: 4px;
  border: 3px solid white;
  border-radius: 9px;
  background: #f4eff9;
  object-fit: cover;
  box-shadow: 0 3px 6px #4d426c1f;
}
.moderation-team-member strong {
  max-width: 100%;
  font-family: inherit;
  font-size: .94rem;
  font-weight: 400;
  line-height: 1.25;
  overflow-wrap: anywhere;
  text-shadow: 0 1px 0 white;
}
.moderation-team-role {
  max-width: 100%;
  color: var(--plaque-ink);
  font-family: inherit;
  font-size: .76rem;
  font-weight: 400;
  line-height: 1.2;
  padding: 3px 8px;
  border: 1px solid var(--plaque-stitch);
  border-radius: 5px;
  background: #ffffffa6;
}
.moderation-team-member:hover { background: linear-gradient(#ffffff50, #ffffff50), var(--plaque-paper); }
.moderation-team-member:hover strong { text-decoration: underline; }
.moderation-team-member:focus-visible { outline: 2px solid var(--plaque-ink); outline-offset: 5px; }
.page-banner-details > .moderation-team { flex: 1 1 100%; margin: 0; }

.moderation-team-specialties {
  display: grid;
  grid-template-columns: max-content max-content;
  justify-content: center;
  gap: 4px;
  width: 100%;
  margin-top: 2px;
}
.moderation-team-specialty {
  padding: 1px 4px;
  border: 1px solid var(--plaque-stitch);
  border-radius: 4px;
  background: #ffffff80;
  color: var(--plaque-ink);
  font-family: "Barlow Semi Condensed", Arial, sans-serif;
  font-size: .62rem;
  font-weight: 600;
  line-height: 1.25;
}
.moderation-team-specialty:last-child:nth-child(odd) {
  grid-column: 1 / -1;
  justify-self: center;
}

/* Detailed rule schedules share the main table's grid and penalty colors. */
.moderation-schedule-table.moderation-schedule-detail { min-width: 0; }
.moderation-schedule-detail th:first-child { width: 28%; }
.moderation-schedule-detail tbody th { background: #f5f8f6; color: #285d4d; text-align: left; font-weight: 700; }
.moderation-schedule-detail td:not(.schedule-row-number) { text-align: left; }

.moderation-appeal-help { margin: 0; color: #64718c; font-size: 15px; line-height: 1.4; }
