/* ============================================================
   XOSO LIBO — PREMIUM APPLE DESIGN SYSTEM
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --red:#c80505; --red-d:#8b0000; --red-l:#fff5f5; --red-b:#fca5a5;
  --vl:#1a56db; --vl-d:#1e429f; --vl-g:#ffd700;
  --live:#ef4444; --done:#16a34a; --pending:#d97706;
  --bg:#ebebeb; --card:#fff; --bdr:#dedede;
  --t1:#111; --t2:#444; --t3:#888;
  --ui:'Be Vietnam Pro','Segoe UI',sans-serif;
  --mono:'JetBrains Mono','Courier New',monospace;
  --gap:12px; --r:5px;
  --shadow:0 1px 3px rgba(0,0,0,.06);
}

body{font-family:var(--ui);background:var(--bg);font-size:13px;color:var(--t1);
  line-height:1.5;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{max-width:100%}

/* ── HEADER ── */
.hdr{background:var(--red);position:sticky;top:0;z-index:200;
  box-shadow:0 2px 8px rgba(0,0,0,.2)}
.hdr-top{max-width:1160px;margin:0 auto;padding:7px 12px;
  display:flex;align-items:center;justify-content:space-between}
.logo{color:#fff;font-size:19px;font-weight:800;letter-spacing:-.5px}
.logo-sub{font-size:11px;font-weight:400;opacity:.6;margin-left:5px}
.hdr-r{display:flex;align-items:center;gap:9px}
.hdr-date{color:rgba(255,255,255,.75);font-size:11px;font-family:var(--mono)}
.btn-dark{background:rgba(0,0,0,.18);border:none;color:#fff;border-radius:4px;
  padding:5px 10px;cursor:pointer;font-size:11px;font-family:var(--ui);
  display:flex;align-items:center;gap:4px}

/* Hamburger menu styles */
.btn-pushbar-3 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  margin-right: 10px;
  padding: 5px;
  border-radius: 4px;
  transition: background 0.2s;
}
.btn-pushbar-3:hover {
  background: rgba(0, 0, 0, 0.15);
}
.icon-menu {
  width: 24px;
  height: 24px;
  filter: invert(1); /* make logo icon white */
}

/* ── NAV ── */
.nav{background:var(--red-d)}
.nav-w{max-width:1160px;margin:0 auto;display:flex;overflow-x:auto;
  scrollbar-width:none}
.nav-w::-webkit-scrollbar{display:none}
.nav a{color:rgba(255,255,255,.82);font-size:12px;font-weight:700;
  padding:0 11px;height:38px;line-height:38px;display:block;
  white-space:nowrap;text-transform:uppercase;letter-spacing:.2px;transition:background .12s}
