:root{--accent:#2dd4a8;--accent-dark:#20b890;--accent-light:#a7f3d0;--accent-glow:rgba(45,212,168,.5);--card-bg:#ffffff;--card-border:#d1fae5;--body-bg:#f0fdf4;--body-text:#1e293b;--muted:#64748b;--sidebar-bg:#ecfdf5;--input-bg:#f8fafc;--input-border:#a7f3d0;--table-bg:#ffffff;--table-border:#d1fae5;--table-head-bg:#d1fae5;--table-head-text:#065f46;--hero-from:#ecfdf5;--hero-via:#d1fae5;--hero-to:#a7f3d0;--loader-bg:#f0fdf4;--scroll-track:#e2e8f0;--scroll-thumb:#2dd4a8;}
body{font-family:'Segoe UI',sans-serif;min-height:100vh;background:var(--body-bg)!important;color:var(--body-text)!important;}

/* ── Cards ── */
.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;color:var(--body-text);box-shadow:0 1px 6px rgba(45,212,168,.08);}
.game-card{transition:transform .25s,box-shadow .25s;cursor:pointer;}
.game-card:hover{transform:translateY(-6px);box-shadow:0 8px 25px rgba(45,212,168,.2);}
.game-card .card-img-top{height:160px;object-fit:cover;border-radius:12px 12px 0 0;}

