.rent-to-income-calculator{--border-color:#e4e5e5;--border-color-with-transparency:rgba(44,44,44,.118);--primary-color:#114256;--secondary-color:#c9594d;--highlight-color:#f26e5f;--success-color:#4ec860;--warning-color:#ff9800;--error-color:#dc2626;--light-bg:#f9f9f9;background-color:#fff;border-radius:35px;border:1px solid var(--border-color-with-transparency);padding:48px 40px;box-shadow:0px 15px 30px 0px rgba(0,0,0,.1);position:relative;overflow:hidden;max-width:550px;margin:20px auto;transition:all .3s ease}.rent-to-income-calculator .header{padding-bottom:24px;border-bottom:1px solid var(--border-color);margin-bottom:24px}.rent-to-income-calculator .header h2{color:var(--primary-color);margin:0;padding-bottom:8px;font-weight:600;font-size:24px}.rent-to-income-calculator .header p{margin:0}.rent-to-income-calculator .form-group{margin-bottom:15px;position:relative}.rent-to-income-calculator label{display:block;margin-bottom:5px;font-weight:400;color:#333;font-size:16px}.rent-to-income-calculator .input-wrapper{position:relative;transition:all .2s ease;border-radius:8px}.rent-to-income-calculator .input-wrapper.focused{box-shadow:0 0 0 2px rgba(17,66,86,.2)}.rent-to-income-calculator input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:5px;font-size:16px;box-sizing:border-box;transition:all .3s ease}.rent-to-income-calculator input:focus{outline:none;border-color:var(--primary-color)}.rent-to-income-calculator input.error{border-color:var(--error-color)}.rent-to-income-calculator .error-message{color:var(--error-color);font-size:14px;margin:6px 0 0;height:20px;opacity:0;transition:opacity .3s ease}.rent-to-income-calculator .error-message.visible{opacity:1}.rent-to-income-calculator .calculator-form,.rent-to-income-calculator .result{transition:opacity .3s ease-in-out,transform .3s ease-in-out}.rent-to-income-calculator button{justify-self:center;cursor:pointer;width:100%;min-width:200px;padding:12px 24px;border-radius:5px;background:linear-gradient(90deg,var(--secondary-color) 0%,var(--highlight-color) 100%);color:#fff;border:0;font-size:16px;font-weight:500;margin-top:10px;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 6px rgba(0,0,0,.1)}.rent-to-income-calculator .result{display:none}.rent-to-income-calculator .result h2{margin:0;color:var(--primary-color);padding-bottom:24px;font-weight:600;font-size:24px}.rent-to-income-calculator .result-card{border-radius:12px;margin-bottom:24px}.rent-to-income-calculator .result-row{display:flex;justify-content:space-between;margin-bottom:10px;padding:6px 0;font-size:16px}.rent-to-income-calculator .result-row:last-child{border-bottom:none;margin-bottom:0}.rent-to-income-calculator .result-row.highlight-row{background-color:rgba(17,66,86,.05);padding:12px 10px;border-radius:6px;margin-top:16px}.rent-to-income-calculator .result-label{font-weight:600;color:#555}.rent-to-income-calculator .result-value{font-weight:600;color:var(--primary-color)}.rent-to-income-calculator .progress-section{margin:30px 0}.rent-to-income-calculator .rti-progress-bar-container{width:100%;background-color:#e0e0e0;border-radius:8px;height:24px;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.rent-to-income-calculator #rtiProgressBar{height:100%;width:0;background-color:var(--secondary-color);border-radius:8px;transition:width 1s ease-in-out,background-color .5s ease-in-out;position:relative;text-align:right}.rent-to-income-calculator #rtiProgressText{color:#fff;font-size:14px;font-weight:600;line-height:24px;padding:0 10px;text-shadow:0 1px 2px rgba(0,0,0,.2);position:absolute;right:5px}.rent-to-income-calculator .progress-markers{display:flex;justify-content:space-between;padding:6px 4px;color:#666;font-size:14px;margin-top:4px}.rent-to-income-calculator #rtiProgressBar.affordable{background-color:var(--success-color)}.rent-to-income-calculator #rtiProgressBar.manageable{background-color:var(--warning-color)}.rent-to-income-calculator #rtiProgressBar.high{background-color:var(--error-color)}.rent-to-income-calculator .final-amount{font-weight:500;color:var(--primary-color);padding:12px;border-radius:4px;margin-top:15px;text-align:center;transition:all .3s ease;font-size:16px}.rent-to-income-calculator .final-amount.affordable{color:var(--primary-color)}.rent-to-income-calculator .final-amount.manageable{background-color:rgba(255,153,0,.089);color:#925903;border:1px solid #fcdaa7}.rent-to-income-calculator .final-amount.high{color:var(--error-color);border:1px solid #ffc3c3;background-color:#fee}.rent-to-income-calculator .calculate-again-button{margin-top:24px}.slide-in{animation:fadeInSlideIn .3s forwards cubic-bezier(.66,0,.34,1)}.slide-out{animation:fadeOutSlideOut .3s forwards cubic-bezier(.66,0,.34,1)}@keyframes fadeInSlideIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOutSlideOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-30px)}}@media (max-width:600px){.rent-to-income-calculator{padding:30px 20px;border-radius:20px}.rent-to-income-calculator .header h2{font-size:22px}.rent-to-income-calculator button{padding:12px 20px}}