.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a5f,#2c5282);padding:20px}.login-box{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;width:100%;overflow:hidden}.login-header{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:40px 30px;text-align:center}.login-header h1{margin:0;font-size:2.5rem;font-weight:700;color:#d4af37;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.login-header .subtitle{margin:10px 0 0;font-size:1rem;color:#ffffffe6}.login-form{padding:40px 30px}.login-form h2{margin:0 0 30px;font-size:1.5rem;color:#1e3a5f;text-align:center}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.login-button{width:100%;padding:14px;background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #1e3a5f66}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{background-color:#f7fafc;padding:20px;text-align:center;border-top:1px solid #e2e8f0}.login-footer p{margin:0;color:#718096;font-size:.9rem}@media(max-width:480px){.login-header h1{font-size:2rem}.login-form{padding:30px 20px}}.admin-container{min-height:100vh;background:#f7fafc;padding:20px}.admin-header{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 4px 12px #0000001a}.admin-header h1{margin:0 0 10px;font-size:2rem;color:#d4af37}.admin-header p{margin:0;opacity:.9}.admin-content{max-width:1200px;margin:0 auto}.admin-actions{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap}.btn-primary{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e3a5f66}.btn-secondary{background:#fff;color:#1e3a5f;padding:12px 24px;border:2px solid #1e3a5f;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#1e3a5f;color:#fff}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px}.success-message{background-color:#efe;border:1px solid #cfc;color:#3a3;padding:12px 16px;border-radius:8px;margin-bottom:20px}.create-form{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px}.create-form h2{margin:0 0 25px;color:#1e3a5f;font-size:1.5rem}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#1e3a5f;font-size:.95rem}.form-group input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.btn-submit{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:14px 32px;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e3a5f66}.commercials-list{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.commercials-list h2{margin:0 0 25px;color:#1e3a5f;font-size:1.5rem}.no-data{text-align:center;color:#718096;padding:40px;font-size:1.1rem}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background-color:#f7fafc}th{text-align:left;padding:12px 16px;font-weight:600;color:#1e3a5f;border-bottom:2px solid #e2e8f0}td{padding:12px 16px;border-bottom:1px solid #e2e8f0}tbody tr:hover{background-color:#f7fafc}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:600}.badge.admin{background-color:#d4af37;color:#1e3a5f}.badge.commercial{background-color:#e2e8f0;color:#1e3a5f}.status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:600}.status.active{background-color:#c6f6d5;color:#22543d}.status.inactive{background-color:#fed7d7;color:#742a2a}@media(max-width:768px){.admin-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}table{font-size:.9rem}th,td{padding:8px 12px}}.loan-calculator-container{min-height:100vh;background:linear-gradient(135deg,#1e3a5f,#0d1b2a);padding:20px}.calculator-header{text-align:center;color:#fff;margin-bottom:30px}.calculator-header h1{color:#d4af37;font-size:2rem;margin-bottom:10px}.calculator-header p{color:#a0aec0}.calculator-content{max-width:1200px;margin:0 auto}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px}.success-message{background:#d1fae5;color:#059669;padding:12px 16px;border-radius:8px;margin-bottom:20px}.calculator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.section{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a}.section h2{color:#1e3a5f;font-size:1.1rem;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #d4af37}.rate-input-group{display:flex;align-items:center;gap:10px;margin-bottom:10px}.rate-input-group input{width:100px;padding:10px;font-size:1.2rem;border:2px solid #e2e8f0;border-radius:8px;text-align:center}.rate-symbol{font-size:1.2rem;color:#1e3a5f;font-weight:700}.btn-update{padding:10px 20px;background:#1e3a5f;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500}.btn-update:hover{background:#2d4a6f}.btn-update:disabled{background:#94a3b8;cursor:not-allowed}.rate-note{font-size:.85rem;color:#64748b;margin-top:10px}.score-toggle{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.score-toggle label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#475569}.submission-select select,.manual-score input{width:100%;padding:12px;font-size:1rem;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:15px}.selected-score{display:flex;align-items:center;gap:10px;padding:15px;background:#f8fafc;border-radius:8px;border-left:4px solid}.score-value{font-size:2rem;font-weight:700;color:#1e3a5f}.score-label{font-size:1rem;color:#64748b}.risk-badge{margin-left:auto;padding:6px 12px;border-radius:20px;color:#fff;font-size:.85rem;font-weight:500}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;color:#475569;font-weight:500}.form-group input{width:100%;padding:12px;font-size:1rem;border:2px solid #e2e8f0;border-radius:8px}.btn-calculate{width:100%;padding:15px;background:linear-gradient(135deg,#d4af37,#b8960c);color:#1e3a5f;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:transform .2s}.btn-calculate:hover{transform:translateY(-2px)}.results-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 6px #0000001a}.results-section h2{color:#1e3a5f;margin-bottom:20px;text-align:center}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.result-card{background:#f8fafc;border-radius:10px;padding:20px}.result-card h3{color:#1e3a5f;margin-bottom:15px;font-size:1rem}.rate-breakdown,.loan-details{display:flex;flex-direction:column;gap:10px}.rate-line,.detail-line{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e2e8f0}.rate-line.total,.detail-line.highlight{border-bottom:none;background:#1e3a5f;color:#fff;padding:12px;border-radius:8px;margin-top:10px}.client-rate,.monthly-payment{font-size:1.3rem;font-weight:700;color:#d4af37}.detail-line.interest span:last-child{color:#ef4444;font-weight:500}.premium-grid-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:30px}.premium-grid-section h3{color:#1e3a5f;margin-bottom:15px;text-align:center}.premium-table{width:100%;border-collapse:collapse}.premium-table th,.premium-table td{padding:12px;text-align:center;border:1px solid #e2e8f0}.premium-table th{background:#1e3a5f;color:#fff}.btn-back{display:block;width:200px;margin:0 auto;padding:12px 24px;background:transparent;color:#fff;border:2px solid #d4af37;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.btn-back:hover{background:#d4af37;color:#1e3a5f}@media(max-width:768px){.calculator-grid{grid-template-columns:1fr}.rate-input-group{flex-wrap:wrap}.premium-table{font-size:.85rem}.premium-table th,.premium-table td{padding:8px 4px}}.subscription-page{max-width:1000px;margin:0 auto;padding:2rem}.subscription-page h1{color:#fff;text-align:center;margin-bottom:2rem;font-size:2rem}.subscription-page h2{color:#fff;margin-bottom:1.5rem}.loading{text-align:center;color:#fff;padding:3rem;font-size:1.2rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center}.alert.error{background:#ffebee;color:#c62828;border:1px solid #ef5350}.alert.success{background:#e8f5e9;color:#2e7d32;border:1px solid #66bb6a}.current-subscription{background:#fff;border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 20px #00000026}.current-subscription h2{color:#1a4d7a;margin-bottom:1rem}.status-card{display:flex;align-items:center;gap:1.5rem;padding:1rem;background:#f8f9fa;border-radius:12px}.plan-badge{padding:.75rem 1.5rem;border-radius:8px;font-weight:700;font-size:1.1rem}.plan-badge[data-plan=free]{background:#e3f2fd;color:#1565c0}.plan-badge[data-plan=pro]{background:linear-gradient(135deg,#d4af37,#f4d03f);color:#1a4d7a}.status-details p{margin:.3rem 0;color:#333}.usage-card{margin-top:1.5rem;padding:1rem;background:#fff3e0;border-radius:12px}.usage-card h3{color:#e65100;margin-bottom:1rem;font-size:1rem}.usage-bar{height:12px;background:#ffe0b2;border-radius:6px;overflow:hidden;margin-bottom:.5rem}.usage-fill{height:100%;background:linear-gradient(90deg,#ff9800,#f57c00);border-radius:6px;transition:width .3s ease}.usage-card p{margin:.25rem 0;color:#e65100;font-size:.9rem}.remaining{font-weight:600}.plans-section{margin-bottom:2rem}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.plan-card{background:#fff;border-radius:16px;padding:2rem;position:relative;box-shadow:0 4px 20px #0000001a;transition:transform .3s}.plan-card:hover{transform:translateY(-5px)}.plan-card.popular{border:3px solid #d4af37}.plan-card.current{border:3px solid #4caf50}.popular-tag{position:absolute;top:-12px;right:20px;background:linear-gradient(135deg,#d4af37,#f4d03f);color:#1a4d7a;padding:.4rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700}.current-tag{position:absolute;top:-12px;left:20px;background:#4caf50;color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700}.plan-card h3{color:#1a4d7a;margin-bottom:1rem;font-size:1.5rem}.price{margin-bottom:1.5rem}.price .amount{font-size:2rem;font-weight:700;color:#1a4d7a}.price .period{color:#666;font-size:1rem}.features{list-style:none;padding:0;margin:0 0 1.5rem}.feature-item,.limitation-item{padding:.5rem 0;display:flex;align-items:center;gap:.5rem}.feature-item .check{color:#4caf50;font-weight:700}.limitation-item{color:#999}.limitation-item .cross{color:#e53935}.upgrade-form{display:flex;flex-direction:column;gap:1rem}.upgrade-form input{padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem}.upgrade-form input:focus{outline:none;border-color:#d4af37}.btn-upgrade{padding:1rem;background:linear-gradient(135deg,#d4af37,#f4d03f);color:#1a4d7a;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s}.btn-upgrade:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #d4af3766}.btn-upgrade:disabled{opacity:.7;cursor:not-allowed}.current-plan-info{text-align:center;padding:1rem;background:#f5f5f5;border-radius:8px;color:#666}.current-plan-info.active{background:#e8f5e9;color:#2e7d32}.admin-section{background:#ffffff1a;border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:1.5rem;margin-bottom:2rem;text-align:center}.admin-section h3{color:#d4af37;margin-bottom:1rem}.btn-simulate{padding:.8rem 1.5rem;background:#9c27b0;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.btn-simulate:hover:not(:disabled){background:#7b1fa2}.btn-simulate:disabled{opacity:.7;cursor:not-allowed}.hint{color:#fff9;font-size:.85rem;margin-top:.5rem}.btn-back{display:block;width:100%;max-width:300px;margin:2rem auto 0;padding:1rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s}.btn-back:hover{background:#fff3}@media(max-width:768px){.subscription-page{padding:1rem}.status-card{flex-direction:column;text-align:center}.plans-grid{grid-template-columns:1fr}}.app{width:100%;min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#1a4d7a,#2d5f8d,#4a7ba7)}.app-header{padding:1.5rem 2rem;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid rgba(255,215,0,.3);display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center;gap:1rem}.logo{font-size:1.5rem;font-weight:800;color:gold;background:linear-gradient(135deg,gold,orange);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 10px rgba(255,215,0,.3)}.app-header h1{font-size:1.4rem;font-weight:700;color:#fff}.user-section{display:flex;align-items:center;gap:1rem}.user-name{color:#fff;font-weight:600;padding:.5rem 1rem;background:#ffffff1a;border-radius:8px}.logout-button{padding:.6rem 1.2rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;cursor:pointer;transition:all .3s;font-weight:600}.logout-button:hover{background:#fff3;transform:translateY(-2px)}.back-btn{padding:.6rem 1.2rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;cursor:pointer;transition:all .3s}.back-btn:hover{background:#fff3}.app-main{flex:1;padding:2rem;overflow-y:auto}.home-page{max-width:1200px;margin:0 auto}.welcome-section{text-align:center;margin-bottom:3rem;color:#fff}.welcome-section h2{font-size:2.5rem;margin-bottom:1rem;color:gold}.welcome-section p{font-size:1.1rem;opacity:.9}.button-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.action-button{padding:2.5rem 2rem;background:#fff;border:none;border-radius:16px;cursor:pointer;transition:all .3s;text-align:center;box-shadow:0 10px 30px #0003}.action-button:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000004d}.action-button .icon{font-size:3rem;display:block;margin-bottom:1rem}.action-button h3{font-size:1.4rem;margin-bottom:.5rem;color:#1a4d7a}.action-button p{font-size:.9rem;color:#666}.action-button.admin{border-top:4px solid #d4af37;background:linear-gradient(135deg,#fff9e6,#fff)}.action-button.admin:hover{background:linear-gradient(135deg,#fff4cc,#fffaf0)}.action-button.calculator{border-top:4px solid #9c27b0;background:linear-gradient(135deg,#f3e5f5,#fff)}.action-button.calculator:hover{background:linear-gradient(135deg,#e1bee7,#faf5fc)}.action-button.subscription{border-top:4px solid #00bcd4;background:linear-gradient(135deg,#e0f7fa,#fff)}.action-button.subscription:hover{background:linear-gradient(135deg,#b2ebf2,#f5fdfe)}.action-button.primary{border-top:4px solid #4a7ba7}.action-button.secondary{border-top:4px solid #FFD700;opacity:.7}.action-button.tertiary{border-top:4px solid #2d5f8d}.form-container{max-width:900px;margin:0 auto;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0000004d}.form-header{margin-bottom:2rem;text-align:center}.form-header h2{color:#1a4d7a;margin-bottom:1rem}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin:1rem 0}.progress{height:100%;background:linear-gradient(90deg,#4a7ba7,gold);transition:width .3s}.step-info{color:#666;font-size:.9rem}.placeholder-form{padding:3rem 2rem;text-align:center;background:#f8f9fa;border-radius:12px;border:2px dashed #ccc}.placeholder-form h3{color:#1a4d7a;margin-bottom:1.5rem}.placeholder-form ul{text-align:left;max-width:500px;margin:2rem auto;list-style:none;padding:0}.placeholder-form li{padding:.5rem 0;color:#333}.btn-primary{padding:1rem 2rem;background:linear-gradient(135deg,#4a7ba7,#2d5f8d);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:2rem}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #4a7ba766}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.result-page{max-width:600px;margin:0 auto}.result-card{background:#fff;border-radius:16px;padding:3rem;box-shadow:0 10px 40px #0000004d;text-align:center}.result-card h2{color:#1a4d7a;margin-bottom:2rem}.score{margin:2rem 0;padding:2rem;border-radius:12px}.score.good{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff}.score.risk{background:linear-gradient(135deg,#f44336,#e57373);color:#fff}.score-value{font-size:4rem;font-weight:800;margin-bottom:.5rem}.score-label{font-size:1.5rem;font-weight:600}.result-details{margin:2rem 0;text-align:left;background:#f8f9fa;padding:1.5rem;border-radius:8px}.result-details p{margin:.5rem 0;color:#333}.submissions-list{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0000004d}.submissions-list h2{color:#1a4d7a;margin-bottom:2rem}.empty-state{text-align:center;padding:4rem 2rem;color:#666}.empty-state p{font-size:1.2rem;margin:1rem 0}.empty-state .note{font-size:.9rem;color:#999}.coming-soon{max-width:600px;margin:0 auto;background:#fff;border-radius:16px;padding:4rem 2rem;text-align:center;box-shadow:0 10px 40px #0000004d}.coming-soon h2{color:#1a4d7a;margin-bottom:1rem}.coming-soon p{color:#666;font-size:1.1rem}.loading{text-align:center;padding:4rem;color:#fff;font-size:1.2rem}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;display:flex;min-width:320px;min-height:100vh}#root{width:100%;height:100vh}