.nav a:hover,.nav a.act{background:rgba(0,0,0,.2);color:#fff}
.nav-vl{background:rgba(255,215,0,.12);color:#ffd700!important;
  border-left:1px solid rgba(255,215,0,.2)}

/* ── TICKER ── */
.ticker{background:#111;border-bottom:2px solid var(--red)}
.ticker-w{max-width:1160px;margin:0 auto;padding:5px 12px;
  display:flex;align-items:center;gap:8px}
.ldot{width:8px;height:8px;background:var(--live);border-radius:50%;
  flex-shrink:0;animation:pulse 1.2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.2}}
.ltxt{color:#aaa;font-size:11px;flex:1;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.ltxt b{color:#fbbf24}
.lclk{font-family:var(--mono);color:#fbbf24;font-size:13px;
  font-weight:700;letter-spacing:1px;flex-shrink:0}

/* ── NOTICE BAR (buổi sáng) ── */
.notice{background:#fffde7;border-bottom:2px solid #f9a825}
.notice-w{max-width:1160px;margin:0 auto;padding:6px 12px;
  display:flex;align-items:center;justify-content:space-between;
  font-size:12px;color:#6d4c41;flex-wrap:wrap;gap:6px}
.notice-cdt{font-family:var(--mono);font-weight:700;color:var(--red);font-size:13px}

/* ── BODY ── */
.body{max-width:1160px;margin:0 auto;padding:10px 12px;
  display:flex;gap:var(--gap);align-items:flex-start}
.main{flex:1;min-width:0}
.side{width:282px;flex-shrink:0}

/* ── TABS ── */
.tabs{display:flex;gap:2px}
.tab{padding:7px 16px;font-size:12px;font-weight:700;cursor:pointer;
  border-radius:4px 4px 0 0;background:#d3d3d3;color:var(--t2);
  text-transform:uppercase;letter-spacing:.2px;
  border:1px solid #c5c5c5;border-bottom:none;transition:all .12s}
.tab.act{background:var(--red);color:#fff;border-color:var(--red)}
.tab:not(.act):hover{background:#c8c8c8}

/* ── AD SLOTS ── */
.ad{background:#f6f6f6;border:1px dashed #ccc;border-radius:4px;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:2px;color:#bbb;font-size:9px;
  font-weight:700;letter-spacing:1px;text-transform:uppercase}
.ad-h{min-height:68px;margin:10px 0}
.ad-sb{min-height:250px;margin:0 0 10px}

/* ── DAY NAV ── */
.day-nav{background:var(--card);border:1px solid var(--bdr);
  border-radius:var(--r);padding:7px 10px;margin-bottom:10px;
  display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.day-lbl{font-size:11px;color:var(--t3);font-weight:600}
.day-btn{font-size:11px;font-weight:600;color:var(--t2);
  background:#f2f2f2;border:1px solid #d8d8d8;
  border-radius:12px;padding:4px 12px;cursor:pointer;transition:all .12s}
.day-btn.act{background:var(--red);color:#fff;border-color:var(--red)}
.day-btn:hover:not(.act){border-color:var(--red);color:var(--red)}
.day-picker{font-size:11px;font-weight:600;color:var(--vl);
  background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;
  padding:4px 12px;cursor:pointer;margin-left:auto}

/* ── RESULT CARD ── */
.rc{background:var(--card);border:1px solid var(--bdr);
  border-radius:0 var(--r) var(--r) var(--r);
  margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow)}
.rc-hdr{background:var(--red);padding:8px 12px;
  display:flex;align-items:center;justify-content:space-between;
  gap:8px;flex-wrap:wrap}
.rc-ttl{color:#fff;font-size:13px;font-weight:800;
  display:flex;align-items:center;gap:7px}
.rc-acts{display:flex;gap:5px}
.btn-act{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);
  color:#fff;font-size:10px;font-weight:700;padding:4px 10px;
  border-radius:4px;cursor:pointer;display:flex;align-items:center;
  gap:3px;font-family:var(--ui);transition:background .12s}
.btn-act:hover{background:rgba(255,255,255,.28)}

/* ── BADGE STATES ── */
.badge-live{background:rgba(255,255,255,.2);color:#fff;font-size:9px;
  padding:2px 8px;border-radius:10px;font-weight:800;letter-spacing:.5px;
  animation:pulse 1.2s infinite}
.badge-done{background:rgba(22,163,74,.25);color:#a7f3d0;font-size:9px;
  padding:2px 8px;border-radius:10px;font-weight:600}
.badge-soon{background:rgba(245,158,11,.25);color:#fbbf24;font-size:9px;
  padding:2px 8px;border-radius:10px;font-weight:700;animation:pulse 2s infinite}

/* ── BẢNG KẾT QUẢ ── */
.kq-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.kq{width:100%;border-collapse:collapse;table-layout:fixed;min-width:320px}
.kq thead th{background:#fef2f2;color:var(--red);font-size:12px;
  font-weight:800;padding:8px 5px;text-align:center;border:1px solid var(--red-b)}
.kq thead th a{color:var(--red)}
.kq thead th a:hover{text-decoration:underline}
.gn{background:#f7f7f7;color:var(--t3);font-size:10px;font-weight:700;
  text-align:center;border:1px solid #e8e8e8;padding:5px 3px;
  width:44px;vertical-align:middle;white-space:nowrap;line-height:1.3}
.kq tbody td{border:1px solid #e8e8e8;padding:5px 3px;
  text-align:center;vertical-align:middle}
.kq tbody tr:nth-child(even) td:not(.gn){background:#fafafa}

/* Hàng Đặc Biệt */
.row-db .gn{background:#fef2f2!important;color:var(--red)!important;
  font-weight:800!important;font-size:11px!important;
  border-top:2px solid var(--red-b)!important}
.row-db td{border-top:2px solid var(--red-b)!important;background:#fff8f8!important}

/* Số kết quả */
.ndb {font-family:var(--mono);font-size:28px;font-weight:900;color:var(--red);
  letter-spacing:2px;display:block;padding:5px 0;line-height:1.1}
.n1  {font-family:var(--mono);font-size:20px;font-weight:800;color:#000;
  letter-spacing:1px;display:block;padding:2px 0}
.n2  {font-family:var(--mono);font-size:16px;font-weight:700;color:#111;
  display:inline-block;margin:0 1px}
.ns  {font-family:var(--mono);font-size:14px;font-weight:700;color:#111;
  display:inline-block;margin:0 1px}
.nx  {font-family:var(--mono);font-size:13px;font-weight:600;color:#222;
  display:inline-block;margin:0 1px}
.sep {color:#d0d0d0;font-size:12px;margin:0 2px;vertical-align:middle}

/* Số đang chờ */
.np-db{font-family:var(--mono);font-size:28px;font-weight:900;color:var(--pending);
  letter-spacing:2px;display:block;padding:5px 0;line-height:1.1;
  animation:pulse 1s ease-in-out infinite}
.np-1 {font-family:var(--mono);font-size:20px;font-weight:800;color:var(--pending);
  display:block;padding:2px 0;animation:pulse 1s infinite}
.np-2 {font-family:var(--mono);font-size:16px;font-weight:700;color:var(--pending);
  display:inline-block;margin:0 1px;animation:pulse 1s infinite}
.np-s {font-family:var(--mono);font-size:14px;font-weight:700;color:var(--pending);
  display:inline-block;margin:0 1px;animation:pulse 1s infinite}
.np-x {font-family:var(--mono);font-size:13px;font-weight:600;color:var(--pending);
  display:inline-block;margin:0 1px;animation:pulse 1s infinite}

/* Flash khi số mới xuất hiện */
@keyframes cell-flash{0%{background:#fef08a}100%{background:transparent}}
.cell-new{animation:cell-flash 1s ease-out}

/* Giải ĐB xuất hiện */
@keyframes db-appear{0%{transform:scale(1.1);color:var(--pending)}100%{transform:scale(1);color:var(--red)}}
.ndb-new{animation:db-appear 1.5s ease-out}

/* ── LOTO ── */
.loto{background:#f7f7f7;border-top:1px solid #eaeaea;padding:7px 10px}
.loto-ttl{font-size:9px;font-weight:700;color:var(--t3);
  text-transform:uppercase;letter-spacing:.8px;margin-bottom:5px}
.loto-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:2px}
.lc{font-family:var(--mono);font-size:11px;font-weight:700;
  text-align:center;padding:4px 2px;border:1px solid #e5e5e5;
  border-radius:2px;background:#fff;color:#888;line-height:1}
.lc.hit{background:var(--red-l);color:var(--red);border-color:var(--red-b);font-weight:900}
.lc.empty{color:#ddd;font-size:9px}

/* Support original 3-column Loto boards */
.table-xsmn {
  width: 100%;
  border-collapse: collapse;
}
.table-xsmn td, .table-xsmn th {
  border: 1px solid #e8e8e8;
  padding: 5px 3px;
  text-align: center;
  vertical-align: middle;
}
.loto-dau-duoi {
  margin-top: 8px;
}
.loto-dau-duoi table {
  width: 100%;
  table-layout: fixed;
}
.loto-dau-duoi table td {
  border: 1px solid #e8e8e8;
  padding: 4px;
  text-align: center;
  font-family: var(--mono);
  font-size: 13px;
}
.loto-dau-duoi table td.header-loto {
  font-weight: bold;
  background: #f7f7f7;
  color: var(--t2);
  width: 30px;
}

/* ── FOOTER BẢNG ── */
.rc-ft{background:#f7f7f7;border-top:1px solid #eaeaea;padding:6px 12px;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:5px}
.rc-ft-info{font-size:11px;color:var(--t3);display:flex;align-items:center;gap:4px}
.rc-ft-btns{display:flex;gap:5px}
.btn-sm{background:#fff;border:1px solid #d5d5d5;color:var(--t2);
  font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;
  cursor:pointer;display:flex;align-items:center;gap:3px;
  font-family:var(--ui);transition:all .12s}
.btn-sm:hover{border-color:var(--red);color:var(--red)}
.btn-sm-red{background:var(--red);border-color:var(--red);color:#fff}
.btn-sm-red:hover{background:var(--red-d);color:#fff}

/* ── PANEL BẪY GIỮ CHÂN ── */
.after-done{background:var(--card);border:1px solid var(--bdr);
  border-top:2px solid var(--red);padding:9px 12px;
  margin-bottom:12px;display:none;flex-wrap:wrap;
  align-items:center;gap:6px}
.after-done.show{display:flex}
.after-done-title{font-size:11px;color:var(--t3);font-weight:600;flex-shrink:0}
.after-done a{font-size:11px;font-weight:700;color:var(--red);
  background:var(--red-l);border:1px solid var(--red-b);
  border-radius:12px;padding:3px 10px;white-space:nowrap;transition:all .12s}
.after-done a:hover{background:var(--red);color:#fff}

/* ── PANEL BUỔI TỐI ── */
.evening-panel{background:var(--card);border:1px solid var(--bdr);
  border-top:2px solid var(--red);border-radius:0 0 var(--r) var(--r);
  padding:10px 12px;margin-bottom:12px;display:none}
.evening-panel.show{display:block}
.ep-title{font-size:12px;font-weight:700;color:var(--t2);margin-bottom:8px;
  display:flex;align-items:center;gap:6px}
.ep-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.ep-card{background:#f9f9f9;border:1px solid var(--bdr);border-radius:4px;
  padding:8px 6px;text-align:center;text-decoration:none;
  transition:all .15s;display:block}
.ep-card:hover{border-color:var(--red);background:var(--red-l);transform:translateY(-1px)}
.ep-icon{font-size:18px;display:block;margin-bottom:3px}
.ep-name{font-size:11px;font-weight:700;color:var(--t1);display:block}
.ep-sub{font-size:10px;color:var(--t3);display:block;margin-top:1px}

/* ── VIETLOTT ── */
.vl-sec{background:var(--card);border:1px solid var(--bdr);
  border-radius:var(--r);margin-bottom:12px;overflow:hidden}
.vl-hdr{background:linear-gradient(135deg,#1a56db,#1e429f);padding:8px 12px;
  display:flex;align-items:center;justify-content:space-between}
.vl-ttl{color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;gap:7px}
.vl-badge{background:rgba(255,215,0,.25);color:#ffd700;font-size:9px;
  padding:2px 7px;border-radius:10px;font-weight:800;letter-spacing:.5px}
.vl-body{padding:10px 12px}
.vl-games{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.vl-game{border:1px solid #d4e0ff;border-radius:4px;padding:9px 7px;
  text-align:center;background:#f5f8ff;transition:all .15s;cursor:pointer}
.vl-game:hover{border-color:var(--vl);transform:translateY(-1px)}
.vl-name{font-size:11px;font-weight:800;color:var(--vl);display:block;margin-bottom:2px}
.vl-jp{font-size:10px;color:var(--t3);display:block;margin-bottom:5px}
.vl-balls{display:flex;justify-content:center;gap:3px;flex-wrap:wrap;margin-bottom:5px}
.ball{width:22px;height:22px;border-radius:50%;display:inline-flex;
  align-items:center;justify-content:center;font-family:var(--mono);
  font-size:9px;font-weight:800;color:#fff;flex-shrink:0}
.bm{background:var(--red)}
.bp{background:#f59e0b}
.bb{background:var(--vl)}
.bsp{background:#7c3aed}
.vl-next{font-size:10px;color:var(--t3)}

/* ── TOOL GRID ── */
.tool-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:12px}
.tool-card{background:var(--card);border:1px solid var(--bdr);border-radius:5px;
  padding:10px 6px;text-align:center;text-decoration:none;
  transition:all .15s;display:block}
.tool-card:hover{border-color:var(--red);transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(200,5,5,.1)}
.tc-icon{font-size:20px;display:block;margin-bottom:4px}
.tc-name{font-size:11px;font-weight:700;color:var(--t1);display:block}
.tc-sub{font-size:10px;color:var(--t3);display:block;margin-top:1px}

/* ── SIDEBAR WIDGETS ── */
.sw{background:var(--card);border:1px solid var(--bdr);
  border-radius:var(--r);margin-bottom:10px;overflow:hidden}
.sw-h{background:var(--red);color:#fff;font-size:11px;font-weight:700;
  padding:7px 10px;text-transform:uppercase;letter-spacing:.4px;
  display:flex;align-items:center;gap:5px}
.sw-h-vl{background:linear-gradient(135deg,var(--vl),var(--vl-d))}
.sw-b{padding:9px 10px}
.dove-in{width:100%;border:2px solid var(--bdr);border-radius:4px;
  padding:9px 8px;font-family:var(--mono);font-size:20px;font-weight:800;
  text-align:center;letter-spacing:3px;margin-bottom:5px;color:var(--t1);
  outline:none;transition:border .15s}
.dove-in:focus{border-color:var(--red)}
.dove-hint{font-size:10px;color:var(--t3);text-align:center;margin-bottom:7px;line-height:1.5}
.dove-btn{width:100%;background:var(--red);color:#fff;border:none;
  padding:9px;font-size:13px;font-weight:700;cursor:pointer;
  border-radius:4px;font-family:var(--ui);transition:background .15s}
.dove-btn:hover{background:var(--red-d)}

.sch-days{display:flex;gap:3px;margin-bottom:6px}
.sd{flex:1;text-align:center;background:#f3f3f3;border:1px solid #e0e0e0;
  border-radius:3px;padding:4px 1px;cursor:pointer;transition:all .12s}
.sd.t{background:var(--red);border-color:var(--red)}
.sdn{font-size:9px;color:var(--t3);display:block}
.sd.t .sdn{color:rgba(255,255,255,.7)}
.sdd{font-size:12px;font-weight:700;color:var(--t1);display:block}
.sd.t .sdd{color:#fff}
.sch-pills{display:flex;flex-wrap:wrap;gap:3px}
.pill{background:var(--red-l);color:var(--red);border:1px solid var(--red-b);
  font-size:10px;padding:2px 7px;border-radius:10px;font-weight:700}

.ll a{display:flex;align-items:center;justify-content:space-between;
  padding:5px 0;font-size:12px;color:var(--t1);
  border-bottom:1px solid #f3f3f3;transition:color .12s}
.ll a:last-child{border:none}
.ll a:hover{color:var(--red)}
.ll a::before{content:"›";color:var(--red);margin-right:5px;font-weight:700}
.lp{background:var(--live);color:#fff;font-size:8px;
  padding:1px 5px;border-radius:3px;font-weight:700;animation:pulse 1.5s infinite}

/* Keno sidebar */
.keno-row{display:flex;align-items:center;justify-content:space-between;
  padding:4px 0;border-bottom:1px solid #f3f3f3;font-size:11px}
.keno-row:last-child{border:none}
.keno-lbl{color:var(--t2);font-weight:600}
.keno-val{font-family:var(--mono);font-weight:700;color:var(--vl);font-size:12px}
.keno-balls{display:flex;gap:3px;flex-wrap:wrap;justify-content:flex-end}
.kb{width:20px;height:20px;border-radius:50%;background:var(--vl);color:#fff;
  font-family:var(--mono);font-size:9px;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center}
.sp{font-size:10px;padding:1px 6px;border-radius:3px;font-weight:700}
.sp-t{background:#fef2f2;color:var(--red)}
.sp-x{background:#eff6ff;color:var(--vl)}
.sp-c{background:#f0fdf4;color:#16a34a}
.sp-l{background:#faf5ff;color:#7c3aed}

/* ── TOAST ── */
.toast{position:fixed;bottom:80px;right:16px;background:var(--red);
  color:#fff;padding:10px 16px;border-radius:6px;font-size:13px;
  font-weight:600;cursor:pointer;z-index:9999;
  transform:translateX(120%);transition:transform .3s ease;
  box-shadow:0 4px 12px rgba(0,0,0,.2);max-width:280px;font-family:var(--ui)}
.toast.show{transform:translateX(0)}

/* ── FAB Mobile ── */
.fab{display:none;position:fixed;bottom:20px;right:16px;
  width:52px;height:52px;background:var(--red);color:#fff;
  border-radius:50%;font-size:22px;align-items:center;
  justify-content:center;z-index:999;
  box-shadow:0 4px 12px rgba(200,5,5,.35);cursor:pointer;border:none}

/* ── FOOTER ── */
.ftr{background:#1c1c1c;border-top:3px solid var(--red)}
.ftr-in{max-width:1160px;margin:0 auto;padding:20px 12px}
.ftr-g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fc h4{color:var(--red);font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;
  padding-bottom:5px;border-bottom:1px solid #2a2a2a}
.fc h4.vlh{color:var(--vl-g);border-bottom-color:rgba(255,215,0,.2)}
.fc a{display:block;color:#666;font-size:11px;padding:2px 0;
  line-height:1.7;transition:color .12s}
.fc a:hover{color:#ccc}
.ftr-copy{background:#111;text-align:center;padding:9px 12px;
  font-size:11px;color:#3a3a3a}

/* ── RESPONSIVE ── */
@media(max-width:960px){
  .body{flex-direction:column;padding:8px;gap:0}
  .side{width:100%;order:3}
  .main{order:1}
  .fab{display:flex}
  .vl-games{grid-template-columns:repeat(2,1fr)}
  .tool-grid{grid-template-columns:repeat(3,1fr)}
  .ep-grid{grid-template-columns:repeat(3,1fr)}
  .ftr-g{grid-template-columns:1fr;gap:16px}
}
@media(max-width:480px){
  .ndb,.np-db{font-size:22px;letter-spacing:1px}
  .n1,.np-1{font-size:17px}
  .n2,.np-2{font-size:14px}
  .ns,.np-s{font-size:13px}
  .nx,.np-x{font-size:12px}
  .tool-grid{grid-template-columns:repeat(3,1fr)}
  .ep-grid{grid-template-columns:repeat(2,1fr)}
  .vl-games{grid-template-columns:repeat(2,1fr)}
}

/* ── DARK MODE ── */
body.dark-mode{--bg:#0f0f0f;--card:#1a1a1a;--bdr:#2a2a2a;
  --t1:#f0f0f0;--t2:#aaa;--t3:#555}
body.dark-mode .kq thead th{background:#2d1515;border-color:#5a1a1a}
body.dark-mode .gn{background:#222;color:#555;border-color:#2a2a2a}
body.dark-mode .kq tbody td{background:#1f1f1f;border-color:#2a2a2a}
body.dark-mode .kq tbody tr:nth-child(even) td:not(.gn){background:#242424}
body.dark-mode .row-db td{background:#2d1515!important;border-color:#5a1a1a!important}
body.dark-mode .ndb{color:#f87171}
body.dark-mode .n1{color:#f0f0f0}
body.dark-mode .n2,.n3,.ns,.nx,body.dark-mode .ns,body.dark-mode .nx{color:#d0d0d0}
body.dark-mode .loto{background:#181818;border-top-color:#2a2a2a}
body.dark-mode .lc{background:#222;color:#888;border-color:#333}
body.dark-mode .lc.hit{background:#2d1515;color:#f87171;border-color:#5a1a1a}
body.dark-mode .rc-ft{background:#181818;border-top-color:#2a2a2a}
body.dark-mode .notice{background:#1c1200;border-bottom-color:#78350f}
body.dark-mode .notice-w{color:#fbbf24}
body.dark-mode .vl-game{background:#1a2240;border-color:#2a3a6a}
body.dark-mode .day-btn{background:#2a2a2a;border-color:#3a3a3a;color:#aaa}

/* ============================================================
   PUSHBAR.JS STYLING (DARK PREMIUM THEME OVERRIDES)
   ============================================================ */
.pushbar {
  position: fixed;
  background: #1a1a1a !important; /* Background pushbar: #1a1a1a */
  color: #f0f0f0 !important;
  font-family: var(--ui) !important; /* Font: Be Vietnam Pro */
  transition: transform 0.3s ease;
  z-index: 1000;
  overflow-y: auto;
  box-shadow: 4px 0 16px rgba(0, 0, 0, 0.4);
}
.pushbar.from_left {
  top: 0;
  left: 0;
  width: 280px;
  height: 100%;
  transform: translate3d(-100%, 0, 0);
}
.pushbar.opened {
  transform: translate3d(0, 0, 0);
}
.pushbar_overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 999;
}
body.pushbar-opened .pushbar_overlay {
  display: block;
}

/* User sidebar header section in pushbar */
.user-sidebar {
  background: #c80505 !important; /* Header pushbar: #c80505 */
  padding: 16px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid rgba(0,0,0,0.1);
}
.logosidebar {
  max-height: 40px;
}
.btn-pushbar-close {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.icon-back {
  width: 24px;
  height: 24px;
  filter: invert(1);
}

/* Menu items */
.ac-menu {
  padding: 10px 0;
}
.ac_item {
  width: 100%;
}
.ac_title_2 {
  display: flex !important;
  align-items: center;
  padding: 12px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #f0f0f0 !important; /* Link: #f0f0f0 */
  transition: all 0.2s;
  border-bottom: 1px solid #2a2a2a;
  cursor: pointer;
  width: 100%;
}
.ac_title_2:hover {
  color: #fbbf24 !important; /* hover: #fbbf24 */
  background: rgba(255, 255, 255, 0.05);
}
.ic-m {
  width: 18px;
  height: 18px;
  margin-right: 12px;
  filter: invert(0.9); /* align icon coloring */
}
.ac_icon {
  display: inline-block;
  float: right;
  margin-top: -30px;
  margin-right: 16px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #aaa;
  border-bottom: 2px solid #aaa;
  transform: rotate(45deg);
  transition: transform 0.2s;
  pointer-events: none;
}
.ac_item.ac_open .ac_icon {
  transform: rotate(-135deg);
}
.ac_content {
  display: none;
  background: #111;
  border-bottom: 1px solid #2a2a2a;
}
.ac_ul2 {
  display: flex;
  flex-direction: column;
}
.ac_ul2 a {
  padding: 10px 16px 10px 46px !important;
  font-size: 12.5px !important;
  color: #ccc !important;
  display: block;
  transition: all 0.2s;
  border-bottom: 1px dashed #222;
}
.ac_ul2 a:last-child {
  border-bottom: none;
}
.ac_ul2 a:hover {
  color: #fbbf24 !important; /* hover: #fbbf24 */
  background: rgba(255, 255, 255, 0.03);
}

/* ── PRINT ── */
@media print{
  .hdr,.nav,.ticker,.notice,.side,.tabs,.day-nav,
  .ad,.after-done,.evening-panel,.vl-sec,.tool-grid,
  .ftr,.btn-act,.rc-acts,.rc-ft-btns,.loto,
  .fab,.toast{display:none!important}
  .body{padding:0}
  .main{width:100%}
  .rc{border:1px solid #999;box-shadow:none;break-inside:avoid}
  .rc-hdr{background:var(--red)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ndb{color:var(--red)!important}
}
