/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
.progress{position:relative;}.progress__track{min-width:100px;max-width:100%;height:16px;margin-top:5px;border:1px solid;background-color:#fff;}.progress__bar{width:3%;min-width:3%;max-width:100%;height:16px;background-color:#000;}.progress__description,.progress__percentage{overflow:hidden;margin-top:0.2em;color:#555;font-size:0.875em;}.progress__description{float:left;}[dir="rtl"] .progress__description{float:right;}.progress__percentage{float:right;}[dir="rtl"] .progress__percentage{float:left;}.progress--small .progress__track{height:7px;}.progress--small .progress__bar{height:7px;background-size:20px 20px;}
.ajax-progress{display:inline-block;padding:1px 5px 2px 5px;}[dir="rtl"] .ajax-progress{float:right;}.ajax-progress-throbber .throbber{display:inline;padding:1px 6px 2px;background:transparent url(/core/misc/throbber-active.svg) no-repeat 0 center;}.ajax-progress-throbber .message{display:inline;padding:1px 5px 2px;}tr .ajax-progress-throbber .throbber{margin:0 2px;}.ajax-progress-bar{width:16em;}.ajax-progress-fullscreen{position:fixed;z-index:1261;top:48.5%;left:49%;width:24px;height:24px;padding:4px;opacity:0.9;border-radius:7px;background-color:#232323;background-image:url(/core/misc/loading-small.svg);background-repeat:no-repeat;background-position:center center;}[dir="rtl"] .ajax-progress-fullscreen{right:49%;left:auto;}
.social-sharing-buttons{display:flex;align-items:center;justify-content:center;margin:2em 0;}.social-sharing-buttons a,.social-sharing-buttons-button{display:flex;align-items:center;justify-content:center;margin:0 4px;text-decoration:none;}.social-sharing-buttons-wrapper{position:relative;}.btn-copy{padding:0;cursor:pointer;}.social-sharing-buttons-popup{position:absolute;top:0;left:50%;display:none;overflow:hidden;min-width:6em;height:0;padding:5px;transition:all 0.5s ease;transform:translate(-50%,calc(-100% - 10px));text-align:center;color:white;border-radius:3px;background-color:black;font-size:small;}.social-sharing-buttons-popup.visible{display:block;overflow:unset;height:auto;}.social-sharing-buttons-popup::before{position:absolute;bottom:0;left:50%;display:block;width:0;height:0;content:"";transform:translate(-50%,100%);border-top:10px solid black;border-right:10px solid transparent;border-left:10px solid transparent;}.social-sharing-buttons-visually-hidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;padding:0;white-space:nowrap;border:0;}
.layout--onecol .layout__region{width:100%;}
:root{--primary-color:#003D82;--secondary-color:#00A651;--accent-color:#E31837;--text-dark:#1A1A1A;--text-light:#666666;--border-color:#DDDDDD;--bg-light:#F8F9FA;--bg-white:#FFFFFF;--success-color:#28A745;--warning-color:#FFC107;--danger-color:#DC3545;--shadow-sm:0 2px 4px rgba(0,0,0,0.05);--shadow-md:0 4px 12px rgba(0,0,0,0.1);--shadow-lg:0 8px 24px rgba(0,0,0,0.15);--transition-fast:0.2s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease;}.mortgage-calculator-wrapper{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Arial,sans-serif;max-width:1200px;margin:0 auto;padding:20px;background:var(--bg-light);border-radius:8px;}.calculator-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:3px solid var(--primary-color);}.calculator-header h2{color:var(--primary-color);font-size:32px;font-weight:700;margin:0 0 10px 0;animation:fadeInDown 0.5s ease;}.calculator-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--border-color);overflow-x:auto;}.calculator-tab{padding:15px 25px;background:var(--bg-white);border:2px solid var(--border-color);border-bottom:none;border-radius:8px 8px 0 0;cursor:pointer;font-weight:600;color:var(--text-light);transition:all var(--transition-fast);white-space:nowrap;}.calculator-tab:hover{background:var(--bg-light);color:var(--primary-color);}.calculator-tab.active{background:var(--primary-color);color:white;border-color:var(--primary-color);transform:translateY(2px);}.calculator-content{background:var(--bg-white);padding:30px;border-radius:8px;box-shadow:var(--shadow-md);animation:fadeIn 0.4s ease;}.calculator-section{display:none;}.calculator-section.active{display:block;}.calculator-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}@media (max-width:992px){.calculator-layout{grid-template-columns:1fr;}}.form-group{margin-bottom:25px;animation:slideInLeft 0.4s ease;}.form-group label{display:block;font-weight:600;color:var(--text-dark);margin-bottom:8px;font-size:14px;text-transform:uppercase;letter-spacing:0.5px;}.form-group input[type="number"],.form-group input[type="text"],.form-group select{width:100%;padding:12px 15px;border:2px solid var(--border-color);border-radius:6px;font-size:16px;transition:all var(--transition-fast);background:var(--bg-white);}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(0,61,130,0.1);}.form-group .input-group{position:relative;}.form-group .input-prefix,.form-group .input-suffix{position:absolute;top:50%;transform:translateY(-50%);font-weight:600;color:var(--text-light);pointer-events:none;}.form-group .input-prefix{left:15px;}.form-group .input-suffix{right:15px;}.form-group .has-prefix input{padding-left:35px;}.form-group .has-suffix input{padding-right:35px;}.slider-container{margin-top:10px;}.slider-input{width:100%;height:8px;border-radius:4px;background:linear-gradient(to right,var(--primary-color),var(--secondary-color));outline:none;-webkit-appearance:none;cursor:pointer;}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast);}.slider-input::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:var(--shadow-lg);}.slider-input::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:var(--shadow-md);border:none;transition:all var(--transition-fast);}.slider-values{display:flex;justify-content:space-between;margin-top:5px;font-size:12px;color:var(--text-light);}.form-check{display:flex;align-items:center;margin-bottom:15px;}.form-check input[type="checkbox"],.form-check input[type="radio"]{width:20px;height:20px;margin-right:10px;cursor:pointer;accent-color:var(--primary-color);}.form-check label{margin:0;cursor:pointer;font-weight:500;}.radio-group{display:flex;flex-direction:column;gap:12px;}.radio-group .form-check{border:2px solid var(--border-color);border-radius:8px;padding:15px;background:var(--bg-white);transition:all 0.2s ease;}.radio-group .form-check:hover{border-color:var(--primary-color);background:rgba(0,61,130,0.02);}.radio-group .form-check:has(input[type="radio"]:checked){border-color:var(--primary-color);background:rgba(0,61,130,0.05);box-shadow:0 0 0 3px rgba(0,61,130,0.1);}.radio-group .form-check label{display:flex;flex-direction:column;gap:4px;width:100%;}.radio-group .form-check label strong{color:var(--primary-color);font-size:15px;}.radio-group .option-description{font-size:13px;font-weight:400;color:var(--text-muted);line-height:1.4;}.results-panel{background:linear-gradient(135deg,var(--primary-color),#00539F);color:white;padding:30px;border-radius:8px;box-shadow:var(--shadow-lg);animation:slideInRight 0.4s ease;}.results-panel h3{margin:0 0 25px 0;font-size:24px;font-weight:700;border-bottom:2px solid rgba(255,255,255,0.3);padding-bottom:15px;}.result-item{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,0.2);}.result-item:last-child{border-bottom:none;margin-bottom:0;}.result-label{font-size:13px;text-transform:uppercase;letter-spacing:1px;opacity:0.9;margin-bottom:5px;}.result-value{font-size:32px;font-weight:700;animation:countUp 0.5s ease;}.result-value.large{font-size:42px;}.result-value.small{font-size:24px;}.result-subtext{font-size:14px;opacity:0.8;margin-top:5px;}.progress-bar-container{margin:20px 0;}.progress-bar-label{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px;text-transform:uppercase;}.progress-bar{height:12px;background:rgba(255,255,255,0.2);border-radius:6px;overflow:hidden;position:relative;}.progress-fill{height:100%;background:linear-gradient(90deg,var(--secondary-color),#00C060);border-radius:6px;transition:width var(--transition-slow);box-shadow:0 0 10px rgba(0,166,81,0.5);}.progress-fill.warning{background:linear-gradient(90deg,var(--warning-color),#FFD700);}.progress-fill.danger{background:linear-gradient(90deg,var(--danger-color),#FF4444);}.chart-container{margin:30px 0 0;padding:20px;background:var(--bg-white);border-radius:8px;box-shadow:var(--shadow-sm);border-top:3px solid var(--primary-color);position:relative;height:400px;max-height:400px;overflow:hidden;contain:layout style;}.chart-container h4{margin:0 0 15px;color:var(--primary-color);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;}.chart-container canvas{display:block !important;max-width:100%;max-height:350px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;}.calculator-outputs{overflow:visible !important;contain:none;}@media (max-width:768px){.chart-container{height:300px;max-height:300px;margin:20px -15px 0;border-radius:0;}.chart-container canvas{max-height:250px;}}@media (max-width:480px){.chart-container{height:250px;max-height:250px;padding:15px 10px;}.chart-container canvas{max-height:200px;}.chart-container h4{font-size:14px;margin-bottom:10px;}}.mortgage-calculator-wrapper{scroll-behavior:auto !important;}canvas{will-change:auto;transform:translateZ(0);}
