/* conteudos.css — lista, leitura e editor de Treinamentos e de Processos escritos (usado por capacitacao/ e processos/).
   Os nomes de classe daqui não podem repetir os da página que os usa: o passo da leitura é .cpasso (o fluxo oficial de processos/ usa .passo). */
.aviso{ display:none; background:var(--warn-bg); border:1px solid var(--warn-line); color:var(--warn); border-radius:var(--raio); padding:10px 14px; font-size:13px; margin-bottom:12px; }
.aviso.show{ display:block; }
.barra{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-bottom:14px; }
.barra .espaco{ flex:1 1 auto; }
.barra .titulo-lista{ font-size:13px; font-weight:600; color:var(--ink-2); }
.barra .titulo-lista .n{ font-family:var(--fonte-num); font-size:11px; background:var(--line-2); color:var(--ink-2); border-radius:10px; padding:0 7px; margin-left:4px; }
.btn-acc{ background:var(--accent); border-color:var(--accent); color:#fff; } .btn-acc:hover{ background:var(--accent-600); border-color:var(--accent-600); }
.btn-peq{ min-height:32px; padding:5px 11px; font-size:12px; }
.btn-per{ color:var(--crit); border-color:var(--crit-line); } .btn-per:hover{ background:var(--crit-bg); border-color:var(--crit-line); }
.chips{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px; }
.chip-f{ font-size:12px; font-weight:600; border:1px solid var(--line); background:#fff; color:var(--ink-2); padding:6px 13px; border-radius:20px; cursor:pointer; min-height:34px; }
.chip-f:hover{ background:var(--verde-050); } .chip-f[aria-pressed="true"]{ background:var(--verde-100); border-color:var(--verde-500); color:var(--verde-800); }

.grade{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr)); gap:14px; }
.cc{ background:var(--panel); border:1px solid var(--line); border-radius:var(--raio); box-shadow:var(--sombra); padding:16px; display:flex; flex-direction:column; gap:10px; text-align:left; cursor:pointer; text-decoration:none; color:inherit; font:inherit; font-weight:400; min-height:0; align-items:stretch; justify-content:flex-start; transition:box-shadow .12s ease, border-color .12s ease, transform .12s ease; }
.cc:hover{ border-color:var(--verde-500); box-shadow:var(--sombra-lg); transform:translateY(-1px); background:var(--panel); }
.cc .topo{ display:flex; gap:12px; align-items:flex-start; }
.cc .ic{ flex:0 0 42px; height:42px; border-radius:10px; display:grid; place-items:center; background:var(--verde-100); color:var(--verde-700); } .cc .ic .i{ width:21px; height:21px; }
.cc.proc .ic{ background:var(--info-bg); color:var(--info); }
.cc h3{ font-size:15.5px; font-weight:600; color:var(--verde-800); line-height:1.3; margin:1px 0 4px; overflow-wrap:anywhere; }
.cc .cat{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; color:var(--ink-3); }
.cc p{ margin:0; font-size:13px; color:var(--ink-2); line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.cc .rod{ display:flex; gap:6px 12px; flex-wrap:wrap; align-items:center; font-size:12px; color:var(--ink-3); margin-top:auto; }
.cc .rod span{ display:inline-flex; align-items:center; gap:4px; } .cc .rod .i{ width:13px; height:13px; }
.cc.rasc{ border-style:dashed; background:#fcfcfa; }
.vazio{ background:#fff; border:1px dashed var(--line); border-radius:var(--raio); padding:34px 22px; text-align:center; color:var(--ink-2); }
.vazio .ic{ width:54px; height:54px; border-radius:50%; background:var(--verde-100); color:var(--verde-700); display:grid; place-items:center; margin:0 auto 10px; } .vazio .ic .i{ width:25px; height:25px; }
.vazio h3{ font-size:16px; color:var(--ink); margin-bottom:5px; } .vazio p{ margin:0 auto 14px; font-size:13.5px; max-width:480px; line-height:1.55; }
.sug{ display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin-top:4px; }

/* leitura */
.le{ display:none; } .le.show{ display:block; }
.le-nav{ display:flex; gap:10px; align-items:center; margin:16px 0 14px; flex-wrap:wrap; }
.le-acoes a.btn{ text-decoration:none; }
.le-cab{ background:var(--panel); border:1px solid var(--line); border-radius:var(--raio-lg); box-shadow:var(--sombra); padding:20px 22px; margin-bottom:16px; }
.le-cab .cat{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; color:var(--accent-600); margin-bottom:4px; }
.le-cab h1{ font-size:clamp(21px,3.4vw,27px); font-weight:600; color:var(--verde-800); letter-spacing:-.2px; line-height:1.25; margin-bottom:8px; overflow-wrap:anywhere; }
.le-cab .resumo-le{ font-size:15px; color:var(--ink-2); line-height:1.55; margin:0 0 12px; }
.le-cab .meta{ display:flex; gap:8px 18px; flex-wrap:wrap; font-size:12.5px; color:var(--ink-3); }
.le-cab .meta span{ display:inline-flex; gap:5px; align-items:center; } .le-cab .meta .i{ width:14px; height:14px; }
.le-acoes{ display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.caixa{ border-radius:var(--raio); padding:14px 18px; margin-bottom:16px; }
.caixa h2{ font-size:12px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; margin-bottom:8px; display:flex; gap:7px; align-items:center; } .caixa h2 .i{ width:15px; height:15px; }
.caixa ul{ list-style:none; margin:0; padding:0; display:grid; gap:7px; } .caixa li{ display:flex; gap:9px; align-items:flex-start; font-size:14px; line-height:1.5; } .caixa li .i{ width:16px; height:16px; margin-top:3px; }
.caixa.mat{ background:var(--verde-050); border:1px solid var(--verde-100); } .caixa.mat h2, .caixa.mat li .i{ color:var(--verde-700); }
.caixa.cui{ background:var(--warn-bg); border:1px solid var(--warn-line); color:var(--ink); } .caixa.cui h2, .caixa.cui li .i{ color:var(--warn); }
.cpassos{ position:relative; margin:0 0 16px; padding-left:0; }
.cpasso{ display:grid; grid-template-columns:42px minmax(0,1fr); gap:14px; position:relative; padding-bottom:14px; }
.cpasso::before{ content:''; position:absolute; left:20px; top:42px; bottom:-2px; width:2px; background:var(--verde-200); }
.cpasso:last-child::before{ display:none; }
.cpasso .num{ width:42px; height:42px; border-radius:50%; background:var(--verde-700); color:#fff; display:grid; place-items:center; font:600 17px var(--fonte-num); position:relative; z-index:1; box-shadow:0 0 0 4px var(--bg); }
.cpasso .cx{ background:var(--panel); border:1px solid var(--line); border-radius:var(--raio); box-shadow:var(--sombra); padding:14px 16px; min-width:0; }
.cpasso h3{ font-size:16px; font-weight:600; color:var(--verde-800); margin-bottom:5px; overflow-wrap:anywhere; }
.cpasso p{ margin:0; font-size:14.5px; line-height:1.65; white-space:pre-line; overflow-wrap:anywhere; }
.cpasso .foto{ display:block; margin-top:11px; border-radius:9px; overflow:hidden; border:1px solid var(--line); background:var(--line-2); cursor:zoom-in; padding:0; min-height:0; width:100%; }
.cpasso .foto img{ display:block; width:100%; height:auto; max-height:420px; object-fit:contain; background:#f4f6f3; }
.cpasso .foto.carregando{ min-height:120px; display:grid; place-items:center; color:var(--ink-3); font-size:12px; cursor:default; }
.rodape-le{ font-size:12px; color:var(--ink-3); margin-top:10px; }
.zoom{ position:fixed; inset:0; z-index:970; background:rgba(10,18,16,.88); display:flex; align-items:center; justify-content:center; padding:16px; cursor:zoom-out; }
.zoom img{ max-width:100%; max-height:100%; border-radius:6px; background:#fff; }

/* editor */
.ed{ display:none; } .ed.show{ display:block; }
.ed-cab{ display:flex; align-items:center; gap:12px; margin:16px 0 14px; flex-wrap:wrap; } .ed-cab h2{ font-size:20px; font-weight:600; letter-spacing:-.01em; }
.ed-cartao{ background:var(--panel); border:1px solid var(--line); border-radius:var(--raio); box-shadow:var(--sombra); padding:16px 18px; margin-bottom:14px; }
.ed-cartao h3{ font-size:13px; font-weight:700; color:var(--verde-800); margin-bottom:12px; display:flex; align-items:center; gap:8px; }
.grade2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; } @media (max-width:560px){ .grade2{ grid-template-columns:1fr; } }
.dica{ font-size:11.5px; color:var(--ink-3); margin-top:4px; line-height:1.4; }
.pe{ display:grid; grid-template-columns:34px minmax(0,1fr); gap:12px; padding:12px; border:1px solid var(--line); border-radius:var(--raio); margin-bottom:10px; background:var(--bg); }
.pe .n{ width:34px; height:34px; border-radius:50%; background:var(--verde-700); color:#fff; display:grid; place-items:center; font:600 14px var(--fonte-num); }
.pe .cmd{ display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; align-items:center; }
.pe .prev{ margin-top:8px; max-width:260px; border-radius:8px; border:1px solid var(--line); overflow:hidden; } .pe .prev img{ display:block; width:100%; height:auto; }
.pe textarea{ min-height:70px; }
.erro-ed{ color:var(--crit); font-weight:600; font-size:13px; margin:0 0 10px; display:none; } .erro-ed.show{ display:block; }
.ed-rodape{ display:flex; gap:10px; justify-content:flex-end; align-items:center; flex-wrap:wrap; }
.ed-rodape .esq{ flex:1 1 200px; }
.ed-rodape select{ width:auto; min-width:150px; }

@media (max-width:560px){ .cpasso{ grid-template-columns:34px minmax(0,1fr); gap:10px; } .cpasso .num{ width:34px; height:34px; font-size:14px; } .cpasso::before{ left:16px; top:34px; } .le-cab{ padding:16px; } }
@media print{
  body{ background:#fff; } .topbar, .hero-c, .barra, .chips, .le-nav, .le-acoes, .aviso, .kx-pill, .toast, .app-footer, .nav{ display:none !important; }
  .le-cab, .cpasso .cx, .caixa{ box-shadow:none; } .cpasso .foto{ cursor:default; } .cpasso{ break-inside:avoid; }
}
