/* Accounts module styles extracted from templates */
:root{--primary-color:#667eea;--secondary-color:#764ba2;--accent-color:#f093fb;--success-color:#43e97b;--dark-color:#2c3e50;--light-color:#f8f9fa;--gradient-primary:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--gradient-accent:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);--gradient-success:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Inter',sans-serif;background:var(--gradient-primary);min-height:100vh;position:relative;overflow:hidden}
/* Background overlays */
body::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 30%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle at 40% 70%,rgba(255,255,255,.06) 0%,transparent 50%);z-index:1}
/* Login layout */
.login-wrapper{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}
.login-container{max-width:450px;width:100%;padding:3rem 2.5rem;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 10px 30px rgba(102,126,234,.15);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}
.login-container::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary)}
.login-logo{text-align:center;margin-bottom:2.5rem;animation:fadeIn 1s ease-out .3s both}
.login-logo .logo-icon{font-size:4rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;display:inline-block;animation:pulse 2s ease-in-out infinite}
.login-logo h1{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;font-size:2rem;margin-bottom:.5rem}
.login-logo p{color:var(--dark-color);opacity:.7;font-weight:500;font-size:1rem}
/* Register layout */
.register-wrapper{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}
.register-container{max-width:550px;width:100%;padding:3rem 2.5rem;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-radius:25px;box-shadow:0 20px 40px rgba(102,126,234,.2);border:1px solid rgba(255,255,255,.2);animation:slideInUp .8s ease-out;position:relative;overflow:hidden}
.register-container::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary)}
.register-logo{text-align:center;margin-bottom:2.5rem;animation:fadeIn 1s ease-out .3s both}
.register-logo .logo-icon{font-size:3.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;display:inline-block;animation:pulse 2s ease-in-out infinite}
.register-logo h2{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;font-size:1.8rem;margin-bottom:.5rem}
.register-logo p{color:var(--dark-color);opacity:.7;font-weight:500;font-size:.95rem}
/* Forms */
.form-label{font-weight:600;color:var(--dark-color);margin-bottom:.5rem;font-size:.95rem}
.input-group{margin-bottom:1.5rem;animation:fadeIn 1s ease-out .5s both}
.input-group-text{background:var(--gradient-primary);border:none;color:#fff;border-radius:15px 0 0 15px;padding:.75rem 1rem;transition:all .3s ease}
.form-control{border:2px solid rgba(102,126,234,.1);border-left:none;border-radius:0 15px 15px 0;padding:.75rem 1rem;font-size:1rem;transition:all .3s ease;background:rgba(255,255,255,.8)}
.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 .2rem rgba(102,126,234,.25);background:#fff}
.form-control::placeholder{color:#adb5bd;opacity:.8}
/* Buttons */
.btn-primary{background:var(--gradient-primary);border:none;border-radius:15px;padding:.875rem 2rem;font-weight:600;font-size:1.1rem;transition:all .3s ease;box-shadow:0 4px 15px rgba(102,126,234,.3);animation:fadeIn 1s ease-out .7s both}
.btn-primary:hover{background:var(--gradient-primary);transform:translateY(-2px);box-shadow:0 8px 25px rgba(102,126,234,.4)}
.btn-primary:active{transform:translateY(0)}
/* Links */
.register-link,.login-link{color:var(--primary-color);text-decoration:none;font-weight:600;transition:all .3s ease}
.register-link:hover,.login-link:hover{color:var(--secondary-color);text-decoration:underline}
.register-text,.login-text{color:var(--dark-color);opacity:.8;font-size:.95rem;animation:fadeIn 1s ease-out .9s both}
/* Alerts */
.alert{border-radius:15px;border:none;animation:slideInDown .5s ease-out}
/* Password strength */
.password-strength{height:4px;border-radius:2px;margin-top:.5rem;transition:all .3s ease}
.password-strength.weak{background:linear-gradient(90deg,#e74c3c 0%,#e74c3c 33%,#f8f9fa 33%,#f8f9fa 100%)}
.password-strength.medium{background:linear-gradient(90deg,#f39c12 0%,#f39c12 66%,#f8f9fa 66%,#f8f9fa 100%)}
.password-strength.strong{background:linear-gradient(90deg,#27ae60 0%,#27ae60 100%)}
/* Checkboxes */
.form-check{background:rgba(102,126,234,.05);border-radius:12px;padding:1rem;border:1px solid rgba(102,126,234,.1);transition:all .3s ease}
.form-check:hover{background:rgba(102,126,234,.1)}
.form-check-input{width:1.2rem;height:1.2rem;margin-top:.1rem;border:2px solid var(--primary-color);border-radius:4px}
.form-check-input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}
.form-check-label{font-weight:500;color:var(--dark-color);margin-left:.5rem}
/* Profile page */
.avatar-circle{width:100px;height:100px;background-color:var(--bs-primary);text-align:center;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center}
.initials{position:relative;font-size:40px;line-height:40px;color:#fff;font-weight:700}
.form-control-static{font-weight:500}
.business-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center}
.timeline{position:relative;padding:1rem;margin:0}
.timeline:before{content:'';position:absolute;height:100%;left:1.5rem;top:0;width:2px;background:#e9ecef}
.timeline-item{position:relative;padding-left:2.5rem;padding-bottom:1.5rem}
.timeline-marker{position:absolute;width:15px;height:15px;border-radius:50%;left:1.15rem;top:.25rem}
.timeline-content{padding-bottom:.5rem}
.timeline-heading{margin-bottom:.5rem}
/* Utilities */
.logo-64{width:64px;height:64px}
/* Animations */
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
/* Responsive */
@media (max-width:576px){.login-container{padding:2rem 1.5rem;margin:1rem}.login-logo .logo-icon{font-size:3rem}.login-logo h1{font-size:1.75rem}.register-container{padding:2rem 1.5rem;margin:1rem}.register-logo .logo-icon{font-size:3rem}.register-logo h2{font-size:1.5rem}.row .col-md-6{margin-bottom:1rem}}
