.fechamento-v2 { --v2-red:#a6192e; --v2-ink:#20252b; --v2-muted:#66707a; --v2-line:#dfe3e7; max-width: 1500px; margin-inline:auto; }
.fechamento-v2__hero { display:flex; justify-content:space-between; gap:2rem; padding:1.6rem; color:#fff; background:linear-gradient(125deg,#6f101f,var(--v2-red)); border-radius:1rem; box-shadow:0 12px 30px rgba(83,12,24,.18); }
.fechamento-v2__hero h2 { margin:.2rem 0 .5rem; font-weight:750; }
.fechamento-v2__hero p { color:inherit; margin:0; max-width:850px; opacity:.9; }
.fechamento-v2__eyebrow { font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; opacity:.8; }
.fechamento-v2__badge { align-self:flex-start; white-space:nowrap; padding:.55rem .8rem; border:1px solid rgba(255,255,255,.35); border-radius:99px; background:rgba(255,255,255,.12); }
.fechamento-v2__panel { margin-top:1rem; padding:1.4rem; background:#fff; border:1px solid var(--v2-line); border-radius:1rem; box-shadow:0 5px 18px rgba(24,31,38,.06); }
.fechamento-v2__status { min-height:1.5rem; color:var(--v2-muted); }
.fechamento-v2__context { position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:1rem; margin-top:1rem; padding:.8rem 1rem; background:#fff; border:1px solid var(--v2-line); border-radius:.8rem; box-shadow:0 5px 15px rgba(0,0,0,.06); }
.fechamento-v2__context > div { flex:1; font-weight:650; }
.fechamento-v2__save-state { color:var(--v2-muted); font-size:.85rem; }
.fechamento-v2__save-state.is-dirty { color:#b25d00; }
.fechamento-v2__steps { display:grid; grid-template-columns:repeat(5,1fr); gap:.55rem; margin:1rem 0; }
.fechamento-v2__steps button { border:0; padding:.75rem .5rem; color:var(--v2-muted); background:#eef0f2; border-radius:.75rem; font-weight:650; }
.fechamento-v2__steps button span { display:inline-grid; place-items:center; width:1.65rem; height:1.65rem; margin-right:.45rem; border-radius:50%; background:#fff; }
.fechamento-v2__steps button.active { color:#fff; background:var(--v2-red); }
.fechamento-v2__steps button.active span { color:var(--v2-red); }
.fechamento-v2__section-title { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.2rem; padding-bottom:.8rem; border-bottom:1px solid var(--v2-line); }
.fechamento-v2__section-title span { color:var(--v2-red); font-size:.75rem; font-weight:700; text-transform:uppercase; }
.fechamento-v2__section-title h3 { margin:.15rem 0 0; color:var(--v2-ink); }
.fechamento-v2__section-title--sub { margin-top:1.4rem; }
.fechamento-v2 .form-control[readonly] { color:var(--bs-secondary-color); background-color:var(--bs-secondary-bg); opacity:1; cursor:default; }
.fechamento-v2__read-only { padding:1rem; background:#f5f6f7; border-radius:.65rem; color:var(--v2-muted); }
.fechamento-v2__event-context { padding:1rem; border:1px solid var(--v2-line); border-radius:.8rem; background:#f7f8f9; }
.fechamento-v2__event-context-title { display:flex; align-items:start; justify-content:space-between; gap:1rem; margin-bottom:.9rem; }
.fechamento-v2__event-context-title strong, .fechamento-v2__event-context-title small { display:block; }
.fechamento-v2__event-context-title small { margin-top:.2rem; color:var(--v2-muted); }
.fechamento-v2__event-context-title span { padding:.3rem .55rem; color:var(--v2-muted); border:1px solid var(--v2-line); border-radius:99px; background:#fff; font-size:.72rem; font-weight:700; text-transform:uppercase; }
.fechamento-v2__event-context-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:.65rem; margin:0; }
.fechamento-v2__event-context-grid > div { min-width:0; padding:.7rem; border:1px solid #e5e8eb; border-radius:.6rem; background:#fff; }
.fechamento-v2__event-context-grid dt { margin-bottom:.2rem; color:var(--v2-muted); font-size:.72rem; font-weight:700; text-transform:uppercase; }
.fechamento-v2__event-context-grid dd { margin:0; color:var(--v2-ink); font-weight:650; overflow-wrap:anywhere; }
.fechamento-v2__address-lookup { position:relative; z-index:5; }
.fechamento-v2__address-lookup:focus-within { z-index:1060; }
.fechamento-v2__address-results { position:absolute; z-index:1050; top:calc(100% + .35rem); right:0; left:0; max-height:min(24rem,45vh); overflow-y:auto; border-radius:var(--bs-border-radius); box-shadow:0 .75rem 1.5rem rgba(17,24,39,.18); }
@media (max-width:575.98px) {
  .fechamento-v2__address-actions { flex:0 0 100%; justify-content:flex-end; margin-top:.4rem; }
  .fechamento-v2__address-actions .btn:first-child { border-radius:var(--bs-border-radius) 0 0 var(--bs-border-radius); }
  .fechamento-v2__address-actions .btn:last-of-type { border-radius:0 var(--bs-border-radius) var(--bs-border-radius) 0; }
  .fechamento-v2__address-results { top:calc(1.5em + .5rem + 38px + .35rem); }
}
.fechamento-v2__location-map-wrapper { position:relative; overflow:hidden; border:1px solid var(--v2-line); border-radius:.8rem; background:#eef0f2; }
.fechamento-v2__location-map { height:32rem; min-height:320px; }
.fechamento-v2__location-map-overlay { position:absolute; inset:0; z-index:500; background:rgba(52,58,64,.38); }
.fechamento-v2__location-map-action { position:absolute; right:1.25rem; bottom:2.5rem; z-index:600; min-width:9rem; padding:.7rem 1.15rem; border-width:2px; font-size:1rem; font-weight:700; box-shadow:0 4px 12px rgba(0,0,0,.24); }
.fechamento-v2__flags { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:.7rem; }
.fechamento-v2__flags label { padding:.8rem; border:1px solid var(--v2-line); border-radius:.65rem; }
.fechamento-v2 h5.bg-danger { font-size:1rem; font-weight:700; letter-spacing:.02em; margin-bottom:.85rem; }
.fechamento-v2__question { margin:1rem 0; padding:1rem; border:1px solid var(--v2-line); border-radius:.75rem; }
.fechamento-v2__question legend { float:none; width:auto; margin:0 0 .75rem; padding:0; font-size:.95rem; font-weight:600; color:var(--v2-ink); }
.fechamento-v2__question label { display:inline-flex; align-items:center; gap:.45rem; margin:0 1.2rem .5rem 0; cursor:pointer; }
.fechamento-v2__conditional-title { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-top:.5rem; }
.fechamento-v2__conditional-title small { display:block; color:var(--v2-muted); font-weight:400; }
.fechamento-v2__conditional-title span { color:var(--v2-muted); font-size:.82rem; }
.fechamento-v2__choices { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:.6rem; margin-top:.75rem; }
.fechamento-v2__choice { display:flex; align-items:flex-start; gap:.55rem; padding:.75rem; border:1px solid var(--v2-line); border-radius:.65rem; cursor:pointer; }
.fechamento-v2__choice:has(input:checked) { color:#721323; border-color:var(--v2-red); background:#fff4f6; }
.fechamento-v2__choice input { margin-top:.2rem; }
.fechamento-v2__choices.is-invalid { padding:.3rem; border:1px solid #dc3545; border-radius:.7rem; }
.fechamento-v2__choice-group { margin:.9rem 0 0; padding:.85rem; border:1px solid var(--v2-line); border-radius:.7rem; }
.fechamento-v2__choice-group legend { float:none; width:auto; margin:0; padding:0 .3rem; color:var(--v2-muted); font-size:.86rem; font-weight:700; }
.fechamento-v2__record { margin:.8rem 0; padding:1rem; border:1px solid var(--v2-line); border-left:4px solid var(--v2-red); border-radius:.7rem; background:#fff; }
.fechamento-v2__person-nav { position:sticky; top:4.4rem; z-index:15; display:flex; width:99%; gap:.5rem; margin:0 auto 1rem; padding:.65rem; overflow-x:auto; border:1px solid var(--v2-line); border-radius:.75rem; background:rgba(255,255,255,.97); box-shadow:0 4px 12px rgba(24,31,38,.08); }
.fechamento-v2__person-nav .btn { display:inline-flex; align-items:center; gap:.45rem; flex:0 0 auto; }
.fechamento-v2__person-nav .btn > span:first-child { display:grid; place-items:center; min-width:1.4rem; height:1.4rem; border-radius:50%; background:rgba(0,0,0,.08); font-size:.72rem; font-weight:800; }
.fechamento-v2__person-nav-current { border-width:2px; box-shadow:0 0 0 .18rem rgba(32,37,43,.12); font-weight:700; }
.fechamento-v2__person-card { margin:.8rem 0; overflow:hidden; border:1px solid var(--v2-line); border-left:4px solid var(--v2-red); border-radius:.7rem; scroll-margin-top:9rem; box-shadow:0 2px 8px rgba(24,31,38,.04); }
.fechamento-v2__person-card-header { display:flex; align-items:stretch; background:#fff; }
.fechamento-v2__person-card .accordion-button { min-width:0; gap:.75rem; box-shadow:none; background:#fff; }
.fechamento-v2__person-card .accordion-button:not(.collapsed) { color:var(--v2-ink); background:#fff7f8; }
.fechamento-v2__person-card--valid .accordion-button { color:#175c38; background:#f1fbf5; }
.fechamento-v2__person-card--valid .accordion-button:not(.collapsed) { color:#124b2e; background:#e6f7ed; }
.fechamento-v2__person-card .accordion-button::after { display:none; }
.fechamento-v2__person-chevron { flex:0 0 auto; margin-left:.15rem; transition:transform .2s ease; }
.fechamento-v2__person-card .accordion-button:not(.collapsed) .fechamento-v2__person-chevron { transform:rotate(180deg); }
.fechamento-v2__person-number { display:grid; place-items:center; flex:0 0 auto; width:2rem; height:2rem; color:#fff; border-radius:50%; background:var(--v2-red); font-weight:800; }
.fechamento-v2__person-title { min-width:0; flex:1; text-align:left; }
.fechamento-v2__person-title strong, .fechamento-v2__person-title small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.fechamento-v2__person-title small { margin-top:.15rem; color:var(--v2-muted); font-weight:400; }
.fechamento-v2__person-remove { align-self:center; flex:0 0 auto; margin-right:1rem; }
.fechamento-v2__person-card .accordion-body { padding:1rem 1.25rem 1.25rem; border-top:1px solid var(--v2-line); background:#fff; }
.fechamento-v2__functional-block { margin-top:1.25rem; padding:1.25rem; border:1px solid var(--v2-line); border-radius:.8rem; background:#fbfbfc; box-shadow:0 1px 3px rgba(0,0,0,.02); }
.fechamento-v2__functional-block h4 { margin:0 0 1rem; color:var(--v2-ink); font-size:1rem; }
.fechamento-v2__sub-block { margin-top:1.25rem; padding-top:1.1rem; border-top:1px solid var(--v2-line); }
.fechamento-v2__functional-layout,
.fechamento-v2__functional-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:1rem; align-items:start; }
.fechamento-v2__functional-section { grid-column:span var(--v2-section-col,12); min-width:0; }
.fechamento-v2__functional-section.fechamento-v2__sub-block { margin-top:0; padding-top:0; border-top:0; }
.fechamento-v2__functional-section > p { padding:.55rem .75rem; border-radius:.35rem; background:#f0f1f3; }
.fechamento-v2__field { grid-column:span var(--v2-field-col,12); min-width:0; }
.fechamento-v2__functional-grid label.fechamento-v2__field { display:flex; flex-direction:column; gap:.25rem; color:var(--v2-muted); font-size:.82rem; }
.fechamento-v2__field .invalid-feedback { margin-top:0; }
.fechamento-v2__field:has(.is-invalid) .invalid-feedback { display:block; }
.fechamento-v2__record-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:.8rem; }
.fechamento-v2__record-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:.75rem; }
.fechamento-v2__record-grid label { display:flex; flex-direction:column; gap:.25rem; color:var(--v2-muted); font-size:.82rem; }
.fechamento-v2__person-relations { margin:0; }
.fechamento-v2__person-block { padding-top:1rem; margin-top:1rem; border-top:1px dashed var(--v2-line); }
.fechamento-v2__person-block:first-child { padding-top:0; margin-top:0; border-top:0; }
.fechamento-v2__person-block h5 { margin:0 0 .85rem; font-size:1rem; font-weight:700; }
.fechamento-v2__person-block .row > label { display:flex; flex-direction:column; gap:.25rem; color:var(--v2-muted); font-size:.82rem; }
.fechamento-v2__body-help { margin:.3rem 0 .8rem; color:var(--v2-muted); font-size:.84rem; }
.fechamento-v2__body-editor { display:grid; grid-template-columns:minmax(260px,360px) minmax(300px,1fr); gap:1rem; align-items:start; }
.fechamento-v2__body-map { position:relative; width:65%; max-width:340px; min-width:210px; aspect-ratio:820/1894; margin-inline:auto; border:1px solid var(--v2-line); border-radius:.8rem; background:linear-gradient(180deg,#f7f8f9,#fff); overflow:hidden; }
.fechamento-v2__body-silhouette { position:absolute; inset:2.5% 8%; width:84%; height:95%; object-fit:contain; pointer-events:none; user-select:none; }
.fechamento-v2__body-part { position:absolute; inset:0; z-index:2; padding:0; border:0; background:rgba(166,25,46,0); -webkit-mask:url('/img/fechamento-v2/corpo-humano-frontal.png') center/84% auto no-repeat; mask:url('/img/fechamento-v2/corpo-humano-frontal.png') center/84% auto no-repeat; transition:background .15s; }
.fechamento-v2__body-part:hover { background:rgba(166,25,46,.28); }
.fechamento-v2__body-part.active { background:rgba(166,25,46,.88); }
.fechamento-v2__body-part:focus-visible { outline:3px solid #0d6efd; outline-offset:-3px; }
.fechamento-v2__body-part--cranio { clip-path:polygon(39% 8.5%,61% 8.5%,62% 11.7%,38% 11.7%); }
.fechamento-v2__body-part--face { clip-path:polygon(38% 11.7%,62% 11.7%,61% 17.1%,39% 17.1%); }
.fechamento-v2__body-part--pescoco { clip-path:polygon(42% 17.1%,58% 17.1%,66% 20.2%,34% 20.2%); }
.fechamento-v2__body-part--torax { clip-path: polygon(34% 20.2%,66% 20.2%,75% 23%,65.5% 34%,34.5% 34%,25% 23%); }
.fechamento-v2__body-part--abdomen { clip-path:polygon(33% 32.5%,68% 32.5%,66% 49%,34% 49%); }
.fechamento-v2__body-part--mse { clip-path:polygon(7% 17%,35% 17%,32% 34%,24% 55%,3% 58%,12% 39%); }
.fechamento-v2__body-part--msd { clip-path:polygon(65% 17%,93% 17%,88% 39%,97% 58%,76% 55%,68% 34%); }
.fechamento-v2__body-part--mie { clip-path:polygon(25% 46%,51% 46%,49% 98%,25% 98%); }
.fechamento-v2__body-part--mid { clip-path:polygon(49% 46%,75% 46%,75% 98%,51% 98%); }
.fechamento-v2__body-part--dorso { inset:21.5% 3% auto auto; z-index:4; width:18%; height:8%; border:2px solid #20252b; border-radius:.6rem; background:rgba(255,255,255,.9); -webkit-mask:none; mask:none; clip-path:none; }
.fechamento-v2__body-part--dorso:hover { border-color:var(--v2-red); background:#fff4f6; }
.fechamento-v2__body-part--dorso.active { border-color:var(--v2-red); background:var(--v2-red); box-shadow:0 4px 12px rgba(166,25,46,.25); }
.fechamento-v2__body-label { position:absolute; z-index:3; display:flex; align-items:center; justify-content:center; min-width:3.2rem; min-height:1.45rem; padding:.2rem .35rem; color:#23282d; border:0; background:transparent; font-size:clamp(.55rem,1.6vw,.68rem); font-weight:800; line-height:1; text-shadow:0 1px 2px rgba(255,255,255,.95); pointer-events:none; }
.fechamento-v2__body-label.active { color:white; text-shadow:0 1px 2px rgba(0,0,0,.75); }
.fechamento-v2__body-label--dorso.active { color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.75); }
.fechamento-v2__body-label strong { position:absolute; top:-.5rem; right:-.45rem; display:grid; place-items:center; min-width:1.25rem; height:1.25rem; padding:0 .25rem; color:#fff; border:2px solid #fff; border-radius:99px; background:#343a40; font-size:.64rem; }
.fechamento-v2__body-label--cranio { left:38%; top:10.1%; width:24%; transform:translateY(-50%); }
.fechamento-v2__body-label--face { left:39%; top:14.5%; width:22%; transform:translateY(-50%); }
.fechamento-v2__body-label--pescoco { left:40%; top:18.8%; width:20%; transform:translateY(-50%); }
.fechamento-v2__body-label--torax { left:39%; top:25%; width:22%; }
.fechamento-v2__body-label--abdomen { left:36%; top:37%; width:28%; }
.fechamento-v2__body-label--dorso { right:3%; top:25.5%; z-index:5; width:18%; min-width:0; padding-inline:0; transform:translateY(-50%); }
.fechamento-v2__body-label--mse { left:16%; top:34%; width:18%; }
.fechamento-v2__body-label--msd { right:16%; top:34%; width:18%; }
.fechamento-v2__body-label--mie { left:27%; top:69%; width:18%; }
.fechamento-v2__body-label--mid { right:27%; top:69%; width:18%; }
.fechamento-v2__injury-picker { margin:0; padding:1rem; border:1px solid var(--v2-line); border-radius:.8rem; }
.fechamento-v2__injury-picker.is-disabled { background:#f7f8f9; opacity:.72; }
.fechamento-v2__injury-picker.is-disabled .fechamento-v2__choice { cursor:not-allowed; }
.fechamento-v2__injury-picker legend { float:none; width:auto; margin:0; padding:0 .35rem; font-size:.9rem; }
.fechamento-v2__injury-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:.5rem; }
.fechamento-v2__injury-summary { margin-top:1rem; padding:.9rem; border:1px solid var(--v2-line); border-radius:.7rem; background:#f7f8f9; }
.fechamento-v2__injury-tags { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.65rem; }
.fechamento-v2__injury-tag { display:inline-flex; align-items:center; gap:.5rem; padding:.4rem .6rem; color:#721323; border:1px solid #e3aab3; border-radius:99px; background:#fff4f6; font-size:.78rem; }
.fechamento-v2__injury-tag:hover { border-color:var(--v2-red); }
.fechamento-v2__collection-empty { padding:1rem; color:var(--v2-muted); text-align:center; background:#f7f8f9; border-radius:.6rem; }
.fechamento-v2__collection-block { margin-top:1rem; }
.fechamento-v2__collection-block > header { display:flex; justify-content:space-between; align-items:center; }
.fechamento-v2__collection-block h4 { margin:0; font-size:1rem; }
.fechamento-v2__summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:.75rem; }
.fechamento-v2__summary > div { padding:1rem; background:#f5f6f7; border-radius:.7rem; }
.fechamento-v2__summary strong { display:block; font-size:1.35rem; color:var(--v2-red); }
.fechamento-v2__actions { display:flex; justify-content:space-between; padding:1rem 0; }

@media (max-width:991.98px) {
  .fechamento-v2__functional-section,
  .fechamento-v2__field { grid-column:1 / -1; }
}

/* ==========================================================================
   Modo Escuro (data-bs-theme="dark")
   Integrado com os tokens e paleta do Bootstrap e do e193_dark
   ========================================================================== */
[data-bs-theme="dark"] .fechamento-v2 {
  --v2-red: #c92a3e;
  --v2-ink: #f5f5f5;
  --v2-muted: #b6bac3;
  --v2-line: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__hero {
  background: linear-gradient(125deg, #4d0a15, #851323);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .45);
}

[data-bs-theme="dark"] .fechamento-v2__panel {
  background: #1d1f24;
  border-color: #3f424a;
  color: #f5f5f5;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .35);
}

[data-bs-theme="dark"] .fechamento-v2__context {
  background: #1d1f24;
  border-color: #3f424a;
  color: #f5f5f5;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .35);
}

[data-bs-theme="dark"] .fechamento-v2__save-state.is-dirty {
  color: #ffc107;
}

[data-bs-theme="dark"] .fechamento-v2__steps button {
  background: #24262d;
  color: #b6bac3;
  border: 1px solid #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__steps button span {
  background: #1d1f24;
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__steps button.active {
  background: #b52a38;
  color: #fff;
  border-color: #d84b59;
}

[data-bs-theme="dark"] .fechamento-v2__steps button.active span {
  background: #fff;
  color: #b52a38;
}

[data-bs-theme="dark"] .fechamento-v2__read-only {
  background: #24262d;
  border: 1px solid #3f424a;
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__event-context {
  background: #1a1c22;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__event-context-title span {
  background: #24262d;
  border-color: #3f424a;
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__event-context-grid > div {
  background: #24262d;
  border-color: #3f424a;
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2__functional-block {
  background: #24262d;
  border-color: #3f424a;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .25);
}

[data-bs-theme="dark"] .fechamento-v2__sub-block {
  border-top-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__functional-section > p {
  background: #2f3238;
}

[data-bs-theme="dark"] .fechamento-v2 h5.bg-danger {
  background-color: #b52a38 !important;
  color: #fff !important;
  border: 1px solid #d84b59;
}

[data-bs-theme="dark"] .fechamento-v2__question {
  background: #24262d;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__flags label {
  background: #24262d;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__choice {
  background: #24262d;
  border-color: #3f424a;
  color: #dee2e6;
}

[data-bs-theme="dark"] .fechamento-v2__choice:hover {
  background: #2c3038;
  border-color: #555a64;
}

[data-bs-theme="dark"] .fechamento-v2__choice:has(input:checked) {
  color: #ffd9dc;
  border-color: #d84b59;
  background: #441920;
}

[data-bs-theme="dark"] .fechamento-v2__choice-group {
  background: #1f2228;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__choice-group legend {
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__record {
  background: #1f2228;
  border-color: #3f424a;
  border-left-color: #d84b59;
}

[data-bs-theme="dark"] .fechamento-v2__person-nav {
  background: rgba(29, 31, 36, .97);
  border-color: #3f424a;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .4);
}

[data-bs-theme="dark"] .fechamento-v2__person-nav .btn > span:first-child {
  background: rgba(255, 255, 255, .15);
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2__person-nav-current {
  box-shadow: 0 0 0 .18rem rgba(255, 255, 255, .2);
}

[data-bs-theme="dark"] .fechamento-v2__person-card {
  background: #1d1f24;
  border-color: #3f424a;
  border-left-color: #d84b59;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

[data-bs-theme="dark"] .fechamento-v2__person-card-header {
  background: #1d1f24;
}

[data-bs-theme="dark"] .fechamento-v2__person-card .accordion-button {
  background: #1d1f24;
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2__person-card .accordion-button:not(.collapsed) {
  color: #ffd9dc;
  background: #2f171b;
}

[data-bs-theme="dark"] .fechamento-v2__person-card--valid .accordion-button {
  color: #bcebd0;
  background: #173127;
}

[data-bs-theme="dark"] .fechamento-v2__person-card--valid .accordion-button:not(.collapsed) {
  color: #d7f5e4;
  background: #1d3b2f;
}

[data-bs-theme="dark"] .fechamento-v2__person-card .accordion-body {
  background: #1d1f24;
  border-top-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__person-number {
  background: #b52a38;
}

[data-bs-theme="dark"] .fechamento-v2__person-block {
  border-top-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__body-map {
  background: linear-gradient(180deg, #1b1d22, #24262d);
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__body-part:hover {
  background: rgba(201, 42, 62, .38);
}

[data-bs-theme="dark"] .fechamento-v2__body-part.active {
  background: rgba(201, 42, 62, .88);
}

[data-bs-theme="dark"] .fechamento-v2__body-part--dorso {
  border-color: #4c4f52;
  background: rgba(36, 38, 45, .95);
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2__body-part--dorso:hover {
  border-color: #d84b59;
  background: #441920;
}

[data-bs-theme="dark"] .fechamento-v2__body-part--dorso.active {
  border-color: #d84b59;
  background: #b52a38;
  box-shadow: 0 4px 12px rgba(216, 75, 89, .35);
}

[data-bs-theme="dark"] .fechamento-v2__body-label {
  color: #f5f5f5;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .9);
}

[data-bs-theme="dark"] .fechamento-v2__body-label.active {
  color: #fff;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .9);
}

[data-bs-theme="dark"] .fechamento-v2__body-label strong {
  background: #b52a38;
  border-color: #1b1d22;
  color: #fff;
}

[data-bs-theme="dark"] .fechamento-v2__injury-picker {
  background: #24262d;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__injury-picker.is-disabled {
  background: #1b1d22;
  opacity: .65;
}

[data-bs-theme="dark"] .fechamento-v2__injury-summary {
  background: #1f2228;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__injury-tag {
  color: #ffd9dc;
  background: #441920;
  border-color: #d84b59;
}

[data-bs-theme="dark"] .fechamento-v2__injury-tag:hover {
  border-color: #ff7b87;
  color: #fff;
}

[data-bs-theme="dark"] .fechamento-v2__location-map-wrapper {
  background: #1b1d22;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__location-map-overlay {
  background: rgba(18, 19, 23, .65);
}

[data-bs-theme="dark"] .fechamento-v2__collection-empty {
  background: #24262d;
  border: 1px dashed #3f424a;
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__summary > div {
  background: #24262d;
  border: 1px solid #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2__summary > div span {
  color: #b6bac3;
}

[data-bs-theme="dark"] .fechamento-v2__summary strong {
  color: #ff6b7d;
}

[data-bs-theme="dark"] .fechamento-v2 .card {
  background-color: #24262d;
  border-color: #3f424a;
}

[data-bs-theme="dark"] .fechamento-v2 .card-body {
  background-color: #24262d;
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2 .list-group-item {
  background-color: #24262d;
  border-color: #3f424a;
  color: #f5f5f5;
}

[data-bs-theme="dark"] .fechamento-v2 .list-group-item-action:hover,
[data-bs-theme="dark"] .fechamento-v2 .list-group-item-action:focus {
  background-color: #2c3038;
  color: #fff;
}

[data-bs-theme="dark"] .fechamento-v2 .badge.text-bg-light {
  background-color: #343a40 !important;
  color: #e9ecef !important;
}

.fechamento-v2__autocomplete { position: relative; }
.fechamento-v2__autocomplete-menu { position: absolute; z-index: 1080; top: 100%; right: 0; left: 0; max-height: 18rem; overflow-y: auto; box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15); }
.fechamento-v2__autocomplete-menu .list-group-item { display: flex; flex-direction: column; align-items: flex-start; gap: .15rem; }
.fechamento-v2__autocomplete-menu small { opacity: .72; }

.fechamento-v2__warning-modal .modal-content { overflow:hidden; border:0; border-radius:1rem; box-shadow:0 1rem 3rem rgba(24,31,38,.24); }
.fechamento-v2__warning-modal .modal-header { justify-content:flex-start; gap:.75rem; padding:1.1rem 1.25rem; border-bottom-color:var(--v2-line,#dfe3e7); }
.fechamento-v2__warning-modal .modal-title { color:var(--v2-ink,#20252b); font-weight:750; }
.fechamento-v2__warning-modal .btn-close { margin-left:auto; }
.fechamento-v2__warning-modal .modal-body { padding:1.25rem; color:var(--v2-ink,#20252b); overflow-wrap:anywhere; }
.fechamento-v2__warning-modal .modal-footer { padding:0 1.25rem 1.25rem; border:0; }
.fechamento-v2__warning-icon { display:grid; place-items:center; flex:0 0 auto; width:2.25rem; height:2.25rem; color:#fff; border-radius:50%; background:var(--v2-red,#a6192e); }
.fechamento-v2__confirmation-modal .modal-content { overflow:hidden; border:0; border-radius:1rem; box-shadow:0 1rem 3rem rgba(24,31,38,.24); }
.fechamento-v2__confirmation-modal .modal-header { justify-content:flex-start; gap:.75rem; padding:1.1rem 1.25rem; border-bottom-color:var(--v2-line,#dfe3e7); }
.fechamento-v2__confirmation-modal .modal-title { color:var(--v2-ink,#20252b); font-weight:750; }
.fechamento-v2__confirmation-modal .btn-close { margin-left:auto; }
.fechamento-v2__confirmation-modal .modal-body { padding:1.25rem; color:var(--v2-ink,#20252b); }
.fechamento-v2__confirmation-modal .modal-footer { padding:0 1.25rem 1.25rem; border:0; }
.fechamento-v2__confirmation-modal ul { padding-left:1.25rem; font-weight:650; }
.fechamento-v2__confirmation-modal li + li { margin-top:.35rem; }

[data-bs-theme="dark"] .fechamento-v2__warning-modal .modal-content { background:#24262d; }
[data-bs-theme="dark"] .fechamento-v2__warning-modal .modal-header { border-bottom-color:#3f424a; }
[data-bs-theme="dark"] .fechamento-v2__warning-modal .modal-title,
[data-bs-theme="dark"] .fechamento-v2__warning-modal .modal-body { color:#f5f5f5; }
[data-bs-theme="dark"] .fechamento-v2__confirmation-modal .modal-content { background:#24262d; }
[data-bs-theme="dark"] .fechamento-v2__confirmation-modal .modal-header { border-bottom-color:#3f424a; }
[data-bs-theme="dark"] .fechamento-v2__confirmation-modal .modal-title,
[data-bs-theme="dark"] .fechamento-v2__confirmation-modal .modal-body { color:#f5f5f5; }

@media (max-width: 760px) { .fechamento-v2__hero { flex-direction:column; } .fechamento-v2__steps { grid-template-columns:1fr; } .fechamento-v2__steps button { text-align:left; } .fechamento-v2__context { flex-wrap:wrap; } .fechamento-v2__person-nav { position:static; } .fechamento-v2__person-card .accordion-button { padding-inline:.75rem; } .fechamento-v2__person-card .badge { display:none; } .fechamento-v2__person-remove { margin-right:.5rem; } .fechamento-v2__body-editor { grid-template-columns:1fr; } .fechamento-v2__body-map { width:min(65%,260px); } .fechamento-v2__location-map { height:24rem; } .fechamento-v2__warning-modal .modal-dialog { margin:.75rem; } }
