/* SOCIEDADE GRIMO / PROTOCOLO DELECTUS — visual override
   Purposefully isolated from styles.css so the redesign can be disabled
   by removing a single <link> from index.html. */

:root {
  --bg: #080605;
  --card: #0e0a08;
  --card-2: #15100d;
  --line: #5e422c;
  --line-soft: #2d2119;
  --text: #efe3d1;
  --text-soft: #ad9882;
  --text-dim: #6f6255;
  --green: #b99572;
  --green-dark: #241912;
  --amber: #d18b23;
  --amber-soft: #3c260e;
  --bronze: #a66a3b;
  --bronze-soft: #6f472d;
  --wine: #2a0b0e;
  --wine-soft: #401014;
  --danger: #c96e63;
}

html {
  background: #080605;
}

body {
  position: relative;
  min-height: 100vh;
  overflow-x: hidden;
  color: var(--text);
  background:
    radial-gradient(ellipse at 10% 22%, rgba(102, 22, 27, .20) 0%, rgba(48, 10, 12, .10) 28%, transparent 55%),
    radial-gradient(ellipse at 92% 82%, rgba(82, 20, 18, .16) 0%, rgba(37, 10, 9, .08) 28%, transparent 54%),
    radial-gradient(ellipse at 50% 0%, rgba(84, 49, 26, .08) 0%, transparent 35%),
    linear-gradient(180deg, #0b0706 0%, #070504 48%, #0c0707 100%);
  background-attachment: fixed;
}

body::before,
body::after {
  content: "";
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  pointer-events: none;
}

body::before {
  z-index: 0;
  opacity: .28;
  background:
    repeating-linear-gradient(
      37deg,
      rgba(255,255,255,.018) 0px,
      rgba(255,255,255,.018) 1px,
      transparent 1px,
      transparent 4px
    ),
    repeating-linear-gradient(
      -27deg,
      rgba(128,67,42,.018) 0px,
      rgba(128,67,42,.018) 1px,
      transparent 1px,
      transparent 7px
    );
  mix-blend-mode: soft-light;
}

body::after {
  z-index: 0;
  background:
    radial-gradient(ellipse at center, transparent 42%, rgba(0,0,0,.28) 72%, rgba(0,0,0,.58) 100%);
}

.app-shell {
  position: relative;
  z-index: 1;
}

/* Typography */
.login-hero h1,
.protocol-heading h1,
.stage-hero h1,
.print-modal h2,
.panel-head h2,
.stage-title,
.field-label,
.quote {
  font-family: "Cormorant Garamond", Georgia, serif;
}

.login-hero h1,
.protocol-heading h1,
.stage-hero h1 {
  color: #f3e7d5;
  font-weight: 600;
}

.eyebrow,
.reference-line,
.status-line,
.field-help,
.access-copy,
.stage-badge,
.protocol-reset-link {
  text-transform: none;
}

/* Main material / panels */
.protocol-card {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 10%, rgba(92, 25, 25, .10), transparent 34%),
    radial-gradient(circle at 88% 92%, rgba(84, 41, 22, .07), transparent 38%),
    linear-gradient(180deg, rgba(18, 12, 10, .96) 0%, rgba(11, 8, 7, .98) 100%);
  border: 1px solid rgba(151, 102, 59, .58);
  border-radius: 6px;
  box-shadow:
    inset 0 0 0 1px rgba(255, 231, 199, .018),
    inset 0 0 50px rgba(83, 20, 18, .055),
    0 18px 60px rgba(0, 0, 0, .34);
}

.protocol-card::after {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  pointer-events: none;
  z-index: 0;
  opacity: .16;
  background:
    repeating-linear-gradient(42deg, rgba(255,255,255,.015) 0 1px, transparent 1px 5px);
  mix-blend-mode: soft-light;
}

.protocol-card > * {
  position: relative;
  z-index: 1;
}

/* LOGIN */
.login-view.active {
  min-height: calc(100vh - 10px);
}

.login-card {
  min-height: min(860px, calc(100vh - 18px));
  padding: clamp(34px, 6vh, 72px) clamp(24px, 6vw, 76px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.login-hero {
  padding: 0 0 34px;
}

.shield-mark {
  color: var(--amber);
  opacity: .95;
}

.eyebrow {
  color: #b69b7c;
  letter-spacing: .28em;
}

.login-hero h1 {
  font-size: clamp(40px, 5vw, 58px);
  line-height: .98;
  letter-spacing: .075em;
}

.login-form-panel {
  width: min(100%, 760px);
  margin: 0 auto;
  padding: 24px 26px 22px;
  border: 1px solid rgba(125, 84, 54, .72);
  border-radius: 5px;
  background:
    linear-gradient(180deg, rgba(22, 15, 12, .82), rgba(14, 10, 8, .90));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.018),
    inset 0 10px 32px rgba(56, 19, 15, .05);
}

.field-label {
  color: #e9d9c4;
  font-size: 18px;
  font-weight: 500;
}

input {
  border: 1px solid #755039;
  border-radius: 4px;
  background: #100c09;
  color: #f0e2cf;
  box-shadow:
    inset 0 2px 10px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,255,255,.008);
}

input:focus {
  border-color: #b8783b;
  box-shadow:
    inset 0 2px 10px rgba(0,0,0,.34),
    0 0 0 2px rgba(185, 117, 55, .08);
}

input::placeholder {
  color: #776455;
}

.field-help {
  color: #77685b;
}

