/* LOLAPAY V2 shared visual layer — presentation only. */
:root{--v2-ink:#071f18;--v2-green:#0b4b38;--v2-lime:#c8ed42;--v2-paper:#f4f7f4;--v2-line:#dde7e1;--v2-muted:#6c7e74;--v2-shadow:0 18px 48px rgba(7,31,24,.075)}
body{font-feature-settings:"kern" 1,"liga" 1;-webkit-font-smoothing:antialiased}
.dashboard-body,.admin-content,.dashboard-content{background:radial-gradient(circle at 95% 0,rgba(200,237,66,.09),transparent 25%),var(--v2-paper)!important}
.dashboard-sidebar,.admin-sidebar{background:linear-gradient(180deg,#082b21,#061b15)!important;border-right:1px solid rgba(200,237,66,.1)!important}
.dashboard-sidebar:after,.admin-sidebar:after{content:"V2";position:absolute;right:14px;top:19px;background:var(--v2-lime);color:var(--v2-ink);border-radius:999px;padding:3px 6px;font-size:8px;font-weight:900;letter-spacing:.08em}
.sidebar-logo,.sidebar-brand{border-bottom-color:rgba(255,255,255,.08)!important}.sidebar-menu-link,.admin-sidebar .nav-link{border:1px solid transparent!important;border-radius:10px!important}.sidebar-menu-link:hover,.admin-sidebar .nav-link:hover{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.06)!important;transform:none!important}.sidebar-menu-item.active .sidebar-menu-link,.admin-sidebar .nav-link.active{background:linear-gradient(135deg,rgba(200,237,66,.18),rgba(200,237,66,.08))!important;border-color:rgba(200,237,66,.14)!important;color:var(--v2-lime)!important}
.dashboard-topbar,.admin-topbar{background:rgba(255,255,255,.88)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid var(--v2-line)!important;box-shadow:none!important}.dashboard-content,.admin-content{min-height:calc(100vh - 68px)}.dashboard-content>.container-fluid,.admin-content>.container-fluid{max-width:1480px;margin-inline:auto}.dashboard-content h1,.admin-content h1,.dashboard-content h2,.admin-content h2{letter-spacing:-.035em;color:var(--v2-ink)!important}
.card-custom,.admin-card,.stat-card,.plan-card,.activity-card,.settings-card{border:1px solid var(--v2-line)!important;border-radius:16px!important;box-shadow:0 1px 0 rgba(7,31,24,.02)!important;background:#fff!important}.card-custom:hover,.admin-card:hover,.stat-card:hover,.plan-card:hover{box-shadow:var(--v2-shadow)!important;transform:translateY(-2px)!important;border-color:#c5d6cc!important}.stat-card:before{height:2px!important;background:linear-gradient(90deg,var(--v2-lime),var(--v2-green))!important}
.form-control-custom,.form-select,.form-control{border-color:#d8e3dc!important;border-radius:10px!important;min-height:44px;box-shadow:none!important}.form-control-custom:focus,.form-select:focus,.form-control:focus{border-color:#8baa35!important;box-shadow:0 0 0 3px rgba(200,237,66,.16)!important}.btn-primary-custom{background:var(--v2-lime)!important;color:var(--v2-ink)!important;border:1px solid var(--v2-lime)!important;border-radius:10px!important;box-shadow:none!important;font-weight:800!important}.btn-dark-custom{background:var(--v2-ink)!important;color:#fff!important;border-radius:10px!important}.btn-outline-custom{border-color:#cbd9d1!important;color:var(--v2-ink)!important;border-radius:10px!important}
.table{--bs-table-bg:transparent}.table thead th,.data-table thead th{background:#f3f7f4!important;color:#65786d!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--v2-line)!important}.table td,.data-table td{border-color:#edf1ee!important;vertical-align:middle}.badge{border-radius:999px!important}.modal-content{border:1px solid var(--v2-line)!important;border-radius:18px!important;box-shadow:0 30px 80px rgba(7,31,24,.18)!important}
body.auth-page{background:radial-gradient(circle at 80% 12%,rgba(200,237,66,.14),transparent 28%),linear-gradient(145deg,#08271e,#051813 70%)!important;background-size:auto!important;animation:none!important}.auth-card{background:rgba(255,255,255,.97)!important;border:1px solid rgba(255,255,255,.6)!important;color:var(--v2-ink)!important;border-radius:22px!important;box-shadow:0 35px 90px rgba(0,0,0,.32)!important}.auth-brand h1,.auth-brand h2,.auth-brand p,.auth-card label,.auth-footer,.auth-footer p{color:var(--v2-ink)!important}.auth-brand p,.auth-footer p{opacity:.65}.auth-card .form-control{background:#f7f9f7!important;color:var(--v2-ink)!important;border-color:#d9e4dd!important}.auth-card .input-icon{color:#7c9084!important}.auth-card .btn-auth-primary{background:var(--v2-ink)!important;color:#fff!important;border-radius:11px!important}.auth-card .auth-divider:before,.auth-card .auth-divider:after{background:#dfe7e2!important}.auth-card .auth-divider span{color:#839188!important}
.admin-login-page{background:radial-gradient(circle at 80% 12%,rgba(200,237,66,.14),transparent 28%),linear-gradient(145deg,#08271e,#051813 70%)!important}.admin-login-page .login-card{background:rgba(255,255,255,.97)!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:22px!important;box-shadow:0 35px 90px rgba(0,0,0,.32)!important}.admin-login-page .login-card h3,.admin-login-page .login-card label{color:var(--v2-ink)!important}.admin-login-page .login-card input{background:#f7f9f7!important;border-color:#d9e4dd!important;color:var(--v2-ink)!important}.admin-login-page .login-btn{background:var(--v2-ink)!important;color:#fff!important;border-radius:11px!important}
.payment-body{background:radial-gradient(circle at 75% 10%,rgba(200,237,66,.14),transparent 28%),linear-gradient(145deg,#08271e,#051813 72%)}.payment-card{border-radius:22px!important;box-shadow:0 32px 80px rgba(0,0,0,.32)!important}.qr-frame{border-radius:16px!important}.qr-frame img{image-rendering:auto}
.docs-container{background:var(--v2-paper)}.docs-sidebar{background:#fff!important;border-color:var(--v2-line)!important}.docs-content h1,.docs-content h2,.docs-content h3{color:var(--v2-ink)!important;letter-spacing:-.025em}.endpoint-card,.info-card,.code-block{border-radius:14px!important}.navbar-custom{background:#071f18!important}
@media(max-width:991.98px){.dashboard-sidebar:after,.admin-sidebar:after{right:52px}.dashboard-content,.admin-content{padding:16px!important}.dashboard-content>.container-fluid,.admin-content>.container-fluid{padding:0!important}}
