/* =====================================================
   王者荣耀 · 卡牌对战 · 赛博朋克竖屏样式
   ===================================================== */
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.glory-body{margin:0;padding:0;background:#03050d;color:#e0e7ff;font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}
button{cursor:pointer;font:inherit;border:0}
button:focus,input:focus{outline:0}

.glory-root{position:relative;min-height:100vh;color:#e0e7ff}

/* === 背景 === */
.glory-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:radial-gradient(ellipse at 50% 0%,rgba(76,29,149,.55),transparent 55%),
             linear-gradient(180deg,#020417 0%,#0a0a2a 35%,#050415 70%,#02030d 100%)}
.glory-bg-grid{position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(56,189,248,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(168,85,247,.05) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:radial-gradient(ellipse at center,#000 30%,transparent 80%)}
.glory-bg-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;mix-blend-mode:screen}
.glow-blue{width:380px;height:380px;left:-110px;top:120px;background:radial-gradient(circle,#3b82f6,transparent 70%)}
.glow-purple{width:420px;height:420px;right:-130px;top:50%;background:radial-gradient(circle,#a855f7,transparent 70%)}
.glow-cyan{width:300px;height:300px;left:30%;bottom:-60px;background:radial-gradient(circle,#22d3ee,transparent 70%)}
.glory-bg-scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 49%,rgba(56,189,248,.08) 50%,transparent 51%);background-size:100% 8px;animation:gloryScan 6s linear infinite;mix-blend-mode:overlay;opacity:.5}
@keyframes gloryScan{0%{background-position:0 0}100%{background-position:0 100vh}}

/* === Shell === */
.glory-shell{position:relative;z-index:2;max-width:480px;margin:0 auto;padding:14px 14px 30px;display:flex;flex-direction:column;gap:12px}

/* === 顶部信息条 === */
.glory-topbar{display:flex;align-items:center;gap:12px;padding-top:6px}
.glory-back{width:34px;height:34px;border-radius:50%;background:rgba(168,85,247,.16);color:#c4b5fd;font-size:24px;border:1px solid rgba(168,85,247,.32);display:flex;align-items:center;justify-content:center;line-height:1}
.glory-back:hover{background:rgba(168,85,247,.32);color:#fff}
.glory-title-block{flex:1;text-align:center}
.glory-game-title{font-size:20px;font-weight:900;letter-spacing:7px;background:linear-gradient(90deg,#22d3ee,#a855f7,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 30px rgba(168,85,247,.5);animation:gloryTitleShine 3s linear infinite}
@keyframes gloryTitleShine{0%{filter:hue-rotate(0)}100%{filter:hue-rotate(360deg)}}
.glory-game-sub{font-size:9px;color:rgba(125,211,252,.55);letter-spacing:5px;font-weight:600;margin-top:2px}
.glory-wallet{display:flex;align-items:center;gap:5px;background:linear-gradient(135deg,rgba(34,211,238,.16),rgba(168,85,247,.12));border:1px solid rgba(34,211,238,.34);padding:5px 10px;border-radius:11px;font-size:13px;font-weight:900;color:#7dd3fc;box-shadow:0 4px 16px rgba(34,211,238,.18)}
.glory-wallet b{color:#7dd3fc}

/* === 倒计时 / 期号 / 奖池 === */
.glory-info-bar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.glory-info-cell{position:relative;padding:10px 8px;border-radius:14px;background:linear-gradient(180deg,rgba(15,23,55,.85),rgba(8,12,32,.92));border:1px solid rgba(56,189,248,.24);text-align:center;overflow:hidden}
.glory-info-cell::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(56,189,248,.06) 50%,transparent 60%);background-size:200% 200%;animation:gloryShine 6s linear infinite;pointer-events:none}
@keyframes gloryShine{0%{background-position:0 0}100%{background-position:200% 200%}}
.glory-cell-label{font-size:10px;color:rgba(165,180,252,.7);letter-spacing:1px;margin-bottom:3px}
.glory-cell-value{font-size:18px;font-weight:900;color:#7dd3fc;text-shadow:0 0 12px rgba(34,211,238,.4);font-family:"DIN Alternate","Helvetica Neue",sans-serif;letter-spacing:1px}
.glory-cell-no{font-size:13px;letter-spacing:0;word-break:break-all;line-height:1.3}
.glory-countdown.warning .glory-cell-value{color:#fbbf24;text-shadow:0 0 18px rgba(251,191,36,.6);animation:gloryWarn 1s ease-in-out infinite}
@keyframes gloryWarn{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.glory-countdown.closed .glory-cell-value{color:#f87171}
.glory-pool .glory-cell-value{color:#fbbf24;text-shadow:0 0 12px rgba(251,191,36,.4)}

/* === 主播条 === */
.glory-anchor-bar{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;background:linear-gradient(135deg,rgba(168,85,247,.18),rgba(34,211,238,.06));border:1px solid rgba(168,85,247,.32)}
.glory-anchor-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.glory-anchor-avatar{position:relative;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#a855f7);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;box-shadow:0 4px 14px rgba(168,85,247,.5),inset 0 0 0 2px rgba(255,255,255,.15)}
.glory-live-dot{position:absolute;right:-2px;bottom:-2px;width:14px;height:14px;border-radius:50%;background:#ef4444;border:2px solid #0a0a2a;box-shadow:0 0 8px #ef4444;animation:gloryLive 1.4s ease-in-out infinite}
@keyframes gloryLive{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}
.glory-anchor-text{flex:1;min-width:0}
.glory-anchor-name{font-size:14px;font-weight:900;color:#fff;line-height:1}
.glory-anchor-id{font-size:10px;color:rgba(125,211,252,.7);margin-top:3px;letter-spacing:.5px}
.glory-tip-btn{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#ec4899,#dc2626);color:#fff;padding:8px 14px;border-radius:11px;font-size:13px;font-weight:900;box-shadow:0 4px 16px rgba(236,72,153,.4);transition:all .2s}
.glory-tip-btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(236,72,153,.55)}
.glory-tip-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.glory-tip-btn span{font-size:18px}
.glory-tip-btn i{font-style:normal;line-height:1}
.glory-tip-btn small{display:block;font-size:9px;font-weight:600;opacity:.85;margin-top:2px}

/* === 历史 K 线 === */
.glory-history{padding:8px 10px;border-radius:12px;background:linear-gradient(180deg,rgba(15,23,55,.8),rgba(10,15,40,.6));border:1px solid rgba(56,189,248,.18)}
.glory-history-title{font-size:10px;color:rgba(165,180,252,.65);letter-spacing:2px;margin-bottom:6px}
.glory-history-track{display:flex;gap:5px;align-items:center;overflow-x:auto;scrollbar-width:none}
.glory-history-track::-webkit-scrollbar{display:none}
.glory-h-dot{flex-shrink:0;width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.12)}
.glory-h-dot.h-anchor{background:linear-gradient(135deg,#dc2626,#7f1d1d)}
.glory-h-dot.h-player{background:linear-gradient(135deg,#16a34a,#14532d)}
.glory-h-dot.h-draw{background:linear-gradient(135deg,#f59e0b,#7c2d12)}
.glory-h-empty{font-size:11px;color:rgba(165,180,252,.4);padding:8px 4px}

/* === 核心对战 === */
.glory-battle{position:relative;display:grid;grid-template-columns:1fr 76px 1fr;gap:10px;align-items:end;padding:14px 4px 26px}
.glory-side{display:flex;flex-direction:column;align-items:center;gap:8px;perspective:1100px}
.glory-side-tag{font-size:11px;color:rgba(125,211,252,.7);letter-spacing:5px;font-weight:800}
.glory-side-anchor .glory-side-tag{color:rgba(248,113,113,.85)}
.glory-side-player .glory-side-tag{color:rgba(74,222,128,.85)}

/* === 盲盒外壳（替代原直接翻牌区） === */
.glory-mbox{position:relative;width:140px;height:178px;display:flex;align-items:flex-end;justify-content:center;filter:drop-shadow(0 12px 30px rgba(0,0,0,.55))}
.glory-mbox-body{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:128px;height:96px;border-radius:14px;background:
  radial-gradient(ellipse at 50% 0%,rgba(168,85,247,.55),transparent 70%),
  linear-gradient(180deg,#312e81 0%,#1e1b4b 60%,#0c0a30 100%);
  border:2px solid rgba(168,85,247,.45);
  box-shadow:0 8px 26px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.05),inset 0 0 24px rgba(168,85,247,.25);
  overflow:visible;z-index:2}
.mbox-player .glory-mbox-body{background:
  radial-gradient(ellipse at 50% 0%,rgba(34,211,238,.5),transparent 70%),
  linear-gradient(180deg,#0c4a6e 0%,#1e40af 60%,#0a0f2a 100%);
  border-color:rgba(34,211,238,.5)}
.glory-mbox-front{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:rgba(251,191,36,.85);font-size:26px;text-shadow:0 0 14px rgba(251,191,36,.6)}
.mbox-player .glory-mbox-front{color:rgba(125,211,252,.95);text-shadow:0 0 14px rgba(34,211,238,.7)}
.glory-mbox-line{position:absolute;left:8%;right:8%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}
.glory-mbox-emblem{font-size:34px;margin-top:-4px}
.glory-mbox-light{position:absolute;left:50%;top:0;transform:translate(-50%,-100%);width:18px;height:0;background:linear-gradient(180deg,rgba(251,191,36,.92),rgba(251,191,36,0));filter:blur(2px);opacity:0;pointer-events:none}
.mbox-player .glory-mbox-light{background:linear-gradient(180deg,rgba(125,211,252,.95),rgba(125,211,252,0))}
.glory-mbox-rays{position:absolute;left:50%;top:6px;width:0;height:0;pointer-events:none}
.glory-mbox-rays span{position:absolute;left:0;top:0;width:6px;height:80px;background:linear-gradient(180deg,rgba(251,191,36,.85),rgba(251,191,36,0));transform-origin:50% 0;border-radius:3px;animation:gloryRayBeam 1s ease-out forwards;mix-blend-mode:screen}
.mbox-player .glory-mbox-rays span{background:linear-gradient(180deg,rgba(125,211,252,.95),rgba(125,211,252,0))}
@keyframes gloryRayBeam{0%{transform:translate(-50%,-50%) rotate(var(--ang,0deg)) scaleY(.3);opacity:0}30%{opacity:1}100%{transform:translate(-50%,-50%) rotate(var(--ang,0deg)) scaleY(1.4);opacity:0}}

/* 盖子（默认贴在盒口） */
.glory-mbox-lid{position:absolute;left:50%;bottom:96px;transform:translateX(-50%);width:138px;height:30px;z-index:4;transition:transform .55s cubic-bezier(.6,-.4,.4,1.6)}
.glory-mbox-lid-top{position:absolute;left:0;right:0;top:0;height:18px;border-top-left-radius:10px;border-top-right-radius:10px;background:linear-gradient(180deg,#a855f7,#581c87);border:2px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;box-shadow:0 -4px 18px rgba(168,85,247,.55),inset 0 0 0 1px rgba(255,255,255,.18)}
.mbox-player .glory-mbox-lid-top{background:linear-gradient(180deg,#22d3ee,#0c4a6e);box-shadow:0 -4px 18px rgba(34,211,238,.55),inset 0 0 0 1px rgba(255,255,255,.2)}
.glory-mbox-lock{font-size:13px;line-height:1;filter:drop-shadow(0 0 6px rgba(251,191,36,.8))}
.glory-mbox-lid-front{position:absolute;left:6px;right:6px;top:18px;height:12px;background:linear-gradient(180deg,rgba(168,85,247,.7),rgba(15,23,55,.6));border-bottom-left-radius:8px;border-bottom-right-radius:8px;border:1px solid rgba(255,255,255,.08)}
.mbox-player .glory-mbox-lid-front{background:linear-gradient(180deg,rgba(34,211,238,.7),rgba(10,15,40,.6))}

/* 卡牌默认隐藏在盒里（z 在盖子下） */
.glory-card{position:absolute;left:50%;bottom:24px;transform:translate(-50%,30%) scale(.55);width:130px;aspect-ratio:5/7;cursor:default;z-index:3;opacity:0;transition:transform .65s cubic-bezier(.34,1.56,.64,1),opacity .35s ease}
.glory-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,1.4,.6,1)}
.glory-card.flying{opacity:1;transform:translate(-50%,-72%) scale(.95);animation:gloryCardFloat 1.3s ease-in-out infinite alternate}
.glory-card.landing{opacity:1;transform:translate(-50%,-72%) scale(1);animation:none}
@keyframes gloryCardFloat{from{transform:translate(-50%,-72%) scale(.95)}to{transform:translate(-50%,-78%) scale(1.03)}}
.glory-card.revealed .glory-card-inner{transform:rotateY(180deg)}

/* 盒身/盖子按 phase 切换 */
.glory-mbox.phase-shaking .glory-mbox-body{animation:gloryMboxShake .42s linear 2}
.glory-mbox.phase-shaking .glory-mbox-lid{animation:gloryMboxLidShake .42s linear 2}
@keyframes gloryMboxShake{0%,100%{transform:translateX(-50%) translateX(0) rotate(0)}25%{transform:translateX(-50%) translateX(-3px) rotate(-1.5deg)}75%{transform:translateX(-50%) translateX(3px) rotate(1.5deg)}}
@keyframes gloryMboxLidShake{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-2px)}}
.glory-mbox.phase-opening .glory-mbox-lid,
.glory-mbox.phase-rising  .glory-mbox-lid,
.glory-mbox.phase-landing .glory-mbox-lid,
.glory-mbox.phase-revealed .glory-mbox-lid{transform:translateX(-50%) translateY(-90px) rotate(-22deg);opacity:.85}
.glory-mbox.phase-opening .glory-mbox-light,
.glory-mbox.phase-rising  .glory-mbox-light{height:200px;opacity:.95;animation:gloryMboxBeam .9s ease-out}
@keyframes gloryMboxBeam{0%{height:0;opacity:0}30%{opacity:1}100%{opacity:.95}}

/* 爆炸粒子（盖子崩开瞬间向四周飞出） */
.glory-mbox-burst{position:absolute;left:50%;bottom:90px;width:0;height:0;pointer-events:none;z-index:5}
.glory-mbox-burst span{position:absolute;left:0;top:0;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle,#fde68a,rgba(251,191,36,0) 70%);transform:translate(-50%,-50%);animation:gloryBurst .8s cubic-bezier(.2,.8,.4,1) forwards;mix-blend-mode:screen}
.mbox-player .glory-mbox-burst span{background:radial-gradient(circle,#bae6fd,rgba(34,211,238,0) 70%)}
@keyframes gloryBurst{0%{transform:translate(-50%,-50%) rotate(var(--ang,0deg)) translateY(0) scale(.6);opacity:1}100%{transform:translate(-50%,-50%) rotate(var(--ang,0deg)) translateY(calc(-1 * var(--dist,80px))) scale(1);opacity:0}}
.glory-card-back,.glory-card-face{position:absolute;inset:0;border-radius:12px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;align-items:center;justify-content:center;overflow:hidden}
.glory-card-back{background:
  radial-gradient(circle at 50% 30%,rgba(168,85,247,.5),transparent 60%),
  linear-gradient(135deg,#1e1b4b 0%,#312e81 50%,#0c0a30 100%);
  border:2px solid rgba(168,85,247,.4);
  box-shadow:0 8px 26px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.05),inset 0 0 30px rgba(168,85,247,.25)}
.glory-card-back::before,.glory-card-back::after{content:'';position:absolute;inset:8px;border:1px solid rgba(168,85,247,.4);border-radius:8px;pointer-events:none}
.glory-card-back::after{inset:14px;border-color:rgba(34,211,238,.3)}
.glory-card-back-icon{font-size:38px;color:rgba(251,191,36,.7);filter:drop-shadow(0 0 14px rgba(251,191,36,.6))}
.glory-side-player .glory-card-back{background:radial-gradient(circle at 50% 30%,rgba(34,211,238,.5),transparent 60%),linear-gradient(135deg,#0c4a6e 0%,#1e40af 50%,#0a0f2a 100%);border-color:rgba(34,211,238,.45)}
.glory-side-player .glory-card-back::before{border-color:rgba(34,211,238,.45)}
.glory-side-player .glory-card-back::after{border-color:rgba(168,85,247,.35)}
.glory-side-player .glory-card-back-icon{color:rgba(125,211,252,.85);filter:drop-shadow(0 0 14px rgba(34,211,238,.7))}

.glory-card-face{transform:rotateY(180deg);background:linear-gradient(160deg,#fff 0%,#e0e7ff 100%);color:#1e1b4b;font-weight:900;border:2px solid rgba(255,255,255,.6);box-shadow:0 8px 30px rgba(0,0,0,.55)}
.glory-card-face.color-bg-4{background:linear-gradient(160deg,#fef9c3 0%,#fbbf24 60%,#d97706 100%);color:#7c2d12;border-color:#fde68a;box-shadow:0 8px 30px rgba(217,119,6,.6),inset 0 0 0 2px rgba(255,255,255,.4)}
.glory-card-face.color-bg-3{background:linear-gradient(160deg,#fee2e2 0%,#ef4444 60%,#7f1d1d 100%);color:#fff;border-color:#fecaca;box-shadow:0 8px 30px rgba(239,68,68,.55),inset 0 0 0 2px rgba(255,255,255,.25)}
.glory-card-face.color-bg-2{background:linear-gradient(160deg,#ede9fe 0%,#a855f7 60%,#581c87 100%);color:#fff;border-color:#ddd6fe;box-shadow:0 8px 30px rgba(168,85,247,.55),inset 0 0 0 2px rgba(255,255,255,.25)}
.glory-card-face.color-bg-1{background:linear-gradient(160deg,#dbeafe 0%,#3b82f6 60%,#1e3a8a 100%);color:#fff;border-color:#bfdbfe;box-shadow:0 8px 30px rgba(59,130,246,.55),inset 0 0 0 2px rgba(255,255,255,.25)}
.glory-card-num{font-size:54px;line-height:1;letter-spacing:-2px;font-family:"DIN Alternate","Helvetica Neue",sans-serif;text-shadow:0 4px 12px rgba(0,0,0,.18)}
.glory-card-color-name{position:absolute;bottom:14px;font-size:13px;letter-spacing:6px;font-weight:800;opacity:.85}
.glory-card-corner{position:absolute;font-size:14px;line-height:1;font-weight:900}
.glory-card-corner.tl{top:8px;left:10px}
.glory-card-corner.br{bottom:8px;right:10px;transform:rotate(180deg)}
.glory-card-corner small{display:block;font-size:9px;font-weight:700;opacity:.85;margin-top:1px}
.glory-card.is-win .glory-card-face{box-shadow:0 0 32px rgba(34,197,94,.7),0 8px 30px rgba(34,197,94,.55),inset 0 0 0 2px rgba(74,222,128,.7);animation:gloryWinPulse 1.2s ease-in-out infinite}
@keyframes gloryWinPulse{0%,100%{transform:rotateY(180deg) scale(1)}50%{transform:rotateY(180deg) scale(1.04)}}
.glory-card.is-lose .glory-card-face{filter:grayscale(.6) brightness(.7)}
.glory-card.is-draw .glory-card-face{box-shadow:0 0 28px rgba(251,191,36,.55),0 8px 30px rgba(251,191,36,.4),inset 0 0 0 2px rgba(251,191,36,.6)}

/* === VS 中央 === */
.glory-vs{position:relative;width:76px;height:76px;display:flex;align-items:center;justify-content:center;margin-top:24px}
.glory-vs-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#22d3ee,#a855f7,#ec4899,#22d3ee);animation:gloryVsSpin 4s linear infinite;-webkit-mask:radial-gradient(transparent 60%,#000 62%);mask:radial-gradient(transparent 60%,#000 62%)}
@keyframes gloryVsSpin{to{transform:rotate(360deg)}}
.glory-vs-text{position:relative;font-size:24px;font-weight:900;letter-spacing:1px;color:#fff;text-shadow:0 0 16px rgba(168,85,247,.85),0 0 30px rgba(34,211,238,.6);font-family:"DIN Alternate","Helvetica Neue",sans-serif;z-index:2}
.glory-vs-text.flash{animation:gloryGoFlash .8s ease-out;color:#fbbf24;text-shadow:0 0 24px rgba(251,191,36,.95)}
@keyframes gloryGoFlash{0%{transform:scale(.5);opacity:0}40%{transform:scale(1.4);opacity:1}100%{transform:scale(1);opacity:1}}
.glory-vs-sparks{position:absolute;inset:0}
.glory-vs-sparks span{position:absolute;left:50%;top:50%;width:3px;height:14px;background:linear-gradient(180deg,#fde047,transparent);transform-origin:50% 0;animation:glorySpark .9s ease-out forwards}
@keyframes glorySpark{0%{transform:translate(-50%,0) rotate(var(--ang)) scaleY(.2);opacity:1}100%{transform:translate(-50%,0) rotate(var(--ang)) translateY(60px) scaleY(1.2);opacity:0}}

/* 结果横幅 */
.glory-result-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;border:1px solid;margin-top:-6px}
.glory-result-banner.rb-anchor,.glory-result-banner.rb-player{background:linear-gradient(90deg,rgba(34,197,94,.15),rgba(34,197,94,.04));border-color:rgba(34,197,94,.45)}
.glory-result-banner.rb-draw{background:linear-gradient(90deg,rgba(251,191,36,.18),rgba(251,191,36,.05));border-color:rgba(251,191,36,.45)}
.glory-result-icon{font-size:28px}
.glory-result-text{flex:1}
.glory-result-title{font-size:14px;font-weight:900;color:#fff}
.glory-result-amount{font-size:18px;font-weight:900;color:#22c55e;letter-spacing:1px;margin-top:2px}
.glory-result-amount.lose{color:#f87171}
.g-pop-enter-active,.g-pop-leave-active{transition:all .35s cubic-bezier(.4,1.4,.5,1)}
.g-pop-enter,.g-pop-leave-to{opacity:0;transform:scale(.85)}

/* === 投注按钮 === */
.glory-bet-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.glory-bet-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 8px;border-radius:13px;background:linear-gradient(180deg,rgba(15,23,55,.92),rgba(8,12,32,.95));border:1px solid rgba(56,189,248,.22);color:#e0e7ff;transition:all .22s;overflow:hidden;min-height:96px}
.glory-bet-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 30%,rgba(56,189,248,.07) 50%,transparent 70%);background-size:200% 200%;animation:gloryShine 4s linear infinite;pointer-events:none}
.glory-bet-btn.bt-anchor{border-color:rgba(248,113,113,.4)}
.glory-bet-btn.bt-anchor .glory-bet-icon{color:#fca5a5}
.glory-bet-btn.bt-player{border-color:rgba(74,222,128,.4)}
.glory-bet-btn.bt-player .glory-bet-icon{color:#86efac}
.glory-bet-btn.bt-draw{border-color:rgba(251,191,36,.45)}
.glory-bet-btn.bt-draw .glory-bet-icon{color:#fcd34d}
.glory-bet-btn.bt-color{border-color:rgba(168,85,247,.45)}
.glory-bet-btn.bt-color .glory-bet-icon{color:#d8b4fe}
.glory-bet-btn.bt-number{border-color:rgba(34,211,238,.45)}
.glory-bet-btn.bt-number .glory-bet-icon{color:#67e8f9}
.glory-bet-btn:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 6px 22px rgba(56,189,248,.25);background:linear-gradient(180deg,rgba(20,30,70,.95),rgba(10,15,40,.98))}
.glory-bet-btn.picked{box-shadow:0 0 0 2px rgba(34,211,238,.55),0 8px 24px rgba(34,211,238,.35);background:linear-gradient(180deg,rgba(34,211,238,.16),rgba(8,12,32,.95))}
.glory-bet-btn.disabled{opacity:.45;cursor:not-allowed}
.glory-bet-icon{font-size:22px;line-height:1;filter:drop-shadow(0 0 6px currentColor)}
.glory-bet-name{font-size:13px;font-weight:900;color:#fff;letter-spacing:1px;line-height:1}
.glory-bet-rate{font-size:9px;color:rgba(125,211,252,.7);letter-spacing:.5px}
.glory-bet-status{font-size:11px;font-weight:800;color:#fbbf24;line-height:1;margin-top:2px}
.glory-bet-status .empty{color:rgba(125,211,252,.45);font-size:9px;font-weight:600;letter-spacing:1px}

/* 已选提示 */
.glory-picked-hint{padding:8px 12px;border-radius:10px;background:linear-gradient(90deg,rgba(34,211,238,.18),rgba(168,85,247,.1));border:1px dashed rgba(34,211,238,.4);font-size:12px;color:#7dd3fc;text-align:center;font-weight:700}

/* === 金额按钮 === */
.glory-amount-row{display:grid;grid-template-columns:repeat(3,1fr) 60px;gap:8px}
.glory-amt-btn{position:relative;display:flex;align-items:baseline;justify-content:center;gap:1px;padding:14px 6px;border-radius:14px;font-weight:900;color:#fff;background:linear-gradient(180deg,#1e293b 0%,#0f172a 100%);border:1px solid rgba(148,163,184,.25);overflow:hidden;transition:all .2s}
.glory-amt-btn span{font-size:11px;opacity:.8}
.glory-amt-btn b{font-size:18px;letter-spacing:1px;font-family:"DIN Alternate","Helvetica Neue",sans-serif}
.glory-amt-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:200% 200%;animation:gloryShine 3s linear infinite;pointer-events:none}
.glory-amt-btn.amt-500{background:linear-gradient(180deg,#475569 0%,#1e293b 100%);border-color:rgba(203,213,225,.35);color:#e2e8f0}
.glory-amt-btn.amt-2000{background:linear-gradient(180deg,#0e7490 0%,#164e63 100%);border-color:rgba(34,211,238,.45);color:#cffafe;box-shadow:0 4px 18px rgba(34,211,238,.25)}
.glory-amt-btn.amt-5000{background:linear-gradient(180deg,#9333ea 0%,#581c87 100%);border-color:rgba(216,180,254,.5);color:#f3e8ff;box-shadow:0 4px 18px rgba(168,85,247,.4)}
.glory-amt-btn:hover:not(.disabled){transform:translateY(-2px) scale(1.02)}
.glory-amt-btn:active:not(.disabled){transform:translateY(0) scale(.98)}
.glory-amt-btn.disabled{opacity:.4;cursor:not-allowed;transform:none}
.glory-amt-rules{padding:14px 6px;border-radius:14px;background:linear-gradient(180deg,rgba(168,85,247,.2),rgba(168,85,247,.05));border:1px solid rgba(168,85,247,.4);color:#d8b4fe;font-weight:900;font-size:12px;letter-spacing:1px;transition:all .2s}
.glory-amt-rules:hover{background:linear-gradient(180deg,rgba(168,85,247,.35),rgba(168,85,247,.1));color:#fff}

/* === 我的本场投注 === */
.glory-my-bets{padding:8px 12px;border-radius:11px;background:rgba(15,23,55,.6);border:1px solid rgba(56,189,248,.18)}
.glory-my-title{font-size:10px;color:rgba(165,180,252,.7);letter-spacing:1px;margin-bottom:5px}
.glory-my-list{display:flex;flex-wrap:wrap;gap:5px}
.glory-my-tag{padding:3px 9px;border-radius:6px;background:rgba(34,211,238,.16);border:1px solid rgba(34,211,238,.3);font-size:11px;color:#7dd3fc;font-weight:700}

/* === 公平验证条 === */
.glory-fair-bar{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:11px;background:rgba(8,12,32,.7);border:1px solid rgba(34,211,238,.18);font-size:11px}
.glory-fair-bar>span:first-child{font-size:14px}
.glory-fair-text{flex:1;color:rgba(165,180,252,.65);min-width:0;display:flex;gap:5px;flex-wrap:wrap;align-items:baseline}
.glory-fair-text code{color:#7dd3fc;font-family:Consolas,Menlo,monospace;font-size:10px;word-break:break-all}
.glory-fair-verify{padding:5px 12px;border-radius:7px;background:rgba(168,85,247,.22);color:#d8b4fe;border:1px solid rgba(168,85,247,.35);font-size:11px;font-weight:800;letter-spacing:1px}
.glory-fair-verify:disabled{opacity:.4;cursor:not-allowed}

/* === 弹窗 === */
.glory-modal-mask{position:fixed;inset:0;background:rgba(2,6,23,.85);backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;z-index:90}
.glory-modal{position:relative;width:100%;max-width:480px;max-height:80vh;overflow:auto;padding:20px 18px 26px;border-top-left-radius:24px;border-top-right-radius:24px;background:linear-gradient(180deg,#1e1b4b 0%,#0f172a 100%);border:1px solid rgba(168,85,247,.32);box-shadow:0 -10px 40px rgba(0,0,0,.6)}
.glory-modal h3{margin:0 0 14px;font-size:17px;color:#fff;letter-spacing:1px}
.glory-modal-close{position:absolute;top:10px;right:14px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.08);color:#c4b5fd;font-size:20px;line-height:1;border:1px solid rgba(255,255,255,.12)}
.glory-rules-content{font-size:13px;line-height:1.7;color:#c7d2fe}
.glory-rules-content h4{margin:14px 0 6px;font-size:13px;color:#fbbf24;letter-spacing:1px}
.glory-rules-content p,.glory-rules-content ul{margin:0;padding-left:0}
.glory-rules-content ul{list-style:none}
.glory-rules-content ul li{padding:6px 10px;border-radius:8px;background:rgba(56,189,248,.07);margin-bottom:4px;border-left:3px solid rgba(34,211,238,.5)}
.glory-rules-content b{color:#fff}
.glory-rules-content .r-gold{color:#fbbf24}
.glory-rules-content .r-red{color:#f87171}
.glory-rules-content .r-purple{color:#c084fc}
.glory-rules-content .r-blue{color:#60a5fa}
.glory-rules-content code{background:rgba(168,85,247,.16);color:#d8b4fe;padding:1px 6px;border-radius:4px;font-size:11px}

.glory-verify{font-size:13px;color:#c7d2fe}
.glory-verify-row{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-bottom:1px dashed rgba(168,85,247,.18)}
.glory-verify-row label{flex:0 0 80px;color:rgba(165,180,252,.7);font-size:12px}
.glory-verify-row code{flex:1;color:#7dd3fc;font-family:Consolas,Menlo,monospace;font-size:11px;word-break:break-all}
.glory-verify-row code.break{font-size:10px;line-height:1.5}
.glory-verify-tip{margin-top:12px;font-size:12px;color:rgba(125,211,252,.65)}

.g-fade-enter-active,.g-fade-leave-active{transition:opacity .25s ease}
.g-fade-enter,.g-fade-leave-to{opacity:0}

/* Toast */
.glory-toast{position:fixed;left:50%;top:24%;transform:translateX(-50%);padding:10px 18px;border-radius:11px;background:linear-gradient(135deg,#22c55e,#15803d);color:#fff;font-weight:800;font-size:13px;letter-spacing:1px;box-shadow:0 8px 28px rgba(34,197,94,.45);z-index:120;animation:gloryToastIn .25s ease-out}
.glory-toast.error{background:linear-gradient(135deg,#dc2626,#7f1d1d);box-shadow:0 8px 28px rgba(220,38,38,.45)}
@keyframes gloryToastIn{from{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translateX(-50%)}}

@media (max-width:360px){
  .glory-card{width:108px}
  .glory-card-num{font-size:42px}
  .glory-bet-grid{grid-template-columns:repeat(5,1fr);gap:4px}
  .glory-bet-name{font-size:11px}
  .glory-amount-row{grid-template-columns:repeat(3,1fr) 56px}
  .glory-amt-btn b{font-size:16px}
}
