/* ==========================================================================
   GTAWebTax — página "Plataforma: todas as funções" (/plataforma)
   Usa o visual de site.css; aqui só o que é próprio desta página.
   ========================================================================== */
.plat-numeros { display: grid; gap: 14px; }
.plat-numeros div {
    display: flex; align-items: center; gap: 16px; padding: 18px 22px; border-radius: 18px;
    background: rgba(255,255,255,.07); box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); backdrop-filter: blur(10px);
}
.plat-numeros strong { font: 800 clamp(30px, 3.4vw, 42px) 'Poppins', sans-serif; background: var(--degrade); -webkit-background-clip: text; background-clip: text; color: transparent; min-width: 2.2ch; }
.plat-numeros span { color: rgba(255,255,255,.8); font-size: 15px; line-height: 1.35; }

/* índice fixo + busca */
.plat-indice { position: sticky; top: var(--topo); z-index: 20; background: rgba(255,255,255,.92); backdrop-filter: blur(12px); border-bottom: 1px solid var(--borda); }
.plat-indice .container { display: flex; align-items: center; gap: 16px; padding: 10px 0; }
.plat-indice nav { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; flex: 1; }
.plat-indice nav::-webkit-scrollbar { display: none; }
.plat-indice nav a { white-space: nowrap; font-size: 13.5px; font-weight: 600; padding: 8px 14px; border-radius: 999px; color: var(--texto-suave); }
.plat-indice nav a:hover { background: var(--fundo); color: var(--primaria-escura); }
.plat-busca input {
    width: min(340px, 40vw); padding: 10px 16px; border-radius: 999px; border: 1px solid var(--borda); background: #fff; font: inherit; font-size: 14px;
}
.plat-busca input:focus { outline: none; border-color: var(--primaria); box-shadow: 0 0 0 4px rgba(50,153,187,.15); }
.plat-sem-resultado { text-align: center; padding: 40px 0 0; color: var(--texto-suave); }
.pagina-plataforma .secao { scroll-margin-top: calc(var(--topo) + 60px); }
.pagina-plataforma [hidden] { display: none !important; }

/* como funciona */
.plat-passos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.plat-passo { position: relative; padding: 30px 26px; border-radius: var(--raio); background: #fff; border: 1px solid var(--borda); }
.plat-passo span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: var(--degrade); color: #fff; font: 700 18px 'Poppins', sans-serif; margin-bottom: 16px; box-shadow: 0 12px 24px -10px rgba(37,99,235,.6); }
.plat-passo h3 { font-size: 18px; }
.plat-passo p { color: var(--texto-suave); margin: 0; font-size: 15px; }

/* arquivos */
.plat-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; max-width: 900px; margin: 0 auto; }
.plat-chips span { padding: 12px 18px; border-radius: 999px; background: var(--fundo); border: 1px solid var(--borda); font-weight: 600; font-size: 14.5px; }

/* grupos de relatórios e ferramentas */
.plat-grupo + .plat-grupo { margin-top: 46px; }
.plat-grupo-titulo { font-size: 20px; display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.plat-grupo-titulo small { font: 600 12px 'Inter', sans-serif; padding: 3px 10px; border-radius: 999px; background: rgba(50,153,187,.12); color: var(--primaria-escura); }
.plat-cartoes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-items: start; }
.plat-cartao { border-radius: 16px; background: #fff; border: 1px solid var(--borda); transition: box-shadow .3s, border-color .3s; }
.plat-cartao[open] { box-shadow: var(--sombra-leve); border-color: rgba(50,153,187,.45); }
.plat-cartao summary { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: start; padding: 16px 18px; cursor: pointer; list-style: none; }
.plat-cartao summary::-webkit-details-marker { display: none; }
.plat-cartao .ic { font-size: 22px; line-height: 1.2; }
.plat-cartao .txt strong { display: block; font-size: 15px; margin-bottom: 4px; }
.plat-cartao .txt span { display: block; font-size: 13.5px; color: var(--texto-suave); line-height: 1.5; }
.plat-cartao .mais { font: 600 20px 'Poppins', sans-serif; color: var(--primaria); transition: transform .3s; }
.plat-cartao[open] .mais { transform: rotate(45deg); }
.plat-cartao dl { margin: 0; padding: 0 18px 18px 52px; font-size: 13.5px; }
.plat-cartao dt { font-weight: 700; color: var(--primaria-escura); margin-top: 10px; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; }
.plat-cartao dd { margin: 3px 0 0; color: var(--texto); line-height: 1.55; }
.ferramentas-grade + .plat-grupo, .plat-grupo .ferramentas-grade { margin-top: 0; }

/* módulos */
.plat-modulos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.plat-modulo { display: flex; gap: 14px; padding: 22px; border-radius: var(--raio); background: #fff; border: 1px solid var(--borda); }
.plat-modulo .ic { flex: 0 0 auto; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; background: var(--degrade); font-size: 20px; box-shadow: 0 12px 24px -10px rgba(37,99,235,.6); }
.plat-modulo h3 { font-size: 16px; margin-bottom: 6px; }
.plat-modulo p { font-size: 14px; color: var(--texto-suave); margin: 0; }
.secao.escura .plat-modulo { background: rgba(255,255,255,.05); border-color: transparent; box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); }
.secao.escura .plat-modulo p { color: rgba(255,255,255,.72); }

@media (max-width: 1000px) {
    .plat-cartoes, .plat-modulos { grid-template-columns: repeat(2, 1fr); }
    .plat-passos { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .plat-cartoes, .plat-modulos { grid-template-columns: 1fr; }
    .plat-indice .container { flex-direction: column; align-items: stretch; gap: 8px; }
    .plat-busca input { width: 100%; }
    .plat-cartao dl { padding-left: 18px; }
}
