:root{--bg-main: #020617;--bg-card: #0f172a;--bg-card2: #0a0f1e;--purple: #7c3aed;--pink: #ec4899;--purple-light: #a78bfa;--text-muted: #94a3b8}
*{box-sizing: border-box}
body{font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Bengali",sans-serif;background: var(--bg-main);color: #e2e8f0;min-height: 100vh}
a{color: inherit;text-decoration: none}
.navbar{background: rgba(2,6,23,0.97);border-bottom: 1px solid rgba(124,58,237,0.25);padding: 0.75rem 0}
.navbar-brand img{height: 38px}
.navbar-toggler{border-color: rgba(124,58,237,0.5)}
.navbar-toggler-icon{filter: invert(1)}
.nav-link{color: #c4b5fd !important;font-size: 0.9rem;padding: 0.4rem 0.75rem !important;transition: color 0.2s}
.nav-link:hover{color: #ec4899 !important}
.breadcrumb-wrap{background: rgba(15,23,42,0.8);border-bottom: 1px solid rgba(124,58,237,0.15);padding: 0.6rem 0}
.breadcrumb{margin: 0;background: none;padding: 0}
.breadcrumb-item a{color: #a78bfa}
.breadcrumb-item.active{color: #ec4899}
.breadcrumb-item + .breadcrumb-item::before{color: #6b7280}
.grad-text{background: linear-gradient(90deg, #a78bfa, #ec4899);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text}
.btn-neon{background: linear-gradient(90deg, #7c3aed, #ec4899);color: #fff;border: none;padding: 0.7rem 2rem;border-radius: 50px;font-weight: 600;font-size: 0.95rem;transition: opacity 0.2s, transform 0.2s;display: inline-block;cursor: pointer}
.btn-neon:hover{opacity: 0.88;transform: translateY(-2px);color: #fff}
.btn-neon:disabled{opacity: 0.5;cursor: not-allowed;transform: none}
.btn-outline-neon{background: transparent;color: #a78bfa;border: 1.5px solid #7c3aed;padding: 0.65rem 1.8rem;border-radius: 50px;font-weight: 600;font-size: 0.95rem;transition: all 0.2s;display: inline-block}
.btn-outline-neon:hover{background: rgba(124,58,237,0.15);color: #c4b5fd}
.hero{background: linear-gradient(135deg, #0a0118 0%, #1a0533 40%, #0d1117 100%);border-bottom: 1px solid rgba(124,58,237,0.2);padding: 4rem 0 3rem;position: relative;overflow: hidden}
.hero::before{content: "";position: absolute;top: -80px;left: 50%;transform: translateX(-50%);width: 700px;height: 400px;background: radial-gradient(ellipse, rgba(124,58,237,0.18) 0%, transparent 70%);pointer-events: none}
.hero-badge{display: inline-block;background: linear-gradient(90deg, rgba(124,58,237,0.25), rgba(236,72,153,0.2));border: 1px solid rgba(124,58,237,0.4);color: #c4b5fd;font-size: 0.8rem;padding: 0.3rem 1rem;border-radius: 50px;margin-bottom: 1.2rem;letter-spacing: 0.05em}
.hero h1{font-size: clamp(1.6rem, 4vw, 2.5rem);font-weight: 700;line-height: 1.35;color: #f1f5f9}
.hero-sub{color: #94a3b8;font-size: 0.97rem;max-width: 560px;line-height: 1.85;margin-top: 0.8rem}
.login-card{background: var(--bg-card);border: 1px solid rgba(124,58,237,0.25);border-radius: 20px;padding: 2.2rem;position: relative;overflow: hidden}
.login-card::before{content: "";position: absolute;top: 0;left: 0;right: 0;height: 3px;background: linear-gradient(90deg, #7c3aed, #ec4899)}
.login-card h4{color: #f1f5f9;font-weight: 700;font-size: 1.2rem;margin-bottom: 0.3rem}
.login-card .sub{color: #64748b;font-size: 0.85rem;margin-bottom: 1.5rem}
.login-tabs{display: flex;gap: 0;margin-bottom: 1.8rem;background: rgba(2,6,23,0.6);border-radius: 12px;padding: 4px}
.login-tab{flex: 1;text-align: center;padding: 0.55rem 0.5rem;border-radius: 9px;font-size: 0.88rem;font-weight: 600;color: #64748b;cursor: pointer;transition: all 0.25s;border: none;background: none}
.login-tab.active{background: linear-gradient(90deg, #7c3aed, #ec4899);color: #fff}
.login-tab:not(.active):hover{color: #a78bfa}
.form-label{color: #c4b5fd;font-size: 0.88rem;font-weight: 500;margin-bottom: 0.4rem}
.form-control, .form-select{background: rgba(2,6,23,0.8) !important;border: 1px solid rgba(124,58,237,0.25) !important;color: #e2e8f0 !important;border-radius: 10px !important;padding: 0.65rem 1rem;font-size: 0.9rem;transition: border-color 0.2s, box-shadow 0.2s}
.form-control:focus{border-color: #7c3aed !important;box-shadow: 0 0 0 3px rgba(124,58,237,0.15) !important;outline: none}
.form-control::placeholder{color: #475569}
.input-group-text{background: rgba(124,58,237,0.15) !important;border: 1px solid rgba(124,58,237,0.25) !important;border-right: none !important;color: #a78bfa !important;border-radius: 10px 0 0 10px !important}
.input-group .form-control{border-left: none !important;border-radius: 0 10px 10px 0 !important}
.input-group .toggle-pw{background: rgba(124,58,237,0.15);border: 1px solid rgba(124,58,237,0.25);border-left: none;color: #a78bfa;cursor: pointer;padding: 0 0.9rem;border-radius: 0 10px 10px 0;transition: background 0.2s}
.input-group .toggle-pw:hover{background: rgba(124,58,237,0.25)}
.form-check-input{background-color: rgba(2,6,23,0.8) !important;border-color: rgba(124,58,237,0.4) !important}
.form-check-input:checked{background-color: #7c3aed !important;border-color: #7c3aed !important}
.form-check-label{color: #94a3b8;font-size: 0.85rem}
.field-error{font-size: 0.78rem;color: #f87171;margin-top: 0.3rem;display: none}
.forgot-link{color: #a78bfa;font-size: 0.83rem;transition: color 0.2s}
.forgot-link:hover{color: #ec4899}
.divider-or{display: flex;align-items: center;gap: 1rem;margin: 1.2rem 0}
.divider-or::before, .divider-or::after{content: "";flex: 1;height: 1px;background: rgba(124,58,237,0.2)}
.divider-or span{color: #475569;font-size: 0.82rem;white-space: nowrap}
.security-row{display: flex;flex-wrap: wrap;gap: 0.6rem;margin-top: 1.2rem}
.sec-badge{display: flex;align-items: center;gap: 0.4rem;background: rgba(16,185,129,0.08);border: 1px solid rgba(16,185,129,0.2);border-radius: 8px;padding: 0.35rem 0.7rem;font-size: 0.78rem;color: #6ee7b7}
.sec-badge i{font-size: 0.75rem}
section{padding: 4rem 0}
.section-alt{background: var(--bg-card2)}
.section-title{font-size: clamp(1.3rem, 3vw, 2rem);font-weight: 700;color: #f1f5f9;margin-bottom: 0.5rem}
.section-sub{color: #94a3b8;font-size: 0.95rem;max-width: 560px;margin: 0 auto;line-height: 1.75}
.divider-neon{width: 60px;height: 3px;background: linear-gradient(90deg, #7c3aed, #ec4899);border-radius: 2px;margin: 0.8rem auto 1.5rem}
.feat-card{background: var(--bg-card);border: 1px solid rgba(124,58,237,0.18);border-radius: 18px;padding: 1.8rem 1.5rem;height: 100%;transition: border-color 0.25s, transform 0.25s;position: relative;overflow: hidden}
.feat-card::before{content: "";position: absolute;top: 0;left: 0;right: 0;height: 3px;background: linear-gradient(90deg, #7c3aed, #ec4899);opacity: 0;transition: opacity 0.25s}
.feat-card:hover{border-color: rgba(236,72,153,0.4);transform: translateY(-4px)}
.feat-card:hover::before{opacity: 1}
.feat-card .icon-wrap{width: 54px;height: 54px;background: linear-gradient(135deg, rgba(124,58,237,0.25), rgba(236,72,153,0.15));border: 1px solid rgba(124,58,237,0.3);border-radius: 14px;display: flex;align-items: center;justify-content: center;font-size: 1.4rem;color: #a78bfa;margin-bottom: 1.1rem}
.feat-card h5{color: #f1f5f9;font-weight: 600;font-size: 1rem;margin-bottom: 0.6rem}
.feat-card p{color: #94a3b8;font-size: 0.88rem;line-height: 1.8;margin: 0}
.content-block{background: var(--bg-card);border: 1px solid rgba(124,58,237,0.15);border-radius: 16px;padding: 2rem;margin-bottom: 1.5rem}
.content-block h3{color: #f1f5f9;font-weight: 600;font-size: 1.1rem;margin-bottom: 1rem}
.content-block p{color: #94a3b8;font-size: 0.92rem;line-height: 1.9;margin-bottom: 0.8rem}
.content-block p:last-child{margin-bottom: 0}
.content-block ul{padding-left: 1.2rem;margin: 0.5rem 0}
.content-block ul li{color: #94a3b8;font-size: 0.92rem;line-height: 1.85;margin-bottom: 0.4rem}
.content-block ul li::marker{color: #7c3aed}
.trust-item{display: flex;align-items: center;gap: 0.7rem;background: var(--bg-card);border: 1px solid rgba(124,58,237,0.12);border-radius: 12px;padding: 0.9rem 1.1rem}
.trust-item i{color: #a78bfa;font-size: 1.1rem;flex-shrink: 0}
.trust-item span{color: #94a3b8;font-size: 0.85rem;line-height: 1.5}
.game-pill{display: flex;align-items: center;gap: 0.6rem;background: rgba(124,58,237,0.1);border: 1px solid rgba(124,58,237,0.2);border-radius: 50px;padding: 0.45rem 1rem;color: #c4b5fd;font-size: 0.83rem;transition: all 0.2s}
.game-pill:hover{background: rgba(124,58,237,0.2);border-color: rgba(236,72,153,0.4);color: #f9a8d4}
.game-pill i{font-size: 0.8rem;color: #ec4899}
.cta-section{background: linear-gradient(135deg, #0a0118 0%, #1a0533 50%, #0d1117 100%);padding: 5rem 0;position: relative;overflow: hidden}
.cta-glow{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 600px;height: 300px;background: radial-gradient(ellipse, rgba(124,58,237,0.18) 0%, transparent 70%);pointer-events: none}
footer{background: #020617;border-top: 1px solid rgba(124,58,237,0.2);padding: 3rem 0 1.5rem}
footer h6{color: #a78bfa;font-weight: 600;margin-bottom: 1rem;font-size: 0.9rem;text-transform: uppercase;letter-spacing: 0.05em}
footer ul{list-style: none;padding: 0;margin: 0}
footer ul li{margin-bottom: 0.5rem}
footer ul li a{color: #64748b;font-size: 0.88rem;transition: color 0.2s}
footer ul li a:hover{color: #ec4899}
.footer-desc{color: #475569;font-size: 0.87rem;line-height: 1.7}
.footer-bottom{border-top: 1px solid rgba(124,58,237,0.12);margin-top: 2rem;padding-top: 1.2rem;color: #475569;font-size: 0.82rem}
.toast-neon{position: fixed;bottom: 2rem;right: 2rem;z-index: 9999;background: var(--bg-card);border: 1px solid rgba(124,58,237,0.4);border-radius: 14px;padding: 1rem 1.4rem;display: flex;align-items: center;gap: 0.8rem;box-shadow: 0 8px 32px rgba(124,58,237,0.2);transform: translateY(100px);opacity: 0;transition: all 0.4s;max-width: 320px}
.toast-neon.show{transform: translateY(0);opacity: 1}
.toast-neon i{font-size: 1.1rem}
.toast-neon span{color: #e2e8f0;font-size: 0.88rem;line-height: 1.5}
.otp-group{display: flex;gap: 0.5rem;justify-content: center;margin: 1rem 0}
.otp-input{width: 48px;height: 52px;text-align: center;background: rgba(2,6,23,0.8) !important;border: 1px solid rgba(124,58,237,0.3) !important;color: #f1f5f9 !important;border-radius: 10px !important;font-size: 1.2rem;font-weight: 700;transition: border-color 0.2s, box-shadow 0.2s}
.otp-input:focus{border-color: #ec4899 !important;box-shadow: 0 0 0 3px rgba(236,72,153,0.15) !important;outline: none}
@media  (max-width: 767px) {.login-card{padding: 1.5rem}
.otp-input{width: 40px;height: 44px;font-size: 1rem}}