/* ===== USDT Icon ===== */
.usdt-ico{display:inline-block;width:1em;height:1em;vertical-align:middle;margin-right:2px;position:relative;top:-.08em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='16' r='16' fill='%2326A17B'/%3E%3Cpath fill='%23fff' d='M17.9 17.4c-.1 0-.7.04-1.94.04-1 0-1.72-.03-1.97-.04-3.89-.17-6.79-.85-6.79-1.66 0-.81 2.9-1.49 6.79-1.66v2.64c.25.02.98.06 1.99.06 1.21 0 1.81-.05 1.92-.06v-2.64c3.88.17 6.78.85 6.78 1.66 0 .81-2.9 1.49-6.78 1.66M17.9 13.8v-2.37h5.41V9H8.6v2.43h5.41v2.37c-4.4.2-7.71 1.07-7.71 2.12 0 1.05 3.31 1.92 7.71 2.12v7.59h3.91v-7.59c4.39-.2 7.69-1.07 7.69-2.12 0-1.05-3.3-1.92-7.69-2.12'/%3E%3C/svg%3E") no-repeat center/contain;}

/* ===== Reset & Base ===== */
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{height:100%;font-family:'Noto Sans SC',sans-serif;font-size:14px;background:#06091c;color:rgba(255,255,255,.85);}
a{text-decoration:none;color:inherit;}
#app{padding-bottom:60px;min-height:100vh;background:radial-gradient(ellipse at 70% -10%,rgba(110,50,190,.14) 0%,transparent 55%),radial-gradient(ellipse at 20% 80%,rgba(185,130,20,.09) 0%,transparent 50%),#06091c;}

/* ===== Top Bar ===== */
.top-bar{display:flex;align-items:center;justify-content:space-between;background:rgba(6,9,28,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(201,162,39,.15);color:white;padding:12px 16px;position:sticky;top:0;z-index:50;}
.top-link{font-size:13px;color:rgba(255,255,255,.7);padding:4px 10px;border:1px solid rgba(255,255,255,.2);border-radius:20px;}
.logo-text{font-size:16px;font-weight:700;letter-spacing:.05em;color:#f0d060;}

/* ===== Notice ===== */
.notice-bar{background:rgba(201,162,39,.08);border-bottom:1px solid rgba(201,162,39,.18);padding:8px 14px;display:flex;align-items:center;gap:8px;overflow:hidden;}
.notice-icon{flex-shrink:0;font-size:14px;}
.notice-scroll{flex:1;overflow:hidden;white-space:nowrap;font-size:13px;color:rgba(240,192,64,.85);}

/* ===== Quick Actions ===== */
.quick-actions{display:flex;background:rgba(255,255,255,.03);padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07);}
.qa-item{flex:1;text-align:center;cursor:pointer;}
.qa-icon{font-size:24px;margin-bottom:4px;}
.qa-label{font-size:12px;color:rgba(255,255,255,.5);}
.banner-register{background:linear-gradient(135deg,rgba(201,162,39,.18),rgba(120,80,10,.15));border:1px solid rgba(201,162,39,.25);border-radius:14px;color:white;padding:16px;display:flex;align-items:center;justify-content:space-between;margin:12px;}
.btn-register-now{background:linear-gradient(135deg,#c9a227,#a07810);color:#06091c;border:none;padding:8px 18px;border-radius:20px;font-weight:700;cursor:pointer;}

/* ===== Section Header ===== */
.section-header{padding:12px 16px 6px;font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.85);}
.section-dot{width:4px;height:16px;background:#c9a227;border-radius:2px;display:inline-block;}

/* ===== Lottery Grid ===== */
.lottery-grid{padding:0 12px 12px;}
.lottery-card{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px;margin-bottom:10px;}
.lc-icon{font-size:32px;flex-shrink:0;}
.lc-info{flex:1;min-width:0;}
.lc-name{font-weight:700;font-size:15px;color:rgba(255,255,255,.85);}
.lc-sub{font-size:11px;color:rgba(255,255,255,.4);margin-top:2px;}
.lc-result{display:flex;align-items:center;gap:3px;margin-top:6px;flex-wrap:wrap;}
.lc-right{text-align:right;flex-shrink:0;}
.lc-status{font-size:12px;padding:3px 8px;border-radius:10px;font-weight:600;}
.lc-status.open{background:rgba(46,204,113,.12);color:#2ecc71;border:1px solid rgba(46,204,113,.25);}
.lc-status.closed{background:rgba(231,76,60,.1);color:#e74c3c;border:1px solid rgba(231,76,60,.2);}
.lc-cd{font-size:13px;color:#f0c040;font-weight:700;margin-top:4px;}
/* ── 上一期结果行 ── */
.lc-last-row{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:4px;overflow:hidden;}
.lc-last-lbl{font-size:9px;color:rgba(255,255,255,.35);white-space:nowrap;}
.lc-last-iss{color:rgba(201,162,39,.55);font-family:monospace;}
.lc-last-balls{display:flex;align-items:center;gap:clamp(1px,0.4vw,2px);flex-wrap:nowrap;}
.lc-last-balls .mini-ball{width:clamp(15px,4.2vw,20px);height:clamp(15px,4.2vw,20px);font-size:clamp(7px,1.9vw,9.5px);}
.lc-last-balls .mini-ball.sp{box-shadow:0 0 4px rgba(255,215,0,.5);border:1px solid rgba(255,215,0,.45);}
.lc-last-zod{font-size:clamp(8px,2vw,9px);color:#f0d060;white-space:nowrap;}
.lc-last-balls .plus-s{font-size:clamp(9px,2.5vw,12px);margin:0 1px;}

/* ===== Mini Balls ===== */
.mini-ball,.draw-ball{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-family:monospace;}
.mini-ball{width:22px;height:22px;font-size:11px;}
.draw-ball{width:36px;height:36px;font-size:13px;}
.c-red{background:linear-gradient(145deg,#ff5252,#c62828);color:white;}
.c-blue{background:linear-gradient(145deg,#448aff,#1565c0);color:white;}
.c-green{background:linear-gradient(145deg,#69f0ae,#1b5e20);color:white;}
.draw-ball.sp{border:2px solid #ffd700;}
.plus-s{color:#ffd700;font-weight:700;margin:0 4px;font-size:14px;text-shadow:0 0 6px rgba(255,215,0,.6);}

/* ===== Lang Switch ===== */
.lang-switch{text-align:center;padding:16px;font-size:13px;color:rgba(255,255,255,.4);}
.lang-switch a{color:rgba(255,255,255,.4);margin:0 4px;}

/* ===== Bottom Nav ===== */
.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:rgba(6,9,28,.96);border-top:1px solid rgba(201,162,39,.12);backdrop-filter:blur(20px);display:flex;z-index:100;height:58px;}
.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9.5px;color:rgba(255,255,255,.28);gap:3px;cursor:pointer;text-decoration:none;letter-spacing:.02em;transition:color .18s;}
.nav-item.active{color:#c9a227;}
.nav-item .ni{display:flex;align-items:center;justify-content:center;width:24px;height:24px;}
.nav-item .ni svg{width:22px;height:22px;fill:rgba(255,255,255,.28);transition:fill .18s;}
.nav-item.active .ni svg{fill:#c9a227;}
/* SVG icons via inline - keep .ni class for sizing */
.ni{width:24px;height:24px;display:flex;align-items:center;justify-content:center;}
/* legacy emoji fallback - overridden by SVG inline */
.ni-home::before,.ni-draw::before,.ni-hall::before,.ni-promo::before,.ni-user::before,.ni-bet::before,.ni-history::before{content:none;}

/* ===== Bet Page ===== */
.bet-top-bar{display:flex;align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);color:white;padding:12px 16px;gap:12px;position:sticky;top:0;z-index:50;}
.bet-title{flex:1;font-size:16px;font-weight:700;text-align:center;}
.bet-balance{font-size:13px;background:rgba(255,255,255,.2);padding:4px 10px;border-radius:12px;}
.btn-back{font-size:22px;color:white;cursor:pointer;}

.issue-bar{background:rgba(11,14,32,.98);padding:8px 14px;border-bottom:1px solid rgba(255,255,255,.07);}
.last-issue{display:flex;flex-direction:column;gap:4px;margin-bottom:5px;}
.li-num{font-size:11px;color:rgba(255,255,255,.3);font-family:monospace;}
.li-balls{display:flex;align-items:center;gap:3px;flex-wrap:nowrap;}
.cur-issue{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,.55);flex-wrap:wrap;}
.badge-open{background:rgba(46,204,113,.15);color:#2ecc71;padding:2px 8px;border-radius:10px;font-weight:700;border:1px solid rgba(46,204,113,.3);}
.badge-closed{background:rgba(231,76,60,.12);color:#e74c3c;padding:2px 8px;border-radius:10px;border:1px solid rgba(231,76,60,.25);}
.cd-timer{color:#f0c040;font-weight:700;font-family:monospace;}
.zodiac-chip{background:rgba(240,192,64,.12);color:#f0c040;padding:2px 8px;border-radius:10px;font-size:11px;border:1px solid rgba(240,192,64,.2);}
.destiny-chip{background:linear-gradient(135deg,#1a1a2e,#2c3e6e);color:#ffd700;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.03em;border:1px solid rgba(255,215,0,.3);}
.history-link{color:#f0c040;margin-left:auto;}
/* ── 历史开奖横条 ── */
.hist-strip{display:flex;gap:7px;overflow-x:auto;padding:8px 12px;scrollbar-width:none;background:rgba(8,11,28,.9);border-bottom:1px solid rgba(255,255,255,.06);}
.hist-strip::-webkit-scrollbar{display:none;}
.hs-item{flex-shrink:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:7px 9px;min-width:190px;}
.hs-num{font-size:9px;color:rgba(255,255,255,.25);margin-bottom:5px;font-family:monospace;letter-spacing:.03em;}
.hs-balls{display:flex;gap:3px;margin-bottom:4px;}
.hs-ball{width:21px;height:21px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:700;}
.hs-ball.c-red{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;}
.hs-ball.c-blue{background:linear-gradient(135deg,#2980b9,#1a5276);color:#fff;}
.hs-ball.c-green{background:linear-gradient(135deg,#27ae60,#1e8449);color:#fff;}
.hs-sp-ball{box-shadow:0 0 0 1.5px #f0c040;}
.hs-zod{font-size:9px;color:rgba(240,192,64,.65);font-weight:600;}

/* ===== Bet Layout ===== */
.bet-layout{display:flex;min-height:calc(100vh - 160px);}

/* Left nav */
.bet-nav{
  width:74px;flex-shrink:0;
  background:linear-gradient(180deg,#0d0f1e 0%,#131629 100%);
  border-right:1px solid rgba(255,255,255,.07);
}
.bet-nav .nav-item{
  padding:14px 6px;text-align:center;font-size:11.5px;line-height:1.4;
  cursor:pointer;border-left:3px solid transparent;
  color:rgba(255,255,255,.38);transition:all .2s;
}
.bet-nav .nav-item small{display:block;font-size:9.5px;color:rgba(255,255,255,.22);margin-top:2px;}
.bet-nav .nav-item:hover{color:rgba(255,255,255,.65);background:rgba(255,255,255,.04);}
.bet-nav .nav-item.active{
  color:#f0c040;border-left-color:#f0c040;font-weight:700;
  background:rgba(240,192,64,.08);
}
.bet-nav .nav-item.active small{color:rgba(240,192,64,.6);}

/* Right content */
.bet-content{
  flex:1;overflow-y:auto;
  background:linear-gradient(180deg,#0f1124 0%,#161930 100%);
}
.bet-panel{display:none;padding:12px 10px 20px;}
.bet-panel.active{display:block;}

/* Section title */
.panel-group-title{
  font-size:12.5px;font-weight:700;letter-spacing:.06em;
  text-align:center;padding:6px 0 10px;
  color:#f0c040;text-transform:uppercase;
  border-bottom:1px solid rgba(240,192,64,.15);
  margin-bottom:8px;
}
.panel-group-title + .panel-group-title,
.panel-group-title:not(:first-child){margin-top:14px;}

/* ===== Bet Grids ===== */
.bet-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.bet-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}
.bet-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;}
.num-grid-direct{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.zm-hint{font-size:10.5px;color:rgba(255,255,255,.35);text-align:center;padding:0 8px 10px;line-height:1.5;}
/* Quick select bar */
.quick-sel-bar{display:flex;gap:6px;padding:0 0 8px;justify-content:flex-end;}
.quick-sel-bar button{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.55);border-radius:6px;padding:4px 12px;font-size:11px;cursor:pointer;}
.quick-sel-bar button:hover{background:rgba(201,162,39,.15);border-color:rgba(201,162,39,.3);color:#f0d060;}
/* Multi-select cart enhancements */
.cart-sel-count{display:inline-block;background:rgba(240,192,64,.2);color:#f0d060;border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700;margin-left:6px;}

/* Base bet option card */
.bet-option{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;padding:11px 4px;
  text-align:center;cursor:pointer;font-size:13px;
  color:rgba(255,255,255,.75);
  transition:all .18s;position:relative;line-height:1.4;
}
.bet-option:hover{
  background:rgba(240,192,64,.1);
  border-color:rgba(240,192,64,.35);
  color:#fff;transform:translateY(-1px);
}
.bet-option.selected{
  background:linear-gradient(135deg,rgba(240,192,64,.22),rgba(201,162,39,.12));
  border-color:#f0c040;color:#f0c040;
  box-shadow:0 0 10px rgba(240,192,64,.2);
}
.bet-option .odds{
  display:block;color:#f0c040;font-weight:700;
  font-size:12.5px;margin-top:4px;
}
.bet-option.selected .odds{color:#ffe066;}

/* 四象专用布局 */
.elem-opt{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;}
.elem-name{font-size:14px;font-weight:700;white-space:nowrap;margin-bottom:4px;}
.elem-sub{font-size:10.5px;color:rgba(255,255,255,.45);white-space:nowrap;margin-bottom:2px;}

/* Wave color variants */
.c-red.bet-option{
  background:rgba(255,82,82,.1);border-color:rgba(255,82,82,.28);color:rgba(255,180,180,.85);
}
.c-red.bet-option:hover{background:rgba(255,82,82,.2);border-color:rgba(255,82,82,.55);}
.c-red.bet-option.selected{background:linear-gradient(135deg,rgba(255,82,82,.32),rgba(198,40,40,.18));border-color:#ff5252;color:#ff8080;box-shadow:0 0 10px rgba(255,82,82,.25);}

.c-blue.bet-option{
  background:rgba(68,138,255,.1);border-color:rgba(68,138,255,.28);color:rgba(160,196,255,.85);
}
.c-blue.bet-option:hover{background:rgba(68,138,255,.2);border-color:rgba(68,138,255,.55);}
.c-blue.bet-option.selected{background:linear-gradient(135deg,rgba(68,138,255,.32),rgba(21,101,192,.18));border-color:#448aff;color:#82b4ff;box-shadow:0 0 10px rgba(68,138,255,.25);}

.c-green.bet-option{
  background:rgba(105,240,174,.08);border-color:rgba(105,240,174,.25);color:rgba(150,240,200,.85);
}
.c-green.bet-option:hover{background:rgba(105,240,174,.18);border-color:rgba(105,240,174,.5);}
.c-green.bet-option.selected{background:linear-gradient(135deg,rgba(105,240,174,.28),rgba(27,94,32,.18));border-color:#69f0ae;color:#69f0ae;box-shadow:0 0 10px rgba(105,240,174,.22);}

/* Direct number balls */
.num-opt{
  border-radius:50% !important;aspect-ratio:1;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;font-family:monospace;padding:0 !important;
}
.c-red.num-opt{background:rgba(198,40,40,.22);border-color:rgba(255,82,82,.45);color:#ff8a80;}
.c-blue.num-opt{background:rgba(21,101,192,.22);border-color:rgba(68,138,255,.45);color:#82b1ff;}
.c-green.num-opt{background:rgba(27,94,32,.22);border-color:rgba(105,240,174,.4);color:#69f0ae;}
.c-red.num-opt.selected{background:linear-gradient(145deg,#ff5252,#c62828);color:white;border-color:#ff5252;}
.c-blue.num-opt.selected{background:linear-gradient(145deg,#448aff,#1565c0);color:white;border-color:#448aff;}
.c-green.num-opt.selected{background:linear-gradient(145deg,#1b5e20,#69f0ae);color:white;border-color:#69f0ae;}

/* Zodiac legacy compat */
.zodiac-opt{padding:9px 4px;position:relative;}
.z-emoji{font-size:26px;display:block;line-height:1;color:#f0d060;font-family:serif;}
.z-name{font-size:10px;display:block;margin:3px 0 1px;font-weight:700;color:rgba(255,255,255,.5);}
.zodiac-opt:hover .z-emoji{filter:none !important;}

/* ===== Bet Cart ===== */
.bet-cart{
  position:fixed;bottom:56px;left:0;right:0;
  background:linear-gradient(180deg,#1a1d35,#131629);
  border-top:2px solid rgba(240,192,64,.4);
  padding:10px 14px;z-index:90;
  box-shadow:0 -6px 24px rgba(0,0,0,.45);
}
.cart-info{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px;color:rgba(255,255,255,.75);}
.cart-odds{color:#f0c040;font-weight:700;}
.amt-presets{display:flex;gap:6px;margin-bottom:8px;}
.amt-presets button{
  flex:1;padding:7px 4px;
  border:1px solid rgba(240,192,64,.35);
  background:rgba(240,192,64,.08);
  color:#f0c040;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;
  transition:all .15s;
}
.amt-presets button:hover{background:rgba(240,192,64,.2);border-color:#f0c040;}
.cart-input-row{margin-bottom:8px;}
.cart-input-wrap{
  display:flex;align-items:center;gap:8px;
  border:1px solid rgba(240,192,64,.3);border-radius:10px;padding:0 12px;
  background:rgba(255,255,255,.06);
}
.cart-input-wrap input{
  flex:1;border:none;outline:none;padding:10px 0;font-size:16px;
  background:transparent;color:#fff;
}
.cart-input-wrap input::placeholder{color:rgba(255,255,255,.3);}
.cart-bottom-row{display:flex;justify-content:space-between;align-items:center;}
.btn-confirm-bet{
  background:linear-gradient(135deg,#f0c040,#c9a227);
  color:#06091c;border:none;padding:12px 28px;
  border-radius:25px;font-size:15px;font-weight:800;cursor:pointer;
  box-shadow:0 4px 14px rgba(201,162,39,.4);
}

/* ===== Modal ===== */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;z-index:200;}
.modal-box{
  background:linear-gradient(160deg,#1a1d35,#131629);
  border:1px solid rgba(240,192,64,.25);
  border-radius:18px;padding:24px;width:85%;max-width:340px;
  box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.modal-title{font-size:16px;font-weight:700;margin-bottom:14px;text-align:center;color:#f0c040;}
.modal-body{font-size:14px;line-height:2;color:rgba(255,255,255,.7);margin-bottom:16px;}
.modal-body p{display:flex;justify-content:space-between;}
.modal-body p span:last-child{color:#fff;font-weight:600;}
.modal-btns{display:flex;gap:10px;}
.btn-cancel,.btn-confirm{flex:1;padding:12px;border:none;border-radius:10px;font-size:15px;cursor:pointer;font-weight:600;}
.btn-cancel{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);}
.btn-confirm{background:linear-gradient(135deg,#f0c040,#c9a227);color:#06091c;font-weight:800;}

/* ===== Auth Pages ===== */
.auth-page{min-height:100vh;background:radial-gradient(ellipse at 50% 0%,rgba(110,50,190,.18) 0%,transparent 70%),#06091c;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;}
.auth-logo{color:#f0d060;font-size:22px;font-weight:700;margin-bottom:20px;text-shadow:0 0 20px rgba(240,208,96,.3);}
.auth-box{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px);border-radius:20px;padding:28px 24px;width:100%;max-width:360px;}
.auth-box h2{text-align:center;margin-bottom:20px;color:#f0d060;}
.form-group{margin-bottom:14px;}
.form-group label{display:block;font-size:13px;color:rgba(255,255,255,.55);margin-bottom:6px;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;font-size:14px;outline:none;background:rgba(255,255,255,.07);color:rgba(255,255,255,.9);}
.form-group input::placeholder{color:rgba(255,255,255,.3);}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:rgba(201,162,39,.5);background:rgba(255,255,255,.1);}
.form-group select option{background:#0f1225;color:rgba(255,255,255,.85);}
.btn-auth{width:100%;padding:14px;background:linear-gradient(135deg,#c9a227,#a07810);color:#06091c;border:none;border-radius:25px;font-size:16px;font-weight:700;cursor:pointer;margin-top:6px;box-shadow:0 4px 14px rgba(201,162,39,.35);}
.auth-switch{text-align:center;margin-top:14px;font-size:13px;color:rgba(255,255,255,.4);}
.auth-switch a{color:#c9a227;}

/* ===== Common Pages ===== */
.page-header{display:flex;align-items:center;gap:14px;background:rgba(6,9,28,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(201,162,39,.15);color:white;padding:14px 16px;position:sticky;top:0;z-index:50;font-size:16px;font-weight:700;}
.page-content{padding:12px;}
.balance-card{background:linear-gradient(135deg,rgba(201,162,39,.22),rgba(120,80,10,.18));border:1px solid rgba(201,162,39,.3);color:white;border-radius:14px;padding:20px;margin-bottom:12px;text-align:center;}
.bc-label{font-size:13px;color:rgba(255,255,255,.6);}
.bc-amount{font-size:28px;font-weight:700;margin-top:4px;color:#f0d060;}
.card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:16px;margin-bottom:12px;}
.card-title{font-size:15px;font-weight:700;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08);color:#f0d060;}
.alert{padding:12px 14px;border-radius:10px;margin-bottom:12px;font-size:13px;}
.alert-error{background:rgba(198,40,40,.15);color:#ff8a80;border:1px solid rgba(198,40,40,.25);}
.alert-success{background:rgba(46,125,50,.15);color:#69f0ae;border:1px solid rgba(46,125,50,.25);}
.btn-primary{background:linear-gradient(135deg,#c9a227,#a07810);color:#06091c;border:none;padding:14px;border-radius:25px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(201,162,39,.3);}
.btn-full{width:100%;display:block;}
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;}
.method-item{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px;cursor:pointer;font-size:13px;color:rgba(255,255,255,.8);transition:border-color .18s;}
.method-item.selected,.method-item:has(input:checked){border-color:rgba(201,162,39,.5);background:rgba(201,162,39,.08);}
.method-item input[type=radio]{accent-color:#c9a227;}
.amt-presets-form{display:flex;gap:6px;margin-bottom:8px;}
.amt-presets-form button{flex:1;padding:8px;border:1px solid rgba(201,162,39,.35);background:rgba(201,162,39,.08);color:#f0c040;border-radius:6px;cursor:pointer;font-size:13px;transition:all .15s;}
.amt-presets-form button:hover{background:rgba(201,162,39,.2);border-color:#f0c040;}
.data-table{width:100%;border-collapse:collapse;font-size:12px;}
.data-table th,.data-table td{padding:8px 6px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left;color:rgba(255,255,255,.8);}
.data-table th{color:rgba(255,255,255,.4);font-weight:500;}
.badge-status{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;}
.badge-status.s0{background:rgba(230,81,0,.18);color:#ffab40;border:1px solid rgba(230,81,0,.25);}
.badge-status.s1{background:rgba(46,125,50,.18);color:#69f0ae;border:1px solid rgba(46,125,50,.25);}
.badge-status.s2{background:rgba(198,40,40,.15);color:#ff8a80;border:1px solid rgba(198,40,40,.25);}
.empty-tip{text-align:center;color:rgba(255,255,255,.35);padding:30px;font-size:13px;}
.text-gold{color:#c9a227;}
.text-win{color:#69f0ae;font-weight:700;}

/* ===== Profile ===== */
.profile-card{background:linear-gradient(135deg,rgba(110,50,190,.2),rgba(20,10,40,.4));border-bottom:1px solid rgba(255,255,255,.08);color:white;padding:28px 20px;text-align:center;}
.avatar-big{font-size:48px;margin-bottom:8px;}
.profile-name{font-size:18px;font-weight:700;}
.profile-vip{font-size:12px;color:rgba(255,255,255,.6);margin-top:4px;}
.profile-balance{font-size:26px;font-weight:700;margin:10px 0;color:#f0d060;}
.profile-actions{display:flex;justify-content:center;gap:12px;}
.btn-sm{padding:8px 20px;border-radius:20px;border:1px solid transparent;cursor:pointer;font-size:13px;font-weight:600;}
.btn-green{background:rgba(76,175,80,.2);color:#69f0ae;border:1px solid rgba(76,175,80,.3);}
.btn-orange{background:rgba(255,152,0,.2);color:#ffab40;border:1px solid rgba(255,152,0,.3);}
.btn-red{background:rgba(231,76,60,.2);color:#ff8a80;border:1px solid rgba(231,76,60,.3);}
.stats-row{display:flex;gap:10px;padding:12px;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.07);}
.stat-box{flex:1;text-align:center;}
.sb-val{font-size:14px;font-weight:700;word-break:break-all;color:rgba(255,255,255,.9);}
.sb-label{font-size:11px;color:rgba(255,255,255,.4);margin-top:3px;}
.menu-list{background:transparent;margin:12px 0;}
.menu-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06);font-size:14px;color:rgba(255,255,255,.8);}
.btn-logout{background:rgba(255,255,255,.06);color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.12);padding:12px 30px;border-radius:25px;cursor:pointer;font-size:14px;}

/* ===== Bet Records ===== */
.tab-bar{display:flex;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.08);}
.tab-item{flex:1;text-align:center;padding:12px;font-size:13px;color:rgba(255,255,255,.4);border-bottom:2px solid transparent;}
.tab-item.active{color:#f0c040;border-bottom-color:#c9a227;font-weight:600;}
.bet-record{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;margin-bottom:8px;}
.br-top{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px;color:rgba(255,255,255,.4);}
.br-mid{display:flex;gap:10px;font-size:13px;margin-bottom:6px;}
.br-type{font-weight:600;color:rgba(255,255,255,.85);}
.br-odds{color:#f0c040;}
.br-bottom{display:flex;gap:12px;font-size:12px;color:rgba(255,255,255,.55);flex-wrap:wrap;}
.br-time{margin-left:auto;}

/* ===== Toast ===== */
.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.75);color:white;padding:12px 24px;border-radius:25px;font-size:15px;z-index:999;}

/* ===== Pagination ===== */
.pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px;font-size:13px;color:rgba(255,255,255,.5);}
.pagination a{color:#c9a227;}

/* ===== Method Tabs ===== */
.method-tabs{display:flex;background:rgba(255,255,255,.03);border-bottom:2px solid rgba(255,255,255,.08);margin-bottom:0;}
.method-tab{flex:1;text-align:center;padding:12px 8px;font-size:13px;color:rgba(255,255,255,.4);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s;}
.method-tab.active{color:#f0c040;border-bottom-color:#c9a227;font-weight:600;}

/* ===== USDT Styles ===== */
.usdt-info-box{background:rgba(201,162,39,.08);border:1px solid rgba(201,162,39,.2);border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:14px;color:rgba(255,255,255,.8);}
.usdt-network-block{background:rgba(255,255,255,.04);border-radius:10px;padding:14px;margin-bottom:12px;border:1px solid rgba(255,255,255,.09);}
.network-badge{display:inline-block;padding:3px 12px;border-radius:12px;font-size:12px;font-weight:700;margin-bottom:10px;}
.network-badge.trc20{background:rgba(21,101,192,.25);color:#82b1ff;border:1px solid rgba(21,101,192,.4);}
.network-badge.erc20{background:rgba(106,27,154,.25);color:#ce93d8;border:1px solid rgba(106,27,154,.4);}
.addr-copy-box{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:10px 12px;cursor:pointer;gap:10px;}
.addr-text{font-size:11px;font-family:monospace;color:rgba(255,255,255,.75);word-break:break-all;flex:1;}
.copy-btn{flex-shrink:0;background:linear-gradient(135deg,#c9a227,#a07810);color:#06091c;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap;}
.qr-img{width:150px;height:150px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.12);}
.qr-img-large{width:200px;height:200px;object-fit:cover;border-radius:10px;border:2px solid rgba(255,255,255,.12);}

/* ===== Bank Info ===== */
.bank-info-block{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:14px;margin-bottom:14px;}
.bank-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13px;color:rgba(255,255,255,.85);}
.bank-row:last-child{border-bottom:none;}
.bank-row span{color:rgba(255,255,255,.4);}

.nav-item small{display:block;font-size:9px;color:#bbb;margin-top:1px;letter-spacing:.03em;}
.nav-item.active small{color:rgba(255,255,255,.8);}
/* ===== Destiny Star / Orbital Spheres labels ===== */
.destiny-sep{color:#ffd700;font-size:10px;font-weight:700;letter-spacing:.04em;text-shadow:0 0 6px rgba(255,215,0,.5);white-space:nowrap;}
.li-balls .destiny-chip{margin-left:4px;}

/* ===== Language Bar ===== */
.lang-bar{display:flex;justify-content:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.03);border-top:1px solid rgba(255,255,255,.07);}
.lang-btn{padding:4px 12px;border-radius:20px;font-size:12px;color:rgba(255,255,255,.45);text-decoration:none;border:1px solid rgba(255,255,255,.1);background:transparent;transition:all .2s;}
.lang-btn.active{background:rgba(201,162,39,.15);color:#f0d060;border-color:rgba(201,162,39,.4);font-weight:600;}

/* ═══════════════════════════════════════════
   NEW TOP BAR v2
   ═══════════════════════════════════════════ */
.bet-top-bar{
  display:flex;align-items:center;
  background:linear-gradient(135deg,#1a1a2e 0%,#2c1654 100%);
  color:white;padding:10px 14px;gap:10px;
  position:sticky;top:0;z-index:100;
}
.btn-back{
  color:rgba(255,255,255,.85);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:50%;flex-shrink:0;
  background:rgba(255,255,255,.1);
  transition:background .2s;
}
.btn-back:hover{background:rgba(255,255,255,.2);}

/* Lottery switcher button (center) */
.lottery-switcher{
  flex:1;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);
  border-radius:20px;padding:7px 14px;
  display:flex;align-items:center;justify-content:center;gap:6px;
  cursor:pointer;color:white;font-size:14px;font-weight:700;
  transition:all .2s;
}
.lottery-switcher:hover,.lottery-switcher.open{background:rgba(255,255,255,.22);}
.ls-name{letter-spacing:.02em;}
.ls-arrow{transition:transform .25s;flex-shrink:0;}
.lottery-switcher.open .ls-arrow{transform:rotate(180deg);}

/* Three-dot menu button */
.btn-menu{
  color:rgba(255,255,255,.85);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:50%;flex-shrink:0;
  background:rgba(255,255,255,.1);border:none;
  transition:background .2s;
}
.btn-menu:hover,.btn-menu.open{background:rgba(255,255,255,.22);}

/* ── Lottery dropdown menu ── */
.lottery-menu{
  position:fixed;top:56px;left:50%;transform:translateX(-50%);
  background:rgba(15,18,37,.97);backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.1);border-radius:14px;
  box-shadow:0 8px 30px rgba(0,0,0,.5);
  min-width:220px;z-index:200;
  overflow:hidden;
  animation:menuDown .18s ease;
}
@keyframes menuDown{from{opacity:0;transform:translateX(-50%) translateY(-8px);}to{opacity:1;transform:translateX(-50%) translateY(0);}}
.lm-header{
  padding:10px 16px;font-size:11px;font-weight:700;
  color:rgba(255,255,255,.35);letter-spacing:.06em;text-transform:uppercase;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.lm-item{
  display:flex;align-items:center;gap:10px;
  padding:12px 16px;font-size:14px;font-weight:600;color:rgba(255,255,255,.8);
  text-decoration:none;cursor:pointer;transition:background .15s;
}
.lm-item:hover{background:rgba(255,255,255,.06);}
.lm-item.active{color:#f0c040;background:rgba(201,162,39,.1);}
.lm-icon{font-size:16px;}
.lm-name{flex:1;}
.lm-check{color:#c9a227;font-weight:700;}

/* ── Overlay mask ── */
.overlay-mask{
  position:fixed;inset:0;background:rgba(0,0,0,.0);
  z-index:150;
}

/* ── 右上角菜单（三点触发） ── */
.side-drawer{
  position:fixed;top:52px;right:10px;
  width:220px;
  background:linear-gradient(180deg,rgba(14,17,40,.98) 0%,rgba(6,9,28,.99) 100%);
  backdrop-filter:blur(24px);
  border:1px solid rgba(201,162,39,.18);
  border-radius:14px;
  z-index:200;
  box-shadow:0 8px 32px rgba(0,0,0,.6);
  transform-origin:top right;
  transition:opacity .18s,transform .18s;
  opacity:0;transform:scale(.9);
  pointer-events:none;
}
.sd-handle{ display:none; }
.sd-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px 8px;
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(201,162,39,.7);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.sd-close{
  background:rgba(255,255,255,.08);border:none;color:rgba(255,255,255,.5);
  width:22px;height:22px;border-radius:50%;cursor:pointer;
  font-size:12px;display:flex;align-items:center;justify-content:center;
}
.sd-item{
  display:flex;align-items:center;gap:10px;
  padding:11px 14px;cursor:pointer;text-decoration:none;
  transition:background .15s;border-bottom:1px solid rgba(255,255,255,.05);
  color:inherit;
}
.sd-item:last-child{border-bottom:none;border-radius:0 0 14px 14px;}
.sd-item:first-of-type{border-radius:0;}
.sd-item:active,.sd-item:hover{background:rgba(255,255,255,.06);}
.sd-ico-wrap{
  width:32px;height:32px;border-radius:9px;flex-shrink:0;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;font-size:16px;
}
.sd-body{flex:1;}
.sd-title{font-size:13px;font-weight:700;color:rgba(255,255,255,.88);}
.sd-sub{font-size:10px;color:rgba(255,255,255,.32);margin-top:1px;}
.sd-arr{color:rgba(255,255,255,.2);font-size:16px;margin-left:auto;}
.sd-divider{height:4px;background:rgba(255,255,255,.03);}

/* ── Bottom panel ── */
.bottom-panel{
  position:fixed;bottom:0;left:0;right:0;
  height:60vh;max-height:500px;
  background:rgba(10,13,30,.97);backdrop-filter:blur(20px);
  border-top:1px solid rgba(255,255,255,.1);border-radius:18px 18px 0 0;
  box-shadow:0 -6px 30px rgba(0,0,0,.5);
  z-index:150;overflow:hidden;
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;
}
.bp-header{
  display:flex;align-items:center;
  padding:10px 14px 0;border-bottom:1px solid rgba(255,255,255,.08);
  gap:6px;flex-shrink:0;
}
.bp-tabs{display:flex;flex:1;gap:4px;}
.bp-tab{
  flex:1;padding:8px 4px;border:none;background:none;
  font-size:12px;font-weight:600;color:rgba(255,255,255,.4);
  border-bottom:2px solid transparent;cursor:pointer;
  transition:all .2s;white-space:nowrap;
}
.bp-tab.active{color:#f0c040;border-bottom-color:#c9a227;}
.bp-close{
  background:none;border:none;color:rgba(255,255,255,.4);
  font-size:18px;cursor:pointer;padding:4px 6px;
  flex-shrink:0;
}
.bp-content{flex:1;overflow-y:auto;padding:10px 14px;}
.bp-empty{text-align:center;color:rgba(255,255,255,.3);padding:30px;font-size:13px;}

/* Draw records in panel */
.dr-row{
  display:flex;align-items:center;gap:8px;
  padding:8px 0;border-bottom:1px solid rgba(255,255,255,.07);flex-wrap:wrap;
}
.dr-issue{font-size:10px;color:rgba(255,255,255,.3);font-family:monospace;min-width:90px;}
.dr-balls{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;}
.dr-zodiac{font-size:11px;color:#ff8a80;background:rgba(231,76,60,.12);padding:2px 7px;border-radius:8px;flex-shrink:0;}

/* Trend chart */
.trend-wrap{overflow-x:auto;padding-bottom:8px;}
.trend-labels{display:flex;gap:2px;margin-bottom:4px;}
.trend-issue{width:30px;min-width:30px;text-align:center;font-size:9px;color:rgba(255,255,255,.3);font-family:monospace;}
.trend-section-title{font-size:11px;font-weight:700;color:rgba(255,255,255,.5);margin:10px 0 4px;letter-spacing:.04em;}
.trend-row{display:flex;gap:2px;margin-bottom:2px;}
.trend-cell{
  width:30px;min-width:30px;height:26px;
  display:flex;align-items:center;justify-content:center;
  border-radius:4px;font-size:11px;font-weight:700;
}
.t-red{background:rgba(198,40,40,.35);color:#ff8a80;}
.t-blue{background:rgba(21,101,192,.35);color:#82b1ff;}
.t-green{background:rgba(27,94,32,.35);color:#69f0ae;}
.t-num{background:rgba(106,27,154,.3);color:#ce93d8;font-family:monospace;font-size:10px;}

/* Bet records in panel */
.bet-rec-row{
  display:flex;align-items:center;gap:10px;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07);
}
.br-left{flex:1;min-width:0;}
.br-issue{font-size:10px;color:rgba(255,255,255,.3);font-family:monospace;}
.br-play{font-size:12px;font-weight:600;color:rgba(255,255,255,.85);margin-top:2px;}
.br-mid{text-align:right;flex-shrink:0;}
.br-amount{font-size:13px;font-weight:700;color:rgba(255,255,255,.9);}
.br-odds{font-size:10px;color:rgba(255,255,255,.4);margin-top:2px;}
.br-right{flex-shrink:0;text-align:right;min-width:60px;}
.br-status{font-size:11px;font-weight:700;padding:2px 7px;border-radius:8px;}
.s-pending{background:rgba(230,81,0,.18);color:#ffab40;}
.s-win{background:rgba(46,125,50,.18);color:#69f0ae;}
.s-lose{background:rgba(198,40,40,.15);color:#ff8a80;}
.s-cancel{background:rgba(255,255,255,.07);color:rgba(255,255,255,.4);}
.br-win{font-size:12px;color:#69f0ae;font-weight:700;margin-top:2px;}

/* Balance in issue bar */
.bet-balance{font-size:12px;font-weight:700;color:#f0c040;background:rgba(240,192,64,.12);padding:3px 9px;border-radius:10px;margin-left:auto;}

/* ===== Zodiac Bet Cards — Dark Space Style ===== */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;900&display=swap');

.zod-panel-title {
  font-family:'Cinzel',serif !important;
  color:#f0d060 !important;
  letter-spacing:.06em;
  font-size:12px !important;
  padding:8px 0 10px !important;
}

.zod-bet-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
}

.zod-card {
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:13px !important;
  padding:10px 5px 9px !important;
  text-align:center;
  cursor:pointer;
  transition:all .18s;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
}

.zod-card:hover,
.zod-card:active {
  background:rgba(201,162,39,.1) !important;
  border-color:rgba(201,162,39,.35) !important;
  transform:translateY(-2px);
}

.zod-card.selected {
  background:linear-gradient(145deg,rgba(201,162,39,.18),rgba(201,162,39,.08)) !important;
  border-color:rgba(201,162,39,.6) !important;
  box-shadow:0 0 0 2px rgba(201,162,39,.2), 0 4px 14px rgba(201,162,39,.2);
}

.zod-special {
  border-color:rgba(201,162,39,.22) !important;
  background:linear-gradient(145deg,rgba(201,162,39,.1),rgba(201,162,39,.04)) !important;
}

/* Circular icon wrapper */
.zc-icon-wrap {
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  flex-shrink:0;
  position:relative;
  transition:all .18s;
}

/* Color variants for each element group */
.zc-color-red {
  background:linear-gradient(135deg,rgba(192,57,43,.55),rgba(120,20,15,.4));
  border:1.5px solid rgba(192,57,43,.5);
  box-shadow:0 2px 8px rgba(192,57,43,.25);
}
.zc-color-blue {
  background:linear-gradient(135deg,rgba(41,128,185,.55),rgba(20,60,120,.4));
  border:1.5px solid rgba(41,128,185,.5);
  box-shadow:0 2px 8px rgba(41,128,185,.25);
}
.zc-color-green {
  background:linear-gradient(135deg,rgba(39,174,96,.55),rgba(15,100,50,.4));
  border:1.5px solid rgba(39,174,96,.5);
  box-shadow:0 2px 8px rgba(39,174,96,.25);
}

.zod-card.selected .zc-color-red,
.zod-card.selected .zc-color-blue,
.zod-card.selected .zc-color-green {
  box-shadow:0 0 14px rgba(201,162,39,.5);
  border-color:rgba(201,162,39,.7);
}

.zc-sym {
  font-size:20px;
  line-height:1;
  font-family:serif;
  color:#fff;
  -webkit-text-fill-color:unset !important;
  background:none !important;
  filter:none !important;
}

.zc-name {
  font-size:9px;
  color:rgba(255,255,255,.5);
  font-weight:600;
  display:block;
  margin-bottom:4px;
  letter-spacing:.02em;
}

.zod-card.selected .zc-name {
  color:#f0d060;
}

.zc-odds {
  font-size:10.5px;
  color:#c9a227;
  font-weight:700;
  display:block;
  font-family:'Cinzel',serif;
}

.zod-special .zc-odds {
  color:#f0d060;
}

/* Force text (non-emoji) rendering for zodiac symbols */
.zc-sym, .zg-sym, .z-emoji {
  font-variant-emoji: text;
  -webkit-font-variant-emoji: text;
}
