/* Economy Studio · checklist com cronômetro, escala do dia, perfil do colaborador e vídeoaulas (camada/quadros-pessoas.jsx).
   As camadas que abrem por cima de qualquer página (execução, modelo, relatório e perfil) ficam num .qp, com as mesmas
   variáveis do .qo; as páginas da árvore de Operações usam as mesmas classes dentro do quadro. */
.qp{--qo-ac:var(--accent,#0F766E);--qo-line:var(--line,#E3E5E8);--qo-soft:var(--soft,#F2F4F6);--qo-card:var(--card,#fff);--qo-ink:var(--ink,#1F2124);--qo-ink2:var(--ink2,#55595E);font:400 14px 'DM Sans',sans-serif;color:var(--qo-ink)}
.qp *{box-sizing:border-box}
.qp button{font:inherit;color:inherit}
.qp .qo-gaveta-fundo{z-index:73}
.qp .qo-gaveta{z-index:74}
.qo .qo-av-bt,.qp .qo-av-bt{border:0;padding:0;cursor:pointer;color:#fff;font:700 12px Sora,sans-serif}
.qo-opc:disabled{opacity:.5;cursor:not-allowed}
.qo-av-bt:hover,.qo-av-bt:focus-visible{box-shadow:0 0 0 2px var(--qo-card),0 0 0 4px var(--qo-ac);outline:0}

/* caixa por cima da página */
.qp-tela{position:fixed;inset:0;z-index:72;background:rgba(5,7,11,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.qp-caixa{background:var(--qo-card);color:var(--qo-ink);border-radius:16px;width:min(880px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 70px rgba(0,0,0,.3);overflow:hidden}
.qp-caixa.estreita{width:min(600px,100%)}
.qp-cab{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--qo-line)}
.qp-cab h3{margin:0;font:700 17px Sora,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qp-corpo{flex:1;overflow:auto;padding:16px 18px}
.qp-rodape{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--qo-line)}
.qp-rodape .esq{margin-right:auto;color:var(--qo-ink2);font-size:13px}
@media (max-width:640px){.qp-rodape{padding-right:84px}}
.qp-x{border:0;background:none;cursor:pointer;font-size:22px;line-height:1;padding:4px 9px;border-radius:8px;color:var(--qo-ink2)}
.qp-x:hover,.qp-x:focus-visible{background:var(--qo-soft);outline:0}

/* execução */
.qp-placar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid var(--qo-line);background:var(--qo-soft)}
.qp-relogio{font:700 26px Sora,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.qp-relogio.passou{color:#B42318}
.qp-prog{flex:1;min-width:140px}
.qp-barra-prog{height:6px;border-radius:3px;background:var(--qo-line);overflow:hidden;margin-top:4px}
.qp-barra-prog span{display:block;height:100%;background:var(--qo-ac)}
.qp-aviso{border-radius:10px;padding:10px 12px;font-size:13px;margin:0 0 12px;background:rgba(180,35,24,.08);border:1px solid rgba(180,35,24,.35)}
.qp-aviso.info{background:var(--qo-soft);border-color:var(--qo-line)}
.qp-item{border:1px solid var(--qo-line);border-radius:12px;padding:12px;margin-bottom:10px;background:var(--qo-card)}
.qp-item.feito{background:var(--qo-soft)}
.qp-item.erro{border-color:#B42318}
.qp-item .t{font-weight:600;margin-bottom:8px;line-height:1.35}
.qp-item .sec{font:600 12px 'DM Sans',sans-serif;color:var(--qo-ink2);margin-bottom:4px}
.qp-item .dito{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}
.qp-resps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.qp-resp{min-height:40px;padding:8px 14px;border:1px solid var(--qo-line);border-radius:10px;background:var(--qo-card);cursor:pointer;font-weight:600}
.qp-resp:focus-visible{outline:2px solid var(--qo-ac);outline-offset:1px}
.qp-resp.on{border-color:var(--qo-ac);box-shadow:0 0 0 1px var(--qo-ac);color:var(--qo-ac)}
.qp-resp.nao.on{border-color:#B42318;box-shadow:0 0 0 1px #B42318;color:#B42318}
.qp-campo{width:100%;border:1px solid var(--field,var(--qo-line));border-radius:8px;padding:8px 10px;font:inherit;background:var(--qo-card);color:var(--qo-ink)}
.qp-campo:focus{outline:0;border-color:var(--qo-ac)}
.qp-campo.curto{width:110px}
.qp-foto{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border:1px dashed var(--qo-ink2);border-radius:10px;background:none;cursor:pointer}
.qp-foto.ok{border-style:solid;border-color:#15803D;color:#15803D}
.qp-mais{display:grid;gap:8px;margin-top:8px}
.qp-passo{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--qo-line);border-radius:10px;margin-bottom:8px}
.qp-passo .n{width:28px;height:28px;border-radius:14px;background:var(--qo-soft);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.qp-passo.feito .n{background:#15803D;color:#fff}
.qp-passo .tx{flex:1;min-width:0}
.qp-grande{font:700 20px Sora,sans-serif;line-height:1.3;margin:6px 0 14px}
.qp-pin{font:700 24px Sora,sans-serif;letter-spacing:.45em;text-align:center;width:180px}
.qp-busca{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}

/* relatório */
.qp-doc{font-size:13px;line-height:1.45}
.qp-doc-cab{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--qo-line);color:var(--qo-ink2)}
.qp-doc-cab b{color:var(--qo-ink)}
.qp-doc-tit{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:14px 0}
.qp-doc-tit .l{font:600 12px 'DM Sans',sans-serif;color:var(--qo-ink2)}
.qp-doc-tit h1{margin:4px 0 2px;font:800 24px Sora,sans-serif;letter-spacing:-.01em}
.qp-doc-tit .s{color:var(--qo-ink2)}
.qp-doc-st{border:1px solid;border-radius:99px;padding:4px 12px;font-weight:700;white-space:nowrap}
.qp-doc-pe{margin-top:18px;padding:12px 14px;border:1px solid var(--qo-line);border-radius:12px;color:var(--qo-ink2);font-size:12px}
.qp-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.qp-k{border:1px solid var(--qo-line);border-radius:12px;padding:10px 12px;min-width:0}
.qp-k .l{font:600 12px 'DM Sans',sans-serif;color:var(--qo-ink2)}
.qp-k .v{font:700 14px Sora,sans-serif;margin-top:4px;overflow-wrap:anywhere}
.qp-sec{font:700 15px Sora,sans-serif;margin:18px 0 8px}
.qp-tab-rol{overflow-x:auto}
.qp-tab{width:100%;border-collapse:collapse;font-size:13px}
.qp-tab th{text-align:left;font:600 12px 'DM Sans',sans-serif;color:var(--qo-ink2);padding:6px 8px;border-bottom:1px solid var(--qo-line)}
.qp-tab td{padding:8px;border-bottom:1px solid var(--qo-line);vertical-align:top}
.qp-tab tr.nc td{background:rgba(180,35,24,.06)}
.qp-nc{margin-top:10px;padding:12px 14px;border:1px solid var(--qo-line);border-radius:12px}
.qp-nc .l{font:600 12px 'DM Sans',sans-serif;color:#B42318}
.qp-linha{display:flex;gap:12px;padding:7px 0;border-bottom:1px solid var(--qo-line);font-size:13px}
.qp-linha .h{width:44px;flex:none;color:var(--qo-ink2);font-variant-numeric:tabular-nums}
.qp-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.qp-fotos .f{aspect-ratio:4/3;border-radius:10px;background:var(--qo-soft);border:1px solid var(--qo-line);display:flex;align-items:center;justify-content:center;color:var(--qo-ink2);font-size:12px;text-align:center;padding:8px}

/* editor de modelo */
.qp-lbl{display:block;font-weight:600;font-size:13px;margin:16px 0 6px}
.qp-lbl:first-child{margin-top:0}
.qp-erro{color:#B42318;font-size:12.5px;margin-top:4px}
.qp-modo{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qp-modo button{text-align:left;border:1px solid var(--qo-line);border-radius:12px;padding:12px;background:var(--qo-card);cursor:pointer}
.qp-modo button.on{border-color:var(--qo-ac);box-shadow:0 0 0 1px var(--qo-ac)}
.qp-modo b{display:block;margin-bottom:4px}
.qp-modo small{color:var(--qo-ink2);font-size:12.5px;line-height:1.4}
.qp-linha-f{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.qp-ed-it{border:1px solid var(--qo-line);border-radius:12px;padding:10px;margin-bottom:8px;display:grid;gap:8px}
.qp-chk{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}
.qp-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border:1px solid var(--qo-line);border-radius:99px;font-size:13px}
.qp-chip button{border:0;background:none;cursor:pointer;padding:0 4px;color:var(--qo-ink2);font-size:15px;line-height:1}
.qp-dias{display:flex;gap:4px;flex-wrap:wrap}
.qp-dias button{width:44px;min-height:36px;border:1px solid var(--qo-line);border-radius:8px;background:var(--qo-card);cursor:pointer;font-weight:600}
.qp-dias button.on{background:var(--qo-ac);border-color:var(--qo-ac);color:#fff}
.qp-ic{border:0;background:none;cursor:pointer;color:var(--qo-ink2);min-width:30px;min-height:30px;border-radius:6px;font-size:15px}
.qp-ic:hover,.qp-ic:focus-visible{background:var(--qo-soft);outline:0}

/* escala do dia */
.qp-dia{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.qp-escala{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:8px}
.qp-esc-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--qo-line)}
.qp-esc-l:first-of-type{border-top:0}
.qp-esc-l .hr{font-variant-numeric:tabular-nums;color:var(--qo-ink2);font-size:13px;min-width:92px}
.qp-pess{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.qp-pess.sem{color:#A16207}

/* perfil */
.qp-perfil-topo{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.qp-av-g{width:52px;height:52px;border-radius:26px;background:var(--qo-ac);color:#fff;display:flex;align-items:center;justify-content:center;font:700 19px Sora,sans-serif;flex:none}
.qp-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}
.qp-cols>*,.qp-grade>*{min-width:0}
.qp-pref{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--qo-line)}
.qp-pref:first-of-type{border-top:0}
.qp-switch{width:44px;height:26px;border-radius:13px;border:0;background:var(--qo-line);position:relative;cursor:pointer;flex:none}
.qp-switch::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:10px;background:#fff;transition:left .15s}
.qp-switch[aria-pressed=true]{background:var(--qo-ac)}
.qp-switch[aria-pressed=true]::after{left:21px}

/* vídeoaulas */
.qp-trilhas{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:8px}
.qp-trilha{display:block;width:100%;border:1px solid var(--qo-line);border-radius:14px;overflow:hidden;background:var(--qo-card);cursor:pointer;text-align:left;padding:0}
.qp-trilha:focus-visible{outline:2px solid var(--qo-ac);outline-offset:2px}
.qp-trilha .capa{height:88px;display:flex;align-items:flex-end;padding:10px 12px;color:#fff;font:700 15px Sora,sans-serif;line-height:1.25}
.qp-trilha .info{padding:10px 12px;font-size:13px;color:var(--qo-ink2);display:grid;gap:6px}
.qp-curso{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;align-items:start;margin-top:10px}
.qp-aulas{border:1px solid var(--qo-line);border-radius:12px;overflow:hidden}
.qp-aula{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-top:1px solid var(--qo-line);background:var(--qo-card);cursor:pointer;text-align:left}
.qp-aula:first-child{border-top:0}
.qp-aula.on{background:var(--qo-soft);font-weight:700}
.qp-aula .ok{width:22px;height:22px;border-radius:11px;border:1px solid var(--qo-line);display:flex;align-items:center;justify-content:center;font-size:12px;flex:none}
.qp-aula .ok.sim{background:#15803D;border-color:#15803D;color:#fff}
.qp-bloco{margin:0 0 14px}
.qp-video{aspect-ratio:16/9;border-radius:12px;background:#1F2124;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:16px}
.qp-video a{color:#fff;font-weight:700}
.qp-video .play{width:54px;height:54px;border-radius:27px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-size:22px}
.qp-bloco img{max-width:100%;border-radius:12px;border:1px solid var(--qo-line)}

@media (max-width:720px){
  .qp-tela{padding:0;align-items:stretch}
  .qp-caixa,.qp-caixa.estreita{width:100%;max-height:100vh;border-radius:0}
  .qp-modo,.qp-cols,.qp-curso{grid-template-columns:1fr}
  .qp-escala{grid-template-columns:1fr}
  .qp-doc-tit{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){.qp *,.qp-switch::after{transition:none!important}}