/* ── Buttons ── */
.btn-accent{background:var(--accent);color:#fff;font-weight:600;border:none;}
.btn-accent:hover{background:var(--accent-dark);color:#fff;}

/* ── Hero ── */
.hero{background:linear-gradient(135deg,var(--hero-from),var(--hero-via),var(--hero-to));border-radius:16px;padding:60px 30px;color:var(--body-text);}
.hero h1{font-size:2.8rem;font-weight:800;text-shadow:0 0 30px var(--accent-glow);color:#065f46;}

/* ── Glow text ── */
.glow{color:var(--accent);text-shadow:0 0 8px var(--accent-glow);}

/* ── Package card ── */
.pkg-card{border:2px solid transparent;transition:border-color .2s,transform .2s;cursor:pointer;background:var(--card-bg);}
.pkg-card:hover,.pkg-card.selected{border-color:var(--accent);transform:scale(1.03);box-shadow:0 4px 15px rgba(45,212,168,.15);}
.pkg-card .price{font-size:1.4rem;font-weight:800;color:var(--accent-dark);}
.pkg-card .orig{text-decoration:line-through;color:#94a3b8;font-size:.85rem;}

/* ── Stat card ── */
.stat-card{border-left:4px solid var(--accent);padding:16px 20px;background:var(--card-bg);border-radius:10px;border:1px solid var(--card-border);border-left:4px solid var(--accent);box-shadow:0 1px 6px rgba(45,212,168,.08);}
.stat-card .stat-num{font-size:2rem;font-weight:800;color:var(--accent-dark);}

/* ── Table ── */
.table-dark{--bs-table-bg:var(--table-bg)!important;--bs-table-border-color:var(--table-border)!important;--bs-table-color:var(--body-text)!important;--bs-table-hover-bg:#ecfdf5!important;--bs-table-hover-color:var(--body-text)!important;--bs-table-striped-bg:#f0fdf4!important;}
.table-dark thead{background:var(--table-head-bg)!important;color:var(--table-head-text)!important;}
.table-dark th{background:var(--table-head-bg)!important;color:var(--table-head-text)!important;border-color:var(--table-border)!important;}
.table-dark td{border-color:var(--table-border)!important;}
.table-warning{--bs-table-bg:var(--table-head-bg)!important;--bs-table-color:var(--table-head-text)!important;}
thead.table-warning th{background:var(--table-head-bg)!important;color:var(--table-head-text)!important;}

/* ── Loader ── */
#page-loader{position:fixed;inset:0;background:var(--loader-bg);display:flex;align-items:center;
  justify-content:center;z-index:9999;transition:opacity .5s;}
#page-loader.hide{opacity:0;pointer-events:none;}
.spinner-glow{width:60px;height:60px;border:4px solid var(--card-border);border-top-color:var(--accent);
  border-radius:50%;animation:spin .8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Form control ── */
.form-control,.form-select{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--body-text)!important;}
.form-control:focus,.form-select:focus{background:#fff!important;border-color:var(--accent)!important;
  box-shadow:0 0 0 .2rem rgba(45,212,168,.25)!important;color:var(--body-text)!important;}
.input-group-text{background:#ecfdf5!important;border-color:var(--input-border)!important;color:var(--accent-dark)!important;}

/* ── Wallet tabs ── */
.nav-pills .nav-link{color:var(--muted);}
.nav-pills .nav-link.active{background:var(--accent)!important;color:#fff!important;}

/* ── Admin sidebar ── */
.admin-sidebar{min-height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--card-border);width:220px;flex-shrink:0;}
.admin-sidebar .nav-link{color:var(--muted);border-radius:8px;}
.admin-sidebar .nav-link:hover,.admin-sidebar .nav-link.active{background:#d1fae5;color:var(--accent-dark);}

/* ── Badge pulse ── */
.badge-pulse{animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}

/* ── Scroll ── */
::-webkit-scrollbar{width:6px;}::-webkit-scrollbar-track{background:var(--scroll-track);}
::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:3px;}

/* ── Override Bootstrap dark classes for light theme ── */
.bg-dark{background:var(--body-bg)!important;}
.bg-black{background:#ecfdf5!important;}
.text-light{color:var(--body-text)!important;}
.text-warning{color:var(--accent-dark)!important;}
.text-muted{color:var(--muted)!important;}
.text-info{color:#0d9488!important;}
.navbar-dark{--bs-navbar-color:var(--body-text);--bs-navbar-hover-color:var(--accent-dark);}
.navbar-dark .navbar-brand{color:var(--accent-dark)!important;}
.navbar-dark .nav-link{color:var(--body-text)!important;}
.navbar-dark .nav-link:hover{color:var(--accent-dark)!important;}
.border-secondary{border-color:var(--card-border)!important;}
.border-warning{border-color:var(--accent)!important;}

/* ── Bootstrap button overrides ── */
.btn-warning{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;}
.btn-warning:hover{background:var(--accent-dark)!important;border-color:var(--accent-dark)!important;color:#fff!important;}
.btn-outline-warning{color:var(--accent-dark)!important;border-color:var(--accent)!important;}
.btn-outline-warning:hover{background:var(--accent)!important;color:#fff!important;}
.btn-outline-secondary{color:var(--muted)!important;border-color:#cbd5e1!important;}
.btn-outline-secondary:hover{background:#e2e8f0!important;color:var(--body-text)!important;border-color:#94a3b8!important;}

/* ── Badge overrides ── */
.badge.bg-warning{background:var(--accent)!important;color:#fff!important;}
.badge.bg-info{background:#0d9488!important;color:#fff!important;}
.badge.bg-secondary{background:#94a3b8!important;color:#fff!important;}

/* ── Dropdown dark override ── */
.dropdown-menu-dark{background:var(--card-bg)!important;border:1px solid var(--card-border)!important;}
.dropdown-menu-dark .dropdown-item{color:var(--body-text)!important;}
.dropdown-menu-dark .dropdown-item:hover{background:#ecfdf5!important;color:var(--accent-dark)!important;}
.dropdown-menu-dark .dropdown-divider{border-color:var(--card-border)!important;}
.dropdown-item.text-warning{color:var(--accent-dark)!important;}
.dropdown-item.text-danger{color:#ef4444!important;}

/* ── Alert overrides ── */
.alert-warning{background:#fef3c7!important;border-color:#fde68a!important;color:#92400e!important;}
.alert-info{background:#d1fae5!important;border-color:#a7f3d0!important;color:#065f46!important;}

/* ── Pagination ── */
.page-link.bg-dark{background:var(--card-bg)!important;color:var(--body-text)!important;border-color:var(--card-border)!important;}
.page-item.active .page-link{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;}

/* ── Toast ── */
.toast{border-radius:8px;}

/* ── Accordion override ── */
.accordion-button.bg-transparent{color:var(--body-text)!important;}
.accordion-button::after{filter:none;}

/* ── Misc ── */
.text-dark{color:var(--table-head-text)!important;}
code.text-warning{color:var(--accent-dark)!important;}
.navbar-toggler{border-color:var(--accent)!important;}
.navbar-toggler-icon{filter:invert(0) sepia(1) saturate(5) hue-rotate(130deg);}
.form-text{color:var(--muted)!important;}
a.text-warning{color:var(--accent-dark)!important;}
a.text-warning:hover{color:var(--accent)!important;}