.primary-btn {
  border: 1px solid #bd8151;
  border-radius: 4px;
  background:
    linear-gradient(180deg, #b57646 0%, #8d512f 100%);
  color: #f8ead7;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -10px 22px rgba(68, 25, 11, .16),
    0 8px 24px rgba(34, 13, 8, .20);
  transition: border-color .18s ease, filter .18s ease, transform .18s ease;
}

.primary-btn:hover,
.primary-btn:focus-visible {
  border-color: #dda06b;
  filter: brightness(1.07);
  outline: none;
}

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

.feedback {
  color: var(--danger);
}

/* DASHBOARD HEADER */
.dashboard-card {
  background:
    radial-gradient(ellipse at 8% 10%, rgba(89, 21, 23, .09), transparent 34%),
    linear-gradient(180deg, rgba(16, 11, 9, .97), rgba(9, 7, 6, .985));
}

.reference-line {
  color: #a58d74;
  letter-spacing: .14em;
}

.reference-line span {
  color: #d5a15f;
}

.protocol-heading h1 {
  font-size: clamp(31px, 4vw, 44px);
  letter-spacing: .035em;
}

.status-line {
  color: #9a8774;
}

.status-line strong {
  color: var(--amber);
}

.important-info-btn {
  border: 1px solid #9f6c39;
  border-radius: 5px;
  color: #c98a43;
  background: rgba(31, 19, 13, .24);
  box-shadow: inset 0 0 30px rgba(82, 37, 16, .04);
}

.important-info-btn:hover,
.important-info-btn:focus-visible {
  background: rgba(137, 83, 38, .09);
}

.notification-dot {
  background: var(--amber);
}

/* REFINED TIMELINE */
.stages-wrap {
  margin-top: 22px;
  border-left: 0;
}

.stage-list {
  position: relative;
  display: grid;
  counter-reset: stageIndex;
}

.stage-list::before {
  content: "";
  position: absolute;
  left: 21px;
  top: 25px;
  bottom: 26px;
  width: 1px;
  background: linear-gradient(
    to bottom,
    rgba(159, 103, 49, .82) 0%,
    rgba(126, 78, 39, .65) 72%,
    rgba(72, 65, 58, .46) 100%
  );
  z-index: 0;
}

.stage-row {
  counter-increment: stageIndex;
  min-height: 76px;
  padding: 10px 0 10px 0;
  border-bottom: 1px solid rgba(91, 65, 45, .31);
  background: transparent;
  grid-template-columns: 46px minmax(0,1fr) auto;
  gap: 16px;
  isolation: isolate;
  transition: background .18s ease, box-shadow .18s ease;
}

.stage-row:last-child {
  border-bottom: 0;
}

.stage-row.done::before,
.stage-row.available::before,
.stage-row.info-required::before {
  display: none;
}

.stage-row.available,
.stage-row.info-required {
  box-shadow: inset 2px 0 0 var(--amber);
  background: linear-gradient(90deg, rgba(123, 69, 19, .06), transparent 26%);
}

.stage-icon {
  position: relative;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 1px solid #765333;
  border-radius: 50%;
  background:
    radial-gradient(circle at 38% 30%, rgba(128, 78, 38, .12), transparent 50%),
    #0d0907;
  color: #dcc8ae;
  font-size: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  box-shadow:
    0 0 0 4px rgba(11, 8, 7, .96),
    inset 0 0 12px rgba(98, 48, 20, .08);
}

.stage-icon::before {
  content: counter(stageIndex, decimal-leading-zero);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: .03em;
}

.stage-row.done .stage-icon {
  color: #dfc7a9;
  border-color: #8e623a;
}

.stage-row.available .stage-icon,
.stage-row.info-required .stage-icon {
  color: #fff0d2;
  border-color: var(--amber);
  box-shadow:
    0 0 0 4px rgba(11,8,7,.96),
    0 0 0 2px rgba(209,139,35,.07),
    0 0 18px rgba(209,139,35,.20),
    inset 0 0 14px rgba(209,139,35,.08);
}

.stage-main {
  align-self: center;
}

.stage-title {
  color: #695e54;
  font-size: clamp(18px, 2.4vw, 23px);
  font-weight: 600;
  letter-spacing: .025em;
}

.stage-subtitle {
  color: #62584f;
  font-size: 11px;
}

.stage-row.done .stage-title,
.stage-row.available .stage-title,
.stage-row.info-required .stage-title {
  color: #eadbc7;
}

.stage-row.done .stage-subtitle {
  color: #a78f77;
}

.stage-row.available .stage-subtitle,
.stage-row.info-required .stage-subtitle {
  color: #b99a78;
}

.stage-badge {
  margin-right: 10px;
  border-radius: 4px;
  font-size: 9px;
  letter-spacing: .02em;
}

.stage-row.done .stage-badge {
  border: 1px solid rgba(111, 77, 49, .50);
  background: #241811;
  color: #c3a382;
}

.stage-row.available .stage-badge {
  border: 1px solid #e0a33b;
  background: linear-gradient(180deg, #d69427, #b86f12);
  color: #1a0d04;
  box-shadow: 0 5px 16px rgba(126, 68, 10, .16);
}

.stage-row.info-required .stage-badge {
  border-color: #b77b37;
  color: #d49a55;
}

.stage-row.locked {
  opacity: .50;
}

.stage-row.locked .stage-icon {
  border-color: #56504a;
  color: #6d655f;
  box-shadow: 0 0 0 4px rgba(11,8,7,.96);
}

.stage-row.locked .stage-badge {
  color: #655e58;
}

/* FOOTER / ACTIONS */
.dashboard-footer {
  border-top: 1px solid rgba(104, 74, 50, .52);
}

.quote {
  color: #c0a486;
  font-size: 16px;
  letter-spacing: .03em;
}

.access-copy {
  color: #78695b;
}

.ghost-btn,
.continue-btn {
  border-radius: 4px;
}

.ghost-btn {
  border-color: #78523a;
  color: #e6d8c5;
  background: rgba(18,12,9,.28);
}

.ghost-btn:hover,
.ghost-btn:focus-visible {
  border-color: #a16b42;
  background: rgba(93, 54, 29, .07);
  outline: none;
}

.continue-btn {
  border-color: #4d3b30;
  color: #6f655c;
}

.protocol-reset-link {
  color: #716257;
}

.protocol-reset-link:hover,
.protocol-reset-link:focus-visible {
  border-bottom-color: #9b7454;
  color: #b59678;
}

/* STAGE PAGES */
.back-link {
  color: #a88e73;
}

.stage-status-line {
  color: var(--amber);
}

.detail-panel {
  border-color: #5b3f2b;
  background:
    radial-gradient(circle at 12% 10%, rgba(80,20,18,.05), transparent 35%),
    #0e0a08;
}

.panel-head {
  border-bottom-color: #5a3e2a;
  background: rgba(37, 24, 16, .24);
}

.panel-head span {
  color: #c58a4e;
}

.context-copy {
  color: #b5a18e;
}

.mission-copy {
  color: #eadfce;
}

.validation-form {
  border-top-color: #392a21;
}

.validation-quote {
  color: #aa9177;
}

.identification-hint {
  border-color: #745225;
  background: rgba(78, 50, 18, .08);
  color: #cfb58b;
}

/* RECORDS / ACCORDIONS */
.record-item,
.attachment-item {
  border-color: #513a29;
  background: #0d0907;
}

.record-toggle,
.attachment-toggle {
  color: #e9ddcd;
}

.record-toggle:hover,
.attachment-toggle:hover {
  background: rgba(143, 85, 42, .055);
}

.record-toggle .chev,
.attachment-toggle .chev,
.record-content a {
  color: #c48749;
}

.record-content,
.attachment-content {
  color: #b5a18e;
}

.record-content blockquote {
  border-left-color: var(--amber);
  color: #d8c9b5;
}

.doc-meta {
  color: #826f5f;
}

.answer-panel {
  border-top-color: #493426;
}

.answer-panel p {
  color: #ae9986;
}

/* MODAL */
.modal-backdrop {
  background: rgba(3, 2, 2, .84);
  backdrop-filter: blur(2px);
}

.print-modal {
  border-color: #67472f;
  background:
    radial-gradient(circle at 10% 0%, rgba(88,25,22,.08), transparent 40%),
    #0e0a08;
  box-shadow: 0 28px 90px rgba(0,0,0,.58);
}

.modal-close {
  color: #a88362;
}

.print-copy {
  color: #b49e89;
}

.print-file-placeholder {
  border-color: #61442f;
  color: #aa927d;
}

/* Texto auxiliar da ficha de impressão: substituir o verde legado por bege quente. */
.print-file-placeholder small {
  color: #b9a38d;
}

.file-mark {
  border-color: #765236;
  color: var(--amber);
}

/* Warm scrollbar */
* {
  scrollbar-width: thin;
  scrollbar-color: #68452d #0b0806;
}

*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

*::-webkit-scrollbar-track {
  background: #0b0806;
}

*::-webkit-scrollbar-thumb {
  background: #68452d;
  border: 2px solid #0b0806;
  border-radius: 8px;
}

/* Responsive timeline */
@media (max-width: 700px) {
  .login-card {
    min-height: calc(100vh - 8px);
    padding: 28px 18px;
  }

  .login-hero h1 {
    font-size: 36px;
  }

  .stage-list::before {
    left: 17px;
  }

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

  .stage-icon {
    width: 36px;
    height: 36px;
  }

  .stage-icon::before {
    font-size: 14px;
  }

  .stage-title {
    font-size: 17px;
  }

  .stage-subtitle {
    font-size: 9.5px;
  }

  .stage-badge {
    margin-right: 0;
  }
}

@media (max-width: 430px) {
  .login-hero h1 {
    font-size: 31px;
    letter-spacing: .05em;
  }

  .stage-row {
    grid-template-columns: 34px minmax(0,1fr) auto;
    gap: 8px;
  }

  .stage-list::before {
    left: 16px;
  }

  .stage-icon {
    width: 34px;
    height: 34px;
  }
}

/* OUTER FRAME REMOVAL — login + protocol dashboard */
.login-card,
.dashboard-card {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.login-card::after,
.dashboard-card::after {
  display: none !important;
}

/* Remover os painéis verde/ciano introduzidos pelas etapas 3, 4, 5 e 6. */
.stage5-completion-modal .stage5-opening {
  border: 1px solid rgba(142, 93, 53, .65) !important;
  border-radius: 4px;
  background:
    linear-gradient(180deg, rgba(27, 15, 12, .94), rgba(13, 9, 7, .97)) !important;
  color: #e0d0be !important;
  box-shadow: none !important;
}
.stage5-completion-modal .stage5-opening h3 {
  color: #f2e6d7 !important;
}

/* Reassistir ao vídeo: estilo de ação secundária, não botão verde. */
#stageView .mirror-v2-count { color: #c9ad89 !important; }

/* Bordas verdes de anexos em celular: herdam o bronze do tema. */


/* TIMELINE DISCRETA — MARCADORES DE PROGRESSO — 2026-09-19 */
/* Os números continuam nos títulos (01–07); apenas o marcador visual
   vira uma bolinha que se preenche após concluir a atividade.
   A linha é desenhada em dois segmentos POR ETAPA, sem tocar no círculo. */
#dashboardView .stage-list::before {
  display: none !important;
}
#dashboardView .stage-row {
  --marker-column: 46px;
  --marker-line-x: 22.5px;
  --marker-size: 38px;
  --marker-line-gap: 24px;
  position: relative;
  grid-template-columns: var(--marker-column) minmax(0, 1fr) auto;
  padding-left: 0 !important;
  box-shadow: none;
}
/* Linha interrompida: 5px de respiro antes e depois de cada marcador. */
#dashboardView .stage-row::before,
#dashboardView .stage-row::after {
  content: "" !important;
  display: block;
  position: absolute;
  z-index: 0;
  left: var(--marker-line-x);
  width: 1px;
  height: calc(50% - var(--marker-line-gap));
  border: 0;
  background: linear-gradient(180deg, rgba(160, 108, 63, .55), rgba(110, 73, 48, .43)) !important;
  box-shadow: none;
  pointer-events: none;
}
#dashboardView .stage-row::before {
  top: 0;
  bottom: auto;
}
#dashboardView .stage-row::after {
  top: auto;
  bottom: 0;
}
#dashboardView .stage-row:first-child::before,
#dashboardView .stage-row:last-child::after {
  display: none !important;
}
/* O destaque da etapa ativa fica no marcador, sem tarja vertical sobreposta. */
#dashboardView .stage-row.available,
#dashboardView .stage-row.info-required {
  background: linear-gradient(90deg, rgba(123, 69, 19, .045), transparent 27%);
}
#dashboardView .stage-icon {
  position: relative;
  z-index: 2;
  justify-self: center;
  align-self: center;
  display: block;
  box-sizing: border-box;
  width: var(--marker-size);
  height: var(--marker-size);
  min-width: var(--marker-size);
  padding: 0;
  border: 1.5px solid #685440;
  border-radius: 50%;
  background: #0d0907;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0;
  box-shadow: none;
}
/* Oculta o contador sobre o marcador, sem mexer nos textos das etapas. */
#dashboardView .stage-icon::before {
  content: none !important;
  display: none !important;
}
/* Concluída: aro bronze claro e preenchimento sólido com pequeno respiro. */
#dashboardView .stage-row.done .stage-icon {
  border-color: #c99b60;
  background: #0d0907;
  box-shadow: 0 0 0 1px rgba(201, 155, 96, .08);
}
#dashboardView .stage-row.done .stage-icon::after {
  content: "";
  position: absolute;
  top: 5px; right: 5px; bottom: 5px; left: 5px;
  border-radius: 50%;
  background: radial-gradient(
    circle at 32% 26%,
    #b98d5b 0%,
    #916239 28%,
    #684126 60%,
    #39251b 100%
  );
  box-shadow:
    inset 0 1px 1px rgba(242, 212, 166, .12),
    inset 0 -3px 7px rgba(17, 8, 5, .50),
    0 0 0 1px rgba(194, 139, 79, .08);
}
/* Disponível: aro âmbar mais nítido; interior ainda vazio. */
#dashboardView .stage-row.available .stage-icon,
#dashboardView .stage-row.info-required .stage-icon {
  border-color: #dfab62;
  background: #0d0907;
  box-shadow: 0 0 0 3px rgba(190, 125, 46, .075), 0 0 11px rgba(191, 122, 36, .18);
}
#dashboardView .stage-row.available .stage-icon::after,
#dashboardView .stage-row.info-required .stage-icon::after,
#dashboardView .stage-row.locked .stage-icon::after {
  content: none;
}
/* Bloqueada: apenas contorno bronze acinzentado, sem brilho. */
#dashboardView .stage-row.locked .stage-icon {
  border-color: #665343;
  background: #0d0907;
  box-shadow: none;
}
@media (max-width: 700px) {
  #dashboardView .stage-row {
    --marker-column: 36px;
    --marker-line-x: 17.5px;
    --marker-size: 32px;
    --marker-line-gap: 21px;
  }
}
@media (max-width: 430px) {
  #dashboardView .stage-row {
    --marker-column: 34px;
    --marker-line-x: 16.5px;
    --marker-size: 30px;
    --marker-line-gap: 20px;
  }
}


