:root{color:#193a4a;background:#f1f5f7;font:14px/1.5 Inter,system-ui,-apple-system,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0}input,select,button{font:inherit}button{cursor:pointer}a{color:#137287}.container{max-width:1200px;margin:auto;padding:0 22px}.banner{background:linear-gradient(122deg,#071d32,#0b4055 72%,#0b7581);color:white}.nav{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:82px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:52px;height:52px;border-radius:13px}.brand strong{font-size:24px;letter-spacing:-.8px}.brand span{color:#5ee1d3}.brand small{display:block;font-weight:800;letter-spacing:1.8px;font-size:10px;color:#bed8df}.outline{border:1px solid #5ccfcf;background:#0f5263;color:white;font-size:12px;font-weight:800;border-radius:9px;padding:11px 15px}.hero{padding:29px 22px 46px}.eyebrow{font-size:11px;color:#87e5db;letter-spacing:1.2px;font-weight:800}.hero h1{font-size:clamp(30px,4vw,48px);line-height:1.13;letter-spacing:-1.3px;margin:12px 0}.hero h1 em{color:#73ebdf;font-style:normal}.hero p{color:#d5e5eb;max-width:700px;font-size:14px}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.chips span{font-size:11px;padding:7px 12px;border:1px solid #66909d;background:#13465b;border-radius:40px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.tabs button{border:1px solid #dce8ec;padding:12px 16px;border-radius:9px;background:white;color:#526f7d;font-size:12px;font-weight:800}.tabs button.active{background:#088991;color:white;border-color:#088991}.columns{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(355px,.94fr);gap:21px;align-items:start}.card{background:white;border-radius:17px;border:1px solid #e0e9ed;box-shadow:0 12px 32px #19435c0c;overflow:hidden}.card-title{padding:22px 26px;border-bottom:1px solid #eaf0f2}.card-title h2{font-size:20px;margin:0}.card-title p{font-size:12px;color:#76919d;margin:7px 0 0}#calcForm{padding:24px 26px}fieldset{padding:0;margin:0 0 28px;border:0;min-width:0}legend{display:block;color:#128697;font-weight:850;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:0;margin-bottom:13px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.grid>label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:700;color:#405e6d}.grid input,.grid select{min-width:0;width:100%;border:1px solid #d9e6e9;background:#fafdfd;padding:11px 12px;border-radius:9px;color:#213f50;outline:0}.grid input:focus,.grid select:focus{border-color:#0f9e9c;box-shadow:0 0 0 3px #11afb21e}.notice{background:#edf8f9;border-left:3px solid #1a9b9e;padding:12px 14px;border-radius:0 10px 10px 0;color:#416d79;font-size:12px;line-height:1.6;margin-top:13px}.widecheck{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#f2faf9;border:1px solid #bde5e4;border-radius:9px;margin-top:13px;font-size:12px;font-weight:500}.widecheck input,.checks input{width:17px;height:17px;accent-color:#078f89;flex-shrink:0;margin:0}.checks{display:grid;grid-template-columns:1fr 1fr;gap:9px}.checks label{display:flex;align-items:flex-start;gap:9px;border:1px solid #e2ebef;padding:10px 12px;border-radius:9px;font-size:12px;line-height:1.4}.smallgap{margin-top:14px}.tip{color:#7b929d;font-size:11.5px;line-height:1.6}.extra{margin-top:22px}.rowline{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.extra-item{display:grid;grid-template-columns:minmax(0,1fr) 120px 35px;gap:9px;margin-top:8px}.extra-item input{min-width:0;width:100%;padding:10px;border:1px solid #d5e4e8;border-radius:8px}.extra-item button{border:0;border-radius:8px;background:#ffeff0;color:#a73649}.buttons{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.primary,.lightbutton{border-radius:9px;font-size:12px;padding:11px 14px;font-weight:800}.primary{background:#068b89;border:1px solid #068b89;color:white}.primary:hover{background:#077777}.lightbutton{background:#eaf4f6;border:1px solid #cfe2e7;color:#236875}.result-top{background:linear-gradient(125deg,#0c344b,#0b6070);padding:25px 26px;color:white}.big-price{font-weight:900;font-size:clamp(29px,3.3vw,45px);letter-spacing:-1.7px;margin:10px 0}.status{display:inline-block;border-radius:30px;background:#2b7179;color:#e9fffa;font-size:11px;font-weight:750;padding:6px 10px}.result-top p{color:#cbdee4;font-size:12px;line-height:1.6}.result-detail{padding:22px 26px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.facts>div{background:#f3f8f9;border-radius:9px;padding:12px}.facts span{font-size:10px;color:#8195a0}.facts strong{display:block;margin-top:7px;font-size:14px;font-variant-numeric:tabular-nums}.group-label{font-size:12px;color:#137288;font-weight:900;letter-spacing:.3px;margin:23px 0 4px}.cost-line{padding:11px 0;border-bottom:1px solid #e8eef0;display:flex;justify-content:space-between;gap:10px;font-size:12px}.cost-line div{max-width:72%}.cost-line small{display:block;color:#7b8d98;line-height:1.5;margin-top:4px}.cost-line b{font-size:13px;white-space:nowrap}.totals{border-top:2px solid #08798b;margin:17px 0}.totals>div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 0;font-size:14px}.totals strong{font-size:18px}.totals .subtle{color:#687f8a;font-size:12px;border-top:1px solid #e7edf0}.totals .balance{border-top:1px solid #c6dbe0}.warning{background:#fff5e6;border:1px solid #f2ddbd;color:#785424;border-radius:10px;padding:13px 15px;font-size:12px;line-height:1.65;margin-bottom:17px}.warning ul{margin:5px 0;padding-left:18px}.warning.good{color:#237362;background:#eaf8f2;border-color:#c9ebde}.printmeta{margin-top:13px;font-size:11px;line-height:1.6;color:#597481}.disclaimer{font-size:11px;color:#7d9299;line-height:1.7}.solo{margin-bottom:44px}.pagebody{padding:24px 26px}.input-button{cursor:pointer}.library-item{border:1px solid #e0e9ed;border-radius:9px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}.library-item small{display:block;color:#7d929c}.library-item button{border:1px solid #c9dde2;color:#1a6376;background:#ecf6f8;border-radius:7px;padding:8px;font-size:11px;font-weight:700}.library-item .red{color:#9a3748;background:#fff1f3}.sources{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sources>div{border:1px solid #e0eaed;border-radius:10px;padding:17px}.sources h3{font-size:14px;margin:0}.sources p{font-size:12px;color:#6d8792;line-height:1.65}.sources a{font-size:12px;font-weight:750}footer{background:#09283b;color:#b8cdd5;text-align:center;font-size:11px;margin-top:50px;padding:22px}dialog{border:0;border-radius:15px;max-width:min(390px,90vw);box-shadow:0 24px 80px #072d3f80;padding:26px}dialog::backdrop{background:#001b2a99}dialog p{font-size:13px;line-height:1.65}[hidden]{display:none!important}@media(max-width:850px){.columns{grid-template-columns:1fr}.container{padding-left:16px;padding-right:16px}.card-title,#calcForm,.result-top,.result-detail,.pagebody{padding-left:18px;padding-right:18px}}@media(max-width:430px){.grid,.checks,.sources{grid-template-columns:1fr}.hero h1{font-size:31px}.extra-item{grid-template-columns:minmax(0,1fr) 100px 30px}.outline{font-size:11px;padding:9px}.brand strong{font-size:21px}}@media print{body{background:white;color:#162f3a}header,footer,.tabs,.form-card,#page-library,#page-sources,.result-detail .buttons,.disclaimer{display:none!important}.container{max-width:100%;padding:0}.columns{display:block}.result-card{box-shadow:none;border:0}.result-top{background:white;color:#102e41;padding:12px 0;border-bottom:2px solid #0c3b54}.result-top p,.result-top .eyebrow{color:#2a4c60}.status{color:#111;background:#eee}.result-detail{padding:13px 0}.cost-line{break-inside:avoid}.warning{background:#fff;border:1px solid #aaa;color:#333}}

/* Honorarios porcentuales o monto fijo cotizado */
#notary[readonly]{background:#e9f5f5;color:#15586a;font-weight:800;cursor:default}
#notaryRate:disabled{background:#edf1f3;color:#85979f}
.notary-hint{margin:12px 0 0;font-size:12px}

/* ISR vendedor: cálculo, inclusión/exclusión y distinción del comprador */
.isr-fieldset{border:1px solid #c9e2e3;background:#fbfefe;padding:17px;border-radius:12px}
.isr-switch{margin:3px 0 14px;background:#e8f5f4;font-size:13px}
.isr-switch small{color:#587785;line-height:1.45}
.isr-panel{margin-top:12px}.isr-result{font-weight:750;background:#eaf8ef;color:#155a56}
.isr-box{margin-top:18px;background:#edf8f7;border:1px solid #d0e9e7;border-radius:11px;padding:13px;display:grid;gap:9px}
.isr-box>div{display:flex;gap:14px;justify-content:space-between;font-size:12px}
.isr-box b{white-space:nowrap;font-size:14px;color:#145a64}.isr-box small{font-size:11px;color:#557e82;line-height:1.5}
@media(max-width:430px){.isr-fieldset{padding:12px}.isr-box b{font-size:13px}}
