/* Guias 48HRS: estilos próprios. Usa as variáveis de theme.css e as classes de loja.css. */
.g{max-width:47rem}
.g p,.g li{overflow-wrap:break-word}
.g h1{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;line-height:1.2;color:var(--cor-texto);margin:.4rem 0 .8rem}
.g h2{font-size:1.35rem;font-weight:700;line-height:1.3;color:var(--cor-texto);margin:2.4rem 0 .7rem}
.g h3{font-size:1.05rem;font-weight:700;color:var(--cor-texto);margin:1.4rem 0 .4rem}
.g p{margin-bottom:.8rem}
.g a:not(.kv-btn){color:var(--cor-primaria);text-decoration:underline}
.g .crumb a{color:inherit}
.g .kv-eyebrow{color:var(--cor-primaria)}
.g-data{font-size:.82rem;color:var(--cor-texto-tercio)}
.g-resposta{background:var(--cor-cards);border:1px solid var(--kv-linha);border-left:4px solid var(--cor-primaria);border-radius:.6rem;padding:1rem 1.1rem;margin:1.2rem 0}
.g-resposta p{margin:0}
.g .ref{font-size:.75em;vertical-align:super;line-height:0;text-decoration:none;padding:0 .1em}
.g .lj-lista{margin-bottom:.9rem}

/* Calculadoras */
.calc{background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.9rem;padding:1.15rem;margin:1.5rem 0}
.calc h2{margin:0 0 .3rem;font-size:1.2rem}
.calc__nota{font-size:.85rem;margin-bottom:.9rem}
.calc__grid{display:grid;gap:.85rem;grid-template-columns:1fr}
@media(min-width:40rem){.calc__grid{grid-template-columns:1fr 1fr}}
.calc label{display:block;font-size:.88rem;font-weight:600;color:var(--cor-texto);margin-bottom:.3rem}
.calc input{width:100%;min-height:46px;padding:.55rem .7rem;font-size:1rem;color:var(--cor-texto);background:var(--cor-fundo);border:1px solid rgba(255,255,255,.22);border-radius:.5rem}
.calc input:focus{border-color:var(--cor-primaria);outline:2px solid var(--cor-primaria);outline-offset:1px}
.calc__erro{color:#fca5a5;font-size:.9rem;margin:.8rem 0 0}
.calc__erro:empty{display:none}
.calc__saida{margin-top:1rem}
.calc__saida:empty{display:none}
.calc__linhas{display:grid;gap:.45rem;margin:0}
.calc__linhas div{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;border-bottom:1px solid var(--kv-linha);padding-bottom:.4rem}
.calc__linhas dt{color:var(--cor-texto-suave);font-size:.92rem}
.calc__linhas dd{color:var(--cor-texto);font-weight:700;margin:0;white-space:nowrap}
.calc__linhas .forte dt{color:var(--cor-texto);font-weight:700}
.calc__linhas .forte dd{color:var(--cor-primaria);font-size:1.3rem}

/* Tabelas: em celular cada linha vira um bloco, sem rolagem lateral */
.g-tabela{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.92rem}
.g-tabela th,.g-tabela td{padding:.6rem .7rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--kv-linha);color:var(--cor-texto-suave);line-height:1.5}
.g-tabela th{color:var(--cor-texto);font-weight:700;background:var(--cor-cards)}
.g-tabela td:first-child{color:var(--cor-texto);font-weight:600}
@media(max-width:39.99rem){
  .g-tabela thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .g-tabela,.g-tabela tbody,.g-tabela tr,.g-tabela td{display:block;width:100%}
  .g-tabela tr{background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.6rem;padding:.35rem .8rem;margin-bottom:.7rem}
  .g-tabela td{border:0;padding:.35rem 0}
  .g-tabela td[data-label]::before{content:attr(data-label);display:block;font-size:.74rem;font-weight:600;color:var(--cor-texto-tercio)}
  .g-tabela td:first-child{font-size:1rem}
  .g-tabela td:first-child::before{display:none}
}

/* Textos para copiar */
.g-modelo{background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.7rem;padding:.9rem 1rem;margin:.9rem 0}
.g-modelo h3{margin:0 0 .5rem}
.g-modelo pre{font-family:inherit;font-size:.94rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:break-word;color:var(--cor-texto-suave);background:var(--cor-fundo);border-radius:.45rem;padding:.75rem .85rem;margin:0 0 .7rem}
.g-copiar{min-height:44px;padding:.5rem 1.1rem;font-size:.92rem}

/* Chamada, relacionados e fontes */
.g-cta{background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.9rem;padding:1.2rem;margin:2.2rem 0}
.g-cta h2{margin:0 0 .5rem;font-size:1.2rem}
.g-cta img{width:100%;height:auto;border-radius:.6rem;border:1px solid var(--kv-linha);margin:.4rem 0 .9rem;display:block}
.g-cta__btns{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.8rem}
.g-cta__btns .kv-btn{min-height:48px;padding:.7rem 1.4rem;font-size:1rem}
.g-rel{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.5rem}
.g .g-rel a{display:block;background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.6rem;padding:.75rem .9rem;color:var(--cor-texto);text-decoration:none;font-weight:600}
.g .g-rel a:hover{border-color:var(--cor-primaria);color:var(--cor-primaria)}
.g-fontes{font-size:.84rem;padding-left:1.3rem;list-style:decimal;display:grid;gap:.4rem}
.g-fontes li{scroll-margin-top:calc(var(--nav-h) + 1rem)}
.g-aviso{font-size:.84rem;border-top:1px solid var(--kv-linha);padding-top:.9rem;margin-top:1.6rem}

/* Índice */
.g-cards{display:grid;gap:1rem;grid-template-columns:1fr;margin:1.5rem 0}
@media(min-width:48rem){.g-cards{grid-template-columns:1fr 1fr}}
.g-card{background:var(--cor-cards);border:1px solid var(--kv-linha);border-radius:.9rem;padding:1.1rem;display:flex;flex-direction:column}
.g-card h2{font-size:1.1rem;margin:0 0 .4rem}
.g .g-card h2 a{color:var(--cor-texto);text-decoration:none}
.g .g-card h2 a:hover{color:var(--cor-primaria)}
.g-card p{font-size:.93rem;margin-bottom:.5rem}
.g .g-card .g-tag{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cor-primaria);margin-bottom:.35rem}