/* ETAPA 06 — OBSIDIANA E BRONZE / CHAMADO ÂMBAR — 2026-09-19 */
/* A superfície representa obsidiana: neutra, quase preta, com reflexo quente
   extremamente contido. A reprodução do vídeo permanece intacta. */
#stageView .mirror-v2-rim {
  background: radial-gradient(circle,
    #070505 0%,
    #070505 57%,
    #302117 60%,
    #17110d 65%,
    #654831 71%,
    #090706 75%
  ) !important;
  filter: drop-shadow(0 15px 20px rgba(0,0,0,.68));
}
#stageView .mirror-v2-surface:not(.is-revealing) {
  background:
    radial-gradient(ellipse at 33% 24%,
      #1b1510 0%,
      #120e0c 19%,
      #090807 46%,
      #030303 78%,
      #020202 100%
    ) !important;
  box-shadow:
    inset 0 0 42px rgba(0,0,0,.88),
    inset 0 0 0 1px rgba(133,95,53,.06) !important;
}
#stageView .mirror-v2-surface.is-revealing {
  background: #000 !important;
}
/* Ação de ativar e desativar: mesmo idioma material, sem verde residual. */
#stageView .mirror-video-controls .mirror-activate,
#stageView .mirror-video-controls .mirror-deactivate {
  border: 1px solid #956238 !important;
  border-radius: 3px;
  background: linear-gradient(180deg, #382314, #22160f) !important;
  color: #ead2ae !important;
  box-shadow: inset 0 1px rgba(255,220,165,.055) !important;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
#stageView .mirror-video-controls .mirror-activate:hover,
#stageView .mirror-video-controls .mirror-activate:focus-visible,
#stageView .mirror-video-controls .mirror-deactivate:hover,
#stageView .mirror-video-controls .mirror-deactivate:focus-visible {
  border-color: #c58e51 !important;
  background: linear-gradient(180deg, #54341c, #332012) !important;
  color: #fff0d6 !important;
}
#stageView .mirror-video-controls button:focus-visible {
  outline: 2px solid #d6ad78 !important;
  outline-offset: 3px !important;
}
/* O link surge após visitar a etapa 6. Substituímos também o nome da
   animação antiga, para evitar que suas keyframes ciano voltem a atuar. */
