html{scroll-behavior:smooth}
/* ============ 基础 ============ */
:root{
  --bg:#100709;
  --bg2:#180b0f;
  --card:#1f1116;
  --card2:#26141a;
  --line:#3a2027;
  --gold:#d4af37;
  --gold-l:#f2d675;
  --gold-d:#8a6f1e;
  --red:#c0392b;
  --red-l:#e8544a;
  --text:#f2e9d8;
  --text2:#a4917c;
  --text3:#6f6055;
  --green:#25a45c;
  --blue:#2b6ee0;
  --radius:10px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{
  background:
    radial-gradient(1200px 500px at 50% -10%, rgba(212,175,55,.10), transparent 70%),
    radial-gradient(800px 400px at 90% 10%, rgba(192,57,43,.10), transparent 70%),
    var(--bg);
  color:var(--text);
  font-family:"PingFang SC","Microsoft YaHei","Hiragino Sans GB","Source Han Sans SC",system-ui,-apple-system,sans-serif;
  font-size:15px;
  line-height:1.65;
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-thumb{background:#3a2027;border-radius:4px}
::-webkit-scrollbar-track{background:transparent}

.wrap{max-width:1200px;margin:0 auto;padding:0 14px}

/* ============ 顶栏 ============ */
.topbar{
  background:linear-gradient(180deg,#1b0c10,#140809);
  border-bottom:1px solid var(--line);
  font-size:12px;color:var(--text2);
}
.topbar .wrap{display:flex;align-items:center;gap:14px;height:36px;overflow:hidden}
.topbar .brand-mini{color:var(--gold);font-weight:700;letter-spacing:1px;white-space:nowrap}
.marquee{flex:1;overflow:hidden;position:relative;height:20px}
.marquee-inner{position:absolute;white-space:nowrap;will-change:transform;animation:marquee 40s linear infinite}
.marquee-inner span{margin-right:52px;color:#c9b79c}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.topbar .kf{color:var(--gold);white-space:nowrap}

/* ============ 头部 ============ */
header.site{
  background:linear-gradient(180deg,#210f14 0%,#170a0d 100%);
  border-bottom:2px solid var(--gold-d);
  box-shadow:0 4px 24px rgba(0,0,0,.5);
}
header.site .wrap{display:flex;align-items:center;gap:18px;height:74px}
.logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo .mark{
  width:44px;height:44px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#f7e08a,#c9a227 55%,#7a5c12);
  display:grid;place-items:center;font-weight:900;color:#3a2a00;font-size:19px;
  box-shadow:0 0 18px rgba(212,175,55,.45),inset 0 -2px 6px rgba(0,0,0,.3);
}
.logo .txt b{
  display:block;font-size:19px;letter-spacing:2px;
  background:linear-gradient(180deg,#fff4cf,#d4af37 55%,#9a7a18);
  -webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800;
}
.logo .txt i{display:block;font-style:normal;font-size:11px;color:var(--text2);letter-spacing:3px}

nav.main{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
nav.main a{
  padding:9px 15px;border-radius:6px;color:#d8c9b0;font-size:15px;
  border:1px solid transparent;transition:.18s;white-space:nowrap;
}
nav.main a:hover{color:var(--gold-l);background:rgba(212,175,55,.07);border-color:rgba(212,175,55,.22)}
nav.main a.on{color:#2a1a00;background:linear-gradient(180deg,#f2d675,#c9a227);font-weight:700;border-color:#8a6f1e}

/* ============ 通用组件 ============ */
.card{
  background:linear-gradient(180deg,var(--card2),var(--card));
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
}
.card-h{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:11px 15px;border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,rgba(212,175,55,.10),transparent 65%);
}
.card-h h2,.card-h h3{margin:0;font-size:16px;font-weight:700;letter-spacing:.5px;color:var(--gold-l);min-width:0}
.card-h .more{margin-left:auto;font-size:13px;color:var(--text2)}
.card-h .more:hover{color:var(--gold)}
.card-b{padding:15px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:8px 18px;border-radius:6px;border:1px solid var(--gold-d);
  background:linear-gradient(180deg,#f2d675,#c9a227);color:#2a1a00;
  font-weight:700;font-size:14px;cursor:pointer;transition:.18s;font-family:inherit;
}
.btn:hover{filter:brightness(1.1)}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--gold);border-color:rgba(212,175,55,.4)}
.btn.ghost:hover{background:rgba(212,175,55,.1)}
.btn.danger{background:linear-gradient(180deg,#e8544a,#a8291f);color:#fff;border-color:#7d1c15}
.btn.sm{padding:6px 13px;font-size:13px}
.btn:disabled{opacity:.45;cursor:not-allowed}

.tag{display:inline-block;padding:1px 7px;border-radius:4px;font-size:11px;border:1px solid;white-space:nowrap;line-height:1.5}
.tag.api{color:#6fd39a;border-color:rgba(37,164,92,.5);background:rgba(37,164,92,.12)}
.tag.ctrl{color:#f2d675;border-color:rgba(212,175,55,.5);background:rgba(212,175,55,.12)}
.tag.bad{color:#ff8a80;border-color:rgba(232,84,74,.5);background:rgba(232,84,74,.12)}

/* ============ 号码球 ============ */
.balls{display:flex;gap:7px;flex-wrap:wrap;align-items:center}

/* 带生肖的球组：球在上、生肖在下 */
.balls-z{gap:6px;align-items:flex-start}
.ball-cell{display:inline-flex;flex-direction:column;align-items:center;gap:3px}
.ball-z{
  font-style:normal;font-size:10px;line-height:1;color:var(--text2);
  letter-spacing:.5px;white-space:nowrap;
}
.balls-z .ball-sep{align-self:center;margin-top:12px}
.balls-z .ball.special::before{top:-8px}

/* 开奖时逐个开出（一期只播一次） */
.balls.reveal .ball-cell,
.balls.reveal .ball-sep{
  animation:ballPop .46s cubic-bezier(.2,1.5,.4,1) both;
}
@keyframes ballPop{
  0%{opacity:0;transform:translateY(16px) scale(.5)}
  55%{opacity:1;transform:translateY(-3px) scale(1.06)}
  100%{opacity:1;transform:none}
}
@media (prefers-reduced-motion: reduce){
  .balls.reveal .ball-cell,.balls.reveal .ball-sep{animation:none}
}

/* 历史列表用的紧凑球组：小一号，窄屏自动换行也不裁切 */
.balls-xs{flex-wrap:wrap;gap:2px 3px;overflow:visible}
.balls-xs .ball{width:28px;height:28px;font-size:12px;line-height:28px;flex:0 0 28px}
.balls-xs .ball-z{font-size:11px;letter-spacing:0;font-weight:600}
.balls-xs .ball-sep{margin:0 1px;font-size:11px;padding:0}
.balls-xs .ball.special{width:30px;height:30px;flex:0 0 30px;line-height:30px}
.balls-xs .ball.special::before{display:none}
#historyList .mat b{font-size:15px;letter-spacing:.5px}
#historyList .mat .small{font-size:13px}
#historyList .mat{padding:10px 12px !important;margin-bottom:8px !important}

/* 搅珠占位球：每个球里一个字「正在现场搅珠中」 */
.shake-balls{gap:8px;align-items:flex-start}
.shake-balls .ball.ph{
  width:38px;height:38px;font-size:15px;font-weight:700;
  background:radial-gradient(circle at 34% 30%,#3d2c1c,#17100c 78%);
  border:1px dashed rgba(212,175,55,.45);
  color:var(--gold);text-shadow:0 0 8px rgba(212,175,55,.5);
  box-shadow:inset 0 0 12px rgba(212,175,55,.12);
  animation:phPulse 1s ease-in-out infinite;
}
.shake-balls .ball.ph.sp{border-color:rgba(212,175,55,.8);color:var(--gold-l)}
.shake-balls .ball-cell:nth-child(1) .ph{animation-delay:0s}
.shake-balls .ball-cell:nth-child(2) .ph{animation-delay:.1s}
.shake-balls .ball-cell:nth-child(3) .ph{animation-delay:.2s}
.shake-balls .ball-cell:nth-child(4) .ph{animation-delay:.3s}
.shake-balls .ball-cell:nth-child(5) .ph{animation-delay:.4s}
.shake-balls .ball-cell:nth-child(6) .ph{animation-delay:.5s}
.shake-balls .ball-cell:nth-child(7) .ph{animation-delay:.6s}
@keyframes phPulse{
  0%,100%{transform:translateY(0) scale(1);opacity:.6}
  50%{transform:translateY(-5px) scale(1.06);opacity:1}
}
/* 单个球落定的弹入 */
.slot-in{animation:slotIn .55s cubic-bezier(.2,1.6,.4,1)}
@keyframes slotIn{
  0%{transform:scale(.35) rotate(-12deg);opacity:0}
  60%{transform:scale(1.14) rotate(2deg);opacity:1}
  100%{transform:scale(1) rotate(0);opacity:1}
}
.slot-in .ball{box-shadow:0 0 0 2px rgba(212,175,55,.55),0 4px 14px rgba(0,0,0,.5)}
.ball{
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  font-weight:800;font-size:16px;color:#fff;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
  position:relative;
  background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.55),transparent 45%),
             radial-gradient(circle at 50% 50%,var(--bc,#888),color-mix(in srgb,var(--bc,#888) 65%,#000) 100%);
  box-shadow:0 2px 6px rgba(0,0,0,.45),inset 0 -2px 5px rgba(0,0,0,.35);
  flex-shrink:0;
}
.ball.sm{width:30px;height:30px;font-size:13px}
.ball.lg{width:52px;height:52px;font-size:22px}
.ball.special::after{
  content:'';position:absolute;inset:-3px;border-radius:50%;
  border:2px solid var(--gold);box-shadow:0 0 12px rgba(212,175,55,.7);
}
.ball.special::before{
  content:'特';position:absolute;top:-9px;right:-7px;
  font-size:9px;background:var(--gold);color:#2a1a00;border-radius:3px;
  padding:0 3px;font-weight:900;line-height:13px;z-index:2;
}
.ball .plus{font-size:13px;color:var(--text2);margin:0 2px}
.ball-sep{color:var(--text3);font-weight:700;padding:0 2px;font-size:15px}

/* ============ 彩种卡 ============ */
.lots{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.lot{
  position:relative;border-radius:12px;overflow:hidden;
  border:1px solid var(--line);
  background:linear-gradient(160deg,#251318,#170a0d);
  transition:.2s;
}
.lot:hover{border-color:rgba(212,175,55,.45);transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.5)}
.lot .glow{position:absolute;inset:-40% -20% auto;height:150px;filter:blur(42px);opacity:.35;pointer-events:none}
.lot-h{display:flex;align-items:center;gap:8px;padding:12px 14px 8px;position:relative}
.lot-h .name{font-size:15px;font-weight:800;letter-spacing:.5px}
.lot-h .en{font-size:10px;color:var(--text3);letter-spacing:2px}
.lot-h .state{margin-left:auto;font-size:11px}
.lot-b{padding:4px 14px 14px;position:relative}
.lot-b .period{font-size:12px;color:var(--text2);margin-bottom:8px;display:flex;gap:8px;align-items:center}
.lot-b .period b{color:var(--gold-l)}
.lot-b .balls{margin-bottom:10px}
.lot-b .meta{display:flex;gap:12px;font-size:11px;color:var(--text2);flex-wrap:wrap;margin-bottom:10px}
.lot-b .meta b{color:#dccfae;font-weight:600}
.cd{display:flex;gap:5px;align-items:center;font-size:13px;color:var(--text2);margin-bottom:11px}
.cd .num{
  display:inline-grid;place-items:center;min-width:26px;height:24px;padding:0 4px;
  background:#140a0c;border:1px solid var(--line);border-radius:4px;
  font-variant-numeric:tabular-nums;font-weight:700;color:var(--gold-l);font-size:14px;
}
.lot-actions{display:flex;gap:8px}
.lot-actions .btn{flex:1;padding:7px 0;font-size:12px}

/* ============ 表格 ============ */
.table-wrap{overflow-x:auto}
table.grid{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
table.grid th{
  background:#1a0d10;color:var(--text2);font-weight:600;
  padding:9px 10px;text-align:left;white-space:nowrap;
  border-bottom:1px solid var(--line);font-size:12px;
}
table.grid td{padding:9px 10px;border-bottom:1px solid rgba(58,32,39,.5);white-space:nowrap}
table.grid tr:hover td{background:rgba(212,175,55,.04)}
table.grid td.p{color:var(--gold-l);font-weight:600;font-variant-numeric:tabular-nums}
table.grid td.t{color:var(--text2);font-size:12px}

/* ============ 走势小格 ============ */
.trend{display:flex;gap:3px;flex-wrap:wrap}
.trend i{
  display:inline-grid;place-items:center;width:26px;height:24px;border-radius:3px;
  font-size:11px;font-style:normal;font-weight:700;background:#241218;color:#cbb894;
  border:1px solid rgba(58,32,39,.8);
}
.trend i.hot{background:rgba(212,175,55,.2);color:var(--gold-l);border-color:rgba(212,175,55,.5)}

/* ============ 资料 ============ */
.mat-list{display:grid;gap:10px}
.mat{
  border:1px solid var(--line);border-radius:8px;padding:14px 16px;
  background:linear-gradient(180deg,rgba(38,20,26,.85),rgba(31,17,22,.85));
}
.mat h4{margin:0 0 9px;font-size:17px;color:var(--gold-l);display:flex;align-items:center;gap:8px;line-height:1.5}
.mat h4 .k{font-size:11px;color:#2a1a00;background:var(--gold);padding:1px 6px;border-radius:3px;font-weight:900;flex:0 0 auto}
.mat p{margin:0;color:#ddd0bc;font-size:17px;white-space:pre-wrap;line-height:1.9}
.mat .src{margin-top:8px;font-size:12px;color:var(--text3)}

/* ============ 页脚 ============ */
footer.site{
  margin-top:34px;padding:24px 0;border-top:1px solid var(--line);
  color:var(--text3);font-size:12px;text-align:center;line-height:1.9;
}
footer.site .links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:8px}
footer.site .links a{color:var(--text2)}
footer.site .links a:hover{color:var(--gold)}

/* ============ 主视觉 ============ */
.hero{
  position:relative;border-radius:14px;overflow:hidden;margin:16px 0;
  border:1px solid rgba(212,175,55,.28);
  background:
    radial-gradient(600px 240px at 15% 0%,rgba(212,175,55,.20),transparent 65%),
    radial-gradient(500px 200px at 85% 100%,rgba(192,57,43,.25),transparent 65%),
    linear-gradient(160deg,#2a1218,#150a0c);
  padding:26px 28px;
  display:flex;align-items:center;gap:24px;flex-wrap:wrap;
}
.hero .hl{flex:1;min-width:260px}
.hero .hl .kicker{font-size:11px;letter-spacing:4px;color:var(--gold);margin-bottom:6px}
.hero .hl h1{margin:0 0 8px;font-size:26px;letter-spacing:1px;
  background:linear-gradient(180deg,#fff6db,#d4af37 60%,#9a7a18);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero .hl p{margin:0 0 14px;color:#c3b29a;font-size:13px;max-width:520px}
.hero .hr{display:flex;flex-direction:column;gap:10px;align-items:flex-end}

/* ============ 视频页 ============ */
.stage{
  position:relative;width:100%;aspect-ratio:16/9;background:#080405;
  border:1px solid var(--line);border-radius:12px;overflow:hidden;
  box-shadow:0 18px 50px rgba(0,0,0,.6);
}
.stage canvas{display:block;width:100%;height:100%}
.stage .ctrl{
  position:absolute;left:0;right:0;bottom:0;padding:10px 14px;
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.75));
  opacity:0;transition:.25s;
}
.stage:hover .ctrl{opacity:1}
.stage .ctrl .tm{font-size:12px;color:#cbb894;font-variant-numeric:tabular-nums}
.stage .ctrl .sp{flex:1}
.stage .ctrl button{
  background:rgba(212,175,55,.15);border:1px solid rgba(212,175,55,.45);
  color:var(--gold-l);border-radius:5px;padding:4px 10px;font-size:12px;cursor:pointer;
  font-family:inherit;
}
.stage .ctrl button:hover{background:rgba(212,175,55,.28)}
.stage .badge{
  position:absolute;top:12px;left:14px;display:flex;align-items:center;gap:7px;
  font-size:12px;color:#e8d8b0;background:rgba(0,0,0,.45);
  padding:4px 10px;border-radius:20px;border:1px solid rgba(212,175,55,.25);
}
.stage .badge .dot{width:7px;height:7px;border-radius:50%;background:#e8544a;animation:blink 1.2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}

/* ============ 分页胶囊 ============ */
.pills{display:flex;gap:7px;flex-wrap:wrap}
.pill{
  padding:4px 12px;border-radius:20px;border:1px solid var(--line);font-size:12px;
  cursor:pointer;background:#140a0c;color:#c9b79c;font-family:inherit;transition:.15s;
}
.pill:hover{border-color:rgba(212,175,55,.45);color:var(--gold-l)}
.pill.on{background:linear-gradient(180deg,#f2d675,#c9a227);color:#2a1a00;border-color:#8a6f1e;font-weight:700}

/* ============ 工具类 ============ */
.row{display:flex;gap:14px;flex-wrap:wrap}
.col{flex:1;min-width:280px}
.mt8{margin-top:8px}.mt14{margin-top:14px}.mt20{margin-top:20px}
.muted{color:var(--text2)}
.small{font-size:13px}
.center{text-align:center}
.hide{display:none!important}
.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,Consolas,monospace}

/* ============ 开奖大卡（彩种详情页顶部） ============ */
.draw-card{border-color:rgba(212,175,55,.30);box-shadow:0 8px 30px rgba(0,0,0,.45)}
.draw-card .draw-b{padding:14px 14px 16px}

.draw-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.draw-cd .lbl{display:block;font-size:12px;color:var(--text2);margin-bottom:6px;letter-spacing:.5px}
/* 倒计时：三个等宽方块 + 等宽数字，冒号居中 */
.draw-cd .cd{gap:3px;font-size:15px;margin-bottom:0}
.draw-cd .cd .num{
  display:inline-grid;place-items:center;
  min-width:40px;height:40px;padding:0;
  font-size:21px;font-weight:800;line-height:1;
  background:rgba(212,175,55,.09);
  border:1px solid rgba(212,175,55,.34);
  border-radius:7px;
  font-variant-numeric:tabular-nums;
}
.draw-cd .cd>span:not(.num){
  font-size:19px;font-weight:800;color:var(--gold);opacity:.65;
  padding:0 1px;
}

.hist-btn{
  flex:0 0 auto;font-size:12px;color:var(--gold-l);
  border:1px solid rgba(212,175,55,.45);border-radius:15px;
  padding:5px 11px;white-space:nowrap;background:rgba(212,175,55,.08);
  transition:.18s;
}
.hist-btn:hover{background:rgba(212,175,55,.18);border-color:var(--gold)}

.draw-period{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.draw-period b{font-size:20px;color:var(--gold-l);letter-spacing:.5px}
.draw-period span{font-size:12px;color:var(--text3)}

/* 七个球正好占满一行（内层由 ballsHTML 生成 .balls） */
.draw-balls{max-width:640px}
.draw-balls .balls{
  display:flex;flex-wrap:nowrap;align-items:flex-start;
  gap:clamp(3px,1.2vw,10px);width:100%;
}
.draw-balls .ball-cell{flex:1 1 0;min-width:0;max-width:72px}
.draw-balls .ball{
  width:100%;height:auto;aspect-ratio:1;border-radius:50%;
  font-size:clamp(15px,4.9vw,26px);
}
.draw-balls .ball-z{font-size:clamp(13px,3.4vw,16px);margin-top:6px;letter-spacing:.5px;font-weight:600}
.draw-balls .ball-sep{
  flex:0 0 auto;align-self:center;
  margin-top:clamp(8px,2.6vw,18px);
  font-size:clamp(11px,2.8vw,16px);padding:0 1px;
}

.draw-meta{margin-top:14px;font-size:clamp(12px,3.3vw,14px);color:#d6c8b2;line-height:1.75}
.draw-meta b{color:var(--gold-l);font-weight:700}

@media(max-width:720px){
  .draw-card .draw-b{padding:12px 12px 14px}
  .draw-cd .cd .num{font-size:20px;min-width:38px;height:38px}
  .draw-period b{font-size:19px}
  .draw-balls{gap:3px}
}
/* ============ 响应式 ============ */
@media(max-width:900px){
  .lots{grid-template-columns:1fr}
  header.site .wrap{height:auto;padding:10px 0;flex-wrap:wrap;gap:10px}
  nav.main{margin-left:0;width:100%;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  nav.main::-webkit-scrollbar{display:none}
  nav.main a{padding:7px 12px;font-size:14px;white-space:nowrap}
  .hero{padding:20px;flex-direction:column;align-items:flex-start}
  .hero .hr{align-items:flex-start}
  .logo .txt b{font-size:17px}
  /* 两栏布局改单栏（内联 flex 用 !important 覆盖） */
  .row>.col{flex:1 1 100%!important;min-width:0!important;width:100%}
}

/* ---- 手机 ---- */
@media(max-width:720px){
  html{-webkit-text-size-adjust:100%}
  .wrap{padding:0 10px}
  .topbar{font-size:11px;padding:5px 0}
  header.site .wrap{padding:8px 0}
  .logo .mark{width:34px;height:34px;font-size:17px}
  .logo .txt b{font-size:16px}
  .logo .txt span{font-size:9px}

  .card{border-radius:10px}
  .card-h{padding:11px 12px}
  .card-h h2,.card-h h3{font-size:15px}
  .card-b{padding:12px}

  .lot-h{padding:11px 12px 6px}
  .lot-b{padding:2px 12px 12px}
  .lot-h .name{font-size:15px}
  .lot-actions .btn{padding:8px 0;font-size:12px}

  /* 球整体小一号，避免撑破卡片 */
  .ball{width:33px;height:33px;font-size:14px}
  .ball.sm{width:26px;height:26px;font-size:12px}
  .ball.lg{width:42px;height:42px;font-size:17px}
  .ball-z{font-size:9px}
  .balls{gap:5px}
  .balls-z{gap:4px}
  .balls-z .ball-sep{margin-top:9px;font-size:11px}
  .ball-sep{font-size:13px}

  .cd{gap:2px;font-size:12px;flex-wrap:wrap}
  .cd .num{font-size:15px;min-width:26px}
  .meta{gap:8px;font-size:10px}

  .mat{padding:13px 14px}
  .mat-list{gap:9px}

  .pills{gap:6px}
  .pill{padding:4px 9px;font-size:11px}

  .stat .n{font-size:20px}
  .stat .l{font-size:10px}

  .shaking{gap:6px}
  .shaking i{width:28px;height:28px;font-size:10px}
  .shake-balls .ball.ph{width:33px;height:33px;font-size:13px}
}

/* ---- 小屏手机 ---- */
@media(max-width:480px){
  .ball{width:29px;height:29px;font-size:12px}
  .ball.lg{width:37px;height:37px;font-size:15px}
  .ball-z{font-size:8px}
  .balls{gap:4px}
  .balls-xs .ball{width:25px;height:25px;flex:0 0 25px;font-size:11px;line-height:25px}
  .balls-xs .ball.special{width:26px;height:26px;flex:0 0 26px;line-height:26px}
  .shake-balls .ball.ph{width:29px;height:29px;font-size:12px}
  .lots{gap:10px}
  .cd .num{font-size:14px;min-width:23px}
  .btn{padding:9px 13px;font-size:13px}
  .table-wrap{margin:0 -12px;padding:0 12px}
}
