/* ============================================================
   EXTERVEST LIMITED — Premium Fintech UI Theme
   Layered override stylesheet. Does NOT touch business logic.
   Scoped body classes:
     .premium-site  -> public website (index.html + all frontend)
     .premium-dash  -> client dashboard (+ auth pages)
     .premium-admin -> administrator dashboard
   ============================================================ */

:root {
    --ev-bg: #071426;
    --ev-bg-2: #0D1E35;
    --ev-card: #112640;
    --ev-card-2: #0F2138;
    --ev-accent: #19D5C5;
    --ev-accent-2: #14B8A6;
    --ev-gold: #D6AD55;
    --ev-gold-2: #E6C36B;
    --ev-text: #F7FAFC;
    --ev-muted: #A8B6C8;
    --ev-border: rgba(255, 255, 255, .08);
    --ev-border-strong: rgba(255, 255, 255, .14);
    --ev-pos: #22c55e;
    --ev-neg: #ef4444;
    --ev-radius: 16px;
    --ev-radius-sm: 10px;
    --ev-shadow: 0 20px 45px rgba(0, 0, 0, .35);
    --ev-shadow-sm: 0 8px 24px rgba(0, 0, 0, .25);
    --ev-grad-accent: linear-gradient(135deg, #19D5C5 0%, #14B8A6 100%);
    --ev-grad-gold: linear-gradient(135deg, #E6C36B 0%, #D6AD55 100%);
    --ev-grad-hero:
        radial-gradient(1200px 600px at 12% -10%, rgba(25, 213, 197, .18), transparent 60%),
        radial-gradient(900px 520px at 92% -5%, rgba(214, 173, 85, .12), transparent 55%),
        linear-gradient(180deg, #071426 0%, #0A1B30 55%, #071426 100%);
}

@keyframes ev-fade-up {
    from { opacity: 0; transform: translateY(22px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes ev-float {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-14px); }
}
@keyframes ev-bg-shift {
    0%   { background-position: 0% 50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* ============================================================
   PUBLIC WEBSITE  (body.premium-site)
   ============================================================ */
body.premium-site {
    background: var(--ev-bg) !important;
    color: var(--ev-text) !important;
    -webkit-font-smoothing: antialiased;
}
body.premium-site .page-wrapper,
body.premium-site main { background: transparent !important; }

/* Typography */
body.premium-site h1, body.premium-site h2, body.premium-site h3,
body.premium-site h4, body.premium-site h5, body.premium-site h6,
body.premium-site .title { color: var(--ev-text) !important; letter-spacing: -0.01em; }
body.premium-site .text,
body.premium-site p { color: var(--ev-muted); }
body.premium-site a { color: var(--ev-accent); }
body.premium-site a:hover { color: var(--ev-gold); }

/* ---------- Navigation ---------- */
body.premium-site .scroll-menu {
    background: rgba(7, 20, 38, .55) !important;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--ev-border);
    transition: background .3s ease, box-shadow .3s ease;
}
body.premium-site .scroll-menu--scrollable,
body.premium-site .scroll-menu--dark-desktop {
    background: rgba(7, 20, 38, .92) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .35);
}
body.premium-site .menu__link {
    color: var(--ev-text) !important;
    position: relative;
    transition: color .25s ease;
}
body.premium-site .menu__link::after {
    content: "";
    position: absolute; left: 0; bottom: -6px;
    width: 0; height: 2px; background: var(--ev-accent);
    transition: width .28s ease;
}
body.premium-site .menu__link:hover { color: var(--ev-accent) !important; }
body.premium-site .menu__link:hover::after { width: 100%; }
body.premium-site .scroll-menu__btn {
    background: var(--ev-grad-accent) !important;
    color: #05201d !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 22px rgba(25, 213, 197, .35) !important;
    transition: transform .25s ease, box-shadow .25s ease !important;
}
body.premium-site .scroll-menu__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(25, 213, 197, .5) !important;
}

/* ---------- Hero ---------- */
body.premium-site .hero {
    background: var(--ev-grad-hero) !important;
    background-size: 200% 200% !important;
    animation: ev-bg-shift 18s ease infinite;
}
body.premium-site .hero__content,
body.premium-site .hero__form-container { position: relative; z-index: 2; }
body.premium-site .hero__decoration { opacity: .5; }
body.premium-site .hero__decoration img { filter: drop-shadow(0 10px 30px rgba(25,213,197,.15)); }

/* ---------- Buttons ---------- */
body.premium-site .btn,
body.premium-site .hero__btn {
    background: var(--ev-grad-accent) !important;
    color: #05201d !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    padding: 14px 28px !important;
    box-shadow: 0 10px 28px rgba(25, 213, 197, .35) !important;
    transition: transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}
body.premium-site .btn:hover,
body.premium-site .hero__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 38px rgba(25, 213, 197, .5) !important;
    filter: brightness(1.05);
}
body.premium-site .btn:active,
body.premium-site .hero__btn:active { transform: translateY(0) scale(.99); }

/* Section rhythm */
body.premium-site .section { position: relative; }
body.premium-site .container { position: relative; z-index: 2; }

/* Reveal-on-scroll (added by premium.js) */
body.premium-site [data-ev-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1);
    will-change: opacity, transform;
}
body.premium-site [data-ev-reveal].ev-in { opacity: 1; transform: none; }

/* ---------- Cards: pricing tables & generic cards ---------- */
body.premium-site .ptable-single,
body.premium-site .css-etw247,
body.premium-site .card,
body.premium-site .features .card {
    background: linear-gradient(180deg, var(--ev-card) 0%, var(--ev-card-2) 100%) !important;
    border: 1px solid var(--ev-border) !important;
    border-radius: var(--ev-radius) !important;
    box-shadow: var(--ev-shadow-sm) !important;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.premium-site .ptable-single:hover,
body.premium-site .card:hover {
    transform: translateY(-6px);
    border-color: rgba(25, 213, 197, .5) !important;
    box-shadow: 0 26px 55px rgba(0, 0, 0, .5), 0 0 0 1px rgba(25,213,197,.25) !important;
}
body.premium-site .ptable-header,
body.premium-site .ptable-body,
body.premium-site .ptable-footer {
    background: transparent !important;
    color: var(--ev-text) !important;
    border-color: var(--ev-border) !important;
}
body.premium-site .ptable-title h2 { color: var(--ev-text) !important; }
body.premium-site .ptable-price h2,
body.premium-site .ptable-price { color: var(--ev-accent) !important; }
body.premium-site .ptable-description li {
    color: var(--ev-muted) !important;
    border-bottom: 1px solid var(--ev-border) !important;
}
body.premium-site .ptable-description li span:last-child { color: var(--ev-text) !important; }
body.premium-site .ptable-status span {
    background: rgba(25, 213, 197, .15) !important;
    color: var(--ev-accent) !important;
    border: 1px solid rgba(25, 213, 197, .35);
    border-radius: 999px;
    padding: 4px 12px;
}
body.premium-site .featured-item .ptable-single {
    border-color: var(--ev-gold) !important;
    box-shadow: 0 24px 60px rgba(214, 173, 85, .22) !important;
}

/* Section-specific accents */
body.premium-site .section.instruments,
body.premium-site .section.education-section,
body.premium-site .section.payments,
body.premium-site .section.awards-section {
    background: linear-gradient(180deg, rgba(13,30,53,.55), rgba(7,20,38,0)) !important;
}
body.premium-site .section.numbers { background: linear-gradient(180deg, rgba(25,213,197,.08), transparent) !important; }

/* ---------- Stat numbers (count-up target) ---------- */
body.premium-site .numbers__title {
    background: var(--ev-grad-gold);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--ev-gold) !important;
    font-weight: 800;
}
body.premium-site .numbers__subtitle { color: var(--ev-muted) !important; }
body.premium-site .numbers__item { transition: transform .3s ease; }
body.premium-site .numbers__item:hover { transform: translateY(-4px); }

/* ---------- Footer ---------- */
body.premium-site .footer,
body.premium-site footer,
body.premium-site .footer__wrapper {
    background: linear-gradient(180deg, #0A1B30 0%, #060f1d 100%) !important;
    border-top: 1px solid var(--ev-border);
    color: var(--ev-muted) !important;
}
body.premium-site .footer__copyright,
body.premium-site .footer__copyright p { color: var(--ev-muted) !important; }
body.premium-site .footer a { color: var(--ev-text) !important; }
body.premium-site .footer a:hover { color: var(--ev-accent) !important; }
body.premium-site .footer-social { background: #060f1d !important; color: var(--ev-muted) !important; }

/* ---------- Forms / inputs ---------- */
body.premium-site input,
body.premium-site select,
body.premium-site textarea {
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid var(--ev-border-strong) !important;
    color: var(--ev-text) !important;
    border-radius: var(--ev-radius-sm) !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}
body.premium-site input::placeholder,
body.premium-site textarea::placeholder { color: rgba(168, 182, 200, .7) !important; }
body.premium-site input:focus,
body.premium-site select:focus,
body.premium-site textarea:focus {
    outline: none !important;
    border-color: var(--ev-accent) !important;
    box-shadow: 0 0 0 3px rgba(25, 213, 197, .18) !important;
}
body.premium-site .sign-registration-form,
body.premium-site .sign-registration-form__inner-top {
    background: rgba(13, 30, 53, .85) !important;
    border: 1px solid var(--ev-border) !important;
    border-radius: var(--ev-radius) !important;
    color: var(--ev-text) !important;
}

/* ---------- Tables & badges ---------- */
body.premium-site table { width: 100%; border-collapse: collapse; }
body.premium-site table th {
    color: var(--ev-text) !important;
    background: rgba(255, 255, 255, .03) !important;
    border-color: var(--ev-border) !important;
}
body.premium-site table td {
    color: var(--ev-muted) !important;
    border-color: var(--ev-border) !important;
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
    body.premium-site .hero { animation: none !important; }
    body.premium-site [data-ev-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
    body.premium-site .btn, body.premium-site .hero__btn,
    body.premium-site .ptable-single, body.premium-site .card { transition: none !important; }
}

/* ============================================================
   CLIENT DASHBOARD  (body.premium-dash)  + auth pages
   ============================================================ */
body.premium-dash {
    background: var(--ev-bg) !important;
    color: var(--ev-text) !important;
    -webkit-font-smoothing: antialiased;
}
body.premium-dash a { color: var(--ev-accent); }
body.premium-dash .appHeader {
    background: linear-gradient(90deg, #071426 0%, #0D1E35 100%) !important;
    color: var(--ev-text) !important;
    border-bottom: 1px solid var(--ev-border) !important;
}
body.premium-dash .appHeader:before { background: #071426 !important; }
body.premium-dash .appHeader .headerButton,
body.premium-dash .appHeader .headerButton ion-icon { color: var(--ev-text) !important; }
body.premium-dash .appHeader .pageTitle .logo { filter: none; }

body.premium-dash .sidebar,
body.premium-dash .sidebar-content { background: var(--ev-bg-2) !important; }
body.premium-dash .sidebar a,
body.premium-dash .sidebar .action-button,
body.premium-dash .sidebar .in { color: var(--ev-text) !important; }

body.premium-dash .card,
body.premium-dash .card-block,
body.premium-dash .card-main,
body.premium-dash .block {
    background: linear-gradient(180deg, var(--ev-card) 0%, var(--ev-card-2) 100%) !important;
    border: 1px solid var(--ev-border) !important;
    border-radius: var(--ev-radius) !important;
    box-shadow: var(--ev-shadow-sm) !important;
    color: var(--ev-text) !important;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.premium-dash .card-block:hover {
    transform: translateY(-4px);
    border-color: rgba(25, 213, 197, .45) !important;
    box-shadow: 0 22px 48px rgba(0,0,0,.5) !important;
}
body.premium-dash .balance .title,
body.premium-dash .card-block .title { color: var(--ev-text) !important; }
body.premium-dash .label,
body.premium-dash .coin-text,
body.premium-dash .coin-name { color: var(--ev-muted) !important; }
body.premium-dash .coin-name { color: var(--ev-text) !important; }

body.premium-dash .btn,
body.premium-dash .btn-primary,
body.premium-dash .card-button > .btn {
    background: var(--ev-grad-accent) !important;
    border: 0 !important;
    color: #05201d !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 22px rgba(25,213,197,.3) !important;
    transition: transform .25s ease, box-shadow .25s ease !important;
}
body.premium-dash .btn:hover,
body.premium-dash .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(25,213,197,.45) !important; }
body.premium-dash .btn-secondary,
body.premium-dash .btn-outline {
    background: transparent !important;
    border: 1px solid var(--ev-border-strong) !important;
    color: var(--ev-text) !important;
    box-shadow: none !important;
}

body.premium-dash .listview,
body.premium-dash .item,
body.premium-dash .in,
body.premium-dash .content { color: var(--ev-text) !important; }
body.premium-dash .item {
    background: transparent !important;
    border-color: var(--ev-border) !important;
}
body.premium-dash .text-muted,
body.premium-dash .text-secondary { color: var(--ev-muted) !important; }

body.premium-dash h1, body.premium-dash h2, body.premium-dash h3,
body.premium-dash h4, body.premium-dash h5, body.premium-dash h6 { color: var(--ev-text) !important; }

body.premium-dash table { color: var(--ev-text) !important; }
body.premium-dash table th { color: var(--ev-text) !important; background: rgba(255,255,255,.03) !important; border-color: var(--ev-border) !important; }
body.premium-dash table td { color: var(--ev-muted) !important; border-color: var(--ev-border) !important; }

body.premium-dash input,
body.premium-dash select,
body.premium-dash textarea {
    background: #0f2138 !important;
    border: 1px solid var(--ev-border-strong) !important;
    color: var(--ev-text) !important;
    border-radius: var(--ev-radius-sm) !important;
}
body.premium-dash .form-control {
    background-color: #0f2138 !important;
    color: var(--ev-text) !important;
    border-color: var(--ev-border-strong) !important;
}
body.premium-dash .form-control::placeholder { color: rgba(168, 182, 200, .75) !important; }
body.premium-dash .input-group-text {
    background: #0b1a2e !important;
    color: var(--ev-muted) !important;
    border: 1px solid var(--ev-border-strong) !important;
}

/* Darken remaining Bootstrap surfaces that were still white */
body.premium-dash .card-body,
body.premium-dash .modal-content,
body.premium-dash .modal-header,
body.premium-dash .modal-body,
body.premium-dash .modal-footer,
body.premium-dash .action-sheet,
body.premium-dash .action-sheet-content,
body.premium-dash .dialogbox,
body.premium-dash .sheet-modal,
body.premium-dash .offcanvas,
body.premium-dash .offcanvas-body {
    background: var(--ev-card) !important;
    color: var(--ev-text) !important;
    border-color: var(--ev-border) !important;
}
body.premium-dash .form-group,
body.premium-dash .input-wrapper { background: transparent !important; }

/* Headings / helper text inside dashboard cards */
body.premium-dash .section-title,
body.premium-dash .card-title,
body.premium-dash .listview-title,
body.premium-dash .nk-iv-wg4-title,
body.premium-dash .lead-text,
body.premium-dash .form-group .label { color: var(--ev-text) !important; }
body.premium-dash .sub-text { color: var(--ev-muted) !important; }
body.premium-dash label { color: var(--ev-muted) !important; }
body.premium-dash input:focus,
body.premium-dash select:focus,
body.premium-dash textarea:focus {
    outline: none !important;
    border-color: var(--ev-accent) !important;
    box-shadow: 0 0 0 3px rgba(25,213,197,.18) !important;
}

body.premium-dash .splide__slide .card-block { border-radius: var(--ev-radius) !important; }

/* Wallet / balance card (was light -> made the white balance text invisible) */
body.premium-dash .wallet-card {
    background: linear-gradient(135deg, #0D1E35 0%, #112640 100%) !important;
    border: 1px solid var(--ev-border) !important;
    border-radius: var(--ev-radius) !important;
    color: var(--ev-text) !important;
    box-shadow: var(--ev-shadow-sm) !important;
}
body.premium-dash .wallet-card .balance .total { color: var(--ev-text) !important; }
body.premium-dash .wallet-card .balance .title { color: var(--ev-muted) !important; }
body.premium-dash .wallet-card .wallet-footer .item .in,
body.premium-dash .wallet-card .wallet-footer .item span { color: var(--ev-muted) !important; }
body.premium-dash .wallet-card .balance .right .button {
    background: var(--ev-grad-accent) !important;
    color: #05201d !important;
    border-radius: 50% !important;
}

/* Auth pages inherit the dashboard shell — keep the login card premium */
body.premium-dash .login-card,
body.premium-dash .appHeader.transparent { background: transparent !important; }

/* ============================================================
   ADMIN DASHBOARD  (body.premium-admin)
   ============================================================ */
body.premium-admin,
body.premium-admin .nk-app-root,
body.premium-admin .nk-main {
    background: var(--ev-bg) !important;
    color: var(--ev-text) !important;
}
body.premium-admin .nk-sidebar,
body.premium-admin .nk-sidebar-content,
body.premium-admin .nk-sidebar-menu {
    background: var(--ev-bg-2) !important;
    border-color: var(--ev-border) !important;
}
body.premium-admin .nk-menu-link,
body.premium-admin .nk-menu-text,
body.premium-admin .nk-menu-icon {
    color: var(--ev-text) !important;
}
body.premium-admin .nk-menu-link:hover,
body.premium-admin .nk-menu-item.active > .nk-menu-link {
    background: rgba(25, 213, 197, .12) !important;
    color: var(--ev-accent) !important;
}
body.premium-admin .nk-header,
body.premium-admin .nk-header-wrap {
    background: rgba(7, 20, 38, .9) !important;
    border-color: var(--ev-border) !important;
    color: var(--ev-text) !important;
}
body.premium-admin .card,
body.premium-admin .card-bordered,
body.premium-admin .card-inner {
    background: linear-gradient(180deg, var(--ev-card) 0%, var(--ev-card-2) 100%) !important;
    border: 1px solid var(--ev-border) !important;
    border-radius: var(--ev-radius) !important;
    color: var(--ev-text) !important;
}
body.premium-admin .card-title,
body.premium-admin h1, body.premium-admin h2,
body.premium-admin h3, body.premium-admin h4,
body.premium-admin h5, body.premium-admin h6 { color: var(--ev-text) !important; }
body.premium-admin .text-muted,
body.premium-admin .text-secondary { color: var(--ev-muted) !important; }
body.premium-admin .nk-footer,
body.premium-admin .nk-footer-copyright { background: transparent !important; color: var(--ev-muted) !important; }
body.premium-admin .btn-primary,
body.premium-admin .btn {
    background: var(--ev-grad-accent) !important;
    border: 0 !important;
    color: #05201d !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
}
body.premium-admin .btn-outline-light,
body.premium-admin .btn-secondary {
    background: transparent !important;
    border: 1px solid var(--ev-border-strong) !important;
    color: var(--ev-text) !important;
}
body.premium-admin table th {
    color: var(--ev-text) !important;
    background: rgba(255,255,255,.04) !important;
    border-color: var(--ev-border) !important;
}
body.premium-admin table td { color: var(--ev-muted) !important; border-color: var(--ev-border) !important; }
body.premium-admin input, body.premium-admin select, body.premium-admin textarea {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid var(--ev-border-strong) !important;
    color: var(--ev-text) !important;
    border-radius: var(--ev-radius-sm) !important;
}
body.premium-admin input:focus, body.premium-admin select:focus, body.premium-admin textarea:focus {
    outline: none !important;
    border-color: var(--ev-accent) !important;
    box-shadow: 0 0 0 3px rgba(25,213,197,.18) !important;
}
body.premium-admin .badge-success, body.premium-admin .text-success { color: var(--ev-pos) !important; }
body.premium-admin .badge-danger, body.premium-admin .text-danger { color: var(--ev-neg) !important; }

/* ============================================================
   SHARED UTILITIES
   ============================================================ */
.ev-gold { color: var(--ev-gold) !important; }
.ev-accent { color: var(--ev-accent) !important; }
.ev-pos { color: var(--ev-pos) !important; }
.ev-neg { color: var(--ev-neg) !important; }

/* Back-to-top button (injected by premium.js) */
#ev-backtop {
    position: fixed; right: 22px; bottom: 22px; z-index: 1200;
    width: 46px; height: 46px; border-radius: 50%;
    border: 1px solid var(--ev-border-strong);
    background: rgba(13, 30, 53, .9);
    color: var(--ev-accent);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; opacity: 0; visibility: hidden;
    transform: translateY(10px);
    transition: opacity .3s ease, transform .3s ease, visibility .3s;
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
#ev-backtop.show { opacity: 1; visibility: visible; transform: translateY(0); }
#ev-backtop:hover { border-color: var(--ev-accent); box-shadow: 0 0 22px rgba(25,213,197,.35); }

/* ---------- Responsive polish ---------- */
@media (max-width: 991px) {
    body.premium-site .title { line-height: 1.15; }
    body.premium-site .ptable-single { margin-bottom: 18px; }
    body.premium-dash .card-block { border-radius: 14px !important; }
}
@media (max-width: 575px) {
    body.premium-site .btn, body.premium-site .hero__btn { padding: 12px 20px !important; }
    #ev-backtop { right: 14px; bottom: 14px; }
}

/* ---------- Reduced motion (dashboard/admin) ---------- */
@media (prefers-reduced-motion: reduce) {
    body.premium-dash .card-block, body.premium-admin .card { transition: none !important; }
}

/* ---------- Logo contrast on dark surfaces ----------
   The brand marks are dark (navy/dark-green) on transparent backgrounds.
   On the dark premium surfaces we render them white for legibility. */
body.premium-site .scroll-menu__logo img,
body.premium-site .footer__logo,
body.premium-site .sign-registration-form__logo img,
body.premium-dash .appHeader .pageTitle .logo {
    filter: brightness(0) invert(1) !important;
}

/* Dashboard header logo: bigger, white, with a subtle shadow for visibility */
body.premium-dash .appHeader .pageTitle .logo {
    max-height: 38px !important;
    width: auto !important;
    display: inline-block;
    filter: brightness(0) invert(1) drop-shadow(0 1px 3px rgba(0, 0, 0, .65)) !important;
}

/* ---------- Helper / legal note legibility on dark surfaces ---------- */
body.premium-site .note,
body.premium-site .sign-registration-form__note,
body.premium-site .form-check-label,
body.premium-site .form-text,
body.premium-site small {
    color: var(--ev-muted) !important;
}
body.premium-site .sign-registration-form__link,
body.premium-site .form-link {
    color: var(--ev-accent) !important;
}
body.premium-site .sign-registration-form__link:hover,
body.premium-site .form-link:hover {
    color: var(--ev-gold) !important;
}
body.premium-dash .form-check-label,
body.premium-dash .custom-control-label,
body.premium-dash .form-check,
body.premium-dash .note,
body.premium-dash .form-text,
body.premium-dash small {
    color: var(--ev-muted) !important;
}
body.premium-admin .form-check-label,
body.premium-admin .form-text,
body.premium-admin small {
    color: var(--ev-muted) !important;
}

/* ---------- Experimental "SIMULATED DEMO" profits indicator ---------- */
@keyframes ev-pulse {
    0%, 100% { opacity: .7; }
    50%      { opacity: 1; }
}
.ev-demo-badge {
    position: fixed;
    top: 66px;
    right: 14px;
    z-index: 1400;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--ev-gold);
    background: rgba(214, 173, 85, .12);
    border: 1px solid rgba(214, 173, 85, .55);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    animation: ev-pulse 1.8s ease-in-out infinite;
    pointer-events: none;
}
.ev-demo-badge::before {
    content: "";
    width: 8px; height: 8px; border-radius: 50%;
    background: var(--ev-gold);
    box-shadow: 0 0 10px var(--ev-gold);
}

/* ============================================================
   MOBILE NAVIGATION — animated side drawer
   (reuses the template's .scroll-menu__menu--active toggle state)
   ============================================================ */
.ev-nav-backdrop { display: none; }
.ev-drawer-cta { display: none; }
.ev-drawer-close { display: none; }

@media (max-width: 1023px) {
    /* ---- Header layout: logo (fixed) | compact language | burger ---- */
    body.premium-site .scroll-menu__top-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        padding: 8px 12px;
    }
    body.premium-site .scroll-menu__logo-wrapper { flex: 0 0 auto; }
    body.premium-site .scroll-menu__logo img,
    body.premium-site .scroll-menu__logo picture img {
        height: 30px !important;
        max-height: 30px !important;
        width: auto !important;
        max-width: 52vw !important;
        object-fit: contain;
        display: block;
    }
    /* Compact Google-Translate widget (was stretching the bar) */
    body.premium-site #google_translate_element {
        flex: 0 0 auto;
        max-width: 96px;
        overflow: hidden;
        margin-left: auto;
    }
    body.premium-site #google_translate_element .goog-te-gadget { font-size: 0 !important; line-height: 0; }
    body.premium-site #google_translate_element .goog-te-combo {
        font-size: 12px !important;
        padding: 2px 4px !important;
        border-radius: 8px;
        max-width: 96px;
    }
    body.premium-site .scroll-menu__btn { display: none !important; }
    body.premium-site .btn-menu-open { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; }

    /* ---- Drawer panel ---- */
    body.premium-site .scroll-menu__menu {
        position: fixed;
        top: 0;
        right: 0;
        height: 100vh;
        width: min(86%, 340px);
        background: linear-gradient(180deg, #0A1B30 0%, #071426 100%);
        border-left: 1px solid var(--ev-border);
        box-shadow: -24px 0 60px rgba(0, 0, 0, .55);
        transform: translateX(105%);
        transition: transform .42s cubic-bezier(.22, 1, .36, 1);
        z-index: 1200;
        padding: 72px 20px 28px;
        overflow-y: auto;
        display: block;
        -webkit-overflow-scrolling: touch;
    }
    body.premium-site .scroll-menu__menu--active { transform: translateX(0); }
    body.premium-site .scroll-menu__menu .menu {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    body.premium-site .scroll-menu__menu .menu__item { width: 100%; }
    body.premium-site .scroll-menu__menu .menu__link {
        display: block;
        width: 100%;
        padding: 14px 6px;
        font-size: 17px;
        color: var(--ev-text) !important;
        border-bottom: 1px solid var(--ev-border);
    }
    body.premium-site .scroll-menu__menu .menu__link::after { display: none; }
}

@media (max-width: 1023px) {
    /* Dropdown inside drawer */
    body.premium-site .scroll-menu__menu .dropdown-menu {
        position: static !important;
        float: none !important;
        display: none;
        background: rgba(255, 255, 255, .04) !important;
        border: 1px solid var(--ev-border) !important;
        border-radius: 12px;
        margin: 6px 0 10px;
        padding: 6px;
        width: 100%;
    }
    body.premium-site .scroll-menu__menu .dropdown-menu.show { display: block; }
    body.premium-site .scroll-menu__menu .dropdown-item {
        color: var(--ev-muted) !important;
        padding: 10px 12px;
        border-radius: 8px;
    }
    body.premium-site .scroll-menu__menu .dropdown-item:hover {
        background: rgba(25, 213, 197, .12) !important;
        color: var(--ev-accent) !important;
    }

    /* Drawer close button (injected by JS) */
    body.premium-site .ev-drawer-close {
        position: absolute;
        top: 16px;
        right: 16px;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: rgba(255, 255, 255, .06);
        border: 1px solid var(--ev-border);
        color: var(--ev-text);
        font-size: 24px;
        line-height: 1;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    body.premium-site .ev-drawer-close:hover { border-color: var(--ev-accent); color: var(--ev-accent); }

    /* Drawer CTA (injected clone of "Open Account") */
    body.premium-site .ev-drawer-cta {
        display: block;
        margin-top: 20px;
        text-align: center;
        background: var(--ev-grad-accent);
        color: #05201d !important;
        font-weight: 700;
        padding: 13px 20px;
        border-radius: 999px;
        box-shadow: 0 10px 26px rgba(25, 213, 197, .35);
    }

    /* Animated hamburger -> X */
    body.premium-site .btn-menu-open__elem { transition: transform .32s ease, opacity .32s ease; }
    body.premium-site .btn-menu-open--active .btn-menu-open__elem--1 { transform: translateY(6px) rotate(45deg); }
    body.premium-site .btn-menu-open--active .btn-menu-open__elem--2 { opacity: 0; }
    body.premium-site .btn-menu-open--active .btn-menu-open__elem--3 { transform: translateY(-6px) rotate(-45deg); }

    /* Backdrop + scroll lock */
    body.premium-site .ev-nav-backdrop {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(3, 8, 20, .6);
        opacity: 0;
        visibility: hidden;
        transition: opacity .35s ease, visibility .35s ease;
        z-index: 1100;
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
    }
    body.premium-site.ev-nav-open .ev-nav-backdrop { opacity: 1; visibility: visible; }
    body.premium-site.ev-nav-open { overflow: hidden; }
}

/* ============================================================
   MOBILE RESPONSIVENESS — PUBLIC SITE
   ============================================================ */
@media (max-width: 991px) {
    body.premium-site { overflow-x: hidden; }
    body.premium-site img,
    body.premium-site picture img { max-width: 100%; height: auto; }
    body.premium-site .container {
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    body.premium-site .section { padding-left: 0 !important; padding-right: 0 !important; }
    body.premium-site .hero { overflow: hidden; }
    body.premium-site .hero__container { flex-direction: column; align-items: stretch; }
    body.premium-site .hero__content { margin-right: 0 !important; }
    body.premium-site .title,
    body.premium-site h1 { font-size: clamp(28px, 8vw, 40px) !important; line-height: 1.15 !important; }
    body.premium-site h2 { font-size: clamp(22px, 6vw, 32px) !important; line-height: 1.2 !important; }
    body.premium-site h3 { font-size: clamp(18px, 5vw, 26px) !important; }
    body.premium-site .hero__form-container,
    body.premium-site .sign-registration-form { width: 100% !important; max-width: 100% !important; }
    body.premium-site .ptable-single { margin-bottom: 18px; }
    body.premium-site .numbers__list { flex-wrap: wrap !important; gap: 16px !important; }
    body.premium-site .numbers__item { min-width: 45% !important; }
    body.premium-site .numbers__title { font-size: clamp(32px, 9vw, 44px) !important; }
    body.premium-site .footer__wrapper {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
    }
    body.premium-site .footer-social {
        flex-direction: column !important;
        gap: 12px !important;
        padding: 20px !important;
    }
    body.premium-site .footer-newsletter { flex: 1 1 100% !important; top: 0 !important; }
    body.premium-site .footer__logo { max-width: 220px; }
    body.premium-site table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    body.premium-site .inner-main__inner { padding-left: 16px !important; padding-right: 16px !important; }
    body.premium-site .row { margin-left: 0 !important; margin-right: 0 !important; }
    body.premium-site .section .row > [class*="col-"] { padding-left: 10px; padding-right: 10px; }
    body.premium-site .education-section .row,
    body.premium-site .clients .row,
    body.premium-site .awards-section .row { gap: 16px; }
}

@media (max-width: 575px) {
    body.premium-site .btn,
    body.premium-site .hero__btn { width: 100%; justify-content: center; }
    body.premium-site .numbers__item { min-width: 100% !important; }
    body.premium-site .section { padding-top: 36px !important; padding-bottom: 36px !important; }
    body.premium-site .hero__form-container .sign-registration-form,
    body.premium-site .sign-registration-form { padding: 16px !important; }
}

/* ============================================================
   MOBILE RESPONSIVENESS — CLIENT DASHBOARD + ADMIN
   ============================================================ */
@media (max-width: 767px) {
    body.premium-dash,
    body.premium-admin { overflow-x: hidden; }
    body.premium-dash img,
    body.premium-admin img { max-width: 100%; height: auto; }

    /* Dashboard header + balance */
    body.premium-dash .appHeader .pageTitle .logo { max-height: 30px !important; }
    body.premium-dash .balance .total { font-size: clamp(26px, 7vw, 34px) !important; }
    body.premium-dash .sidebar-balance .amount { font-size: clamp(24px, 7vw, 32px) !important; }
    body.premium-dash .wallet-card { padding: 16px !important; }
    body.premium-dash .card-body { padding: 16px !important; }
    body.premium-dash .section-title { font-size: 18px !important; }
    body.premium-dash .card-block { width: 100% !important; }

    /* Keep plan carousel cards comfortable and swipeable */
    body.premium-dash .splide { width: 100% !important; }
    body.premium-dash .splide__slide { padding-right: 12px !important; }

    /* Cards / grids stack nicely */
    body.premium-dash .row { margin-left: 0 !important; margin-right: 0 !important; }
    body.premium-dash .row > [class*="col-"] { padding-left: 10px; padding-right: 10px; }

    /* Tables scroll instead of overflowing */
    body.premium-dash .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    body.premium-dash .card-body > .table,
    body.premium-dash .card-body > table {
        display: block;
        width: 100%;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    /* Buttons full width where stacked */
    body.premium-dash .btn-block,
    body.premium-dash .btn-lg { width: 100%; }

    /* Forms */
    body.premium-dash .form-group { margin-bottom: 14px; }

    /* Admin */
    body.premium-admin .card { margin-bottom: 16px; }
    body.premium-admin .nk-content,
    body.premium-admin .nk-content-fluid,
    body.premium-admin .container-fluid { padding-left: 12px !important; padding-right: 12px !important; }
    body.premium-admin .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    body.premium-admin .card-body > table,
    body.premium-admin .nk-tb-list {
        display: block;
        width: 100%;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    body.premium-admin .nk-tb-item { min-width: 640px; }
}

@media (max-width: 575px) {
    body.premium-dash .wallet-card .balance .title { font-size: 12px; }
    body.premium-dash .action-button { width: 100%; }
    body.premium-dash .btn { padding-left: 14px; padding-right: 14px; }
    body.premium-admin .card-title { font-size: 16px; }
}

/* ============================================================
   MOBILE RESPONSIVENESS — FRONTEND / INNER PAGES
   (trading, about-us, our-services, contact-us, legal, forex, plans)
   ============================================================ */
@media (max-width: 991px) {
    body.premium-site .inner-promo__inner { padding: 40px 16px !important; }
    body.premium-site .inner-promo__title { font-size: clamp(24px, 7vw, 34px) !important; }
    body.premium-site .inner-promo__caption { font-size: 15px !important; line-height: 1.6 !important; }
    body.premium-site .inner-main__inner { padding: 22px 16px !important; }
    body.premium-site .inner-main_trading .container { max-width: 100% !important; }
    body.premium-site .block.block_content { padding: 20px !important; }
    body.premium-site .conditions__text { font-size: 15px !important; line-height: 1.75 !important; }
    body.premium-site .conditions__text h3 { font-size: 22px !important; }
    body.premium-site .block__title { font-size: 22px !important; }

    /* Big desktop margins collapse on mobile */
    body.premium-site .mx-5 { margin-left: 0 !important; margin-right: 0 !important; }
    body.premium-site .mt-40 { margin-top: 24px !important; }
    body.premium-site .mb-27 { margin-bottom: 24px !important; }
    body.premium-site .mt-5 { margin-top: 24px !important; }
    body.premium-site .row.no-gutters { margin-left: 0 !important; margin-right: 0 !important; }

    /* Featured icon boxes stack vertically */
    body.premium-site .featured-icon-box {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px;
        border-right: 0 !important;
        border-bottom: 1px solid var(--ev-border);
        padding-bottom: 18px;
        margin-bottom: 18px;
    }
    body.premium-site .featured-icon-box img { max-width: 140px; height: auto; }
    body.premium-site .featured-title h5 { font-size: 18px !important; }
    body.premium-site .featured-desc p { font-size: 15px !important; line-height: 1.7 !important; }

    /* Comparison tables scroll horizontally instead of squashing */
    body.premium-site .trading { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    body.premium-site .trading__table { min-width: 640px; width: 100%; }
    body.premium-site .trading__padding-50px { padding: 14px !important; }
    body.premium-site .trading__header-title .subtitle { font-size: 16px !important; }
}

/* ============================================================
   GLOBAL MOBILE POLISH — typography, touch targets, hero
   ============================================================ */
@media (max-width: 991px) {
    body.premium-site,
    body.premium-dash,
    body.premium-admin {
        font-size: 16px;
        -webkit-text-size-adjust: 100%;
    }
    body.premium-site p,
    body.premium-dash p,
    body.premium-admin p { line-height: 1.7; }
    body.premium-site a,
    body.premium-site button,
    body.premium-dash a,
    body.premium-dash button { -webkit-tap-highlight-color: transparent; }

    /* Comfortable touch targets */
    body.premium-site .btn,
    body.premium-dash .btn { min-height: 44px; }
    body.premium-dash .action-button,
    body.premium-dash .headerButton { min-height: 44px; min-width: 44px; }

    /* Hide heavy hero decorations that clutter/overflow phones */
    body.premium-site .hero__decorations { display: none !important; }
    body.premium-site .hero { margin-top: 56px !important; padding-bottom: 56px !important; }
    body.premium-site .section { padding-top: 40px !important; padding-bottom: 40px !important; }
    body.premium-site .numbers__container { padding: 0 !important; }
    body.premium-site .app-smart-banner { max-width: 100% !important; }
}

@media (max-width: 575px) {
    body.premium-site .hero__btn,
    body.premium-site .btn { width: 100%; }
    body.premium-site .section { padding-top: 32px !important; padding-bottom: 32px !important; }
    /* On very small screens, drop the language widget from the header
       (the burger drawer remains the primary navigation). */
    body.premium-site #google_translate_element { max-width: 84px; }
}




