
.fdv-calc{--fdv-accent:#1a5ce0;--fdv-accent-ink:#ffffff;--fdv-bg:#ffffff;--fdv-soft:#f2f5fc;--fdv-line:#d5dcec;--fdv-text:#182033;--fdv-muted:#525d75;--fdv-ok:#0d7a48;--fdv-ok-bg:#e7f6ee;--fdv-warn:#6b4700;--fdv-warn-bg:#fff4d4;--fdv-bad:#b42318;--fdv-bad-bg:#fdecea;font-family:inherit;color:var(--fdv-text);max-width:1040px;margin:0 auto;line-height:1.5;box-sizing:border-box}
.fdv-calc *,.fdv-calc *::before,.fdv-calc *::after{box-sizing:border-box}
.fdv-calc [hidden]{display:none !important}
.fdv-calc .fdv-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--fdv-line);border-radius:10px;background:var(--fdv-soft);margin-bottom:20px}
.fdv-calc .fdv-tab{flex:1;min-height:46px;padding:.6rem .8rem;border:0;border-radius:7px;background:transparent;color:var(--fdv-text);font:inherit;font-weight:600;cursor:pointer}
.fdv-calc .fdv-tab[aria-selected="true"]{background:var(--fdv-accent);color:var(--fdv-accent-ink)}
.fdv-calc .fdv-tab:focus-visible,.fdv-calc .fdv-btn:focus-visible{outline:3px solid var(--fdv-text);outline-offset:2px}
.fdv-calc .fdv-grid{display:grid;grid-template-columns:1fr;gap:24px}
@media (min-width:860px){.fdv-calc .fdv-grid{grid-template-columns:1fr 1fr;align-items:start}.fdv-calc .fdv-out{position:sticky;top:16px}}
.fdv-calc fieldset{border:1px solid var(--fdv-line);border-radius:10px;padding:16px;margin:0 0 16px;background:var(--fdv-bg);min-width:0}
.fdv-calc legend{padding:0 6px;font-weight:700;font-size:1rem}
.fdv-calc .fdv-field{margin:0 0 14px}
.fdv-calc .fdv-field:last-child{margin-bottom:0}
.fdv-calc label{display:block;font-weight:600;font-size:.95rem;margin-bottom:4px}
.fdv-calc .fdv-help{display:block;font-size:.85rem;color:var(--fdv-muted);margin-top:4px}
.fdv-calc .fdv-input{position:relative}
.fdv-calc .fdv-input input{width:100%;min-height:48px;padding:.65rem .8rem;border:1px solid #8b96ad;border-radius:8px;background:#fff;color:var(--fdv-text);font:inherit;font-size:16px;font-variant-numeric:tabular-nums;box-shadow:none;margin:0}
.fdv-calc .fdv-input.fdv-money input{padding-left:2.9rem}
.fdv-calc .fdv-input.fdv-pct input{padding-right:2.3rem}
.fdv-calc .fdv-input input:focus-visible{outline:3px solid var(--fdv-accent);outline-offset:1px;border-color:var(--fdv-accent)}
.fdv-calc .fdv-input .fdv-unit{position:absolute;top:50%;transform:translateY(-50%);color:var(--fdv-muted);font-weight:600;pointer-events:none}
.fdv-calc .fdv-money .fdv-unit{left:.85rem}
.fdv-calc .fdv-pct .fdv-unit{right:.85rem}
.fdv-calc .fdv-actions{display:flex;gap:10px;flex-wrap:wrap}
.fdv-calc .fdv-btn{min-height:48px;padding:.6rem 1.3rem;border-radius:8px;border:2px solid var(--fdv-accent);font:inherit;font-weight:700;cursor:pointer}
.fdv-calc .fdv-btn-main{background:var(--fdv-accent);color:var(--fdv-accent-ink)}
.fdv-calc .fdv-btn-sec{background:transparent;color:var(--fdv-accent)}
.fdv-calc .fdv-panel{border:1px solid var(--fdv-line);border-radius:10px;background:var(--fdv-bg);padding:18px}
.fdv-calc .fdv-vazio{margin:0;color:var(--fdv-muted)}
.fdv-calc .fdv-erro{margin:0 0 12px;padding:12px 14px;border-radius:8px;background:var(--fdv-bad-bg);color:var(--fdv-bad);font-weight:600}
.fdv-calc .fdv-hero{padding:16px;border-radius:8px;background:var(--fdv-soft);border-left:5px solid var(--fdv-accent);margin-bottom:14px}
.fdv-calc .fdv-hero.fdv-neg{border-left-color:var(--fdv-bad);background:var(--fdv-bad-bg)}
.fdv-calc .fdv-hero-rot{display:block;font-size:.95rem;color:var(--fdv-muted);font-weight:600}
.fdv-calc .fdv-hero-val{display:block;font-size:clamp(2rem,7vw,2.8rem);font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums}
.fdv-calc .fdv-hero.fdv-neg .fdv-hero-val{color:var(--fdv-bad)}
.fdv-calc .fdv-hero-sub{display:block;font-size:.9rem;color:var(--fdv-muted);margin-top:2px}
.fdv-calc dl.fdv-metricas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.fdv-calc .fdv-metricas div{padding:10px 12px;border:1px solid var(--fdv-line);border-radius:8px}
.fdv-calc .fdv-metricas dt{font-size:.85rem;color:var(--fdv-muted);margin:0}
.fdv-calc .fdv-metricas dd{margin:2px 0 0;font-weight:700;font-size:1.1rem;font-variant-numeric:tabular-nums}
.fdv-calc .fdv-metricas .fdv-full{grid-column:1 / -1}
.fdv-calc .fdv-sim{border-top:1px solid var(--fdv-line);padding-top:14px;margin-top:4px}
.fdv-calc .fdv-sim h3{margin:0 0 8px;font-size:1.05rem}
.fdv-calc .fdv-simres{margin-top:10px;padding:10px 12px;border-radius:8px;font-variant-numeric:tabular-nums}
.fdv-calc .fdv-simres.fdv-ok{background:var(--fdv-ok-bg);color:var(--fdv-ok)}
.fdv-calc .fdv-simres.fdv-warn{background:var(--fdv-warn-bg);color:var(--fdv-warn)}
.fdv-calc .fdv-simres.fdv-bad{background:var(--fdv-bad-bg);color:var(--fdv-bad)}
.fdv-calc .fdv-simres strong{display:block}
.fdv-calc .fdv-aviso{margin:14px 0 0;padding:10px 12px;border-radius:8px;background:var(--fdv-warn-bg);color:var(--fdv-warn);font-size:.9rem}
.fdv-calc .fdv-rodape{margin:14px 0 0;font-size:.85rem;color:var(--fdv-muted)}
@media (max-width:420px){.fdv-calc dl.fdv-metricas{grid-template-columns:1fr}}

/* Acabamento visual, isolado do restante do tema. */
.fdv-calc{--fdv-accent:#175cd3;--fdv-text:#142c48;--fdv-muted:#52657b;--fdv-line:#dce5ee;max-width:1120px;padding:clamp(16px,3vw,32px);background:#f5f8fc;border:1px solid #e3eaf2;border-radius:24px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;isolation:isolate}
.fdv-calc .fdv-intro{margin-bottom:24px}.fdv-calc .fdv-kicker{color:#175cd3;font-size:12px;letter-spacing:.12em;font-weight:800;text-transform:uppercase}.fdv-calc .fdv-intro h2{font-size:clamp(25px,4vw,36px);letter-spacing:-.035em;line-height:1.15;margin:8px 0 12px;color:var(--fdv-text)}.fdv-calc .fdv-intro p{margin:0;max-width:660px;color:var(--fdv-muted);font-size:15px}
.fdv-calc .fdv-tabs{padding:5px;border:0;background:#e7edf5;border-radius:12px;gap:5px}.fdv-calc .fdv-tab{font-size:14px;border-radius:9px;line-height:1.3;text-transform:none;letter-spacing:normal}.fdv-calc .fdv-tab[aria-selected="true"]{background:#fff;color:#175cd3;box-shadow:0 2px 7px #16365812}
.fdv-calc fieldset{border-radius:14px;padding:20px;margin-bottom:20px}.fdv-calc legend{color:#175cd3;font-size:14px;letter-spacing:.01em}.fdv-calc label{font-size:14px;line-height:1.4}.fdv-calc .fdv-help{font-size:12px;line-height:1.5}.fdv-calc .fdv-input input{border-color:#c6d3e1;border-radius:9px;min-height:48px;background:#fcfdff}.fdv-calc .fdv-input input:hover{border-color:#7996b8}.fdv-calc .fdv-field{margin-bottom:17px}.fdv-calc input[aria-invalid="true"]{border-color:#b42318}
.fdv-calc .fdv-panel{padding:22px;border-radius:18px;box-shadow:0 8px 28px #16365808}.fdv-calc .fdv-result-title{margin:0 0 18px;font-size:17px;font-weight:750;color:var(--fdv-text)}.fdv-calc .fdv-vazio{padding:28px 16px;border:1px dashed #bdcde0;border-radius:12px;background:#f8faff;text-align:center;font-size:14px}
.fdv-calc .fdv-hero{background:#113a70;color:#fff;border:0;border-radius:13px;padding:22px;margin-bottom:16px}.fdv-calc .fdv-hero-rot,.fdv-calc .fdv-hero-sub{color:#e0edff;font-size:13px}.fdv-calc .fdv-hero-val{font-size:clamp(28px,5vw,42px);letter-spacing:-.035em;margin:8px 0;overflow-wrap:anywhere}.fdv-calc .fdv-hero.fdv-neg{background:#fff0ee;color:#b42318}.fdv-calc .fdv-neg .fdv-hero-rot,.fdv-calc .fdv-neg .fdv-hero-sub{color:#922a21}
.fdv-calc .fdv-metricas div{background:#f7f9fc;border:0;padding:13px;border-radius:10px;min-width:0}.fdv-calc .fdv-metricas dt{font-size:12px}.fdv-calc .fdv-metricas dd{font-size:17px;overflow-wrap:anywhere}.fdv-calc .fdv-metricas div:first-child{background:#eaf7f0;color:#12633c}.fdv-calc .fdv-sim h3{font-size:16px;color:var(--fdv-text)}.fdv-calc .fdv-simres{font-size:14px}.fdv-calc .fdv-aviso{font-size:12px;background:#f1f5fa;color:#52657b}.fdv-calc .fdv-rodape{font-size:12px}
.fdv-calc .fdv-btn{font-size:14px;letter-spacing:normal;text-transform:none;border-radius:10px}.fdv-calc .fdv-btn-main{flex:1;box-shadow:0 4px 10px #175cd31a}.fdv-calc .fdv-btn-main:hover{background:#124bac}.fdv-calc .fdv-btn-sec{border-color:#dce5ee;color:#52657b;background:#fff}.fdv-calc .fdv-grid>*{min-width:0}
@media(min-width:860px){.fdv-calc .fdv-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}}
@media(max-width:480px){.fdv-calc{padding:14px;border-radius:16px}.fdv-calc fieldset{padding:14px}.fdv-calc .fdv-panel{padding:15px}.fdv-calc .fdv-tab{font-size:13px;padding:10px 6px}.fdv-calc .fdv-hero{padding:18px}}
