/* drusa cálculo: calculadora grátis (usa as variáveis de cor da linha) */
.calc h1{max-width:22ch}
.calc-grade{display:grid;gap:24px;grid-template-columns:minmax(0,1fr);margin-top:26px;align-items:start}
@media (min-width:1000px){.calc-grade{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:32px}}
.calc-form textarea,.calc input[type=date],.calc input[type=number]{width:100%;background:var(--bg);color:var(--fg);border:1px solid var(--linha);border-radius:8px;padding:10px 12px;font:400 .95rem "Geist",system-ui,sans-serif}
.calc input[type=date],.calc input[type=number]{min-height:44px;padding:0 12px}
.calc-form textarea{font-family:"Geist Mono",ui-monospace,monospace;font-size:.9rem;line-height:1.5;resize:vertical}
.calc input[type=text].curto{width:5.5em;display:inline-block;text-align:right}
.abas{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.aba{flex:1 1 auto;min-height:44px;padding:0 14px;border-radius:8px;border:1px solid var(--linha);background:transparent;color:var(--fg2);font:500 .9rem/1.2 "Geist",system-ui,sans-serif;cursor:pointer}
.aba[aria-selected=true]{background:var(--ac);border-color:var(--ac);color:var(--btn-fg)}
.aba:not([aria-selected=true]):hover{border-color:var(--ac);color:var(--fg)}
.grupo-radio{border:1px solid var(--linha);border-radius:8px;padding:10px 14px 4px;margin:0 0 14px}
.grupo-radio legend{font-size:.84rem;color:var(--fg2);padding:0 6px}
.grupo-radio label.radio{display:block;margin:0 0 10px;font-size:.9rem;color:var(--fg);line-height:1.45}
.grupo-radio input[type=radio]{margin-right:8px;accent-color:var(--ac)}
.grupo-radio b{font-weight:500}
details.gera{margin:0 0 14px;border:1px dashed var(--linha);border-radius:8px;padding:10px 14px}
details.gera summary{cursor:pointer;font-size:.9rem;color:var(--fg2)}
.gera-campos{display:grid;gap:0 14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:12px}
.calc-vazio h2,.calc-res h2{font-size:1.05rem}
.calc-vazio p{color:var(--fg2);text-align:left}
.calc-total{display:grid;gap:2px;margin:0 0 16px}
.calc-total .rot{font:500 .72rem/1 "Geist Mono",ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.calc-total .num{font:500 clamp(1.8rem,4vw,2.5rem)/1.1 "Geist Mono",ui-monospace,monospace;color:var(--ac-txt);letter-spacing:-.02em}
.calc-total .sub2{color:var(--fg2);font-size:.9rem}
.tabrol{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 16px;border:1px solid var(--linha);border-radius:10px}
table.calc-tab{border-collapse:collapse;width:100%;font-size:.86rem;min-width:520px}
.calc-tab th,.calc-tab td{padding:8px 10px;border-bottom:1px solid var(--linha);text-align:right;white-space:nowrap}
.calc-tab th:first-child,.calc-tab td:first-child{text-align:left}
.calc-tab th{font-weight:500;color:var(--fg2);font-size:.78rem}
.calc-tab tr:last-child td{border-bottom:0}
.calc-tab tfoot td{font-weight:500;color:var(--fg);border-top:1px solid var(--linha)}
.calc-tab td{font-variant-numeric:tabular-nums}
.avisos{margin:0 0 16px;padding:12px 14px 4px;border:1px solid var(--linha);border-left:3px solid var(--ac);border-radius:8px;background:var(--card)}
.avisos p{margin:0 0 .7em;font-size:.88rem;color:var(--fg2);text-align:left}
.criterio{margin:0 0 16px}
.criterio summary{cursor:pointer;font-weight:500}
.criterio p,.criterio li{color:var(--fg2);font-size:.9rem;text-align:left}
.calc-cta{margin-top:20px;padding:18px 20px;border:1px solid var(--ac);border-radius:12px;background:var(--card)}
.calc-cta h3{font-size:1.05rem;margin:0 0 6px}
.calc-cta p{color:var(--fg2);text-align:left;margin:0 0 12px;font-size:.92rem}
.calc-cta .btn{white-space:normal;text-align:center;height:auto;padding:12px 18px}
.calc-nota{margin-top:36px}
.pg .tabrol{margin-top:12px}
.calc-resumo-pedido b{color:var(--fg)}
@media (max-width:640px){.abas .aba{flex:1 1 100%}}
.calc .btn[disabled],.calc button:disabled{opacity:.4;cursor:not-allowed}
.calc input:disabled,.calc textarea:disabled,.calc select:disabled{opacity:.55}
.calc input[type=text][data-data]{width:100%;background:var(--bg);color:var(--fg);border:1px solid var(--linha);border-radius:8px;min-height:44px;padding:0 12px;font:400 .95rem "Geist",system-ui,sans-serif}
.calc select{max-width:100%}
details.opc{margin:0 0 16px;border:1px dashed var(--linha);border-radius:8px;padding:10px 14px}
details.opc summary{cursor:pointer;font-size:.9rem;color:var(--fg2)}
details.opc[open] summary{margin-bottom:12px}
details.opc .radio.solto{display:block;margin:0 0 12px;font-size:.9rem;line-height:1.45}
fieldset.ident{border:1px solid var(--linha);border-radius:8px;padding:10px 14px 2px;margin:0 0 6px}
fieldset.ident legend{font-size:.84rem;color:var(--fg2);padding:0 6px}
label.ind-ant small{display:block;margin-top:6px}
.calc-res .lidos{margin:0 0 10px}
.calc-res .diario{margin:0 0 14px;font-size:.92rem;color:var(--fg)}
table.calc-resumo{min-width:0}
.calc-resumo td:last-child{white-space:nowrap}
.calc-resumo td:first-child{white-space:normal;text-align:left}
table.calc-tab{min-width:0;font-size:.8rem}
.calc-tab th,.calc-tab td{padding:8px 6px}
.calc-tab th{white-space:normal}

/* celular: a tabela de cada cota vira cartões, sem corte nem rolagem lateral */
@media (max-width:640px){
  .calc-tab.cartoes thead{position:absolute;left:-9999px}
  .calc-tab.cartoes,.calc-tab.cartoes tbody,.calc-tab.cartoes tfoot,.calc-tab.cartoes tr,.calc-tab.cartoes td{display:block;width:100%;box-sizing:border-box}
  .calc-tab.cartoes tr{border:1px solid var(--linha,#3a3d45);border-radius:8px;margin:0 0 10px;padding:6px 10px}
  .calc-tab.cartoes td{display:flex;justify-content:space-between;gap:12px;border:0;padding:3px 0;text-align:right}
  .calc-tab.cartoes td::before{content:attr(data-l);text-align:left;opacity:.7}
  .calc-tab.cartoes tfoot td:first-child{font-weight:600}
  .calc-tab.cartoes tfoot td:first-child::before{content:""}
}
