/* =========================================================
   Rotinas da TI — estilos do módulo
   Tudo fica dentro de .rt-modulo e usa classes com prefixo rt-,
   então não interfere nos outros módulos da intranet.
   A fonte é herdada da intranet. Para alinhar ao visual,
   basta ajustar os tokens abaixo.
   ========================================================= */
.rt-modulo{
  /* Herda as cores da intranet quando elas existem, com os valores
     originais como reserva — assim o módulo acompanha qualquer ajuste
     futuro do tema sem precisar ser editado. */
  --rt-azul:var(--primary,#0F3562); --rt-azul-escuro:var(--deep,#081C3C);
  --rt-ouro:var(--gold,#B18836); --rt-ouro-claro:var(--gold2,#E1BD6D);
  --rt-creme:var(--bg,#F7F4EF); --rt-superficie:var(--card,#FFFFFF);
  --rt-texto:var(--text,#1B2433); --rt-suave:var(--muted,#5E6B7D);
  --rt-linha:var(--border,#E4DED3);
  --rt-raio:14px;
  /* prioridade */
  --rt-p-alta:#B3261E; --rt-p-media:#C47F17; --rt-p-baixa:#4F7A9A;
  /* execução */
  --rt-s-pendente:#6B7A90; --rt-s-andamento:#2F6FB2; --rt-s-feita:#2E7D4F; --rt-s-atrasada:#B3261E; --rt-s-na:#9AA3AF;
  color:var(--rt-texto);
  font-family:inherit;
}
.rt-modulo *,.rt-modulo *::before,.rt-modulo *::after{box-sizing:border-box}
.rt-modulo button,.rt-modulo input,.rt-modulo select,.rt-modulo textarea{font:inherit}
.rt-modulo :focus-visible{outline:3px solid var(--rt-ouro);outline-offset:2px}
.rt-modulo .rt-ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---- captação rápida ---- */
.rt-modulo .rt-captura{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.rt-modulo .rt-rapido{flex:1;min-width:240px;border:1px solid var(--rt-linha);border-left:4px solid var(--rt-ouro);
  border-radius:var(--rt-raio);padding:12px 14px;background:var(--rt-superficie);color:var(--rt-texto)}
.rt-modulo .rt-rapido::placeholder{color:var(--rt-suave)}
.rt-modulo .rt-btn.rt-secundario{background:var(--rt-superficie);color:var(--rt-azul);border:1px solid var(--rt-linha)}
.rt-modulo .rt-btn.rt-secundario:hover{background:var(--rt-creme)}
@media (max-width:720px){.rt-modulo .rt-captura .rt-btn{flex:1;justify-content:center}}

/* ---- totais (atalhos) ---- */
.rt-modulo .rt-totais{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:6px}
.rt-modulo .rt-total{display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;background:var(--rt-superficie);border:1px solid var(--rt-linha);border-left:4px solid var(--rt-ouro);border-radius:var(--rt-raio);padding:12px 14px;color:var(--rt-texto);box-shadow:var(--sombra,none)}
.rt-modulo .rt-total b{font-size:1.7rem;line-height:1;color:var(--rt-azul)}
.rt-modulo .rt-total span{font-size:.9rem;color:var(--rt-suave)}
.rt-modulo .rt-total:hover{border-color:var(--rt-ouro-claro)}
.rt-modulo .rt-total.rt-ativo{border-color:var(--rt-azul);box-shadow:inset 0 -3px 0 var(--rt-ouro)}
.rt-modulo .rt-total.rt-alerta b{color:var(--rt-p-alta)}

/* ---- abas ---- */
.rt-modulo .rt-abas{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--rt-linha);margin:8px 0 16px}
.rt-modulo .rt-aba{border:0;background:transparent;padding:10px 14px;font-weight:600;color:var(--rt-suave);border-bottom:3px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap}
.rt-modulo .rt-aba[aria-selected="true"]{color:var(--rt-azul);border-bottom-color:var(--rt-ouro)}

/* ---- cabeçalho de seção ---- */
.rt-modulo .rt-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 14px}
.rt-modulo .rt-cab h2{margin:0;font-size:1.3rem;color:var(--rt-azul)}
.rt-modulo .rt-cab p{margin:2px 0 0;color:var(--rt-suave)}
.rt-modulo .rt-seletor{margin-bottom:10px}
.rt-modulo .rt-progresso{min-width:220px}
.rt-modulo .rt-progresso small{color:var(--rt-suave)}
.rt-modulo .rt-barra{height:8px;background:var(--rt-linha);border-radius:4px;overflow:hidden;margin-top:4px}
.rt-modulo .rt-barra i{display:block;height:100%;background:var(--rt-s-feita);transition:width .4s}
.rt-modulo h3.rt-sec{font-size:1.05rem;color:var(--rt-azul);margin:26px 0 10px;display:flex;align-items:center;gap:8px}
.rt-modulo h3.rt-sec small{color:var(--rt-suave);font-weight:400}

/* ---- filtros ---- */
.rt-modulo .rt-filtros{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.rt-modulo .rt-fbt{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rt-linha);background:var(--rt-superficie);border-radius:999px;padding:6px 12px;font-size:.9rem;cursor:pointer;color:var(--rt-texto)}
.rt-modulo .rt-fbt .rt-ic{width:16px;height:16px}
.rt-modulo .rt-fbt[aria-pressed="true"]{background:var(--rt-azul);color:#fff;border-color:var(--rt-azul)}
.rt-modulo .rt-sel{border:1px solid var(--rt-linha);background:var(--rt-superficie);border-radius:8px;padding:7px 10px;color:var(--rt-texto)}
.rt-modulo .rt-demo{background:#FFF6E0;color:#6B4E12;border:1px solid var(--rt-ouro-claro);border-radius:8px;padding:8px 12px;font-size:.9rem;margin-bottom:14px}
.rt-modulo .rt-vazio{background:var(--rt-superficie);border:1px dashed #D5CCBC;border-radius:var(--rt-raio);padding:28px;text-align:center;color:var(--rt-suave)}

/* ---- lista ---- */
.rt-modulo .rt-lista{list-style:none;margin:0;padding:0;background:var(--rt-superficie);border:1px solid var(--rt-linha);border-radius:var(--rt-raio);overflow:hidden;box-shadow:var(--sombra,none)}
.rt-modulo .rt-item{position:relative;display:grid;grid-template-columns:auto auto 1fr auto auto;align-items:center;gap:12px;padding:12px 16px 12px 18px;border-top:1px solid var(--rt-linha);cursor:pointer;margin:0}
.rt-modulo .rt-lista>.rt-item:first-child{border-top:0}
.rt-modulo .rt-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--rt-prio,transparent)}
.rt-modulo .rt-item:hover{background:#FBF9F5}
.rt-modulo .rt-prio-alta{--rt-prio:var(--rt-p-alta)}
.rt-modulo .rt-prio-media{--rt-prio:var(--rt-p-media)}
.rt-modulo .rt-prio-baixa{--rt-prio:var(--rt-p-baixa)}

.rt-modulo .rt-check{width:34px;height:34px;border-radius:50%;border:2px solid var(--rt-s-pendente);background:#fff;display:grid;place-items:center;cursor:pointer;color:transparent;padding:0;margin:0}
.rt-modulo .rt-check .rt-ic{width:18px;height:18px;stroke-width:3}
.rt-modulo .rt-check:hover{border-color:var(--rt-s-feita);color:var(--rt-s-feita)}
.rt-modulo .rt-st-em-andamento .rt-check{border-color:var(--rt-s-andamento)}
.rt-modulo .rt-st-feita .rt-check{background:var(--rt-s-feita);border-color:var(--rt-s-feita);color:#fff;animation:rt-pop .25s ease-out}
.rt-modulo .rt-st-nao-se-aplica .rt-check{border-style:dashed;border-color:var(--rt-s-na)}
.rt-modulo .rt-st-feita .rt-titulo{color:var(--rt-suave)}
.rt-modulo .rt-st-nao-se-aplica .rt-titulo{color:var(--rt-suave);text-decoration:line-through}
@keyframes rt-pop{from{transform:scale(.75)}to{transform:scale(1)}}

/* ---- ícones de tipo de ação ---- */
.rt-modulo .rt-tipo{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--rt-tc-bg);color:var(--rt-tc);flex:none}
.rt-modulo .rt-tipo.rt-grande{width:48px;height:48px;border-radius:12px}
.rt-modulo .rt-tipo.rt-grande .rt-ic{width:26px;height:26px}
.rt-modulo .rt-tipo.rt-mini{width:26px;height:26px;border-radius:7px}
.rt-modulo .rt-tipo.rt-mini .rt-ic{width:15px;height:15px}
.rt-modulo .rt-tipo-realizar{--rt-tc:#0F3562;--rt-tc-bg:#E6ECF4}
.rt-modulo .rt-tipo-pensar{--rt-tc:#8A6420;--rt-tc-bg:#F6EEDB}
.rt-modulo .rt-tipo-desenvolver{--rt-tc:#5B4B8A;--rt-tc-bg:#ECE8F4}

.rt-modulo .rt-txt{min-width:0}
.rt-modulo .rt-titulo{font-weight:600;display:block}
.rt-modulo .rt-meta{display:flex;gap:4px 12px;flex-wrap:wrap;color:var(--rt-suave);font-size:.85rem;margin-top:2px}
.rt-modulo .rt-meta>span{display:inline-flex;align-items:center;gap:4px}
.rt-modulo .rt-meta .rt-ic{width:14px;height:14px}
.rt-modulo .rt-meta>.rt-obs{display:block;font-style:italic;max-width:42ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rt-modulo .rt-obs-h{margin:6px 0 0;font-size:.92rem;white-space:pre-wrap}
.rt-modulo .rt-bandeira{display:inline-flex;align-items:center;gap:5px;font-size:.84rem;font-weight:600;color:var(--rt-prio)}
.rt-modulo .rt-bandeira .rt-ic{width:15px;height:15px}

.rt-modulo .rt-chip{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap;background:var(--rt-sc-bg);color:var(--rt-sc)}
.rt-modulo .rt-chip .rt-ic{width:14px;height:14px}
.rt-modulo .rt-chip-pendente{--rt-sc:#4D5868;--rt-sc-bg:#EEF0F3}
.rt-modulo .rt-chip-em-andamento{--rt-sc:var(--rt-s-andamento);--rt-sc-bg:#E5EEF8}
.rt-modulo .rt-chip-feita{--rt-sc:var(--rt-s-feita);--rt-sc-bg:#E3F1E8}
.rt-modulo .rt-chip-atrasada{--rt-sc:#fff;--rt-sc-bg:var(--rt-s-atrasada)}
.rt-modulo .rt-chip-nao-se-aplica{--rt-sc:#6B7280;--rt-sc-bg:#F1F2F4}

.rt-modulo .rt-item.rt-hist{grid-template-columns:auto 1fr auto;cursor:default}
.rt-modulo .rt-item.rt-cat{grid-template-columns:auto 1fr auto auto}
.rt-modulo .rt-item.rt-inativa{opacity:.6}

/* ---- banco de previstas ---- */
.rt-modulo .rt-banco li{margin:0}
.rt-modulo .rt-banco li+li{border-top:1px solid var(--rt-linha)}
.rt-modulo .rt-banco .rt-item{grid-template-columns:auto auto 1fr auto;border-top:0}
.rt-modulo .rt-banco input[type=checkbox]{width:20px;height:20px;accent-color:var(--rt-azul);margin:0}
.rt-modulo .rt-banco-acoes{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.rt-modulo .rt-banco-acoes label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.rt-modulo .rt-banco-acoes input{width:18px;height:18px;accent-color:var(--rt-azul);margin:0}

.rt-modulo .rt-legenda{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;background:var(--rt-superficie);border:1px solid var(--rt-linha);border-radius:var(--rt-raio);padding:10px 14px;margin-bottom:14px;font-size:.9rem}
.rt-modulo .rt-legenda>span{display:inline-flex;align-items:center;gap:6px}

/* ---- botões ---- */
.rt-modulo .rt-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:8px;padding:10px 16px;font-weight:600;cursor:pointer;background:var(--rt-azul);color:#fff;margin:0}
.rt-modulo .rt-btn:hover{background:var(--rt-azul-escuro)}
.rt-modulo .rt-btn .rt-ic{width:18px;height:18px}
.rt-modulo .rt-btn.rt-perigo{background:#fff;color:var(--rt-p-alta);border:1px solid #E8C3BF}
.rt-modulo .rt-btn.rt-perigo:hover{background:#FDF3F2}
.rt-modulo .rt-btn:disabled{opacity:.5;cursor:not-allowed}

/* ---- gaveta lateral (fica no fim do body, dentro de #rt-camada) ---- */
.rt-camada .rt-veu{position:fixed;inset:0;background:rgba(8,28,60,.45);opacity:0;pointer-events:none;transition:opacity .2s;z-index:9000}
.rt-camada .rt-veu.rt-aberto{opacity:1;pointer-events:auto}
.rt-camada .rt-gaveta{position:fixed;top:0;right:0;bottom:0;width:min(470px,100%);background:#fff;z-index:9001;transform:translateX(100%);transition:transform .25s ease;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.rt-camada .rt-gaveta.rt-aberta{transform:none}
.rt-camada .rt-g-cab{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--rt-linha)}
.rt-camada .rt-g-cab h3{margin:0 0 4px;font-size:1.2rem;color:var(--rt-azul)}
.rt-camada .rt-fechar{margin-left:auto;border:0;background:transparent;cursor:pointer;padding:4px;color:var(--rt-suave);border-radius:6px}
.rt-camada .rt-g-corpo{padding:18px 20px;overflow:auto;flex:1}
.rt-camada .rt-g-pe{padding:14px 20px;border-top:1px solid var(--rt-linha);display:flex;gap:8px;justify-content:space-between;align-items:center}
.rt-camada .rt-campo{display:block;margin-bottom:16px}
.rt-camada .rt-campo>span{display:block;font-weight:600;font-size:.92rem;margin-bottom:6px;color:var(--rt-azul)}
.rt-camada .rt-campo input,.rt-camada .rt-campo select,.rt-camada .rt-campo textarea{width:100%;border:1px solid var(--rt-linha);border-radius:8px;padding:9px 11px;background:#fff;color:var(--rt-texto);margin:0}
.rt-camada .rt-campo textarea{min-height:100px;resize:vertical}
.rt-camada .rt-proc{background:var(--rt-creme);border-radius:8px;padding:12px 14px;white-space:pre-wrap;font-size:.95rem}
.rt-camada .rt-nota{color:var(--rt-suave);font-size:.9rem}
.rt-camada .rt-nota ul{list-style:none;margin:0;padding:0}
.rt-camada .rt-nota li{padding:8px 0;border-top:1px solid var(--rt-linha)}
.rt-camada .rt-nota li:first-child{border-top:0}
.rt-camada .rt-alerta-ciclo{display:flex;gap:8px;align-items:center;background:#FDF0EF;color:var(--rt-p-alta);border-radius:8px;padding:10px 12px;margin-bottom:16px;font-weight:600}
.rt-camada .rt-seg{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.rt-camada .rt-seg button{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--rt-linha);background:#fff;border-radius:8px;padding:9px;font-size:.92rem;cursor:pointer;color:var(--rt-texto);margin:0}
.rt-camada .rt-seg button .rt-ic{width:16px;height:16px}
.rt-camada .rt-seg button[aria-pressed="true"]{border-color:var(--rt-sc);background:var(--rt-sc-bg);color:var(--rt-sc);font-weight:700}
.rt-camada .rt-seg.rt-tres{grid-template-columns:repeat(3,1fr)}
.rt-camada .rt-seg.rt-tres button{color:var(--rt-prio)}
.rt-camada .rt-seg.rt-tres button[aria-pressed="true"]{border-color:var(--rt-prio);background:#fff;color:var(--rt-prio);box-shadow:inset 0 0 0 1px var(--rt-prio)}
.rt-camada .rt-tipos-escolha{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.rt-camada .rt-tipos-escolha button{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px solid var(--rt-linha);background:#fff;border-radius:10px;padding:12px 6px;cursor:pointer;font-weight:600;color:var(--rt-tc);margin:0}
.rt-camada .rt-tipos-escolha button .rt-ic{width:26px;height:26px}
.rt-camada .rt-tipos-escolha button[aria-pressed="true"]{border-color:var(--rt-tc);background:var(--rt-tc-bg)}
.rt-camada .rt-check-linha{display:flex;align-items:center;gap:8px;cursor:pointer}
.rt-camada .rt-check-linha input{width:18px;height:18px;accent-color:var(--rt-azul);margin:0}
.rt-camada .rt-aviso{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--rt-azul-escuro);color:#fff;padding:10px 16px;border-radius:8px;z-index:9002;display:none;max-width:90vw}
.rt-camada .rt-aviso.rt-erro{background:var(--rt-p-alta)}

@media (max-width:720px){
  .rt-modulo .rt-totais{grid-template-columns:repeat(2,1fr)}
  .rt-modulo .rt-rapido{min-width:100%}
  .rt-modulo .rt-item{grid-template-columns:auto auto 1fr auto;gap:10px;padding:12px 12px 12px 14px}
  .rt-modulo .rt-item .rt-bandeira{display:none}
  .rt-modulo .rt-item.rt-cat{grid-template-columns:auto 1fr auto}
}
@media (prefers-reduced-motion:reduce){
  .rt-modulo *,.rt-camada *{animation:none!important;transition:none!important}
}
