/* TsQualy V1761.91 — Projetos A3 (Qualidade › Melhorias), no layout do Formulário de Projeto A3. Prefixo a3-. */
.a3{ --a3-azul:#1766b3; --a3-azul-c:#e7f1fd; --a3-verde:#2e8b57; --a3-verde-c:#e6f4ec; --a3-verm:#c8372d; --a3-verm-c:#fdecea;
  --a3-amb:#b7791f; --a3-amb-c:#fdf3e1; --a3-roxo:#6b46c1; --a3-roxo-c:#efe9fb; --a3-cinza:#5b6676; --a3-borda:#d9e2ec; --a3-fundo:#f6f8fb; }
.a3-topo-acoes{ display:flex; gap:8px; align-items:flex-end; }
.a3-muted,.a3-vazio{ color:var(--a3-cinza,#5b6676); }
.a3-vazio{ margin:4px 0; font-size:13px; }
.a3-txt-verm{ color:#c8372d!important; } .a3-txt-verde{ color:#2e8b57!important; }
.a3 small{ display:block; color:#5b6676; font-size:11.5px; }
/* KPIs */
.a3-kpis{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; margin:0 0 14px; }
.a3-kpi{ display:flex; gap:12px; align-items:center; background:#fff; border:1px solid var(--a3-borda); border-left:4px solid var(--c,#1766b3); border-radius:10px; padding:12px 14px; }
.a3-kpi-ico{ display:inline-grid; place-items:center; width:38px; height:38px; border-radius:10px; background:var(--cc,#e7f1fd); color:var(--c,#1766b3); flex:none; }
.a3-kpi-ico svg{ stroke:currentColor; fill:none; }
.a3-kpi-txt span{ font-size:12px; color:#5b6676; text-transform:lowercase; } .a3-kpi-txt strong{ display:block; font-size:22px; color:#12345f; line-height:1.2; }
.a3-kpi--azul{ --c:#1766b3; --cc:#e7f1fd; } .a3-kpi--verde{ --c:#2e8b57; --cc:#e6f4ec; } .a3-kpi--verm{ --c:#c8372d; --cc:#fdecea; } .a3-kpi--roxo{ --c:#6b46c1; --cc:#efe9fb; }
/* filtros */
.a3-filtros{ display:flex; flex-wrap:wrap; gap:10px 14px; align-items:flex-end; padding:12px 14px; margin-bottom:14px; }
.a3-campo{ display:flex; flex-direction:column; gap:4px; font-size:12.5px; color:#3c4a5c; min-width:0; }
.a3-campo > span{ font-weight:600; }
.a3-campo input,.a3-campo select,.a3-campo textarea{ width:100%; box-sizing:border-box; border:1px solid #c9d3df; border-radius:8px; padding:7px 9px; font:inherit; font-size:13.5px; background:#fff; }
.a3-campo textarea{ resize:vertical; }
.a3-f-busca{ flex:1 1 240px; } .a3-filtros .a3-campo:not(.a3-f-busca){ flex:0 1 180px; }
.a3-chk{ display:flex; gap:6px; align-items:center; font-size:13px; color:#3c4a5c; padding-bottom:8px; }
.a3-chk-b{ align-self:end; }
.a3-modo{ display:inline-flex; border:1px solid #8db8f6; border-radius:8px; overflow:hidden; margin-left:auto; }
.a3-modo button{ border:0!important; background:#fff!important; color:#1766b3!important; padding:7px 12px!important; font-weight:600; cursor:pointer; box-shadow:none!important; border-radius:0!important; }
.a3-modo button.ativo{ background:#1766b3!important; color:#fff!important; }
/* tabela */
.a3-tabela-card{ padding:0; overflow:hidden; }
.a3-tabela{ width:100%; border-collapse:collapse; font-size:13px; }
.a3-tabela th{ text-align:left; background:#f3f6fa; color:#4f5f75; font-weight:700; font-size:12px; padding:9px 10px; border-bottom:1px solid var(--a3-borda,#d9e2ec); }
.a3-tabela td{ padding:9px 10px; border-bottom:1px solid #eef2f6; vertical-align:top; }
.a3-tabela tbody tr[data-abrir],.a3-clicavel{ cursor:pointer; }
.a3-tabela tbody tr[data-abrir]:hover,.a3-clicavel:hover{ background:#f6f9fd; }
.a3-cod{ font-weight:700; color:#1766b3; white-space:nowrap; }
.a3-linha-atr td:first-child{ box-shadow:inset 3px 0 0 #c8372d; }
.a3-cancelada td{ color:#9aa5b1; text-decoration:line-through; }
.a3-tab-p td,.a3-tab-p th{ padding:6px 8px; }
.a3-td-bts{ white-space:nowrap; }
.a3-ind-cel{ min-width:180px; }
.a3-mini-barra{ display:block; height:6px; background:#e9eef4; border-radius:99px; overflow:hidden; margin-top:4px; min-width:60px; }
.a3-mini-barra i{ display:block; height:100%; background:#1766b3; border-radius:99px; }
.a3-mini-barra i.ok{ background:#2e8b57; }
.a3-mini-barra--g{ height:10px; }
/* selos */
.a3-selo{ display:inline-block; padding:2px 9px; border-radius:99px; font-size:11.5px; font-weight:700; white-space:nowrap; background:#eef3f9; color:#4f5f75; }
.a3-selo--proposta{ background:#eef3f9; color:#4f5f75; } .a3-selo--analise{ background:#e7f1fd; color:#1766b3; }
.a3-selo--implementacao{ background:#fdf3e1; color:#9a5b0c; } .a3-selo--verificacao{ background:#efe9fb; color:#6b46c1; }
.a3-selo--padronizacao{ background:#e3f5f5; color:#1f7a7a; } .a3-selo--concluido{ background:#e6f4ec; color:#1e6b40; }
.a3-selo--cancelado{ background:#f1f1f1; color:#8a8a8a; } .a3-selo--ok{ background:#e6f4ec; color:#1e6b40; } .a3-selo--pend{ background:#fdf3e1; color:#9a5b0c; }
.a3-st{ font-size:12px; font-weight:700; } .a3-st--concluida{ color:#2e8b57; } .a3-st--em_andamento{ color:#1766b3; } .a3-st--cancelada{ color:#8a8a8a; } .a3-st--aberta{ color:#4f5f75; }
/* quadro */
.a3-quadro{ display:grid; grid-template-columns:repeat(6,minmax(200px,1fr)); gap:10px; overflow-x:auto; padding-bottom:6px; }
.a3-col{ background:#f3f6fa; border-radius:10px; padding:8px; min-height:160px; border-top:4px solid #9aa5b1; }
.a3-col--analise{ border-top-color:#1766b3; } .a3-col--implementacao{ border-top-color:#d98a1c; } .a3-col--verificacao{ border-top-color:#6b46c1; }
.a3-col--padronizacao{ border-top-color:#1f7a7a; } .a3-col--concluido{ border-top-color:#2e8b57; }
.a3-col-topo{ display:flex; justify-content:space-between; align-items:center; padding:2px 4px 8px; font-size:13px; color:#12345f; }
.a3-col-topo span{ background:#fff; border-radius:99px; padding:0 8px; font-size:12px; font-weight:700; }
.a3-cartao{ display:block; width:100%; text-align:left; background:#fff!important; border:1px solid var(--a3-borda,#d9e2ec)!important; border-radius:8px!important; padding:9px 10px!important; margin:0 0 8px; cursor:pointer; color:#1d2733!important; box-shadow:0 1px 2px rgba(18,52,95,.06)!important; }
.a3-cartao:hover{ border-color:#8db8f6!important; }
.a3-cartao strong{ display:block; font-size:13px; margin:2px 0 4px; }
.a3-cartao-l,.a3-cartao-r{ display:block; font-size:11.5px; color:#5b6676; margin-top:3px; }
.a3-cartao.a3-atr{ border-left:3px solid #c8372d!important; }
.a3-col-vazio{ text-align:center; color:#9aa5b1; }
/* ficha */
.a3-ficha-topo{ display:flex; gap:14px; align-items:flex-start; flex-wrap:wrap; margin-bottom:10px; }
.a3-ficha-tit{ flex:1 1 300px; } .a3-ficha-tit h1{ margin:2px 0 0; font-size:22px; color:#12345f; }
.a3-ficha-bts{ display:flex; gap:8px; flex-wrap:wrap; }
.a3-ficha-bts button svg{ vertical-align:-3px; stroke:currentColor; fill:none; }
.a3-bt-p{ padding:5px 10px!important; font-size:12.5px!important; }
.a3-stepper{ list-style:none; display:flex; margin:0 0 12px; padding:0; background:#fff; border:1px solid var(--a3-borda,#d9e2ec); border-radius:10px; overflow:hidden; }
.a3-stepper li{ flex:1; display:flex; align-items:center; gap:8px; padding:10px 12px; font-size:13px; color:#8a96a3; position:relative; }
.a3-stepper li + li{ border-left:1px solid #eef2f6; }
.a3-stepper li span{ display:inline-grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#eef3f9; font-weight:800; font-size:12px; flex:none; }
.a3-stepper li.feito{ color:#2e8b57; } .a3-stepper li.feito span{ background:#2e8b57; color:#fff; }
.a3-stepper li.atual{ color:#12345f; background:#fff7ef; } .a3-stepper li.atual span{ background:#ef7d1a; color:#fff; }
.a3-stepper--cancelado{ opacity:.55; }
.a3-aviso{ border-radius:10px; padding:10px 14px; margin-bottom:12px; font-size:13.5px; }
.a3-aviso--cinza{ background:#f1f1f1; } .a3-aviso--verde{ background:#e6f4ec; color:#1e6b40; }
.a3-portao{ display:flex; gap:14px; justify-content:space-between; align-items:center; background:#fdf3e1; border:1px solid #f3d29a; border-radius:10px; padding:12px 14px; margin-bottom:14px; font-size:13.5px; }
.a3-portao.pronto{ background:#e6f4ec; border-color:#a9d8bd; }
.a3-portao span{ color:#5b6676; } .a3-portao ul{ margin:6px 0 0 18px; padding:0; } .a3-portao p{ margin:4px 0 0; }
.a3-portao-bts{ display:flex; gap:8px; flex:none; }
.a3-ficha-grid{ display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:14px; align-items:start; }
.a3-bloco-pdca{ display:flex; align-items:center; gap:8px; font-weight:800; color:#12345f; font-size:13px; text-transform:uppercase; letter-spacing:.4px; margin:6px 0 8px; }
.a3-pdca{ display:inline-grid; place-items:center; width:24px; height:24px; border-radius:6px; color:#fff; font-weight:800; font-size:12px; }
.a3-pdca--P{ background:#1766b3; } .a3-pdca--D{ background:#d98a1c; } .a3-pdca--C{ background:#6b46c1; } .a3-pdca--A{ background:#1f7a7a; }
.a3-sec{ background:#fff; border:1px solid var(--a3-borda,#d9e2ec); border-radius:10px; margin-bottom:12px; }
.a3-sec-topo{ display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid #eef2f6; }
.a3-sec-topo h3{ margin:0; font-size:15px; color:#12345f; flex:1; }
.a3-sec-n{ display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:#12345f; color:#fff; font-weight:800; font-size:13px; flex:none; }
.a3-sec-bts{ display:flex; gap:6px; flex-wrap:wrap; }
.a3-sec-corpo{ padding:12px 14px; font-size:13.5px; }
.a3-texto{ line-height:1.5; white-space:normal; }
.a3-origem{ margin:10px 0 0; font-size:12.5px; color:#5b6676; }
.a3-meta{ display:grid; grid-template-columns:2fr repeat(3,1fr); gap:10px; align-items:stretch; }
.a3-meta > div{ background:#f6f8fb; border-radius:8px; padding:8px 10px; }
.a3-meta b{ display:block; font-size:18px; color:#12345f; } .a3-meta-ind b{ font-size:14px; } .a3-meta span{ font-size:11.5px; color:#5b6676; }
.a3-meta-barra{ grid-column:1 / -1; background:transparent!important; padding:0!important; }
.a3-ish{ border:1px solid #eef2f6; border-radius:8px; padding:8px; background:#fbfcfe; }
.a3-ish-linha{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.a3-ish-cx{ background:#fff; border:1px solid #dde3ea; border-radius:6px; padding:6px 8px; font-size:12.5px; }
.a3-ish-cx b{ display:block; color:#1766b3; font-size:12px; margin-bottom:2px; } .a3-ish-cx ul{ margin:0; padding-left:16px; }
.a3-ish-espinha{ display:flex; align-items:center; margin:8px 0; }
.a3-ish-espinha span{ flex:1; height:3px; background:#12345f; position:relative; }
.a3-ish-espinha span::after{ content:""; position:absolute; right:-2px; top:-6px; border:7px solid transparent; border-left-color:#12345f; }
.a3-ish-efeito{ margin-left:10px; background:#12345f; color:#fff; border-radius:6px; padding:6px 10px; font-size:12.5px; font-weight:700; max-width:45%; }
.a3-porques,.a3-causa{ margin-top:10px; } .a3-porques ol{ margin:4px 0 0 18px; padding:0; }
.a3-causa .a3-selo{ margin-left:8px; }
.a3-escolhida td{ background:#f4fbf6; }
.a3-grafico{ width:100%; height:auto; max-height:260px; }
.a3-g-grade{ stroke:#eef2f6; } .a3-g-eixo,.a3-g-rot{ font-size:11px; fill:#5b6676; }
.a3-g-base{ stroke:#8a96a3; stroke-dasharray:5 4; stroke-width:1.5; } .a3-g-meta{ stroke:#2e8b57; stroke-dasharray:5 4; stroke-width:1.5; } .a3-g-meta-t{ fill:#2e8b57; font-weight:700; }
.a3-g-linha{ fill:none; stroke:#1766b3; stroke-width:2.2; } .a3-g-ponto{ fill:#fff; stroke:#1766b3; stroke-width:2; } .a3-g-ponto.ind{ fill:#1766b3; }
.a3-legenda{ display:flex; gap:16px; font-size:12px; color:#5b6676; margin:4px 0 6px; }
.a3-legenda span::before{ content:""; display:inline-block; width:18px; height:0; border-top:2px solid #1766b3; margin-right:6px; vertical-align:middle; }
.a3-legenda .l-base::before{ border-top:2px dashed #8a96a3; } .a3-legenda .l-meta::before{ border-top:2px dashed #2e8b57; }
.a3-det summary{ cursor:pointer; color:#1766b3; font-size:12.5px; margin:6px 0; }
.a3-ganho{ margin-top:12px; border-top:1px solid #eef2f6; padding-top:10px; }
.a3-ganho > span{ font-size:12px; color:#5b6676; margin-left:6px; }
.a3-ganho-num{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:6px; }
.a3-ganho-num div{ background:#f6f8fb; border-radius:8px; padding:6px 10px; } .a3-ganho-num b{ display:block; font-size:15px; }
.a3-pad b{ display:block; color:#12345f; font-size:12.5px; margin-bottom:2px; }
.a3-ficha-lado{ display:flex; flex-direction:column; gap:12px; position:sticky; top:10px; }
.a3-lado-card{ padding:12px 14px; margin:0; }
.a3-lado-topo{ display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; color:#12345f; }
.a3-dl{ display:grid; grid-template-columns:100px 1fr; gap:6px 8px; margin:0; font-size:13px; } .a3-dl dt{ color:#5b6676; } .a3-dl dd{ margin:0; }
.a3-equipe{ list-style:none; margin:0; padding:0; } .a3-equipe li{ display:flex; justify-content:space-between; align-items:center; padding:5px 0; border-bottom:1px solid #f0f3f7; font-size:13px; }
.a3-x-p{ border:0!important; background:transparent!important; color:#9aa5b1!important; font-size:18px; cursor:pointer; padding:0 4px!important; box-shadow:none!important; }
.a3-coment-novo{ display:grid; gap:6px; margin-bottom:8px; } .a3-coment-novo select,.a3-coment-novo textarea{ border:1px solid #c9d3df; border-radius:8px; padding:6px 8px; font:inherit; font-size:13px; }
.a3-coments,.a3-hist{ list-style:none; margin:0; padding:0; max-height:320px; overflow:auto; }
.a3-coments li,.a3-hist li{ padding:7px 0; border-top:1px solid #f0f3f7; font-size:12.5px; }
.a3-coments li div{ display:flex; justify-content:space-between; gap:6px; } .a3-coments p,.a3-hist p{ margin:3px 0 0; color:#3c4a5c; }
.a3-link{ border:0!important; background:transparent!important; color:#1766b3!important; padding:0!important; cursor:pointer; font-size:12.5px; font-weight:600; box-shadow:none!important; text-align:left; }
.a3-link + .a3-link{ margin-left:10px; }
/* painel */
.a3-painel-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.a3-painel-grid .card{ margin:0; padding:14px; }
.a3-h3{ margin:0 0 10px; font-size:14.5px; color:#12345f; }
.a3-barras{ display:grid; gap:8px; } .a3-barra-l{ display:grid; grid-template-columns:150px 1fr 30px; gap:8px; align-items:center; font-size:13px; }
.a3-barra-l div{ background:#eef3f9; height:14px; border-radius:99px; overflow:hidden; } .a3-barra-l i{ display:block; height:100%; background:#9aa5b1; border-radius:99px; }
.a3-b-analise{ background:#1766b3!important; } .a3-b-implementacao{ background:#d98a1c!important; } .a3-b-verificacao{ background:#6b46c1!important; } .a3-b-padronizacao{ background:#1f7a7a!important; }
.a3-colunas{ display:grid; grid-template-columns:repeat(12,1fr); gap:6px; align-items:end; height:150px; }
.a3-colunas div{ display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; font-size:11px; }
.a3-colunas span{ width:70%; background:#2e8b57; border-radius:4px 4px 0 0; min-height:2px; } .a3-colunas b{ font-size:11px; color:#12345f; }
.a3-atencao{ list-style:none; margin:0; padding:0; } .a3-atencao li{ padding:7px 0; border-bottom:1px solid #f0f3f7; }
/* modal */
.a3-modal-fundo{ position:fixed; inset:0; background:rgba(18,32,52,.45); display:flex; align-items:flex-start; justify-content:center; z-index:9000; padding:40px 12px; overflow:auto; }
.a3-modal{ background:#fff; border-radius:12px; width:min(var(--a3-w,640px),100%); box-shadow:0 18px 50px rgba(0,0,0,.25); display:flex; flex-direction:column; max-height:calc(100vh - 80px); }
.a3-modal-topo{ display:flex; justify-content:space-between; align-items:center; padding:14px 18px; border-bottom:1px solid #eef2f6; }
.a3-modal-topo h3{ margin:0; font-size:16px; color:#12345f; }
.a3-x{ border:0; background:transparent; font-size:24px; line-height:1; color:#5b6676; cursor:pointer; }
.a3-modal-corpo{ padding:14px 18px; overflow:auto; display:flex; flex-direction:column; gap:10px; }
.a3-modal-rodape{ display:flex; justify-content:flex-end; gap:8px; padding:12px 18px; border-top:1px solid #eef2f6; }
.a3-modal-rodape button{ border-radius:8px; padding:8px 16px; font-weight:600; cursor:pointer; border:1px solid #8db8f6; background:#fff; color:#1766b3; }
.a3-modal-rodape button.primary{ background:#f07f1a; border-color:#f07f1a; color:#fff; }
.a3-modal-rodape button.danger{ background:#fff; border-color:#e3a19b; color:#c8372d; margin-right:auto; }
.a3-modal-rodape button:disabled{ opacity:.6; cursor:wait; }
.a3-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; } .a3-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px 14px; }
.a3-span2{ grid-column:1 / -1; } .a3-sub{ gap:10px; }
.a3-porques-edit{ display:grid; gap:6px; }
.a3-nota{ font-size:12.5px; color:#5b6676; margin:0; }
.a3-confirma{ font-size:14px; margin:0; }
.a3-radio-l{ display:flex; gap:18px; font-size:13.5px; }
/* Plano de Ação geral: selo da origem A3 */
.pa-origem.a3{ --pa-cor:#6b46c1; border-color:#d5c8f3!important; background:#f5f1fd!important; color:#5a3aa8!important; }
@media (max-width:1100px){ .a3-ficha-grid{ grid-template-columns:1fr; } .a3-ficha-lado{ position:static; } .a3-painel-grid{ grid-template-columns:1fr; } .a3-meta{ grid-template-columns:1fr 1fr; } }
@media (max-width:700px){ .a3-grid2,.a3-grid3,.a3-ish-linha{ grid-template-columns:1fr; } .a3-stepper li b{ display:none; } .a3-portao{ flex-direction:column; align-items:stretch; } }
/* V1761.89 — formulário da empresa: dados do projeto, objetivos, 5W2H e status */
.a3-dl--2{ grid-template-columns:140px 1fr 140px 1fr; margin-bottom:10px; }
.a3-opc{ font-size:11px; font-weight:600; color:#8a96a3; background:#f1f4f8; border-radius:99px; padding:1px 8px; margin-left:6px; vertical-align:middle; }
.a3-sec--opc .a3-sec-n{ background:#8a96a3; }
.a3-selo--sgq{ background:#e7f1fd; color:#1766b3; font-size:10.5px; padding:1px 6px; }
.a3-st-cel{ min-width:150px; } .a3-st-cel .a3-mini-barra{ margin-top:2px; }
.a3-cartao-st{ display:flex; align-items:center; gap:6px; margin-top:4px; } .a3-cartao-st .a3-mini-barra{ flex:1; margin:0; } .a3-cartao-st b{ font-size:11.5px; color:#12345f; }
.a3-ficha-st{ min-width:160px; background:#fff; border:1px solid var(--a3-borda,#d9e2ec); border-radius:10px; padding:8px 12px; }
.a3-ficha-st span{ display:block; font-size:11.5px; color:#5b6676; } .a3-ficha-st b{ font-size:20px; color:#12345f; }
.a3-status-proj{ display:grid; grid-template-columns:auto 1fr auto; gap:4px 12px; align-items:center; background:#f6f8fb; border-radius:8px; padding:8px 12px; margin-bottom:10px; }
.a3-status-proj > span{ font-weight:700; color:#12345f; font-size:13px; } .a3-status-proj .a3-mini-barra{ height:10px; margin:0; }
.a3-status-proj b{ font-size:16px; color:#12345f; } .a3-status-proj small{ grid-column:1 / -1; }
.a3-tab-acoes td:first-child{ width:34px; }
.a3-5w2h-linha > td{ background:#fbfcfe; padding:0 8px 10px!important; }
.a3-5w2h{ border:1px solid #dde3ea; border-radius:8px; background:#fff; padding:8px 10px; }
.a3-5w2h-topo{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:6px; font-size:12.5px; color:#12345f; }
.a3-tab-w{ font-size:12px; } .a3-tab-w th{ font-size:11px; white-space:nowrap; } .a3-tab-w td{ padding:5px 6px; }
.a3-metricas{ display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:12px; }
.a3-metrica{ border:1px solid #e3e9f0; border-radius:8px; padding:8px 10px; background:#fff; }
.a3-metrica-topo{ display:flex; justify-content:space-between; gap:8px; align-items:flex-start; font-size:13px; color:#12345f; }
.a3-metrica-topo span{ display:flex; gap:10px; flex:none; }
.a3-ind-proj{ display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; }
.a3-painel-grid .a3-span2{ grid-column:1 / -1; }
@media (max-width:700px){ .a3-dl--2{ grid-template-columns:100px 1fr; } .a3-ind-proj{ grid-template-columns:1fr; } }
/* V1761.90 — filtro "Só atrasados" em uma linha */
.a3-filtros .a3-chk{ display:flex!important; flex:0 0 auto; flex-direction:row!important; align-items:center; gap:8px; white-space:nowrap; padding:0 0 9px; margin:0; font-weight:600; }
.a3-filtros .a3-chk input,.a3-modal .a3-chk input{ width:auto!important; min-width:0!important; margin:0!important; flex:none; }
.a3-filtros .a3-modo{ align-self:flex-end; }
/* V1761.90 — formulários em painel lateral */
.a3-modal-topo h3{ text-transform:none!important; letter-spacing:0!important; font-size:18px!important; font-weight:700; color:#12345f; margin:0; }
.a3-modal-topo p{ margin:3px 0 0; font-size:12.5px; color:#5b6676; }
.a3-modal-fundo--lateral{ align-items:stretch; justify-content:flex-end; padding:0; overflow:hidden; background:rgba(18,32,52,0); transition:background .18s ease; }
.a3-modal-fundo--lateral.aberto{ background:rgba(18,32,52,.38); }
.a3-modal--lateral{ width:min(var(--a3-w,640px),100vw); max-height:none; height:100vh; border-radius:14px 0 0 14px; transform:translateX(100%); transition:transform .18s ease; box-shadow:-12px 0 40px rgba(0,0,0,.18); }
.a3-modal-fundo--lateral.aberto .a3-modal--lateral{ transform:translateX(0); }
.a3-modal--lateral .a3-modal-topo{ padding:18px 22px 14px; background:linear-gradient(180deg,#f7faff,#fff); border-bottom:1px solid #e6edf5; border-radius:14px 0 0 0; }
.a3-modal--lateral .a3-modal-corpo{ flex:1; padding:16px 22px 22px; gap:14px; background:#fbfcfe; }
.a3-modal--lateral .a3-modal-rodape{ padding:12px 22px; background:#fff; box-shadow:0 -6px 16px rgba(18,52,95,.05); }
.a3-grupo{ border:1px solid #e3e9f0; border-radius:10px; background:#fff; padding:12px 14px 14px; margin:0; min-width:0; }
.a3-grupo legend{ padding:0 6px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.5px; color:#1766b3; }
.a3-campo-rot{ display:flex; justify-content:space-between; align-items:center; gap:8px; font-weight:600; }
.a3-novo-box{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; padding:8px; background:#fff7ef; border:1px dashed #f3c28f; border-radius:8px; }
.a3-novo-box[hidden]{ display:none; }
.a3-novo-box input{ flex:1 1 180px; min-width:0; border:1px solid #c9d3df; border-radius:8px; padding:6px 8px; font:inherit; font-size:13px; }
.a3-novo-box small{ flex-basis:100%; color:#8a6a3c; }
@media (max-width:700px){ .a3-modal--lateral{ border-radius:0; } .a3-modal--lateral .a3-modal-topo{ border-radius:0; } }
/* V1761.91 — texto em linhas (estado atual/futuro) */
.a3-lista-num{ margin:0; padding-left:22px; line-height:1.55; } .a3-lista-num li{ padding:1px 0; }
.a3-linhas{ counter-reset:a3l; display:flex; flex-direction:column; gap:6px; }
.a3-linha{ counter-increment:a3l; display:grid; grid-template-columns:30px 1fr auto; gap:8px; align-items:start; }
.a3-linha-n::before{ content:counter(a3l); display:inline-grid; place-items:center; width:26px; height:26px; margin-top:5px; border-radius:50%; background:#e7f1fd; color:#1766b3; font-weight:800; font-size:12px; }
.a3-linha textarea{ width:100%; box-sizing:border-box; border:1px solid #c9d3df; border-radius:8px; padding:7px 9px; font:inherit; font-size:13.5px; resize:none; min-height:36px; overflow:hidden; background:#fff; }
.a3-linha-bts,.a3-g-bts{ display:flex; gap:2px; padding-top:4px; }
.a3-linha-bts button,.a3-g-bts button{ border:1px solid #dde3ea!important; background:#fff!important; color:#5b6676!important; width:26px; height:26px; padding:0!important; border-radius:6px!important; cursor:pointer; font-size:12px; box-shadow:none!important; }
.a3-linha-bts button[data-remover]:hover,.a3-g-bts button[data-remover]:hover{ color:#c8372d!important; border-color:#e3a19b!important; }
.a3-add-linha{ align-self:flex-start; border-style:dashed!important; }
/* V1761.91 — grades */
.a3-grade-wrap{ overflow-x:auto; border:1px solid #e3e9f0; border-radius:10px; background:#fff; }
.a3-grade{ width:100%; border-collapse:collapse; counter-reset:a3g; font-size:13px; }
.a3-grade th{ background:#f3f6fa; color:#4f5f75; font-size:11.5px; font-weight:700; text-align:left; padding:8px 6px; border-bottom:1px solid #e3e9f0; white-space:nowrap; }
.a3-grade td{ padding:5px 4px; border-bottom:1px solid #f0f3f7; vertical-align:top; }
.a3-grade tbody tr{ counter-increment:a3g; }
.a3-g-n{ width:28px; } .a3-g-n::before{ content:counter(a3g); display:inline-grid; place-items:center; width:24px; height:24px; margin-top:5px; border-radius:50%; background:#eef3f9; color:#12345f; font-weight:800; font-size:11.5px; }
.a3-grade input:not([type=checkbox]),.a3-grade select,.a3-grade textarea{ width:100%; box-sizing:border-box; border:1px solid #d3dce7; border-radius:7px; padding:6px 7px; font:inherit; font-size:13px; background:#fff; min-width:70px; }
.a3-grade textarea{ resize:vertical; min-height:36px; min-width:150px; }
.a3-grade input[type=checkbox]{ width:18px; height:18px; margin:9px 0 0 14px; }
.a3-grade [disabled]{ background:#f6f8fb; color:#5b6676; }
.a3-g-bts{ white-space:nowrap; }
/* V1761.91 — objetivo: seletor da métrica */
.a3-seg{ display:inline-flex; border:1px solid #8db8f6; border-radius:9px; overflow:hidden; margin-bottom:8px; }
.a3-seg label{ display:flex; align-items:center; gap:6px; padding:7px 14px; font-size:13px; font-weight:600; color:#1766b3; cursor:pointer; background:#fff; }
.a3-seg label + label{ border-left:1px solid #8db8f6; }
.a3-seg label.ativo{ background:#1766b3; color:#fff; } .a3-seg label.desab{ opacity:.45; cursor:not-allowed; }
.a3-seg input{ position:absolute; opacity:0; pointer-events:none; }
/* V1761.91 — RCA vinculada */
.a3-rca{ display:flex; flex-direction:column; gap:10px; }
.a3-rca-topo{ font-size:13.5px; color:#12345f; } .a3-rca-topo .a3-selo{ margin-left:6px; }
.a3-rca-tit{ display:block; font-size:12.5px; color:#12345f; margin-bottom:4px; }
.a3-rca-cats{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:6px; }


/* V1761.95 — modais centralizados, compactos e padronizados (até metade da viewport) */
.a3-modal-fundo,
.a3-modal-fundo--lateral{
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  overflow:hidden!important;
  background:rgba(18,32,52,.42)!important;
}
.a3-modal-fundo--lateral.aberto{background:rgba(18,32,52,.42)!important}
.a3-modal,
.a3-modal--lateral{
  width:min(var(--a3-w, 640px), calc(100vw - 36px))!important;
  max-width:50vw!important;
  height:auto!important;
  max-height:82vh!important;
  min-height:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  transform:translateY(8px);
  transition:transform .18s ease, opacity .18s ease;
  box-shadow:0 18px 50px rgba(0,0,0,.22)!important;
  background:#fff!important;
}
.a3-modal-fundo.aberto .a3-modal,
.a3-modal-fundo--lateral.aberto .a3-modal--lateral{transform:translateY(0)}
.a3-modal-topo,
.a3-modal--lateral .a3-modal-topo{
  flex:none;
  padding:15px 20px 13px!important;
  border-top:3px solid #1766b3!important;
  border-bottom:1px solid #dce6f1!important;
  border-radius:14px 14px 0 0!important;
  background:linear-gradient(180deg,#f5f9fe,#fff)!important;
  align-items:flex-start;
}
.a3-modal-topo h3,
.a3-modal--lateral .a3-modal-topo h3{
  color:#12345f!important;
  font-size:18px!important;
  font-weight:750!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.a3-modal-topo p,
.a3-modal--lateral .a3-modal-topo p{
  color:#617187!important;
  font-size:12.5px!important;
  line-height:1.4;
  margin:4px 0 0!important;
}
.a3-modal-topo .a3-x{flex:none;margin-top:-2px}
.a3-modal-corpo,
.a3-modal--lateral .a3-modal-corpo{
  flex:0 1 auto!important;
  max-height:calc(82vh - 126px)!important;
  min-height:0;
  padding:14px 18px 16px!important;
  gap:11px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:#fbfcfe!important;
  scrollbar-width:none!important;
}
.a3-modal-corpo::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.a3-modal-rodape,
.a3-modal--lateral .a3-modal-rodape{
  flex:none;
  padding:10px 18px!important;
  border-top:1px solid #e2e9f1!important;
  background:#fff!important;
  box-shadow:0 -4px 14px rgba(18,52,95,.04)!important;
}
.a3-modal .a3-grupo{
  padding:10px 12px 12px!important;
  border-color:#d9e4f0!important;
  box-shadow:0 1px 2px rgba(18,52,95,.025);
}
.a3-modal .a3-grupo legend{
  color:#1766b3!important;
  font-size:11.5px!important;
  letter-spacing:.55px;
  font-weight:800!important;
  padding:0 7px;
}
.a3-modal .a3-campo{gap:5px;font-size:12.5px}
.a3-modal .a3-campo > span{color:#354a63;font-weight:650}
.a3-modal .a3-campo input,
.a3-modal .a3-campo select,
.a3-modal .a3-campo textarea{
  min-width:0;
  border-color:#cbd8e6;
  padding:7px 9px;
  font-size:13px;
  line-height:1.3;
}
.a3-modal .a3-grid2,
.a3-modal .a3-grid3{min-width:0;gap:9px 12px}
.a3-modal .a3-seg{display:flex;flex-wrap:wrap;width:max-content;max-width:100%}
.a3-modal .a3-seg label{font-size:12.5px;padding:7px 12px}

/* V1761.95 — contramedidas e plano de ação em cartões responsivos; sem barra horizontal */
.a3-grade-wrap{overflow:visible!important;border:0!important;background:transparent!important}
.a3-grade-lista{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:9px;
  width:100%;
  min-width:0;
  counter-reset:a3g;
}
.a3-grade-item{
  counter-increment:a3g;
  min-width:0;
  padding:10px 11px 11px;
  border:1px solid #dce5ef;
  border-radius:10px;
  background:#fff;
  box-shadow:0 1px 3px rgba(18,52,95,.045);
}
.a3-grade-item-topo{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  padding-bottom:7px;
  margin-bottom:8px;
  border-bottom:1px solid #edf2f7;
  color:#12345f;
  font-size:12px;
}
.a3-grade-item-topo>b{font-size:12.5px;font-weight:750}
.a3-grade-item-topo .a3-g-bts{margin-left:auto;padding:0;gap:4px}
.a3-grade-item-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 10px;
  align-items:end;
  min-width:0;
}
.a3-grade-campo{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
  color:#52657b;
  font-size:11.5px;
  font-weight:700;
}
.a3-grade-campo--span{grid-column:1/-1}
.a3-grade-campo input:not([type=checkbox]),
.a3-grade-campo select,
.a3-grade-campo textarea{
  display:block;
  width:100%;
  min-width:0!important;
  max-width:100%;
  box-sizing:border-box;
  border:1px solid #ccd8e6;
  border-radius:7px;
  padding:7px 8px;
  background:#fff;
  color:#1d2b3b;
  font:inherit;
  font-size:12.5px;
}
.a3-grade-campo textarea{resize:vertical;min-height:40px}
.a3-grade-campo--check{flex-direction:row;align-items:center;justify-content:flex-start;gap:9px}
.a3-grade-campo--check input[type=checkbox]{width:18px;height:18px;margin:0}
.a3-grade-item .a3-g-n::before{
  content:counter(a3g)!important;
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  margin:0;
  border-radius:50%;
  background:#e8f1fb;
  color:#1766b3;
  font-size:11.5px;
  font-weight:800;
}
.a3-grade-item .a3-g-bts button{
  width:28px;height:28px;
  border-radius:7px!important;
  border-color:#d8e2ed!important;
}
.a3-grade-item .a3-g-bts button[data-remover]{
  color:#b9342d!important;
  border-color:#efc7c3!important;
}
.a3-grade-lista .a3-grade-item:first-child .a3-g-bts button[data-mover="-1"],
.a3-grade-lista .a3-grade-item:last-child .a3-g-bts button[data-mover="1"]{opacity:.45}
.a3-add-linha{margin-top:2px;align-self:flex-start}

/* Inclusão rápida somente dentro dos dropdowns */
.a3-campo select[data-a3-novo-select] option[value="__a3_novo__"]{
  font-weight:400!important;
  color:#1766b3;
}
.a3-novo-box{margin-top:7px}
@media(max-width:900px){
  .a3-modal,.a3-modal--lateral{max-width:calc(100vw - 24px)!important;width:min(760px,calc(100vw - 24px))!important}
  .a3-modal-fundo,.a3-modal-fundo--lateral{padding:12px!important}
  .a3-modal-corpo,.a3-modal--lateral .a3-modal-corpo{max-height:calc(88vh - 120px)!important}
}
@media(max-width:600px){
  .a3-grade-item-grid,.a3-modal .a3-grid2,.a3-modal .a3-grid3{grid-template-columns:minmax(0,1fr)!important}
  .a3-grade-campo--span{grid-column:1}
  .a3-modal,.a3-modal--lateral{max-width:calc(100vw - 24px)!important}
}

/* V1761.96 — adição de vários participantes em linhas */
.a3-participantes-ajuda{font-size:12.5px;color:#617187;margin:-2px 0 2px;line-height:1.45}
.a3-participantes-lista{display:flex;flex-direction:column;gap:10px;max-height:48vh;overflow-y:auto;overflow-x:hidden;padding:1px 3px 2px 1px;scrollbar-width:thin}
.a3-participante-linha{border:1px solid #dce6f1;border-radius:10px;background:#fff;padding:11px 12px 12px;min-width:0;box-shadow:0 1px 2px rgba(18,52,95,.035)}
.a3-participante-linha-topo{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;color:#12345f;font-size:13px}
.a3-participante-linha-topo b{font-weight:750}
.a3-participante-remover{border:1px solid #f0d2d0!important;background:#fff!important;color:#b43b35!important;border-radius:7px!important;padding:4px 9px!important;font-size:11.5px!important;font-weight:650!important;box-shadow:none!important}
.a3-participante-remover:disabled{opacity:.35;cursor:not-allowed}
.a3-participante-campos{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;min-width:0}
.a3-participante-usuario{grid-column:1/-1}
.a3-participante-campos .a3-campo{min-width:0}
.a3-participante-adicionar{align-self:flex-start;border:1px dashed #8db8f6!important;background:#f7fbff!important;color:#1766b3!important;border-radius:8px!important;padding:8px 12px!important;font-size:12.5px!important;font-weight:750!important;box-shadow:none!important}
.a3-participante-adicionar:hover{background:#edf5ff!important;border-color:#1766b3!important}
.a3-participantes-contagem{font-size:11.5px;color:#718096;margin:-4px 0 0;text-align:right}
.a3-participante-salvo{border-color:#a8d8be;background:#f5fbf7}
.a3-participante-salvo .a3-participante-linha-topo{color:#217347}
.a3-participante-salvo input:disabled,.a3-participante-salvo select:disabled{background:#f0f7f2;color:#5e7066;opacity:1}
@media(max-width:700px){.a3-participante-campos{grid-template-columns:1fr}.a3-participante-usuario{grid-column:auto}.a3-participantes-lista{max-height:52vh}}


/* V1761.98 — padrão único: todas as janelas do módulo Projetos A3 deslizam da direita até o meio da tela. */
.a3-modal-fundo,
.a3-modal-fundo--lateral{
  position:fixed!important;
  inset:0!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
  padding:0!important;
  overflow:hidden!important;
  background:rgba(18,32,52,0)!important;
  transition:background .24s ease!important;
}
.a3-modal-fundo.aberto,
.a3-modal-fundo--lateral.aberto{
  background:rgba(18,32,52,.42)!important;
}
.a3-modal,
.a3-modal--lateral{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  flex:0 0 50vw!important;
  width:50vw!important;
  max-width:50vw!important;
  min-width:0!important;
  height:100vh!important;
  max-height:100vh!important;
  min-height:100vh!important;
  margin:0!important;
  border-radius:14px 0 0 14px!important;
  overflow:hidden!important;
  transform:translateX(101%)!important;
  transition:transform .24s cubic-bezier(.22,.72,.2,1)!important;
  box-shadow:-14px 0 42px rgba(0,0,0,.20)!important;
}
.a3-modal-fundo.aberto .a3-modal,
.a3-modal-fundo--lateral.aberto .a3-modal--lateral{
  transform:translateX(0)!important;
}
.a3-modal-topo,
.a3-modal--lateral .a3-modal-topo{
  flex:0 0 auto!important;
  border-radius:14px 0 0 0!important;
}
.a3-modal-corpo,
.a3-modal--lateral .a3-modal-corpo{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  scrollbar-width:none!important;
}
.a3-modal-corpo::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.a3-modal-rodape,
.a3-modal--lateral .a3-modal-rodape{flex:0 0 auto!important}
@media(max-width:900px){
  .a3-modal,.a3-modal--lateral{
    flex-basis:100vw!important;
    width:100vw!important;
    max-width:100vw!important;
    border-radius:0!important;
  }
  .a3-modal-topo,.a3-modal--lateral .a3-modal-topo{border-radius:0!important}
  .a3-modal-fundo,.a3-modal-fundo--lateral{padding:0!important}
}

/* V1761.100 — opção de inclusão com fonte regular, sem botões externos */
.a3-campo select[data-a3-novo-select] option[value="__a3_novo__"]{font-weight:400!important;color:#1766b3}