/* Pulsação mais luminosa, preservando o âmbar institucional.
   Sem !important na cor-base: isso permite que a animação altere a cor. */
#dashboardView .dashboard-footer .quote.mirror-protocol-link a {
  color: #b9935d;
  text-decoration: none;
  animation: delectus-amber-clue 2.45s ease-in-out infinite !important;
}
#dashboardView .dashboard-footer .quote.mirror-protocol-link a:hover,
#dashboardView .dashboard-footer .quote.mirror-protocol-link a:focus-visible {
  color: #fff1d0 !important;
  text-shadow: 0 0 3px rgba(255,246,223,.95), 0 0 12px rgba(255,220,141,.80), 0 0 26px rgba(217,143,49,.48) !important;
  outline-color: #d6b07a;
}
@keyframes delectus-amber-clue {
  0%, 100% {
    color: #b9935d;
    text-shadow: 0 0 0 rgba(240,216,168,0);
    opacity: .78;
  }
  42%, 58% {
    color: #fff1d0;
    text-shadow:
      0 0 3px rgba(255,246,223,.95),
      0 0 10px rgba(255,220,141,.86),
      0 0 22px rgba(217,143,49,.58),
      0 0 36px rgba(175,97,23,.34);
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  #dashboardView .dashboard-footer .quote.mirror-protocol-link a {
    animation: none !important;
    color: #d6b07a !important;
    opacity: 1;
  }
}


/* CONFORTO DE LEITURA — TIPOGRAFIA RESPONSIVA — 2026-09-19 */
/* Escopo restrito aos textos informativos: a frase/link oculto do rodapé,
   sua animação e os controles do espelho não são alterados. Títulos, datas,
   códigos e botões mantêm a linguagem técnica original. */

/* Leitura extensa: fonte editorial, caracteres sem espaçamento artificial,
   16px+ com entrelinha estável e largura adequada no computador. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .archive-copy,
.stage6-archive .stage6-context-document,
.stage6-archive .stage6-annex-content,
.print-modal .print-copy {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
  font-weight: 400;
}

/* Alguns scripts atribuem tamanho próprio aos parágrafos e listas: igualar
   os trechos de leitura sem mexer em rótulos e mensagens de sistema. */
.stage5-completion-modal .stage5-opening-content p,
.stage6-archive .archive-copy p,
.stage6-archive .stage6-annex-content p,
.stage6-archive .stage6-annex-content li,
.print-modal .print-copy p {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
  color: #dfd0bd !important;
}

/* Quebra de linha confortável: só prosa, não tabelas, cartas nem controles. */
.stage5-completion-modal .stage5-opening-content p,
.stage6-archive .archive-copy p,
.stage6-archive .stage6-annex-content p,
.print-modal .print-copy p {
  max-width: 68ch;
}

/* Distância entre blocos: pausas naturais, sem grandes vazios. */
.stage6-archive .archive-copy p,
.stage6-archive .stage6-annex-content p,
.print-modal .print-copy p {
  margin-bottom: .9em;
}

/* Cabeçalhos de documentos, códigos e orientações curtas continuam com
   aparência de arquivo, mas já não ficam microscópicos. */
