/* HF461 · Diseño compacto encapsulado: no cambia Cartera, Finanzas ni componentes globales. */
.flux-calculator{width:100%;max-width:1440px;margin:0 auto;color:#eaf5ff;min-width:0}
.flux-calculator *{box-sizing:border-box}
.flux-calculator .calc-intro{margin:0 0 8px}
.flux-calculator .calc-eyebrow{display:block;font-size:9px;font-weight:850;letter-spacing:.1em;color:#43dfbd;margin-bottom:2px}
.flux-calculator .calc-intro h2{font-size:20px;line-height:1.2;margin:0 0 2px;color:#fff}
.flux-calculator .calc-intro p,.flux-calculator .calc-subtext{color:#9cb8d6;font-size:11px;line-height:1.3;margin:0 0 7px}
.flux-calculator .calc-layout{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:10px;align-items:start}
.flux-calculator .calc-panel{min-width:0;background:#0f1e34;border:1px solid #234461;border-radius:12px;padding:12px}
.flux-calculator .calc-panel h2{font-size:16px;line-height:1.3;margin:0 0 3px;color:#f7fbff}
.flux-calculator .calc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px}
.flux-calculator .calc-field{display:flex;flex-direction:column;min-width:0;gap:3px;font-size:11px;font-weight:730;color:#c8daf0}
.flux-calculator .calc-wide{grid-column:1/-1}
.flux-calculator .calc-field input,.flux-calculator .calc-field select{font:inherit;font-size:13px;font-weight:600;color:#fff;background:#07182e;border:1px solid #305071;border-radius:9px;width:100%;min-width:0;height:36px;min-height:36px;padding:6px 10px;outline-offset:2px}
.flux-calculator .calc-field input:focus-visible,.flux-calculator .calc-field select:focus-visible{outline:2px solid #42ddc3}
.flux-calculator .calc-amount-wrap{display:flex;align-items:center;min-width:0;background:#07182e;border:1px solid #305071;border-radius:10px;overflow:hidden}
.flux-calculator .calc-amount-wrap input{border:0;background:transparent;border-radius:0;flex:1 1 auto;width:1%;padding:6px 10px}
.flux-calculator .calc-currency-text{color:#a4c2d7;background:#152b47;border-left:1px solid #305071;display:flex;align-items:center;justify-content:center;min-width:46px;height:36px;font-size:11px;padding:0 7px;flex:0 0 auto}
.flux-calculator .calc-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.flux-calculator .calc-modes button{background:#10223b;border:1px solid #2a4765;color:#c9ddf5;border-radius:9px;padding:6px;min-width:0;min-height:36px;font-size:12px;font-weight:750}
.flux-calculator .calc-modes button.is-active{color:#45e0c1;background:#123a43;border-color:#43dfbd}
.flux-calculator .calc-primary{margin-top:9px;width:100%;border:0;border-radius:9px;background:#41d8b9;color:#031729;min-height:37px;font-size:13px;font-weight:850}
.flux-calculator .calc-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.flux-calculator .calc-stat{background:#132a47;border:1px solid #234563;border-radius:10px;padding:9px 10px;min-width:0;display:grid;gap:3px}
.flux-calculator .calc-stat span{font-size:10px;color:#a6c5df}
.flux-calculator .calc-stat strong{font-size:clamp(14px,1.35vw,18px);line-height:1.25;color:#54e2c6;font-weight:850;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.flux-calculator .calc-calendar-title{margin:10px 0 6px}
.flux-calculator .calc-calendar-title h3{font-size:13px;color:#fff;margin:0 0 2px}
.flux-calculator .calc-calendar-title p{font-size:10px;color:#9cb8d6;margin:0}
.flux-calculator .calc-calendar{border:1px solid #2a4864;border-radius:9px;overflow-y:auto;overflow-x:hidden;min-width:0;max-height:198px;scrollbar-width:thin;overscroll-behavior:contain}
.flux-calculator .calc-calendar-head,.flux-calculator .calc-calendar-row{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.4fr) minmax(0,1.5fr);gap:6px;align-items:center;padding:7px 10px}
.flux-calculator .calc-calendar-head{background:#17314f;font-size:10px;font-weight:750;color:#c0d8ea;position:sticky;top:0;z-index:1}
.flux-calculator .calc-calendar-row{border-top:1px solid #213b55;font-size:11px;color:#dbeafa;min-height:30px}
.flux-calculator .calc-calendar-row strong{font-weight:750;min-width:0;overflow-wrap:anywhere}
.flux-calculator .calc-calendar-row strong:last-child{text-align:right}
.flux-calculator .calc-explainer{background:#102a43;border:1px solid #2c5466;border-radius:9px;padding:7px 9px;color:#b7d8ed;font-size:10px;line-height:1.3;margin:8px 0}
.flux-calculator .calc-result-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:7px}
.flux-calculator .calc-result-actions button{min-width:0;border-radius:9px;min-height:37px;font-size:11px;font-weight:750;padding:7px 8px}
.flux-calculator .calc-copy{background:#183a5b;border:1px solid #2c5a7b;color:#fff}
.flux-calculator .calc-clear{background:#211b2a;border:1px solid #94536a;color:#ffb0bf}
.flux-calculator .calc-error{background:#3b2432;color:#ffc7d1;border:1px solid #a55a6c;padding:12px;border-radius:10px;font-size:13px;line-height:1.4}
@media(max-width:950px){.flux-calculator .calc-layout{grid-template-columns:minmax(0,1fr)}.flux-calculator .calc-panel{padding:12px}.flux-calculator .calc-stat strong{font-size:17px}}
@media(max-width:540px){
.flux-calculator .calc-intro{margin-bottom:6px}
.flux-calculator .calc-intro h2{font-size:18px}
.flux-calculator .calc-layout{gap:8px}
.flux-calculator .calc-panel{padding:10px;border-radius:11px}
.flux-calculator .calc-panel h2{font-size:15px}
.flux-calculator .calc-form-grid{gap:6px 8px}
.flux-calculator .calc-field{font-size:11px}
.flux-calculator .calc-field input,.flux-calculator .calc-field select{height:40px;min-height:40px;font-size:13px;padding:7px 9px}
.flux-calculator .calc-currency-text{height:40px;min-width:44px}
.flux-calculator .calc-modes button{min-height:40px}
.flux-calculator .calc-primary{min-height:40px;margin-top:8px}
.flux-calculator .calc-stat{padding:8px 9px}
.flux-calculator .calc-stat span{font-size:10px}
.flux-calculator .calc-stat strong{font-size:15px}
.flux-calculator .calc-calendar{max-height:174px}
.flux-calculator .calc-calendar-head,.flux-calculator .calc-calendar-row{padding:7px 7px;grid-template-columns:minmax(0,.63fr) minmax(0,1.24fr) minmax(0,1.4fr);gap:5px;font-size:11px}
.flux-calculator .calc-calendar-head{font-size:10px}
.flux-calculator .calc-calendar-row{min-height:30px}
.flux-calculator .calc-result-actions button{min-height:40px}
}
@media(max-width:350px){.flux-calculator .calc-stat strong{font-size:13px}.flux-calculator .calc-field select{font-size:12px}.flux-calculator .calc-calendar-row{font-size:10px}.flux-calculator .calc-calendar-head{font-size:9px}.flux-calculator .calc-modes button{font-size:12px}}
