/* 彩票页浅色体验优化（仅作用于 game.html 的彩票玩法） */
body.gamePage.lotteryPage{
  --bg:#f7f7f4;
  --panel:#ffffff;
  --panel2:#fffaf0;
  --line:#e8e2d8;
  --text:#20242c;
  --muted:#737b89;
  --gold:#b77916;
  --gold2:#8f5c0c;
  --danger:#d83b42;
  --ok:#16864b;
  color:var(--text);
  background:
    radial-gradient(700px 360px at 8% 0%, rgba(244,190,65,.16), transparent 64%),
    radial-gradient(760px 420px at 94% 10%, rgba(255,220,130,.13), transparent 60%),
    linear-gradient(180deg,#fffdf8 0,#f7f7f4 460px,#f3f4f6 100%);
}

body.gamePage.lotteryPage .topbar{
  color:#222833;
  background:rgba(255,255,255,.9);
  border-bottom-color:#eadfcb;
  box-shadow:0 8px 28px rgba(75,55,18,.07);
}
body.gamePage.lotteryPage .brandName{color:#20242c}
body.gamePage.lotteryPage .brandSub,
body.gamePage.lotteryPage .muted{color:#737b89}
body.gamePage.lotteryPage .navLink{color:#697180}
body.gamePage.lotteryPage .navLink:hover{
  color:#8f5c0c;
  border-color:#e7c982;
  background:#fff9e8;
}
body.gamePage.lotteryPage .chip{
  color:#5f6672;
  border-color:#e4ddd1;
  background:#fff;
  box-shadow:0 4px 12px rgba(50,40,22,.05);
}
body.gamePage.lotteryPage .chip b{color:#20242c}

body.gamePage.lotteryPage .panel{
  background:#fff;
  border-color:#e8e2d8;
  box-shadow:0 14px 36px rgba(61,48,22,.075);
}
body.gamePage.lotteryPage .panelTitle{
  color:#252a33;
  border-bottom-color:#ece6dc;
  background:linear-gradient(180deg,#fff,#fffdf9);
}
body.gamePage.lotteryPage .drawHero{
  border-color:#ead7aa;
  box-shadow:0 18px 48px rgba(128,87,15,.11);
}
body.gamePage.lotteryPage .drawHeroHeader{
  background:linear-gradient(115deg,#fff8df 0%,#fffdf7 54%,#fff4cf 100%);
}
body.gamePage.lotteryPage .gameIdentity{min-width:220px}
body.gamePage.lotteryPage .roundBadges{flex:2 1 560px}
body.gamePage.lotteryPage .roundBadges > *{flex:0 1 auto;min-width:auto}
body.gamePage.lotteryPage .badge{
  color:#59616e;
  border-color:#e6ded0;
  background:#fff;
  box-shadow:0 3px 10px rgba(70,55,30,.04);
}
body.gamePage.lotteryPage .badge b{color:#20242c}
body.gamePage.lotteryPage .badge.ok{
  color:#137342;
  border-color:#a9dfc1;
  background:#effaf4;
}
body.gamePage.lotteryPage .badge.warn{
  color:#9b650d;
  border-color:#ecd08e;
  background:#fff9e7;
}
body.gamePage.lotteryPage .badge.bad{
  color:#bd333b;
  border-color:#efb9bd;
  background:#fff2f3;
}
body.gamePage.lotteryPage .badge.urgent{
  color:#c0363e;
  border-color:#efb1b5;
  background:#fff0f1;
  animation:urgentPulse 1.1s ease-in-out infinite;
}
@keyframes urgentPulse{
  50%{box-shadow:0 0 0 4px rgba(216,59,66,.09)}
}

body.gamePage.lotteryPage .drawHeroBody{padding:22px 24px}
body.gamePage.lotteryPage .drawResultBar{gap:22px!important}
body.gamePage.lotteryPage .drawNumbersBlock{
  flex:1 1 560px;
  flex-wrap:nowrap;
  min-width:0;
}
body.gamePage.lotteryPage .drawLabel{
  flex:0 0 82px;
  min-width:82px;
  display:flex;
  flex-direction:column;
  gap:3px;
  color:#292d35;
}
body.gamePage.lotteryPage .drawLabel b{font-size:15px}
body.gamePage.lotteryPage .drawLabel span{font-size:11px;color:#9197a1}
body.gamePage.lotteryPage .drawActions{
  flex:0 1 auto;
  justify-content:flex-end;
}
body.gamePage.lotteryPage .drawActions > *{flex:0 0 auto;min-width:auto}

body.gamePage.lotteryPage .digits{
  gap:13px;
  flex-wrap:nowrap;
  padding:5px 0;
}
body.gamePage.lotteryPage .lotteryBallSlot{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
}
body.gamePage.lotteryPage .digitBall{
  width:60px;
  height:60px;
  overflow:hidden;
  border:3px solid rgba(255,255,255,.88);
  color:#fff;
  font-size:28px;
  line-height:1;
  font-weight:950;
  text-shadow:0 2px 3px rgba(0,0,0,.28);
  box-shadow:
    0 12px 18px rgba(35,31,24,.20),
    0 2px 4px rgba(35,31,24,.20),
    inset 0 4px 10px rgba(255,255,255,.47),
    inset 0 -12px 18px rgba(0,0,0,.24);
}
body.gamePage.lotteryPage .digitBall::before{
  inset:0;
  opacity:.8;
  background:
    radial-gradient(circle at 28% 20%,rgba(255,255,255,.92) 0 5%,rgba(255,255,255,.32) 14%,transparent 34%),
    radial-gradient(circle at 68% 78%,rgba(0,0,0,.24),transparent 50%);
}
body.gamePage.lotteryPage .digitBall::after{
  inset:3px;
  border:1px solid rgba(255,255,255,.23);
  box-shadow:none;
  animation:none;
}
body.gamePage.lotteryPage .pos0{background:linear-gradient(145deg,#ff7777 0%,#eb343d 48%,#a90e20 100%)}
body.gamePage.lotteryPage .pos1{background:linear-gradient(145deg,#6db8ff 0%,#2675df 48%,#10439e 100%)}
body.gamePage.lotteryPage .pos2{background:linear-gradient(145deg,#5ee2ae 0%,#13a66e 48%,#067048 100%)}
body.gamePage.lotteryPage .pos3{background:linear-gradient(145deg,#c286ff 0%,#8546dc 48%,#5522a0 100%)}
body.gamePage.lotteryPage .pos4{background:linear-gradient(145deg,#ffd36f 0%,#ee9f20 48%,#aa6205 100%)}
body.gamePage.lotteryPage .lotteryBallLabel{
  color:#747b87;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
}

body.gamePage.lotteryPage .gameHint{
  padding:10px 13px;
  border-radius:12px;
  border:1px solid #efe5cc;
  background:#fffbef;
  line-height:1.65;
}
body.gamePage.lotteryPage .lastResultLine{
  min-height:30px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
body.gamePage.lotteryPage .lastResultBalls{
  display:inline-flex;
  gap:5px;
  align-items:center;
}
body.gamePage.lotteryPage .historyBall{
  width:24px;
  height:24px;
  display:inline-grid;
  place-items:center;
  margin-right:4px;
  border:2px solid #fff;
  border-radius:50%;
  color:#fff!important;
  font-size:12px;
  font-weight:900;
  line-height:1;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
  box-shadow:0 3px 8px rgba(45,38,25,.2),inset 0 2px 4px rgba(255,255,255,.38),inset 0 -5px 7px rgba(0,0,0,.2);
}

body.gamePage.lotteryPage .bettingLayout{
  grid-template-columns:minmax(0,1.18fr) minmax(380px,.82fr);
  align-items:start;
}
body.gamePage.lotteryPage .betSlipPanel{
  position:sticky;
  top:90px;
}
body.gamePage.lotteryPage .selectionBadge{
  padding:5px 10px;
  border-radius:999px;
  color:#925f0c;
  background:#fff6d9;
  border:1px solid #ead08a;
  font-size:12px;
}
body.gamePage.lotteryPage .playTabs{flex:0 1 auto}
body.gamePage.lotteryPage .playTabs > *{min-width:auto;flex:0 0 auto}
body.gamePage.lotteryPage .tab,
body.gamePage.lotteryPage .subtab{
  color:#5c6470;
  border-color:#e3ddd2;
  background:#fff;
}
body.gamePage.lotteryPage .tab:hover,
body.gamePage.lotteryPage .subtab:hover{border-color:#ddb95e;color:#9a650e}
body.gamePage.lotteryPage .tab.active,
body.gamePage.lotteryPage .subtab.active{
  color:#7b4e08;
  border-color:#d8ad43;
  background:linear-gradient(180deg,#fff8dc,#ffefb9);
  box-shadow:0 5px 14px rgba(183,121,22,.12);
}

body.gamePage.lotteryPage .pickRow{
  gap:7px;
  padding:12px 0;
  margin:0;
  border-bottom:1px dashed #eee8de;
}
body.gamePage.lotteryPage .pickRow:last-child{border-bottom:0}
body.gamePage.lotteryPage .pickLabel{
  width:54px;
  color:#434a55;
  font-weight:900;
}
body.gamePage.lotteryPage .pill{
  color:#343a44;
  border-color:#e2ddd4;
  background:#fff;
  box-shadow:0 3px 8px rgba(48,42,30,.05);
}
body.gamePage.lotteryPage .pill:hover{
  border-color:#d8b45b;
  transform:translateY(-1px);
}
body.gamePage.lotteryPage .pill.small{
  color:#777e89;
  background:#f8f8f6;
}
body.gamePage.lotteryPage .numberPill{
  width:44px;
  height:44px;
  min-width:44px;
  padding:0;
  border:3px solid #fff;
  border-radius:50%;
  color:#3f4651;
  font-size:17px;
  font-weight:950;
  background:linear-gradient(145deg,#fff 8%,#f1f2f3 58%,#d9dde2 100%);
  box-shadow:0 5px 10px rgba(35,39,45,.14),inset 0 3px 6px rgba(255,255,255,.9),inset 0 -7px 10px rgba(73,82,94,.12);
}
body.gamePage.lotteryPage .numberPill.active{
  color:#fff;
  border-color:#fff;
  background:linear-gradient(145deg,#ff8b75 0%,#ec4347 48%,#a81027 100%);
  text-shadow:0 1px 2px rgba(0,0,0,.28);
  box-shadow:0 7px 14px rgba(195,37,53,.3),inset 0 4px 7px rgba(255,255,255,.4),inset 0 -8px 12px rgba(94,0,14,.3);
}
body.gamePage.lotteryPage .outcomePill.active{
  color:#8a5808;
  border-color:#dcba65;
  background:#fff3c8;
}

body.gamePage.lotteryPage .noticeBox{
  color:#303640;
  border-color:#e6e0d6;
  background:#fafaf8;
}
body.gamePage.lotteryPage .stakeBox{background:#fffaf0;border-color:#ebddbc}
body.gamePage.lotteryPage .input,
body.gamePage.lotteryPage select,
body.gamePage.lotteryPage textarea{
  color:#252a33;
  border-color:#dcd6cc;
  background:#fff;
  box-shadow:inset 0 1px 2px rgba(43,37,27,.04);
}
body.gamePage.lotteryPage .input:focus,
body.gamePage.lotteryPage select:focus,
body.gamePage.lotteryPage textarea:focus{
  border-color:#d2a846;
  box-shadow:0 0 0 4px rgba(210,168,70,.13);
}
body.gamePage.lotteryPage .quickValues{
  display:flex;
  gap:6px;
  margin-top:8px;
}
body.gamePage.lotteryPage .quickValues button{
  flex:1;
  min-height:31px;
  cursor:pointer;
  border:1px solid #dfd8cc;
  border-radius:9px;
  color:#6c727d;
  background:#fff;
  font-weight:800;
}
body.gamePage.lotteryPage .quickValues button:hover,
body.gamePage.lotteryPage .quickValues button.active{
  color:#8c5908;
  border-color:#d5ae4e;
  background:#fff4cf;
}
body.gamePage.lotteryPage .betSummary{
  padding:11px 12px;
  border-radius:11px;
  background:#fff;
  border:1px solid #ebe3d6;
}
body.gamePage.lotteryPage .betSummary > *{min-width:auto;flex:0 1 auto}
body.gamePage.lotteryPage #totalStake{
  color:#c3353e;
  font-size:16px;
}

body.gamePage.lotteryPage table{color:#343a44}
body.gamePage.lotteryPage th,
body.gamePage.lotteryPage td{border-bottom-color:#ece7de}
body.gamePage.lotteryPage th{
  color:#7d838d;
  background:#fafaf8;
}
body.gamePage.lotteryPage td b{color:#242932}
body.gamePage.lotteryPage .hr{background:#ece6dc}

body.gamePage.lotteryPage .btn{
  color:#5f4009;
  border-color:#dbb451;
  background:linear-gradient(180deg,#ffeaa5,#f6c951);
  box-shadow:0 5px 12px rgba(174,115,17,.13);
}
body.gamePage.lotteryPage .btn.ghost{
  color:#59616d;
  border-color:#dfd9cf;
  background:#fff;
  box-shadow:0 3px 9px rgba(43,37,27,.05);
}
body.gamePage.lotteryPage .btn.danger{
  color:#bd313a;
  border-color:#edb8bc;
  background:#fff3f4;
}
body.gamePage.lotteryPage .btn.ok{
  color:#126c3d;
  border-color:#a9ddc0;
  background:#effaf4;
}
body.gamePage.lotteryPage .confirmBar > *{min-width:auto;flex:1 1 100%}
body.gamePage.lotteryPage #btnConfirm{
  width:100%;
  min-height:54px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  color:#4c3207;
  font-size:16px;
  border-color:#d5a834;
  background:linear-gradient(180deg,#ffed9e,#f3c13d);
  box-shadow:0 10px 22px rgba(177,112,11,.2);
}
body.gamePage.lotteryPage #btnConfirm small{
  font-size:10px;
  font-weight:600;
  opacity:.72;
}
body.gamePage.lotteryPage #btnConfirm:disabled,
body.gamePage.lotteryPage #btnConfirm.isLocked{
  cursor:not-allowed;
  color:#858a92;
  border-color:#d7d9dc;
  background:#eceef0;
  box-shadow:none;
}

body.gamePage.lotteryPage .miniItem{
  color:#303640;
  border-color:#e6e0d6;
  background:#fafaf8;
}
body.gamePage.lotteryPage .historyResult{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
body.gamePage.lotteryPage .historyResult b{display:inline-flex;align-items:center;gap:1px}
body.gamePage.lotteryPage .betSlipPanel #recentRounds,
body.gamePage.lotteryPage .betSlipPanel #recentBets{
  max-height:380px;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:4px;
}
body.gamePage.lotteryPage .betSlipPanel #recentRounds::-webkit-scrollbar,
body.gamePage.lotteryPage .betSlipPanel #recentBets::-webkit-scrollbar{width:6px}
body.gamePage.lotteryPage .betSlipPanel #recentRounds::-webkit-scrollbar-thumb,
body.gamePage.lotteryPage .betSlipPanel #recentBets::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:#ddd3c2;
}

body.gamePage.lotteryPage .modalCard{
  color:#252a33;
  background:#fff;
  border-color:#e2cf9b;
  box-shadow:0 24px 70px rgba(43,35,20,.25);
}
body.gamePage.lotteryPage .modalHeader,
body.gamePage.lotteryPage .modalFooter{border-color:#ece5da}
body.gamePage.lotteryPage .toast{
  color:#252a33;
  background:rgba(255,255,255,.96);
  border-color:#e5dccd;
  box-shadow:0 20px 55px rgba(43,35,20,.2);
}

@media (max-width:1050px){
  body.gamePage.lotteryPage .bettingLayout{grid-template-columns:1fr}
  body.gamePage.lotteryPage .betSlipPanel{position:static}
}

@media (max-width:768px){
  body.gamePage.lotteryPage .fcylMobileTopNav{
    background:rgba(255,255,255,.96)!important;
    border-bottom-color:#eadfcb!important;
    box-shadow:0 7px 18px rgba(70,54,22,.08)!important;
  }
  body.gamePage.lotteryPage .fcylMobileTopNav a{
    color:#626975;
    background:#fff;
    border-color:#e3d8c1;
  }
  body.gamePage.lotteryPage .fcylMobileTopNav a.active{
    color:#8a5707;
    border-color:#d7ae4c;
    background:#fff5d6;
  }
  body.gamePage.lotteryPage .drawHeroBody{padding:17px 15px}
  body.gamePage.lotteryPage .drawNumbersBlock{
    flex-direction:column;
    align-items:flex-start!important;
  }
  body.gamePage.lotteryPage .drawLabel{
    min-width:0;
    flex:0 0 auto;
    flex-direction:row;
    align-items:baseline;
    gap:8px;
  }
  body.gamePage.lotteryPage .digits{
    width:100%;
    justify-content:center;
    gap:9px;
  }
  body.gamePage.lotteryPage .digitBall{width:52px;height:52px;font-size:24px}
  body.gamePage.lotteryPage .drawActions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.gamePage.lotteryPage .drawActions > *{width:100%}
  body.gamePage.lotteryPage .playTabs{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  body.gamePage.lotteryPage .playTabs .tab{width:100%;padding:9px 5px}
}

@media (max-width:520px){
  body.gamePage.lotteryPage .container{padding-left:10px;padding-right:10px}
  body.gamePage.lotteryPage .roundBadges{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
  }
  body.gamePage.lotteryPage .roundBadges .badge{width:100%;min-height:32px}
  body.gamePage.lotteryPage .digits{gap:5px}
  body.gamePage.lotteryPage .digitBall{width:47px;height:47px;font-size:22px;border-width:2px}
  body.gamePage.lotteryPage .lotteryBallLabel{font-size:10px}
  body.gamePage.lotteryPage .pickRow{align-items:flex-start}
  body.gamePage.lotteryPage .pickLabel{width:100%;flex:0 0 100%}
  body.gamePage.lotteryPage .pickRow > .row{
    margin-left:0!important;
    width:100%;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
  body.gamePage.lotteryPage .numberPill{
    width:42px;
    height:42px;
    min-width:42px;
    justify-self:center;
  }
  body.gamePage.lotteryPage .betSlipPanel #recentRounds,
  body.gamePage.lotteryPage .betSlipPanel #recentBets{max-height:320px}
}

@media (prefers-reduced-motion:reduce){
  body.gamePage.lotteryPage .rolling,
  body.gamePage.lotteryPage .rolling::before,
  body.gamePage.lotteryPage .reveal,
  body.gamePage.lotteryPage .digitBall.flash,
  body.gamePage.lotteryPage .badge.urgent{animation:none!important}
}
