
#calc-root{--brand:#1d4ed8;--ink:#0f172a;--texto:#475569;--muted:#64748b;--line:#e2e8f0;--line2:#cbd5e1;--accent:#eff6ff;--ok:#15803d;--mal:#b91c1c;--warn:#b45309;color:var(--texto);font-size:15px}
#calc-root .grid{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
#calc-root .card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 12px 32px rgba(30,64,175,.06);min-width:0}
#calc-root .card h2{display:flex;align-items:center;gap:9px;margin:0 0 12px;font-size:16px;font-weight:800;color:var(--ink)}
#calc-root .card h2::before{content:"";flex:none;width:8px;height:8px;border-radius:3px;background:var(--brand)}
@media (min-width:901px){#calc-root .grid.two{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start}#calc-root .grid.two>.card:last-child{position:sticky;top:88px}}
#calc-root label{display:block;font-size:13px;font-weight:700;color:#334155;margin:10px 0 4px}
#calc-root input[type=number],#calc-root input[type=date],#calc-root input[type=text],#calc-root select{width:100%;padding:11px 12px;border:1px solid var(--line2);border-radius:12px;background:#fff;color:var(--ink);font:600 15px/1.3 inherit;transition:border-color .12s,box-shadow .12s}
#calc-root input:hover,#calc-root select:hover{border-color:var(--muted)}
#calc-root input:focus-visible,#calc-root select:focus-visible,#calc-root summary:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(29,78,216,.18)}
#calc-root input:disabled,#calc-root select:disabled{background:#f8fafc;color:var(--muted);border-color:var(--line)}
#calc-root input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand)}
#calc-root .check{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--ink);font-weight:600}
#calc-root .row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;align-items:end}
#calc-root .big{font-size:44px;line-height:1.1;font-weight:800;color:var(--brand);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:4px 0 12px;overflow-wrap:anywhere}
#calc-root table{width:100%;border-collapse:collapse;font-size:14px}
#calc-root td,#calc-root th{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
#calc-root th{font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding-top:18px}
#calc-root td.num,#calc-root th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700;color:var(--ink)}
#calc-root tr.mas td.num{color:var(--ok)}
#calc-root tr.menos td.num{color:var(--mal)}
#calc-root tr.sub td,#calc-root tr.sub td.num{color:var(--muted);font-weight:500}
#calc-root tr.total td{font-weight:800;color:var(--ink);background:var(--accent);border-bottom:2px solid #fff}
#calc-root tr.total td:first-child{border-radius:10px 0 0 10px}
#calc-root tr.total td:last-child{border-radius:0 10px 10px 0;color:var(--brand)}
#calc-root .note{font-size:12.5px;color:var(--muted);margin:10px 0 0;line-height:1.5}
#calc-root .warn{color:var(--warn);font-size:13px;font-weight:700;margin:8px 0 0}
#calc-root .warn:empty,#calc-root .note:empty{display:none}
#calc-root details summary{cursor:pointer;color:var(--ink);font-size:15px;font-weight:800;margin-bottom:4px;list-style:none;display:flex;align-items:center;justify-content:space-between}
#calc-root details summary::-webkit-details-marker{display:none}
#calc-root details summary::after{content:"▾";color:var(--muted)}
#calc-root details[open] summary::after{content:"▴"}
@media (max-width:640px){#calc-root .card{padding:16px}#calc-root .big{font-size:36px}#calc-root .row2{grid-template-columns:minmax(0,1fr)}#calc-root td,#calc-root th{padding:8px 4px}}
@media (prefers-reduced-motion:reduce){#calc-root *{transition:none!important}}
