:root{--bg: #fff8f6;--card: #ffffff;--ink: #2e2433;--muted: #7a6b7f;--rose: #c2577a;--rose-2: #e88aa5;--plum: #8a4f8c;--soft: #fbe9ee;--line: #f0dde3;--ok: #3f9c7a;--warn: #b7791f;--radius: 18px;--shadow: 0 6px 24px rgba(140, 70, 100, .08);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;margin:0 0 .6rem}h1{font-size:clamp(1.5rem,4.5vw,2.3rem);letter-spacing:-.02em}h2{font-size:1.15rem}h3{font-size:1rem}.muted{color:var(--muted)}.app{max-width:1120px;margin:0 auto;padding:0 16px 120px}.top{position:sticky;top:0;z-index:20;display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:wrap}.brand{display:flex;gap:10px;align-items:center}.brand strong{display:block;font-size:1.05rem}.brand span{font-size:.78rem;color:var(--muted)}.seg{display:inline-flex;background:var(--soft);border-radius:999px;padding:4px}.seg button{border:0;background:transparent;padding:8px 16px;border-radius:999px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.seg button.on{background:#fff;color:var(--rose);box-shadow:var(--shadow)}.hero{padding:12px 0 8px}.hero p{color:var(--muted);max-width:680px;margin:0 0 12px}.disclaimer{background:#fff4e5;border:1px solid #f6dfb8;color:#7a5212;padding:10px 14px;border-radius:12px;font-size:.85rem}.grid{display:grid;gap:20px;margin-top:16px}@media (min-width: 900px){.grid{grid-template-columns:1fr 340px;align-items:start}}.col{display:grid;gap:16px;min-width:0}.card{background:var(--card);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);border:1px solid var(--line)}.steps{scroll-margin-top:120px;display:flex;gap:6px;overflow-x:auto}.steps button{flex:1;display:flex;gap:8px;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;padding:10px 8px;border-radius:14px;font:inherit;font-size:.88rem;color:var(--muted);cursor:pointer;white-space:nowrap}.steps button span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--soft);font-weight:700;font-size:.8rem}.steps button.on{border-color:var(--rose-2);color:var(--rose);font-weight:600}.steps button.on span{background:var(--rose);color:#fff}.steps button.done span{background:var(--ok);color:#fff}.field{display:grid;gap:6px;margin-bottom:16px}.field label,.lbl{font-weight:600;font-size:.92rem}.field small,.toggle small{color:var(--muted);font-size:.8rem}select,input[type=number],.money input{width:100%;font:inherit;font-size:1rem;padding:12px 14px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink)}select:focus,input:focus{outline:none;border-color:var(--rose-2);box-shadow:0 0 0 4px var(--soft)}.money{position:relative}.money input{padding-right:36px;text-align:right;font-variant-numeric:tabular-nums}.money span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted)}.tip{background:var(--soft);color:var(--plum);padding:10px 12px;border-radius:12px;font-size:.86rem}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips button{border:1.5px solid var(--line);background:#fff;padding:9px 14px;border-radius:999px;font:inherit;cursor:pointer}.chips button.on{border-color:var(--rose);background:var(--soft);color:var(--rose);font-weight:600}.range{display:flex;gap:12px;align-items:center}.range input{flex:1;accent-color:var(--rose)}.range output{font-weight:700;min-width:48px;text-align:right}.toggle{margin-bottom:16px;display:grid;gap:4px}.toggle label{display:flex;gap:10px;align-items:center;font-weight:600;cursor:pointer}.toggle input{width:20px;height:20px;accent-color:var(--rose)}.nav{display:flex;justify-content:space-between;gap:10px;margin-top:8px;flex-wrap:wrap}.btn{border:0;font:inherit;font-weight:600;padding:12px 18px;border-radius:14px;cursor:pointer;transition:transform .1s}.btn:active{transform:scale(.98)}.btn.primary{background:linear-gradient(135deg,var(--rose),var(--plum));color:#fff}.btn.ghost{background:transparent;color:var(--muted);border:1.5px solid var(--line)}.btn.soft{background:var(--soft);color:var(--rose)}.btn.block{width:100%;margin-top:8px}.detalle{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}.detalle th{text-align:left;font-weight:500;padding:9px 0;color:var(--ink)}.detalle td{text-align:right;padding:9px 0}.detalle tr{border-bottom:1px dashed var(--line)}.detalle tr.sub th,.detalle tr.sub td{color:var(--muted);padding-left:12px;font-size:.86rem}.detalle tr.hl th,.detalle tr.hl td{font-weight:700}.detalle tr.total th,.detalle tr.total td{font-size:1.1rem;font-weight:800;color:var(--rose);border-top:2px solid var(--rose-2)}.avisos{background:#fff4e5;border-radius:12px;padding:10px 14px 10px 30px;color:#7a5212;font-size:.86rem}.notas{margin-top:16px;font-size:.88rem}.notas ul{padding-left:18px;color:var(--muted)}.conf{padding:2px 8px;border-radius:999px;font-size:.75rem}.conf.cotejado{background:#e3f4ec;color:var(--ok)}.conf.parcial{background:#fff1d9;color:var(--warn)}.compare{margin-top:18px}.compare ol{list-style:none;padding:0;margin:0;display:grid;gap:4px;max-height:320px;overflow:auto}.compare li{display:flex;justify-content:space-between;padding:7px 10px;border-radius:10px;font-size:.88rem;background:#fcf6f8}.compare li.me{background:var(--soft);color:var(--rose);font-weight:700}.faq details{border-bottom:1px solid var(--line);padding:12px 0}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:"+";color:var(--rose);font-weight:700}.faq details[open] summary:after{content:"–"}.faq p{color:var(--muted);margin:8px 0 0;font-size:.92rem}.tipjar{background:linear-gradient(135deg,#fff,var(--soft))}.summary{position:fixed;left:0;right:0;bottom:0;z-index:30;width:100%;max-width:100vw;background:#fff;border-radius:22px 22px 0 0;box-shadow:0 -8px 30px #8c46642e;padding-bottom:env(safe-area-inset-bottom);overflow-x:hidden}.sheet-handle{width:100%;display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:14px 20px;font:inherit;cursor:pointer}.sheet-handle span{color:var(--muted);font-size:.88rem}.sheet-handle b{margin-left:auto;font-size:clamp(1rem,4.5vw,1.25rem);color:var(--rose);font-variant-numeric:tabular-nums;text-align:right}.sheet-handle i{font-style:normal;color:var(--muted)}.summary-body{display:none;padding:0 20px 20px;max-height:70vh;overflow:auto}.summary.open .summary-body{display:block}@media (min-width: 900px){.summary{position:sticky;top:80px;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line)}.sheet-handle{display:none}.summary-body{display:block;padding:20px;max-height:none}.app{padding-bottom:40px}}.big{background:linear-gradient(135deg,var(--rose),var(--plum));color:#fff;border-radius:16px;padding:16px;display:grid;gap:2px}.big span{opacity:.85;font-size:.85rem}.big strong{font-size:clamp(1.35rem,6vw,2rem);font-variant-numeric:tabular-nums;letter-spacing:-.02em;overflow-wrap:anywhere}.big em{font-style:normal;opacity:.9;font-size:.86rem}.bar{height:6px;background:var(--soft);border-radius:999px;margin:12px 0;overflow:hidden}.bar div{height:100%;background:var(--rose-2);transition:width .3s}.summary dl{display:grid;grid-template-columns:1fr auto;gap:6px 10px;margin:0;font-size:.9rem;font-variant-numeric:tabular-nums}.summary dt{color:var(--muted)}.summary dd{margin:0;text-align:right;font-weight:600}.mini{font-size:.78rem;color:var(--muted);margin:10px 0 0}.mini.warn{color:var(--warn)}.foot{margin-top:28px;font-size:.82rem;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;overflow-wrap:anywhere}.linkish{border:0;background:none;color:var(--rose);font:inherit;text-decoration:underline;cursor:pointer;padding:0}.legal{margin-top:10px}.legal summary{cursor:pointer;font-weight:600}.checks{border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:8px;margin:0 0 16px}.checks legend{font-weight:600;padding:0 6px}.checks label{display:flex;gap:8px;align-items:flex-start;font-size:.9rem}.bloqueo{background:#fff4e5;border:1px solid #f6dfb8;border-radius:12px;padding:12px 14px}.supuestos{color:var(--muted);font-size:.85rem}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#2e243373;display:grid;place-items:center;z-index:50;padding:16px}.modal{position:relative;background:#fff;border-radius:22px;padding:24px;max-width:440px;width:100%}.modal .x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:1.6rem;color:var(--muted);cursor:pointer}.pill{display:inline-block;background:var(--soft);color:var(--rose);padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:700;margin-bottom:10px}.ticks{padding-left:0;list-style:none;display:grid;gap:8px}.ticks li:before{content:"✓ ";color:var(--ok);font-weight:700}.thanks{background:#e3f4ec;color:var(--ok);padding:12px;border-radius:12px}.fuentes{margin-top:.5rem}.fuentes ul{margin:.25rem 0 0;padding-left:1.1rem;font-size:.85rem}.fuentes a{color:inherit}.chips.wrap{flex-wrap:wrap}.res-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:8px;margin:8px 0 14px}.res-head div{background:var(--soft, #fff4f8);border-radius:12px;padding:10px;text-align:center}.res-head span{display:block;font-size:12px;opacity:.75}.res-head strong{font-size:18px}@media (max-width: 767px){.detalle,.detalle tbody,.detalle tr,.detalle th,.detalle td{display:block;width:100%;text-align:left;white-space:normal}.detalle td{font-weight:700;padding-top:0}.detalle tr.sub th,.detalle tr.sub td{padding-left:0}.top{align-items:stretch}.seg{width:100%}.seg button{flex:1}.brand{min-width:0}.brand strong,.brand span{overflow-wrap:anywhere}}@media (max-width: 390px){.app{padding-left:12px;padding-right:12px}.card{padding:14px}.steps button{flex:1 1 0;min-width:0;white-space:normal;font-size:.78rem;padding:8px 4px;line-height:1.15}}.compare li span{min-width:0;overflow-wrap:anywhere}.compare li b{flex:none;margin-left:8px}html,body{overflow-x:clip}img,svg,table,.card,.summary{max-width:100%}@media print{.top .seg,.steps,.nav,.summary,.tipjar,.faq,.hero p,.compare,.checks{display:none!important}.grid{display:block}.card,.foot,.disclaimer,.avisos,.supuestos{box-shadow:none}.card{border:1px solid #ccc}body{background:#fff}}