.stage6-archive .doc-meta,
.stage6-archive .archive-sources {
  font-size: 12px !important;
  line-height: 1.55 !important;
  letter-spacing: .025em !important;
}
.print-modal .print-file-placeholder small {
  font-size: 12px !important;
  line-height: 1.55 !important;
  letter-spacing: normal !important;
}
.stage5-completion-modal .stage5-opening-content blockquote {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
}

/* Informações resumidas do painel e do formulário também precisam ser
   legíveis, sem tocar no bloco .quote (a pista do espelho). */
#dashboardView .stage-subtitle {
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  letter-spacing: normal !important;
}
#dashboardView .stage-badge {
  font-size: 10.5px !important;
  line-height: 1.4 !important;
}
#loginView .field-help {
  font-size: 12px !important;
  line-height: 1.5 !important;
  letter-spacing: .03em !important;
}

/* Telas pequenas: manter a prosa em 16px, limitar a largura naturalmente
   e reduzir o espaçamento que fatigava a leitura em monoespaçado. */
@media (max-width: 700px) {
  .stage6-archive .archive-copy,
  .stage6-archive .stage6-context-document,
  .stage6-archive .stage6-annex-content,
  .print-modal .print-copy {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
  #dashboardView .stage-subtitle {
    font-size: 12px !important;
    line-height: 1.45 !important;
  }
  .stage6-archive .archive-copy p,
  .stage6-archive .stage6-annex-content p,
  .stage6-archive .stage6-annex-content li,
  .print-modal .print-copy p {
    line-height: 1.6 !important;
  }
  .stage6-archive .archive-copy p,
  .print-modal .print-copy p {
    max-width: 100%;
  }
}


/* CONTRASTE DA LEITURA LONGA — 2026-09-19 */
/* Somente prosa dos documentos e caixas: marfim ligeiramente mais neutro.
   Não altera metadados, títulos, símbolos, botões, nem a frase/link pulsante. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .archive-copy,
.stage6-archive .stage6-context-document,
.stage6-archive .stage6-annex-content,
.print-modal .print-copy {
  color: #f0e9df !important;
}
.stage5-completion-modal .stage5-opening-content p,
.stage6-archive .archive-copy p,
.stage6-archive .stage6-annex-content p,
.stage6-archive .stage6-annex-content li,
.print-modal .print-copy p,
.stage5-completion-modal .stage5-opening-content blockquote {
  color: #f0e9df !important;
}


/* TÁBUA DE CORRESPONDÊNCIA — PALETA E LEGIBILIDADE — 2026-09-19 */
/* O arquivo de investigação pode aparecer dentro do painel (#dashboardView)
   ou da etapa (#stageView). O CSS dinâmico original ainda traz tons verdes:
   aqui as regras são específicas para a tábua, sem alterar a lógica do jogo. */
