@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes score-section-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes panel-pulse{0%,to{transform:scale(1);box-shadow:0 10px 25px -5px rgba(0,0,0,.1)}50%{transform:scale(1.005);box-shadow:0 15px 35px -5px rgba(0,0,0,.15)}}.affordability-excellent{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 50%,#a7f3d0 100%);border:2px solid #34d399;color:#065f46;box-shadow:0 4px 20px rgba(52,211,153,.25),inset 0 1px 0 rgba(255,255,255,.6)}.affordability-comfortable{background:linear-gradient(135deg,#eff6ff 0,#dbeafe 50%,#bfdbfe 100%);border:2px solid #60a5fa;color:#1e40af;box-shadow:0 4px 20px rgba(96,165,250,.25),inset 0 1px 0 rgba(255,255,255,.6)}.affordability-moderate{background:linear-gradient(135deg,#fffbeb 0,#fef3c7 50%,#fde68a 100%);border:2px solid #fbbf24;color:#92400e;box-shadow:0 4px 20px rgba(251,191,36,.25),inset 0 1px 0 rgba(255,255,255,.6)}.affordability-risky{background:linear-gradient(135deg,#fef2f2 0,#fecaca 50%,#fca5a5 100%);border:2px solid #f87171;color:#991b1b;box-shadow:0 4px 20px rgba(248,113,113,.25),inset 0 1px 0 rgba(255,255,255,.6)}.score-excellent{color:#059669;text-shadow:0 1px 2px rgba(5,150,105,.1)}.score-comfortable{color:#2563eb;text-shadow:0 1px 2px rgba(37,99,235,.1)}.score-moderate{color:#d97706;text-shadow:0 1px 2px rgba(217,119,6,.1)}.score-risky{color:#dc2626;text-shadow:0 1px 2px rgba(220,38,38,.1)}.affordability-panel-excellent{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);border:2px solid #6ee7b7;border-left:5px solid #10b981;box-shadow:0 4px 15px rgba(16,185,129,.15)}.affordability-panel-comfortable{background:linear-gradient(135deg,#eff6ff 0,#dbeafe 100%);border:2px solid #93c5fd;border-left:5px solid #3b82f6;box-shadow:0 4px 15px rgba(59,130,246,.15)}.affordability-panel-moderate{background:linear-gradient(135deg,#fffbeb 0,#fef3c7 100%);border:2px solid #fcd34d;border-left:5px solid #f59e0b;box-shadow:0 4px 15px rgba(245,158,11,.15)}.affordability-panel-risky{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);border:2px solid #fca5a5;border-left:5px solid #ef4444;box-shadow:0 4px 15px rgba(239,68,68,.15)}.affordability-meter,.affordability-section{transition:all .4s cubic-bezier(.4,0,.2,1)}.affordability-status-excellent .fas{color:#10b981;filter:drop-shadow(0 2px 4px rgba(16,185,129,.3))}.affordability-status-comfortable .fas{color:#3b82f6;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.affordability-status-moderate .fas{color:#f59e0b;filter:drop-shadow(0 2px 4px rgba(245,158,11,.3))}.affordability-status-risky .fas{color:#ef4444;filter:drop-shadow(0 2px 4px rgba(239,68,68,.3))}.affordability-meter{height:10px;border-radius:10px;overflow:hidden}.debt-ratio-bar,.emi-ratio-bar{transition:all .5s cubic-bezier(.4,0,.2,1);border-radius:10px;position:relative;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.debt-ratio-bar::after,.emi-ratio-bar::after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}#affordability-score-section.affordability-score-section-excellent{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 50%,#a7f3d0 100%)!important;border:2px solid #6ee7b7!important;border-left:6px solid #10b981!important;box-shadow:0 8px 25px rgba(16,185,129,.2),inset 0 1px 0 rgba(255,255,255,.5)!important}#affordability-score-section.affordability-score-section-excellent .text-gray-600,#affordability-score-section.affordability-score-section-excellent span:not([class*=text-]){color:#065f46!important}#affordability-score-section.affordability-score-section-comfortable{background:linear-gradient(135deg,#eff6ff 0,#dbeafe 50%,#bfdbfe 100%)!important;border:2px solid #93c5fd!important;border-left:6px solid #3b82f6!important;box-shadow:0 8px 25px rgba(59,130,246,.2),inset 0 1px 0 rgba(255,255,255,.5)!important}#affordability-score-section.affordability-score-section-comfortable .text-gray-600,#affordability-score-section.affordability-score-section-comfortable span:not([class*=text-]){color:#1e3a8a!important}#affordability-score-section.affordability-score-section-moderate{background:linear-gradient(135deg,#fffbeb 0,#fef3c7 50%,#fde68a 100%)!important;border:2px solid #fcd34d!important;border-left:6px solid #f59e0b!important;box-shadow:0 8px 25px rgba(245,158,11,.2),inset 0 1px 0 rgba(255,255,255,.5)!important}#affordability-score-section.affordability-score-section-moderate .text-gray-600,#affordability-score-section.affordability-score-section-moderate span:not([class*=text-]){color:#78350f!important}#affordability-score-section.affordability-score-section-risky{background:linear-gradient(135deg,#fef2f2 0,#fecaca 50%,#fca5a5 100%)!important;border:2px solid #fca5a5!important;border-left:6px solid #ef4444!important;box-shadow:0 8px 25px rgba(239,68,68,.2),inset 0 1px 0 rgba(255,255,255,.5)!important}#affordability-score-section.affordability-score-section-risky .text-gray-600,#affordability-score-section.affordability-score-section-risky span:not([class*=text-]){color:#7f1d1d!important}#affordability-score-section .font-medium{color:#111827!important;font-weight:700!important}#affordability-score-section .text-sm{color:#374151!important}#affordability-score-display{font-size:2.5rem!important;font-weight:800!important;letter-spacing:-.02em;transition:all .3s ease}.affordability-meter-excellent{background:linear-gradient(90deg,#10b981 0,#059669 100%)!important;box-shadow:0 2px 8px rgba(16,185,129,.4)!important}.affordability-meter-comfortable{background:linear-gradient(90deg,#3b82f6 0,#2563eb 100%)!important;box-shadow:0 2px 8px rgba(59,130,246,.4)!important}.affordability-meter-moderate{background:linear-gradient(90deg,#f59e0b 0,#d97706 100%)!important;box-shadow:0 2px 8px rgba(245,158,11,.4)!important}.affordability-meter-risky{background:linear-gradient(90deg,#ef4444 0,#dc2626 100%)!important;box-shadow:0 2px 8px rgba(239,68,68,.4)!important}.score-section-change{animation:score-section-pulse .6s cubic-bezier(.4,0,.2,1)}.panel-score-change{animation:panel-pulse .6s cubic-bezier(.4,0,.2,1)}#affordability-section input[type=number],#affordability-section input[type=text]{padding:.625rem .75rem .625rem 2rem!important;border:2px solid #e5e7eb!important;border-radius:.5rem!important;font-size:.95rem!important;font-weight:600!important;color:#1f2937!important;background:#fff!important;box-shadow:0 1px 3px rgba(0,0,0,.05)!important;transition:all .2s ease!important;-webkit-appearance:none!important;-moz-appearance:textfield!important;appearance:none!important}#affordability-section input[type=number]::-webkit-inner-spin-button,#affordability-section input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}#affordability-section input[type=number]:focus,#affordability-section input[type=text]:focus{outline:0!important;border-color:#3b82f6!important;box-shadow:0 0 0 3px rgba(59,130,246,.15)!important;background:#fafbff!important}#affordability-section input:-webkit-autofill,#affordability-section input:-webkit-autofill:active,#affordability-section input:-webkit-autofill:focus,#affordability-section input:-webkit-autofill:hover{-webkit-text-fill-color:#1f2937!important;-webkit-box-shadow:0 0 0 30px #fff inset!important;box-shadow:0 1px 3px rgba(0,0,0,.05)!important;transition:background-color 5000s ease-in-out 0s!important}#affordability-section input::selection{background-color:#bfdbfe!important;color:#1f2937!important}#affordability-section .relative span{font-size:.95rem!important;font-weight:600!important;color:#6b7280!important}