/*
 * MobilizaPro LAB — Emissão — Crachá — Fase 1 (esboço)
 * Escopo isolado: menu, fila, botão e modal somente leitura.
 * O modelo visual Samarco não é redesenhado por este arquivo.
 */

.mp-cracha-f1 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  animation: mp-cracha-f1-enter 220ms ease-out both;
}

@keyframes mp-cracha-f1-enter {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

.mp-cracha-f1__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.mp-cracha-f1__header h3,
.mp-cracha-f1__dialog-header h3 {
  margin: 0.2rem 0 0;
  color: var(--text-primary, #e5eefb);
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.mp-cracha-f1__header h3 { font-size: 1.55rem; }
.mp-cracha-f1__dialog-header h3 { font-size: 1.35rem; }

.mp-cracha-f1__header p,
.mp-cracha-f1__dialog-header p {
  margin: 0.25rem 0 0;
  color: var(--text-muted, #8aa4c7);
  font-size: 0.78rem;
}

.mp-cracha-f1__eyebrow {
  color: var(--accent, #60a5fa);
  font-size: 0.65rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mp-cracha-f1__counters {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.mp-cracha-f1__counter,
.mp-cracha-f1__model,
.mp-cracha-f1__status {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.mp-cracha-f1__counter { padding: 0.45rem 0.72rem; }
.mp-cracha-f1__counter--pending {
  color: #fcd34d;
  background: rgba(245, 158, 11, 0.10);
  border-color: rgba(245, 158, 11, 0.25);
}
.mp-cracha-f1__counter--done {
  color: #86efac;
  background: rgba(34, 197, 94, 0.10);
  border-color: rgba(34, 197, 94, 0.25);
}

.mp-cracha-f1__notice {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(96, 165, 250, 0.27);
  border-radius: 0.9rem;
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.12), rgba(15, 23, 42, 0.76));
}

.mp-cracha-f1__notice > .material-symbols-outlined {
  color: var(--accent, #60a5fa);
  font-size: 1.45rem;
}

.mp-cracha-f1__notice div {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.mp-cracha-f1__notice strong { color: var(--text-primary, #e5eefb); font-size: 0.8rem; }
.mp-cracha-f1__notice span { color: var(--text-muted, #8aa4c7); font-size: 0.72rem; }

.mp-cracha-f1__toolbar {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 0.85rem;
  flex-wrap: wrap;
}

.mp-cracha-f1__search {
  min-width: min(100%, 28rem);
  flex: 1 1 28rem;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-height: 2.85rem;
  padding: 0 0.9rem;
  border: 1px solid rgba(96, 165, 250, 0.30);
  border-radius: 0.85rem;
  background: linear-gradient(180deg, rgba(23, 32, 51, 0.98), rgba(11, 22, 40, 0.98));
}

.mp-cracha-f1__search:focus-within {
  border-color: var(--accent, #60a5fa);
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.14);
}

.mp-cracha-f1__search .material-symbols-outlined { color: var(--text-muted, #8aa4c7); font-size: 1.2rem; }
.mp-cracha-f1__search input {
  width: 100%;
  border: 0;
  outline: 0;
  padding: 0;
  background: transparent;
  color: var(--text-primary, #e5eefb);
  font-size: 0.8rem;
  box-shadow: none;
}
.mp-cracha-f1__search input::placeholder { color: rgba(138, 164, 199, 0.72); }

.mp-cracha-f1__selected-model {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 11rem;
  padding: 0.55rem 0.9rem;
  border: 1px solid var(--border, #1e3a5f);
  border-radius: 0.85rem;
  background: rgba(15, 23, 42, 0.78);
}
.mp-cracha-f1__selected-model span { color: var(--text-muted, #8aa4c7); font-size: 0.61rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; }
.mp-cracha-f1__selected-model strong { color: var(--text-primary, #e5eefb); font-size: 0.84rem; }

.mp-cracha-f1__table-shell {
  overflow: auto;
  border: 1px solid var(--border, #1e3a5f);
  border-radius: 1rem;
  background: var(--bg-card, rgba(15, 23, 42, 0.78));
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.18);
}

.mp-cracha-f1__table {
  width: 100%;
  min-width: 1080px;
  border-collapse: collapse;
  text-align: left;
}

.mp-cracha-f1__table thead { background: rgba(23, 32, 51, 0.96); }
.mp-cracha-f1__table th {
  padding: 0.85rem 1rem;
  color: var(--text-muted, #8aa4c7);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.mp-cracha-f1__table td {
  padding: 0.95rem 1rem;
  border-top: 1px solid rgba(51, 65, 85, 0.74);
  color: var(--text-secondary, #cbdcf2);
  font-size: 0.76rem;
  vertical-align: middle;
}
.mp-cracha-f1__row { transition: background 160ms ease; }
.mp-cracha-f1__row:hover { background: rgba(30, 41, 59, 0.62); }

.mp-cracha-f1__person { min-width: 17rem; }
.mp-cracha-f1__person strong { display: block; color: var(--text-primary, #e5eefb); font-size: 0.8rem; line-height: 1.25; }
.mp-cracha-f1__person span { display: block; margin-top: 0.25rem; color: var(--text-muted, #8aa4c7); font-size: 0.64rem; }
.mp-cracha-f1__function { display: block; max-width: 18rem; color: var(--text-secondary, #cbdcf2); font-size: 0.7rem; text-transform: uppercase; }
.mp-cracha-f1__mono { color: #bfdbfe; font-family: 'JetBrains Mono', monospace; font-size: 0.71rem; }
.mp-cracha-f1__status { padding: 0.42rem 0.6rem; color: #fcd34d; background: rgba(245, 158, 11, 0.09); border-color: rgba(245, 158, 11, 0.23); }
.mp-cracha-f1__status .material-symbols-outlined { font-size: 0.9rem; }
.mp-cracha-f1__model { padding: 0.42rem 0.62rem; color: #93c5fd; background: rgba(59, 130, 246, 0.10); border-color: rgba(59, 130, 246, 0.26); }
.mp-cracha-f1__action-cell { text-align: right; }

.mp-cracha-f1__review-button,
.mp-cracha-f1__close-button,
.mp-cracha-f1__icon-button {
  border: 0;
  cursor: pointer;
  font: inherit;
  transition: transform 140ms ease, filter 140ms ease, background 140ms ease, border-color 140ms ease;
}

.mp-cracha-f1__review-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 2.25rem;
  padding: 0.55rem 0.78rem;
  border-radius: 0.68rem;
  background: var(--accent, #60a5fa);
  color: #07111f;
  font-size: 0.7rem;
  font-weight: 900;
}
.mp-cracha-f1__review-button:hover { filter: brightness(1.08); transform: translateY(-1px); }
.mp-cracha-f1__review-button:active { transform: translateY(0); }
.mp-cracha-f1__review-button .material-symbols-outlined { font-size: 1rem; }

.mp-cracha-f1__empty {
  min-height: 12rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  color: var(--text-muted, #8aa4c7);
  text-align: center;
}
.mp-cracha-f1__empty .material-symbols-outlined { font-size: 2rem; color: rgba(96, 165, 250, 0.7); }
.mp-cracha-f1__empty strong { color: var(--text-secondary, #cbdcf2); }
.mp-cracha-f1__empty span:last-child { font-size: 0.72rem; }

body.mp-cracha-f1--dialog-open { overflow: hidden; }

.mp-cracha-f1__dialog-backdrop {
  position: fixed;
  inset: 0;
  z-index: 180;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(0, 0, 0, 0.82);
  backdrop-filter: blur(8px);
  animation: mp-cracha-f1-fade 160ms ease-out both;
}

@keyframes mp-cracha-f1-fade { from { opacity: 0; } to { opacity: 1; } }

.mp-cracha-f1__dialog {
  width: min(1180px, 100%);
  max-height: min(92vh, 900px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(96, 165, 250, 0.28);
  border-radius: 1.15rem;
  background: #0b1628;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.62);
}

.mp-cracha-f1__dialog-header,
.mp-cracha-f1__dialog-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.15rem;
  background: rgba(15, 23, 42, 0.96);
}
.mp-cracha-f1__dialog-header { border-bottom: 1px solid var(--border, #1e3a5f); }
.mp-cracha-f1__dialog-footer { border-top: 1px solid var(--border, #1e3a5f); }
.mp-cracha-f1__dialog-footer > span { color: var(--text-muted, #8aa4c7); font-size: 0.7rem; }

.mp-cracha-f1__icon-button {
  width: 2.4rem;
  height: 2.4rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--border, #1e3a5f);
  border-radius: 999px;
  background: transparent;
  color: var(--text-muted, #8aa4c7);
}
.mp-cracha-f1__icon-button:hover { background: rgba(255,255,255,0.05); color: var(--text-primary, #e5eefb); }

.mp-cracha-f1__dialog-body {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(240px, 0.62fr) minmax(500px, 1.55fr);
  gap: 1rem;
  padding: 1rem;
  overflow: auto;
}

.mp-cracha-f1__summary-card,
.mp-cracha-f1__model-card {
  border: 1px solid var(--border, #1e3a5f);
  border-radius: 0.9rem;
  background: rgba(15, 23, 42, 0.72);
}
.mp-cracha-f1__summary-card { padding: 1rem; }
.mp-cracha-f1__summary-card h4,
.mp-cracha-f1__model-card h4 { margin: 0; color: var(--text-primary, #e5eefb); font-family: 'Outfit', sans-serif; font-size: 0.92rem; }
.mp-cracha-f1__summary-card dl { margin: 0.85rem 0 0; display: grid; gap: 0.65rem; }
.mp-cracha-f1__summary-card dl > div { padding-bottom: 0.6rem; border-bottom: 1px solid rgba(51, 65, 85, 0.65); }
.mp-cracha-f1__summary-card dt { color: var(--text-muted, #8aa4c7); font-size: 0.59rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.mp-cracha-f1__summary-card dd { margin: 0.2rem 0 0; color: var(--text-primary, #e5eefb); font-size: 0.76rem; font-weight: 700; overflow-wrap: anywhere; }

.mp-cracha-f1__read-only-warning {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
  padding: 0.7rem;
  border: 1px solid rgba(245, 158, 11, 0.24);
  border-radius: 0.7rem;
  background: rgba(245, 158, 11, 0.08);
  color: #fcd34d;
  font-size: 0.68rem;
}
.mp-cracha-f1__read-only-warning .material-symbols-outlined { font-size: 1rem; }

.mp-cracha-f1__model-card { padding: 0.8rem; }
.mp-cracha-f1__model-card-title { display: flex; justify-content: space-between; align-items: flex-start; gap: 0.75rem; margin-bottom: 0.65rem; }
.mp-cracha-f1__model-card-title p { margin: 0.2rem 0 0; color: var(--text-muted, #8aa4c7); font-size: 0.66rem; }
.mp-cracha-f1__model-card-title > span { padding: 0.35rem 0.55rem; border: 1px solid rgba(34, 197, 94, 0.25); border-radius: 999px; color: #86efac; background: rgba(34, 197, 94, 0.08); font-size: 0.59rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }

.mp-cracha-f1__model-frame {
  width: 100%;
  aspect-ratio: 1448 / 1086;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(138, 164, 199, 0.25);
  border-radius: 0.65rem;
  background: #e7e7e7;
}
.mp-cracha-f1__model-frame img { display: block; width: 100%; height: 100%; object-fit: contain; }

.mp-cracha-f1__close-button {
  min-height: 2.25rem;
  padding: 0.55rem 1rem;
  border-radius: 0.68rem;
  background: var(--accent, #60a5fa);
  color: #07111f;
  font-size: 0.72rem;
  font-weight: 900;
}
.mp-cracha-f1__close-button:hover { filter: brightness(1.08); }

@media (max-width: 860px) {
  .mp-cracha-f1__dialog-body { grid-template-columns: 1fr; }
  .mp-cracha-f1__model-card { order: -1; }
}

@media (max-width: 620px) {
  .mp-cracha-f1__header { align-items: flex-start; }
  .mp-cracha-f1__selected-model { width: 100%; }
  .mp-cracha-f1__dialog-backdrop { padding: 0; }
  .mp-cracha-f1__dialog { width: 100%; max-height: 100vh; height: 100vh; border-radius: 0; }
  .mp-cracha-f1__dialog-footer { align-items: stretch; flex-direction: column; }
  .mp-cracha-f1__close-button { width: 100%; }
}
