.calculator{max-width:1000px;margin:2rem auto;padding:2.5rem;background:var(--bg-header);backdrop-filter:blur(20px);border:1px solid var(--border-base);border-radius:24px;box-shadow:var(--card-shadow)}@media(max-width:640px){.calculator{padding:1.5rem 1rem;margin:1rem .5rem;border-radius:16px}}@media(max-width:350px){.calculator{padding:1rem .75rem;margin:.5rem .25rem}}html.modal-open,body.modal-open{overflow:hidden!important;height:100dvh!important;position:fixed!important;width:100%!important}.calculator__header{margin-bottom:2rem;text-align:center}.calculator__title{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;background:var(--hero-title-bg);-webkit-background-clip:text;-webkit-text-fill-color:transparent}@media(max-width:640px){.calculator__title{font-size:1.75rem;line-height:1.2}.calculator__subtitle{font-size:1rem}}@media(max-width:350px){.calculator__title{font-size:1.5rem}.calculator__subtitle{font-size:.85rem}}.calculator__subtitle{color:var(--text-muted);font-size:1.1rem}.calculator__presets{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border-soft)}.calculator__presets-label{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600}.calculator__preset-btns{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.preset-btn{background:var(--bg-hover);border:1px solid var(--border-soft);color:var(--text-base);padding:.6rem 1.2rem;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.preset-btn:hover{background:var(--border-soft);transform:translateY(-2px)}.preset-btn--active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 12px #f973164d}.calculator__main{display:grid;grid-template-columns:1fr 1fr;gap:4rem}@media(max-width:900px){.calculator__main{grid-template-columns:1fr;gap:3rem}}@media(max-width:640px){.calculator__main{gap:2rem}.calculator__presets{margin-bottom:1.5rem;padding-bottom:1rem;gap:.75rem}.calculator__preset-btns{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));width:100%;gap:.5rem}.preset-btn{padding:.6rem .5rem;font-size:.8rem;text-align:center}}.calculator__inputs{display:flex;flex-direction:column;gap:2rem}.input-group{display:flex;flex-direction:column;gap:.75rem}.input-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.input-header label{font-weight:600;font-size:1.1rem;white-space:nowrap}.input-wrapper{display:flex;align-items:baseline;gap:.5rem;background:var(--bg-hover);padding:.4rem .8rem;border-radius:12px;border:1px solid var(--border-soft);transition:all .2s}@media(max-width:500px){.input-header{flex-direction:column;align-items:flex-start;gap:.5rem}.input-wrapper{width:100%;justify-content:space-between}.manual-input{flex-grow:1}}.input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px #f973161a;background:var(--bg-header)}@media(max-width:640px){.manual-input{font-size:1.1rem}.input-wrapper{padding:.5rem .75rem}.currency-label{font-size:.8rem}}.manual-input{background:transparent;border:none;font-family:monospace;font-size:1.25rem;font-weight:700;color:var(--accent-primary);width:auto;min-width:40px;text-align:right;padding:0;outline:none}#price-input,#downpayment-input{width:140px}#downpayment-percent-input{width:40px}#rate-input{width:60px}#term-input{width:40px}.currency-label{font-size:.9rem;color:var(--text-muted);font-weight:600}.amount-input,.percent-input{display:flex;align-items:center;gap:.25rem}.percent-input{border-left:1px solid var(--border-soft);padding-left:.75rem;margin-left:.25rem}.slider{-webkit-appearance:none;width:100%;height:6px;background:var(--border-soft);border-radius:5px;outline:none;transition:opacity .2s}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--accent-primary);border:3px solid var(--bg-header);border-radius:50%;cursor:pointer;box-shadow:0 0 10px #0003;transition:all .2s}.slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.calculator__results{display:flex;flex-direction:column;gap:1.5rem}.result-card{padding:1.5rem;background:rgba(var(--accent-primary),.05);border:1px solid var(--border-soft);border-radius:16px;display:flex;flex-direction:column;gap:.5rem}.main-result{background:var(--accent-bg);color:#fff;border:none;padding:2rem}.main-result .result-label{color:#fffc}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.result-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.result-value{font-size:1.75rem;font-weight:800;line-height:1.2}@media(max-width:640px){.result-value{font-size:1.35rem}.result-label{font-size:.75rem}.main-result{padding:1.25rem}.result-card{padding:1rem}.results-grid{grid-template-columns:1fr}}@media(max-width:350px){.calculator__results{gap:.75rem}.result-value{font-size:1.15rem}.main-result{padding:1rem}.result-card{padding:.75rem}}.result-value.secondary{font-size:1.2rem;color:var(--text-base)}.chart-container{margin-top:1rem;display:flex;align-items:center;gap:2rem;padding:1rem;border-top:1px solid var(--border-soft)}@media(max-width:500px){.chart-container{flex-direction:column;gap:1.5rem;padding:1.5rem .5rem}.chart-info{width:100%;align-items:center;text-align:center}.chart-visual{justify-content:center}.chart-legend{width:100%}.legend-item{grid-template-columns:auto 1fr auto;font-size:.95rem}}@media(max-width:350px){.donut-chart{width:100px;height:100px}.chart-info__title{font-size:.8rem}}.donut-chart{width:120px;height:120px}.donut-ring{stroke:var(--border-soft)}.donut-segment{stroke:var(--accent-primary);transition:stroke-dasharray .5s ease}.donut-ring,.donut-segment{transform-origin:center;transform:rotate(-90deg)}.donut-label{fill:var(--text-base);font-size:1.1rem;font-weight:800;text-anchor:middle}.chart-info{display:flex;flex-direction:column;gap:1rem;flex:1.2}.chart-info__title{font-size:.95rem;font-weight:600;color:var(--text-muted);line-height:1.4}.chart-visual{display:flex;justify-content:flex-start}.chart-legend{display:flex;flex-direction:column;gap:.75rem;flex:1}.legend-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;font-size:.9rem;color:var(--text-muted)}.dot{width:10px;height:10px;border-radius:50%}.dot.principal{background:var(--border-soft)}.dot.interest{background:var(--accent-primary)}.legend-item span:last-child{font-weight:700;color:var(--text-base)}.calculator__schedule{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-soft);width:100%}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}@media(max-width:640px){.schedule-header{flex-direction:column;align-items:flex-start}}@media(max-width:350px){.calculator__schedule{margin-top:1.5rem;padding-top:1.5rem}.schedule-title{font-size:1.25rem}}.schedule-title{font-size:1.5rem;font-weight:700;color:var(--text-base)}.schedule-legend{display:flex;gap:1.5rem;flex-wrap:wrap}.schedule-legend .legend-item{display:flex;align-items:center;gap:.5rem}.dot.schedule-principal{background:#7e9fff;width:12px;height:12px;border-radius:3px}.dot.schedule-interest{background:#ffc857;width:12px;height:12px;border-radius:3px}.legend-text{font-size:.85rem;color:var(--text-muted)}.schedule-tabs{display:flex;gap:.75rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin}.schedule-tab{padding:.5rem 1.25rem;border-radius:100px;border:1px solid var(--border-soft);background:transparent;color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.schedule-tab:hover{border-color:#2563eb;color:#2563eb}.schedule-tab--active{background:#2563eb;color:#fff!important;border-color:#2563eb}.schedule-chart-wrapper{background:var(--bg-hover);border-radius:16px;padding:4.5rem 1rem 1rem;min-height:350px;display:flex;flex-direction:column;overflow-x:auto;position:relative}.schedule-chart-wrapper:after{content:"→";position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:1.25rem;opacity:.5;pointer-events:none;animation:bounceRight 2s infinite;display:none}@media(max-width:640px){.schedule-chart-wrapper:after{display:block}}@keyframes bounceRight{0%,20%,50%,80%,to{transform:translate(0) translateY(-50%)}40%{transform:translate(-5px) translateY(-50%)}60%{transform:translate(-3px) translateY(-50%)}}.schedule-chart{display:flex;align-items:flex-end;gap:4px;height:250px;width:100%;min-width:800px}@media(max-width:640px){.schedule-chart{min-width:1000px}}.schedule-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;border-radius:2px 2px 0 0;overflow:visible;min-width:8px;transition:opacity .2s;cursor:help;position:relative}.schedule-bar:hover{opacity:.8}.bar-interest{background:#ffc857;width:100%}.bar-principal{background:#7e9fff;width:100%}.schedule-x-axis{display:flex;justify-content:space-between;margin-top:1rem;padding:0 10px;border-top:1px solid var(--border-soft);padding-top:.75rem;min-width:600px}.x-axis-label{font-size:.75rem;color:var(--text-muted)}.schedule-tooltip-shared{position:absolute;background:#1e293b;color:#fff;padding:.6rem .8rem;border-radius:8px;font-size:.75rem;line-height:1.4;white-space:nowrap;display:none;z-index:2000;pointer-events:none;box-shadow:0 10px 15px -3px #0006;transform:translate(-50%,-100%) translateY(-10px)}.schedule-tooltip-shared:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:#1e293b transparent transparent transparent}.schedule-chart-wrapper.is-scrolled:after{display:none!important}@media(max-width:640px){.schedule-x-axis{display:flex!important;min-width:1000px}.x-axis-label{font-size:.65rem;transform:rotate(-45deg);transform-origin:left top;margin-top:5px}}.schedule-trigger-container{display:flex;justify-content:center;margin-top:2rem;gap:1rem}@media(max-width:500px){.schedule-trigger-container{flex-direction:column;width:100%}.schedule-btn{width:100%;justify-content:center}}@media(max-width:350px){.schedule-trigger-container{gap:.5rem}.schedule-btn{padding:.6rem 1rem;font-size:.85rem;border-radius:10px}}.calendar-btn{background:var(--bg-header);border-color:var(--accent-primary);color:var(--accent-primary)}.calendar-btn:hover{background:var(--accent-primary);color:#fff;box-shadow:0 10px 15px -3px #f973164d}.schedule-btn{display:flex;align-items:center;gap:.75rem;background:var(--bg-hover);border:1px solid var(--border-soft);color:var(--text-base);padding:.8rem 1.5rem;border-radius:14px;cursor:pointer;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px #0000001a}.schedule-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 10px 15px -3px #f973164d}.schedule-btn-icon{opacity:.8}.schedule-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;height:100dvh;background:#0f172a99;backdrop-filter:blur(8px);display:block;overflow-y:auto;padding:2rem 1rem;z-index:9999;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-overflow-scrolling:touch;color-scheme:dark}@media(max-width:350px){.schedule-modal-overlay{padding:1rem .5rem}}.schedule-modal-overlay.active{opacity:1;visibility:visible}.schedule-modal-content{width:100%;max-width:1100px;margin:0 auto 8rem;background:var(--bg-base);border:1px solid var(--border-base);border-radius:24px;position:relative;transform:scale(.9) translateY(20px);transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 25px 50px -12px #00000080}.schedule-modal-overlay.active .schedule-modal-content{transform:scale(1) translateY(0)}.modal-close{position:absolute;top:.75rem;right:.75rem;background:var(--bg-hover);border:none;color:var(--text-base);font-size:2rem;line-height:1;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.modal-close:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}.schedule-modal-content>.calculator__schedule,.schedule-modal-content>.calendar-header,.schedule-modal-content>.calendar-table-container{padding:2rem}@media(max-width:768px){.schedule-modal-content>.calculator__schedule,.schedule-modal-content>.calendar-header,.schedule-modal-content>.calendar-table-container{padding:2rem 1rem 1rem}}@media(max-width:350px){.schedule-modal-content>.calculator__schedule,.schedule-modal-content>.calendar-header,.schedule-modal-content>.calendar-table-container{padding:1.5rem .75rem .75rem}}@media(max-width:768px){.schedule-modal-content{width:100%;border-radius:16px;margin-bottom:10rem}.schedule-header{flex-direction:column;align-items:flex-start;gap:1rem}.x-axis-label{font-size:.65rem;transform:rotate(-45deg);white-space:nowrap}}.calendar-modal-content{padding:3rem;display:block}@media(max-width:640px){.calendar-modal-content{padding:4rem 1.5rem 1.5rem}}.calendar-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-soft)}.calendar-header-main{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.calendar-title{font-size:1.75rem;font-weight:700;color:var(--text-base);margin:0}.export-actions{display:flex;gap:.75rem;align-items:center}.export-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1rem;background:var(--bg-hover);border:1px solid var(--border-soft);border-radius:10px;color:var(--text-base);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:.85rem;font-weight:700;box-shadow:0 1px 2px #0000000d}.export-btn:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;transform:translateY(-2px);box-shadow:0 4px 6px -1px #f9731633}.export-btn:hover svg{opacity:1}.export-btn svg{opacity:.9;stroke-width:2.5}.calendar-table-container{overflow-x:auto;overflow-y:auto;flex-grow:1;border-radius:12px;background:var(--bg-header);border:1px solid var(--border-soft);scrollbar-width:thin}.calendar-table{width:100%;border-collapse:collapse;text-align:left;font-size:.95rem}.calendar-table th{background:var(--bg-header);padding:1rem;font-weight:700;color:var(--text-base);position:sticky;top:0;z-index:5;border-bottom:2px solid var(--border-soft);white-space:nowrap;opacity:1!important}.calendar-table td{padding:1rem;border-bottom:1px solid var(--border-soft);color:var(--text-base)}.calendar-table tr:hover td{background:rgba(var(--accent-primary-rgb, 249, 115, 22),.05)}.calendar-table td:first-child{font-weight:600;color:var(--text-muted)}.calendar-table td:last-child{font-weight:700;color:var(--accent-primary)}@media(max-width:640px){.calendar-modal-content{padding:4rem 1.5rem 1.5rem}.calendar-title{font-size:1.5rem}.export-btn .btn-text{display:none}.calendar-table th,.calendar-table td{padding:.75rem;font-size:.85rem}}@media(max-width:350px){.calendar-modal-content{padding:3.5rem .75rem .75rem}.calendar-title{font-size:1.25rem}.calendar-table th,.calendar-table td{padding:.5rem;font-size:.75rem}}@media print{*{max-width:100%!important;box-sizing:border-box!important}html,body{margin:0!important;padding:0!important;width:100%!important;height:auto!important;min-height:auto!important;overflow:visible!important;position:static!important;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}main{min-height:0!important;padding:0!important;overflow:visible!important}header,footer,nav,.mobile-nav,.calculator-info,.calculator__header,.calculator__presets,.calculator__inputs,.chart-container,.calculator-tabs-nav,.schedule-trigger-container,#schedule-modal,.modal-close,.export-actions{display:none!important}.calculator,.calculator__main{display:block!important;margin:0!important;padding:0!important;border:none!important;background:#fff!important;height:auto!important;box-shadow:none!important}.calculator__results{display:block!important;width:96%!important;margin:0 0 16pt!important;page-break-inside:avoid!important}.main-result{width:100%!important;background:#e2e8f0!important;background-image:none!important;border:1.5pt solid #334155!important;border-radius:4pt!important;padding:8pt!important;margin-bottom:4pt!important;box-shadow:none!important}.results-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4pt!important;width:100%!important}.result-card{width:100%!important;background:#f8fafc!important;background-image:none!important;border:1pt solid #cbd5e1!important;border-radius:4pt!important;padding:8pt!important;margin-bottom:0!important;color:#000!important;box-shadow:none!important;page-break-inside:avoid!important}.main-result .result-label,.result-label{color:#475569!important;font-size:7pt!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-weight:600!important;-webkit-text-fill-color:#475569!important}.main-result .result-value,.result-value{color:#0f172a!important;font-size:14pt!important;font-weight:800!important;line-height:1.2!important;background:none!important;background-image:none!important;-webkit-background-clip:unset!important;-webkit-text-fill-color:#0f172a!important}.result-value.secondary{font-size:11pt!important}.schedule-modal-overlay,.schedule-modal-content{position:static!important;display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;padding:0!important;margin:0!important;background:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important;transform:none!important;overflow:visible!important}#calendar-modal{position:static!important;display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:100%!important;height:auto!important;background:#fff!important;padding:0!important;margin:0!important;overflow:visible!important}.calendar-modal-content{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;padding:0!important;margin:0!important;border:none!important;box-shadow:none!important;background:#fff!important;transform:none!important;color:#000!important;overflow:visible!important}.calendar-header{margin-bottom:20pt!important;padding-bottom:10pt!important;border-bottom:2pt solid #000!important}.calendar-title{font-size:18pt!important;font-weight:700!important;color:#000!important}.calendar-table-container{display:block!important;overflow:visible!important;width:95%!important;height:auto!important;max-height:none!important;margin:10pt auto 20pt 10pt!important;padding:0 0 300pt!important;background:#fff!important;border:none!important}.calendar-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:10pt!important;background:#fff!important}.calendar-table th:nth-child(1),.calendar-table td:nth-child(1){width:18%!important}.calendar-table th:nth-child(2),.calendar-table td:nth-child(2){width:22%!important}.calendar-table th:nth-child(3),.calendar-table td:nth-child(3){width:20%!important}.calendar-table th:nth-child(4),.calendar-table td:nth-child(4){width:22%!important}.calendar-table th:nth-child(5),.calendar-table td:nth-child(5){width:18%!important}.calendar-table tr{page-break-inside:auto!important}.calendar-table th,.calendar-table td{padding:6pt 4pt!important;border:.5pt solid #cbd5e1!important;color:#000!important;text-align:right!important;background:#fff!important}.calendar-table th{background-color:#f1f5f9!important;font-weight:700!important;text-align:left!important;border-bottom:2pt solid #000!important}.calendar-table td:first-child,.calendar-table th:first-child{text-align:left!important}.calendar-table td:last-child{font-weight:700!important;color:#000!important}@page{margin:.8cm 1cm;size:A4 landscape}}.schedule-modal-overlay::-webkit-scrollbar{width:14px}.schedule-modal-overlay::-webkit-scrollbar-track{background:#0f172a;border-left:1px solid var(--border-soft)}.schedule-modal-overlay::-webkit-scrollbar-thumb{background:var(--border-base);border-radius:10px;border:4px solid #0f172a;background-clip:padding-box}.schedule-modal-overlay::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.schedule-modal-content::-webkit-scrollbar,.calendar-table-container::-webkit-scrollbar,.schedule-chart-wrapper::-webkit-scrollbar{width:8px;height:8px}.schedule-modal-content::-webkit-scrollbar-track,.calendar-table-container::-webkit-scrollbar-track,.schedule-chart-wrapper::-webkit-scrollbar-track{background:transparent}.schedule-modal-content::-webkit-scrollbar-thumb,.calendar-table-container::-webkit-scrollbar-thumb,.schedule-chart-wrapper::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:10px}.schedule-modal-content::-webkit-scrollbar-thumb:hover,.calendar-table-container::-webkit-scrollbar-thumb:hover,.schedule-chart-wrapper::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.schedule-modal-overlay,.schedule-modal-content,.calendar-table-container,.schedule-chart-wrapper{scrollbar-width:thin;scrollbar-color:var(--border-base) transparent}.calculator-page{padding:4rem 0;background:var(--section-gradient);min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.calculator-info{margin-top:5rem}.calculator-info h3{font-size:2rem;margin-bottom:2.5rem;text-align:center}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}@media(max-width:640px){.calculator-page{padding:2rem 0}.container{padding:0 1rem}.calculator-info{margin-top:3rem}.calculator-info h3{font-size:1.5rem;margin-bottom:1.5rem}.info-grid{grid-template-columns:1fr;gap:1.5rem}.info-card{padding:1.5rem}}.info-card{padding:2rem;background:var(--bg-header);border:1px solid var(--border-soft);border-radius:20px;transition:transform .3s ease}.info-card:hover{transform:translateY(-5px);border-color:var(--accent-primary)}.info-card h4{font-size:1.25rem;margin-bottom:1rem;color:var(--accent-primary)}.info-card p{color:var(--text-muted);font-size:.95rem;line-height:1.6}
