.navbar{z-index:50;background-color:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0}.navbar-container{justify-content:space-between;align-items:center;max-width:1200px;height:64px;margin:0 auto;padding:0 20px;display:flex}.navbar-brand{color:#0f172a;align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.navbar-logo{color:#2563eb;width:24px;height:24px}.navbar-links{align-items:center;gap:8px;display:flex}.nav-link{color:#64748b;border-radius:6px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s}.nav-link:hover{color:#0f172a;background-color:#f1f5f9}.nav-link.active{color:#2563eb;background-color:#eff6ff;font-weight:600}.navbar-auth{align-items:center;gap:12px;display:flex}.user-email-tag{color:#475569;text-overflow:ellipsis;white-space:nowrap;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;max-width:180px;padding:4px 10px;font-size:13px;overflow:hidden}.btn-nav-login{color:#fff;background-color:#2563eb;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s}.btn-nav-login:hover{background-color:#1d4ed8}.btn-nav-logout{color:#64748b;cursor:pointer;background-color:#0000;border:1px solid #cbd5e1;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s}.btn-nav-logout:hover{color:#0f172a;background-color:#f8fafc;border-color:#94a3b8}.loan-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:14px;min-width:0;padding:20px;transition:border-color .16s,box-shadow .16s;display:flex;box-shadow:0 2px 8px #0f172a0a}.loan-card.selected{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb,0 4px 14px #2563eb14}.loan-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.loan-bank-name{color:#0f172a;font-size:17px;font-weight:700;line-height:1.3}.loan-product-name{color:#64748b;margin:3px 0 8px;font-size:13px}.loan-type-tag{color:#1d4ed8;text-transform:uppercase;letter-spacing:.035em;background:#eff6ff;border-radius:999px;width:fit-content;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.loan-type-home{color:#047857;background:#ecfdf5}.loan-type-personal{color:#1d4ed8;background:#eff6ff}.loan-type-car{color:#c2410c;background:#fff7ed}.loan-type-education{color:#6d28d9;background:#f5f3ff}.loan-card-select-label{color:#334155;cursor:pointer;white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.loan-card-checkbox{accent-color:#2563eb;width:17px;height:17px}.loan-metric-primary{background:#f8fafc;border:1px solid #f1f5f9;border-radius:9px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:14px;display:grid}.metric-label{color:#64748b;text-transform:uppercase;letter-spacing:.035em;margin-bottom:4px;font-size:11px;font-weight:700}.metric-value-large{color:#0f172a;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.metric-rate-group{text-align:right}.metric-rate-large{color:#1d4ed8;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.loan-rate-caveat{color:#64748b;margin:-4px 0 0;font-size:12px;line-height:1.45}.loan-details-grid{gap:9px;padding-bottom:2px;display:grid}.detail-row{justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.detail-key{color:#64748b}.detail-val{color:#1e293b;text-align:right;font-weight:600}.loan-source-footer{color:#64748b;border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.loan-source-footer a{color:#2563eb;text-underline-offset:2px;font-weight:600;text-decoration:underline}.rate-refresh-button{margin-top:12px}@media (width<=640px){.loan-card{padding:16px}.loan-card-top{flex-direction:column}.metric-value-large,.metric-rate-large{font-size:17px}.loan-source-footer{flex-direction:column;align-items:flex-start}}.home-filter-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.home-filter-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:16px;display:grid}.home-filter-field{flex-direction:column;gap:6px;display:flex}.home-filter-label{color:#475569;text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.home-filter-input,.home-filter-select{color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;height:40px;padding:0 12px;font-size:14px;transition:border-color .2s}.home-filter-input:focus,.home-filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.home-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.home-selection-info{color:#475569;font-size:14px;font-weight:500}.home-selection-count{color:#2563eb;font-weight:700}.btn-refresh-rates{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:6px;min-height:40px;padding:9px 16px;font-size:14px;font-weight:600}.btn-refresh-rates:hover:not(:disabled){background:#eff6ff}.btn-refresh-rates:disabled{opacity:.65;cursor:wait}.btn-home-compare{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:10px 22px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-home-compare:hover{background-color:#1d4ed8}.btn-home-compare:disabled{cursor:not-allowed;background-color:#94a3b8}.home-limit-notice{color:#b45309;background-color:#fffbeb;border:1px solid #fef3c7;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.home-loans-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.comparison-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:20px 0 28px;padding:20px;box-shadow:0 2px 8px #0f172a0a}.comparison-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.comparison-title{color:#0f172a;margin-bottom:5px;font-size:20px;font-weight:700}.comparison-actions{flex-shrink:0;gap:8px;display:flex}.comparison-table-wrapper{overflow-x:auto}.comparison-table{border-collapse:collapse;text-align:left;width:100%;min-width:740px;font-size:13px}.comparison-table th,.comparison-table td{vertical-align:top;border-bottom:1px solid #e2e8f0;padding:12px 14px}.comparison-table thead th{color:#334155;background:#f8fafc;font-weight:700}.comparison-table thead th:first-child,.comparison-table tbody th{z-index:1;color:#475569;background:#fff;min-width:210px;font-weight:600;position:sticky;left:0}.comparison-table thead th:first-child,.comparison-table .highlight-row{background:#f8fafc}.comparison-table .highlight-lowest{color:#047857;font-weight:700}.comparison-table a{color:#2563eb;text-underline-offset:2px;text-decoration:underline}.comparison-table td div{color:#64748b;margin-top:4px;font-size:12px}.btn-view-schedule{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;margin-top:8px;padding:6px 10px;font-size:12px;font-weight:600}.btn-view-schedule:hover{background:#eff6ff;border-color:#93c5fd}@media (width<=720px){.comparison-section{padding:14px}.comparison-header{flex-direction:column}.comparison-actions{flex-wrap:wrap;width:100%}}.cost-chart-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.cost-chart-header{margin-bottom:16px}.cost-chart-title{color:#0f172a;margin-bottom:4px;font-size:16px;font-weight:700}.cost-chart-subtitle{color:#64748b;font-size:13px}.cost-chart-wrapper{width:100%;height:320px}.prepayment-card{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:18px}.prepayment-title{color:#0f172a;margin-bottom:4px;font-size:15px;font-weight:700}.prepayment-subtitle{color:#64748b;margin-bottom:14px;font-size:13px}.prepayment-form-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.prepayment-label{color:#334155;font-size:13px;font-weight:600}.prepayment-input{color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:180px;height:38px;padding:0 12px;font-size:14px}.prepayment-input:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.prepayment-results-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.prepayment-result-box{background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;flex-direction:column;padding:10px 14px;display:flex}.prepayment-box-success{background-color:#ecfdf5;border-color:#a7f3d0}.prepayment-result-key{color:#64748b;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:600}.prepayment-result-val{color:#0f172a;font-size:16px;font-weight:700}.prepayment-result-val-highlight{color:#059669;font-size:16px;font-weight:700}.amort-overlay{z-index:100;background-color:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.amort-dialog{background-color:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:860px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000026}.amort-header{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.amort-header-title{color:#0f172a;font-size:18px;font-weight:700}.amort-header-subtitle{color:#64748b;margin-top:2px;font-size:13px}.amort-btn-close{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:22px;line-height:1}.amort-btn-close:hover{color:#0f172a}.amort-body{flex:1;padding:24px;overflow-y:auto}.amort-chart-section{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:24px;padding:16px;display:flex}.amort-chart-title{color:#334155;margin-bottom:8px;font-size:14px;font-weight:700}.amort-chart-container{width:100%;height:240px}.amort-table-wrapper{border:1px solid #e2e8f0;border-radius:6px;max-height:360px;overflow-y:auto}.amort-schedule-table{border-collapse:collapse;text-align:right;width:100%;font-size:13px}.amort-schedule-table th,.amort-schedule-table td{border-bottom:1px solid #e2e8f0;padding:10px 14px}.amort-schedule-table th{color:#475569;z-index:1;background-color:#f8fafc;font-weight:600;position:sticky;top:0}.amort-schedule-table th:first-child,.amort-schedule-table td:first-child{text-align:center}.amort-schedule-table tbody tr:hover{background-color:#f8fafc}.amort-footer{background-color:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;padding:14px 24px;display:flex}.btn-amort-dismiss{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:8px 18px;font-size:13px;font-weight:600}.btn-amort-dismiss:hover{background-color:#1d4ed8}.compare-input-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.compare-input-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:16px;display:grid}.compare-field{flex-direction:column;gap:6px;display:flex}.compare-label{color:#475569;text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.compare-input{color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;height:42px;padding:0 12px;font-size:14px;transition:border-color .2s}.compare-input:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.btn-trigger-compare{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;height:42px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-trigger-compare:hover{background-color:#1d4ed8}.btn-trigger-compare:disabled{cursor:not-allowed;background-color:#94a3b8}.compare-top-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.btn-save-comparison-action{color:#fff;cursor:pointer;background-color:#059669;border:none;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-save-comparison-action:hover{background-color:#047857}.btn-save-comparison-action:disabled{cursor:not-allowed;background-color:#94a3b8}.login-to-save-link{color:#2563eb;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-block}.login-to-save-link:hover{color:#1d4ed8;background-color:#e2e8f0}.btn-change-selection-link{color:#64748b;background-color:#0000;border:1px solid #cbd5e1;border-radius:6px;padding:10px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-block}.btn-change-selection-link:hover{color:#0f172a;background-color:#f8fafc}.btn-explain-comparison{color:#fff;cursor:pointer;background-color:#4f46e5;border:none;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-explain-comparison:hover{background-color:#4338ca}.btn-explain-comparison:disabled{cursor:not-allowed;background-color:#a5b4fc}.explain-card{background-color:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px;margin-bottom:24px;padding:20px}.explain-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.explain-title-group{align-items:center;gap:10px;display:flex}.explain-title{color:#4c1d95;font-size:16px;font-weight:700}.explain-badge{color:#6d28d9;text-transform:uppercase;background-color:#ede9fe;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:700}.explain-body{color:#312e81;font-size:14px;line-height:1.6}.explain-loading-text{color:#6d28d9;font-size:14px;font-style:italic}.saved-list-container{flex-direction:column;gap:16px;display:flex}.saved-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:14px;padding:20px;display:flex}.saved-card-header{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.saved-meta-group{color:#475569;flex-wrap:wrap;align-items:center;gap:14px;font-size:14px;display:flex}.saved-count-pill{color:#2563eb;background-color:#eff6ff;border-radius:4px;padding:3px 10px;font-size:12px;font-weight:600}.saved-actions{gap:8px;display:flex}.btn-open-comparison{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .2s}.btn-open-comparison:hover{background-color:#1d4ed8}.btn-delete-comparison{color:#dc2626;cursor:pointer;background-color:#0000;border:1px solid #fecaca;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .2s}.btn-delete-comparison:hover{background-color:#fef2f2}.saved-loans-row{flex-wrap:wrap;gap:8px;display:flex}.saved-loan-item-pill{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.saved-loan-name{color:#0f172a;font-weight:600}.saved-loan-rate{color:#2563eb;font-weight:500}.login-page-container{justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:32px 16px;display:flex}.login-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;max-width:420px;padding:32px;box-shadow:0 4px 6px -1px #0000000d}.login-header{text-align:center;margin-bottom:24px}.login-title{color:#0f172a;margin-bottom:6px;font-size:22px;font-weight:700}.login-subtitle{color:#64748b;font-size:14px}.login-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:#334155;font-size:13px;font-weight:600}.form-input{color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;height:42px;padding:0 12px;font-size:14px;transition:border-color .2s}.form-input:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.btn-submit-auth{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;height:42px;margin-top:8px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-submit-auth:hover{background-color:#1d4ed8}.btn-submit-auth:disabled{opacity:.6;cursor:not-allowed}.auth-error-banner{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:13px}.auth-toggle-prompt{text-align:center;color:#64748b;margin-top:20px;font-size:13px}.auth-toggle-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0 4px;font-weight:600}.auth-toggle-btn:hover{text-decoration:underline}*{box-sizing:border-box;margin:0;padding:0}body{color:#0f172a;-webkit-font-smoothing:antialiased;background-color:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}.page-wrapper{max-width:1200px;margin:0 auto;padding:24px 20px 48px}.page-header{margin-bottom:24px}.page-title{color:#0f172a;margin-bottom:6px;font-size:24px;font-weight:700}.page-subtitle{color:#64748b;font-size:14px}.status-alert{border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.status-alert-success{color:#065f46;background-color:#ecfdf5;border:1px solid #a7f3d0}.status-alert-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.status-alert-dismiss{cursor:pointer;color:inherit;background:0 0;border:none;font-size:16px;line-height:1}.empty-state-card{text-align:center;color:#64748b;background-color:#fff;border:1px dashed #cbd5e1;border-radius:8px;padding:48px 24px}.empty-state-title{color:#334155;margin-bottom:8px;font-size:18px;font-weight:600}.empty-state-text{margin-bottom:16px;font-size:14px}