.stage6-archive .correspondence-table {
  border: 1px solid rgba(151, 101, 59, .70) !important;
  border-radius: 4px;
  background: linear-gradient(180deg, #19110d 0%, #110c0a 100%) !important;
  color: #f0e9df !important;
  box-shadow: none !important;
}
.stage6-archive .correspondence-table > h3 {
  margin: 0 0 12px !important;
  color: #f0e4d3 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  letter-spacing: .07em !important;
}
.stage6-archive .correspondence-table > p:not(.correspondence-result) {
  max-width: 65ch;
  margin: 0 0 18px !important;
  color: #eee5d8 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  letter-spacing: normal !important;
}
.stage6-archive .correspondence-form label {
  color: #c5aa89 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
.stage6-archive .correspondence-form input {
  border: 1px solid #8e653e !important;
  border-radius: 4px;
  background: #0c0908 !important;
  color: #f4e9d9 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 16px !important;
  box-shadow: none !important;
}
.stage6-archive .correspondence-form input:focus-visible {
  border-color: #d5a46b !important;
  outline: 2px solid rgba(213, 164, 107, .42);
  outline-offset: 2px;
}
.stage6-archive .correspondence-form button,
.stage6-archive .correspondence-save {
  border: 1px solid #9a6d40 !important;
  border-radius: 3px;
  background: linear-gradient(180deg, #342214, #24180f) !important;
  color: #f0d6b0 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
}
.stage6-archive .correspondence-form button:hover,
.stage6-archive .correspondence-form button:focus-visible,
.stage6-archive .correspondence-save:hover,
.stage6-archive .correspondence-save:focus-visible {
  border-color: #d0a06a !important;
  background: linear-gradient(180deg, #4b301b, #322013) !important;
  color: #fff0da !important;
}
.stage6-archive .correspondence-form button:focus-visible,
.stage6-archive .correspondence-save:focus-visible {
  outline: 2px solid #d6ad78;
  outline-offset: 2px;
}
.stage6-archive .correspondence-result {
  color: #ddba82 !important;
}
.stage6-archive .correspondence-saved {
  border-top-color: rgba(153, 103, 58, .45) !important;
}
.stage6-archive .correspondence-empty,
.stage6-archive .correspondence-saved-title,
.stage6-archive .correspondence-saved-item small {
  color: #c4af96 !important;
}
.stage6-archive .correspondence-saved-item {
  border-top-color: rgba(153, 103, 58, .35) !important;
}


/* PAPEL DE ARQUIVO — LEITURA LONGA — 2026-09-19 */
/* O jogo continua escuro. Apenas as áreas que apresentam material para
   leitura ganham uma superfície de papel sem textura, borda bronze e prosa
   escura. A pista do espelho, a animação, os botões e o material visual
   permanecem no estilo anterior. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .stage6-context-document,
.stage6-archive .record-content,
.stage6-archive .attachment-content,
.stage6-archive .stage6-additional-notes article,
.print-modal .print-copy {
  background: #f3ebdd !important;
  color: #342820 !important;
  border: 1px solid #b89a77 !important;
  border-radius: 3px;
  box-shadow: none !important;
  background-image: none !important;
}
/* A moldura escura do acordeão fica do lado de fora do documento claro.
   Diminuir a densidade visual nos blocos abertos. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .stage6-context-document,
.stage6-archive .record-content,
.stage6-archive .attachment-content,
.stage6-archive .stage6-additional-notes article,
.print-modal .print-copy {
  padding: clamp(18px, 2.5vw, 30px) !important;
}
.stage6-archive .record-content[hidden],
.stage6-archive .attachment-content[hidden],
.stage5-completion-modal .stage5-opening-content[hidden] {
  display: none !important;
}
/* Texto corrido: mais escuro e maior; serifas só nos documentos, mantendo
   cabeçalhos técnicos e informações de interface em suas fontes próprias. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .stage6-context-document,
.stage6-archive .record-content,
.stage6-archive .attachment-content,
.stage6-archive .stage6-additional-notes article,
.print-modal .print-copy {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
}
/* Prioridade ao contraste nos textos que recebiam cor clara com !important
   nas regras antigas, inclusive no arquivo aberto sobre o painel. */
.stage5-completion-modal .stage5-opening-content :is(p, li, blockquote, strong, em), .stage6-archive .stage6-context-document :is(p, li, blockquote, strong, em), .stage6-archive .record-content :is(p, li, blockquote, strong, em), .stage6-archive .attachment-content :is(p, li, blockquote, strong, em), .stage6-archive .stage6-additional-notes article :is(p, li, blockquote, strong, em), .print-modal .print-copy :is(p, li, blockquote, strong, em) {
  color: #342820 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  letter-spacing: normal !important;
}
.stage5-completion-modal .stage5-opening-content :is(p, li, blockquote), .stage6-archive .stage6-context-document :is(p, li, blockquote), .stage6-archive .record-content :is(p, li, blockquote), .stage6-archive .attachment-content :is(p, li, blockquote), .stage6-archive .stage6-additional-notes article :is(p, li, blockquote), .print-modal .print-copy :is(p, li, blockquote) {
  max-width: 65ch;
}
/* Cabeçalhos, fontes e metadados DENTRO do papel devem virar marrom-bronze.
   Os títulos dos acordeões e os botões fora do papel não são afetados. */
.stage5-completion-modal .stage5-opening-content :is(h3, h4), .stage6-archive .stage6-context-document :is(h3, h4), .stage6-archive .record-content :is(h3, h4, h5, .doc-section-title), .stage6-archive .attachment-content :is(h3, h4, h5, .doc-section-title), .print-modal .print-copy :is(h3, h4) {
  color: #62462f !important;
}
.stage6-archive .stage6-context-document .doc-meta,
.stage6-archive .record-content .doc-meta,
.stage6-archive .attachment-content .doc-meta,
.stage5-completion-modal .stage5-opening-content .stage5-opening-label {
  color: #785333 !important;
}
.stage6-archive .stage6-context-document a,
.stage6-archive .record-content a,
.stage6-archive .attachment-content a {
  color: #694322 !important;
  text-decoration: underline;
  text-underline-offset: .15em;
}
.stage6-archive .record-content blockquote, .stage6-archive .attachment-content blockquote {
  border-left-color: #ad855a !important;
}
/* Fontes e metadados da investigação aparecem dentro da folha, não no tema
   de interface escuro. A tábua interativa continua em vinho e bronze. */
.stage6-archive .stage6-context-document .archive-sources {
  color: #755638 !important;
  border-top-color: #cbb69c !important;
}
.stage6-archive .stage6-context-document .archive-sources a {
  color: #694322 !important;
}
.stage6-archive .stage6-additional-notes article span {
  color: #755638 !important;
}
@media (max-width: 700px) {
  .stage5-completion-modal .stage5-opening-content,
  .stage6-archive .stage6-context-document,
  .stage6-archive .record-content,
  .stage6-archive .attachment-content,
  .stage6-archive .stage6-additional-notes article,
  .print-modal .print-copy {
    font-size: 17px !important;
    line-height: 1.6 !important;
    padding: 18px 16px !important;
  }
}


/* PAPEL DE ARQUIVO — AJUSTE DE METADADOS E CONTEXTO */
/* Preservar a hierarquia técnica e corrigir a cor herdada de trechos do
   arquivo exibido dentro da Etapa 06. */
.stage6-archive .archive-copy {
  color: #342820 !important;
}
.stage6-archive .stage6-context-document .doc-meta,
.stage6-archive .record-content .doc-meta,
.stage6-archive .attachment-content .doc-meta {
  color: #785333 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  letter-spacing: .015em !important;
}
.stage5-completion-modal .stage5-opening-content .stage5-opening-label {
  color: #785333 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 12px !important;
  letter-spacing: .06em !important;
}


/* TIPOGRAFIA DE LEITURA — INTER MEDIUM — 2026-09-19 */
/* Inter carregada pelo próprio site, mantendo intactos títulos técnicos,
   botões, o espelho e a pista pulsante do rodapé. */
.stage5-completion-modal .stage5-opening-content,
.stage6-archive .stage6-context-document,
.stage6-archive .archive-copy,
.stage6-archive .record-content,
.stage6-archive .attachment-content,
.stage6-archive .stage6-additional-notes article p,
.print-modal .print-copy {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif !important;
}
/* Alguns blocos trazem Georgia aplicada diretamente em parágrafos, listas,
   citações e ênfases. Sobrescrever apenas a prosa, sem mudar metadados. */
.stage5-completion-modal .stage5-opening-content :is(p, li, blockquote, strong, em), .stage6-archive .stage6-context-document :is(p, li, blockquote, strong, em), .stage6-archive .archive-copy :is(p, li, blockquote, strong, em), .stage6-archive .record-content :is(p, li, blockquote, strong, em), .stage6-archive .attachment-content :is(p, li, blockquote, strong, em), .stage6-archive .stage6-additional-notes article :is(p, li, blockquote, strong, em), .print-modal .print-copy :is(p, li, blockquote, strong, em) {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif !important;
  letter-spacing: normal !important;
}


/* Inter Medium: mais corpo para a prosa, sem transformar em negrito os
   parágrafos. Subtítulos, metadados, ênfases e controles preservam a hierarquia. */
.stage5-completion-modal .stage5-opening-content :is(p, li, blockquote),
.stage6-archive .stage6-context-document :is(p, li, blockquote),
.stage6-archive .archive-copy :is(p, li, blockquote),
.stage6-archive .record-content :is(p, li, blockquote),
.stage6-archive .attachment-content :is(p, li, blockquote),
.stage6-archive .stage6-additional-notes article p,
.print-modal .print-copy p {
  font-weight: 500 !important;
}


/* REVERTER PAPEL CLARO SOMENTE NAS CAIXAS INDICADAS — 2026-09-19 */

/* Etapa 06: material histórico do arquivo volta ao fundo escuro original.
   Os registros e anexos recolhíveis não herdam este ajuste. */
.stage6-archive > .stage6-context-document {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 1px solid #493426 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #f0e9df !important;
  padding: 2px 0 16px !important;
}
.stage6-archive > .stage6-context-document .archive-copy,
.stage6-archive > .stage6-context-document .archive-copy :is(p, li, strong, em, blockquote) {
  color: #f0e9df !important;
}
.stage6-archive > .stage6-context-document .doc-meta,
.stage6-archive > .stage6-context-document .archive-sources {
  color: #bca68e !important;
}
.stage6-archive > .stage6-context-document .archive-sources {
  border-top-color: #493426 !important;
}
.stage6-archive > .stage6-context-document .archive-sources a {
  color: #d4a66d !important;
}

/* Etapa 06: as três anotações do APONTAMENTO ADICIONAL também voltam ao
   fundo escuro, preservando a divisão bronze e a fonte Inter Medium. */
.stage6-archive .stage6-additional-notes article {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(109, 86, 48, .35) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #f0e9df !important;
  padding: 16px 18px !important;
}
.stage6-archive .stage6-additional-notes article:last-child {
  border-bottom: 0 !important;
}
.stage6-archive .stage6-additional-notes article p,
.stage6-archive .stage6-additional-notes article p :is(strong, em) {
  color: #f0e9df !important;
}
.stage6-archive .stage6-additional-notes article span,
.stage6-archive .stage6-additional-notes article:last-child span {
  color: #c8a57c !important;
}
@media (max-width: 700px) {
  .stage6-archive .stage6-additional-notes article {
    padding: 16px 14px !important;
  }
}


/* INTER NAS INSTRUÇÕES E RESPOSTAS DAS ETAPAS 02–03 — 2026-09-19 */


/* ARQUIVO PARA IMPRESSÃO — RESTAURAR FUNDO ESCURO — 2026-09-19 */
/* Reverter apenas a antiga folha clara do modal de impressão.
   Fonte, tamanho e espaçamento permanecem como estão. */
.print-modal .print-copy {
  background: transparent !important;
  background-image: none !important;
  color: #e5d8c6 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.print-modal .print-copy :is(p, li, blockquote, strong, em) {
  color: #e5d8c6 !important;
}


/* ETAPA 05 — DUAS PARTES, LIMPAR BARALHO E AVISO DE APONTAMENTO — 2026-09-19 */


/* ETAPA 06 — CONTINUAR PARA A ADMISSÃO — 2026-09-19 */
/* A navegação é oferecida somente após o registro visual ser concluído.
   Manter o botão legível sem alterar o espelho nem a pista pulsante. */
#stageView .mirror-v2 > .mirror-stage-continue,
.stage6-archive > .stage6-archive-continue {
  display: block;
  width: min(100%, 480px);
  margin: 28px auto 8px;
  padding: 15px 18px;
  font: 700 12px/1.45 "IBM Plex Mono", monospace;
  letter-spacing: .055em;
  text-align: center;
  cursor: pointer;
}
#stageView .mirror-v2 > .mirror-stage-continue[hidden],
.stage6-archive > .stage6-archive-continue[hidden] {
  display: none !important;
}
.stage6-archive > .stage6-archive-continue {
  margin-top: 30px;
}


/* ETAPA 06 — CONTINUAR DISCRETO COMO OS CONTROLES DO ESPELHO — 2026-09-19 */
/* Mesmo acabamento de ATIVAR / DESATIVAR, com contorno bronze ligeiramente
   mais presente. Apenas os dois botões de navegação da Etapa 06. */
#stageView .mirror-v2 > .mirror-stage-continue,
.stage6-archive > .stage6-archive-continue {
  display: block;
  width: fit-content;
  max-width: 100%;
  min-height: 36px;
  margin: 20px auto 8px;
  padding: 9px 13px;
  border: 1px solid #a37b45 !important;
  border-radius: 3px;
  background: rgba(44, 31, 12, .3) !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #e5bd76 !important;
  font: 700 9px/1.55 "IBM Plex Mono", monospace !important;
  letter-spacing: .09em;
  text-align: center;
  text-transform: uppercase;
  filter: none !important;
  transform: none !important;
}
#stageView .mirror-v2 > .mirror-stage-continue:hover,
#stageView .mirror-v2 > .mirror-stage-continue:focus-visible,
.stage6-archive > .stage6-archive-continue:hover,
.stage6-archive > .stage6-archive-continue:focus-visible {
  border-color: #e5bd76 !important;
  background: rgba(55, 38, 18, .46) !important;
  color: #f7d391 !important;
  box-shadow: none !important;
  filter: none !important;
  outline: 1px solid rgba(229, 189, 118, .45);
  outline-offset: 2px;
}
#stageView .mirror-v2 > .mirror-stage-continue[hidden],
.stage6-archive > .stage6-archive-continue[hidden] {
  display: none !important;
}
.stage6-archive > .stage6-archive-continue {
  margin-top: 25px;
}


/* ETAPA 05 — REGISTRO FINAL LEGÍVEL E NAVEGAÇÃO DISCRETA — 2026-09-19 */
/* Ajuste exclusivo da confirmação da Correlação e da releitura da Etapa 05.
   A documentação e os demais modais do protocolo permanecem inalterados. */
.stage5-completion-modal {
  display: flex !important;
  align-items: flex-start;
  justify-content: center;
  overflow-x: hidden;
  overflow-y: auto !important;
  padding: 18px clamp(12px, 3vw, 28px) !important;
  box-sizing: border-box;
}
.stage5-completion-modal .stage5-completion-dialog {
  width: min(680px, 100%) !important;
  margin: auto 0;
  padding: 8px 0 !important;
  box-sizing: border-box;
}
.stage5-completion-modal .stage5-opening {
  box-sizing: border-box;
  background: linear-gradient(155deg, #221610, #160e0c 70%) !important;
  border: 1px solid #775336 !important;
  border-radius: 5px !important;
  color: #eee2d1 !important;
  box-shadow: none !important;
}
.stage5-completion-modal .stage5-opening {
  margin: 0 !important;
  padding: clamp(22px, 4vw, 34px) !important;
}
.stage5-completion-modal .stage5-opening > .stage5-opening-label {
  display: block;
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #d4a66d !important;
  font: 700 10px/1.5 "IBM Plex Mono", monospace !important;
  letter-spacing: .12em !important;
}
.stage5-completion-modal .stage5-opening > h3 {
  margin: 0 0 23px !important;
  color: #f0e3d1 !important;
  font: 600 clamp(25px, 4vw, 32px)/1.25 Georgia, "Times New Roman", serif !important;
  letter-spacing: normal !important;
}
.stage5-completion-modal .stage5-opening > p:not(.stage5-opening-label) {
  max-width: 65ch;
  margin: 0 0 14px !important;
  color: #eee0cd !important;
  font: 500 17px/1.65 "Inter", "Helvetica Neue", Arial, sans-serif !important;
  letter-spacing: normal !important;
}
.stage5-completion-modal .stage5-opening > p strong {
  color: #f5e6d1 !important;
  font: inherit !important;
  font-weight: 700 !important;
}
.stage5-completion-modal .stage5-opening > .stage5-conclusion-question {
  display: block;
  max-width: none !important;
  margin: 25px 0 0 !important;
  padding: 16px 18px !important;
  border: 0 !important;
  border-left: 3px solid #b1844c !important;
  border-top: 1px solid rgba(177, 132, 76, .37) !important;
  border-radius: 0 3px 3px 0;
  background: rgba(97, 57, 30, .16) !important;
  color: #f3d6a3 !important;
  font: italic 500 18px/1.6 Georgia, "Times New Roman", serif !important;
}
.stage5-completion-modal .stage5-completion-continue {
  display: block;
  width: fit-content !important;
  max-width: 100%;
  min-height: 37px;
  margin: 17px auto 0 !important;
  padding: 9px 14px !important;
  border: 1px solid #a37b45 !important;
  border-radius: 3px !important;
  background: rgba(44, 31, 12, .55) !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #e5bd76 !important;
  font: 700 10px/1.5 "IBM Plex Mono", monospace !important;
  letter-spacing: .075em !important;
  text-align: center;
  filter: none !important;
  transform: none !important;
}
.stage5-completion-modal .stage5-completion-continue:hover,
.stage5-completion-modal .stage5-completion-continue:focus-visible {
  border-color: #e5bd76 !important;
  background: rgba(70, 43, 22, .75) !important;
  color: #f7d391 !important;
  box-shadow: none !important;
  filter: none !important;
  outline: 1px solid rgba(229, 189, 118, .45);
  outline-offset: 2px;
}
/* Releitura disponível no início da Etapa 05 quando ela já foi concluída. */
@media (max-width: 600px) {
  .stage5-completion-modal {
    padding: 10px 12px !important;
  }
  .stage5-completion-modal .stage5-opening {
    padding: 22px 19px !important;
  }
  .stage5-completion-modal .stage5-opening > p:not(.stage5-opening-label) {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
  .stage5-completion-modal .stage5-opening > .stage5-conclusion-question {
    padding: 14px 13px !important;
    font-size: 17px !important;
  }
}


/* ETAPA 06 — DESTAQUES LEGÍVEIS NOS REGISTROS EM PAPEL — 2026-09-19 */
/* Os três trechos de ênfase (.stage6-attention) aparecem dentro dos
   registros abertos em papel claro. O CSS original usa texto marfim,
   que perde contraste nesse fundo. Usar bronze escuro, sem alterar
   destaques sobre fundo escuro, a pista do espelho ou os demais documentos. */
.stage6-archive .record-content .archive-copy .stage6-attention,
.stage6-archive .attachment-content .archive-copy .stage6-attention {
  color: #764525 !important;
  background: rgba(172, 110, 53, .085) !important;
  border-left: 2px solid #b57e42 !important;
  border-radius: 0 2px 2px 0;
  padding: 3px 8px 3px 11px !important;
  font-weight: 700 !important;
}


/* TIPOGRAFIA POR FUNÇÃO — INSTRUÇÕES ESCURAS VS. DOCUMENTOS EM PAPEL — 2026-09-19 */
/* O protocolo fala em IBM Plex Mono: o mesmo desenho dos estados/rótulos.
   Não aplicar estas regras aos registros e anexos de fundo bege. */
.stage6-archive .stage6-additional-notes article p,
.stage6-archive .stage6-additional-notes article p :is(strong, em) {
  font-family: "IBM Plex Mono", "Courier New", monospace !important;
  letter-spacing: .005em !important;
}
.stage6-archive .stage6-additional-notes article p {
  font-size: 14px !important;
  line-height: 1.75 !important;
}
/* Textos narrativos sobre fundo ESCURO: serifas institucionais, em vez da
   Inter de documento. São seletores específicos para não mudar o papel. */
#dashboardView .stage6-archive > .stage6-context-document,
#dashboardView .stage6-archive > .stage6-context-document .archive-copy,
#dashboardView .stage6-archive > .stage6-context-document .archive-copy :is(p, li, strong, em),
.stage5-completion-modal .stage5-opening > p:not(.stage5-opening-label),
.stage5-completion-modal .stage5-opening > p:not(.stage5-opening-label) :is(strong, em) {
  font-family: Georgia, "Times New Roman", serif !important;
  letter-spacing: normal !important;
}
.print-modal .print-copy,
.print-modal .print-copy :is(p, li, strong, em) {
  font-family: Georgia, "Times New Roman", serif !important;
  letter-spacing: normal !important;
}
/* O material de leitura em papel preserva a Inter, inclusive se houver
   aninhamento de ênfases que herdariam regras de textos escuros. */
.stage6-archive :is(.record-content, .attachment-content) :is(p, li, blockquote, strong, em) {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif !important;
}


/* PROTOCOLO — HALO INTERNO APENAS ATRÁS DO MIOLO PREENCHIDO — 2026-09-19 */
/* O círculo externo preserva a borda bronze e o fundo escuro, sem luz
   fora dele. O recorte limita o brilho à área preta entre o miolo e o aro. */
#dashboardView .stage-row.done .stage-icon {
  overflow: hidden;
  box-shadow: none !important;
}
/* O miolo é o pseudo-elemento original (::after): iluminar somente ao
   redor dele, sem alterar seu tamanho, a textura ou a linha da timeline. */
#dashboardView .stage-row.done .stage-icon::after {
  box-shadow:
    inset 0 1px 1px rgba(242, 212, 166, .12),
    inset 0 -3px 7px rgba(17, 8, 5, .50),
    0 0 4px 1px rgba(202, 146, 78, .12),
    0 0 7px 2px rgba(202, 146, 78, .045) !important;
}
/* Disponível, aguardando informações e bloqueada: vazias, sem luz. */
#dashboardView .stage-row.available .stage-icon,
#dashboardView .stage-row.info-required .stage-icon,
#dashboardView .stage-row.locked .stage-icon {
  box-shadow: none !important;
}


/* ETAPA 04 — INTRODUÇÃO BREVE, INVENTÁRIO EXPANSÍVEL E ORIENTAÇÃO DO APARELHO — 2026-09-19 */


/* ETAPA 04 — SEIS REGISTROS NO PADRÃO DE CAIXAS DO PROTOCOLO — 2026-09-19 */
