/* =====================================================================
   Auditoria · aba "Prazos do passe" (spec-passe-fluxo R2-5, mock M5).
   Dono: audit_panel.js (renderPrazosPasse). Classes .pz-* — mesma paleta
   do painel de auditoria (estilo injetado pelo audit_panel.js).
   ===================================================================== */

/* A tela de Auditoria nunca e' bloqueada pela restricao do passe: fica por cima
   do painel do narrador (9500) e do #main-menu (10000) mesmo com a conta travada. */
body.is-passe-travado #admin-page { z-index: 11500; visibility: visible; }

.pz-raiz { flex: 1; display: flex; flex-direction: column; min-height: 0; }

/* faixa do topo: relogio de Brasilia + regra + quem esta restrito + conceder */
.pz-tb { position: relative; }
.pz-relogio { color: #cdbb97; font-size: 0.88rem; }
.pz-relogio b { color: #ffd97a; font-weight: 600; }
.pz-relogio i { color: #8d775c; font-style: normal; font-size: 0.78rem; }
.pz-regra { color: #8d775c; font-size: 0.8rem; }
.pz-tb .menu-btn { width: auto; margin: 0; letter-spacing: 1px; }

/* secoes */
.pz-sec { position: relative; margin: 0 0 22px; }
.pz-sec-t { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin: 2px 0 10px; color: #caa23b;
    font: 700 0.95rem Cinzel, Georgia, serif; letter-spacing: .5px; }
.pz-sec-t small { font: 400 0.8rem Lora, Georgia, serif; color: #8d775c; letter-spacing: 0; }
.pz-nunca { margin: 0 0 10px; padding: 7px 12px; border-radius: 6px; border: 1px dashed #3a2516; color: #cdbb97; font-size: 0.82rem; }

/* Agora: um cartao por narrador */
.pz-agora { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.pz-narr { position: relative; border: 1px solid #2a1c10; border-radius: 8px; background: #1a120a; padding: 12px 14px;
    display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.pz-narr.is-restrito { border-color: rgba(201,76,76,.65); box-shadow: inset 3px 0 0 #c94c4c; }
.pz-narr.is-vence, .pz-narr.is-vencido { border-color: rgba(224,164,90,.6); box-shadow: inset 3px 0 0 #e0a45a; }
.pz-narr.is-acesso { border-color: rgba(74,127,181,.65); box-shadow: inset 3px 0 0 #4a7fb5; }
.pz-narr-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.pz-av { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #3a2516; color: #ffd97a;
    font: 700 0.95rem Cinzel, Georgia, serif; flex: none; }
.pz-nome { color: #e9d9b6; font-size: 0.98rem; min-width: 0; }
.pz-nome b { color: #ffd97a; }
.pz-nome small { display: block; color: #8d775c; font-size: 0.76rem; }
.pz-narr-top .audit-badge { margin-left: auto; }
.pz-l1 { color: #cdbb97; font-size: 0.86rem; line-height: 1.5; }
.pz-l1 b { color: #e9d9b6; font-weight: 600; }
.pz-nota { color: #8d775c; font-size: 0.8rem; line-height: 1.4; }
.pz-barra { height: 5px; border-radius: 3px; background: #241710; overflow: hidden; }
.pz-barra i { display: block; height: 100%; border-radius: 3px; }
.pz-acoes { position: relative; display: flex; gap: 6px; flex-wrap: wrap; }
.pz-btn { background: transparent; border: 1px solid #3a2516; color: #caa23b; border-radius: 5px; padding: 5px 12px; cursor: pointer;
    font-size: 0.8rem; min-height: 32px; font-family: Lora, Georgia, serif; }
.pz-btn:hover { border-color: #caa23b; }
.pz-btn:disabled { opacity: .45; cursor: not-allowed; }
.pz-btn.forte { border-color: #5a6f3a; color: #a9d06a; }
.pz-btn.forte:hover { border-color: #a9d06a; }
.pz-btn.perigo { border-color: #5a2a22; color: #e0908a; }
.pz-btn.perigo:hover { border-color: #e0908a; }
.pz-riscado { text-decoration: line-through; color: #8d775c; font-size: 0.8rem; margin-right: 4px; }

/* Escala por mes: tabela no PC/tablet, cartoes no celular */
.pz-tab { width: 100%; border-collapse: collapse; font-size: 0.85rem; }
.pz-tab th { text-align: left; color: #8d775c; font-weight: 600; padding: 6px 8px; border-bottom: 1px solid #2a1c10; white-space: nowrap; }
.pz-tab td { padding: 9px 8px; border-bottom: 1px solid #201509; color: #e9d9b6; vertical-align: top; }
.pz-tab tr.is-vig td { background: rgba(202,162,59,.06); }
.pz-tab tr.is-feito td { color: #a7967a; }
.pz-mes b { color: #ffd97a; font-family: Cinzel, Georgia, serif; }
.pz-mes small, .pz-sub { display: block; color: #8d775c; font-size: 0.74rem; }
.pz-vig { display: inline-block; margin-left: 4px; color: #a9d06a; font-size: 0.72rem; }
.pz-sit { font-size: 0.82rem; white-space: nowrap; }
.pz-sit.ok { color: #9fce9f; }
.pz-sit.av { color: #e0a45a; }
.pz-sit.ru { color: #e0908a; }
.pz-sit.is { color: #8fb0d8; }
.pz-sit.ne { color: #cdbb97; }
.pz-mcards { display: none; flex-direction: column; gap: 8px; }
.pz-mc { border: 1px solid #2a1c10; border-radius: 8px; background: #1a120a; padding: 10px 12px; display: grid;
    grid-template-columns: minmax(0, 1fr) auto; gap: 4px 10px; align-items: start; }
.pz-mc.is-vig { border-color: rgba(202,162,59,.45); }
.pz-mc .pz-btn { grid-row: 1 / span 3; grid-column: 2; align-self: center; }
.pz-mc.sem-bt { grid-template-columns: minmax(0, 1fr); }

/* Historico de concessoes (linha .audit-row da casa) */
.pz-conc.is-desfeita { opacity: .6; }
.pz-est { font-size: 0.76rem; padding: 1px 8px; border-radius: 10px; border: 1px solid currentColor; }
.pz-conc .audit-row-head .pz-btn { min-height: 28px; padding: 3px 10px; font-size: 0.78rem; }
.pz-erro { color: #e0908a; padding: 18px; text-align: center; }
.pz-erro .pz-btn { margin-left: 8px; }

/* Modal "Conceder prazo" — casca do AlternartModal, mais larga */
.alternart-modal.pz-modal { width: min(600px, 94vw); max-height: 92vh; }
.pz-mh { color: #a09080; font-size: 0.82rem; margin: -2px 0 4px; }
.pz-f { position: relative; margin-bottom: 14px; }
.pz-l { display: block; color: #caa23b; font: 700 0.74rem Cinzel, Georgia, serif; letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 6px; }
.pz-l i { font: italic 400 0.78rem Lora, Georgia, serif; letter-spacing: 0; text-transform: none; color: #a09080; }
.pz-modal select.alternart-modal-input, .pz-modal input.alternart-modal-input { margin-top: 0; }
.pz-modal input[type=datetime-local], .pz-modal input[type=number], .pz-modal select { color-scheme: dark; }
.pz-situ { margin-top: 6px; color: #a09080; font-size: 0.82rem; }
.pz-situ b { color: #e8d8b8; }
.pz-ops { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.pz-op { position: relative; text-align: left; padding: 9px 10px; border-radius: 8px; border: 1.5px solid rgba(201,168,76,.3);
    background: rgba(20,15,10,.5); color: #e8d8b8; cursor: pointer; font-family: Lora, Georgia, serif; }
.pz-op b { display: block; font: 700 0.8rem Cinzel, Georgia, serif; color: #e8d38a; }
.pz-op small { display: block; font-size: 0.74rem; color: #a09080; margin-top: 3px; line-height: 1.3; }
.pz-op.on { border-color: #e8d38a; background: rgba(201,168,76,.16); box-shadow: inset 0 0 0 1px #e8d38a; }
.pz-op:disabled { opacity: .4; cursor: not-allowed; }
.pz-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.pz-chip { padding: 6px 11px; border-radius: 999px; border: 1px solid rgba(201,168,76,.35); background: rgba(0,0,0,.3); color: #e8d8b8;
    cursor: pointer; font-size: 0.82rem; min-height: 34px; font-family: Lora, Georgia, serif; }
.pz-chip:hover { border-color: #c9a84c; }
.pz-chip.on { background: rgba(201,168,76,.25); border-color: #e8d38a; color: #ffd97a; }
.pz-linha { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 8px; color: #a09080; font-size: 0.84rem; }
.pz-linha input[type=number] { width: 86px; }
.pz-linha select, .pz-linha input { width: auto; }
.pz-txt { color: rgba(232,216,184,.9); font-size: 0.88rem; line-height: 1.5; margin: 0; }
.pz-prev { padding: 10px 12px; border-radius: 8px; background: rgba(63,163,77,.1); border: 1px solid rgba(63,163,77,.45);
    font-size: 0.88rem; line-height: 1.55; color: #e8d8b8; }
.pz-prev.aviso { background: rgba(224,164,90,.1); border-color: rgba(224,164,90,.55); }
.pz-prev .de { color: #c98b8b; text-decoration: line-through; }
.pz-prev .para { color: #9fce9f; font-weight: 600; }
.pz-prev small { display: block; color: #a09080; margin-top: 4px; }
.pz-modal textarea.alternart-modal-input { min-height: 66px; resize: vertical; margin-top: 8px; display: block; }
.pz-cont { margin-top: 4px; color: #a09080; font-size: 0.76rem; text-align: right; }
.pz-modal .alternart-modal-btn:disabled { opacity: .45; cursor: not-allowed; transform: none; }

/* celular */
@media (max-width: 700px) {
    #admin-content .pz-raiz .audit-toolbar { padding-left: 12px; padding-right: 12px; }
    #admin-content .pz-raiz .audit-list { padding-left: 10px; padding-right: 10px; }
    .pz-agora { grid-template-columns: 1fr; }
    .pz-tab { display: none; }
    .pz-mcards { display: flex; }
    .pz-regra { display: none; }
    .pz-tb .menu-btn { flex: 1 1 100%; }
    .pz-tb .audit-count { margin-left: 0; }
    .alternart-modal.pz-modal .alternart-modal-head { padding: 16px 44px 0 14px; }
    .alternart-modal.pz-modal .alternart-modal-body { padding: 12px 14px 4px; }
    .alternart-modal.pz-modal .alternart-modal-footer { padding: 12px 14px 14px; }
    .pz-ops { grid-template-columns: 1fr; }
}
