:root{
  --navigation-height:52px;
  --app-shell-safe-top:0px;
  --page-top-safe:env(safe-area-inset-top);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Noto Sans SC",sans-serif;
  color:#f5f7ff;background:#142035;color-scheme:dark;
}
/* On iPhone home-screen launch, the shell owns the status-bar safe area once. */
@media (display-mode: standalone){
  :root{--app-shell-safe-top:env(safe-area-inset-top);--page-top-safe:0px}
}
/* Shared readable surfaces for instructions, result information and controls. */
:root{--ux-panel:#223550;--ux-text:#f1f5f9;--ux-muted:#c3d0e2;--ux-line:#4d637f;--ux-field:#2a415f}
html[data-theme="light"]{color-scheme:light;--ux-panel:#fff;--ux-text:#172033;--ux-muted:#4b5c73;--ux-line:#cbd5e1;--ux-field:#f3f6fb}
.draw-controls{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;padding:12px;margin-bottom:12px;border:1px solid var(--ux-line);border-radius:12px;background:var(--ux-panel);color:var(--ux-text)}
.draw-controls label{display:grid;gap:6px;min-width:0;font-size:12px}
.draw-controls input,.draw-controls select{width:100%;min-width:0;height:38px;padding:6px;border:1px solid var(--ux-line);border-radius:8px;background:var(--ux-field);color:var(--ux-text);font-size:13px}
.draw-controls button,.guide-head button{align-self:end;height:38px;border:1px solid var(--ux-line);border-radius:8px;padding:0 10px;background:var(--ux-field);color:var(--ux-text)}
.draw-controls [role="status"]{grid-column:1/-1;font-size:12px;color:var(--ux-muted)}
html[data-theme] .draw-page .draw-game{background:var(--ux-panel)!important;color:var(--ux-text)!important;border:1px solid var(--ux-line)}
html[data-theme] .draw-title-left b,html[data-theme] .draw-game-title b,html[data-theme] .rs-issue b{color:var(--ux-text)!important}
html[data-theme] .draw-title-left small,html[data-theme] .draw-title-countdown small,html[data-theme] .rs-issue small{color:var(--ux-muted)!important}
html[data-theme] .plan-guide{display:block;border:1px solid var(--ux-line);border-radius:12px;background:var(--ux-panel);color:var(--ux-text);overflow-x:hidden;overflow-y:auto}
.guide-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;position:sticky;top:0;z-index:2;background:var(--ux-panel)}
html[data-theme] .plan-guide .pg-play{border-color:var(--ux-line);padding:12px}
.pg-game h2{margin:0;padding:14px 12px;font-size:16px;line-height:1.4;color:var(--ux-text);background:var(--ux-field);border-top:1px solid var(--ux-line)}
html[data-theme] .plan-guide .pg-h b{color:var(--ux-text)}
html[data-theme] .plan-guide :is(p,small),html[data-theme] .install-guide{color:var(--ux-muted)}
html[data-theme] .plan-guide .pg-h em{color:#fdba74}
html[data-theme="light"] .plan-guide .pg-h em{color:#9a3412}
.plan-guide>.account-button{display:block;margin:12px auto}
.install-guide{padding:10px 0;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.install-guide h3{font-size:14px;color:var(--ux-text);margin:12px 0 4px}
.install-guide ol{padding-left:22px;margin:4px 0 12px}
.support-msg time{display:block;font-size:10px;opacity:.8;margin-top:5px}
@media(max-width:360px){.draw-controls{grid-template-columns:minmax(0,1fr) auto}.draw-controls label{grid-column:1/-1}.draw-controls button{grid-column:2}.pg-h{flex-wrap:wrap}}
*{box-sizing:border-box}
html,body{margin:0;min-width:320px;background:#142035!important}
html[data-theme="light"],html[data-theme="light"] body{background:#f4f8fd!important}
body{min-height:100vh;min-height:100dvh}
button{font:inherit;-webkit-tap-highlight-color:transparent}
.app-shell{width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:auto;background:
  radial-gradient(circle at 20% 0%,rgba(109,140,205,.15),transparent 28%),
  linear-gradient(180deg,#203450 0%,#152238 100%);padding-top:var(--app-shell-safe-top);padding-bottom:calc(var(--navigation-height) + env(safe-area-inset-bottom));overflow-x:clip}
.balance-visibility{
  width:34px!important;height:34px!important;padding:0!important;border-radius:10px!important;
  display:grid!important;place-items:center!important;background:#2c405d!important;
  border:1px solid rgba(93,126,255,.18)!important;color:#dbe5f4!important
}
.balance-visibility svg{
  width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;
  stroke-linecap:round;stroke-linejoin:round
}

main{min-height:0}
.page-inline-balance{
  display:inline-flex!important;align-items:center!important;gap:3px!important;flex:0 0 auto!important;
  height:24px!important;padding:3px 6px!important;margin:0!important;
  border:1px solid rgba(93,126,255,.14)!important;border-radius:8px!important;
  background:rgba(42,62,88,.94)!important;color:#fff!important;box-shadow:none!important;
  font-family:inherit!important;line-height:1!important
}
.page-inline-balance>span{font-size:7.5px!important;color:#9aa7bf!important;font-weight:800!important;white-space:nowrap!important}
.page-inline-balance>b{font-size:10px!important;color:#22c55e!important;font-weight:950!important;white-space:nowrap!important}
.page-inline-balance>svg{width:11px!important;height:11px!important;fill:none!important;stroke:#8ea2c7!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html[data-theme="light"] .page-inline-balance{background:#f8fbff!important;border-color:#cbdced!important;color:#172033!important}
html[data-theme="light"] .page-inline-balance>span{color:#465569!important}
html[data-theme="light"] .page-inline-balance>b{color:#087950!important}
html[data-theme="light"] .page-inline-balance>svg{stroke:#465569!important}
/* Hide the browser document scroll rail on the home screen only; scrolling remains native. */
html:has(#app .home-lobby),html:has(#app .home-lobby) body{scrollbar-width:none}
html:has(#app .home-lobby)::-webkit-scrollbar,html:has(#app .home-lobby) body::-webkit-scrollbar{display:none;width:0;height:0}
.home-lobby{--home-card-gap:18px;padding:calc(10px + var(--page-top-safe)) 12px 0}
.hero-banner{height:154px;border-radius:22px;position:relative;overflow:hidden;background:
  radial-gradient(circle at 80% 18%,rgba(255,89,189,.32),transparent 30%),
  radial-gradient(circle at 18% 80%,rgba(47,104,255,.30),transparent 34%),
  linear-gradient(135deg,#101949 0%,#25134a 52%,#3e102a 100%);border:1px solid rgba(123,140,255,.18);box-shadow:0 18px 34px rgba(0,0,0,.32)}
.hero-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 45%,rgba(255,255,255,.06) 48%,transparent 51%);transform:translateX(-30%)}
.hero-art{position:absolute;border-radius:12px;filter:blur(.2px);opacity:.9}
.hero-art.a1{width:116px;height:116px;right:22px;top:14px;background:conic-gradient(from 40deg,#ff4d8a,#7258ff,#1cc5ff,#ff4d8a);box-shadow:0 0 36px rgba(99,69,255,.3)}
.hero-art.a1:after{content:"";position:absolute;inset:18px;border-radius:12px;background:#0b1030;border:10px solid rgba(255,255,255,.12)}
.hero-art.a2{width:58px;height:58px;right:114px;bottom:-10px;background:linear-gradient(145deg,#00e0ff,#775cff);box-shadow:0 0 25px rgba(0,220,255,.4)}
.hero-copy{position:absolute;left:18px;top:24px;z-index:2;max-width:230px}.hero-copy small{font-size:10px;letter-spacing:2px;color:#a5b5ff;font-weight:900}.hero-copy h1{font-size:27px;margin:8px 0 7px;letter-spacing:-.8px}.hero-copy p{font-size:10px;color:#b5c1df;margin:0}
.hero-dots{position:absolute;left:18px;bottom:15px;display:flex;gap:6px}.hero-dots i{width:6px;height:6px;border-radius:12px;background:#596485}.hero-dots i:first-child{width:18px;border-radius:999px;background:#55a8ff}

.announce-bar{height:42px;margin-top:10px;padding:0 12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;background:linear-gradient(90deg,#283f63,#213553);border:1px solid rgba(72,106,255,.14);border-radius:14px}
.announce-bar b{font-size:11px;color:#dc2626}.announce-bar .announce-track{min-width:0;overflow:hidden;white-space:nowrap}.announce-bar .announce-marquee{display:inline-flex;width:max-content;color:#dc2626;font-size:10px;animation:homeAnnouncement 22s linear infinite}.announce-marquee>span{padding-left:42px}.announce-marquee{padding-right:42px}@keyframes homeAnnouncement{to{transform:translateX(-50%)}}.announce-bar em{font-style:normal;color:#72b4ff;font-size:18px}

.quick-panel{margin-top:10px;background:#243952;border-radius:18px;padding:10px 12px;border:1px solid rgba(105,126,255,.10);overflow:hidden}
.quick-welcome{font-size:10px;color:#8794b4;margin-bottom:9px}
.quick-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.quick-row button{min-width:0;border:0;background:transparent;color:#d8def1;padding:4px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.quick-row button span{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:17px;font-weight:900;background:linear-gradient(145deg,#23346f,#182654);border:1px solid rgba(103,134,255,.18);box-shadow:inset 0 0 18px rgba(77,128,255,.08)}
.quick-row b{font-size:9px}
.quick-panel.quick-funds{padding:8px 10px}
.quick-row-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.quick-row-four button{min-width:0;height:70px;padding:6px 2px;border-radius:12px;overflow:hidden}
.quick-row-four button .quick-photo{display:block;width:42px;height:42px;flex:0 0 42px;padding:0;border-radius:11px;overflow:hidden;background:#161f34;box-shadow:none}
.quick-row-four button .quick-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.quick-row-four button b{display:block;margin:0;font-size:9px;line-height:1;color:inherit}
.top-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:10px;border-radius:14px;overflow:hidden;background:linear-gradient(90deg,#102055,#271b4d,#54111f)}
.top-categories button{border:0;background:transparent;color:#c3cce5;padding:11px 4px;font-size:11px;font-weight:800;position:relative}
.top-categories button.active{background:rgba(73,106,255,.34);color:#fff}
.top-categories button.active:after{content:"";position:absolute;height:2px;left:24%;right:24%;bottom:0;background:#5f89ff;border-radius:999px}
.home-eight-title{display:flex;align-items:center;justify-content:space-between;margin:var(--home-card-gap,18px) 2px 7px}
.home-eight-title b{font-size:12px}.home-eight-title span{font-size:8px;color:#7f8ba5}
.home-footer{padding:6px 12px 2px;text-align:center;color:var(--ux-text);font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.home-footer p{margin:4px 0}
.home-footer-warning{font-weight:600;font-size:clamp(9px,2.6vw,12px);white-space:nowrap;overflow-wrap:normal}
.home-footer-service{white-space:nowrap;font-size:clamp(10px,2.8vw,12px)}
.home-footer-version{font-variant-numeric:tabular-nums;text-align:center;margin-bottom:0}
.visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--home-card-gap);margin-top:var(--home-card-gap)}
.visual-game{position:relative;height:166px;min-height:166px;border:1px solid color-mix(in srgb,var(--c1) 25%,transparent);border-radius:20px;overflow:hidden;text-align:left;padding:0;background:#223752;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18);contain:layout}
.visual-game.featured{grid-column:1/-1;height:190px;min-height:190px}
.visual-game .game-art,.visual-game.featured .game-art{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;pointer-events:none}
.visual-game .game-art-photo{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:68% top;filter:saturate(1.04) contrast(1.02)}
.visual-game::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(7,19,39,.76) 0%,rgba(7,19,39,.58) 30%,rgba(7,19,39,.25) 53%,rgba(7,19,39,.04) 76%),linear-gradient(0deg,rgba(7,19,39,.63) 0%,rgba(7,19,39,.14) 42%,transparent 70%);pointer-events:none}
.visual-copy{position:absolute;z-index:4;left:12px;right:12px;bottom:42px;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.visual-copy small{font-size:8px;color:rgba(255,255,255,.86);text-shadow:0 1px 5px rgba(0,0,0,.75)}
.visual-copy strong{max-width:100%;margin-top:5px;font-size:16px;line-height:1.15;font-weight:950;color:#fff;text-align:left;text-shadow:0 2px 8px rgba(0,0,0,.75)}
.visual-copy em{margin-top:7px;font-style:normal;font-size:10px;color:#ffd99a;text-shadow:0 1px 5px rgba(0,0,0,.8)}
.visual-game.featured .visual-copy{bottom:60px}.visual-game.featured .visual-copy strong{font-size:21px}
.visual-balls{position:absolute;z-index:4;left:12px;right:12px;bottom:10px;display:flex;flex-wrap:nowrap;gap:3px;justify-content:flex-start;overflow:visible;white-space:nowrap;max-width:none}
.visual-game.featured .visual-balls{bottom:16px;overflow:visible}
.draw-ball{width:22px;height:22px;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:900;box-shadow:0 2px 6px rgba(0,0,0,.18)}.draw-ball.rank-ball{border-radius:5px}
.visual-game .visual-balls .draw-ball:not(.lucky28-ball){flex:0 0 19px;width:19px;height:19px;min-width:19px;font-size:7px}
.visual-game.featured .visual-balls .draw-ball:not(.lucky28-ball){flex-basis:20px;width:20px;height:20px;min-width:20px}
.visual-game .visual-balls.ten-home{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:2px}
.visual-game .visual-balls.ten-home .draw-ball{width:100%;min-width:0;height:auto;aspect-ratio:1;font-size:clamp(8px,2.6vw,11px)}
.visual-game .visual-balls.lhc-home{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.visual-game .visual-balls.lhc-home .lhc-result-ball{width:100%;min-width:0;height:auto;min-height:24px;aspect-ratio:1.05;font-size:18px;border-radius:6px}
.visual-game .visual-balls.lhc-home .lhc-number{font-size:clamp(12px,3.7vw,16px)!important;line-height:1}
.visual-game .visual-balls.lhc-home .lhc-zodiac{font-size:6.5px;line-height:1;margin-top:1px}
.visual-play{display:none}
html[data-theme="light"] .visual-game{background:#f5f8fd;box-shadow:0 5px 16px rgba(15,23,42,.08)}
html[data-theme="light"] .visual-game::after{background:linear-gradient(90deg,rgba(12,26,47,.60) 0%,rgba(12,26,47,.46) 30%,rgba(12,26,47,.18) 53%,rgba(12,26,47,.03) 76%),linear-gradient(0deg,rgba(12,26,47,.54) 0%,rgba(12,26,47,.09) 42%,transparent 70%)}
html[data-theme="light"] .visual-game .game-art-photo{filter:brightness(1.25) saturate(1.05) contrast(1.02)}
html[data-theme="light"] .quick-row-four button{background:transparent}

.page-viewport{height:calc(100vh - var(--navigation-height) - env(safe-area-inset-bottom) - var(--app-shell-safe-top));height:calc(100dvh - var(--navigation-height) - env(safe-area-inset-bottom) - var(--app-shell-safe-top));display:flex;flex-direction:column;min-height:0;overflow:hidden}
.page-filters{flex:0 0 auto;min-width:0;padding-top:var(--page-top-safe);background:inherit}
.page-content::-webkit-scrollbar,.pay-body::-webkit-scrollbar{display:none;width:0;height:0}
.page-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:auto;scrollbar-width:none;padding-bottom:12px}
.dark-page,.page-section{padding:12px}.app-shell>main>.page-section:not(.page-viewport){padding-top:calc(12px + var(--page-top-safe))}.dark-page-title,.page-title{margin:2px 2px 12px}.dark-page-title h1,.page-title h1{margin:0;font-size:20px}
.category-grid{display:grid;grid-template-columns:1fr;gap:9px}.category-tile{border:1px solid rgba(118,137,255,.12);background:linear-gradient(90deg,#0d1430,#10172e);color:#fff;border-radius:16px;padding:10px;display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;text-align:left}.category-tile span b,.category-tile span small{display:block}.category-tile span b{font-size:12px}.category-tile span small{font-size:8px;color:#8794b4;margin-top:3px}.category-tile em{font-style:normal;font-size:22px;color:#6f7c9e}
.lottery-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--c1),var(--c2));box-shadow:0 7px 16px color-mix(in srgb,var(--c1) 28%,transparent)}.lottery-icon b{font-size:16px;color:#fff}.lottery-icon.small{width:30px;height:30px;border-radius:9px}.lottery-icon.small b{font-size:10px}
.official-lottery-icon{position:relative!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important}
.official-lottery-icon>b{position:absolute;inset:0;z-index:1;display:grid;place-items:center;background:linear-gradient(145deg,var(--c1),var(--c2));border-radius:inherit}
.official-lottery-icon-img{position:absolute;inset:0;z-index:2;width:100%;height:100%;display:block;object-fit:contain;object-position:center;background:#fff;border-radius:inherit}

/* Play */
.play-page{padding:calc(10px + var(--page-top-safe)) 10px 18px}.play-top{display:grid;grid-template-columns:32px 34px 1fr auto;gap:8px;align-items:center;background:#0d1430;border:1px solid rgba(113,133,255,.11);border-radius:16px;padding:10px}.back-btn{width:30px;height:30px;border:0;border-radius:9px;background:#17213e;color:#fff;font-size:20px}.play-top h1{font-size:13px;margin:0}.play-top p{font-size:8px;color:#8491ae;margin:3px 0 0}.play-count{text-align:right}.play-count small{display:block;font-size:8px;color:#7f8ba5}.play-count strong{font-size:17px}
.last-result{margin-top:8px;background:#0d1430;border-radius:14px;padding:9px;display:flex;align-items:center;gap:8px}.last-result>span{font-size:8px;color:#8390ac;white-space:nowrap}.draw-balls{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.mode-tabs{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}.mode-tabs::-webkit-scrollbar{display:none}.mode-tabs button{white-space:nowrap;border:0;border-radius:10px;background:#151d39;color:#8591ad;padding:7px 10px;font-size:9px;font-weight:800}.mode-tabs button.active{background:linear-gradient(135deg,#5b62ff,#8e48ff);color:#fff}
.bet-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 48px 48px;grid-template-rows:38px 50px;align-items:center;gap:4px 6px;background:#0d1430;border-radius:14px;padding:8px 10px;margin-bottom:8px}.bet-toolbar>div{display:flex;align-items:center;gap:4px;min-width:0}.bet-toolbar>div:first-child{grid-column:1;grid-row:1}.bet-toolbar>button{grid-row:1;width:48px;height:38px;padding:4px}.bet-toolbar>.odds-chip{grid-column:1/-1;grid-row:2;height:50px;overflow:auto;justify-content:center}.bet-toolbar small{font-size:8px;color:#8895b1}.bet-toolbar strong{font-size:22px;color:#ff6a7d}.bet-toolbar span{font-size:8px;color:#8591a8}.bet-toolbar button{border:0;background:#17213d;color:#b6c0d8;border-radius:8px;padding:6px 9px;font-size:8px}
.selector-wrap{display:flex;flex-direction:column;gap:8px}.number-row{background:#0d1430;border:1px solid rgba(113,133,255,.09);border-radius:14px;padding:10px}.number-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.number-row-head b{font-size:10px}.number-row-head span{font-size:8px;color:#8591ad}.row-quick{display:flex;gap:5px;margin-bottom:7px;overflow:auto}.row-quick button{border:0;background:#17213d;color:#8d99b3;border-radius:8px;padding:5px 8px;font-size:8px}/* Count-based lottery selector grid; shared by every lottery play. */
.number-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;align-items:stretch}
.number-grid.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.number-grid.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.number-grid.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.number-grid.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.number-grid.grid-single{grid-template-columns:minmax(0,220px);justify-content:center}
.number-grid.grid-numbers{grid-template-columns:repeat(auto-fit,minmax(42px,1fr))}
.number-grid.grid-labels{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}
.number-grid>button{min-width:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.number-grid.text-options button{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans SC",sans-serif!important;font-size:14px!important;line-height:1.15!important;letter-spacing:0!important;white-space:nowrap!important;min-width:0;padding:0 8px!important}.number-grid button{height:37px;border:1px solid #26304c;background:#111831;color:#d4dbec;border-radius:10px;font-size:12px;font-weight:900}.number-grid button.active{background:linear-gradient(145deg,#ff5d75,#7b5cff);border-color:transparent;color:#fff;box-shadow:0 4px 12px rgba(115,77,255,.25)}
.play-bottom{display:grid;grid-template-columns:82px 1fr;gap:8px;position:sticky;bottom:52px;padding:9px 0;background:linear-gradient(to top,#070a1d 74%,transparent)}.play-bottom button{border:0;border-radius:12px;padding:11px;font-size:10px;font-weight:900}.plan-btn{background:#17213d;color:#c3cbe0}.confirm-btn{background:linear-gradient(135deg,#ff5d75,#7b5cff);color:#fff}.confirm-btn:disabled{opacity:.35}

/* Orders */
.record-tabs{display:flex;gap:6px;margin-bottom:9px}.record-tabs button{border:0;background:#151d39;color:#8490aa;border-radius:9px;padding:6px 10px;font-size:8px}.record-tabs button.active{background:#5b62ff;color:#fff}
.orders-list{display:flex;flex-direction:column;gap:9px}.order-card{background:#0d1430;border:1px solid rgba(113,133,255,.09);border-radius:16px;padding:11px}.order-head{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:8px;align-items:center}.order-head div b,.order-head div small{display:block}.order-head div b{font-size:11px}.order-head div small{font-size:8px;color:#8490aa;margin-top:3px}.order-status{font-size:8px;padding:5px 7px;border-radius:9px;font-weight:900}.order-status.pending{color:#f3b440;background:#3a2f16}.order-status.hit{color:#49d69d;background:#103428}.order-status.lose{color:#d58ea0;background:#321d28}.order-status.missed{color:#9aa4b6;background:#22283a}.order-status.pending i{display:inline-block;width:5px;height:5px;border-radius:12px;background:#f3b440;margin-right:4px;animation:pulse 1s infinite}
.order-meta{display:flex;justify-content:space-between;margin:8px 0;font-size:8px;color:#7d89a4}.order-picks{background:#111831;border-radius:10px;padding:7px 9px}.order-pick-row{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:8px}.order-pick-row b{color:#8d99b3}.order-pick-row span{color:#70a9ff;text-align:right}.order-wait{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:8px;padding:7px;border-radius:9px;background:#251f18}.order-wait>span{font-size:8px;color:#eab85d}.order-result{margin-top:8px;padding-top:8px;border-top:1px solid #222b46}.order-result>span{display:block;font-size:8px;color:#8490aa;margin-bottom:6px}.order-result>b{display:block;font-size:8px;color:#aab5cc;margin-top:6px}

/* Draws */
.draw-history{display:flex;flex-direction:column;gap:10px}.draw-game{background:#0d1430;border-radius:16px;padding:10px}.draw-game-title{display:flex;align-items:center;gap:8px;padding-bottom:8px}.draw-game-title div b,.draw-game-title div small{display:block}.draw-game-title div b{font-size:11px}.draw-game-title div small{font-size:8px;color:#8591ad;margin-top:2px}.draw-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #1d2540}.draw-row>span b,.draw-row>span small{display:block}.draw-row>span b{font-size:8px}.draw-row>span small{font-size:7px;color:#7f8ba4;margin-top:2px}.draw-row em{font-style:normal;font-size:7px;color:#ff7283}.draw-empty,.empty-state{text-align:center;padding:28px 10px;color:#75809a;font-size:9px}

/* Plans */
.plans-list{display:flex;flex-direction:column;gap:9px}.plan-card{background:#0d1430;border-radius:15px;padding:10px}.plan-head{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center}.plan-head div b,.plan-head div small{display:block}.plan-head div b{font-size:11px}.plan-head div small{font-size:8px;color:#8490aa;margin-top:3px}.plan-head em{font-style:normal;font-size:8px;color:#ff7083}.plan-actions{display:flex;gap:7px;margin-top:8px}.plan-actions button{flex:1;border:0;border-radius:9px;padding:7px;font-size:8px;font-weight:800;background:#17213d;color:#aeb9d0}.plan-actions button:first-child{background:#5b62ff;color:#fff}

/* Status animation */
.drawing-state{display:inline-flex;align-items:center;gap:3px;justify-content:flex-end}.drawing-state i{width:5px;height:5px;border-radius:12px;background:#ff6b7a;animation:drawDot 1s infinite ease-in-out}.drawing-state i:nth-child(2){animation-delay:.15s}.drawing-state i:nth-child(3){animation-delay:.3s}.drawing-state b{font-size:9px;color:#ff7a89;margin-left:3px}@keyframes drawDot{0%,80%,100%{transform:translateY(0);opacity:.3}40%{transform:translateY(-4px);opacity:1}}@keyframes pulse{50%{opacity:.3}}

/* Bottom nav */
.bottom-nav{position:fixed;z-index:60;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);height:calc(var(--navigation-height) + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:#06091b;border-top:0;padding-bottom:env(safe-area-inset-bottom);backdrop-filter:none;-webkit-backdrop-filter:none}
.bottom-nav button{border:0;background:transparent;color:#7d88a5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:1px}.bottom-nav button span{font-size:15px;line-height:1}.bottom-nav button b{font-size:7.5px}.bottom-nav button.active{color:#ff5d75}.bottom-nav button:nth-child(2).active{color:#6b8cff}.bottom-nav button:nth-child(3).active{color:#f7c948}.bottom-nav button:nth-child(4).active{color:#9d7cff}.bottom-nav button:nth-child(5).active{color:#22c55e}

.toast{position:fixed;z-index:90;top:10px;left:50%;transform:translate(-50%,-12px);opacity:0;background:#1a2139;color:#fff;border:1px solid rgba(113,133,255,.18);border-radius:14px;padding:8px 13px;font-size:9px;pointer-events:none;transition:opacity .1s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.bet-important{top:50%;width:max-content;max-width:calc(100vw - 48px);box-sizing:border-box;padding:18px 24px;font-size:18px;font-weight:800;line-height:1.5;text-align:center;z-index:1000;box-shadow:0 8px 32px rgba(0,0,0,.3);transform:translate(-50%,-50%);transition:none}.toast.bet-important.show{transform:translate(-50%,-50%)}.toast.bet-success{color:#ff4d64}

@media(max-width:360px){
  .visual-game{height:154px;min-height:154px}.visual-game.featured{height:180px;min-height:180px}
  .visual-symbol{width:62px;height:62px;font-size:29px}
  .visual-game.featured .visual-symbol{width:82px;height:82px;font-size:38px}
  .number-grid{gap:5px}.number-grid button{height:35px}
}

.bottom-nav button:nth-child(1) span{color:#ff5d75}
.bottom-nav button:nth-child(2) span{color:#6b8cff}
.bottom-nav button:nth-child(3) span{color:#f7c948}
.bottom-nav button:nth-child(4) span{color:#9d7cff}
.bottom-nav button:nth-child(5) span{color:#22c55e}
.bottom-nav button.active span{filter:drop-shadow(0 0 6px currentColor)}

.dark-page-title p{margin:4px 0 0;font-size:8px;color:#7f8ba5}
.category-filters{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}
.category-navigation{display:block;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.category-nav-row{display:flex;flex-wrap:nowrap;gap:7px;width:max-content;min-width:100%}

.category-nav-card{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;flex:0 0 78px;min-width:78px;height:52px;min-height:52px;padding:7px 3px;border:1px solid #8c7a654d;border-radius:12px;background:#14203b;color:#fff;font-size:13px;font-weight:850;line-height:1.2;cursor:pointer;touch-action:manipulation}
.category-nav-card::before{content:"";position:absolute;inset:0;z-index:-2;background-image:url("/assets/category/categories-20261023.webp");background-size:400% 200%;background-position:var(--category-x) var(--category-y);background-repeat:no-repeat}
.category-nav-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 38%,#04091440 64%,#040914ed 100%)}
.category-nav-label{white-space:nowrap;color:#fff;text-shadow:0 1px 4px #000,0 2px 8px #000;letter-spacing:.03em}
.category-nav-card.active{border:2px solid #ffe1a0;padding:6px 2px;box-shadow:0 0 0 1px #dc9e4666,0 3px 12px #0004}
.category-nav-card.active::after{background:linear-gradient(180deg,#ffcf4f10 35%,#04091440 64%,#040914ed 100%)}
.category-nav-card:focus-visible{outline:2px solid #ffe1a0;outline-offset:2px}
.category-filter-balance{justify-content:flex-end}
@media(max-width:360px){.category-nav-row{gap:5px}.category-nav-card{font-size:12px;border-radius:10px}}
.filter-scroll{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.filter-scroll::-webkit-scrollbar{display:none}
.filter-scroll button{flex:0 0 auto;white-space:nowrap;border:0;border-radius:10px;padding:7px 10px;background:#151d39;color:#8c98b1;font-size:9px;font-weight:800}
.filter-scroll button.active{background:linear-gradient(135deg,#5267ff,#8b5cf6);color:#fff}
.type-scroll button.active{background:linear-gradient(135deg,#ff5d75,#8b5cf6)}
.category-tile{position:relative;overflow:hidden;grid-template-columns:70px 1fr auto;min-height:72px}
.category-tile.locked{opacity:1}
.waiting-open{margin-top:15px;padding-top:12px;border-top:1px solid rgba(118,137,255,.12)}
.waiting-open-head{display:flex;align-items:center;justify-content:space-between;margin:0 2px 8px}
.waiting-open-head b{font-size:12px;color:#dbe3f4}
.waiting-open-head span{font-size:8px;color:#7f8ba5}
.waiting-open-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.waiting-open-card{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:7px;align-items:center;text-align:left;padding:8px;border:1px solid rgba(118,137,255,.10);border-radius:12px;background:#0d1430;color:#fff}
.waiting-open-icon{position:relative;width:34px;height:34px;border-radius:9px;overflow:hidden;background:linear-gradient(145deg,var(--c1),var(--c2))}
.waiting-open-icon .category-icon-img,.waiting-open-icon .category-icon-fallback{width:34px!important;height:34px!important;border-radius:9px!important}
.waiting-open-copy{min-width:0}
.waiting-open-copy b,.waiting-open-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.waiting-open-copy b{font-size:9px}
.waiting-open-copy small{margin-top:3px;font-size:7px;color:#7f8ba5}
.waiting-open-card em{font-style:normal;font-size:7px;color:#6f7c9e;white-space:nowrap}
.category-art{width:70px;height:58px;display:flex;align-items:center;justify-content:center}
.category-art .game-art-svg{width:72px;height:58px}
.category-copy{text-align:left;position:relative;z-index:2}.category-copy b,.category-copy small{display:block}.category-copy b{font-size:12px}.category-copy small{font-size:8px;color:#8995ae;margin-top:4px}
.category-tile em{font-style:normal;font-size:8px;color:#a8b2c8;white-space:nowrap}

.my-page{padding-bottom:18px}
.my-card{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:10px;align-items:center;background:#0d1430;border-radius:17px;padding:12px}
.my-avatar{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#5b62ff,#b64dff);font-size:20px;font-weight:900}
.my-card div b,.my-card div small{display:block}.my-card div b{font-size:12px}.my-card div small{font-size:8px;color:#8b97b0;margin-top:3px}
.my-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}.my-stats div{background:#0d1430;border-radius:13px;padding:11px;text-align:center}.my-stats strong,.my-stats span{display:block}.my-stats strong{font-size:17px}.my-stats span{font-size:8px;color:#8591aa;margin-top:3px}
.setting-list{margin-top:9px}.setting-list button{width:100%;border:0;background:#0d1430;color:#fff;border-radius:14px;padding:12px;display:flex;align-items:center;justify-content:space-between;text-align:left}.setting-list span b,.setting-list span small{display:block}.setting-list span b{font-size:11px}.setting-list span small{font-size:8px;color:#8490a9;margin-top:3px}.setting-list em{font-style:normal;font-size:9px;color:#aab4c8}

/* Five existing navigation destinations; bet records live inside My. */
.bottom-nav{grid-template-columns:repeat(5,1fr)}
.bottom-nav button span{font-size:13px}.bottom-nav button b{font-size:7px}
.bottom-nav button:nth-child(5) span{color:#22c55e}.bottom-nav button:nth-child(5).active{color:#22c55e}

/* photo artwork */
.game-art{position:absolute;right:0;top:0;bottom:0;width:58%;height:100%;overflow:hidden;z-index:2;filter:none}
.featured .game-art{width:52%;right:0;bottom:0;height:100%}
.game-art-photo{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:saturate(.95) contrast(1.02)}
.game-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--c1) 0%,color-mix(in srgb,var(--c1) 40%,transparent) 24%,transparent 64%),linear-gradient(0deg,rgba(5,8,24,.18),transparent 45%)}
.category-art{position:absolute!important;right:0;top:0;bottom:0;width:42%!important;height:100%!important;overflow:hidden;opacity:.92}
.category-art .game-art-photo{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.category-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d1430 0%,rgba(13,20,48,.6) 28%,transparent 78%)}
.category-wrap{position:relative}
.category-wrap .category-tile{width:100%;padding-right:70px}
.category-fav{position:absolute;right:8px;bottom:8px;z-index:5;width:27px;height:27px;border-radius:12px;border:1px solid rgba(255,255,255,.13);background:rgba(5,8,24,.46);color:#8f9ab2;font-size:13px}
.category-fav.active{color:#ffc72c}
.category-copy{z-index:3}
.category-draw{display:block;margin-top:6px}
.category-draw .draw-balls{gap:3px}
.category-draw .draw-ball:not(.lucky28-ball){width:19px;height:19px;font-size:7px}

/* authentic result colors */
/* PK10 fixed color order used by common result boards: 01 yellow, 02 blue, 03 dark, 04 orange, 05 cyan, 06 purple, 07 gray, 08 red, 09 burgundy, 10 green */
.draw-ball.pk-01{background:#f4c20d;color:#161616}
.draw-ball.pk-02{background:#1687e8}
.draw-ball.pk-03{background:#59636f}
.draw-ball.pk-04{background:#ff7a18}
.draw-ball.pk-05{background:#18b9c8}
.draw-ball.pk-06{background:#7b50e8}
.draw-ball.pk-07{background:#a6adb6;color:#111827}
.draw-ball.pk-08{background:#ef4444}
.draw-ball.pk-09{background:#c93452}
.draw-ball.pk-10{background:#11a66a}
.draw-ball.ssc-ball{background:#e84e5f}
.draw-ball.x11-ball{background:#2979e6}
.draw-ball.k3-ball{background:#fff;color:#243044;border-radius:6px;border:1px solid #d7dde6}
.draw-ball.keno-ball{background:#0ca7a5}
.draw-ball.lucky28-ball{
  width:28px!important;min-width:28px!important;max-width:28px!important;
  height:28px!important;min-height:28px!important;max-height:28px!important;
  flex:0 0 28px!important;flex-basis:28px!important;
  aspect-ratio:1/1!important;
  background:#f59e0b;color:#1f2937;border-radius:6px!important;
  font-size:11px!important;line-height:28px!important;padding:0!important
}
.draw-ball.lhc-red{background:#e53935}
.draw-ball.lhc-blue{background:#2979e6}
.draw-ball.lhc-green{background:#21a35b}
.draw-ball.ball-default{background:#667085}

/* external plans */
.external-plans{display:flex;flex-direction:column;gap:10px}
.external-plan-card{background:#0d1430;border:1px solid rgba(113,133,255,.09);border-radius:16px;padding:10px}
.external-plan-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.external-plan-head b{font-size:11px}
.external-plan-head button{border:0;border-radius:8px;background:#17213d;color:#aeb9d0;padding:5px 8px;font-size:8px}
.external-plan-table{display:flex;flex-direction:column}
.plan-row{display:grid;grid-template-columns:80px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #1d2540}
.plan-row span b,.plan-row span small{display:block}.plan-row span b{font-size:8px}.plan-row span small{font-size:7px;color:#7f8ba4;margin-top:2px}
.plan-row .plan-pick{font-size:9px;color:#83b2ff;word-break:break-word}
.plan-number-wrap{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:5px!important;line-height:1!important}
.plan-number-wrap .plan-number{width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;flex:0 0 30px!important;display:grid!important;place-items:center!important;text-align:center!important;padding:0!important;box-sizing:border-box!important;border-radius:6px!important;font-size:15px!important;font-weight:950!important;line-height:1!important}
.plan-number-wrap .plan-hit-check{width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;flex:0 0 30px!important;border-radius:6px!important;background:#16a34a!important;color:#fff!important;font-size:15px!important;font-weight:950!important;line-height:1!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
.real-plan-feature .plan-number-wrap{margin:7px 0 2px}
.plan-row .plan-number-wrap{min-height:30px}
.plan-bet-selection .plan-number-wrap{justify-content:flex-end}
.plan-row em{font-style:normal;font-size:8px;color:#e5b95e;max-width:90px;text-align:right}
.saved-plan-label,.my-section-title{font-size:9px;color:#8591ad;margin:12px 2px 7px}

/* My */
.avatar-button{width:56px;height:56px;min-width:56px;aspect-ratio:1;border-radius:10px;padding:0;overflow:hidden;background:#f3f4f6;border:0;display:grid;place-items:center;line-height:1}
.avatar-button>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}
.avatar-button>span{font-size:22px;font-weight:800;color:#475569}
.my-card>div{min-width:0;overflow-wrap:anywhere}


.my-section{margin-top:9px;background:#0d1430;border-radius:14px;padding:9px}
.my-section-title{margin:0 0 7px}
.my-favorites{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.my-favorites::-webkit-scrollbar{display:none}
.my-favorites button{min-width:118px;border:0;border-radius:11px;background:#111831;color:#fff;padding:7px;display:flex;align-items:center;gap:7px;text-align:left}
.my-favorites button span:last-child{font-size:9px}
.fund-list>div{display:grid;grid-template-columns:1fr auto;gap:6px;padding:8px 2px;border-top:1px solid #1d2540;font-size:8px}.fund-list>div:first-child{border-top:0}.fund-list small{grid-column:1/-1;color:#7f8ba4}
.empty-state.compact{padding:16px 8px}

/* draw focus */
.draw-game.focused{outline:1px solid #5f79ff;box-shadow:0 0 0 2px rgba(95,121,255,.12)}

/* Light theme */
html[data-theme="light"]{
  --light-bg:#eef2f7;
  --light-card:#ffffff;
  --light-text:#172033;
  --light-muted:#465569;
  --light-soft:#465569;
  color-scheme:light;
}
html[data-theme="light"],
html[data-theme="light"] body{
  background:var(--light-bg)!important;
  color:var(--light-text)!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Noto Sans SC",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html[data-theme="light"] .app-shell{
  background:linear-gradient(180deg,#f8fafc,#eef2f7)!important;
  color:var(--light-text)!important;
}
/* On the scrollable home screen, keep the page's browser-facing backdrop
   identical to the existing solid bottom navigation surface. */
@media (max-width: 699px) {
  html[data-theme="light"]:has(.home-lobby),
  html[data-theme="light"]:has(.home-lobby) body {
    background:#f7f9fc!important;
  }
  html[data-theme="dark"]:has(.home-lobby),
  html[data-theme="dark"]:has(.home-lobby) body {
    background:#06091b!important;
  }
}
html[data-theme="light"] main,
html[data-theme="light"] .dark-page,
html[data-theme="light"] .page-section,
html[data-theme="light"] .play-page{color:var(--light-text)!important}

html[data-theme="light"] html[data-theme="light"] .auth-entry button,
html[data-theme="light"] .page-title h1,
html[data-theme="light"] .dark-page-title h1{color:#172033!important}
html[data-theme="light"] .balance-visibility{
  background:#f4f7fb!important;
  border-color:#cfd9e5!important;
  color:#344256!important;
}
html[data-theme="light"] .balance-box{
  background:#edf2f7!important;
  border-color:#d6dee8!important;
}
html[data-theme="light"] .balance-box small{
  color:#465569!important;
  font-size:10px!important;
  font-weight:800!important;
}
html[data-theme="light"] .balance-box b{
  color:#172033!important;
  font-weight:950!important;
}

html[data-theme="light"] .announce-bar,
html[data-theme="light"] .quick-panel,
html[data-theme="light"] .category-tile,
html[data-theme="light"] .play-top,
html[data-theme="light"] .last-result,
html[data-theme="light"] .bet-toolbar,
html[data-theme="light"] .number-row,
html[data-theme="light"] .order-card,
html[data-theme="light"] .draw-game,
html[data-theme="light"] .plan-card,
html[data-theme="light"] .external-plan-card,
html[data-theme="light"] .my-card,
html[data-theme="light"] .my-stats div,
html[data-theme="light"] .my-section,
html[data-theme="light"] .setting-list button{
  background:#fff!important;
  color:#172033!important;
  border-color:#dbe3ec!important;
  box-shadow:0 3px 12px rgba(25,42,65,.05);
}
html[data-theme="light"] .category-tile.locked{opacity:1!important}

html[data-theme="light"] .category-copy b,
html[data-theme="light"] .draw-game-title b,
html[data-theme="light"] .draw-title-left b,
html[data-theme="light"] .order-head b,
html[data-theme="light"] .plan-head b,
html[data-theme="light"] .my-card b,
html[data-theme="light"] .setting-list b{
  color:#172033!important;
  font-weight:900!important;
}
html[data-theme="light"] .category-copy b{
  font-size:15px!important;
  line-height:1.15!important;
}
html[data-theme="light"] .category-copy small{
  color:#3f4d61!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:750!important;
}
html[data-theme="light"] .category-tile em{
  color:#465569!important;
  font-size:11px!important;
  font-weight:850!important;
}

html[data-theme="light"] .filter-scroll button,
html[data-theme="light"] .mode-tabs button,
html[data-theme="light"] .record-tabs button,
html[data-theme="light"] .row-quick button,
html[data-theme="light"] .bet-toolbar button,
html[data-theme="light"] .stake-presets button,
html[data-theme="light"] .external-plan-head button{
  background:#e8edf3!important;
  color:#344256!important;
  font-size:11px!important;
  font-weight:850!important;
}
html[data-theme="light"] .filter-scroll button.active,
html[data-theme="light"] .mode-tabs button.active,
html[data-theme="light"] .record-tabs button.active{
  background:linear-gradient(135deg,#5267ff,#7c4dff)!important;
  border-color:transparent!important;
  color:#fff!important;
}

html[data-theme="light"] .quick-welcome,
html[data-theme="light"] .dark-page-title p,
html[data-theme="light"] .play-top p,
html[data-theme="light"] .play-count small,
html[data-theme="light"] .play-timers small,
html[data-theme="light"] .play-result-label small,
html[data-theme="light"] .draw-game-title small,
html[data-theme="light"] .draw-title-left small,
html[data-theme="light"] .draw-title-countdown small,
html[data-theme="light"] .draw-row-issue small,
html[data-theme="light"] .order-head small,
html[data-theme="light"] .order-meta,
html[data-theme="light"] .order-result>span,
html[data-theme="light"] .plan-head small,
html[data-theme="light"] .plan-head em,
html[data-theme="light"] .plan-row small,
html[data-theme="light"] .saved-plan-label,
html[data-theme="light"] .my-section-title,
html[data-theme="light"] .my-card small,
html[data-theme="light"] .my-stats span,
html[data-theme="light"] .setting-list span small,
html[data-theme="light"] .setting-list em,
html[data-theme="light"] .fund-balance,
html[data-theme="light"] .stake-title span,
html[data-theme="light"] .stake-total span,
html[data-theme="light"] .odds-chip small,
html[data-theme="light"] .auth-head small{
  color:#465569!important;
  opacity:1!important;
  font-weight:700!important;
}
html[data-theme="light"] .quick-welcome,
html[data-theme="light"] .dark-page-title p,
html[data-theme="light"] .order-meta,
html[data-theme="light"] .order-result>span,
html[data-theme="light"] .plan-head small,
html[data-theme="light"] .plan-head em,
html[data-theme="light"] .plan-row small,
html[data-theme="light"] .my-card small,
html[data-theme="light"] .my-stats span,
html[data-theme="light"] .setting-list span small,
html[data-theme="light"] .setting-list em,
html[data-theme="light"] .fund-balance,
html[data-theme="light"] .auth-head small{
  font-size:10px!important;
  line-height:1.35!important;
}
html[data-theme="light"] .draw-game-title small,
html[data-theme="light"] .draw-title-left small,
html[data-theme="light"] .draw-title-countdown small,
html[data-theme="light"] .draw-row-issue small,
html[data-theme="light"] .play-result-label small{
  font-size:10.5px!important;
  line-height:1.3!important;
}
html[data-theme="light"] .draw-row-issue b,
html[data-theme="light"] .play-history-issue b{
  color:#1f2b3d!important;
  font-weight:900!important;
}

html[data-theme="light"] .quick-row button,
html[data-theme="light"] .category-copy b,
html[data-theme="light"] .draw-game-title b,
html[data-theme="light"] .order-head b,
html[data-theme="light"] .plan-head b{color:#172033!important}
html[data-theme="light"] .quick-row button span,
html[data-theme="light"] .row-quick button,
html[data-theme="light"] .bet-toolbar button,
html[data-theme="light"] .mode-tabs button,
html[data-theme="light"] .external-plan-head button{
  background:#e8edf3!important;
  color:#344256!important;
}

html[data-theme="light"] .number-grid button{
  background:#fff!important;
  border-color:#cfd9e5!important;
  color:#243246!important;
}
html[data-theme="light"] .number-grid button.active{
  color:#fff!important;
  border-color:transparent!important;
}
html[data-theme="light"] .order-picks,
html[data-theme="light"] .my-favorites button{
  background:#f4f7fa!important;
  color:#172033!important;
}
html[data-theme="light"] .plan-row,
html[data-theme="light"] .fund-list>div,
html[data-theme="light"] .draw-row{border-color:#dde5ee!important}
html[data-theme="light"] .plan-row .plan-pick{color:#1d5fc4!important}
html[data-theme="light"] .plan-row .plan-number{color:#fff!important}
html[data-theme="light"] .plan-row .plan-number.pk-01,
html[data-theme="light"] .plan-row .plan-number.pk-07{color:#111827!important}

html[data-theme="light"] .bottom-nav{
  background:#f7f9fc!important;
  border-color:transparent!important;
}
html[data-theme="light"] .bottom-nav button{color:#465569!important}
html[data-theme="light"] .bottom-nav button b{
  font-size:9px!important;
  font-weight:850!important;
}

html[data-theme="light"] .hero-banner{
  color:#243043!important;
  background:
    radial-gradient(circle at 80% 18%,rgba(255,137,203,.25),transparent 30%),
    radial-gradient(circle at 18% 80%,rgba(91,145,255,.22),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f3f6ff 52%,#fff0f5 100%)!important;
  border-color:#dfe6f0!important;
  box-shadow:0 10px 24px rgba(15,23,42,.08)!important;
}
html[data-theme="light"] .hero-art.a1:after{
  background:#f8faff!important;
  border-color:rgba(255,255,255,.65)!important;
}
html[data-theme="light"] .hero-copy h1{color:#243043!important}
html[data-theme="light"] .hero-copy p{color:#465569!important}
html[data-theme="light"] .hero-copy small{color:#4f5fc3!important}

html[data-theme="light"] .category-fav{
  background:rgba(255,255,255,.94)!important;
  border-color:#ccd6e2!important;
  color:#465569!important;
}
html[data-theme="light"] .category-fav.active{color:#e99a00!important}
html[data-theme="light"] .setting-list em{color:#465569!important}

/* Category: small lottery picture on the far left, results one line */
.category-wrap .category-tile{grid-template-columns:42px 1fr auto!important;padding:9px 42px 9px 9px!important;min-height:68px!important}
.category-art{position:static!important;width:42px!important;height:42px!important;border-radius:11px!important;display:grid!important;place-items:center!important;overflow:hidden!important;opacity:1!important;background:linear-gradient(145deg,var(--c1),var(--c2))!important;box-shadow:0 5px 12px color-mix(in srgb,var(--c1) 20%,transparent)}
.category-art:after{display:none!important}
.category-art svg{width:36px!important;height:36px!important;display:block!important}
.category-copy{min-width:0!important;text-align:left!important}
.category-draw{display:block!important;max-width:100%!important;overflow:hidden!important}
.category-draw .draw-balls{display:flex!important;flex-wrap:nowrap!important;gap:3px!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;scrollbar-width:none!important;padding-bottom:1px}
.category-draw .draw-balls::-webkit-scrollbar{display:none}
.category-draw .draw-ball{width:22px!important;height:22px!important;min-width:22px!important;font-size:11px!important;font-weight:950!important}
.category-fav{right:7px!important;bottom:20px!important}

/* Betting amount */
.stake-panel{margin-top:8px;background:#0d1430;border:1px solid rgba(113,133,255,.09);border-radius:15px;padding:10px}
.stake-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.stake-title b{font-size:11px}.stake-title span{font-size:8px;color:#8490aa}
.stake-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.stake-presets button{border:0;border-radius:9px;padding:7px 2px;background:#17213d;color:#aeb9d0;font-size:9px;font-weight:800}.stake-presets button.active{background:linear-gradient(135deg,#ff5d75,#7b5cff);color:#fff}
.stake-input{height:40px;margin-top:8px;display:flex;align-items:center;border:1px solid #27314d;background:#111831;border-radius:10px;overflow:hidden}.stake-input span{padding-left:11px;color:#8d99b3;font-size:11px}.stake-input input{width:100%;height:100%;border:0;outline:0;background:transparent;color:#fff;padding:0 10px;font-size:13px;font-weight:800}
.stake-total{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.stake-total span{font-size:8px;color:#8490aa}.stake-total b{font-size:12px;color:#ff7587}
.plan-bet-panel{
  margin:8px 0 10px!important;
  padding:9px!important;
  box-shadow:none!important;
}
.plan-bet-selection{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
  padding:7px 9px;
  border-radius:9px;
  background:#111831;
}
.plan-bet-selection small{font-size:9px;color:#8490aa;font-weight:800}
.plan-bet-selection strong{
  color:#4b9cff;
  font-size:15px;
  line-height:1.2;
  text-align:right;
  word-break:break-word;
}
.plan-bet-panel .stake-presets{grid-template-columns:repeat(3,1fr)}
.plan-bet-actions{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:7px;
  margin-top:9px;
}
.plan-bet-actions>button:first-child{
  border:0;
  border-radius:10px;
  background:#202943;
  color:#aeb9d0;
  font-size:10px;
  font-weight:900;
}
.plan-bet-actions .fund-submit{margin-top:0!important;min-height:40px!important}

/* Navigation must always receive taps */
.bottom-nav{z-index:999!important;pointer-events:auto!important;touch-action:manipulation}
.bottom-nav button{pointer-events:auto!important;touch-action:manipulation;position:relative;z-index:2}

/* Smart support */
.support-mask{position:fixed;z-index:1200;inset:0;background:rgba(2,5,16,.58);display:flex;align-items:flex-end;justify-content:center}
.support-sheet{width:min(100%,520px);height:min(68vh,560px);background:#0b1129;border-radius:20px 20px 0 0;border:1px solid rgba(113,133,255,.13);display:grid;grid-template-rows:48px 1fr 56px;overflow:hidden}
.support-head{display:flex;align-items:center;justify-content:space-between;padding:0 13px;border-bottom:1px solid #1c2641}.support-head b{font-size:12px}.support-head button{width:30px;height:30px;border:0;border-radius:12px;background:#17213d;color:#fff;font-size:18px}
.support-messages{padding:12px;overflow:auto;display:flex;flex-direction:column;gap:8px}.support-msg{max-width:82%;padding:9px 10px;border-radius:12px;font-size:10px;line-height:1.55}.support-msg.bot{align-self:flex-start;background:#17213d;color:#dce3f2}.support-msg.user{align-self:flex-end;background:linear-gradient(135deg,#5b62ff,#8b5cf6);color:#fff}
.support-form{display:grid;grid-template-columns:1fr 62px;gap:7px;padding:8px 10px;border-top:1px solid #1c2641}.support-form input{border:1px solid #27314d;background:#111831;color:#fff;border-radius:11px;padding:0 10px;outline:0;font-size:10px}.support-form button{border:0;border-radius:11px;background:#5b62ff;color:#fff;font-size:10px;font-weight:800}

/* Light theme for newly added UI */
html[data-theme="light"] .stake-panel,html[data-theme="light"] .support-sheet{background:#fff!important;color:#1f2937!important;border-color:#e1e7ef!important}
html[data-theme="light"] .stake-input,html[data-theme="light"] .support-form input{background:#f5f7fa!important;border-color:#dce3eb!important;color:#1f2937!important}
html[data-theme="light"] .plan-bet-selection{background:#f4f7fa!important}
html[data-theme="light"] .plan-bet-selection small{color:#465569!important}
html[data-theme="light"] .plan-bet-selection strong{color:#1d5fc4!important}
html[data-theme="light"] .plan-bet-actions>button:first-child{background:#e8edf3!important;color:#344256!important}
html[data-theme="light"] .external-plan-controls .plan-bet-open{background:#e8edf3!important;color:#344256!important}
html[data-theme="light"] .external-plan-controls .plan-bet-open.active{background:linear-gradient(135deg,#5267ff,#7c4dff)!important;color:#fff!important}
html[data-theme="light"] .stake-presets button,html[data-theme="light"] .support-head button{background:#edf2f7!important;color:#465569!important}
html[data-theme="light"] .stake-presets button.active{background:linear-gradient(135deg,#ff5d75,#7b5cff)!important;color:#fff!important}
html[data-theme="light"] .support-head,html[data-theme="light"] .support-form{border-color:#e5eaf0!important}
html[data-theme="light"] .support-msg.bot{background:#eef2f7!important;color:#334155!important}
html[data-theme="light"] .setting-list button{border-bottom:1px solid #eef1f4}

/* Richer category icons on the left */
.category-art{
  width:46px!important;
  height:46px!important;
  border-radius:13px!important;
  overflow:hidden!important;
  flex:none!important;
  box-shadow:0 6px 14px rgba(0,0,0,.22)!important
}
.category-art svg{width:46px!important;height:46px!important}
.category-wrap .category-tile{grid-template-columns:46px 1fr auto!important;padding-left:9px!important}
.category-draw .draw-balls{flex-wrap:nowrap!important;white-space:nowrap!important;overflow-x:auto!important}
.category-draw .draw-ball{flex:0 0 22px!important}

/* Odds chip */
.odds-chip{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:1px!important;margin-right:3px!important}
.odds-chip small{font-size:7px!important;color:#7f8ba5!important}
.odds-chip b{font-size:11px!important;color:#f7c948!important}

/* Play footer and amount panel - light/dark complete */
html[data-theme="light"] .play-bottom{
  background:linear-gradient(to top,#eef2f7 76%,rgba(238,242,247,.92) 90%,transparent)!important;
}
html[data-theme="light"] .plan-btn{background:#e5eaf1!important;color:#465467!important}
html[data-theme="light"] .confirm-btn{background:linear-gradient(135deg,#ff5d75,#7b5cff)!important;color:#fff!important}
html[data-theme="light"] .stake-panel{background:#fff!important;color:#1f2937!important;border-color:#dfe5ec!important}
html[data-theme="light"] .stake-title b{color:#1f2937!important}
html[data-theme="light"] .stake-title span,
html[data-theme="light"] .stake-total span{color:#465569!important}
html[data-theme="light"] .stake-total b{color:#e54867!important}
html[data-theme="light"] .stake-input{background:#f5f7fa!important;border-color:#dce3eb!important}
html[data-theme="light"] .stake-input input{color:#1f2937!important}
html[data-theme="light"] .stake-presets button{background:#edf2f7!important;color:#465569!important}
html[data-theme="light"] .stake-presets button.active{background:linear-gradient(135deg,#ff5d75,#7b5cff)!important;color:#fff!important}
html[data-theme="light"] .odds-chip b{color:#d39b00!important}
html[data-theme="light"] .odds-chip small{color:#465569!important}

/* exact 499 category icons */
.category-art{position:relative!important;width:46px!important;height:46px!important;background:transparent!important;box-shadow:none!important;border-radius:12px!important;overflow:hidden!important}
.category-icon-img{position:absolute!important;inset:0!important;z-index:2!important;width:46px!important;height:46px!important;object-fit:contain!important;display:block!important;background:transparent!important}
.category-icon-fallback{position:absolute!important;inset:0!important;z-index:1!important;width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,var(--c1),var(--c2));color:#fff;font-size:14px;font-weight:950}
html[data-theme="light"] .category-icon-fallback{color:#fff!important}

/* unified square lottery numbers */
.draw-ball,
.draw-ball.rank-ball,
.draw-ball.k3-ball,
.draw-ball.lucky28-ball,
.category-draw .draw-ball,
.visual-balls .draw-ball{
  border-radius:6px!important;
}
.number-grid button{
  border-radius:6px!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  position:relative!important;
  z-index:8!important;
}
.selector-wrap,.number-row,.number-grid{
  pointer-events:auto!important;
  position:relative;
  z-index:5;
}
.row-quick button{border-radius:6px!important;touch-action:manipulation!important}

/* clearer typography */
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body,button,input{font-weight:500}
.visual-copy strong,.category-copy b,.play-top h1,.order-head b,.draw-game-title b{font-weight:800!important;letter-spacing:.1px}
.visual-copy small,.visual-copy em,.category-copy small,.lottery-issue,.order-meta,.draw-row small{
  font-size:9px!important;
  line-height:1.35!important;
}
.bottom-nav button b{font-size:8px;font-weight:700!important}
.number-grid button{font-size:16px!important;font-weight:950!important}
.stake-input input,.support-form input{font-size:16px!important}

/* stable image geometry prevents layout jump */
.game-art-photo{
  min-width:100%!important;
  min-height:100%!important;
  aspect-ratio:auto!important;
  background:#111831!important;
}

/* make every tap target easier on mobile */
.bottom-nav button,[data-game],[data-nav],[data-pick],[data-quick]{
  -webkit-user-select:none;
  user-select:none;
  touch-action:manipulation;
}

.sim-payout{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px dashed rgba(148,163,184,.25);font-size:12px}
.sim-payout b{font-size:15px}


/* Mobile play usability: selected numbers must stay visible; order bar always reachable */
html[data-theme="light"] .number-grid button.active,
.number-grid button.active{
  background:linear-gradient(135deg,#ff4f6d,#7357ff)!important;
  color:#fff!important;
  border-color:#ff4f6d!important;
  box-shadow:0 5px 14px rgba(115,87,255,.32)!important;
  font-weight:900!important;
  opacity:1!important;
}
.number-grid button.active:active{transform:scale(.98)}

.play-bottom{
  position:sticky!important;
  left:auto!important;
  right:auto!important;
  margin-inline:auto!important;
  bottom:52px!important;
  z-index:998!important;
  width:min(calc(100% - 20px),500px)!important;
  grid-template-columns:88px 1fr!important;
  gap:8px!important;
  padding:9px 10px!important;
  border-radius:14px 14px 0 0!important;
  background:rgba(7,10,29,.97)!important;
  box-shadow:0 -6px 20px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(16px)!important;
}
html[data-theme="light"] .play-bottom{
  background:rgba(255,255,255,.98)!important;
  border:1px solid #e1e7ef!important;
  border-bottom:0!important;
  box-shadow:0 -5px 18px rgba(31,41,55,.10)!important;
}
.play-bottom button{
  min-height:48px!important;
  font-size:14px!important;
  font-weight:900!important;
}
.confirm-btn{
  font-size:15px!important;
  letter-spacing:.1px!important;
}
.number-row-head b{font-size:15px!important;font-weight:900!important}
.number-row-head span{font-size:12px!important;color:#66758a!important;font-weight:700!important}
.number-grid button{
  min-height:46px!important;
  height:46px!important;
  font-size:18px!important;
  font-weight:900!important;
}
.row-quick button{
  min-width:42px!important;
  min-height:34px!important;
  font-size:12px!important;
  font-weight:800!important;
}
.mode-tabs button{
  min-height:38px!important;
  font-size:13px!important;
  font-weight:800!important;
  padding:8px 13px!important;
}
.bet-toolbar{
  min-height:56px!important;
}
.bet-toolbar small,.bet-toolbar span{
  font-size:12px!important;
  font-weight:700!important;
}
.bet-toolbar strong{font-size:28px!important}
.bet-toolbar button{
  min-height:38px!important;
  font-size:12px!important;
  font-weight:800!important;
}
.odds-chip small{font-size:11px!important}
.odds-chip b{font-size:16px!important}
.last-result>span{font-size:12px!important;font-weight:700!important}
.play-top h1{font-size:17px!important}
.play-top p,.play-count small{font-size:11px!important}
.play-count strong{font-size:20px!important}


/* Fixed mobile amount + order controls */

.play-bottom{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  bottom:52px!important;
  padding:9px 10px 10px!important;
}
.bottom-stake-row{
  display:grid;
  grid-template-columns:auto 1fr 66px 58px;
  gap:7px;
  align-items:center;
}
.bottom-stake-label{
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  color:#aeb8cc;
}
.bottom-stake-presets{
  min-width:0;
  display:flex;
  gap:5px;
  overflow-x:auto;
  scrollbar-width:none;
}
.bottom-stake-presets::-webkit-scrollbar{display:none}
.bottom-stake-presets button{
  flex:0 0 auto;
  min-width:40px;
  height:34px;
  padding:0 7px;
  border:0;
  border-radius:8px;
  background:#17213d;
  color:#c4cde0;
  font-size:12px;
  font-weight:900;
}
.bottom-stake-presets button.active{
  background:linear-gradient(135deg,#ff4f6d,#7357ff)!important;
  color:#fff!important;
}
.bottom-stake-input{
  height:34px;
  display:flex;
  align-items:center;
  border:1px solid #2a3553;
  border-radius:8px;
  background:#111831;
  overflow:hidden;
}
.bottom-stake-input span{
  padding-left:7px;
  font-size:12px;
  font-weight:800;
  color:#8f9ab2;
}
.bottom-stake-input input{
  width:100%;
  min-width:0;
  height:100%;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  padding:0 6px;
  font-size:14px!important;
  font-weight:900!important;
}
.auto-bet-open{height:34px;border:0;border-radius:8px;background:#24304f;color:#dbe5f5;font-size:11px;font-weight:900;padding:0 8px;touch-action:manipulation}
.auto-bet-open.active{background:linear-gradient(135deg,#16a34a,#0ea5e9);color:#fff}
.auto-bet-panel{border:1px solid rgba(113,133,255,.16);border-radius:10px;padding:8px;background:#0f1730}
.auto-bet-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.auto-bet-head b{font-size:12px}.auto-bet-head span{font-size:10px;color:#8fa0bd;text-align:right}
.auto-bet-fields{display:grid;grid-template-columns:minmax(48px,1fr) 62px minmax(104px,1.3fr);gap:6px;margin-top:7px}
.auto-bet-fields label,.auto-multi{display:flex;flex-direction:column;gap:4px;min-width:0}
.auto-bet-fields span,.auto-multi>span{font-size:9px;color:#8fa0bd;font-weight:800}
.auto-bet-fields select,.auto-bet-fields input{width:100%;box-sizing:border-box;height:32px;border:1px solid #2a3553;border-radius:7px;background:#111831;color:#fff;padding:0 7px;font-size:12px;font-weight:900;min-width:0}
.auto-multi{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px}.auto-multi>span{grid-column:1/-1}
.auto-multi button{min-width:0;white-space:nowrap;padding:0 4px;height:32px;border:0;border-radius:7px;background:#17213d;color:#c5cfe1;font-weight:900}
.auto-multi button.active{background:#5b62ff;color:#fff}
.auto-bet-warning,.auto-bet-running{font-size:10px;line-height:1.45;margin-top:7px;color:#f59e0b}
.auto-bet-start{width:100%;height:36px;margin-top:7px;border:0;border-radius:8px;background:linear-gradient(135deg,#ff5d75,#7b5cff);color:#fff;font-size:12px;font-weight:900;touch-action:manipulation}
html[data-theme="light"] .auto-bet-panel{background:#fff;border-color:#dfe5ec}
html[data-theme="light"] .auto-bet-fields select,html[data-theme="light"] .auto-bet-fields input{background:#f5f7fa;color:#1f2937;border-color:#d7dee8}
html[data-theme="light"] .auto-bet-open{background:#e8edf3;color:#344256}

.bottom-summary-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:22px;
  padding:0 2px;
}
.bottom-summary-row span{
  font-size:12px;
  font-weight:700;
  color:#9aa7be;
}
.bottom-summary-row b{
  font-size:14px;
  font-weight:900;
  color:#ff667e;
}
.bottom-action-row{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:8px;
}
.bottom-action-row button{
  min-height:46px!important;
}
html[data-theme="light"] .bottom-stake-label,
html[data-theme="light"] .bottom-summary-row span{color:#465569!important}
html[data-theme="light"] .bottom-stake-presets button{
  background:#edf2f7!important;
  color:#465467!important;
}
html[data-theme="light"] .bottom-stake-presets button.active{
  background:linear-gradient(135deg,#ff4f6d,#7357ff)!important;
  color:#fff!important;
}
html[data-theme="light"] .bottom-stake-input{
  background:#f5f7fa!important;
  border-color:#d7dee8!important;
}
html[data-theme="light"] .bottom-stake-input input{color:#1f2937!important}
html[data-theme="light"] .bottom-summary-row b{color:#e54867!important}


/* Compact wager-only order cards + 10s cancellation lock */
.order-picks.compact{
  padding:8px 10px!important;
}
.order-picks.compact .order-pick-row{
  padding:7px 0!important;
  font-size:13px!important;
  align-items:center!important;
}
.order-picks.compact .order-pick-row b{
  font-size:13px!important;
  font-weight:900!important;
  color:#66758a!important;
}
.order-picks.compact .order-pick-row span{
  font-size:14px!important;
  font-weight:900!important;
  color:#3b82f6!important;
}
.order-cancel-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:9px;
  padding-top:9px;
  border-top:1px solid rgba(148,163,184,.18);
}
.order-cancel-row span{
  font-size:12px;
  font-weight:800;
  color:#d39b00;
}
.order-cancel-row button{
  min-width:94px;
  min-height:38px;
  border:0;
  border-radius:9px;
  background:#ef4444;
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.order-cancel-row button:disabled{
  background:#dfe4ea!important;
  color:#8a95a4!important;
}
.order-status.cancelled{
  color:#64748b;
  background:#e8edf3;
}
html[data-theme="light"] .order-picks.compact{
  background:#f5f7fa!important;
}
html[data-theme="light"] .order-picks.compact .order-pick-row b{
  color:#465569!important;
}
html[data-theme="light"] .order-picks.compact .order-pick-row span{
  color:#2563eb!important;
}
html[data-theme="light"] .order-cancel-row{
  border-color:#e5eaf0!important;
}
html[data-theme="light"] .order-status.cancelled{
  color:#465569!important;
  background:#eef2f7!important;
}


/* Live period / draw / lock countdown + profit preview */
.play-top{
  grid-template-columns:32px 34px minmax(0,1fr) auto!important;
}
.play-issue{min-width:0}
.play-issue h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.play-issue p{
  margin-top:4px!important;
  font-size:12px!important;
  font-weight:800!important;
  color:#718096!important;
}
.play-timers{
  display:grid;
  grid-template-columns:repeat(2,minmax(74px,1fr));
  gap:6px;
  align-items:stretch;
}
.play-timers>div{
  min-width:74px;
  padding:6px 7px;
  border-radius:10px;
  background:#111831;
  text-align:center;
}
.play-timers>.play-balance{
  grid-column:1/-1;
  justify-self:end;
}
.play-timers small{
  display:block;
  font-size:10px!important;
  line-height:1.1;
  color:#8b98af!important;
  white-space:nowrap;
}
.play-timers strong{
  display:block;
  margin-top:3px;
  font-size:15px!important;
  line-height:1.1;
  font-weight:900!important;
  color:#39a7ff;
  white-space:nowrap;
}
.play-timers>.lock-timer strong{color:#f59e0b}
.play-timers>div.locked{
  background:rgba(239,68,68,.10);
  border:1px solid rgba(239,68,68,.22);
}
.play-timers>div.locked strong{color:#ef4444!important}


.play-bottom{
  gap:6px!important;
}
.bottom-profit-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:30px;
  padding:7px 9px;
  border-radius:9px;
  background:rgba(34,197,94,.08);
  border:1px solid rgba(34,197,94,.16);
}
.bottom-profit-row span{
  font-size:11px;
  font-weight:800;
  color:#8794a8;
  white-space:nowrap;
}
.bottom-profit-row b{
  font-size:13px;
  color:#2563eb;
}
.bottom-profit-row strong{
  font-size:14px;
  color:#16a34a;
}
.bottom-lock-row{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:5px;
  align-items:center;
  padding:7px 8px;
  border-radius:9px;
  background:#111831;
}
.bottom-lock-row span{
  font-size:10px;
  font-weight:800;
  color:#9aa7ba;
  text-align:center;
  white-space:nowrap;
}
.bottom-lock-row b{
  margin-left:2px;
  font-size:12px;
  font-weight:900;
  color:#38a5ff;
}
.bottom-lock-row span:last-child b{color:#f59e0b}
.bottom-lock-row.locked{
  background:rgba(239,68,68,.10);
  border:1px solid rgba(239,68,68,.20);
}
.bottom-lock-row.locked span:last-child,
.bottom-lock-row.locked span:last-child b{
  color:#ef4444!important;
}
.confirm-btn:disabled{
  opacity:1!important;
  background:#cfd6df!important;
  color:#7a8593!important;
  box-shadow:none!important;
}
html[data-theme="light"] .play-timers>div{
  background:#f4f7fa!important;
  border:1px solid #e1e7ee;
}
html[data-theme="light"] .play-timers small{color:#465569!important}
html[data-theme="light"] html[data-theme="light"] .play-timers>div.locked{
  background:#fff1f2!important;
  border-color:#fecdd3!important;
}
html[data-theme="light"] .bottom-profit-row{
  background:#f0fdf4!important;
  border-color:#bbf7d0!important;
}
html[data-theme="light"] .bottom-profit-row span{color:#465569!important}
html[data-theme="light"] .bottom-profit-row b{color:#2563eb!important}
html[data-theme="light"] .bottom-profit-row strong{color:#16a34a!important}
html[data-theme="light"] .bottom-lock-row{
  background:#f5f7fa!important;
  border:1px solid #e1e7ee!important;
}
html[data-theme="light"] .bottom-lock-row span{color:#465569!important}
html[data-theme="light"] .bottom-lock-row.locked{
  background:#fff1f2!important;
  border-color:#fecdd3!important;
}
@media(max-width:390px){
  .play-top{grid-template-columns:32px 34px minmax(0,1fr)!important}
  .play-timers{grid-column:1/-1;width:100%}
  .bottom-profit-row{flex-wrap:wrap}
  .bottom-profit-row span{white-space:normal}
}


/* v27: draw countdowns, all-game plans, fund actions */
.draw-game{padding:11px!important;cursor:pointer;touch-action:manipulation}
.draw-game-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding-bottom:9px!important
}
.draw-title-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto}
.draw-title-left>div{min-width:0;max-width:100%}
.draw-title-left b{display:block;font-size:14px!important;font-weight:900!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.draw-title-left small{display:block;margin-top:2px;font-size:10px!important;color:#7b879a!important}
.draw-title-countdown{text-align:right;flex:none}
.draw-title-countdown small{display:block;font-size:10px!important;color:#7f8ba0!important;font-weight:800}
.draw-page-countdown{
  display:block!important;
  margin-top:2px!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:950!important;
  color:#ff5d75!important;
  letter-spacing:.5px
}
.draw-current-balls{
  padding:10px 0 8px;
  border-top:1px solid rgba(148,163,184,.14);
  border-bottom:1px solid rgba(148,163,184,.12)
}
.draw-current-balls .draw-balls{gap:6px!important;flex-wrap:nowrap!important;overflow-x:auto!important}
.draw-current-balls .draw-ball:not(.lucky28-ball){width:30px!important;height:30px!important;min-width:30px!important;font-size:11px!important}
.draw-empty-inline{font-size:11px;color:#8a95a6}
.draw-history-list .draw-row{grid-template-columns:88px 1fr!important}
.draw-history-list .draw-row .draw-balls{justify-content:flex-start!important;flex-wrap:nowrap!important;overflow-x:auto!important}

.plan-section-title{
  display:flex;align-items:center;justify-content:space-between;
  margin:4px 2px 10px
}
.plan-section-title.all{margin-top:18px}
.plan-section-title b{font-size:16px;font-weight:950}
.plan-section-title span{font-size:11px;color:#7f8ba0;font-weight:800}
.plan-card.detailed{padding:12px!important}
.plan-card.detailed .plan-head{
  grid-template-columns:34px 1fr auto!important
}
.plan-card.detailed .plan-head em{
  font-size:18px!important;
  font-weight:950!important;
  color:#ff5d75!important
}
.plan-target{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:9px;padding:8px 9px;border-radius:9px;background:#111831
}
.plan-target span{font-size:10px;color:#8c98ac;font-weight:800}
.plan-target b{font-size:12px;color:#dce5f3}
.plan-pick-details{
  margin-top:8px;padding:4px 9px;border-radius:9px;background:#111831
}
.plan-detail-row{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:7px 0;border-bottom:1px solid rgba(148,163,184,.10)
}
.plan-detail-row:last-child{border-bottom:0}
.plan-detail-row b{font-size:11px;color:#8d99ad}
.plan-detail-row span{font-size:12px;font-weight:900;color:#4b9cff;text-align:right}
.all-plan-games{display:flex;flex-direction:column;gap:9px}
.all-plan-card{
  background:#0d1430;border:1px solid rgba(113,133,255,.09);
  border-radius:15px;padding:11px
}
.all-plan-head{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center}
.all-plan-head>div b,.all-plan-head>div small{display:block}
.all-plan-head>div b{font-size:13px;font-weight:900}
.all-plan-head>div small{margin-top:2px;font-size:9px;color:#8490a5}
.plan-game-countdown{font-size:18px!important;font-weight:950!important;color:#ff5d75!important}
.all-plan-meta{
  display:grid;grid-template-columns:48px 1fr;gap:8px;
  margin-top:7px;padding:7px 8px;border-radius:8px;background:#111831
}
.all-plan-meta span{font-size:10px;color:#8490a5;font-weight:800}
.all-plan-meta b{font-size:11px;color:#dce5f3;font-weight:900}
.all-plan-card>button{
  width:100%;margin-top:8px;min-height:38px;border:0;border-radius:9px;
  background:linear-gradient(135deg,#5b62ff,#8b5cf6);color:#fff;font-size:12px;font-weight:900
}

.fund-mask{
  position:fixed;z-index:1300;inset:0;
  background:rgba(2,5,16,.58);
  display:flex;align-items:flex-end;justify-content:center
}
.fund-sheet{
  width:min(100%,520px);padding:14px 14px calc(18px + env(safe-area-inset-bottom));
  border-radius:20px 20px 0 0;
  background:#0b1129;border:1px solid rgba(113,133,255,.13)
}
.fund-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.fund-head>div b,.fund-head>div small{display:block}
.fund-head>div b{font-size:18px;font-weight:950}
.fund-head>div small{margin-top:3px;font-size:10px;color:#8390a6}
.fund-head>button{
  width:34px;height:34px;border:0;border-radius:12px;
  background:#17213d;color:#fff;font-size:20px
}
.promo-card{
  padding:18px;border-radius:16px;
  background:linear-gradient(135deg,rgba(245,158,11,.20),rgba(239,68,68,.14));
  border:1px solid rgba(245,158,11,.30)
}
.promo-card span,.promo-card small{display:block}
.promo-card span{font-size:12px;font-weight:900}
.promo-card strong{display:block;margin:8px 0;font-size:34px;color:#f59e0b}
.promo-card small{font-size:10px;color:#9aa6b8}
.fund-form label>span{display:block;margin-bottom:7px;font-size:12px;font-weight:900}
.fund-form label>div{
  height:50px;display:flex;align-items:center;
  border:1px solid #27314d;background:#111831;border-radius:12px;overflow:hidden
}
.fund-form label b{padding-left:12px;font-size:16px;color:#8d99ad}
.fund-form input{
  width:100%;height:100%;border:0;outline:0;background:transparent;
  color:#fff;padding:0 10px;font-size:20px!important;font-weight:950!important
}
.fund-balance{
  display:flex;justify-content:space-between;align-items:center;
  margin:10px 2px 12px;font-size:11px;color:#8995a9
}
.fund-balance b{font-size:14px;color:#fff}
.fund-submit{
  width:100%;min-height:48px;border:0;border-radius:12px;
  background:linear-gradient(135deg,#ff5d75,#7357ff);
  color:#fff;font-size:14px;font-weight:950;margin-top:12px
}
.fund-submit:disabled{background:#303a50!important;color:#7f8a9c!important}

html[data-theme="light"] .draw-title-left b,
html[data-theme="light"] .plan-section-title b,
html[data-theme="light"] .all-plan-head>div b{color:#1f2937!important}
html[data-theme="light"] .draw-current-balls{border-color:#e5eaf0!important}
html[data-theme="light"] .plan-target,
html[data-theme="light"] .plan-pick-details,
html[data-theme="light"] .all-plan-meta{background:#f5f7fa!important}
html[data-theme="light"] .plan-target b,
html[data-theme="light"] .all-plan-meta b{color:#334155!important}
html[data-theme="light"] .all-plan-card{
  background:#fff!important;color:#1f2937!important;border-color:#e0e6ee!important
}
html[data-theme="light"] .fund-sheet{background:#fff!important;color:#1f2937!important;border-color:#e1e7ef!important}
html[data-theme="light"] .fund-head>button{background:#edf2f7!important;color:#475569!important}
html[data-theme="light"] .fund-form label>div{background:#f5f7fa!important;border-color:#dce3eb!important}
html[data-theme="light"] .fund-form input{color:#1f2937!important}
html[data-theme="light"] .fund-balance{color:#465569!important}
html[data-theme="light"] .fund-balance b{color:#1f2937!important}


/* v28 auth + sourced plan compact controls */
.small-plan-enter{
  width:auto!important;
  min-width:72px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:9px!important;
  font-size:11px!important;
  font-weight:900!important;
}
.plan-actions{
  justify-content:flex-end!important;
}
.real-source .external-plan-head{
  align-items:center!important;
}
.external-plan-head>div{min-width:0}
.external-plan-head>div small{
  display:block;
  margin-top:3px;
  font-size:10px!important;
  color:#7c879a!important;
  font-weight:800;
}
.external-plan-controls{
  display:flex;
  align-items:center;
  gap:8px;
  flex:none;
}
.external-plan-controls>strong{
  font-size:19px!important;
  color:#ff5d75!important;
  font-weight:950!important;
}
.external-plan-controls .plan-bet-open{
  min-width:46px;
  height:30px;
  padding:0 10px!important;
  border-radius:9px!important;
  background:#243354!important;
  color:#dce6f7!important;
  font-size:11px!important;
  font-weight:900!important;
}
.external-plan-controls .plan-bet-open.active{
  background:linear-gradient(135deg,#5b62ff,#8b5cf6)!important;
  color:#fff!important;
}
.plan-source-line{
  margin:8px 0;
  padding:7px 9px;
  border-radius:8px;
  background:#111831;
  font-size:9px;
  color:#7f8ba0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.real-plan-feature{
  padding:10px;
  border-radius:10px;
  background:linear-gradient(135deg,rgba(91,98,255,.12),rgba(139,92,246,.10));
  border:1px solid rgba(113,133,255,.16);
}
.real-plan-feature span,.real-plan-feature small{display:block}
.real-plan-feature span{font-size:10px;color:#8490a5;font-weight:800}
.real-plan-feature b{
  display:block;
  margin:6px 0;
  font-size:19px;
  color:#4b9cff;
  letter-spacing:.6px;
}
.real-plan-feature small{font-size:10px;color:#8b96a8}
.auth-mask{
  position:fixed;
  inset:0;
  z-index:1400;
  background:rgba(2,5,16,.62);
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.auth-sheet{
  width:min(100%,520px);
  max-height:88vh;
  overflow:auto;
  padding:15px 14px calc(18px + env(safe-area-inset-bottom));
  border-radius:22px 22px 0 0;
  background:#0b1129;
  border:1px solid rgba(113,133,255,.13);
}
.auth-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}
.auth-head b{display:block;font-size:18px;font-weight:950}
.auth-head small{display:block;margin-top:3px;font-size:10px;color:#8591a5}
.auth-head>button{
  width:34px;height:34px;border:0;border-radius:12px;
  background:#17213d;color:#fff;font-size:20px
}
.auth-form{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.auth-form label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:11px;
  font-weight:900;
  color:#aab4c7;
}
.auth-form input,
.auth-resend input{
  width:100%;
  min-height:46px;
  border:1px solid #27314d;
  border-radius:11px;
  background:#111831;
  color:#fff;
  padding:0 12px;
  outline:0;
  font-size:16px!important;
}
.auth-submit{
  min-height:48px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#ff5d75,#7357ff);
  color:#fff;
  font-size:14px;
  font-weight:950;
  margin-top:4px;
}
.auth-submit:disabled{opacity:.55}
.auth-switch{
  width:100%;
  margin-top:10px;
  min-height:40px;
  border:0;
  background:transparent;
  color:#65a7ff;
  font-size:12px;
  font-weight:900;
}
.auth-links{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:10px;
}
.auth-links button{
  border:0;background:transparent;color:#65a7ff;
  padding:7px 2px;font-size:11px;font-weight:900
}
.auth-resend{
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px;
  margin-top:10px;
}
.auth-resend input{min-height:40px!important;font-size:13px!important}
.auth-resend button{
  border:0;border-radius:9px;
  padding:0 10px;
  background:#17213d;
  color:#dce5f3;
  font-size:10px;
  font-weight:900;
}
html[data-theme="light"] .auth-sheet{
  background:#fff!important;
  color:#1f2937!important;
  border-color:#e1e7ef!important
}
html[data-theme="light"] .auth-head>button,
html[data-theme="light"] .auth-resend button{
  background:#edf2f7!important;
  color:#475569!important
}
html[data-theme="light"] .auth-form label{color:#465569!important}
html[data-theme="light"] .auth-form input,
html[data-theme="light"] .auth-resend input{
  background:#f7f9fc!important;
  color:#1f2937!important;
  border-color:#dce3eb!important
}
html[data-theme="light"] .plan-source-line{background:#f5f7fa!important;color:#465569!important}


/* v29 unified draw periods + no saved-plan action */
.bottom-action-row.single{
  display:block!important;
}
.bottom-action-row.single .confirm-btn{
  width:100%!important;
}
.draw-history-list.unified{
  display:flex;
  flex-direction:column;
  gap:0;
  margin-top:0!important;
}
.draw-history-list.unified .draw-row{
  display:grid!important;
  grid-template-columns:minmax(124px,36%) minmax(0,1fr)!important;
  align-items:center!important;
  gap:7px!important;
  min-height:50px;
  padding:9px 0!important;
  border-bottom:1px solid rgba(148,163,184,.12);
}
.draw-history-list.unified .draw-row.latest{
  padding-top:10px!important;
}
.draw-row-issue{
  min-width:0;
  overflow:hidden;
}
.draw-row-issue b{
  display:block;
  font-size:11px!important;
  line-height:1.2;
  font-weight:900!important;
  color:#dce5f3!important;
  white-space:nowrap;
}
.draw-row-issue small{
  display:block;
  margin-top:3px;
  font-size:9px!important;
  line-height:1.2;
  color:#7f8ba0!important;
  white-space:nowrap;
}
.draw-row-balls{
  min-width:0;
  overflow:hidden;
}
.draw-row-balls .draw-balls{
  display:flex!important;
  justify-content:flex-start!important;
  gap:5px!important;
  overflow-x:auto!important;
  flex-wrap:nowrap!important;
  scrollbar-width:none;
}
.draw-row-balls .draw-balls::-webkit-scrollbar{display:none}
.draw-row-balls .draw-ball{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  font-size:13px!important;
  font-weight:950!important;
}
html[data-theme="light"] .draw-history-list.unified .draw-row{
  border-color:#e8edf3!important;
}
html[data-theme="light"] .draw-row-issue b{
  color:#243043!important;
}
html[data-theme="light"] .draw-row-issue small{
  color:#465569!important;
}


/* v30 draw history controls + aligned 10-number rows */

.play-result-toggle{
  width:calc(100% - 20px);
  margin:8px 10px 0;
  border:0;
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr) 16px;
  align-items:center;
  gap:6px;
  text-align:left;
  cursor:pointer;
}
.play-result-label b,
.play-result-label small{
  display:block;
}
.play-result-label b{
  font-size:12px;
  font-weight:950;
  color:#dbe5f3;
}
.play-result-label small{
  margin-top:3px;
  font-size:9px;
  color:#7f8ba0;
  white-space:nowrap;
}
.play-result-balls{
  min-width:0;
}
.play-result-toggle em{
  font-style:normal;
  font-size:14px;
  color:#8692a4;
  text-align:right;
}
.play-result-toggle .draw-balls,
.play-history-row .draw-balls{
  display:grid!important;
  grid-template-columns:repeat(var(--ball-count,5),minmax(0,1fr));
  gap:4px!important;
  flex-wrap:nowrap!important;
  width:100%;
}
.play-result-toggle.ten .draw-balls,
.play-history-row.ten .draw-balls{
  --ball-count:10;
  gap:2px!important;
}
.play-result-toggle .draw-ball,
.play-history-row .draw-ball{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:1;
  font-size:13px!important;
  font-weight:950!important;
}
.play-result-toggle.ten .draw-ball,
.play-history-row.ten .draw-ball{
  font-size:11px!important;
}
.play-history-panel{
  margin:0 10px 8px;
  border-radius:0 0 12px 12px;
  overflow:hidden;
  background:#0d1430;
  border-top:1px solid rgba(148,163,184,.12);
}
.play-history-row{
  display:grid;
  grid-template-columns:82px minmax(0,1fr) 16px;
  align-items:center;
  gap:6px;
  min-height:50px;
  padding:9px;
  border-bottom:1px solid rgba(148,163,184,.10);
}
.play-history-row:last-child{border-bottom:0}
.play-history-issue b,
.play-history-issue small{display:block}
.play-history-issue b{
  font-size:10px;
  font-weight:900;
  color:#cfd9e7;
}
.play-history-issue small{
  margin-top:2px;
  font-size:8px;
  color:#718096;
  white-space:nowrap;
}
.play-history-balls{
  min-width:0;
}

.draw-expand-btn{
  width:100%;
  min-height:36px;
  margin-top:7px;
  border:0;
  border-radius:9px;
  background:#151f39;
  color:#8fa0ba;
  font-size:11px;
  font-weight:900;
}
.draw-row.ten .draw-row-balls .draw-balls{
  display:grid!important;
  grid-template-columns:repeat(10,minmax(0,1fr))!important;
  gap:2px!important;
  overflow:visible!important;
  width:100%;
}
.draw-row.ten .draw-row-balls .draw-ball{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:1;
  font-size:11px!important;
  font-weight:950!important;
}
.draw-row:not(.ten) .draw-row-balls .draw-balls{
  overflow:visible!important;
}
html[data-theme="light"] .play-result-label b,
html[data-theme="light"] .play-history-issue b{
  color:#243043!important;
}
html[data-theme="light"] .play-history-issue small{
  color:#66758a!important;
}
html[data-theme="light"] .play-history-panel{
  background:#fff!important;
  border-color:#e7ebf0!important;
}
html[data-theme="light"] .play-history-row{
  border-color:#edf1f5!important;
}
html[data-theme="light"] .draw-expand-btn{
  background:#f1f5f9!important;
  color:#465569!important;
}
@media(max-width:390px){
  .play-result-toggle,
  .play-history-row{
    grid-template-columns:74px minmax(0,1fr) 12px;
    gap:4px;
  }
  .draw-row.ten .draw-row-balls .draw-balls,
  .play-result-toggle.ten .draw-balls,
  .play-history-row.ten .draw-balls{
    gap:1px!important;
  }
  .draw-row.ten .draw-row-balls .draw-ball,
  .play-result-toggle.ten .draw-ball,
  .play-history-row.ten .draw-ball{
    font-size:10px!important;
  }
}


/* v31 account cleanup + one canonical PK10 palette */
.my-stats.two{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.my-stats.one{grid-template-columns:1fr!important}
.my-stats.two div{padding:8px 4px!important}
.my-stats.two strong{font-size:14px!important}

/* Canonical 澳洲幸运10 palette cycles across every numeric result; 0 reuses 10. K3/LHC stay independent. */
.draw-ball.au-color.pk-01{background:#f4c20d!important;color:#161616!important}
.draw-ball.au-color.pk-02{background:#1687e8!important;color:#fff!important}
.draw-ball.au-color.pk-03{background:#59636f!important;color:#fff!important}
.draw-ball.au-color.pk-04{background:#ff7a18!important;color:#fff!important}
.draw-ball.au-color.pk-05{background:#18b9c8!important;color:#fff!important}
.draw-ball.au-color.pk-06{background:#7b50e8!important;color:#fff!important}
.draw-ball.au-color.pk-07{background:#a6adb6!important;color:#111827!important}
.draw-ball.au-color.pk-08{background:#ef4444!important;color:#fff!important}
.draw-ball.au-color.pk-09{background:#c93452!important;color:#fff!important}
.draw-ball.au-color.pk-10{background:#11a66a!important;color:#fff!important}


/* v33 readable play-mode tabs */
.mode-tabs{
  gap:8px!important;
  padding:10px 0 12px!important;
}
.mode-tabs button{
  min-height:42px!important;
  padding:9px 14px!important;
  border:1px solid #2a3553!important;
  border-radius:11px!important;
  background:#141c35!important;
  color:#e3e9f3!important;
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.1px!important;
  opacity:1!important;
}
.mode-tabs button.active{
  background:linear-gradient(135deg,#5b62ff,#8e48ff)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(91,98,255,.24)!important;
}
html[data-theme="light"] .mode-tabs button{
  background:#eef2f7!important;
  border-color:#d6dee8!important;
  color:#263244!important;
}
html[data-theme="light"] .mode-tabs button.active{
  background:linear-gradient(135deg,#5b62ff,#8e48ff)!important;
  border-color:transparent!important;
  color:#fff!important;
}


/* v34 mobile auth stability + K3 dice faces */
.auth-sheet{
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.auth-form input{
  scroll-margin-top:80px;
  scroll-margin-bottom:180px;
}
.draw-ball.dice-ball{
  display:inline-grid!important;
  place-items:center!important;
  font-family:system-ui,-apple-system,"Apple Symbols","Segoe UI Symbol",sans-serif!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:700!important;
}
.number-grid button.k3-pick{
  font-family:system-ui,-apple-system,"Apple Symbols","Segoe UI Symbol",sans-serif!important;
  font-size:24px!important;
  line-height:1!important;
  letter-spacing:2px;
}
.number-grid button.k3-pick.active{
  color:#fff!important;
}
@media(max-width:390px){
  .draw-ball.dice-ball{font-size:18px!important}
  .number-grid button.k3-pick{font-size:22px!important}
}


/* v35 K3 uses neutral standard dice only */
.draw-die.normal-die{
  display:inline-block!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#111!important;
  font-family:Arial,"Apple Symbols","Segoe UI Symbol",sans-serif!important;
  font-size:30px!important;
  line-height:1!important;
  font-weight:400!important;
}
html[data-theme="dark"] .draw-die.normal-die{
  color:#fff!important;
}
.number-grid button.k3-pick.normal-die-pick{
  background:#fff!important;
  color:#111!important;
  border:1px solid #d8dee7!important;
  box-shadow:none!important;
  font-family:Arial,"Apple Symbols","Segoe UI Symbol",sans-serif!important;
  font-size:28px!important;
  font-weight:400!important;
  letter-spacing:0!important;
}
.number-grid button.k3-pick.normal-die-pick.active{
  background:#e9eef5!important;
  color:#111!important;
  border:2px solid #4b5563!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .number-grid button.k3-pick.normal-die-pick{
  background:#fff!important;
  color:#111!important;
  border-color:#d8dee7!important;
}
html[data-theme="dark"] .number-grid button.k3-pick.normal-die-pick.active{
  background:#e9eef5!important;
  color:#111!important;
  border-color:#4b5563!important;
}


/* v36 standard dice, compact order panel */
/* Font Awesome dice faces: no AU10 color mapping */
.draw-die.normal-die{
  display:inline-grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  margin:0 2px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:27px!important;
  line-height:1!important;
}
html[data-theme="light"] .draw-die.normal-die{
  color:#111827!important;
}
.draw-die.normal-die i{
  display:block!important;
  font-size:inherit!important;
  line-height:1!important;
}
.number-grid button.k3-pick.normal-die-pick{
  display:grid!important;
  place-items:center!important;
  background:#fff!important;
  color:#111827!important;
  border:1px solid #d5dbe5!important;
  box-shadow:none!important;
  font-size:26px!important;
  letter-spacing:0!important;
}
.number-grid button.k3-pick.normal-die-pick i{
  font-size:26px!important;
  line-height:1!important;
}
.number-grid button.k3-pick.normal-die-pick.active{
  background:#eef2f7!important;
  color:#111827!important;
  border:2px solid #374151!important;
  box-shadow:0 0 0 2px rgba(55,65,81,.08)!important;
}
.number-grid button.k3-pick.normal-die-pick .fa-solid{
  color:inherit!important;
}

/* Canonical mobile draw geometry */
.play-top{
  grid-template-columns:30px 30px minmax(0,1fr) auto!important;
  gap:6px!important;
}
.play-issue p{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  font-size:10.5px!important;
  line-height:1.2!important;
}
.draw-title-left{gap:6px!important}
.draw-title-left small{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:normal!important;
  line-height:1.2!important;
}
.play-result-toggle,
.play-history-row{
  grid-template-columns:96px minmax(0,1fr) 12px!important;
  gap:6px!important;
  padding:9px!important;
}
.play-history-row{min-height:52px!important}
.play-result-label small,
.play-history-issue b{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.15!important;
}
.play-history-issue b{font-size:10px!important}
.play-history-issue small{
  display:block!important;
  margin-top:3px!important;
  font-size:9px!important;
  line-height:1.1!important;
  color:#718096!important;
  white-space:nowrap!important
}
.play-result-toggle .draw-balls,
.play-history-row .draw-balls{
  display:grid!important;
  grid-template-columns:repeat(var(--ball-count,5),minmax(0,1fr))!important;
  gap:4px!important;
  width:100%!important;
  flex-wrap:nowrap!important;
}
.play-result-toggle .draw-ball,
.play-history-row .draw-ball{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:1!important;
  font-size:clamp(18px,6vw,24px)!important;
  line-height:1!important;
}
.play-result-toggle.ten .draw-ball,
.play-history-row.ten .draw-ball{font-size:clamp(11px,3.3vw,13px)!important}
.draw-history-list.unified .draw-row,
.draw-history-list.unified .draw-row.ten{
  grid-template-columns:minmax(124px,36%) minmax(0,1fr)!important;
  gap:7px!important;
}
.draw-row-issue b{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  line-height:1.1!important;
  font-size:clamp(9.5px,2.65vw,10.5px)!important;
  letter-spacing:-.25px!important;
}
.draw-row-issue small{
  white-space:nowrap!important;
  overflow:hidden!important;
  font-size:9.5px!important;
  line-height:1.2!important;
}
.draw-row-balls .draw-balls{
  display:grid!important;
  grid-template-columns:repeat(var(--ball-count,5),minmax(0,1fr))!important;
  gap:3px!important;
  width:100%!important;
  overflow:visible!important;
  flex-wrap:nowrap!important;
}
.draw-row-balls .draw-ball{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:1!important;
  font-size:clamp(11px,3.6vw,18px)!important;
}
.draw-row.ten .draw-row-balls .draw-ball{font-size:clamp(9px,2.8vw,12px)!important}
.draw-row-balls .lhc-balls{
  gap:3px!important;
}
.draw-row-balls .draw-balls.lucky28-balls,
.play-result-toggle .draw-balls.lucky28-balls,
.play-history-row .draw-balls.lucky28-balls{
  display:flex!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:auto!important;
  overflow:visible!important;
}
.draw-row-balls .lucky28-balls .lucky28-ball,
.play-result-toggle .lucky28-balls .lucky28-ball,
.play-history-row .lucky28-balls .lucky28-ball{
  width:28px!important;min-width:28px!important;max-width:28px!important;
  height:28px!important;min-height:28px!important;max-height:28px!important;
  flex:0 0 28px!important;flex-basis:28px!important;
  aspect-ratio:1/1!important;border-radius:6px!important;
  font-size:11px!important;line-height:28px!important;padding:0!important
}
.lhc-result-ball{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  line-height:1!important;
  padding:1px 0!important;
}
.lhc-number{
  display:block!important;
  font-size:.9em!important;
  line-height:.95!important;
  font-weight:950!important;
  color:#fff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.16)!important;
}
.lhc-zodiac{
  display:block!important;
  margin-top:2px!important;
  font-size:.40em!important;
  line-height:1!important;
  font-weight:950!important;
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 1px 1px rgba(0,0,0,.14)!important;
}
.play-result-toggle .lhc-result-ball,
.play-history-row .lhc-result-ball,
.draw-row-balls .lhc-result-ball{aspect-ratio:1.05!important}
.play-result-toggle .lhc-result-ball,
.play-history-row .lhc-result-ball{font-size:22px!important}
.draw-row-balls .lhc-result-ball{font-size:20px!important}
.category-draw .lhc-balls{
  display:grid!important;
  grid-template-columns:repeat(var(--ball-count,7),minmax(0,1fr))!important;
  gap:4px!important;
  width:min(100%,244px)!important;
  overflow:visible!important;
}
.category-draw .lhc-result-ball{
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  aspect-ratio:auto!important;
  border-radius:7px!important;
  font-size:21px!important;
}
.category-draw .lhc-number{font-size:clamp(13px,4.3vw,17px)!important}
.category-draw .lhc-zodiac{font-size:9px!important;margin-top:2px!important}
@media(max-width:390px){
  .play-top{grid-template-columns:30px 30px minmax(0,1fr)!important}
  .play-result-toggle,
  .play-history-row{
    grid-template-columns:88px minmax(0,1fr) 10px!important;
    gap:4px!important;
    padding:8px!important;
  }
  .draw-history-list.unified .draw-row,
  .draw-history-list.unified .draw-row.ten{
    grid-template-columns:minmax(124px,36%) minmax(0,1fr)!important;
    gap:6px!important;
  }
  .play-result-toggle .draw-balls,
  .play-history-row .draw-balls{gap:2px!important}
  .draw-row-balls .draw-balls{gap:2px!important}
}

/* Smaller fixed order panel */

.play-bottom{
  gap:4px!important;
  padding:6px 8px 7px!important;
}
.bottom-profit-row{
  min-height:24px!important;
  padding:4px 7px!important;
  border-radius:8px!important;
}
.bottom-profit-row span{
  font-size:10px!important;
}
.bottom-profit-row b,
.bottom-profit-row strong{
  font-size:12px!important;
}
.bottom-stake-row{
  grid-template-columns:auto minmax(0,1fr) 72px 56px!important;
  gap:5px!important;
}
.bottom-stake-label{
  font-size:11px!important;
}
.bottom-stake-presets{
  gap:4px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
}
.play-bottom .bottom-stake-presets button{
  min-width:48px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0 6px!important;
  font-size:11px!important;
  border-radius:7px!important;
}
.bottom-stake-input{
  height:30px!important;
  border-radius:7px!important;
}
.bottom-stake-input input{
  font-size:13px!important;
  padding:0 5px!important;
}
.bottom-summary-row{
  min-height:18px!important;
}
.bottom-summary-row span{
  font-size:10px!important;
}
.bottom-summary-row b{
  font-size:12px!important;
}
.bottom-lock-row{
  display:none!important;
}
.play-bottom .bottom-action-row{
  margin-top:0!important;
}
.play-bottom .confirm-btn{
  min-height:40px!important;
  height:40px!important;
  font-size:13px!important;
  border-radius:9px!important;
}
@media(max-width:390px){
  .play-result-toggle{
    grid-template-columns:88px minmax(0,1fr) 10px!important;
  }
  .play-history-row{
    grid-template-columns:88px minmax(0,1fr)!important;
  }
  .play-history-issue b{
    font-size:10px!important;
    white-space:nowrap!important;
  }
  .play-bottom .bottom-stake-presets button{
    min-width:44px!important;
    padding:0 4px!important;
  }
}


.favorites-page-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 10px;
}
.favorites-page-head>div{min-width:0}
.favorites-page-head h1{margin:0;font-size:19px;line-height:1.2}
.favorites-page-head p{margin:3px 0 0;font-size:10px;color:#7f8ba0}
html[data-theme="light"] .favorites-page-head h1{color:#243043!important}
html[data-theme="light"] .favorites-page-head p{color:#465569!important}
html[data-theme="light"] .lhc-result-ball{
  box-shadow:0 2px 6px rgba(15,23,42,.16)!important;
}
html[data-theme="light"] .lhc-result-ball .lhc-number,
html[data-theme="light"] .lhc-result-ball .lhc-zodiac{
  color:#fff!important;
  opacity:1!important;
}
html[data-theme="light"] .category-draw .lhc-result-ball{
  box-shadow:0 2px 5px rgba(15,23,42,.14)!important;
}

/* v43 mobile auth keyboard-safe layout */
html.auth-open,
html.auth-open body{
  overflow:hidden!important;
  overscroll-behavior:none;
}
.auth-mask{
  position:fixed!important;
  inset:auto 0 auto 0!important;
  top:var(--auth-vv-top,0px)!important;
  height:var(--auth-vv-height,100dvh)!important;
  min-height:0!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:8px 8px max(8px,env(safe-area-inset-bottom))!important;
  overflow:hidden!important;
}
.auth-sheet{
  width:min(100%,520px)!important;
  max-height:calc(var(--auth-vv-height,100dvh) - 16px)!important;
  margin:0!important;
  padding:0 14px max(12px,env(safe-area-inset-bottom))!important;
  border-radius:18px!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-padding-top:68px!important;
  scroll-padding-bottom:78px!important;
}
.auth-head{
  position:sticky!important;
  top:0!important;
  z-index:6!important;
  margin:0 -14px 10px!important;
  padding:12px 14px 10px!important;
  background:#0b1129!important;
  border-bottom:1px solid rgba(113,133,255,.10);
}
.auth-form{
  min-height:0!important;
}
.auth-form label{
  scroll-margin-top:72px!important;
  scroll-margin-bottom:92px!important;
}
.auth-form input,
.auth-resend input{
  min-height:44px!important;
  font-size:16px!important;
}
.auth-submit{
  position:sticky!important;
  bottom:0!important;
  z-index:5!important;
  width:100%!important;
  min-height:48px!important;
  margin:6px 0 0!important;
  box-shadow:0 -10px 20px rgba(5,9,24,.28)!important;
}
.auth-switch,
.auth-links,
.auth-resend{
  position:relative;
  z-index:2;
}
html.auth-keyboard-open .auth-mask{
  padding-top:4px!important;
  padding-bottom:4px!important;
}
html.auth-keyboard-open .auth-sheet{
  max-height:calc(var(--auth-vv-height,100dvh) - 8px)!important;
  border-radius:14px!important;
}
html.auth-keyboard-open .auth-head{
  padding-top:8px!important;
  padding-bottom:7px!important;
  margin-bottom:7px!important;
}
html.auth-keyboard-open .auth-form{
  gap:7px!important;
}
html.auth-keyboard-open .auth-form label{
  gap:4px!important;
}
html.auth-keyboard-open .auth-form input{
  min-height:42px!important;
}
html[data-theme="light"] .auth-head{
  background:#fff!important;
  border-bottom-color:#e8edf3!important;
}
html[data-theme="light"] .auth-submit{
  box-shadow:0 -10px 20px rgba(226,232,240,.82)!important;
}
@media(max-width:480px){
  .auth-sheet{
    width:100%!important;
  }
  .auth-head b{font-size:17px!important}
  .auth-head small{font-size:10px!important}
}


/* v46 K3 real dice: ivory body + physical pip layout */
.real-die{
  position:relative!important;
  display:inline-block!important;
  flex:0 0 auto!important;
  width:30px!important;
  height:30px!important;
  border-radius:7px!important;
  background:linear-gradient(145deg,#fffef8 0%,#f3f0e7 58%,#dfdacd 100%)!important;
  border:1px solid rgba(119,111,95,.42)!important;
  box-shadow:
    inset 1px 1px 1px rgba(255,255,255,.95),
    inset -1px -1px 2px rgba(109,101,86,.20),
    0 2px 4px rgba(0,0,0,.24)!important;
  vertical-align:middle!important;
}
.real-die .pip{
  position:absolute!important;
  width:5.5px!important;
  height:5.5px!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  background:#111827!important;
  box-shadow:inset 0 -1px 1px rgba(255,255,255,.18)!important;
  transform:translate(-50%,-50%)!important;
}
.real-die.red-pips .pip{background:#d3242b!important}
.real-die .p1{left:25%!important;top:25%!important}
.real-die .p2{left:50%!important;top:25%!important}
.real-die .p3{left:75%!important;top:25%!important}
.real-die .p4{left:25%!important;top:50%!important}
.real-die .p5{left:50%!important;top:50%!important}
.real-die .p6{left:75%!important;top:50%!important}
.real-die .p7{left:25%!important;top:75%!important}
.real-die .p8{left:50%!important;top:75%!important}
.real-die .p9{left:75%!important;top:75%!important}

.draw-die.normal-die{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  padding:0!important;
  margin:0 2px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:inherit!important;
  font-size:0!important;
}
.draw-die.normal-die .real-die{margin:0!important}

.category-draw .draw-die.normal-die{
  width:22px!important;
  min-width:22px!important;
  height:22px!important;
  margin:0 1px!important;
}
.category-draw .real-die{
  width:22px!important;
  height:22px!important;
  border-radius:5px!important;
}
.category-draw .real-die .pip{
  width:4px!important;
  height:4px!important;
}

.play-result-toggle .draw-die.normal-die,
.play-history-row .draw-die.normal-die,
.draw-row-balls .draw-die.normal-die{
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
}

.number-grid button.k3-pick.normal-die-pick{
  min-height:48px!important;
  background:#f4f5f7!important;
  border:1px solid #d5d9df!important;
  color:#111827!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  padding:5px!important;
  font-size:0!important;
}
.number-grid button.k3-pick.normal-die-pick .real-die{
  width:32px!important;
  height:32px!important;
  border-radius:7px!important;
}
.number-grid button.k3-pick.normal-die-pick .real-die .pip{
  width:6px!important;
  height:6px!important;
}
.number-grid button.k3-pick.normal-die-pick.k3-triple-pick .real-die{
  width:19px!important;
  height:19px!important;
  border-radius:5px!important;
}
.number-grid button.k3-pick.normal-die-pick.k3-triple-pick .real-die .pip{
  width:3.6px!important;
  height:3.6px!important;
}
.number-grid button.k3-pick.normal-die-pick.active{
  background:#e7ebf0!important;
  border:2px solid #374151!important;
  box-shadow:0 0 0 2px rgba(55,65,81,.08)!important;
}
html[data-theme="dark"] .number-grid button.k3-pick.normal-die-pick{
  background:#f4f5f7!important;
  border-color:#cfd5dd!important;
}
html[data-theme="dark"] .number-grid button.k3-pick.normal-die-pick.active{
  background:#e4e8ed!important;
  border-color:#374151!important;
}
@media(max-width:390px){
  .number-grid button.k3-pick.normal-die-pick.k3-triple-pick{
    padding:4px 2px!important;
    gap:2px!important;
  }
  .number-grid button.k3-pick.normal-die-pick.k3-triple-pick .real-die{
    width:17px!important;
    height:17px!important;
  }
  .number-grid button.k3-pick.normal-die-pick.k3-triple-pick .real-die .pip{
    width:3.2px!important;
    height:3.2px!important;
  }
}


/* v48 verified category logos only */
.category-art{position:relative!important;overflow:hidden!important}
.category-icon-fallback{position:absolute!important;inset:0!important;z-index:1!important}
.category-icon-img.verified-icon{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
  border-radius:10px!important;
}


/* Home account actions occupy the former balance slot, keeping the welcome card intact. */
.hero-banner>.home-top-bar{
  position:absolute;top:6px;left:4px;right:4px;z-index:6;
  display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;min-height:42px;
}
.home-top-bar .home-top-action{
  min-width:70px;min-height:36px;padding:6px 12px;
  border:1px solid rgba(214,174,91,.46);border-radius:12px;
  background:rgba(23,36,61,.86);color:#f6e2bb;font-size:14px;font-weight:800;
}
.home-top-bar .home-top-action:first-child{justify-self:start}
.home-top-bar .home-top-action:last-child{justify-self:end}
.home-top-bar .home-top-brand{
  color:#e6b458;font-size:clamp(15px,4vw,18px);font-weight:900;
  letter-spacing:1px;white-space:nowrap;text-align:center;
}
html[data-theme="light"] .home-top-bar .home-top-action{
  background:#fff8e9;color:#81530b;border-color:#dfc88e;
}
html[data-theme="light"] .home-top-bar .home-top-brand{color:#9a5c14}
.filter-scroll>.category-balance{
  flex:0 0 auto!important;
  height:20px!important;
  padding:2px 4px!important;
  margin:2px 0 0 2px!important;
  position:static!important
}
.filter-scroll>.category-balance>span{font-size:6px!important}
.filter-scroll>.category-balance>b{font-size:8px!important}
.filter-scroll>.category-balance>svg{width:9px!important;height:9px!important}
.record-tabs{align-items:center!important}
.record-tabs>.records-balance{margin-left:auto!important}
.plan-section-title>.plans-balance{margin-left:auto!important}
.favorites-page-head>.favorites-balance{margin-left:auto!important}
.draw-title-countdown{
  min-width:108px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:2px!important
}
.draw-title-countdown>.draw-balance{
  margin:0 0 1px auto!important;
}
.draw-game-title{
  grid-template-columns:minmax(0,1fr) auto!important
}
@media(max-width:390px){
  .page-inline-balance{height:22px!important;padding:3px 5px!important}
  .page-inline-balance>span{font-size:7px!important}
  .page-inline-balance>b{font-size:9px!important}
  .filter-scroll>.category-balance{height:19px!important;padding:2px 4px!important;margin-top:2px!important}
  .filter-scroll>.category-balance>span{font-size:6px!important}
  .filter-scroll>.category-balance>b{font-size:8px!important}
  .filter-scroll>.category-balance>svg{width:8px!important;height:8px!important}
  .draw-title-countdown{min-width:98px!important}
}

/* Shared touch input docking. Reuse live controls and the existing dialog
   viewport measurement; no body/nav geometry writes, clones or placeholders. */
@media (pointer:coarse){
  html.auth-keyboard-open #app .bottom-nav{
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html.auth-keyboard-open #app :is(.auth-mask,.fund-mask:not([data-payment-layout]),.sheet-mask,.support-mask):has(:is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus){
    position:fixed!important;
    inset:auto 0 0!important;
    height:auto!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-items:flex-end!important;
  }
  html.auth-keyboard-open #app :is(.auth-mask,.fund-mask:not([data-payment-layout]),.sheet-mask,.support-mask):has(:is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus)>:is(.auth-sheet,.fund-sheet,.sheet-box,.support-sheet){
    max-height:calc(var(--auth-vv-height,100svh) - 8px)!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  html.auth-keyboard-open #app :is(.auth-mask,.fund-mask:not([data-payment-layout]),.sheet-mask,.support-mask):has(:is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus)>:is(.auth-sheet,.fund-sheet,.sheet-box){
    height:auto!important;
    overflow:auto!important;
  }
  html.auth-keyboard-open #app :is(.play-bottom,.stake-panel,.draw-controls,[data-personal-details],[data-security-panel],[data-account-key="feedback"]>div,[data-edit-nick],.page-section>div:has(>input)):has(:is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus):not(:where(.auth-mask *,.fund-mask *,.sheet-mask *,.support-mask *,.play-bottom *,.stake-panel *,.draw-controls *,[data-personal-details] *,[data-security-panel] *,[data-account-key="feedback"]>div *,[data-edit-nick] *,.page-section>div:has(>input) *)),
  html.auth-keyboard-open #app form:has(:is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus):not(:where(.auth-mask *,.fund-mask *,.sheet-mask *,.support-mask *,.play-bottom *,.stake-panel *,.draw-controls *,[data-personal-details] *,[data-security-panel] *,[data-account-key="feedback"]>div *,[data-edit-nick] *,.page-section>div:has(>input) *)){
    position:fixed!important;
    top:auto!important;
    bottom:var(--app-keyboard-bottom,0px)!important;
    left:0!important;
    right:0!important;
    margin:0 auto!important;
    width:min(calc(100% - 20px),500px)!important;
    max-height:calc(var(--auth-vv-height,100svh) - 8px)!important;
    overflow:auto!important;
    box-sizing:border-box;
    z-index:1301;
    transform:none!important;
    background:var(--ux-panel);
    padding:10px!important;
  }
  html.auth-keyboard-open #app :is(input:not([type="hidden"],[type="checkbox"],[type="radio"],[type="range"],[type="file"],[type="button"],[type="submit"],[type="reset"],[type="color"]):enabled:not([readonly]),textarea:enabled:not([readonly]),[contenteditable="true"],[contenteditable="plaintext-only"]):focus:not(:where(.auth-mask *,.fund-mask *,.sheet-mask *,.support-mask *,.play-bottom *,.stake-panel *,.draw-controls *,[data-personal-details] *,[data-security-panel] *,[data-account-key="feedback"]>div *,[data-edit-nick] *,.page-section>div:has(>input) *)):not(form *){
    position:fixed!important;
    top:auto!important;
    bottom:var(--app-keyboard-bottom,0px)!important;
    left:0!important;
    right:0!important;
    margin:0 auto!important;
    width:min(calc(100% - 20px),500px)!important;
    max-height:calc(var(--auth-vv-height,100svh) - 8px)!important;
    box-sizing:border-box;
    z-index:1301;
    background:var(--ux-field)!important;
    color:var(--ux-text)!important;
  }
}

.play-bottom:not(.show){display:none!important}
.play-bottom.show{animation:playBottomUp .12s ease-out backwards}
@keyframes playBottomUp{from{transform:translateY(calc(100% + 48px))}to{transform:translateY(0)}}


html[data-theme="light"] .quick-photo img,
html[data-theme="light"] .game-art-photo:not(.home-clear-photo) {
  filter: brightness(1.3) contrast(1.05) !important;
}
html[data-theme="light"] .bottom-nav {
  background: #f7f9fc;
  border-top-color: transparent;
}
html[data-theme="light"] .bottom-nav button { color: #6b7280; }
html[data-theme="light"] .bottom-nav button.active { color: #111827; }

/* Force identical nav for all states */
.bottom-nav,
.auth-open .bottom-nav,
html[data-theme] .bottom-nav {
  position: fixed !important;
  z-index: 999 !important;
  left: 50% !important;
  bottom: 0 !important;
  transform: translateX(-50%) !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  background: #06091b !important;
  border-top: 0 !important;
  padding-bottom: env(safe-area-inset-bottom) !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="light"] .bottom-nav,
html[data-theme="light"] .auth-open .bottom-nav {
  background: #f7f9fc !important;
  border-top-color: transparent !important;
}
.bottom-nav button {
  border: 0 !important;
  background: transparent !important;
  color: #9ca3af !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  font-size: 11px !important;
  min-width: 0 !important;
  width: 100% !important;
}
.bottom-nav button.active {
  color: #111827 !important;
}
html[data-theme="dark"] .bottom-nav button.active {
  color: #fff !important;
}

.draw-expand-btn {
  transition: transform .15s ease, background .15s ease;
}
.draw-expand-btn:active {
  transform: scale(0.92);
  background: rgba(38,161,123,.15);
}
.draw-expand-btn {
  font-weight: 900;
  font-size: 16px;
}

/* Account menu and actions */
.my-page .account-section{margin:10px 0;border:1px solid #27314d;border-radius:12px;padding:8px 12px}
.my-page .account-section>summary{padding:6px 0;font-size:14px;font-weight:700;cursor:pointer}
.my-page .account-button{min-height:36px;padding:8px 14px;border:0;border-radius:8px;background:#26a17b;color:#fff;font-size:14px;font-weight:700;line-height:20px;display:inline-flex;align-items:center;justify-content:center;text-align:center;cursor:pointer}
.my-page .account-button.sec-short{width:auto;min-width:6.2em;max-width:7em;padding:8px 12px;margin:0 6px 6px 0;display:inline-flex;font-size:13px;justify-content:center}
.sec-btn-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:8px 0}
.my-page .account-button:disabled{opacity:.55;cursor:default}
.my-page .account-section [data-fund-open]{flex:1}
.my-page .account-section textarea+.account-button{margin-top:8px}
.my-page .account-section .auth-form{margin:8px 0}
html[data-theme="light"] .my-page .account-section{border-color:#e5e7eb}

.announce-mail{position:relative;background:none;border:0;color:#72b4ff;font-size:18px;padding:0 4px;cursor:pointer}
.msg-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ef4444;color:#fff;font-style:normal;font-size:10px;line-height:16px;text-align:center;font-weight:700}
.msg-badge-inline{position:static;display:inline-block;margin-left:6px;vertical-align:middle}

/* ===== Button softening + select bounce (login/register excluded: .auth-sheet / .auth-entry untouched) ===== */
:root{--yx-btn-a:#ff8b9e;--yx-btn-b:#9b8bff;--yx-btn-c:#7c8dff;--yx-btn-shadow:rgba(155,139,255,.22)}
.confirm-btn:not(:disabled),
.auto-bet-start,
.fund-submit,
.number-grid button.active,
.stake-presets button.active,
.bottom-stake-presets button.active,
.type-scroll button.active{
  background:linear-gradient(135deg,var(--yx-btn-a),var(--yx-btn-b))!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 3px 10px var(--yx-btn-shadow)!important;
}
.mode-tabs button.active,
.filter-scroll button.active,
.record-tabs button.active,
.external-plan-controls .plan-bet-open.active,
.all-plan-card>button{
  background:linear-gradient(135deg,var(--yx-btn-c),var(--yx-btn-b))!important;
  color:#fff!important;
  box-shadow:0 3px 10px var(--yx-btn-shadow)!important;
}
/* uniform long buttons */
.bottom-action-row.single{display:flex!important;justify-content:center}
.bottom-action-row.single .confirm-btn,
.play-bottom .confirm-btn{
  width:176px!important;max-width:100%!important;height:40px!important;min-height:40px!important;
  border-radius:12px!important;font-size:14px!important;white-space:nowrap
}
.auto-bet-start{width:176px!important;height:38px!important;border-radius:12px!important;display:block;margin-left:auto;margin-right:auto}
/* select feedback + bounce */
.number-grid button,.mode-tabs button,.bottom-stake-presets button,.stake-presets button{transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s}
.number-grid button.active,.bottom-stake-presets button.active,.mode-tabs button.active{transform:scale(1.03)}
.number-grid button.yx-pop{animation:yx-pop .22s ease-out}
@keyframes yx-pop{0%{transform:scale(.92)}60%{transform:scale(1.06)}100%{transform:scale(1.03)}}
.confirm-btn:not(:disabled):active,.auto-bet-start:active{transform:scale(.96)}
@media(prefers-reduced-motion:reduce){.number-grid button.yx-pop{animation:none}}

/* 红金喜庆礼包卡 */

/* 紧凑红金活动卡：一行四张 */

.agent-section .agent-tip{padding:10px 0;font-size:13px;color:#999}
.agent-link{display:flex;gap:8px;align-items:center;margin:8px 0;padding:8px;border-radius:10px;background:linear-gradient(135deg,#7a0c1c,#b3122a);color:#ffe9a8;font-size:12px}
.agent-link span{flex:1;min-width:0;overflow-wrap:anywhere}
.agent-link button{flex:none;border:0;border-radius:8px;padding:6px 10px;background:#f5c451;color:#7a0c1c;font-weight:700;font-size:12px}
.agent-qr{display:flex;flex-direction:column;align-items:center;gap:6px;margin:8px 0}
.agent-qr img{width:150px;height:150px;background:#fff;padding:6px;border-radius:10px;border:2px solid #f5c451}
.agent-qr small{font-size:11px;color:#999}
.agent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}
.agent-grid div{background:linear-gradient(135deg,#8f1024,#c41e3a);border-radius:10px;padding:8px 4px;text-align:center;color:#ffe9a8}
.agent-grid b{display:block;font-size:14px;color:#ffd96b}
.agent-grid span{font-size:11px}
.agent-rule{font-size:12px;line-height:1.5;color:#999;margin:6px 0}
.agent-h{font-size:13px;font-weight:700;margin:6px 0}
.agent-rec{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;border-bottom:1px solid rgba(128,128,128,.2)}
.agent-rec small{display:block;font-size:11px;color:#999}
.agent-rec b{color:#26A17B}

/* 代理中心红金卡 */
.agent-grid.two{grid-template-columns:repeat(2,1fr)}
.ag-cards{display:flex;flex-direction:column;gap:10px;margin:8px 0}
.ag-card{padding:10px;border-radius:14px;background:linear-gradient(160deg,#d71a1a,#8f0b12 70%);border:2px solid #f3c969;box-shadow:inset 0 0 0 3px rgba(243,201,105,.35),0 6px 16px rgba(120,0,0,.3)}
.ag-title{text-align:center;font-size:22px;font-weight:900;letter-spacing:3px;background:linear-gradient(#fff6c8,#f7c948 60%,#e39a12);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #7a0710);line-height:1.2}
.ag-ribbon{width:max-content;max-width:100%;margin:3px auto 8px;padding:2px 14px;border-radius:12px;background:linear-gradient(#ffe9a8,#f3c969);color:#9a1018;font-size:12px;font-weight:800;box-shadow:0 2px 0 #b8801a}
.ag-panel{background:linear-gradient(#fffaf0,#ffe8bf);border:1px solid #f3c969;border-radius:12px;padding:10px;text-align:center;color:#4a1a10}
.ag-big{font-size:30px;font-weight:900;color:#f0a800;text-shadow:0 2px 0 #b4141a;-webkit-text-stroke:1px #b4141a}
.ag-desc{font-size:12px;color:#8a4a2a;margin:4px 0 6px}
.ag-got{font-size:13px;font-weight:700}.ag-got b{color:#d0161c;font-size:16px}
.ag-card>summary{list-style:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ag-card>summary::-webkit-details-marker{display:none}
.ag-more{font-size:11px;color:#c4161c;margin-top:6px;font-weight:700}
.ag-card[open] .ag-more{display:none}
.ag-detail{margin-top:8px;padding:10px;border-radius:12px;background:linear-gradient(#fffaf0,#ffe8bf);border:1px solid #f3c969;color:#4a1a10;font-size:13px}
.ag-rule{font-size:12px;line-height:1.6;color:#8a4a2a;margin-bottom:6px}
.ag-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px dashed #e8c98a}
.ag-detail .agent-h{color:#9a1018}.ag-detail .agent-tip{color:#8a5a3a}
.ag-detail .agent-rec{border-bottom-color:#e8c98a}

.support-head span{display:flex;gap:6px;align-items:center}.support-head .support-act{width:auto;padding:0 10px;font-size:11px;background:#5b62ff;color:#fff}
.support-msg{word-break:break-word}.support-msg small{display:block;opacity:.7;margin-bottom:2px}.support-msg.staff{align-self:flex-start;background:#0f5c4a;color:#e8fff7}.support-msg.system{align-self:center;background:transparent;color:#8a93ab;text-align:center;font-size:10px}
html[data-theme="light"] .support-head .support-act{background:#5b62ff!important;color:#fff!important}html[data-theme="light"] .support-msg.staff{background:#dcf7ec!important;color:#0b4a3a!important}

.my-agent-row{display:flex;justify-content:space-between;align-items:center;margin:8px 0;padding:12px 14px;border-radius:12px;background:linear-gradient(160deg,#d71a1a,#8f0b12 70%);border:1.5px solid #f3c969;color:#fff3c4;font-weight:800;cursor:pointer}
.my-agent-row i{font-style:normal;font-size:12px;font-weight:600}
.sheet-mask{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:999;display:flex;align-items:flex-end;justify-content:center}
.sheet-box{background:#fff;width:100%;max-width:420px;border-radius:16px 16px 0 0;padding:16px 16px 20px;max-height:88vh;overflow:auto;color:#222}
.sheet-head{display:flex;justify-content:space-between;align-items:center;font-size:18px}
.sheet-head button{border:0;background:none;font-size:26px;line-height:1;color:#666}

.vip-sheet{background:linear-gradient(#fff6e0,#fff);border-top:3px solid #f3c969}
.vip-sheet .sheet-head{background:linear-gradient(160deg,#d71a1a,#8f0b12);color:#ffe9a8;margin:-16px -16px 12px;padding:12px 16px;border-radius:14px 14px 0 0;font-weight:900;letter-spacing:2px}
.vip-sheet .sheet-head button{color:#ffe9a8}
.vip-hero{display:flex;align-items:center;gap:12px;background:linear-gradient(160deg,#d71a1a,#8f0b12);border:2px solid #f3c969;border-radius:14px;padding:12px;color:#fff}
.vip-badge{min-width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:19px;color:#8f0b12;background:radial-gradient(#fff6c8,#f7c948 65%,#e39a12);box-shadow:0 0 0 3px #b8801a,0 4px 10px rgba(0,0,0,.3)}
.vip-badge.off{filter:grayscale(.8);opacity:.8}
.vip-hero-t{display:flex;flex-direction:column;gap:3px}.vip-hero-t b{font-size:17px;color:#ffe9a8}.vip-hero-t small{font-size:12px;color:#ffd9d9}
.vip-login{width:100%;margin-top:10px;border:0;border-radius:10px;padding:10px;font-weight:800;color:#8f0b12;background:linear-gradient(#ffe9a8,#f3c969)}
.vip-next{margin:10px 0 4px;font-size:12px;color:#8a4a2a}
.vip-prog{height:8px;background:#f0e2c8;border-radius:5px;overflow:hidden;margin:5px 0}.vip-prog.big{height:12px;border:1px solid #f3c969}
.vip-prog i{display:block;height:100%;background:linear-gradient(90deg,#f7c948,#e0181c);border-radius:5px}
.vip-claim{background:#fffaf0;border:1px solid #f3c969;border-radius:12px;padding:10px;margin-top:8px;font-size:12px;color:#8a4a2a}
.vip-claim-h{display:flex;justify-content:space-between;align-items:center}.vip-claim-h b{font-size:15px;color:#4a1a10;margin-right:8px}.vip-claim-h em{font-style:normal;font-weight:900;font-size:18px;color:#d0161c}
.vip-claim-h button{border:0;border-radius:16px;padding:7px 16px;font-weight:800;color:#fff;background:linear-gradient(#e8262b,#b50f16);box-shadow:0 2px 0 #7a0710}
.vip-claim-h button:disabled{background:#c9c9cd;box-shadow:none;color:#fff}
.vip-tip{margin-top:8px;font-size:12px;color:#999;text-align:center}
.vip-sec{margin:14px 0 6px;font-weight:900;color:#9a1018;font-size:15px;border-left:4px solid #d71a1a;padding-left:8px}
.vip-table{border:1px solid #f3c969;border-radius:10px;overflow:hidden;font-size:12px}
.vip-tbody{max-height:260px;overflow-y:auto}
.vip-tr{display:grid;grid-template-columns:1.1fr 1.2fr 1fr 1fr;align-items:center;padding:7px 8px;border-top:1px solid #f6ead2;text-align:right;color:#4a1a10}
.vip-tr span:first-child{text-align:left}.vip-tr:first-child{border-top:0}
.vip-th{background:linear-gradient(#e8262b,#b50f16);color:#ffe9a8;font-weight:800}
.vip-tr b{margin-right:4px}.vip-tr u{text-decoration:none;font-size:10px;padding:1px 5px;border-radius:8px;background:#ffe3a0;color:#9a1018}
.vip-tr.cur{background:#ffe9a8;font-weight:800}.vip-tr.cur u{background:#d71a1a;color:#fff}
.vip-tr.ok{background:#fffaf0;color:#8a6a4a}
.vip-rules{margin-top:12px;font-size:12px;color:#8a4a2a;line-height:1.6}.vip-rules b{color:#9a1018;font-size:13px}.vip-rules p{margin:2px 0}

.my-grid div{background:linear-gradient(145deg,#fffafa,#ffecef)!important;border:1px solid #f3d8de;box-shadow:0 2px 6px rgba(156,66,84,.06);color:#80384a!important;height:auto!important;min-height:76px!important;max-height:none!important;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:9px 7px;box-sizing:border-box;overflow:visible;flex-shrink:0}
.my-grid div strong{color:#913b50!important;font-size:16px;font-weight:750;line-height:1.3;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;max-width:100%}
.my-grid div span{color:#9c6875!important;font-size:11px;margin-top:4px;white-space:normal;text-align:center;overflow-wrap:anywhere}
.my-grid .my-ent{cursor:pointer;-webkit-tap-highlight-color:transparent}.my-grid .my-ent:active{transform:scale(.96)}

/* 生日礼金卡 + 一行可滚动 */
.bd-box{margin-top:10px;padding:12px;border-radius:12px;background:#fffaf0;border:1px solid #f3c969;color:#4a1a10;display:flex;flex-direction:column;gap:8px;font-size:13px}
.bd-box input{padding:10px;border:1px solid #e0b860;border-radius:8px;font-size:16px;background:#fff;color:#4a1a10}
.bd-box small{color:#8a4a2a;font-size:12px;line-height:1.5}
.bd-btn{border:0;border-radius:10px;padding:11px;font-weight:800;color:#fff;background:linear-gradient(#e8262b,#b50f16);box-shadow:0 2px 0 #7a0710}
.bd-btn:disabled{background:#c9c9cd;box-shadow:none}


.device-card{margin-top:12px;background:#fff;color:#172033;border-radius:16px;overflow:hidden;box-shadow:0 2px 10px rgba(15,23,42,.12)}
.device-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid #e3e8f0}.device-head b{font-size:16px;color:#172033}
.device-ok{width:20px;height:20px;border-radius:50%;background:#52c41a;color:#fff;font-style:normal;font-size:13px;line-height:20px;text-align:center}
.device-row{display:flex;justify-content:space-between;gap:12px;padding:9px 16px;font-size:14px}.device-row span{color:#7b88a1;flex:none}.device-row b{font-weight:500;color:#172033;text-align:right;overflow-wrap:anywhere}
html:not([data-theme="light"]) .device-card{background:#111a38;color:#e8ecf7;box-shadow:none}
html:not([data-theme="light"]) .device-head{border-color:#26325a}html:not([data-theme="light"]) .device-head b,html:not([data-theme="light"]) .device-row b{color:#e8ecf7}html:not([data-theme="light"]) .device-row span{color:#8b97b0}

.device-card>summary.device-head{cursor:pointer;list-style:none;border-bottom:0}.device-card>summary.device-head::-webkit-details-marker{display:none}.device-card[open]>summary.device-head{border-bottom:1px solid #e3e8f0}html:not([data-theme="light"]) .device-card[open]>summary.device-head{border-color:#26325a}.device-arrow{margin-left:auto;width:8px;height:8px;border-right:2px solid #7b88a1;border-bottom:2px solid #7b88a1;transform:rotate(45deg);transition:transform .2s}.device-card[open] .device-arrow{transform:rotate(-135deg)}

/* pay sheets */
.fund-mask[data-payment-layout]{top:var(--auth-vv-top,0px);bottom:auto;height:100vh;height:var(--pay-vv-height,100dvh);padding-top:max(16px,env(safe-area-inset-top));box-sizing:border-box}
.fund-sheet.pay-sheet{width:min(calc(100% - 16px),440px);height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}
.pay-sheet .fund-head{flex:none;min-height:36px;margin-bottom:8px;gap:12px}
.pay-head-actions{display:flex;align-items:center;gap:8px;flex:none}
.pay-head-actions button{border:1px solid var(--ux-line);border-radius:8px;background:var(--ux-field);color:var(--ux-text);height:32px;min-width:32px;cursor:pointer}
.pay-head-actions .pay-history-entry{padding:0 8px;font-size:11px;white-space:nowrap}
.pay-top-time{display:block;flex:none;text-align:center;min-height:24px;margin:0 0 6px;font-size:12px;line-height:24px;font-variant-numeric:tabular-nums;color:var(--ux-muted)}
.pay-sheet .pay-address-row{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px;flex-wrap:nowrap;min-height:46px;box-sizing:border-box}
.pay-sheet .pay-receiving-method{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;min-height:46px;box-sizing:border-box}
.pay-sheet .pay-address-row .pay-ci{width:60px;min-width:60px;min-height:30px;padding:4px 6px;font-size:11px}
.fund-sheet.pay-sheet .pay-address-row>div{flex:1;min-width:0;max-width:100%;white-space:normal;word-break:normal}
.pay-address-row .pay-copyv{display:flex;align-items:center;justify-content:flex-end;min-width:0;gap:6px}
.pay-sheet .pay-address-row .pay-address-value:not(.pay-u-value){flex:1;min-width:0;max-width:100%;display:block;overflow-x:auto;overflow-y:hidden;text-overflow:clip;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:12px;line-height:1.5;user-select:text;-webkit-user-select:text;touch-action:pan-x;-webkit-overflow-scrolling:touch}
.pay-sheet .pay-u-address-row,.pe-card .pay-u-address-row{display:grid;align-items:center;grid-template-columns:32px minmax(0,1fr);gap:4px}
.pay-u-address-row .pay-copyv{container-type:inline-size;display:flex;gap:4px;width:100%}
.pay-sheet .pay-u-address-row .pay-ci,.pe-card .pay-u-address-row .pay-ci{width:32px;min-width:32px;padding:4px 0;font-size:10px;flex:none}
.pay-u-address-row .pay-u-value{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-size:min(12px,calc((100cqi - 36px) / var(--u-chars) / .62));font-weight:400;letter-spacing:0;line-height:1.6;white-space:nowrap;word-break:normal;overflow:visible;text-overflow:clip;flex:1;min-width:0;max-width:none;user-select:text;-webkit-user-select:text}
.pay-progress{display:flex;list-style:none;padding:0;margin:8px 0 12px;gap:6px;font-size:12px}
.pay-progress li{flex:1;border-top:3px solid var(--ux-line);padding-top:5px;color:var(--ux-muted)}
.pay-progress .done{border-color:#16a34a;color:#16a34a}
.pay-progress .current{border-color:#f59e0b;color:#f59e0b;animation:pay-pulse 1.8s ease-in-out infinite}
@keyframes pay-pulse{50%{opacity:.55}}
@media(prefers-reduced-motion:reduce){.pay-progress .current{animation:none}}
.pay-address-mask{font-size:12px;color:var(--ux-muted)}
.pay-address-row [hidden]{display:none!important}
.pay-private-qr{background:var(--ux-field)!important;color:var(--ux-text)!important}
.pay-qr-stage{width:180px;height:180px;max-width:100%;display:grid;place-items:center;margin:0 auto;overflow:hidden}
.pay-private-qr .pay-qr-stage svg,.pay-private-qr .pay-qr-stage img{width:180px;height:180px;max-width:100%;object-fit:contain;margin:0;background:#fff}
.pay-qr-cover{display:grid;place-items:center;width:100%;height:100%;border:1px dashed var(--ux-line);border-radius:10px;background:var(--ux-panel);color:var(--ux-muted);font-size:14px;box-sizing:border-box}
.pay-qr-reveal{margin-top:8px;min-height:34px;padding:6px 14px;border:1px solid var(--ux-line);border-radius:8px;background:var(--ux-panel);color:var(--ux-text);font-size:13px}
.pay-receiving>[hidden]{display:none!important}
.pay-receiving-clock{margin:8px 0;color:var(--ux-text);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.pay-receiving-expired{color:#b91c1c}
.pay-input[data-usdt-amount],.pay-input[data-withdraw-amount],.pay-req input[data-req-amount]{width:min(100%,180px)}
.pay-input[data-withdraw-pwd]{width:min(100%,220px)}
.pay-sheet .pay-body{flex:1 1 0;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:auto;scrollbar-width:none;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
.pay-fx{display:flex;align-items:center;gap:8px;height:42px;min-height:42px;font-size:11px;border-bottom:1px solid var(--ux-line);font-variant-numeric:tabular-nums}
.pay-fx span{flex:1;min-width:0;white-space:nowrap;color:var(--ux-text)}
.pay-fx button{flex:none;font-size:11px;border:1px solid var(--ux-line);background:var(--ux-field);color:var(--ux-text);border-radius:7px;padding:6px 8px}
.pay-sheet .pay-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(36px,auto);height:auto;max-height:none;overflow:visible;gap:7px}
.pay-methods:empty{display:none}
.pay-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:12px}
.pay-account-grid .pay-manual{min-width:0;margin:0;padding:10px;border:1px solid var(--ux-line);border-radius:10px;background:var(--ux-panel)}
.pay-manual h3{margin:0 0 8px;font-size:14px}
.pay-manual .pay-qrimg{display:block;width:150px;height:150px;object-fit:contain;margin:10px auto;background:#fff}
.pay-req label{display:block;font-size:11px;margin-top:8px;color:var(--ux-muted)}
.pay-req input{display:block;width:min(100%,260px);box-sizing:border-box}
.pay-req [data-req-msg]{min-height:34px}
.pay-sheet [data-wd-preview]{min-height:0;font-variant-numeric:tabular-nums}
.pay-sheet [data-wd-feewarn]{min-height:0}
.pay-sheet[data-payment-kind="withdraw"] :is([data-wd-preview],[data-wd-feewarn],[data-fund-status],[data-pay-notice]):empty{display:none}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-body{width:100%;max-width:320px;align-self:center;text-align:center;scrollbar-gutter:auto}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] :is(.pay-input,.pay-btn){display:block;width:100%;max-width:none;margin-inline:auto;text-align:center;min-height:42px;box-sizing:border-box}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-label{text-align:center}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-row{justify-content:center;align-items:center}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-row>div{text-align:center}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-copyv{align-items:center;justify-content:center}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-addr-full{text-align:center}
.pay-arrival-note{margin:10px 0;font-size:12px;line-height:1.6}
.pay-notice{min-height:22px;color:var(--ux-text);font-size:12px;line-height:1.6;margin:4px 0}
.pay-active-order{display:block;width:100%;padding:9px;margin:5px 0;border:1px solid var(--ux-line);border-radius:8px;background:var(--ux-field);color:var(--ux-text);text-align:left;font-size:11px;overflow-wrap:anywhere}
.pay-order-state{font-weight:800;color:#f59e0b;margin:8px 0;font-size:16px}.pay-order-state.complete{color:#16a34a}
.pay-countdown{min-height:38px;padding:8px;border:1px solid var(--ux-line);border-radius:8px;background:var(--ux-field);font-size:12px;color:var(--ux-text);font-variant-numeric:tabular-nums}
.pay-history-title{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pay-order-card{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px;padding:12px 8px;border:0;border-bottom:1px solid var(--ux-line);background:transparent;color:var(--ux-text);text-align:left}
.pay-order-card span{min-width:0}.pay-order-card b{display:block;font-size:12px;overflow-wrap:anywhere}.pay-order-card small{display:block;font-size:10px;color:var(--ux-muted);line-height:1.6}.pay-order-card strong{flex:none;font-size:12px}
.pay-history-pages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 0;font-size:12px}
.pay-history-pages button{border:1px solid var(--ux-line);border-radius:7px;padding:7px 12px;background:var(--ux-field);color:var(--ux-text)}
.pay-history-pages button:disabled{opacity:.4}
.pay-order-detail .pay-rows{overflow-wrap:anywhere}.pay-order-detail .pay-row>div{white-space:normal!important;word-break:break-word}
.pay-sheet{max-height:92vh;overflow-y:auto;width:min(100%,560px);padding:18px 16px calc(24px + env(safe-area-inset-bottom))}
.pay-sheet .fund-head>div b{font-size:22px}
.pay-sheet .fund-head>button{width:42px;height:42px;font-size:26px}
.pay-body{font-size:16px;line-height:1.55}
.pay-label{display:block;margin:14px 0 8px;font-size:16px;font-weight:800}
.pay-methods{display:flex;gap:10px}
.pay-methods button{flex:1;min-height:50px;border-radius:12px;border:1px solid #3a4568;background:transparent;color:inherit;font-size:16px;font-weight:700}
.pay-methods button.on{border-color:#e8b04a;background:linear-gradient(135deg,#b3202a,#7d1219);color:#ffd98a}
.pay-input{width:min(100%,280px);min-height:56px;padding:0 14px;border-radius:12px;border:1px solid #3a4568;background:#111831;color:#fff;font-size:22px;font-weight:800;box-sizing:border-box}
.pay-input::placeholder{font-size:15px;font-weight:400;color:#8390a6}
.pay-range{margin-top:8px;font-size:15px;color:#ffd98a}
.pay-range b{font-size:17px}
.pay-hint,.pay-note{margin-top:6px;font-size:14px;color:#8d99ad}
.pay-note.warn{color:#e8a13a;margin:10px 0}
.pay-bal{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:14px;border-radius:12px;background:rgba(232,176,74,.1);font-size:16px}
.pay-bal b{font-size:24px;color:#ffd98a}
.pay-warn{margin:16px 0 8px;text-align:center;color:#e8a13a;font-weight:800;font-size:16px}
.pay-amt{text-align:center;padding:12px;margin-bottom:6px;border-radius:12px;background:linear-gradient(135deg,#b3202a,#7d1219);color:#ffd98a;font-size:16px}
.pay-amt b{font-size:30px;letter-spacing:.5px}
.pay-rate{display:flex;justify-content:space-between;padding:8px 2px 10px;font-size:15px;color:#8d99ad;border-bottom:1px solid #27314d}
.pay-rows{margin-top:2px}
.pay-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:13px 2px;border-bottom:1px solid rgba(120,135,170,.18);font-size:16px}
.pay-row>span{flex:none;color:#8d99ad}
.pay-row>div{text-align:right;min-width:0;font-weight:600}
.pay-copyv{display:inline-flex;align-items:flex-start;gap:8px;text-align:right;cursor:pointer}
.pay-addr{word-break:break-all;color:#4f9bff;font-size:15px}
.pay-ci{flex:none;font-style:normal;font-size:13px;padding:3px 9px;border-radius:7px;background:#e8b04a;color:#4a0c10;font-weight:800;min-width:42px;text-align:center}
.pay-ci.done{background:#16a34a;color:#fff}
.pay-link{color:#4f9bff;text-decoration:underline;cursor:pointer}
.pay-qrbox{text-align:center;padding:14px;margin-top:10px;border-radius:12px;background:#fff;color:#333}
.pay-qrbox[hidden]{display:none}
.pay-qrbox svg{width:220px;height:220px;max-width:100%}
.pay-qrbox small{display:block;margin-top:6px;font-size:13px}
.pay-status{min-height:26px;margin:12px 0;font-size:16px}
.pay-btn{width:100%;min-height:56px;border:0;border-radius:14px;background:linear-gradient(135deg,#d62a36,#8e141c);color:#ffd98a;font-size:18px;font-weight:900;margin-top:4px}
.pay-btn.red{background:linear-gradient(135deg,#d62a36,#8e141c)}
.pay-btn.sm{min-height:46px;font-size:16px;margin-top:10px}
.pay-btn:disabled{opacity:.6}
.pay-ghost{margin-top:8px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid #e8b04a;background:transparent;color:#e8b04a;font-size:15px;font-weight:700}
.pay-tips{margin-top:20px;padding-top:14px;border-top:1px solid rgba(120,135,170,.25)}
.pay-tips h4{margin:0 0 10px;font-size:17px}
.pay-tips p{margin:0 0 10px;font-size:15px;color:#aeb8cc}
html[data-theme="light"] .pay-methods button{border-color:#cfd8e3;color:#172033}
html[data-theme="light"] .pay-methods button.on{color:#ffe3a1}
html[data-theme="light"] .pay-input{background:#f5f7fa;border-color:#cfd8e3;color:#172033}
html[data-theme="light"] .pay-range{color:#9a5b00}
html[data-theme="light"] .pay-hint,html[data-theme="light"] .pay-note,html[data-theme="light"] .pay-rate,html[data-theme="light"] .pay-row>span{color:#465569}
html[data-theme="light"] .pay-note.warn,html[data-theme="light"] .pay-warn{color:#b45309}
html[data-theme="light"] .pay-bal{background:#fff4dc;color:#172033}
html[data-theme="light"] .pay-bal b{color:#9a1c24}
html[data-theme="light"] .pay-tips p{color:#334155}
html[data-theme="light"] .pay-addr,html[data-theme="light"] .pay-link{color:#1d62d8}
html[data-theme="light"] .pay-row,html[data-theme="light"] .pay-rate{border-color:#e1e7ef}
html[data-theme="light"] .pay-ghost{color:#9a5b00;border-color:#c98a1a}
html[data-theme="light"] .pay-status{color:#172033}

/* pay copy / address one-line */
.pay-addr,.pay-copyv{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
.pay-addr{white-space:nowrap;word-break:normal;overflow:hidden;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:clamp(10px,calc((100vw - 130px)/21),15px);letter-spacing:0}
.pay-row.col{flex-direction:column;gap:6px}
.pay-row.col>div{text-align:left;width:100%}
.pay-row.col .pay-copyv{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;width:100%}
.pay-methods button[hidden]{display:none}
.pay-manual{margin-top:12px;text-align:center}
.pay-manual>b{display:block;font-size:18px;margin-bottom:8px}
.pay-qrimg{display:block;margin:12px auto;max-width:240px;width:70%;border-radius:12px;background:#fff;padding:8px}
.pay-manual .pay-note{text-align:left;margin:10px 0;line-height:1.6}
.pay-row.col .pay-addr{flex:1;min-width:0}

.pay-addr-in{flex:1;min-width:0;width:100%;background:transparent;border:0;outline:0;padding:0;margin:0;color:inherit;-webkit-user-select:text;user-select:text;-webkit-appearance:none;appearance:none;text-overflow:clip}
.pay-ci{border:0;cursor:pointer;min-height:30px;padding:4px 12px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.pay-lp{display:block;margin-top:4px;font-size:11px;opacity:.7}
.pay-qrbox{text-align:center}
.pay-qrbox svg{width:190px;height:190px}
.support-sheet{grid-template-rows:48px 1fr auto auto 56px!important}
.cs-quick{display:flex;gap:6px;padding:6px 10px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.cs-quick:empty{display:none}
.cs-quick button{flex:none;border:1px solid #e8b04a;background:rgba(232,176,74,.12);color:#e8b04a;border-radius:999px;padding:6px 12px;font-size:13px}
html[data-theme="light"] .cs-quick button{color:#9a3412;background:#fff7e6;border-color:#e8b04a}
.cs-hint{padding:6px 12px;font-size:12px;line-height:1.5;color:#e8b04a;background:rgba(232,176,74,.08)}
html[data-theme="light"] .cs-hint{color:#9a3412;background:#fff7e6}
.cs-fab{position:fixed;right:12px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:900;display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:2px solid #e8b04a;background:linear-gradient(135deg,#b3141c,#7a0c12);color:#ffe9b0;box-shadow:0 4px 14px rgba(0,0,0,.35);padding:0;gap:0}
.cs-fab span{font-size:20px;line-height:1}.cs-fab b{font-size:11px;line-height:1.1}

.my-ico{display:inline-block;width:26px;height:26px;line-height:26px;text-align:center;margin-right:8px;border-radius:8px;font-style:normal;font-size:15px;background:linear-gradient(135deg,#b3141c,#7a0c12);box-shadow:inset 0 0 0 1px #e8b04a}
.my-page .account-section>summary{display:flex;align-items:center}
.dev-rows{padding:4px 0 6px}.dev-rows .device-row{padding:7px 0;font-size:13px;border-bottom:1px solid rgba(128,140,170,.15)}
.rp-tabs{display:flex;gap:6px;margin-bottom:10px}.rp-tabs button{flex:1;border:1px solid #e8b04a;background:transparent;color:#e8b04a;border-radius:8px;padding:6px 0;font-weight:700}.rp-tabs button.on{background:linear-gradient(135deg,#b3141c,#7a0c12);color:#ffe9b0}
html[data-theme="light"] .rp-tabs button{color:#9a3412}html[data-theme="light"] .rp-tabs button.on{color:#ffe9b0}
.rp-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.rp-sum div{padding:8px 6px;border-radius:10px;background:rgba(232,176,74,.1);text-align:center}.rp-sum span{display:block;font-size:11px;opacity:.75}.rp-sum b{font-size:13px}
.rp-row{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid rgba(128,140,170,.15)}.rp-k{font-weight:700;font-size:13px}.rp-k small{display:block;font-weight:400;opacity:.7}.rp-v{text-align:right;font-size:12px;line-height:1.6}.rp-v span,.rp-v b{display:block}
.rp-up{color:#16a34a}.rp-dn{color:#e11d48}

.pay-methods{flex-wrap:wrap}
.pay-methods button{min-width:calc(33% - 10px)}
.pay-methods button.on{box-shadow:0 0 0 2px #e8b04a;position:relative}
.pay-methods button.on::after{content:"✓";position:absolute;top:2px;right:7px;font-size:12px}
.pay-manual+.pay-manual{margin-top:18px;padding-top:14px;border-top:1px dashed #3a4568}
[data-manual-block][hidden],[data-usdt-block][hidden]{display:none}
html[data-theme="light"] .pay-methods button.on{background:linear-gradient(135deg,#b3202a,#7d1219);color:#ffe3a1}
html[data-theme="light"] .pay-manual+.pay-manual{border-top-color:#cfd8e3}
html[data-theme="light"] .pay-manual{color:#172033}
.pay-req{margin:12px 0;padding:10px;border:1px solid var(--line,#ecd9d3);border-radius:10px;text-align:left}
.pay-req>b{display:block;margin-bottom:6px}
.pay-req input{width:min(100%,260px);box-sizing:border-box;margin:4px 0;padding:9px 10px;font-size:16px;border:1px solid var(--line,#ecd9d3);border-radius:8px;background:transparent;color:inherit}

.pay-methods{flex-wrap:wrap}.pay-methods button{min-width:calc(33% - 8px)}

/* withdraw/recharge sheet compact (mobile) */
.pay-sheet{padding:12px 12px calc(16px + env(safe-area-inset-bottom));overflow-x:hidden}
.pay-sheet .fund-head>div b{font-size:17px}
.pay-sheet .fund-head>button{width:32px;height:32px;font-size:20px}
.pay-body{font-size:13px;line-height:1.45;overflow-x:hidden}
.pay-label{margin:10px 0 6px;font-size:13px}
.pay-methods{gap:6px;flex-wrap:wrap}
.pay-methods button{min-height:36px;font-size:13px;border-radius:9px;padding:0 6px;min-width:0}
.pay-input{min-height:42px;font-size:16px;border-radius:10px}
.pay-input::placeholder{font-size:13px}
.pay-range{font-size:12px;margin-top:6px}.pay-range b{font-size:13px}
.pay-row{padding:8px 2px;font-size:13px;gap:8px}
.pay-addr:not(.pay-u-value){font-size:13px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pay-copyv{max-width:100%}
.pay-btn{min-height:42px;font-size:15px;border-radius:11px}.pay-btn.sm{min-height:36px;font-size:14px}
.pay-note,.pay-hint,.pay-tips{font-size:12px}
.pay-tips{padding:8px 10px}.pay-tips h4{font-size:13px;margin:0 0 4px}.pay-tips p{margin:2px 0}
.pay-bal{font-size:13px}

.pay-sheet .pay-addr.pay-addr-full{white-space:normal!important;word-break:break-all;overflow:visible!important;text-overflow:clip!important;font-size:11px!important;line-height:1.35;text-align:left}
.pay-sheet .pay-row .pay-copyv{max-width:100%;min-width:0}
.pay-sheet .pay-row>div{min-width:0;max-width:100%}
details.pay-tips>summary{cursor:pointer;font-size:13px;font-weight:700;list-style:none}
details.pay-tips>summary::-webkit-details-marker{display:none}
details.pay-tips[open]>summary{margin-bottom:6px}
.pay-sheet,.pay-body{max-width:100%;overflow-x:hidden}
.odds-chip{min-width:0;flex:1 1 auto;margin-left:0!important}
.odds-chip .odds-list{display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:3px 6px;max-width:100%;font-size:12px!important;line-height:1.3}
.odds-chip .odds-list i{font-style:normal;display:inline-flex;gap:3px;align-items:baseline;background:rgba(247,201,72,.12);border-radius:6px;padding:1px 5px;color:#e8edf8;white-space:nowrap}
.odds-chip .odds-list em{font-style:normal;color:#f7c948;font-weight:700}
.odds-chip .odds-hint{font-size:11px!important;font-weight:400;color:#8895b1!important}
html[data-theme="light"] .odds-chip .odds-list i{background:rgba(211,155,0,.12);color:#1f2a3c}
html[data-theme="light"] .odds-chip .odds-list em{color:#b07d00}
html[data-theme="light"] .odds-chip .odds-hint{color:#5b6779!important}
.bet-toolbar .odds-chip{align-items:flex-start!important;margin:0!important}.bet-toolbar .odds-chip .odds-list{justify-content:flex-start}

/* v91 draw result row: balls + sum + attr chips on one left-aligned row, same size */
.play-result-balls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px}
.play-result-toggle:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls){display:flex!important;flex:0 0 auto;width:auto!important;gap:4px!important;flex-wrap:nowrap!important;justify-content:flex-start}
.play-result-toggle:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball{width:26px!important;min-width:26px!important;height:26px!important;aspect-ratio:auto!important;flex:0 0 26px;font-size:13px!important}
.play-result-toggle.ten .play-result-balls .draw-balls,.play-result-toggle .play-result-balls .draw-balls.lhc-balls{flex:1 0 100%}.play-result-toggle .play-result-balls .draw-balls.lucky28-balls{display:flex!important;flex:0 0 auto;width:auto!important;gap:4px!important;justify-content:flex-start}
.play-result-toggle:not(.ten) .play-result-balls.kind-k3 .draw-balls{gap:5px!important}
.sum-tag{display:inline-flex;align-items:center;gap:4px;margin:0}
.sum-tag .sc{display:grid;place-items:center;box-sizing:border-box;min-width:26px;height:26px;padding:0 5px;border-radius:6px;font-style:normal;font-size:13px;font-weight:900;line-height:1;color:#e8edf8;background:rgba(255,255,255,.1)}
.sum-tag .sc.n{color:#f7c948;background:rgba(247,201,72,.14)}
.play-result-balls.kind-k3 .sum-tag .sc{min-width:30px;height:30px}
html[data-theme="light"] .sum-tag .sc{color:#1f2a3c;background:rgba(15,23,42,.08)}
html[data-theme="light"] .sum-tag .sc.n{color:#9a6b00;background:rgba(176,125,0,.14)}
@media(max-width:390px){.play-result-balls{gap:3px}.sum-tag{gap:3px}.sum-tag .sc{min-width:24px;height:24px;padding:0 4px;font-size:12px}.play-result-balls.kind-k3 .sum-tag .sc{min-width:28px;height:28px}.play-result-toggle:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball{width:24px!important;min-width:24px!important;height:24px!important;flex-basis:24px}}

/* history rows mirror latest-result row */
.play-history-row{grid-template-columns:84px minmax(0,1fr)!important;align-items:center}
.play-history-row .play-history-balls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px;min-width:0}
.play-history-row:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls){display:flex!important;flex:0 0 auto;width:auto!important;gap:4px!important;flex-wrap:nowrap!important;justify-content:flex-start}
.play-history-row:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball{width:26px!important;min-width:26px!important;height:26px!important;aspect-ratio:auto!important;flex:0 0 26px;font-size:13px!important}
.play-history-row.ten .play-result-balls .draw-balls,.play-history-row .play-result-balls .draw-balls.lhc-balls{flex:1 0 100%}
.play-history-row .play-result-balls .draw-balls.lucky28-balls{display:flex!important;flex:0 0 auto;width:auto!important;gap:4px!important;justify-content:flex-start}
.play-history-row .play-result-toggle:not(.ten) .play-result-balls.kind-k3 .draw-balls{gap:5px!important}
.play-history-row .play-result-balls.kind-k3 .sum-tag .sc{min-width:30px;height:30px}
@media(max-width:390px){.play-history-row{grid-template-columns:76px minmax(0,1fr)!important}.play-history-row .play-result-balls{gap:3px}.play-history-row:not(.ten) .play-result-balls .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball{width:24px!important;min-width:24px!important;height:24px!important;flex-basis:24px}.play-history-row .play-result-balls.kind-k3 .sum-tag .sc{min-width:28px;height:28px}}
.play-history-row:not(.ten) .play-result-balls.kind-k8 .draw-balls:not(.lhc-balls):not(.lucky28-balls),.play-result-toggle:not(.ten) .play-result-balls.kind-k8 .draw-balls:not(.lhc-balls):not(.lucky28-balls){display:grid!important;grid-template-columns:repeat(10,minmax(0,1fr))!important;flex:1 0 100%!important;width:100%!important;gap:2px!important}
html body .play-history-row:not(.ten) .play-result-balls.kind-k8 .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball,html body .play-result-toggle:not(.ten) .play-result-balls.kind-k8 .draw-balls:not(.lhc-balls):not(.lucky28-balls) .draw-ball{width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:1!important;flex:none!important;font-size:11px!important}

/* One result layout for confirmed top and history rows. */
.rs-row{--iw:108px;position:relative;box-sizing:border-box;width:100%;display:grid;grid-template-columns:var(--iw) minmax(0,1fr);gap:8px;align-items:center;min-height:60px;padding:9px 12px 9px 9px;margin:0;border:0;border-bottom:1px solid rgba(148,163,184,.10);background:transparent;color:inherit;text-align:left;font:inherit}
.rs-top{margin:8px 10px 0;width:calc(100% - 20px);background:#0d1430;border-radius:14px;cursor:pointer;border-bottom:0}
.rs-content{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0}
.rs-row.kind-k3{--iw:90px;gap:8px;padding-right:12px}
.rs-row.kind-k3 .rs-content{gap:12px}
.rs-row.kind-k3 .rs-balls{flex:0 0 100px}
.rs-row.kind-klsf .rs-balls,.rs-row.kind-k8 .rs-balls,.rs-row.kind-kl8 .rs-balls,.rs-row.kind-rank10 .rs-balls,.rs-row.kind-lhc .rs-balls,.rs-row.kind-ssq .rs-balls,.rs-row.kind-qlc .rs-balls,.rs-row.kind-dlt .rs-balls{width:100%}
.play-history-panel .rs-row:last-of-type{border-bottom:0}
.rs-arrow{position:absolute;right:5px;top:50%;transform:translateY(-50%);font-style:normal;color:#8390ac;font-size:14px;line-height:1;width:12px;text-align:center}
.rs-issue{min-width:0;overflow:hidden}
.rs-issue b,.rs-issue small{display:block;white-space:nowrap;overflow:visible;text-overflow:clip}
.rs-issue b{font-size:9px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;font-weight:700;color:#dbe5f3}
.rs-issue small{margin-top:3px;font-size:9px;color:#7f8ba0}
.rs-balls{min-width:0}
.rs-balls .draw-balls{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-items:center;gap:4px!important;width:100%!important;max-width:100%;overflow:visible!important;margin:0!important;padding:0!important}
.rs-balls .draw-ball{width:24px!important;min-width:24px!important;height:24px!important;flex:0 0 24px!important;aspect-ratio:auto!important;font-size:12px!important;margin:0!important}
.rs-row.kind-k3 .rs-balls .draw-balls{gap:5px!important}
.rs-row.kind-k3 .rs-balls .draw-die.normal-die{width:30px!important;min-width:30px!important;height:30px!important;flex:0 0 30px}
.rs-row:is(.kind-klsf,.kind-k8,.kind-kl8,.kind-rank10,.kind-lhc,.kind-ssq,.kind-qlc,.kind-dlt) .rs-balls .draw-balls{display:grid!important;grid-template-columns:repeat(var(--ball-count),minmax(0,1fr));gap:2px!important}
.rs-row:is(.kind-k8,.kind-kl8) .rs-balls .draw-balls{grid-template-columns:repeat(10,minmax(0,1fr))}
.rs-row:is(.kind-klsf,.kind-k8,.kind-kl8,.kind-rank10,.kind-lhc,.kind-ssq,.kind-qlc,.kind-dlt) .rs-balls .draw-ball{width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:1!important;flex:none!important;font-size:11px!important}
.rs-row.kind-lhc .rs-balls .draw-ball{font-size:22px!important;min-height:34px!important}.rs-row.kind-lhc .lhc-number{font-size:clamp(13px,4.3vw,18px)!important}
.rs-attributes{display:flex;align-items:center;gap:4px;flex-shrink:0}
.rs-row .sc{display:grid;place-items:center;box-sizing:border-box;min-width:24px;height:26px;padding:0 4px;border-radius:6px;font-style:normal;font-size:13px;font-weight:900;line-height:1;color:#e8edf8;background:rgba(255,255,255,.1)}
.rs-row .sc.n{color:#f7c948;background:rgba(247,201,72,.14)}
.rs-row.kind-k3 .sc{height:30px}
.rs-row .draw-pending{min-width:76px;font-size:12px}
.animation-slot{display:contents}
.kind-k3 .animation-slot{display:flex;flex:0 0 30px}
.drawing .animation-slot>.draw-die{animation:lottery-roll .17s ease-in-out infinite alternate;animation-delay:var(--roll-offset)}
@keyframes lottery-roll{from{transform:translateY(-1px) rotate(-5deg)}to{transform:translateY(1px) rotate(5deg)}}
@media(prefers-reduced-motion:reduce){.drawing .animation-slot>.draw-die{animation:none}}
html[data-theme="light"] .rs-top{background:#fff}
html[data-theme="light"] .rs-issue b{color:#1f2a3c}
html[data-theme="light"] .rs-row .sc{color:#1f2a3c;background:rgba(15,23,42,.08)}
html[data-theme="light"] .rs-row .sc.n{color:#9a6b00;background:rgba(176,125,0,.14)}

/* plan page: toolbar, rate, favorite, dx chips */
.plan-page>.plan-section-title{gap:6px;min-height:28px;margin:0 0 6px}
.plan-toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin:0 0 8px;min-width:0}
.plan-tabs{display:flex;flex:none;border-radius:999px;background:#17213d;padding:2px}
.plan-tabs button{border:0;background:transparent;color:#aeb9d0;font-size:11px;font-weight:800;padding:4px 12px;border-radius:999px}
.plan-tabs button.active{background:#4f6bff;color:#fff}
.plan-game-select{flex:1;min-width:0;max-width:140px;margin-left:auto;height:26px;border-radius:999px;border:1px solid rgba(113,133,255,.25);background:#0d1430;color:#dbe3f5;font-size:11px;padding:0 6px}
.plan-list{overflow-anchor:none}
.plan-pt-row{grid-template-columns:80px minmax(0,1fr)}
.plan-pt-row>em.plan-number-wrap{grid-column:1/-1;max-width:none;width:100%;justify-content:flex-start}
.plan-zodiac-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:100%;align-items:center}
.plan-zodiac-regular{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;align-items:center}
.plan-zodiac-special{display:flex;align-items:center;gap:4px;border-left:1px solid rgba(128,128,128,.3);padding-left:8px}
.plan-zodiac{display:inline-block;text-align:center;font-size:13px;line-height:24px;color:inherit}
.plan-zodiac.hit{color:#e53935;font-weight:800}
.plan-zodiac-special small{font-size:10px}
.plan-group-title{font-size:12px;font-weight:800;color:#8fa0c8;margin:8px 2px 2px}
html[data-theme="light"] .plan-group-title{color:#5b6780}
.plan-page .real-source .external-plan-head{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 flex-wrap:nowrap!important;gap:8px!important;margin-bottom:9px
}
.plan-page .real-source .external-plan-head>div:first-child{flex:0 0 auto!important;width:100%;min-width:0}
.plan-page .real-source .external-plan-head>div:first-child>b{display:block;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.plan-page .real-source .external-plan-controls{
 display:flex!important;align-items:center;justify-content:flex-start!important;flex-wrap:nowrap!important;
 flex:0 0 auto!important;gap:7px!important;width:100%;min-width:0;max-width:100%;
 overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;
 margin:0!important;padding:3px 0 5px;scrollbar-width:none
}
.plan-page .real-source .external-plan-controls::-webkit-scrollbar{display:none}
.plan-page .real-source .external-plan-controls>*{flex:0 0 auto}
.plan-page .real-source .external-plan-controls>strong{font-size:13px!important;margin-left:auto;white-space:nowrap}
.plan-fav-btn{border:0!important;background:transparent!important;color:#8793ad!important;font-size:18px!important;line-height:1;padding:0 2px!important}
.plan-fav-btn.on{color:#f5b301!important}
.external-plan-controls .plan-follow-btn{flex:none;border:1px solid rgba(79,107,255,.4)!important;background:rgba(79,107,255,.13)!important;color:#99abff!important;padding:4px 7px!important;font-size:11px!important;font-weight:800!important;line-height:1.15;white-space:nowrap;border-radius:7px!important}
html[data-theme="light"] .external-plan-controls .plan-follow-btn{background:#edf1ff!important;color:#364ac9!important}
.plan-page .external-plan-controls .plan-follow-btn.is-unavailable,
.plan-page .external-plan-controls .plan-bet-open.is-unavailable{opacity:.58}
.plan-page .plan-market-hint{font-size:11px;font-weight:850;color:#e65b42;white-space:nowrap}
.plan-page .plan-market-hint[hidden]{display:none!important}
.plan-rate{font-size:11px;font-weight:900;white-space:nowrap}
.plan-rate.low{color:#16a34a}
.plan-rate.high{color:#ef4444}
.plan-rate.none{color:#8793ad}
.plan-dx-chip{display:inline-block;min-width:34px;text-align:center;padding:3px 10px;border-radius:999px;background:rgba(79,107,255,.18);color:#8fa3ff;font-weight:900;font-size:13px}
.plan-dx-res{font-size:12px;font-weight:800;margin-right:6px}
.plan-hit-check.miss{color:#8793ad}
html[data-theme="light"] .plan-tabs{background:#e8edf7}
html[data-theme="light"] .plan-tabs button{color:#5b6780}
html[data-theme="light"] .plan-tabs button.active{background:#4f6bff;color:#fff}
html[data-theme="light"] .plan-game-select{background:#fff;color:#1f2a44;border-color:#d5ddee}
html[data-theme="light"] .plan-dx-chip{background:#e6ebff;color:#3b50d6}
@media(max-width:400px){.external-plan-controls{gap:4px}.plan-rate{font-size:10px}.real-source .external-plan-head{flex-wrap:wrap;gap:5px}.real-source .external-plan-head>div:first-child{flex:1 1 105px}.real-source .external-plan-controls{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.real-source .external-plan-controls>strong{font-size:14px!important}}

.plan-guide-btn{margin-left:8px;height:26px;padding:0 10px;border-radius:13px;border:1px solid #3a4a66;background:transparent;color:#cbd5e8;font-size:12px;font-weight:800;white-space:nowrap}
.plan-section-title>.plans-balance+.plan-guide-btn{margin-left:8px}
.plan-guide-btn.on{background:#ff4f6d;border-color:#ff4f6d;color:#fff}
.plan-guide{margin:8px 0 12px;display:flex;flex-direction:column;gap:6px}
.pg-kind{border:1px solid #2a3550;border-radius:10px;background:#141b2d;overflow:hidden}
.pg-kind>summary{padding:10px 12px;font-weight:900;font-size:14px;color:#e6ecf8;cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none}
.pg-kind>summary::-webkit-details-marker{display:none}
.pg-kind>summary small{color:#8190ab;font-weight:700;font-size:11px}
.pg-play{padding:8px 12px;border-top:1px solid #222c45}
.pg-h{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.pg-h b{font-size:13px;color:#e6ecf8}
.pg-h em{font-style:normal;font-size:11px;color:#ff8a5c;font-weight:800;white-space:nowrap}
.pg-play p{margin:3px 0 0;font-size:12px;line-height:1.5;color:#9fb0cc}
.pg-play small{display:block;margin-top:2px;font-size:11px;color:#7f8ba0}
.pg-note{font-size:11px;color:#7f8ba0;padding:2px 4px}
html[data-theme="light"] .plan-guide-btn{border-color:#c5cfdd;color:#33415c}
html[data-theme="light"] .plan-guide-btn.on{color:#fff}
html[data-theme="light"] .pg-kind{background:#fff;border-color:#d6dee8}
html[data-theme="light"] .pg-kind>summary,html[data-theme="light"] .pg-h b{color:#172033}
html[data-theme="light"] .pg-play{border-top-color:#edf1f6}
html[data-theme="light"] .pg-play p{color:#4a5870}
/* 棋牌 */
.qp-res{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.qp-hand{display:flex;flex-direction:column;gap:2px}
.qp-hand small{font-size:11px;color:#cbd5e1}.qp-hand.p small b{color:#2563eb}.qp-hand.b small b{color:#dc2626}
.qp-cards{display:flex;gap:3px;perspective:400px}
.qp-card{width:26px;height:36px;border-radius:4px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 1px 2px rgba(0,0,0,.15);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#111;font-weight:800}
.qp-card b{font-size:12px}.qp-card i{font-style:normal;font-size:12px}.qp-card.red{color:#dc2626}
.rs-top .qp-card.anim{animation:qpflip .5s ease-out both;animation-delay:var(--d)}
@keyframes qpflip{0%{transform:rotateY(90deg);background:#1e3a8a}49%{background:#1e3a8a}50%{background:#fff}100%{transform:rotateY(0)}}
.qp-win{font-style:normal;font-size:12px;font-weight:800;padding:2px 8px;border-radius:10px;color:#fff;background:#64748b}
.qp-win.w-b{background:#dc2626}.qp-win.w-p{background:#2563eb}.qp-win.w-t{background:#16a34a}
.qp-table{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px}
.qp-bet{border:2px solid #e5e7eb;border-radius:10px;background:#fff;padding:12px 4px;display:flex;flex-direction:column;align-items:center;gap:2px}
.qp-bet{color:#111}.qp-bet b{font-size:18px}.qp-bet small{font-size:12px;color:#666}
.qp-bet.b-b b{color:#dc2626}.qp-bet.b-p b{color:#2563eb}.qp-bet.b-t b{color:#16a34a}
.qp-bet.active{border-color:#f59e0b;background:#fffbeb;box-shadow:0 0 0 2px rgba(245,158,11,.3)}
.qp-rules{margin:8px 12px;background:#fff;color:#1f2937;border:1px solid #e5e7eb;border-radius:10px;padding:8px 12px;font-size:13px;line-height:1.6}
.qp-rules li{color:#374151}
.qp-rules summary{font-weight:700;cursor:pointer}.qp-rules ol{padding-left:18px;margin:6px 0}
.qp-entry{padding:0 12px;margin:10px 0}
.qp-entry button{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:14px;padding:10px;background:linear-gradient(135deg,#064e3b,#065f46 55%,#b45309);color:#fff;text-align:left}
.qp-entry img{width:72px;height:54px;object-fit:cover;border-radius:8px}
.qp-entry span{flex:1;display:flex;flex-direction:column}.qp-entry b{font-size:16px}.qp-entry small{font-size:12px;opacity:.85}.qp-entry em{font-style:normal;font-weight:700}
.qp-table.many{grid-template-columns:repeat(4,1fr)}.qp-table.many .qp-bet{padding:8px 2px}.qp-table.many .qp-bet b{font-size:15px}
.qp-dice{display:flex;gap:4px;perspective:400px}.qp-die{display:inline-flex}
.rs-top .qp-die.anim{animation:qproll .6s ease-out both;animation-delay:var(--d)}
@keyframes qproll{0%{transform:rotate(-200deg) scale(.4);opacity:0}100%{transform:none;opacity:1}}
.qp-sum{color:#cbd5e1;font-size:12px}.qp-sum b{color:#fbbf24;font-size:15px}
.qp-mini{display:inline-flex;gap:2px;zoom:.62}
/* ===== 百家乐 多人同桌 ===== */
.qp-lobby,.qp-table-page{max-width:520px;margin:0 auto;padding:10px 10px 120px;color:#f8fafc}
.ql-top,.bt-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.ql-title,.bt-title{flex:1;min-width:0}.ql-title b,.bt-title b{display:block;font-size:17px;color:#fde68a}.ql-title small,.bt-title small{font-size:11px;color:#cbd5e1}
.ql-hero{position:relative;height:150px;border-radius:18px;overflow:hidden;background:radial-gradient(120% 90% at 20% 10%,#7f1d1d 0,#3b0a0a 45%,#12060a 100%);box-shadow:inset 0 0 0 2px #b4832f,inset 0 0 40px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;gap:18px}
.ql-hero:before{content:"";position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 50% 120%,rgba(253,230,138,.08) 0 6deg,transparent 6deg 12deg)}
.ql-hero-t{position:relative;text-align:center}.ql-hero-t b{display:block;font-size:40px;letter-spacing:6px;background:linear-gradient(#fff7d6,#f5c542 55%,#a16207);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 3px 8px rgba(0,0,0,.4);font-weight:900}.ql-hero-t em{font-style:normal;color:#fcd34d;letter-spacing:5px;font-size:11px}
.ql-cards{position:relative;display:flex}.ql-cards .pk.big{width:54px;height:76px;transform:rotate(-12deg)}.ql-cards .pk.big.r{transform:rotate(10deg);margin-left:-18px}
.ql-note{font-size:12px;color:#cbd5e1;margin:8px 2px}
.ql-rooms{display:grid;gap:10px}
.ql-room{border-radius:14px;padding:10px;background:linear-gradient(160deg,#3a2414,#1c120a);box-shadow:inset 0 0 0 1.5px #8a6128,0 6px 16px rgba(0,0,0,.35)}
.ql-room-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ql-room-h b{font-size:16px;color:#fde68a}.ql-room-h small{color:#d6c3a1;font-size:11px;flex:1}
.ql-st{font-size:11px;padding:2px 8px;border-radius:99px;background:#166534;color:#dcfce7}.ql-st i{font-style:normal;font-weight:700}.ql-st.st-stop{background:#7f1d1d}.ql-st.st-deal{background:#a16207}.ql-st.st-pay{background:#1e40af}
.ql-road{background:#fbf7ee;border-radius:8px;padding:3px;overflow:hidden}
.ql-room-f{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:12px;color:#e7dcc6}.ql-room-f b{color:#fde68a}
.ql-enter{margin-left:auto;padding:7px 20px;border-radius:10px;border:0;font-weight:800;color:#3b1d06;background:linear-gradient(#fde68a,#d4a017 60%,#a16207);box-shadow:0 3px 0 #6b3f0b}
/* 路单 */
.road{display:grid;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(var(--cols),1fr);aspect-ratio:calc(var(--cols)/6);background-image:linear-gradient(#e5dccb 1px,transparent 1px),linear-gradient(90deg,#e5dccb 1px,transparent 1px);background-size:calc(100%/var(--cols)) calc(100%/6);gap:0}
.road>span{position:relative;display:flex;align-items:center;justify-content:center;margin:12%;border-radius:50%;font-size:10px;font-weight:800}
.road.big .br{border:2px solid}.road.big .br.w-b{border-color:#dc2626}.road.big .br.w-p{border-color:#2563eb}
.road.big .br b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#15803d;font-size:9px}.road.big .br b:before{content:"";position:absolute;width:130%;height:2px;background:#16a34a;transform:rotate(-45deg)}
.road.mini .br{border-width:1.5px}
.road.bead .bd{color:#fff;font-size:11px}.bd.w-b{background:#dc2626}.bd.w-p{background:#2563eb}.bd.w-t{background:#16a34a}
.road .dot{position:absolute;width:5px;height:5px;border-radius:50%;border:1px solid #fff}.road .dot.b{background:#dc2626;left:-2px;top:-2px}.road .dot.p{background:#2563eb;right:-2px;bottom:-2px}
/* 牌桌 */
.bt-help-btn{width:30px;height:30px;border-radius:50%;border:1.5px solid #fde68a;background:transparent;color:#fde68a;font-weight:800}
.bt-help{background:#111827;border:1px solid #374151;border-radius:12px;padding:8px 10px;margin-bottom:8px;font-size:12px;color:#e5e7eb}.qp-rules-flat{margin:0;padding-left:18px;line-height:1.6}.bt-help-x{margin:6px 0 0;color:#9ca3af}.bt-help-x code{color:#fde68a;word-break:break-all}
.bt-wrap{position:relative;display:grid;grid-template-columns:44px 1fr 44px;gap:4px;align-items:center;padding:8px 2px;border-radius:20px;background:radial-gradient(100% 80% at 50% 0,#4a2b17,#1f130b)}
.bt-seats{display:flex;flex-direction:column;gap:14px;align-items:center}
.bt-seat{display:flex;flex-direction:column;align-items:center;font-size:9px;color:#e7dcc6;width:44px}
.bt-seat .av{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;color:#fff;background:radial-gradient(circle at 35% 30%,hsl(var(--h,200) 70% 62%),hsl(var(--h,200) 60% 32%));box-shadow:0 0 0 2px #b4832f}
.bt-seat.empty .av{background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1.5px rgba(212,160,23,.4)}.bt-seat.empty small{opacity:.5}.bt-seat.me .av{box-shadow:0 0 0 2px #fde68a,0 0 10px #fde68a}
.bt-seat em{font-style:normal;color:#fde68a;font-weight:700}
.bt-rim{border-radius:48% 48% 26px 26px/16% 16% 26px 26px;padding:11px;background:linear-gradient(145deg,#c58a4a,#7a4419 40%,#5a3010 60%,#a8692f);box-shadow:0 10px 24px rgba(0,0,0,.6),inset 0 2px 3px rgba(255,255,255,.35),inset 0 -3px 5px rgba(0,0,0,.5)}
.bt-felt{position:relative;border-radius:46% 46% 18px 18px/14% 14% 18px 18px;padding:10px 8px 10px;background:radial-gradient(120% 70% at 50% 30%,#2fa36b,#13774a 55%,#0b4f31);box-shadow:inset 0 0 0 2px rgba(255,255,255,.18),inset 0 6px 30px rgba(0,0,0,.45);overflow:hidden}
.bt-felt:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-radial-gradient(circle at 30% 20%,rgba(255,255,255,.025) 0 1px,transparent 1px 3px)}
.bt-status{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 6px;width:max-content;padding:3px 14px 3px 4px;border-radius:99px;background:linear-gradient(#1f8a52,#0f5c36);box-shadow:inset 0 0 0 1.5px #a7f3d0}
.bt-status.st-stop{background:linear-gradient(#b91c1c,#7f1d1d);box-shadow:inset 0 0 0 1.5px #fecaca}.bt-status.st-deal,.bt-status.st-pay{background:linear-gradient(#b45309,#78350f);box-shadow:inset 0 0 0 1.5px #fde68a}
.bt-label{font-weight:800;letter-spacing:2px;font-size:14px}
.bt-clock{position:relative;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(#fff7d6,#f5c542);box-shadow:0 2px 4px rgba(0,0,0,.4)}
.bt-clock svg{position:absolute;inset:0;transform:rotate(-90deg)}.bt-clock circle{fill:none;stroke-width:3}.bt-clock .bg{stroke:rgba(0,0,0,.15)}.bt-clock .fg{stroke:#b91c1c;stroke-dasharray:94.2;transition:stroke-dashoffset .9s linear}
.bt-clock b{position:relative;color:#7c2d12;font-size:13px}
.bt-shoe{position:absolute;top:10px;width:30px;height:24px;border-radius:4px;background:linear-gradient(#374151,#111827);box-shadow:0 3px 5px rgba(0,0,0,.5);z-index:1}.bt-shoe.l{left:18%;transform:rotate(-14deg)}.bt-shoe.r{right:18%;transform:rotate(14deg)}
.bt-shoe:before{content:"";position:absolute;left:4px;right:4px;top:-5px;height:9px;border-radius:2px;background:linear-gradient(#60a5fa,#1d4ed8)}
.bt-deal{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;min-height:84px}
.bt-hand{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px}.bt-hand small{font-weight:900;font-size:15px;letter-spacing:4px}.bt-hand.p small{color:#93c5fd}.bt-hand.b small{color:#fca5a5}
.bt-cards{display:flex;gap:3px;min-height:50px}
.bt-pt{position:absolute;top:18px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;color:#fff;font-size:13px;box-shadow:0 0 0 2px #fff;animation:qpfade .3s var(--t) both}.bt-pt.p{left:-2px;background:#2563eb}.bt-pt.b{right:-2px;background:#dc2626}
.bt-win{position:absolute;left:50%;top:auto;bottom:-16px;z-index:3;transform:translate(-50%,-50%);padding:4px 14px;border-radius:10px;font-weight:900;font-size:16px;color:#fff;white-space:nowrap;box-shadow:0 0 0 2px #fde68a,0 6px 16px rgba(0,0,0,.5);animation:qppop .4s var(--t) both}.bt-win.w-b{background:#dc2626}.bt-win.w-p{background:#2563eb}.bt-win.w-t{background:#16a34a}
@keyframes qpfade{from{opacity:0}to{opacity:1}}@keyframes qppop{from{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
/* 扑克牌 */
.pk{display:inline-block;width:34px;height:48px;perspective:300px}.pk-in{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d}
.pk-back,.pk-face{position:absolute;inset:0;border-radius:5px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.pk-back{background:repeating-linear-gradient(45deg,#1e40af 0 3px,#2563eb 3px 6px);border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.4),inset 0 0 0 2px #1e3a8a}
.pk-face{background:linear-gradient(#fff,#f3f4f6);color:#111;box-shadow:0 2px 4px rgba(0,0,0,.4),inset 0 0 0 1px #d1d5db;transform:rotateY(180deg)}
.pk-face.red{color:#dc2626}.ql-cards .pk-face,.pk:not(.deal) .pk-in .pk-face:only-child{transform:none}
.pk-c{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:.95}.pk-c b{font-size:12px;font-weight:800;letter-spacing:-1px}.pk-c i{font-style:normal;font-size:10px}.pk-c.tl{left:3px;top:3px}.pk-c.br{right:3px;bottom:3px;transform:rotate(180deg)}
.pk-mid{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:22px}
.pk-court{position:absolute;inset:9px 7px;border:1px solid currentColor;border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(250,204,21,.25),rgba(220,38,38,.12))}.pk-court b{font-size:17px;font-family:Georgia,serif}.pk-court i{font-style:normal;font-size:11px}
.pk.deal{animation:qpdeal .45s var(--t) both}.pk.deal .pk-in{animation:qpflip .4s calc(var(--t) + .4s) both}
@keyframes qpdeal{from{transform:translate(0,-70px) rotate(-25deg) scale(.6);opacity:0}to{transform:none;opacity:1}}
@keyframes qpflip{from{transform:rotateY(0)}to{transform:rotateY(180deg)}}
.bt-hand .pk:nth-child(3){margin-left:2px}
/* 下注区 */
.bt-zones{position:relative;z-index:1;display:flex;flex-direction:column;gap:6px}
.bz-row{display:flex;gap:6px}.bz-row>.bz{flex:1;min-width:0}.bz-row>.bz.big{flex:1.4}.bz-row-l{font-size:11px;color:#d1fae5;opacity:.8;margin:2px 0 -3px 4px}
.bz{position:relative;min-height:62px;border-radius:12px;border:1.5px solid rgba(255,255,255,.55);background:rgba(255,255,255,.06);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 4px 6px;overflow:visible}
.bz.z-p{border-color:rgba(147,197,253,.75)}.bz.z-b{border-color:rgba(252,165,165,.75)}.bz.z-t{border-color:rgba(134,239,172,.8)}
.bz-sum{position:absolute;top:2px;left:0;right:0;text-align:center;font-size:12px;font-weight:800;color:#fde68a;text-shadow:0 1px 2px #000}
.bz-name{font-size:16px;font-weight:900;opacity:.9;letter-spacing:1px;white-space:nowrap}.bz.big .bz-name{font-size:24px;letter-spacing:3px}.bz.big{min-height:100px}.bz.z-p .bz-name{color:#bfdbfe}.bz.z-b .bz-name{color:#fecaca}.bz.z-t .bz-name{color:#bbf7d0}
.bz-odds{font-size:11px;opacity:.75}
.bz-chips{position:absolute;left:50%;bottom:22%;width:0;height:0;pointer-events:none}
.bz-chips .cs{position:absolute;left:calc(var(--x) - 13px);top:calc(var(--y) - 13px)}.bz-chips .cs.pend .qchip{outline:2px dashed #fde68a;outline-offset:1px}.bz-chips .cs.drop{animation:qpdrop .35s ease-out both}
@keyframes qpdrop{from{transform:translateY(80px) scale(1.4);opacity:.3}to{transform:none;opacity:1}}
.bz-me{position:absolute;bottom:2px;right:6px;font-size:10px;color:#fde68a}.bz-me i{font-style:normal;color:#fff}
.bz.won{animation:none}@keyframes qpwin{0%{box-shadow:0 0 0 0 rgba(253,230,138,0);background:rgba(255,255,255,.06)}100%{box-shadow:0 0 0 3px #fde68a,0 0 18px #fde68a;background:rgba(253,230,138,.2)}}
.bz:disabled{opacity:1;filter:saturate(.75)}
/* 筹码 */
.qchip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:repeating-conic-gradient(var(--cc) 0 30deg,#fff 30deg 45deg);box-shadow:0 2px 0 rgba(0,0,0,.45),0 3px 4px rgba(0,0,0,.35)}
.qchip i{position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 40% 35%,color-mix(in srgb,var(--cc) 70%,#fff),var(--cc));display:flex;align-items:center;justify-content:center;font-style:normal;font-size:8px;font-weight:900;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.qchip.lg{width:50px;height:50px}.qchip.lg i{inset:7px;font-size:13px}
.bt-msg{min-height:0;height:0;overflow:hidden;text-align:center;font-size:12px;color:#fde68a;transition:height .2s}.bt-msg.show{height:22px;line-height:22px}
.bt-chipbar{display:flex;justify-content:space-around;padding:8px 4px 4px;margin-top:6px;border-radius:14px;background:linear-gradient(#3a2414,#1c120a);box-shadow:inset 0 0 0 1px #8a6128}
.chip-btn{border:0;background:none;padding:0;transition:transform .15s}.chip-btn.on{transform:translateY(-8px)}.chip-btn.on .qchip{box-shadow:0 0 0 3px #fde68a,0 8px 10px rgba(0,0,0,.5)}
.bt-actions{display:flex;align-items:center;gap:6px;margin-top:8px}.bt-total{flex:1;font-size:13px;color:#e5e7eb}.bt-total b{color:#fde68a;font-size:16px}
.bt-actions button{padding:9px 12px;border-radius:10px;border:1px solid #8a6128;background:#2a1a0e;color:#fde68a;font-weight:700}.bt-actions button.ok{background:linear-gradient(#fde68a,#d4a017 60%,#a16207);color:#3b1d06;border:0;padding:9px 16px}.bt-actions button:disabled{opacity:.45}
.bt-road{margin-top:10px;border-radius:12px;background:#fbf7ee;padding:6px;color:#1f2937}
.bt-road-tabs{display:flex;gap:6px;margin-bottom:4px}.bt-road-tabs button{flex:1;padding:6px;border-radius:8px;border:0;background:#e7dcc6;color:#6b4f2a;font-weight:800}.bt-road-tabs button.on{background:linear-gradient(#b45309,#78350f);color:#fff}
.bt-stats{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;padding:2px 2px 6px}.bt-stats .p b{color:#2563eb}.bt-stats .b b{color:#dc2626}.bt-stats .t b{color:#16a34a}
@media (orientation:landscape) and (min-width:700px){.qp-table-page,.qp-lobby{max-width:640px}.ql-rooms{grid-template-columns:1fr 1fr}}

/* 多款牌桌通用补充 */
.bz-row.n5 .bz,.bz-row.n6 .bz,.bz-row.n7 .bz{min-height:54px;padding:14px 1px 4px}.bz-row.n5 .bz-name{font-size:13px}.bz-row.n6 .bz-name,.bz-row.n7 .bz-name{font-size:13px}.bz-row.n6 .bz-odds,.bz-row.n7 .bz-odds,.bz-row.n5 .bz-odds{font-size:9px}
.bz-row.n5 .bz-sum,.bz-row.n6 .bz-sum,.bz-row.n7 .bz-sum{font-size:10px}.bz-row.n6 .bz-me,.bz-row.n7 .bz-me,.bz-row.n5 .bz-me{font-size:8px;right:2px}
.bz-row.n6 .qchip,.bz-row.n7 .qchip,.bz-row.n5 .qchip{transform:scale(.75)}
.bt-deal.small .pk{width:24px;height:34px;margin-left:-6px}.bt-deal.small .pk:first-child{margin-left:0}.bt-deal.small .pk-c b{font-size:9px}.bt-deal.small .pk-c i{font-size:7px}.bt-deal.small .pk-mid{font-size:14px}.bt-deal.small .pk-court{inset:6px 4px}.bt-deal.small .pk-court b{font-size:11px}.bt-deal.small .pk-court i{display:none}.bt-deal.small .pk-c.br{display:none}
.bt-pt.wide{width:auto;padding:0 7px;border-radius:12px;font-size:11px;top:auto;bottom:-6px;left:50%!important;right:auto!important;transform:translateX(-50%)}
.k-lh .bt-hand .pk{width:46px;height:64px}.k-lh .pk-mid{font-size:28px}.k-lh .pk-c b{font-size:14px}
.k-lh .bt-hand.b small{color:#fca5a5}.k-lh .bt-hand.p small{color:#93c5fd}
/* 骰子 */
.qdie{position:relative;display:inline-block;width:22px;height:22px;border-radius:5px;background:linear-gradient(145deg,#fff,#e5e7eb);box-shadow:inset 0 -2px 0 #cbd5e1,0 2px 3px rgba(0,0,0,.35)}
.qdie i{position:absolute;width:18%;height:18%;border-radius:50%;background:#111827;transform:translate(-50%,-50%)}.qdie.red i{background:#dc2626}
.qdie .p1{left:27%;top:27%}.qdie .p3{left:73%;top:27%}.qdie .p4{left:27%;top:50%}.qdie .p5{left:50%;top:50%}.qdie .p6{left:73%;top:50%}.qdie .p7{left:27%;top:73%}.qdie .p9{left:73%;top:73%}
.qdie.lg{width:46px;height:46px;border-radius:10px}.ql-dice{position:relative;display:flex;gap:6px;transform:rotate(-8deg)}
.qdice-mini{display:inline-flex;gap:1px}.qdice-mini .qdie{width:13px;height:13px;border-radius:3px}
.sb-stage{position:relative;z-index:1;height:96px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.sb-plate{position:absolute;width:150px;height:62px;border-radius:50%;background:radial-gradient(#fef3c7,#d4a017 70%,#92400e);box-shadow:0 6px 12px rgba(0,0,0,.45);bottom:2px}
.sb-cup{position:absolute;z-index:2;bottom:16px;width:96px;height:80px;border-radius:48px 48px 14px 14px;background:radial-gradient(circle at 35% 25%,#fde68a,#b45309 55%,#78350f);box-shadow:inset 0 -6px 0 rgba(0,0,0,.25),0 6px 10px rgba(0,0,0,.4)}
.sb-cup:after{content:"";position:absolute;left:50%;top:-10px;width:22px;height:16px;margin-left:-11px;border-radius:50%;background:radial-gradient(#fde68a,#a16207)}
.sb-cup.open{animation:sbshake 1.4s var(--t) both,sblift .5s calc(var(--t) + 1.4s) forwards}
@keyframes sbshake{0%,100%{transform:none}10%,30%,50%,70%,90%{transform:translateX(-7px) rotate(-6deg)}20%,40%,60%,80%{transform:translateX(7px) rotate(6deg)}}
@keyframes sblift{to{transform:translateY(-70px);opacity:0}}
.sb-dice{position:absolute;z-index:1;bottom:20px;display:flex;gap:8px}.sb-dice .qdie{width:30px;height:30px;border-radius:7px}.sb-dice .qdie.roll{animation:sbroll .5s var(--t) both}
@keyframes sbroll{from{transform:rotate(-180deg) scale(.4);opacity:0}to{transform:none;opacity:1}}
.sb-stage .bt-win{bottom:-12px}
.sb-trend{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.sb-tr{display:flex;align-items:center;gap:2px;padding:3px;border-radius:6px;background:#efe7d6;font-size:11px}.sb-tr .qdie{width:14px;height:14px;border-radius:3px}.sb-tr b{margin-left:2px}.sb-tr em{font-style:normal;margin-left:auto;font-weight:800}.sb-tr em.w-b{color:#dc2626}.sb-tr em.w-p{color:#2563eb}.sb-tr em.w-t{color:#16a34a}
.road.bead .bd{font-size:10px}
.bt-deal .bt-win{position:relative;left:auto;top:auto;bottom:auto;grid-column:1/3;justify-self:center;margin-top:8px;animation:qppop2 .4s var(--t) both}
@keyframes qppop2{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
.bt-pt.wide{bottom:-12px}
/* 真实扑克牌面：公有领域 Vector Playing Cards 雪碧图（见 /assets/cards/LICENSE.txt） */
.pk{width:44px;height:64px}
.pk-face{background:#fff url(/assets/cards/deck.webp?v=1) no-repeat;background-size:1300% 400%;background-position:calc(var(--cx) * 100% / 12) calc(var(--cy) * 100% / 3);border-radius:4px;box-shadow:0 2px 5px rgba(0,0,0,.45)}
.pk-back{background:url(/assets/cards/back.svg?v=1) center/100% 100% no-repeat;border:0;border-radius:4px;box-shadow:0 2px 5px rgba(0,0,0,.45)}
.bt-cards .pk+.pk{margin-left:-12px}
.bt-deal.small .pk{width:40px;height:58px;margin-left:0}.bt-deal.small .pk+.pk{margin-left:-26px}
.k-zjh .bt-cards .pk+.pk{margin-left:-14px}
.k-lh .bt-hand .pk{width:62px;height:90px}
.bt-cards{min-height:64px}.bt-deal.small .bt-cards{min-height:58px}
.ql-cards .pk.big{width:58px;height:84px}
.qp-card{width:28px;height:41px;border:0;border-radius:3px;background:#fff url(/assets/cards/deck.webp?v=1) no-repeat;background-size:1300% 400%;background-position:calc(var(--cx) * 100% / 12) calc(var(--cy) * 100% / 3);box-shadow:0 1px 3px rgba(0,0,0,.3)}
.bt-pt{z-index:2}
/* 棋牌页 深浅色主题变量 */
.qp-lobby,.qp-table-page,.qp-hub,.cat-qp{--qp-title:#fde68a;--qp-sub:#cbd5e1;--qp-text:#e5e7eb;--qp-strong:#fde68a;--qp-btn-bg:#2a1a0e;--qp-btn-fg:#fde68a;--qp-btn-bd:#8a6128;--qp-dis-bg:#1f2937;--qp-dis-fg:#94a3b8;--qp-help-bg:#111827;--qp-help-fg:#e5e7eb;--qp-help-bd:#374151;color:var(--qp-text)}
:root[data-theme="light"] .qp-lobby,:root[data-theme="light"] .qp-table-page,:root[data-theme="light"] .qp-hub,:root[data-theme="light"] .qph-grid{--qp-title:#7c2d12;--qp-sub:#57534e;--qp-text:#1f2937;--qp-strong:#b45309;--qp-btn-bg:#fff7ed;--qp-btn-fg:#7c2d12;--qp-btn-bd:#d6a35c;--qp-dis-bg:#e7e5e4;--qp-dis-fg:#57534e;--qp-help-bg:#fffbeb;--qp-help-fg:#292524;--qp-help-bd:#e7c98f}
.ql-title b,.bt-title b{color:var(--qp-title)}.ql-title small,.bt-title small,.ql-note{color:var(--qp-sub)}
.bt-total{color:var(--qp-text)}.bt-total b{color:var(--qp-strong)}
.bt-msg{color:var(--qp-strong);font-weight:700}
.bt-help-btn{border-color:var(--qp-title);color:var(--qp-title)}
.bt-help{background:var(--qp-help-bg);color:var(--qp-help-fg);border-color:var(--qp-help-bd)}.bt-help-x{color:var(--qp-sub)}.bt-help-x code{color:var(--qp-strong)}
.bt-actions button{background:var(--qp-btn-bg);color:var(--qp-btn-fg);border-color:var(--qp-btn-bd)}
.bt-actions button:disabled{opacity:1;background:var(--qp-dis-bg);color:var(--qp-dis-fg);border-color:transparent}
.bt-actions button.ok:disabled{background:var(--qp-dis-bg);color:var(--qp-dis-fg)}
.qp-lobby .back-btn,.qp-table-page .back-btn,.qp-hub .back-btn{color:var(--qp-title)}
.bt-road,.ql-road{color:#1f2937}.bt-stats span{color:#374151}
.bt-deal .bt-pt,.bt-deal .bt-pt.p,.bt-deal .bt-pt.b{top:auto;bottom:-9px;left:50%;right:auto;transform:translateX(-50%);min-width:24px;width:auto;height:22px;padding:0 6px;border-radius:12px}
.bt-deal .bt-win{margin-top:14px}
.qp-lobby .back-btn,.qp-table-page .back-btn,.qp-hub .back-btn{background:var(--qp-btn-bg);border:1px solid var(--qp-btn-bd)}
.bz.won{animation:none;box-shadow:0 0 0 3px #fde68a,0 0 18px #fde68a;background:rgba(253,230,138,.22)}
.bt-wrap{grid-template-columns:44px minmax(0,1fr) 44px}.bt-rim,.bt-felt{min-width:0}
.sb-stage{height:118px}.sb-dice{bottom:30px}.sb-stage .bt-win{bottom:-6px;z-index:3}
.k-sb .bz-row{gap:4px}.k-sb .bz-row.n7 .bz,.k-sb .bz-row.n6 .bz{padding:13px 0 3px}
.sb-stage{margin-bottom:36px}.sb-stage .bt-win{bottom:-32px}
/* 列表小牌：牌面下方标注花色点数，避免小尺寸人像牌认错花色 */
.qp-cw{display:inline-flex;flex-direction:column;align-items:center;gap:1px}
.qp-ci{font-style:normal;font-size:10px;font-weight:800;line-height:1;color:#111827}.qp-ci.red{color:#dc2626}
:root[data-theme="dark"] .qp-ci{color:#e5e7eb}:root[data-theme="dark"] .qp-ci.red{color:#f87171}
/* 棋牌：分类列表一行简洁结果 */
.qp-brief{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:12px;font-weight:700;color:#e8d9a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qp-brief-d{display:inline-flex;gap:2px}.qp-brief .qdie.xs{width:15px;height:15px;border-radius:3px}
html[data-theme="light"] .qp-brief{color:#7a4d06}
/* 首页棋牌大卡（与澳洲10大卡同尺寸） */
.qp-hcard{position:relative;height:190px;border-radius:20px;overflow:hidden;background:#1e3047;box-shadow:0 10px 24px rgba(0,0,0,.17);border:1px solid rgba(212,160,23,.35);contain:layout paint}
.qp-hcard-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 40%}
.qp-hcard:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.72) 100%);pointer-events:none}
.qp-hcard-main{position:absolute;inset:0;z-index:2;border:0;background:transparent;color:#fff;text-align:left;padding:16px 14px;display:flex;flex-direction:column;align-items:flex-start}
.qp-hcard-main small{font-size:10px;color:#e9cf8f;letter-spacing:.5px}
.qp-hcard-main strong{font-size:22px;margin-top:3px;background:linear-gradient(180deg,#fff6d5,#f1c25a 60%,#c88a1a);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.qp-hcard-main em{margin-top:8px;font-style:normal;font-size:11px;font-weight:700;color:#1b1203;background:linear-gradient(180deg,#ffe7a0,#e1a82b);padding:4px 11px;border-radius:999px;box-shadow:0 3px 8px rgba(0,0,0,.35)}
.qp-hcard-games{position:absolute;z-index:3;left:6px;right:6px;bottom:8px;display:grid;grid-template-columns:repeat(7,1fr);gap:1px}
.qp-hcard-games button{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;color:#fff}
.qp-hcard-games img{width:38px;height:38px;border-radius:11px;box-shadow:0 4px 10px rgba(0,0,0,.5)}
.qp-hcard-games span{font-size:10px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.9)}
html[data-theme="light"] .qp-hcard{background:#f2f6fb;border-color:#d9e3ef;box-shadow:0 6px 18px rgba(15,23,42,.10)}
html[data-theme="light"] .qp-hcard-bg{filter:brightness(1.19) saturate(1.04)}
html[data-theme="light"] .qp-hcard:after{background:linear-gradient(180deg,transparent 48%,rgba(15,28,47,.50) 100%)}
html[data-theme="light"] .qp-brief .qdie.xs{box-shadow:inset 0 0 0 1px #94a3b8,0 1px 2px rgba(0,0,0,.25)}

/* 棋牌大厅 hub：3D 头图 + 游戏小卡 */
.qp-hub{padding:10px 12px 90px}
.qph-grid{--qp-title:#fde68a;--qp-sub:#cbd5e1;--qp-text:#e5e7eb;--qp-btn-bg:#2a1a0e;--qp-btn-fg:#fde68a;--qp-btn-bd:#8a6128;--qp-help-bg:#111827;--qp-help-fg:#e5e7eb;--qp-help-bd:#374151}
.qph-hero{position:relative;height:240px;border-radius:20px;overflow:hidden;margin-bottom:12px;background:radial-gradient(90% 80% at 50% 30%,#1f7a52 0,#0b3f2a 48%,#06140f 100%);box-shadow:inset 0 0 0 2px #b4832f,0 10px 24px rgba(0,0,0,.3);perspective:700px}
.qph-glow{position:absolute;left:50%;top:38%;width:260px;height:260px;margin:-130px;border-radius:50%;background:radial-gradient(circle,rgba(255,220,130,.4),transparent 65%);animation:qphpulse 3.2s ease-in-out infinite}
.qph-stage{position:absolute;inset:0;transform-style:preserve-3d}
.qph-ring{position:absolute;left:50%;top:30px;width:0;height:0;transform-style:preserve-3d;animation:qphspin 14s linear infinite;will-change:transform}
.qph-pc{position:absolute;left:-30px;top:0;width:60px;height:87px;transform-style:preserve-3d;transform:rotateY(calc(var(--i)*60deg)) translateZ(118px)}
.qph-pc .pk-face{position:absolute;inset:0;display:block;border-radius:6px;box-shadow:0 6px 14px rgba(0,0,0,.5);backface-visibility:visible}
.qph-chip{position:absolute;left:calc(50% + var(--x) - 22px);top:calc(78px + var(--y));width:44px;height:44px;border-radius:50%;background:repeating-conic-gradient(var(--c) 0 22.5deg,#fff 22.5deg 30deg,var(--c) 30deg 45deg);box-shadow:0 5px 0 rgba(0,0,0,.45),0 10px 14px rgba(0,0,0,.45);animation:qphbob 2.4s ease-in-out var(--d) infinite;transform:rotateX(55deg);will-change:transform}
.qph-chip:after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 2px #fff9}
.qph-dice{position:absolute;left:50%;top:128px;display:flex;gap:8px;transform:translateX(-50%);animation:qphdice 3s ease-in-out infinite}
.qph-dice .qdie.lg{width:34px;height:34px;border-radius:8px}
.qph-hero-t{position:absolute;left:0;right:0;bottom:12px;text-align:center;z-index:3}
.qph-hero-t b{display:block;font-size:24px;letter-spacing:4px;background:linear-gradient(180deg,#fff6d5,#f1c25a 60%,#c88a1a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}
.qph-hero-t small{font-size:11px;color:#f5e7c0;opacity:.9}
@keyframes qphspin{from{transform:rotateX(-12deg) rotateY(0)}to{transform:rotateX(-12deg) rotateY(360deg)}}
@keyframes qphbob{0%,100%{transform:rotateX(55deg) translateY(0)}50%{transform:rotateX(55deg) translateY(-10px)}}
@keyframes qphdice{0%,100%{transform:translateX(-50%) rotate(-6deg)}50%{transform:translateX(-50%) rotate(6deg) translateY(-4px)}}
@keyframes qphpulse{0%,100%{opacity:.7}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.qph-ring,.qph-chip,.qph-dice,.qph-glow{animation:none}}
.qph-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qph-card{border-radius:16px;background:linear-gradient(160deg,#1c1408,#0e0b07);border:1px solid #6b4a1c;box-shadow:0 6px 16px rgba(0,0,0,.25);overflow:hidden;align-self:start}
.qph-card.open{grid-column:1/-1}.qph-card.open .qph-main{flex-direction:row;text-align:left}.qph-card.open .qph-t{text-align:left}
.qph-main{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 10px;border:0;background:transparent;color:var(--qp-text);text-align:left}
.qph-main img{width:64px;height:64px;border-radius:13px;flex:none;box-shadow:0 4px 10px rgba(0,0,0,.4)}
.qph-t{width:100%;min-width:0;text-align:center}.qph-t b{display:block;font-size:15px;color:var(--qp-title)}.qph-t small{display:block;font-size:11px;color:var(--qp-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.qph-main em{display:none;font-style:normal;font-size:11px;font-weight:700;color:#1b1203;background:linear-gradient(180deg,#ffe7a0,#e1a82b);padding:3px 9px;border-radius:999px;flex:none}
.qph-rule-btn{width:100%;border:0;border-top:1px solid rgba(180,131,47,.35);background:transparent;color:var(--qp-sub);font-size:11px;padding:6px 0}
.qph-rules{padding:0 12px 10px;color:var(--qp-help-fg);font-size:12px;line-height:1.6}.qph-rules ol{margin:0;padding-left:18px}
.qph-card.soon{opacity:.6}.qph-soon-i{width:64px;height:64px;border-radius:13px;display:grid;place-items:center;background:#2a2116;color:#a8957a;font-size:22px;font-weight:800;flex:none}
:root[data-theme="light"] .qph-card{background:linear-gradient(160deg,#fffaf0,#fdf1dc);border-color:#e2bf7e;box-shadow:0 4px 12px rgba(120,80,20,.12)}
:root[data-theme="light"] .qph-soon-i{background:#efe4d0;color:#8a7558}
.qp-snd{width:32px;height:32px;border-radius:50%;border:1px solid var(--qp-btn-bd,#8a6128);background:var(--qp-btn-bg,#2a1a0e);font-size:15px;line-height:1;flex:none;opacity:.6}.qp-snd.on{opacity:1}
.ql-rules{margin:10px 0;border-radius:14px;border:1px solid var(--qp-help-bd);background:var(--qp-help-bg);color:var(--qp-help-fg);font-size:12px;line-height:1.6}
.ql-rules summary{padding:9px 12px;font-weight:700;color:var(--qp-title);cursor:pointer}.ql-rules ol{margin:0;padding:0 12px 10px 28px}
/* 分类页顶级分类 */
.cat-top{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:8px}
.cat-top button{border:1px solid rgba(118,137,255,.18);background:#10172e;color:#cbd5e1;border-radius:12px;padding:9px 0;font-size:14px;font-weight:800}
.cat-top button.on{background:linear-gradient(135deg,#7c5cff,#5b8cff);color:#fff;border-color:transparent}
:root[data-theme="light"] .cat-top button{background:#fff;color:#334155;border-color:#e2e8f0}
:root[data-theme="light"] .cat-top button.on{background:linear-gradient(135deg,#7c5cff,#5b8cff);color:#fff}
.cat-soon{padding:60px 0;text-align:center}
/* 德州扑克 */
.bt-deal.th-deal{grid-template-columns:1fr;gap:4px}
.th-deal .th-row{flex-direction:row;justify-content:center;gap:8px;padding-bottom:0}
.th-deal .th-row small{width:46px;font-size:12px;letter-spacing:1px;text-align:right}.th-deal .th-row.t small{color:#fde68a}
.th-deal .bt-cards{min-height:58px}.th-deal .pk{width:40px;height:58px}.th-deal .bt-cards .pk+.pk{margin-left:3px}
.th-deal .th-row .bt-pt.wide{position:relative;bottom:auto!important;left:auto!important;transform:none;min-width:56px;height:22px;align-self:center}
.th-deal .th-row .bt-pt.t{background:#15803d}
.th-deal .bt-win{grid-column:1/2}
.ql-st.st-decide{background:#a16207}.bt-status.st-decide{background:linear-gradient(#d97706,#92400e);box-shadow:inset 0 0 0 1.5px #fde68a}
.th-act .bt-total{font-size:13px}.th-act button.th-fold{min-width:72px}.th-act button.th-call{min-width:110px}
@media (max-width:360px){.th-deal .pk{width:34px;height:50px}.th-deal .th-row small{width:38px}}
.pk.deal.thf{animation:none}.pk.deal.thf .pk-in{animation:qpflip .4s var(--t) both}
/* 斗地主 */
.dz-c{position:relative;display:inline-block;width:52px;height:72px;flex:none;border-radius:5px;transition:transform .12s}
.dz-c .pk-face{position:absolute;inset:0;transform:none;display:block}
.dz-c.jk{background:linear-gradient(#fff,#f3f4f6);box-shadow:0 2px 5px rgba(0,0,0,.45),inset 0 0 0 1px #d1d5db;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.dz-c.jk b{position:absolute;left:3px;top:4px;writing-mode:vertical-rl;font-size:9px;letter-spacing:-1px;font-weight:900;line-height:1}
.dz-c.jk i{font-style:normal;font-size:30px;line-height:1;margin-left:8px}
.dz-c.jk.big{color:#dc2626}.dz-c.jk.small{color:#111827}
.dz-row{display:inline-flex;align-items:flex-end}.dz-row .dz-c+.dz-c{margin-left:-30px}
.dz-row.sm .dz-c{width:34px;height:47px}.dz-row.sm .dz-c+.dz-c{margin-left:-20px}.dz-row.sm .dz-c.jk i{font-size:18px;margin-left:6px}.dz-row.sm .dz-c.jk b{font-size:6px}
.dz-row.xs .dz-c,.dz-c.xs{width:26px;height:36px}.dz-row.xs .dz-c+.dz-c{margin-left:-16px}.dz-c.xs.jk i,.dz-row.xs .dz-c.jk i{font-size:14px;margin-left:5px}.dz-c.xs.jk b,.dz-row.xs .dz-c.jk b{font-size:5px}
.dz-row.md .dz-c{width:44px;height:61px}.dz-row.md .dz-c+.dz-c{margin-left:-26px}
.ddz-table{display:flex;flex-direction:column;min-height:calc(100vh - 70px);padding-bottom:12px}
.dz-felt{position:relative;margin:6px 8px 0;height:330px;border-radius:22px;background:radial-gradient(ellipse at 50% 35%,#1f7a4d,#0d4a2e 70%,#083521);box-shadow:inset 0 0 0 3px #b8862f,inset 0 0 0 7px #3b2a12,0 10px 26px rgba(0,0,0,.45);overflow:hidden}
.dz-top{position:absolute;left:0;right:0;top:8px;display:flex;flex-direction:column;align-items:center;gap:4px}
.dz-bottom{display:flex;gap:4px}.dz-bottom .pk-back{position:relative;display:inline-block;width:26px;height:36px}
.dz-mult{font-size:12px;color:#d1fae5;background:rgba(0,0,0,.28);padding:2px 10px;border-radius:99px}.dz-mult b{color:#fde68a;font-size:14px}
.dz-seat{position:absolute;top:62px;width:120px;display:flex;flex-direction:column;align-items:center;gap:3px;color:#fff}
.dz-seat.l{left:6px}.dz-seat.r{right:6px}
.dz-av{position:relative;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px;background:hsl(var(--h,200) 55% 42%);box-shadow:0 0 0 2px #fde68a,0 4px 10px rgba(0,0,0,.4)}
.dz-seat.turn .dz-av{box-shadow:0 0 0 3px #facc15,0 0 16px #facc15}
.dz-hat{position:absolute;top:-10px;right:-14px;font-style:normal;font-size:10px;font-weight:900;padding:1px 5px;border-radius:7px;background:linear-gradient(#fbbf24,#b45309);color:#3b1d06;box-shadow:0 1px 3px rgba(0,0,0,.5)}.dz-hat.f{background:linear-gradient(#93c5fd,#1d4ed8);color:#fff}
.dz-nick{font-size:11px;display:flex;gap:3px;align-items:center;max-width:120px;white-space:nowrap;overflow:hidden}
.dz-bot{font-style:normal;font-size:9px;font-weight:800;padding:0 4px;border-radius:4px;background:#64748b;color:#fff}
.dz-auto{font-style:normal;font-size:9px;padding:0 4px;border-radius:4px;background:#b45309;color:#fff}
.dz-cnt{position:relative;width:26px;height:36px}.dz-cnt .pk-back{position:absolute;inset:0}.dz-cnt b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:15px;color:#fff;text-shadow:0 1px 3px #000}.dz-cnt.warn b{color:#fca5a5}
.dz-clock{min-width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:13px;background:#fde68a;color:#7c2d12;box-shadow:0 0 0 2px #b45309}
.dz-out{min-height:50px;display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:2px}
.dz-say{font-size:15px;font-weight:900;padding:3px 10px;border-radius:10px;background:rgba(0,0,0,.35);color:#fde68a}.dz-say.n{color:#e5e7eb}
.dz-mid{position:absolute;left:50%;top:150px;transform:translateX(-50%);display:flex;justify-content:center;width:100%}
.dz-me{position:absolute;left:12px;bottom:10px}.dz-role{font-size:12px;font-weight:900;padding:2px 9px;border-radius:9px;background:linear-gradient(#93c5fd,#1d4ed8);color:#fff}.dz-role.ll{background:linear-gradient(#fbbf24,#b45309);color:#3b1d06}
.dz-acts{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 8px 4px;min-height:42px}
.dz-acts button{padding:9px 16px;border-radius:11px;border:1px solid var(--qp-btn-bd,#8a6128);background:var(--qp-btn-bg,#2a1a0e);color:var(--qp-btn-fg,#fde68a);font-weight:800;font-size:14px}
.dz-acts button.ok{background:linear-gradient(#fde68a,#d4a017 60%,#a16207);color:#3b1d06;border:0}
.dz-acts button:disabled{opacity:.45}
.dz-tip{font-size:13px;color:var(--qp-sub,#cbd5e1)}
.dz-hand{display:flex;justify-content:center;padding:18px 8px 6px;min-height:100px}
.dz-hand .dz-c{width:54px;height:76px;cursor:pointer}.dz-hand .dz-c+.dz-c{margin-left:calc(var(--step) - 54px)}
.dz-hand .dz-c.sel{transform:translateY(-16px)}
.dz-result{width:88%;max-width:340px;margin-top:-28px;padding:10px 12px;border-radius:14px;background:rgba(6,9,27,.96);color:#fff;text-align:center;box-shadow:0 0 0 2px #b8862f}
.dz-result>b{font-size:20px;color:#fde68a}.dz-result.lose>b{color:#cbd5e1}.dz-result>small{display:block;font-size:12px;color:#cbd5e1;margin:2px 0 6px}
.dz-result table{width:100%;font-size:12px;border-collapse:collapse}.dz-result td{padding:3px 2px;border-top:1px solid rgba(255,255,255,.1)}.dz-result tr.me td{color:#fde68a}.dz-result td.up{color:#4ade80;font-weight:800}.dz-result td.down{color:#f87171;font-weight:800}
.dz-seed{margin-top:6px;font-size:11px;text-align:left}.dz-seed code{word-break:break-all;font-size:10px;color:#a7f3d0}.dz-seed p{margin:3px 0}
.dz-out .rest{max-width:118px;flex-wrap:wrap;justify-content:center}
.ddz-rooms{display:grid;gap:10px;margin:10px 12px}
.ddz-room{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:linear-gradient(135deg,#1f2a44,#0f172a);color:#fff;box-shadow:inset 0 0 0 1px rgba(253,230,138,.25)}
.ddz-room>div:first-child{display:flex;flex-direction:column;min-width:80px}.ddz-room b{font-size:16px}.ddz-room small{font-size:12px;color:#cbd5e1}.ddz-room small em{font-style:normal;color:#fde68a;font-weight:900;font-size:15px}
.ddz-room-m{flex:1;display:flex;flex-direction:column;gap:2px}
.ddz-room.r2{background:linear-gradient(135deg,#14532d,#052e16)}.ddz-room.r3{background:linear-gradient(135deg,#1e3a8a,#172554)}.ddz-room.r4{background:linear-gradient(135deg,#7c2d12,#431407)}
.ql-hero.k-ddz{display:flex;align-items:center;justify-content:space-between}
.dz-hero-cards{position:relative;display:inline-block;width:150px;height:90px}.dz-hero-cards>span{position:absolute;left:calc(var(--i) * 22px);top:calc(abs(var(--i) - 2) * 4px);transform:rotate(calc((var(--i) - 2) * 9deg));transform-origin:50% 120%}
.dz-hero-cards .dz-c{width:54px;height:76px}
html[data-theme="light"] .ddz-room{background:linear-gradient(135deg,#fff7e6,#fde9c4);color:#3b1d06;box-shadow:inset 0 0 0 1px #e8c27a}
html[data-theme="light"] .ddz-room small{color:#7c5a2a}
html[data-theme="light"] .ddz-room.r2{background:linear-gradient(135deg,#ecfdf5,#bbf7d0)}html[data-theme="light"] .ddz-room.r3{background:linear-gradient(135deg,#eff6ff,#bfdbfe)}html[data-theme="light"] .ddz-room.r4{background:linear-gradient(135deg,#fff1f2,#fecdd3)}
html[data-theme="light"] .ddz-room small em{color:#b45309}
html[data-theme="light"] .dz-tip{color:#475569}
html[data-theme="light"] .dz-felt{background:radial-gradient(ellipse at 50% 35%,#2f9a63,#177245 70%,#0f5a36)}
@media (max-width:360px){.dz-felt{height:310px}.dz-seat{width:100px}.dz-hand .dz-c{width:46px;height:66px}.dz-hand .dz-c+.dz-c{margin-left:calc(var(--step) - 46px)}}
/* 首页只保留大厅入口，无底部小游戏图标行。 */
.qp-hcard{margin-bottom:var(--home-card-gap,18px)}
.qp-hcard-games span{font-size:9.5px;white-space:nowrap}
/* 斗地主：我的座位与手牌适配窄屏 */
.dz-me{display:flex;align-items:center;gap:6px;max-width:62%;padding:3px 8px 3px 3px;border-radius:22px;background:rgba(0,0,0,.28)}
.dz-me.turn{box-shadow:0 0 0 2px #fbbf24}
.dz-av.sm{width:34px;height:34px;font-size:15px;flex:none}
.dz-me-t{display:flex;align-items:center;gap:5px;min-width:0}.dz-me-t b{color:#fff;font-size:12.5px;max-width:7em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dz-me-n{color:#fde68a;font-size:11.5px;white-space:nowrap}
.dz-hand{justify-content:safe center;overflow-x:auto;overflow-y:visible;scrollbar-width:none;padding-left:14px;padding-right:14px}.dz-hand::-webkit-scrollbar{display:none}
.dz-hand .dz-c{flex:none}
/* 斗地主：卡通头像（原创 SVG）+ 机器人标记 */
.dz-av-wrap{position:relative;display:inline-flex}
.dz-ava{position:relative;display:inline-block;width:52px;height:52px;border-radius:50%;flex:none;box-shadow:0 0 0 2px #fde68a,0 4px 10px rgba(0,0,0,.4)}
.dz-ava svg{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden}
.dz-ava .bg{fill:#8ec5ff}.dz-ava.r-fm .bg{fill:#a7e3a1}.dz-ava.r-ll .bg{fill:#ffd36b}
.dz-ava .hd{transform-box:fill-box;transform-origin:50% 100%;animation:dzBob 3.2s ease-in-out infinite}
.dz-ava .ey{transform-box:fill-box;transform-origin:50% 50%;animation:dzBlink 4.3s infinite}
.dz-ava.pop{animation:dzPop .6s ease-out}
.dz-ava.sm{width:36px;height:36px;box-shadow:0 0 0 2px #fde68a}
.dz-seat.turn .dz-ava,.dz-me.turn .dz-ava{box-shadow:0 0 0 3px #facc15,0 0 16px #facc15}
.dz-robot{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;border-radius:50%;background:#334155;box-shadow:0 0 0 1.5px #fff;display:flex;align-items:center;justify-content:center;font-style:normal}
.dz-robot svg{width:12px;height:12px}
.dz-ava.sm .dz-robot{width:14px;height:14px}.dz-ava.sm .dz-robot svg{width:10px;height:10px}
@keyframes dzBob{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-1.5px) rotate(-2deg)}70%{transform:translateY(.5px) rotate(2deg)}}
@keyframes dzBlink{0%,93%,100%{transform:scaleY(1)}95.5%{transform:scaleY(.12)}}
@keyframes dzPop{0%{transform:scale(.6) rotate(-12deg)}60%{transform:scale(1.12) rotate(4deg)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.dz-ava .hd,.dz-ava .ey,.dz-ava.pop{animation:none}}
/* 结束时各家剩余手牌：分两行，不超出座位 */
.dz-row.xs.rest{display:flex;flex-wrap:wrap;justify-content:center;max-width:116px;row-gap:3px;padding-left:16px}
/* 大厅头图的牌不贴左边被裁切 */
.dz-hero-cards{margin-left:22px}
.ql-hero.k-ddz{padding:0 14px 0 34px}.ql-hero.k-ddz .dz-hero-cards{flex:none;margin-left:0}
.ql-hero.k-ddz .ql-hero-t{flex:1;min-width:0}.ql-hero.k-ddz .ql-hero-t b{font-size:34px;letter-spacing:4px}.ql-hero.k-ddz .ql-hero-t em{white-space:nowrap;letter-spacing:2px}
.dz-result .dz-robot{position:relative;right:auto;bottom:auto;display:inline-flex;vertical-align:-3px;margin-right:4px;width:15px;height:15px}.dz-result .dz-robot svg{width:10px;height:10px}
/* —— 麻将 —— 牌面为本站原创 SVG（mj-tiles.js） */
.mj-t{display:inline-block;flex:none;width:var(--tw,15px);aspect-ratio:40/54;border-radius:calc(var(--tw,15px) * .14);background:#fbf7ec center/88% no-repeat;box-shadow:inset 0 -2px 0 #d8ccb0,0 1.5px 0 #2c7a4b,0 2px 3px rgba(0,0,0,.25);vertical-align:bottom}
.mj-t.back{background:linear-gradient(160deg,#42b77a,#1f7a4d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 1.5px 0 #f3ead2,0 2px 3px rgba(0,0,0,.25)}
.mj-t.last{box-shadow:0 0 0 2px #facc15,0 0 8px #facc15}
.mj-felt{height:340px}
.mj-seat{position:absolute;display:flex;align-items:center;gap:4px;color:#fff;font-size:11px;z-index:2}
.mj-seat.t{top:8px;left:50%;transform:translateX(-50%);flex-direction:row}
.mj-seat.l,.mj-seat.r{top:118px;flex-direction:column;width:56px;text-align:center}.mj-seat.l{left:4px}.mj-seat.r{right:4px}
.mj-seat .dz-ava.sm{width:38px;height:38px}
.mj-seat.turn .dz-ava{box-shadow:0 0 0 3px #facc15,0 0 14px #facc15}
.mj-nick{display:flex;align-items:center;gap:3px;white-space:nowrap;font-weight:700}
.mj-cnt{font-size:10px;color:#fde68a;white-space:nowrap}
.mj-zhuang{position:absolute;left:-5px;top:-5px;font-style:normal;font-size:10px;font-weight:900;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(#fbbf24,#b45309);color:#3b1d06;box-shadow:0 0 0 1.5px #fff}
.mj-zhuang.in{position:static;display:inline-flex;width:15px;height:15px;font-size:9px}
.mj-melds{display:flex;flex-wrap:wrap;gap:3px;justify-content:center}.mj-melds.xs .mj-t{--tw:11px}.mj-melds.sm .mj-t{--tw:19px}
.mj-seat.l .mj-melds,.mj-seat.r .mj-melds{max-width:56px}
.mj-meld{display:inline-flex}
.mj-river{position:absolute;display:grid;gap:1px;align-content:start;--tw:15px;z-index:1}
.mj-river.t{top:58px;left:50%;transform:translateX(-50%);grid-template-columns:repeat(9,var(--tw));min-height:20px}
.mj-river.me{bottom:10px;left:50%;transform:translateX(-50%);grid-template-columns:repeat(9,var(--tw));align-content:end}
.mj-river.l{top:122px;left:64px;grid-template-columns:repeat(4,var(--tw))}
.mj-river.r{top:122px;right:64px;grid-template-columns:repeat(4,var(--tw))}
.mj-center{position:absolute;top:128px;left:50%;transform:translateX(-50%);width:104px;min-height:96px;border-radius:14px;background:rgba(0,0,0,.28);box-shadow:inset 0 0 0 1px rgba(253,230,138,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#fde68a;font-size:11px;z-index:2}
.mj-center b{font-size:15px;color:#fff}.mj-turn{color:#fff;font-weight:700;white-space:nowrap;max-width:100px;overflow:hidden;text-overflow:ellipsis}
.mj-show .mj-t{--tw:26px;animation:dzPop .4s ease-out}
.mj-me{display:flex;align-items:center;gap:8px;margin:0 12px;min-height:44px;flex-wrap:wrap}
.mj-me .mj-seat{position:static;transform:none}
.mj-hand{display:flex;justify-content:safe center;align-items:flex-end;gap:1px;padding:14px max(10px,env(safe-area-inset-right)) 8px max(10px,env(safe-area-inset-left));overflow-x:auto;scrollbar-width:none;min-height:70px}.mj-hand::-webkit-scrollbar{display:none}
.mj-hand .mj-t{width:var(--tw);cursor:pointer;transition:transform .12s}.mj-hand .mj-t.sel{transform:translateY(-12px)}
.mj-gap{flex:none;width:8px}
.mj-acts button.hu{background:linear-gradient(#fca5a5,#dc2626 60%,#991b1b);color:#fff}
.mj-result{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;z-index:6;max-height:96%;overflow:auto;width:92%}
.mj-win-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:1px 3px;margin:4px 0 6px;--tw:18px}
.mj-win-hand .mj-meld .mj-t{--tw:16px}
.ql-hero.k-mj{display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 26px;background:radial-gradient(120% 90% at 20% 10%,#166534 0,#0b3d22 50%,#06140c 100%)}
.mj-hero-tiles{position:relative;flex:none;width:150px;height:80px}.mj-hero-tiles>span{position:absolute;left:calc(var(--i) * 25px);top:calc(abs(var(--i) - 2) * 5px);transform:rotate(calc((var(--i) - 2) * 7deg))}.mj-hero-tiles .mj-t{--tw:40px}
.ql-hero.k-mj .ql-hero-t{flex:1;min-width:0}.ql-hero.k-mj .ql-hero-t b{font-size:36px;letter-spacing:6px}.ql-hero.k-mj .ql-hero-t em{white-space:nowrap;letter-spacing:2px}
.dz-ava.t0 .bg{fill:#c4b5fd}.dz-ava.t1 .bg{fill:#99f6e4}.dz-ava.t2 .bg{fill:#fed7aa}.dz-ava.t3 .bg{fill:#fbcfe8}
@media (max-width:360px){.mj-river{--tw:13px}.mj-river.l{left:60px}.mj-river.r{right:60px}.mj-center{width:92px}}
.mj-center{width:90px}.mj-river.l{left:58px}.mj-river.r{right:58px}
@media (max-width:360px){.mj-center{width:80px}.mj-river.l{left:56px}.mj-river.r{right:56px}}
html[data-theme="light"] .mj-me .mj-nick{color:#1f2937}
/* 斗地主出牌特效 */
.dz-fx-layer{position:fixed;z-index:950;pointer-events:none;overflow:hidden;border-radius:22px}
.fx-plane{position:absolute;top:34%;left:-130px;width:120px;animation:fxPlane 1.5s cubic-bezier(.4,.1,.6,1) forwards;filter:drop-shadow(0 6px 8px rgba(0,0,0,.4))}
.fx-plane svg{display:block;width:100%;position:relative}.fx-trail{position:absolute;top:26px;left:100%;height:4px;width:220px;border-radius:2px;background:linear-gradient(270deg,transparent,rgba(255,255,255,.85));animation:fxTrail 1.5s ease-out forwards}
@keyframes fxPlane{0%{transform:translateX(0) translateY(10px) rotate(-4deg) scaleX(-1)}100%{transform:translateX(calc(100vw + 260px)) translateY(-24px) rotate(-8deg) scaleX(-1)}}
@keyframes fxTrail{0%{opacity:0}15%{opacity:1}85%{opacity:.9}100%{opacity:0}}
.fx-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,244,214,.95),rgba(251,146,60,.6) 25%,transparent 60%);animation:fxFlash .7s ease-out forwards}
.fx-ring{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px;border-radius:50%;border:6px solid #fb923c;animation:fxRing .7s ease-out forwards}.fx-ring.r2{border-color:#fde68a;animation-delay:.12s}
.fx-p{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px;border-radius:2px;background:#f97316;transform:rotate(var(--a));animation:fxP .8s ease-out forwards}
@keyframes fxFlash{0%{opacity:0}15%{opacity:1}100%{opacity:0}}
@keyframes fxRing{0%{transform:scale(.3);opacity:1}100%{transform:scale(6);opacity:0}}
@keyframes fxP{0%{transform:rotate(var(--a)) translateX(0) scale(1)}100%{transform:rotate(var(--a)) translateX(130px) scale(.2);opacity:0}}
.fx-rocket{position:absolute;left:calc(50% - 20px);bottom:-100px;width:40px;animation:fxRocket 1.1s cubic-bezier(.5,0,.7,.4) forwards}
.fx-flame{position:absolute;left:12px;top:70px;width:16px;height:34px;border-radius:50% 50% 50% 50%/30% 30% 70% 70%;background:linear-gradient(#fde68a,#f97316 50%,transparent);animation:fxFlame .1s infinite alternate}
.fx-star{position:absolute;left:50%;top:22%;width:8px;height:8px;margin:-4px;background:#fde68a;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);opacity:0;transform:rotate(var(--a));animation:fxStar .8s .95s ease-out forwards}
@keyframes fxRocket{0%{transform:translateY(0)}100%{transform:translateY(-120vh)}}
@keyframes fxFlame{to{transform:scaleY(1.3)}}
@keyframes fxStar{0%{opacity:1;transform:rotate(var(--a)) translateX(0) scale(1.6)}100%{opacity:0;transform:rotate(var(--a)) translateX(110px) scale(.6)}}
.fx-streak{position:absolute;left:-60%;top:46%;width:60%;height:6px;border-radius:3px;background:linear-gradient(90deg,transparent,#fef08a,#fff,transparent);box-shadow:0 0 12px #fde68a;animation:fxStreak .8s ease-out forwards}.fx-streak.s2{top:52%;animation-delay:.1s}.fx-streak.s3{top:40%;animation-delay:.2s}
@keyframes fxStreak{to{left:110%}}
.fx-spring{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);font-size:56px;font-weight:900;letter-spacing:8px;color:#fde68a;text-shadow:0 0 18px #f472b6,0 4px 0 #9d174d;animation:fxSpring 2s ease-out forwards}
.fx-petal{position:absolute;top:-16px;left:var(--x);width:12px;height:12px;border-radius:12px 0;background:#f9a8d4;animation:fxPetal 1.9s var(--d) linear forwards}
@keyframes fxSpring{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}20%{transform:translate(-50%,-50%) scale(1.15);opacity:1}80%{opacity:1}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}
@keyframes fxPetal{to{transform:translateY(380px) rotate(540deg);opacity:.2}}
body.dz-shake .dz-felt{animation:fxShake .45s linear}
@keyframes fxShake{0%,100%{transform:translate(0)}20%{transform:translate(-6px,3px)}40%{transform:translate(5px,-4px)}60%{transform:translate(-4px,2px)}80%{transform:translate(3px,-2px)}}
@media (prefers-reduced-motion:reduce){.dz-fx-layer *{animation-duration:.01s!important}body.dz-shake .dz-felt{animation:none}}
/* 棋牌大厅人物卡 */
.qph-grid{padding-top:34px;row-gap:46px}
.qph-card.art{position:relative;overflow:visible;isolation:isolate}
.qph-card.art .qph-main{position:relative;padding:0 0 9px;gap:7px}
.qph-art{position:relative;display:block;width:100%;height:124px;border-radius:15px 15px 0 0;overflow:hidden;background:#0b0a12}
.qph-main .qph-bg{position:absolute;inset:0;width:100%;height:100%;flex:none;object-fit:cover;object-position:50% 40%;box-shadow:none!important;border-radius:0!important}
.qph-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.45))}
.qph-sweep{position:absolute;top:-20%;bottom:-20%;left:0;width:45%;z-index:3;background:linear-gradient(100deg,transparent 0,rgba(255,240,200,.0) 30%,rgba(255,240,200,.32) 50%,rgba(255,240,200,0) 70%,transparent);transform:translateX(-160%) skewX(-12deg);animation:qphSweep 5.2s ease-in-out infinite;animation-delay:calc(var(--i,0)*.55s)}
.qph-pop{position:absolute;left:0;right:0;top:-44px;height:168px;overflow:hidden;pointer-events:none;z-index:2;border-radius:0}
.qph-halo{position:absolute;left:50%;bottom:6px;width:150px;height:150px;margin-left:-75px;border-radius:50%;background:radial-gradient(circle,rgba(255,214,120,.42),rgba(255,180,60,.12) 45%,transparent 68%);animation:qphHalo 3.4s ease-in-out infinite;animation-delay:calc(var(--i,0)*.3s)}
.qph-girl{position:absolute;left:50%;bottom:0;height:164px!important;width:auto!important;max-width:none;margin-left:-100px;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 0 6px rgba(255,214,140,.55)) drop-shadow(0 6px 8px rgba(0,0,0,.45));transform-origin:50% 100%;animation:qphBob 3.6s ease-in-out infinite;animation-delay:calc(var(--i,0)*-.45s);will-change:transform}
.qph-spk{position:absolute;width:10px;height:10px;z-index:3;background:radial-gradient(circle,#fff 0,#ffe7a0 30%,transparent 62%);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);opacity:0;animation:qphSpk 2.6s ease-in-out infinite;animation-delay:calc(var(--s)*.65s + var(--i,0)*.2s)}
.qph-spk[style*="--s:0"]{left:14%;top:34%}.qph-spk[style*="--s:1"]{right:12%;top:24%;width:13px;height:13px}.qph-spk[style*="--s:2"]{left:24%;top:72%}.qph-spk[style*="--s:3"]{right:22%;top:62%;width:8px;height:8px}
.qph-card.art .qph-t b{font-size:15px;letter-spacing:1px}
.qph-card.art.open .qph-main{flex-direction:column;text-align:center}.qph-card.art.open .qph-t{text-align:center}
@keyframes qphBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes qphHalo{0%,100%{opacity:.7;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
@keyframes qphSweep{0%,55%{transform:translateX(-160%) skewX(-12deg)}85%,100%{transform:translateX(330%) skewX(-12deg)}}
@keyframes qphSpk{0%,100%{opacity:0;transform:scale(.4) rotate(0)}50%{opacity:1;transform:scale(1) rotate(45deg)}}
@media (prefers-reduced-motion:reduce){.qph-girl,.qph-halo,.qph-sweep,.qph-spk{animation:none}.qph-sweep,.qph-spk{display:none}}
:root[data-theme="light"] .qph-card.art .qph-art{box-shadow:inset 0 -1px 0 rgba(180,131,47,.4)}
.qp-hcard{overflow:visible;contain:layout}
.qp-hcard-bg,.qp-hcard:after{border-radius:inherit}
.qp-hcard-pop{position:absolute;right:0;bottom:0;width:62%;height:calc(100% + 56px);overflow:hidden;border-radius:0 0 20px 0;pointer-events:none;z-index:1}
.qp-hcard-pop .qph-halo{left:auto;right:14%;margin:0;bottom:30px;width:165px;height:165px}
.qp-hcard-girl{position:absolute;bottom:0;left:50%;height:216px;width:auto;margin-left:-118px;filter:drop-shadow(0 0 8px rgba(255,214,140,.5)) drop-shadow(0 8px 10px rgba(0,0,0,.5));animation:qphBob 3.8s ease-in-out infinite;will-change:transform}
.qp-hcard-pop .qph-spk[style*="--s:0"]{left:16%;top:30%}.qp-hcard-pop .qph-spk[style*="--s:1"]{right:8%;top:22%}
.qp-hcard-games{grid-template-columns:repeat(8,1fr)}
.qp-hcard-games img{width:34px;height:34px;border-radius:10px}
.qp-hcard-games span{font-size:9px}
@media (prefers-reduced-motion:reduce){.qp-hcard-girl{animation:none}.qp-hcard-pop .qph-spk{display:none}}
:root[data-theme="light"] .qp-hcard-girl{filter:drop-shadow(0 0 7px rgba(255,205,130,.55))}
.qph-pop{top:-60px;height:184px}
:root[data-theme="light"] .qph-girl{filter:drop-shadow(0 0 6px rgba(255,205,130,.55)) drop-shadow(0 3px 4px rgba(120,80,20,.25))}
/* 3D 卡通头像 */
.dz-ava{background:#1f2937;overflow:visible}
.dz-ava .qa-img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;animation:qaBreath 4.2s ease-in-out infinite;animation-delay:var(--ph,0s)}
.bt-seat .av{overflow:hidden;background:#1f2937;padding:0}
.bt-seat .av .qa-img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
@keyframes qaBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
/* 房间页 3D 人物横幅 */
.ql-hero.q3d{height:164px;padding:0!important;display:block;background:#0b0a12}
.ql-hero.q3d:before{display:none}
.q3-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 40%}
.ql-hero.q3d:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62) 0,rgba(0,0,0,.25) 48%,rgba(0,0,0,0) 70%);pointer-events:none}
.q3-pop{position:absolute;right:-6px;bottom:0;width:62%;height:100%;pointer-events:none;z-index:1}
.q3-pop .qph-halo{left:50%;bottom:10px;width:150px;height:150px;margin-left:-75px}
.q3-girl{position:absolute;left:50%;bottom:0;height:160px;width:auto;margin-left:-98px;filter:drop-shadow(0 0 7px rgba(255,214,140,.5));animation:qphBob 3.8s ease-in-out infinite;will-change:transform}
.q3-pop .qph-spk[style*="--s:0"]{left:12%;top:26%}.q3-pop .qph-spk[style*="--s:1"]{right:12%;top:16%}
.ql-hero.q3d .ql-hero-t{position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:2;text-align:left;max-width:52%}
.ql-hero.q3d .ql-hero-t b{font-size:32px;letter-spacing:3px;white-space:nowrap}
.ql-hero.q3d .ql-hero-t em{white-space:nowrap;letter-spacing:1px;font-size:11px}
@media (prefers-reduced-motion:reduce){.q3-girl,.dz-ava .qa-img{animation:none}.q3-pop .qph-spk{display:none}}
/* 牌桌荷官 */
.bt-wrap.has-dealer{padding-top:68px}
.bt-dealer{position:absolute;left:50%;top:2px;width:150px;height:98px;margin-left:-75px;overflow:hidden;pointer-events:none;z-index:0}
.bt-dealer img{position:absolute;left:50%;top:2px;height:120px;width:auto;margin-left:-73px;filter:drop-shadow(0 0 6px rgba(255,214,140,.45));animation:qphBob 4s ease-in-out infinite}
.bt-wrap.has-dealer .bt-rim{position:relative;z-index:1}
.bt-wrap.has-dealer .bt-seats{position:relative;z-index:1}
@media (prefers-reduced-motion:reduce){.bt-dealer img{animation:none}}
/* 牌桌/电子页：客服改为页面底部随内容排列，不再悬浮遮挡操作按钮；标题副行不换行 */
.cs-fab.cs-flow{position:relative;right:auto;bottom:auto;z-index:1;width:fit-content!important;flex-direction:row;gap:5px;height:34px;padding:0 16px;border-radius:17px;margin:4px auto calc(78px + env(safe-area-inset-bottom));box-shadow:0 3px 8px rgba(0,0,0,.25)}
.cs-fab.cs-flow span{font-size:15px}.cs-fab.cs-flow b{font-size:12px}
.ql-title small,.bt-title small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 座位立体人物：去掉圆框，人物抠图坐在桌沿后（下半身被桌沿挡住，毡面投影） */
.dz-ava,.dz-ava.sm,.mj-seat .dz-ava.sm{width:64px;height:74px;border-radius:0;background:none!important;box-shadow:none!important;overflow:visible;isolation:isolate}
.dz-ava.sm,.mj-seat .dz-ava.sm{width:52px;height:60px}
.dz-ava .qa-img{position:relative;z-index:0;width:100%;height:100%;border-radius:0;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4));transform-origin:50% 100%}
.dz-ava:before{content:"";position:absolute;left:-6%;right:-6%;bottom:-7px;height:12px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.5),rgba(0,0,0,0) 70%);z-index:-1}
.dz-ava:after{content:"";position:absolute;left:-5px;right:-5px;bottom:-2px;height:9px;border-radius:5px;background:linear-gradient(180deg,#d6a35a,#8a5a24 55%,#5b3914);box-shadow:0 2px 4px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,240,200,.6);z-index:1;pointer-events:none}
.dz-ava .dz-robot{z-index:2;right:-6px;bottom:4px}
.dz-seat.turn .dz-ava,.dz-me.turn .dz-ava,.mj-seat.turn .dz-ava{box-shadow:none!important}
.dz-seat.turn .dz-ava .qa-img,.dz-me.turn .dz-ava .qa-img,.mj-seat.turn .dz-ava .qa-img{filter:drop-shadow(0 0 3px #facc15) drop-shadow(0 0 7px rgba(250,204,21,.8))}
.dz-hat{top:-4px;right:-16px;z-index:3}
.mj-zhuang{z-index:3;left:-6px;top:0}
.dz-me{padding-top:0;padding-bottom:0;align-items:flex-end}
/* 棋牌桌两侧座位 */
.bt-seat{width:48px}
.bt-seat .av{width:42px;height:48px;border-radius:0;background:none!important;box-shadow:none!important;overflow:visible;position:relative;isolation:isolate;padding:0}
.bt-seat .av .qa-img{width:100%;height:100%;border-radius:0;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 2px 2px rgba(0,0,0,.45))}
.bt-seat:not(.empty) .av:after{content:"";position:absolute;left:-3px;right:-3px;bottom:-1px;height:7px;border-radius:4px;background:linear-gradient(180deg,#d6a35a,#8a5a24 55%,#5b3914);box-shadow:0 2px 3px rgba(0,0,0,.45);z-index:1}
.bt-seat.empty .av{width:34px;height:34px;margin-top:14px;border-radius:10px;background:rgba(0,0,0,.28)!important;box-shadow:inset 0 0 0 1.5px rgba(212,160,23,.4)!important}
.bt-seat.me .av .qa-img{filter:drop-shadow(0 0 3px #fde68a) drop-shadow(0 0 6px rgba(253,230,138,.8))}
.dz-seat .dz-av-wrap{margin-bottom:7px}.mj-seat .dz-av-wrap{margin-bottom:5px}
/* ===== 电子（老虎机） ===== */
.sl-home-title{margin-top:var(--home-card-gap,18px)}
.sl-hcard .qp-hcard-games.sl3{grid-template-columns:repeat(3,1fr);left:6px;right:6px;width:auto}
.sl-hcard .qp-hcard-games img,.sl-mjic{width:40px;height:40px;border-radius:11px;background:linear-gradient(160deg,#5a0c0c,#1d0505);border:1px solid rgba(231,181,73,.6);object-fit:contain;display:grid;place-items:center}
.sl-mjic .sls.mjt{width:22px;height:30px}
.sl-hcard{margin-bottom:var(--home-card-gap,18px)}
.sl-grid{grid-template-columns:1fr 1fr}
.sl-card .qph-t small{color:var(--qp-sub)}
.sl-page{padding-bottom:20px}
.sl-hero.q3d{height:112px;margin-bottom:8px}
.sl-hero .q3-girl{height:118px;margin-left:-72px}
.sl-hero .ql-hero-t b{font-size:26px}
.sl-machine{position:relative;border-radius:18px;padding:7px;background:linear-gradient(160deg,#7a1010,#3b0606);box-shadow:inset 0 0 0 2px #e7b549,inset 0 0 0 4px #5a0c0c,0 10px 24px rgba(0,0,0,.35)}
.sl-machine.k-mj{background:linear-gradient(160deg,#0f5b3c,#06301f);box-shadow:inset 0 0 0 2px #d9b45a,inset 0 0 0 4px #073a26,0 10px 24px rgba(0,0,0,.35)}
.sl-machine.k-bs{background:linear-gradient(160deg,#3b1676,#160833);box-shadow:inset 0 0 0 2px #c4a1ff,inset 0 0 0 4px #24104a,0 10px 24px rgba(0,0,0,.35)}
.sl-machine.fsmode{box-shadow:inset 0 0 0 2px #fde68a,0 0 18px rgba(250,204,21,.65),0 10px 24px rgba(0,0,0,.35)}
.sl-reels{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.sl-reels.wait{aspect-ratio:5/3.1}
.sl-reel{position:relative;aspect-ratio:1/3;overflow:hidden;border-radius:10px;background:radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.14),rgba(0,0,0,.35));box-shadow:inset 0 6px 8px -4px rgba(0,0,0,.6),inset 0 -6px 8px -4px rgba(0,0,0,.6)}
.sl-strip{--n:3;display:flex;flex-direction:column;height:100%}
.sl-cell{flex:0 0 calc(100% / var(--n));display:grid;place-items:center;min-height:0;transition:opacity .2s}
.sl-reel.spin .sl-strip{height:600%;animation:slLoop .28s linear infinite;filter:blur(1.2px)}
@keyframes slLoop{from{transform:translateY(-50%)}to{transform:translateY(0)}}
.sl-reel.land .sl-strip{animation:slLand .32s cubic-bezier(.2,1.5,.4,1)}
@keyframes slLand{0%{transform:translateY(-22%)}100%{transform:translateY(0)}}
.sls{display:grid;place-items:center;width:88%;aspect-ratio:1;position:relative}
.sls.pic img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}
.sls.low b{font-size:25px;font-weight:900;font-family:Georgia,"Times New Roman",serif;line-height:1;-webkit-text-stroke:1px rgba(0,0,0,.35);text-shadow:0 2px 0 rgba(0,0,0,.35),0 0 6px rgba(255,255,255,.25)}
.sls.low.l-T b{font-size:21px;letter-spacing:-1px}
.sls.l-A b{color:#ff5a5f}.sls.l-K b{color:#4fc3ff}.sls.l-Q b{color:#ba7bff}.sls.l-J b{color:#4ade80}.sls.l-T b{color:#ffb547}
.sls.mjt,.sls.mjw,.sls.mjs{width:70%;aspect-ratio:40/54;border-radius:6px;background:#fbf7ec center/86% no-repeat;box-shadow:inset 0 -3px 0 #d8ccb0,0 2px 0 #2c7a4b,0 3px 5px rgba(0,0,0,.35)}
.sls.mjw{background:linear-gradient(160deg,#ffe58f,#e0a526);box-shadow:inset 0 -3px 0 #b07a12,0 2px 0 #7a4f06,0 3px 5px rgba(0,0,0,.35)}.sls.mjw b{font-size:13px;color:#7a1d06;writing-mode:vertical-rl;letter-spacing:1px}
.sls.mjs{background:linear-gradient(160deg,#ff6b6b,#b3141c);box-shadow:inset 0 -3px 0 #7a0c12,0 2px 0 #4a0508,0 3px 5px rgba(0,0,0,.35)}.sls.mjs b{font-size:22px;color:#ffe9a8;font-family:"KaiTi","STKaiti",serif}
.sl-cell.dim{opacity:.38}
.sl-cell.hl .sls{animation:slHl .55s ease-in-out infinite alternate}
@keyframes slHl{from{transform:scale(1);filter:drop-shadow(0 0 0 rgba(250,204,21,0))}to{transform:scale(1.1);filter:drop-shadow(0 0 7px rgba(250,204,21,.95))}}
.sl-cell.gone .sls{transform:scale(0);opacity:0;transition:transform .25s ease-in,opacity .25s}
.sl-cell.drop .sls{animation:slDrop .38s cubic-bezier(.3,1.4,.5,1)}
@keyframes slDrop{from{transform:translateY(-110%);opacity:.3}to{transform:none;opacity:1}}
.sl-reel.exp{box-shadow:inset 0 0 0 2px #fde68a,0 0 12px rgba(250,204,21,.8)}.sl-reel.exp .sls{animation:slDrop .4s ease-out}
.sl-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.sl-lines polyline{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.9;filter:drop-shadow(0 0 3px rgba(0,0,0,.6));stroke-dasharray:900;stroke-dashoffset:900;animation:slDraw .5s ease-out forwards}
@keyframes slDraw{to{stroke-dashoffset:0}}
.sl-info{display:flex;align-items:center;justify-content:center;gap:10px;min-height:34px;margin:8px 0 4px;color:var(--qp-text);font-size:14px;font-weight:700}
.sl-win b{color:var(--qp-strong);font-size:18px}
.sl-fs{padding:2px 9px;border-radius:9px;background:linear-gradient(#fbbf24,#b45309);color:#3b1d06;font-size:12px}
.sl-mul{padding:2px 8px;border-radius:9px;background:#7c3aed;color:#fff;font-size:13px;animation:slHl .5s ease-in-out 2 alternate}
.sl-ctrl{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 4px}
.sl-betbox{flex:1;display:flex;align-items:center;justify-content:space-between;border-radius:16px;padding:5px;background:var(--qp-btn-bg);border:1px solid var(--qp-btn-bd);max-width:230px}
.sl-betbox button{width:40px;height:40px;border-radius:12px;border:0;background:linear-gradient(180deg,#ffe7a0,#e1a82b);color:#3b1d06;font-size:22px;font-weight:900}
.sl-betbox button:disabled{opacity:.4}
.sl-betbox span{display:flex;flex-direction:column;align-items:center;line-height:1.15}.sl-betbox small{font-size:10px;color:var(--qp-sub)}.sl-betbox b{font-size:17px;color:var(--qp-btn-fg)}
.sl-spin{width:76px;height:76px;flex:none;border-radius:50%;border:0;background:radial-gradient(circle at 35% 30%,#fff3c4,#f5b82e 45%,#b26b06);box-shadow:0 0 0 3px #7a4806,0 6px 14px rgba(0,0,0,.4),inset 0 -4px 0 rgba(0,0,0,.2);color:#4a2604;font-size:16px;font-weight:900;position:relative}
.sl-spin:before{content:"";position:absolute;inset:7px;border-radius:50%;border:2px dashed rgba(122,72,6,.45)}
.sl-spin.busy:before{animation:slRot .8s linear infinite}.sl-spin.busy span:after{content:" ›"}
.sl-spin:active{transform:scale(.95)}
@keyframes slRot{to{transform:rotate(360deg)}}
.sl-msg{min-height:18px;text-align:center;font-size:12.5px;color:var(--qp-strong);margin-bottom:4px}
.sl-pt{padding:0 12px 10px}.sl-pt table{width:100%;border-collapse:collapse;font-size:12px}
.sl-pt th{font-weight:700;color:var(--qp-sub);text-align:center;padding:3px 2px}.sl-pt td{text-align:center;padding:2px;border-top:1px solid rgba(180,131,47,.2)}
.sl-pt td:first-child{width:38px}.sl-pt td:first-child .sls{width:32px;margin:auto}.sl-pt td:first-child .sls.mjt,.sl-pt td:first-child .sls.mjw,.sl-pt td:first-child .sls.mjs{width:22px}
.sl-pt td:first-child .sls.low b{font-size:17px}.sl-pt .sls.mjw b{font-size:9px}.sl-pt .sls.mjs b{font-size:13px}
.sl-pt td:nth-child(2){text-align:left}
.sl-pt-s{display:flex;align-items:center;gap:8px;margin:6px 0}.sl-pt-s .sls{width:32px;flex:none}.sl-pt-s .sls.mjw,.sl-pt-s .sls.mjs{width:22px}.sl-pt-s .sls.mjw b{font-size:9px}.sl-pt-s .sls.mjs b{font-size:13px}
.sl-pt-n,.sl-pt-k{margin:4px 0;font-size:11.5px;color:var(--qp-sub)}.sl-pt-k b{color:var(--qp-strong)}
.sl-fair{margin:10px 0;border-radius:14px;border:1px solid var(--qp-help-bd);background:var(--qp-help-bg);color:var(--qp-help-fg);padding:9px 12px;font-size:11.5px}
.sl-fr{display:flex;gap:8px;align-items:baseline;margin-bottom:4px}.sl-fr span{flex:none;color:var(--qp-sub);width:6.6em}.sl-fr code{flex:1;min-width:0;word-break:break-all;font-size:10.5px;font-family:ui-monospace,Menlo,Consolas,monospace;color:var(--qp-text)}
.sl-vbtn,.sl-hrow button{border:1px solid var(--qp-btn-bd);background:var(--qp-btn-bg);color:var(--qp-btn-fg);border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}
.sl-vres{margin:6px 0 0;font-weight:700}.sl-vres.ok{color:#22c55e}.sl-vres.bad{color:#ef4444}
.sl-fair-n{margin:6px 0 0;color:var(--qp-sub);font-size:11px;line-height:1.5}
.sl-hl{padding:0 12px 10px}.sl-hrow{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:4px 0;border-top:1px solid rgba(180,131,47,.2);font-size:12px}.sl-hrow b{font-weight:700;color:var(--qp-sub)}.sl-hrow b.w{color:var(--qp-strong)}.sl-hrow button{padding:2px 8px;font-size:11px}
.sl-big{position:absolute;inset:0;z-index:5;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(60,20,0,.78),rgba(0,0,0,.9));animation:slBigIn .35s ease-out}
.sl-big.out{opacity:0;transition:opacity .3s}
.sl-big b{font-size:34px;font-weight:900;letter-spacing:4px;background:linear-gradient(180deg,#fff6d5,#f1c25a 55%,#c27a0e);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6));animation:slPulse .6s ease-in-out infinite alternate}
.sl-big.t2 b{font-size:38px}.sl-big.t3 b{font-size:40px;background-image:linear-gradient(180deg,#fff,#ffd36b 40%,#ff7ab6)}
.sl-big strong{margin-top:6px;font-size:26px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.sl-big i{position:absolute;top:-12%;left:var(--x);width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7c2,#f5b82e 55%,#a86405);box-shadow:inset 0 0 0 2px rgba(122,72,6,.5);transform:scale(var(--s));animation:slCoin 1.5s linear infinite;animation-delay:var(--d)}
@keyframes slCoin{0%{transform:translateY(0) scale(var(--s)) rotateY(0)}100%{transform:translateY(130vw) scale(var(--s)) rotateY(720deg)}}
@keyframes slBigIn{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
@keyframes slPulse{from{transform:scale(1)}to{transform:scale(1.08)}}
:root[data-theme="light"] .sl-reel{background:radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.22),rgba(0,0,0,.28))}
@media (max-width:360px){.sl-spin{width:68px;height:68px}.sls.low b{font-size:21px}}
@media (prefers-reduced-motion:reduce){.sl-reel.spin .sl-strip{animation-duration:.6s;filter:none}.sl-cell.hl .sls,.sl-big b,.sl-mul{animation:none}.sl-big i{display:none}.sl-lines polyline{animation:none;stroke-dashoffset:0}}
/* 游戏页左上角玩法说明 */
.qp-table-page,.qp-lobby,.sl-page{position:relative}
.g-info-btn{flex:0 0 auto;width:32px;height:32px;margin-left:-2px;border-radius:10px;display:grid;place-items:center;padding:0;border:1px solid var(--qp-btn-bd,#6b4a1c);background:var(--qp-btn-bg,#1c1408);color:var(--qp-title,#fde68a);cursor:pointer;-webkit-tap-highlight-color:transparent}
.g-info-btn.on{background:var(--qp-title,#fde68a);color:var(--qp-btn-bg,#1c1408)}
.g-info-panel{position:absolute;left:6px;right:6px;top:44px;z-index:40;max-height:min(68vh,560px);overflow:auto;-webkit-overflow-scrolling:touch;border-radius:14px;border:1px solid var(--qp-help-bd,#374151);background:var(--qp-help-bg,#111827);color:var(--qp-help-fg,#e5e7eb);box-shadow:0 14px 30px rgba(0,0,0,.35);font-size:12.5px;line-height:1.6}
.g-info-panel.anim{animation:gInfoIn .22s ease-out}
@keyframes gInfoIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.g-info-h{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 6px 12px;background:inherit;border-bottom:1px solid var(--qp-help-bd,#374151)}
.g-info-h b{color:var(--qp-title,#fde68a);font-size:13px}
.g-info-x{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--qp-title,#fde68a);font-size:20px;line-height:1;cursor:pointer}
.g-info-b{padding:8px 12px 12px}.g-info-b ol{margin:0;padding-left:18px}
.g-info-sub{margin:10px 0 6px;font-size:12.5px;color:var(--qp-title,#fde68a)}
.g-info-panel .sl-pay{margin:0}
:root[data-theme="light"] .g-info-panel{box-shadow:0 10px 24px rgba(120,80,20,.18)}
.qph-card{position:relative}.qph-fav{position:absolute;top:6px;left:6px;z-index:4;width:32px;height:32px;border:1px solid rgba(253,230,138,.55);border-radius:50%;background:rgba(14,11,7,.65);color:#fde68a;font-size:22px;line-height:1;cursor:pointer}.qph-fav.active{background:#fde68a;color:#713f12}.ql-last-result{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:8px 0;padding:8px 10px;border-radius:10px;background:rgba(128,128,128,.1);font-size:12px}.ql-last-result>small{opacity:.8}.qp-result-waiting{min-height:100px;display:grid;place-items:center;color:var(--qp-sub)}.home-draw-waiting{font-size:12px;color:inherit}.promo-gift img{animation:homeGiftSway 3.8s ease-in-out infinite;transform-origin:50% 75%}@keyframes homeGiftSway{0%,70%,100%{transform:rotate(0)}78%{transform:rotate(-7deg)}86%{transform:rotate(7deg)}94%{transform:rotate(-3deg)}}@media(prefers-reduced-motion:reduce){.announce-bar .announce-marquee,.promo-gift img{animation:none}}
.qph-rule-btn.ic{position:absolute;top:6px;right:6px;z-index:3;width:32px;height:32px;padding:0;border:1px solid rgba(253,230,138,.55);border-radius:50%;background:rgba(14,11,7,.55);color:#fde68a;font:italic 700 15px/30px Georgia,serif;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.qph-rule-btn.ic.on{font:400 19px/30px system-ui;font-style:normal}
:root[data-theme="light"] .qph-rule-btn.ic{background:rgba(255,250,240,.8);color:#92400e;border-color:#e2bf7e}
.qph-card.open .qph-rules{padding-top:8px}
/* 斗地主结算：桌面加高，结算框放到两侧剩余手牌下方，自己的座位在最下面，互不遮挡 */
.dz-felt.done{height:auto;min-height:330px;padding-bottom:84px}
.dz-felt.done .dz-mid{position:relative;left:auto;top:auto;transform:none;margin-top:var(--dz-done-top,346px)}
.dz-felt.done .dz-result{margin-top:0;position:relative;z-index:6}
.dz-felt.done .dz-me{z-index:5}
/* 捕鱼 */
.by-hcard .qp-hcard-games.sl3{grid-template-columns:repeat(3,1fr);left:6px;right:6px;width:auto}
.by-hcard .qp-hcard-games img{width:40px;height:40px;border-radius:11px;background:linear-gradient(160deg,#0b5f8a,#06243f);border:1px solid rgba(120,220,255,.55);object-fit:contain;padding:3px}
.by-hcard{margin-bottom:var(--home-card-gap,18px)}
.by-grid{grid-template-columns:1fr}
.by-card .qph-art,.by-card .qph-main{min-height:0}
.by-page .bt-top{margin-bottom:6px}
.by-stage{position:relative;height:clamp(360px,calc(100dvh - 236px),640px);border-radius:16px;overflow:hidden;background:var(--by-bg) center/cover no-repeat,#0a4d7a;box-shadow:inset 0 0 0 2px rgba(255,214,120,.45),0 6px 16px rgba(0,0,0,.25);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.by-cv{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}
.by-msg{position:absolute;left:50%;top:10px;transform:translate(-50%,-6px);padding:6px 14px;border-radius:999px;background:rgba(6,24,48,.78);color:#fff3c4;font-size:13px;font-weight:700;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;white-space:nowrap;z-index:2}
.by-msg.show{opacity:1;transform:translate(-50%,0)}
.by-ctrl{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 4px}
.by-costbox{max-width:240px}
.by-auto{min-width:84px;height:50px;border-radius:16px;border:1px solid var(--qp-btn-bd);background:var(--qp-btn-bg);color:var(--qp-title);font-size:15px;font-weight:800}
.by-auto.on{background:linear-gradient(180deg,#ffe7a0,#e1a82b);color:#3b1d06;border-color:#e1a82b}
.by-pay{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.by-pay span{display:flex;flex-direction:column;align-items:center;padding:6px 2px;border-radius:10px;background:rgba(10,80,130,.18);border:1px solid var(--qp-help-bd,#374151)}
.by-pay img{height:34px;max-width:72px;object-fit:contain}
.by-pay b{font-size:11px;margin-top:2px}.by-pay em{font-style:normal;font-weight:800;color:var(--qp-title,#fde68a)}
:root[data-theme="light"] .by-stage{box-shadow:inset 0 0 0 2px rgba(200,140,40,.55),0 4px 12px rgba(20,80,120,.18)}
:root[data-theme="light"] .by-pay span{background:rgba(120,200,255,.14)}
.sl-hcard:has(+ .by-home-title){margin-bottom:var(--home-card-gap,18px)}
/* welcome card */
.hw-card{position:relative;height:180px;margin:58px 0 4px;border-radius:20px;background:#20334e;border:1px solid rgba(212,160,23,.35);box-shadow:0 10px 24px rgba(0,0,0,.28),0 0 16px rgba(240,190,90,.18)}
.hw-clip{position:absolute;inset:0;border-radius:inherit;overflow:hidden}
.hw-clip:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,18,.9) 0,rgba(4,6,18,.55) 40%,transparent 64%);pointer-events:none}
.hw-stage{position:absolute;right:0;bottom:0;width:min(118%,424px);aspect-ratio:16/9;animation:hwFloat 4s ease-in-out infinite;will-change:transform}
.hw-stage img{display:block;width:100%;height:100%}
.hw-pop{pointer-events:none;z-index:2;filter:drop-shadow(0 6px 10px rgba(0,0,0,.45))}
.hw-shine{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,230,170,.2) 50%,transparent 60%);transform:translateX(-120%);animation:hwShine 5.5s ease-in-out infinite}
.hw-copy{position:absolute;z-index:3;text-shadow:0 1px 3px rgba(0,0,0,.6);left:16px;top:50%;transform:translateY(-50%);max-width:56%;color:#fff}
.hw-copy small{display:block;font-size:10px;letter-spacing:3px;color:#e9c47a;margin-bottom:4px}
.hw-copy h2{margin:0 0 9px;font-size:clamp(17px,5.2vw,22px);font-weight:800;line-height:1.2;background:linear-gradient(180deg,#fff6dc,#e8b956);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}
.hw-tags{display:flex;gap:6px;margin-bottom:9px}
.hw-tags span{font-size:12px;font-weight:700;color:#fbe3a6;padding:3px 8px;border-radius:999px;border:1px solid rgba(240,200,110,.6);background:linear-gradient(180deg,rgba(255,215,130,.2),rgba(120,80,20,.25));box-shadow:0 2px 6px rgba(0,0,0,.4)}
.hw-copy p{margin:0;font-size:12px;line-height:1.55;color:rgba(255,255,255,.82)}
html[data-theme="light"] .hw-card{background:#edf3fa;border-color:#d8e4f2;box-shadow:0 6px 18px rgba(15,23,42,.11)}
html[data-theme="light"] .hw-clip:after{background:linear-gradient(90deg,rgba(248,251,255,.98) 0%,rgba(248,251,255,.88) 34%,rgba(248,251,255,.38) 57%,transparent 80%)}
html[data-theme="light"] .hw-clip .hw-stage img{filter:brightness(1.18) saturate(1.04)}
html[data-theme="light"] .hw-copy{color:#24364f;text-shadow:none}
html[data-theme="light"] .hw-copy small{color:#526a87}
html[data-theme="light"] .hw-copy h2{background:none;-webkit-background-clip:initial;background-clip:initial;color:#203754;filter:none}
html[data-theme="light"] .hw-tags span{color:#72520e;border-color:#dac58f;background:rgba(255,247,222,.94);box-shadow:none}
html[data-theme="light"] .hw-copy p{color:#41546d}
@keyframes hwFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes hwShine{0%,55%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@media (prefers-reduced-motion:reduce){.hw-stage,.hw-shine{animation:none}}
.hero-banner:has(.hw-card){height:auto;overflow:visible}.hero-banner:has(.hw-card):before{display:none}
/* promo page */
.promo-page{padding:10px 12px 90px}
.pp-head{display:flex;align-items:center;gap:8px;margin:2px 0 12px;position:relative;justify-content:center;min-height:36px}
.pp-head b{font-size:18px;font-weight:800;background:linear-gradient(180deg,#fff3cf,#e2b04e);-webkit-background-clip:text;background-clip:text;color:transparent}
.pp-back{position:absolute;left:0;top:0;width:36px;height:36px;border-radius:12px;border:1px solid rgba(212,160,23,.4);background:rgba(255,255,255,.04);color:#e9c47a;font-size:24px;line-height:1;display:grid;place-items:center;padding:0 0 3px}
.pp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pp-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;min-height:148px;padding:14px 12px 12px;border-radius:18px;border:1px solid rgba(212,160,23,.45);background:var(--pg);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,235,180,.18)}
.pp-card:before{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(255,220,140,.35),transparent 65%)}
.pp-card:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,rgba(255,235,180,.16) 50%,transparent 60%);transform:translateX(-120%);animation:hwShine 6s ease-in-out infinite;pointer-events:none}
.pp-card i{font-style:normal;font-size:30px;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(180deg,#f8dc8c,#c18a2a);box-shadow:0 6px 14px rgba(0,0,0,.35),inset 0 2px 0 rgba(255,255,255,.4);margin-bottom:10px;position:relative}
.pp-card b{font-size:16px;font-weight:800;color:#fff1c8;position:relative}
.pp-card small{font-size:12px;opacity:.85;margin-top:3px;line-height:1.35;position:relative}
.pp-card em{margin-top:auto;padding-top:8px;font-style:normal;font-size:11px;color:#f3cf7e;position:relative}
.pp-h0{--pg:linear-gradient(150deg,#5a1020,#200814)}.pp-h1{--pg:linear-gradient(150deg,#123a5c,#0a1430)}.pp-h2{--pg:linear-gradient(150deg,#5a3a0a,#1e1206)}.pp-h3{--pg:linear-gradient(150deg,#0f4a3a,#071a18)}.pp-h4{--pg:linear-gradient(150deg,#3e1a6a,#140a2a)}.pp-h5{--pg:linear-gradient(150deg,#6a1a4a,#1e0a1a)}
.pp-hero{display:flex;align-items:center;gap:14px;padding:18px 16px;border-radius:20px;border:1px solid rgba(212,160,23,.45);background:var(--pg);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.28);margin-bottom:12px}
.pp-hero i{font-style:normal;font-size:36px;width:62px;height:62px;flex:none;display:grid;place-items:center;border-radius:18px;background:linear-gradient(180deg,#f8dc8c,#c18a2a);box-shadow:0 6px 14px rgba(0,0,0,.35)}
.pp-hero b{display:block;font-size:20px;font-weight:800;color:#fff1c8}.pp-hero small{font-size:13px;opacity:.85}
.promo-week{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.promo-week>span{padding:7px;border-radius:6px;background:rgba(128,128,128,.12);font-size:12px}
.pp-records{margin-top:16px}.pp-records>summary{cursor:pointer;font-weight:700}
.fund-record-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0}.fund-record-tabs button{font-size:12px;min-height:38px;width:100%;margin:0;padding:7px 3px;text-align:center}.fund-record-tabs .active{background:#c99225;color:#fff}.fund-record-list{max-height:320px;overflow:auto}.fund-record-list>div>small{display:block;margin:10px 0 4px;opacity:.7}.fund-record-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(128,128,128,.15);font-size:13px}.fund-record-row>span{min-width:0;overflow-wrap:anywhere}.fund-record-row small{display:block;font-size:11px;opacity:.7}.fund-record-row>b{white-space:nowrap}
.record-groups{display:flex;gap:10px}.record-groups>button{flex:1;min-height:36px;padding:6px 8px}.order-card>summary.order-head{cursor:pointer;list-style:none;min-height:58px}.order-card>summary::-webkit-details-marker{display:none}.record-detail{padding-top:12px;min-width:0}.record-copy-list{display:grid;gap:8px;margin-bottom:14px}.record-copy-list>div{display:grid;grid-template-columns:80px minmax(0,1fr) 48px;gap:6px;align-items:center;font-size:12px}.record-copy-list b{overflow-wrap:anywhere;font-weight:600}.record-copy-list button{padding:8px 4px;border:1px solid #d6ad59;border-radius:7px;background:transparent;color:inherit;min-height:36px}.record-resume{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;padding:8px 18px;margin-top:12px;min-height:38px;color:#ff2446;font-weight:800}
.pp-detail{padding:14px;border-radius:18px;border:1px solid rgba(212,160,23,.35);background:linear-gradient(160deg,#141633,#0a0c22);color:#eef1ff;font-size:13px;line-height:1.65}
.pp-detail .vip-rules{background:transparent!important;color:inherit!important;padding:0!important;border:0!important}
.pp-detail .vip-rules p{color:inherit!important}
.pp-detail .vip-rules b{color:#e9c47a!important;display:block;margin-top:6px}
.pp-detail .bd-box{margin:10px 0}
.pl-go{width:100%;margin-top:10px;padding:12px;border:0;border-radius:12px;font-size:15px;font-weight:800;color:#3a2604;background:linear-gradient(180deg,#f8dc8c,#d29b35);box-shadow:0 6px 14px rgba(160,110,20,.3)}
.pl-go2{background:linear-gradient(180deg,#ffb48a,#d4380d);color:#fff}
.pl-go:disabled{opacity:.5}
html[data-theme="light"] .pp-back{background:#fff;color:#a8650a}
html[data-theme="light"] .pp-head b{background:linear-gradient(180deg,#c8891e,#8a5a0b);-webkit-background-clip:text;background-clip:text}
html[data-theme="light"] .pp-card,html[data-theme="light"] .pp-hero{box-shadow:0 6px 16px rgba(15,23,42,.16)}
html[data-theme="light"] .pp-detail{background:#fff;color:#2a1d05;box-shadow:0 4px 14px rgba(15,23,42,.08)}
html[data-theme="light"] .pp-detail .vip-rules b{color:#a8650a!important}
@media (max-width:340px){.pp-card{min-height:136px;padding:12px 10px}.pp-card i{width:44px;height:44px;font-size:26px}.pp-card b{font-size:15px}}
@media (prefers-reduced-motion:reduce){.pp-card:after{animation:none}}
.hw-card{container-type:inline-size}@container (max-width:330px){.hw-stage{right:-5%}.hw-copy{left:12px;max-width:58%}.hw-copy h2{font-size:16px}.hw-tags{gap:4px}.hw-tags span{font-size:11px;padding:2px 6px}.hw-copy p{font-size:11px}}
.hw-copy h2{margin-bottom:12px;font-size:clamp(17px,5.1vw,21px)}.hw-tags{margin-bottom:0}.hw-tags span{font-size:13px;padding:4px 10px}
.qp-hcard>.qp-hcard-games:not(.sl3){grid-template-columns:repeat(9,minmax(0,1fr));gap:0}.qp-hcard>.qp-hcard-games:not(.sl3) img{width:32px;height:32px;border-radius:9px}.qp-hcard>.qp-hcard-games:not(.sl3) span{font-size:8.5px;letter-spacing:-.2px}
.sls.emo{display:grid;place-items:center;width:100%;height:100%;border-radius:12px;background:radial-gradient(circle at 50% 35%,rgba(255,240,200,.25),rgba(0,0,0,0) 70%)}
.sls.emo b{font-size:clamp(26px,9vw,40px);line-height:1;filter:drop-shadow(0 3px 4px rgba(0,0,0,.45))}
.sls.emo.e-w{background:radial-gradient(circle,rgba(255,215,90,.45),rgba(160,90,10,.15) 70%);box-shadow:inset 0 0 0 2px rgba(255,210,110,.7)}
.sls.emo.e-s{background:radial-gradient(circle,rgba(255,80,80,.4),rgba(120,0,0,.15) 70%);box-shadow:inset 0 0 0 2px rgba(255,130,130,.6)}



.public-order-no,.record-alert{color:#ff2446;font-weight:800;overflow-wrap:anywhere}.record-period{font-size:12px;opacity:.8;margin-top:8px}.history-more{display:block;margin:10px auto;min-height:38px}.record-copy-button{font-size:11px;min-height:28px;border:1px solid #d6ad59;border-radius:6px;background:transparent;color:inherit;margin-top:4px}.fund-record-row .fund-credit{color:#168b62}.fund-record-row .fund-debit{color:#ef2443}.fund-record-row .public-order-no{opacity:1}

.order-card{max-width:100%;overflow:hidden}
.order-head{min-width:0}
.order-head div{min-width:0;overflow:hidden}
.order-head div b,.order-head div small{white-space:normal;word-break:break-all;overflow-wrap:anywhere}
.order-pick-row span{word-break:break-all;overflow-wrap:anywhere;max-width:60%}

.order-status{justify-self:end;white-space:nowrap;width:auto!important;max-width:none}

.order-head>img{position:static!important;width:36px;height:36px;border-radius:8px;object-fit:cover;display:block}

.profile-rows{padding:8px 0}
.profile-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0;font-size:14px}
.profile-row b{font-weight:600;margin:0 8px}
.profile-row button{padding:4px 14px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;font-size:13px;min-width:60px}
.sec-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.sec-btns button{padding:8px 16px;border:0;border-radius:8px;background:#16a34a;color:#fff;font-size:14px;min-width:88px;max-width:120px;text-align:center}
.order-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:8px;align-items:center}
.order-head>img{width:36px;height:36px;border-radius:8px;object-fit:cover;position:static!important}
.order-status{justify-self:end;white-space:nowrap;width:auto!important}
.record-groups>button{flex:1;min-height:36px;padding:6px 4px;font-size:13px}

@keyframes winUp{0%{transform:translateY(0)}100%{transform:translateY(-50%)}}
.win-card{margin:12px 0 0;border-radius:16px;overflow:hidden;background:url(/assets/home/qp.webp?v=2) center/cover;position:relative;height:200px}
.win-card::before{content:"";position:absolute;inset:0;background:rgba(255,248,240,.94)}
.win-card{color:#172033}
html[data-theme="dark"] .win-card::before{background:rgba(16,26,48,.96)}
html[data-theme="dark"] .win-card{color:#f1f5f9}
html[data-theme="dark"] .win-title{color:#fda4af}
.win-title{position:relative;padding:10px 14px;font-size:15px;font-weight:700;color:#c8102e}
.win-cols{position:relative;display:flex;height:150px}
.win-col{flex:1;overflow:hidden;padding:4px 8px}
.win-scroll{animation:winUp 6s linear infinite}
@keyframes winUp{0%{transform:translateY(0)}100%{transform:translateY(-50%)}}
.win-col div div{padding:4px 2px;font-size:12px;line-height:1.35}
.record-resume-wrap{text-align:center;margin-top:10px}

.record-totals{font-size:15px;font-weight:700;margin:6px 0;display:flex;gap:16px;flex-wrap:wrap}

.my-grid>div[data-account-key]{cursor:pointer}

.my-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.my-grid>div{height:80px!important;min-height:80px!important;max-height:80px!important;overflow:hidden!important;contain:layout;min-width:0}
.my-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.my-page>.my-card,.my-page>.my-stats,.my-page>[data-my-summary-status]{grid-column:1/-1}
.my-page>.account-section{min-width:0;margin:0;padding:8px 10px;border-color:var(--ux-line);background:var(--ux-panel);color:var(--ux-text)}
.my-page>.my-bets-inline-section{grid-column:auto;box-sizing:border-box;min-height:58px}
.my-page>.account-section:not([open]):not(.is-open){height:58px;min-height:58px;max-height:58px;box-sizing:border-box}
.my-page>.my-bets-inline-section .my-bets-ico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px}
.my-page>.my-bets-inline-section .my-bets-ico svg{display:block;width:18px;height:18px}
.my-page>.my-bets-inline-section .records-embedded{display:block;height:auto;min-height:0;overflow:visible;padding:10px 0 0}
.my-page>.my-bets-inline-section .records-embedded .page-filters{padding-top:0}
.my-page>.my-bets-inline-section .records-embedded .page-content{max-height:min(60dvh,620px);min-height:0;overflow-y:auto}
.my-page>.my-bets-inline-section .records-embedded .record-tabs{flex-wrap:wrap}
.my-page>.account-section>summary{min-height:36px;gap:5px;font-size:13px;line-height:1.5;list-style:none}
.my-page>.account-section>summary::-webkit-details-marker{display:none}
.my-page>.account-section>summary::after{content:"";width:7px;height:7px;flex:none;margin-left:auto;border-right:2px solid #d32f2f;border-bottom:2px solid #d32f2f;transform:rotate(45deg);transition:transform .18s ease}
.my-page>.account-section[open]>summary::after{transform:rotate(225deg)}
.records-page .order-card>summary.order-head>span[aria-hidden]{color:#d32f2f;font-size:16px;transition:transform .18s ease}
.records-page .order-card[open]>summary.order-head>span[aria-hidden]{transform:rotate(180deg)}
.my-page>.account-section[open]{grid-column:1/-1}
.my-page>.account-section:not([open]){min-height:58px;height:auto;overflow:visible}
.sheet-mask{position:fixed;inset:0;z-index:1000}
.sheet-box{height:80vh;height:80dvh;max-height:80dvh;padding-bottom:calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}
.sheet-head{flex:none}.sheet-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.sheet-body:has(>.report-view),.sheet-body:has(>[data-history-view]){overflow:hidden;display:flex;flex-direction:column}
.sheet-body>[data-history-view],.report-view{display:flex;flex:1;flex-direction:column;min-height:0}
.sheet-body .fund-record-tabs,.sheet-body .record-totals,.report-view>.rp-tabs,.history-footer{flex:none}
.sheet-body .fund-record-list,.report-scroll{flex:1;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}
.record-totals{min-height:44px;align-items:center;font-variant-numeric:tabular-nums}.rp-sum>div{min-height:60px}.my-grid strong{font-variant-numeric:tabular-nums}
@media(max-height:650px){.sheet-box{height:88dvh;max-height:88dvh}.sheet-body .fund-record-tabs{gap:3px;margin:4px 0}.sheet-body .fund-record-tabs button{min-height:30px;padding:3px}}


.rp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 16px;margin-top:10px;padding:4px 0}
.rp-grid span{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:4px 0;border-bottom:1px solid #f5f5f5}
.rp-grid i{font-style:normal;color:#888;font-size:11px}

.live-bjl{padding:12px;background:#0a1628;min-height:100vh;color:#fff}
.lb-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.lb-top b{font-size:18px}
.lb-timer{margin-left:auto;background:#c0392b;padding:4px 12px;border-radius:12px;font-weight:600}
.lb-table{display:flex;gap:20px;justify-content:center;margin:20px 0;padding:20px;background:rgba(255,255,255,.05);border-radius:12px}
.lb-hand{text-align:center}
.lb-hand small{display:block;margin-bottom:8px;color:#aaa}
.lb-result{text-align:center;font-size:20px;font-weight:600;margin:16px 0;color:#f1c40f}
.lb-bet{display:flex;gap:10px;justify-content:center;margin:16px 0}
.lb-bet button{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}
.lb-bet button:nth-child(1){background:#3498db;color:#fff}
.lb-bet button:nth-child(2){background:#e74c3c;color:#fff}
.lb-bet button:nth-child(3){background:#27ae60;color:#fff}
.lb-history{text-align:center;color:#888;font-size:13px;margin-top:20px}

.lb-phase{background:#27ae60;padding:2px 8px;border-radius:8px;font-size:12px}
.lb-dealer{text-align:center;color:#f1c40f;margin:8px 0;font-size:14px}
.lb-wait{text-align:center;color:#888;padding:40px}
.lb-cards{display:flex;gap:4px}
.lb-card{animation:lbDeal 0.5s ease-out forwards;opacity:0;transform:translateY(-20px)}
@keyframes lbDeal{to{opacity:1;transform:none}}
.lb-h{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;border-radius:4px;margin:2px;font-size:12px;font-weight:600}
.lb-h.b{background:#e74c3c;color:#fff}
.lb-h.p{background:#3498db;color:#fff}
.lb-h.t{background:#27ae60;color:#fff}

.lb-card{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:36px;height:50px;background:#fff;border-radius:4px;margin:2px;animation:lbDeal 0.4s ease-out forwards;opacity:0;transform:translateY(-30px) rotate(-10deg)}
.lb-card b{font-size:16px;color:#111}
.lb-card i{font-style:normal;font-size:14px;color:#111}
.lb-card.red b,.lb-card.red i{color:#dc2626}
@keyframes lbDeal{to{opacity:1;transform:none}}

.visual-game[data-home-card="cqfarm"] .visual-copy{text-shadow:0 1px 3px rgba(0,0,0,.8)}

.auto-bet-open{border:none !important;background:transparent !important;color:#e74c3c !important;font-weight:600 !important;padding:0 4px !important;height:auto !important}

.announce-icon{position:relative;font-size:16px}






.announce-icon{transform:scaleX(-1)}
.announce-icon i{transform:scaleX(-1)}

.announce-icon span{display:inline-block;color:#dc2626;font-weight:700;animation:wavePulse 1s infinite}
.announce-icon span:first-of-type{font-size:10px;animation-delay:0s}
.announce-icon span:last-of-type{font-size:14px;animation-delay:.3s}
@keyframes wavePulse{0%,100%{opacity:.3}50%{opacity:1}}


/* Receipt controls, payout bindings and conversations share the current theme. */
.pay-private-qr .pay-qr-reveal{order:0;margin:0 0 8px;font-size:13px}
.pay-private-qr .pay-qr-cover{font-size:84px;line-height:1;color:var(--ux-muted);opacity:.22;filter:blur(5px);user-select:none}
[data-payee-content]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.pe-card{min-width:0;padding:14px;border:1px solid var(--ux-line);border-radius:12px;background:var(--ux-panel);color:var(--ux-text);display:flex;flex-direction:column;gap:10px}
.pe-card h3{font-size:15px;line-height:1.4;margin:0;padding-bottom:9px;border-bottom:1px solid var(--ux-line)}
.pe-card p{margin:0;line-height:1.65}.pe-card .pe-account{overflow-wrap:anywhere;font-size:13px;padding:10px;background:var(--ux-field);border-radius:8px}
.pe-card label{font-size:12px;display:grid;gap:6px}.pe-card input{background:var(--ux-panel)!important;color:var(--ux-text)!important;border-color:var(--ux-line)!important;margin:0!important;min-height:42px;font-size:16px}
.pe-card .account-button{width:100%;min-height:40px;margin-top:auto}.pe-bound{color:#16a34a;font-size:12px;font-weight:700}.pe-warning{color:#e11d48}.pe-success{color:#16a34a}
.support-mask{top:var(--auth-vv-top,0px)!important;bottom:auto!important;height:var(--cs-vv-height,var(--auth-vv-height,100dvh))!important;overscroll-behavior:none;align-items:flex-end}
.support-sheet{display:flex!important;flex-direction:column;grid-template-rows:none!important;height:min(620px,calc(var(--cs-vv-height,var(--auth-vv-height,100dvh)) - 8px));max-height:100%;min-height:0;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom);color:var(--ux-text);background:var(--ux-panel)!important}
.support-head{flex:none;min-height:54px;gap:6px;padding:8px 10px}.cs-head-person{display:flex;align-items:center;gap:7px;min-width:0}.cs-head-person b{font-size:12px;overflow-wrap:anywhere}.support-head>span{flex:none;gap:4px}.support-head .support-act{padding:0 7px;font-size:11px;white-space:nowrap}.support-head button{height:30px;flex-shrink:0}
.support-messages{flex:1;min-height:0;overscroll-behavior:contain;overflow-y:auto;padding:10px;gap:12px}.cs-quick{flex:none;max-height:62px;overflow:auto;padding:6px 10px}.cs-hint{flex:none;max-height:50px;overflow:auto;padding:4px 10px;font-size:11px;line-height:1.5}
.support-form{flex:none;min-height:54px;display:flex;gap:8px;padding:8px 10px;align-items:center}.support-form input{min-width:0;flex:1;font-size:16px!important;min-height:38px}.support-form button{flex:none;min-height:38px}
.cs-avatar{position:relative;display:inline-flex;flex:none;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:var(--ux-panel-2,#e9edf5);overflow:visible}.cs-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 22%;border-radius:50%;display:block}.cs-avatar i{position:absolute;right:-3px;bottom:-3px;font-size:12px;font-style:normal;line-height:1}.cs-avatar.customer{font-size:18px}
.cs-message-row{display:flex;gap:7px;align-items:flex-start;max-width:92%;align-self:flex-start;min-width:0}.cs-message-row.user{flex-direction:row-reverse;align-self:flex-end}.cs-message-content{min-width:0;display:flex;flex-direction:column;gap:4px}.cs-message-row.user .cs-message-content{align-items:flex-end}.cs-message-name{font-size:10px;color:var(--ux-muted);line-height:1.3}.cs-message-row .support-msg{max-width:100%;font-size:13px;overflow-wrap:anywhere;white-space:normal}.support-msg time{display:block;font-size:10px;opacity:.7;margin-top:4px}.cs-handoff-link{border:0;padding:0;background:none;color:inherit;text-decoration:underline;font:inherit;cursor:pointer}
.cs-fab .cs-avatar{width:26px;height:26px}.cs-fab>.cs-avatar{padding:0;margin:0}.support-msg.system{font-size:11px;color:var(--ux-muted)}
@media(max-height:480px){.support-sheet{height:100%;border-radius:0}.cs-quick,.cs-hint{display:none}.support-head{min-height:46px}}

.cs-avatar-portrait{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:50%}.cs-avatar .cs-avatar-portrait img{position:absolute;width:427%;height:auto;max-width:none;left:-267%;top:-13%;border-radius:0;object-fit:fill}

/* Shared wide-screen layout; existing game actions and payment sheet sizing stay scoped. */
@media(min-width:700px){
 :root{--navigation-height:58px}
 .app-shell{width:min(calc(100% - 32px),1180px);padding-bottom:calc(var(--navigation-height) + env(safe-area-inset-bottom))}
 .bottom-nav{width:min(calc(100% - 32px),1180px);height:calc(var(--navigation-height) + env(safe-area-inset-bottom))}
 .bottom-nav button b{font-size:12px}
 .home-lobby,.page-section{padding-left:20px;padding-right:20px}
 .visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--home-card-gap)}
 .visual-game.featured{grid-column:span 2}
 .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .play-page{max-width:960px;margin:0 auto}
 .play-bottom{width:min(calc(100% - 48px),920px)!important;bottom:calc(var(--navigation-height) + env(safe-area-inset-bottom))!important}
 .my-page{max-width:960px;margin:0 auto;gap:12px}
 .my-page>.account-section>summary{font-size:14px}
 .draw-controls{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto}
}
@media(min-width:1100px){.visual-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(orientation:landscape) and (max-height:500px){
 .auth-sheet{max-height:calc(var(--auth-vv-height,100dvh) - 16px)!important}
 .support-sheet{max-height:calc(var(--cs-vv-height,100dvh) - 8px)!important}
 .sheet-box{height:90dvh;max-height:90dvh}
 :root{--navigation-height:46px}
 .bottom-nav{height:calc(var(--navigation-height) + env(safe-area-inset-bottom))}
 .play-bottom{bottom:calc(var(--navigation-height) + env(safe-area-inset-bottom))!important}
}

.cs-history-mask{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;background:#0008;padding:16px}.cs-history-sheet{width:min(100%,560px);max-height:calc(var(--cs-vv-height,100dvh) - 32px);overflow:auto;border-radius:14px;padding:14px;background:var(--ux-panel);color:var(--ux-text)}.cs-history-sheet header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-14px;background:var(--ux-panel);padding:8px 0}.cs-history-sheet article{padding:10px 0;border-bottom:1px solid var(--ux-line);white-space:pre-wrap;overflow-wrap:anywhere}.cs-history-sheet small{display:block;color:var(--ux-muted);margin-bottom:5px}.cs-history-sheet button{min-height:36px;border:1px solid var(--ux-line);border-radius:7px;color:var(--ux-text);background:var(--ux-field)}
.by-stage>.by-bgl{position:absolute;inset:0;background:center/cover no-repeat;pointer-events:none}
.by-grid{grid-template-columns:1fr 1fr}
.qt-deal .bt-cards{gap:3px}.qt-deal .mj-t{--tw:24px}.qt-tile.deal{display:inline-flex;animation:qpdeal .45s var(--t) both}
.qt-deal .bt-hand small{min-width:2.6em}
.sb-dice .qdie.yxx{display:grid;place-items:center;font-size:20px;background:#fffaf0}
.yxx-z{display:block;font-size:20px;line-height:1.1}
.sd-coins{position:absolute;z-index:1;bottom:28px;display:flex;gap:8px}.sd-coin{width:24px;height:24px;border-radius:50%;box-shadow:inset 0 -2px 0 rgba(0,0,0,.25),0 2px 4px rgba(0,0,0,.35);animation:sbroll .5s var(--t) both}
.sd-coin.red{background:radial-gradient(circle at 35% 30%,#ff8a8a,#c81e1e)}.sd-coin.white{background:radial-gradient(circle at 35% 30%,#fff,#d6d3d1)}
.ft-stage{display:flex;align-items:center;justify-content:center}.ft-pile{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:4px;width:170px;justify-content:center}
.ft-pile i{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#a8a29e)}.ft-pile.open i{animation:ftfade .4s var(--d) both}.ft-pile.open i:not(.keep){animation:ftgone .5s calc(var(--d) + .9s) both}
.ft-pile i.keep{background:radial-gradient(circle at 35% 30%,#fff3b0,#e0a800);box-shadow:0 0 6px #ffd34d}
.ft-cup{position:absolute;z-index:2;width:120px;height:70px;border-radius:50% 50% 12px 12px;background:linear-gradient(#b45309,#78350f);top:10px}
@keyframes ftfade{from{opacity:0;transform:scale(.4)}to{opacity:1}}@keyframes ftgone{to{opacity:.12;transform:scale(.7)}}
/* 闯关 */
.cg-hcard{margin-bottom:var(--home-card-gap,18px)}
.cg-stage{position:relative;margin:10px 12px 0;border-radius:16px;min-height:230px;overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,#1e3a8a,#0b1024 70%);box-shadow:inset 0 0 0 2px rgba(255,214,120,.45),0 6px 16px rgba(0,0,0,.25);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
:root[data-theme="light"] .cg-stage{background:radial-gradient(120% 90% at 50% 0%,#60a5fa,#1e3a8a 75%)}
.cg-big{font-size:44px;font-weight:900;letter-spacing:.5px;text-shadow:0 3px 10px rgba(0,0,0,.45)}.cg-big.w{color:#4ade80}.cg-big.l{color:#f87171}
.cg-stage small{font-size:13px;opacity:.85}
.cg-plane{position:absolute;left:8%;bottom:18px;font-size:36px;transition:none;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}
.cg-mines{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:12px;min-height:0}
.cg-cell{aspect-ratio:1;border-radius:10px;border:0;background:linear-gradient(160deg,#334155,#1e293b);color:#fff;font-size:22px;font-weight:800;box-shadow:inset 0 -3px 0 rgba(0,0,0,.35)}
.cg-cell.on{background:linear-gradient(160deg,#f59e0b,#b45309)}.cg-cell.mine{background:linear-gradient(160deg,#ef4444,#7f1d1d)}.cg-cell.safe.on{background:linear-gradient(160deg,#22c55e,#166534)}.cg-cell:disabled{opacity:1}
.cg-plinko{padding:12px 8px 8px;justify-content:flex-start}
.cg-pegs{position:relative;width:100%;display:flex;flex-direction:column;gap:9px;align-items:center}
.cg-prow{display:flex;gap:calc(100% / 18)}.cg-prow i{width:6px;height:6px;border-radius:50%;background:#e2e8f0;box-shadow:0 0 4px rgba(255,255,255,.6)}
.cg-ball{position:absolute;left:calc(50% - 7px);top:-8px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7c2,#f59e0b);box-shadow:0 0 8px #fbbf24;transition:transform .14s ease-in}
.cg-pegs{height:200px}
.cg-bins{display:grid;grid-template-columns:repeat(13,1fr);gap:2px;width:100%}.cg-bins span{font-size:9px;font-weight:800;text-align:center;padding:4px 0;border-radius:5px;background:#f59e0b;color:#3b2306}
.cg-bins span.hi{background:#ef4444;color:#fff}.cg-bins span.lo{background:#64748b;color:#fff}.cg-bins span.hit{outline:2px solid #fff;transform:scale(1.12)}
.cg-bar{position:relative;width:82%;height:12px;border-radius:6px;background:#ef4444;overflow:visible}.cg-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:6px;background:#22c55e}
.cg-bar em{position:absolute;top:-6px;width:4px;height:24px;margin-left:-2px;background:#fff;border-radius:2px;box-shadow:0 0 6px #fff}
.cg-wheel{min-height:300px}.cg-wh{position:relative;width:250px;height:250px;border-radius:50%;box-shadow:0 0 0 6px #fbbf24,0 8px 20px rgba(0,0,0,.45)}
.cg-wh b{position:absolute;left:50%;top:0;height:50%;width:0;transform-origin:50% 100%}.cg-wh b span{position:absolute;top:8px;left:-10px;width:20px;text-align:center;font-size:10px;font-weight:900;color:#fff;text-shadow:0 1px 2px #000}
.cg-ptr{position:absolute;top:14px;z-index:2;color:#fde047;font-size:24px;text-shadow:0 2px 4px #000}
.cg-wres{position:absolute;font-style:normal;font-size:30px;font-weight:900;background:rgba(0,0,0,.55);padding:6px 14px;border-radius:12px}
.cg-msg{min-height:22px;text-align:center;font-weight:800;margin:8px 0 2px;color:var(--qp-title,#fde68a)}
:root[data-theme="light"] .cg-msg{color:#7c2d12}
.cg-par{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 12px;font-size:13px}.cg-par span{margin-right:auto;opacity:.85}
.cg-par button{border:1px solid rgba(250,204,21,.45);background:rgba(0,0,0,.25);color:inherit;border-radius:9px;padding:6px 9px;font-weight:700;font-size:13px}.cg-par button.on{background:#f59e0b;color:#3b2306}
:root[data-theme="light"] .cg-par button{background:#fff7ed}
.cg-par input[type=range]{flex:1;min-width:120px}.cg-par b{min-width:2em;text-align:right}
.cg-go{display:flex;gap:10px;align-items:center;margin:10px 12px 90px}.cg-go .sl-betbox{flex:1}
.cg-start{flex:1;min-height:48px;border:0;border-radius:14px;font-size:18px;font-weight:900;color:#3b2306;background:linear-gradient(#fde68a,#f59e0b);box-shadow:0 4px 0 #b45309}.cg-start.busy{opacity:.7}
@media (max-width:340px){.cg-big{font-size:36px}.cg-wh{width:210px;height:210px}.cg-par button{padding:5px 7px}}
.sls.orb b{display:grid;place-items:center;width:78%;aspect-ratio:1;margin:auto;border-radius:50%;font-size:18px;font-weight:900;color:#fff;background:radial-gradient(circle at 35% 30%,#fde68a,#f59e0b 45%,#b45309);box-shadow:0 0 10px rgba(250,204,21,.7),inset 0 -3px 6px rgba(0,0,0,.3);text-shadow:0 1px 2px rgba(0,0,0,.5)}
.sl-pt .sls.orb b{font-size:11px}
/* 十三水 */
.sss-felt{height:360px}
.sss-felt .dz-seat{top:96px;width:104px}.sss-felt .dz-seat.t{top:8px;left:50%;transform:translateX(-50%)}
.sss-felt .dz-mid{top:178px}
.sss-st{font-size:11px;padding:1px 8px;border-radius:10px;background:rgba(0,0,0,.35);color:#fde68a}.sss-st.ok{color:#86efac}
.sss-mini{display:flex;flex-direction:column;align-items:center;gap:2px}.sss-mini .dz-row.xs{padding-left:16px}
.sss-net{font-size:12px;font-weight:800;padding:1px 8px;border-radius:10px;background:rgba(0,0,0,.4)}.sss-net.up{color:#4ade80}.sss-net.down{color:#f87171}
.sss-lanes{display:flex;flex-direction:column;gap:6px;margin:8px 8px 0}
.sss-lane{display:flex;align-items:center;gap:8px;min-height:62px;padding:4px 8px;border-radius:14px;border:1px dashed rgba(250,204,21,.5);background:rgba(15,23,42,.55);color:#fde68a;text-align:left}
.sss-lane[disabled]{border-style:solid;opacity:1}
.sss-ln{display:flex;flex-direction:column;width:52px;flex:none}.sss-ln b{font-size:14px}.sss-ln small{font-size:11px;opacity:.85}
.sss-slot{display:inline-block;width:34px;height:48px;border-radius:6px;border:1px dashed rgba(255,255,255,.25);margin-left:4px}
.sss-lane .dz-row.sm{display:flex;align-items:center}
html[data-theme=light] .sss-lane{background:rgba(255,255,255,.85);color:#92400e;border-color:rgba(180,83,9,.45)}
html[data-theme=light] .sss-slot{border-color:rgba(0,0,0,.2)}
.dz-why{color:#fca5a5;font-size:12px}
/* 闯关新增 */
.cg-par.wrap{flex-wrap:wrap;justify-content:center}
.cg-pt{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin:6px 12px 0}.cg-pt span{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:3px 6px;border-radius:8px;background:rgba(15,23,42,.5);font-size:11px}.cg-pt em{font-style:normal;opacity:.75}.cg-pt b{color:#facc15}
html[data-theme=light] .cg-pt span{background:rgba(0,0,0,.06)}html[data-theme=light] .cg-pt b{color:#b45309}
.cg-keno{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;padding:10px}.cg-kn{aspect-ratio:1;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:rgba(15,23,42,.6);color:#cbd5e1;font-weight:700;font-size:13px}
.cg-kn.on{background:#1d4ed8;color:#fff}.cg-kn.dr{box-shadow:inset 0 0 0 2px #facc15}.cg-kn.hit{background:#16a34a;color:#fff}
.cg-tower{display:flex;flex-direction:column;gap:5px;padding:10px}.cg-fl{display:flex;align-items:center;gap:6px}.cg-fl small{width:84px;font-size:11px;opacity:.8}.cg-door{flex:1;height:34px;border-radius:8px;border:1px solid rgba(250,204,21,.35);background:#3b2a12;color:#fde68a}.cg-door.on{background:#92400e}.cg-door.trap{background:#7f1d1d}.cg-door.safe{background:#166534}
.cg-coin{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:14px}.cg-cn{width:58px;height:58px;border-radius:50%;border:3px solid #b45309;background:radial-gradient(circle at 35% 30%,#fde68a,#f59e0b);color:#78350f;display:flex;flex-direction:column;align-items:center;justify-content:center}.cg-cn b{font-size:18px}.cg-cn small{font-size:9px}.cg-cn.ok{box-shadow:0 0 0 3px #22c55e}.cg-cn.bad{filter:grayscale(.7);box-shadow:0 0 0 3px #ef4444}
.cg-cases{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:12px}.cg-box{aspect-ratio:1;border-radius:12px;border:2px solid rgba(250,204,21,.35);background:linear-gradient(#7c2d12,#431407);font-size:24px;color:#fde68a}.cg-box.on{border-color:#facc15;box-shadow:0 0 12px rgba(250,204,21,.6)}.cg-box.open span{font-size:13px;font-weight:800}
.cg-road{position:relative;padding:16px 10px 8px;text-align:center}.cg-lanes{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:2px;height:90px}.cg-lanes i{background:repeating-linear-gradient(#334155 0 10px,#475569 10px 20px);border-radius:3px;display:flex;align-items:center;justify-content:center;font-style:normal}.cg-lanes i.ok{background:#166534}.cg-lanes i.car{background:#7f1d1d}
.cg-chick{position:absolute;top:44px;left:calc(10px + (100% - 20px) * var(--x) / var(--n,20));font-size:28px;transition:left .6s}.cg-road small{display:block;margin-top:8px}
.cg-cards{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px}.cg-crow{display:flex;gap:6px}.cg-crow .dz-c{width:58px;height:80px}.dz-c.back .pk-back{width:100%;height:100%}
.cg-rou{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px}.cg-rball{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;font-size:30px;background:#334155;color:#fff;border:4px solid #facc15}.cg-rball.r{background:#b91c1c}.cg-rball.b{background:#111827}.cg-rball.g{background:#15803d}
.cg-rgrid{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;width:100%}.cg-rgrid button{height:28px;border-radius:5px;border:0;color:#fff;font-size:12px;font-weight:700}.cg-rgrid .r{background:#b91c1c}.cg-rgrid .b{background:#1f2937}.cg-rgrid .g{background:#15803d}.cg-rgrid .on{outline:2px solid #facc15}.cg-rgrid .hit{box-shadow:0 0 10px #facc15;transform:scale(1.1)}
.cg-gems{display:flex;gap:8px;justify-content:center;padding:22px 8px}.cg-gem{width:52px;height:52px;display:grid;place-items:center;font-size:30px;color:var(--c);border-radius:14px;background:rgba(15,23,42,.6);text-shadow:0 0 10px var(--c)}
.cg-scr{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:12px 40px}.cg-scr span{aspect-ratio:1.4;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#94a3b8,#cbd5e1);color:#334155;font-weight:800}.cg-scr span.o{background:#fef3c7;color:#92400e}.cg-scr span.hit{background:#facc15;color:#7c2d12;box-shadow:0 0 10px #facc15}
.cg-dart{display:flex;justify-content:center;padding:12px}.cg-board{position:relative;width:200px;height:200px}.cg-board i{position:absolute;inset:calc(var(--i)*100%/var(--n)/2);border-radius:50%;background:hsl(calc(var(--i)*47),70%,40%);display:flex;justify-content:center;font-style:normal}.cg-board i em{font-style:normal;font-size:10px;color:#fff;margin-top:2px}.cg-board i.hit{box-shadow:0 0 0 3px #facc15}
.cg-dpin{position:absolute;left:50%;top:50%;transform:rotate(var(--a)) translateY(calc(var(--r)*-2)) rotate(calc(var(--a)*-1));font-size:22px;margin:-11px}
.cg-rps{display:flex;align-items:center;justify-content:center;gap:18px;padding:22px}.cg-rps span{display:flex;flex-direction:column;align-items:center}.cg-rps b{font-size:56px}.cg-rps em{font-style:normal;font-weight:900;color:#facc15}
.cg-bal{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;min-height:150px;justify-content:flex-end}.cg-bl{font-size:var(--s);line-height:1;transition:font-size .3s}
/* —— 真实开牌：牌靴发牌 → 逐张 3D 翻牌 → 末张咪牌 —— */
.bt-deal .pk.dl{animation:pkshoe .42s cubic-bezier(.2,.8,.3,1) var(--d) both}
.bt-deal .pk.dl .pk-in{animation:pkflip .38s ease-in-out var(--t) both}
.bt-deal .pk.dl .pk-face{transform:rotateY(180deg);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.bt-deal .pk.dl .pk-back{backface-visibility:hidden;-webkit-backface-visibility:hidden}
@keyframes pkshoe{from{transform:translate(var(--fx,60px),-150px) rotate(-70deg) scale(.55);opacity:0}15%{opacity:1}to{transform:none;opacity:1}}
@keyframes pkflip{0%{transform:rotateY(0)}50%{transform:translateY(-8px) rotateY(90deg) scale(1.1)}100%{transform:rotateY(180deg)}}
.bt-deal .pk.dl.sq .pk-in{animation:pksq .8s ease-in-out var(--t) both}
.bt-deal .pk.dl.sq .pk-face{transform:none;z-index:1;animation:pkpeel .8s cubic-bezier(.45,0,.3,1) var(--t) both}
.pk-curl{position:absolute;left:-2px;right:-2px;z-index:2;height:10px;border-radius:50%;background:linear-gradient(#fff,#cbd5e1);box-shadow:0 3px 5px rgba(0,0,0,.45);opacity:0;pointer-events:none;animation:pkcurl .8s cubic-bezier(.45,0,.3,1) var(--t) both}
@keyframes pksq{0%{transform:none}20%{transform:translateY(-6px) rotateX(28deg) scale(1.12)}85%{transform:translateY(-6px) rotateX(18deg) scale(1.12)}100%{transform:none}}
@keyframes pkpeel{0%,12%{clip-path:inset(100% 0 0 0)}55%{clip-path:inset(62% 0 0 0)}80%{clip-path:inset(30% 0 0 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes pkcurl{0%,10%{bottom:0;opacity:0}14%{opacity:1}55%{bottom:62%;opacity:1}80%{bottom:70%;opacity:1}96%{bottom:100%;opacity:1}100%{bottom:100%;opacity:0}}
/* 牌九/二八杠：先发牌背，再逐张翻开，第二张慢翻 */
.qt-tile{position:relative;display:inline-block;perspective:320px}
.qt-tile.dl{animation:pkshoe .4s ease-out var(--d) both}
.qt-in{position:relative;display:block;transform-style:preserve-3d;animation:pkflip .25s ease-in-out var(--t) both}
.qt-tile.slow .qt-in{animation-duration:.45s}
.qt-in .mj-t{display:block;backface-visibility:hidden;-webkit-backface-visibility:hidden;animation:none}
.qt-in .mj-t.face{position:absolute;inset:0;transform:rotateY(180deg)}
/* 鱼虾蟹骰面 */
.sb-dice .qdie.yxx{display:grid;place-items:center;padding:3px;background:linear-gradient(145deg,#fffdf5,#efe6cf)}
.sb-dice .qdie.yxx svg{width:100%;height:100%;display:block}
/* 番摊：揭盅 → 珠子归拢 → 四颗一组拨走 → 余数 */
.ft-cup.open{animation:sbshake .5s var(--t) both,ftlift .4s calc(var(--t) + .4s) forwards}
@keyframes ftlift{to{transform:translateY(-80px);opacity:0}}
.ft-pile.n2{display:flex;flex-wrap:wrap;gap:3px 5px;width:236px;justify-content:center;align-content:center;min-height:96px}
.ft-g{display:grid;grid-template-columns:repeat(2,6px);gap:1px;transition:none;animation:ftaway .35s ease-in var(--g) both}
.ft-g i{width:6px;height:6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#a8a29e);animation:ftsettle .7s ease-out var(--s) both}
.ft-g.keep{animation:ftkeep .5s ease-out var(--g) both}
.ft-g.keep i{background:radial-gradient(circle at 35% 30%,#fff3b0,#e0a800)}
@keyframes ftsettle{from{transform:translate(var(--x),var(--y))}to{transform:none}}
@keyframes ftaway{from{transform:none;opacity:1}to{transform:translate(-26px,30px) scale(.6);opacity:0}}
@keyframes ftkeep{from{transform:none}to{transform:scale(2.4);filter:drop-shadow(0 0 4px #ffd34d)}}
.ft-g.keep{margin:0 12px}
.ft-stick{position:absolute;z-index:2;left:8%;bottom:30px;width:78px;height:4px;border-radius:3px;background:linear-gradient(90deg,#7c2d12,#d97706);transform-origin:left center;opacity:0;animation:ftstick var(--c) linear var(--t) both}
@keyframes ftstick{0%{opacity:1;transform:translateX(0) rotate(-8deg)}100%{opacity:0;transform:translateX(150px) rotate(-8deg)}}
.qp-iss-ld{display:inline-block;color:transparent;background:linear-gradient(90deg,#94a3b8 0,#f8fafc 50%,#94a3b8 100%) 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:qpissld 1.4s linear infinite}
@keyframes qpissld{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.qp-iss-ld{animation:none;color:#94a3b8}}

.bt-deal .pk.dl,.bt-deal .pk.dl .pk-in,.qt-tile.dl,.qt-in{will-change:transform}

.pp-card[data-promo-open="agent"]{grid-column:1/-1;order:-1;min-height:96px}

.sum-right{display:inline-flex;align-items:center;gap:8px}.all-in-btn{height:26px;padding:0 12px;border:0;border-radius:13px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:12px;font-weight:900;white-space:nowrap;touch-action:manipulation}.all-in-btn:disabled{opacity:.45}
.zodiac-quick{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.zodiac-quick button{min-width:0;padding:4px 0}
.all-in-btn.on{background:#64748b}
.toast.bet-success.show{transition:none}
/* 充值/提现：输入框与信息行同宽，提交按钮上下留白，收款账户框加大 */
.pay-req{border:0!important;padding:0!important;margin:18px 0 0!important;background:none!important;box-shadow:none!important}
.pay-req input,.pay-req input[data-req-amount],.pay-input[data-usdt-amount],.pay-input[data-withdraw-amount],.pay-input[data-withdraw-pwd]{display:block;width:100%!important;max-width:none!important;box-sizing:border-box}
.pay-req input{min-height:48px;padding:0 14px;font-size:16px;border-radius:12px}
.pay-req label{margin-top:12px}
.pay-btn{margin-top:22px!important;margin-bottom:18px!important}
select.pay-input{min-height:56px!important;padding:0 18px!important;font-size:18px!important;border-radius:14px}
[data-usdt-block]{display:flex;flex-direction:column}
[data-usdt-block]>[data-pay-detail]{order:-1;margin-bottom:6px}
[data-usdt-block]>.pay-btn{margin-top:16px!important}
[data-usdt-block]>.pay-status:empty{display:none}
[data-usdt-block]>.pay-range{margin:6px 0 0}
/* 充值/提现视觉统一：左对齐标签、同宽同色输入框、统一复制按钮、方式按钮偶数列、去掉嵌套外框 */
.pay-sheet .pay-methods{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.pay-sheet .pay-methods>button{grid-column:span 2;min-height:40px!important;font-size:14px!important}
.pay-sheet .pay-methods:has(>button:first-child:nth-last-child(3n+2))>button:nth-last-child(-n+2),.pay-sheet .pay-methods:has(>button:first-child:nth-last-child(3n+1))>button:nth-last-child(-n+4){grid-column:span 3}
.pay-sheet .pay-methods:has(>button:first-child:last-child)>button:first-child:last-child:nth-last-child(1){grid-column:1/-1}
.pay-sheet .pay-methods button{min-width:0!important;font-size:14px}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-label{text-align:left}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-row{justify-content:space-between}
.pay-sheet .pay-label,.pay-sheet .pay-req label{display:block;margin:16px 0 8px;font-size:15px;font-weight:800;color:inherit;text-align:left}
.pay-sheet .pay-req>b{display:block;margin:4px 0 0;font-size:15px}
.pay-sheet .pay-account-grid .pay-manual{border:0;padding:0;background:none}
.pay-sheet .pay-row{padding-left:0!important;padding-right:0!important}
.pay-sheet .pay-row>span{font-size:15px}
.pay-sheet .pay-input,.pay-sheet .pay-req input{min-height:52px!important;border:1px solid #cfd8e3!important;background:#f5f7fa;border-radius:12px;font-size:18px;padding:0 14px;color:#172033}
html:not([data-theme="light"]) .pay-sheet .pay-input,html:not([data-theme="light"]) .pay-sheet .pay-req input{border-color:#3a4568!important;background:#111831;color:#fff}
.pay-sheet .pay-req input::placeholder{font-size:15px;font-weight:400}
.pay-sheet .pay-ci,.pay-sheet .pay-address-row .pay-ci,.pay-sheet .pay-u-address-row .pay-ci{width:auto!important;min-width:52px!important;min-height:30px;padding:4px 10px!important;font-size:13px!important;border-radius:8px}
.pay-sheet .pay-range{font-size:12px;margin-top:6px}
.pay-sheet .pay-btn{min-height:52px}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-body{max-width:none;text-align:left}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-input{text-align:left}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-row>div{text-align:right}
.pay-sheet[data-payment-kind="withdraw"][data-payment-mode="form"] .pay-copyv{justify-content:flex-end}
.pay-sheet .pay-row>span{flex:none}
.pay-sheet .pay-row>div{min-width:0}
.pay-sheet .pay-u-address-row .pay-addr,.pay-sheet .pay-address-row .pay-addr,.pay-sheet .pay-addr-full{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pay-sheet [data-pay-notice]:empty{display:none}
.pay-sheet .pay-methods+*{margin-top:12px}
/* 投注盘：第一行快捷金额，第二行 －[金额]＋ 与 自动 */
.play-bottom .bottom-stake-row:not(.bottom-stake-row2){grid-template-columns:auto minmax(0,1fr)!important}
.play-bottom .bottom-stake-presets{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible!important}
.play-bottom .bottom-stake-presets button{min-width:0!important;width:100%}
.play-bottom .bottom-stake-row2{display:grid!important;grid-template-columns:minmax(0,1fr) 56px!important;gap:6px!important;margin-top:6px}
.stake-stepper{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:5px;align-items:center;min-width:0}
.stake-stepper .bottom-stake-input,.stake-stepper .stake-input{margin:0;min-width:0}
.stake-step{height:30px;border-radius:7px;border:1px solid #27314d;background:#111831;color:#e6ebf5;font-size:16px;font-weight:800;line-height:1;padding:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.plan-bet-panel .stake-stepper{margin-top:8px}.plan-bet-panel .stake-step{height:40px;border-radius:10px}
.stake-step:disabled{opacity:.4}
html[data-theme="light"] .stake-step{background:#f5f7fa;border-color:#dce3eb;color:#1f2937}
.play-bottom .bottom-stake-row2 .stake-step,.play-bottom .bottom-stake-row2 .auto-bet-open,.play-bottom .bottom-stake-row2 .bottom-stake-input{height:34px!important;min-height:34px!important}
.play-bottom .bottom-stake-row2{align-items:center!important}
/* 自动投注：紧凑分段选择 */
.auto-bet-panel.compact{padding:8px 10px;margin-top:6px}
.auto-bet-line{display:flex;gap:6px;margin-top:6px;align-items:center}
.auto-seg{display:flex;border:1px solid #2a3553;border-radius:8px;overflow:hidden;flex:1 1 auto;min-width:0}
.auto-seg:last-child{flex:0 0 auto}
.auto-seg button{flex:1;min-width:0;height:28px;min-height:28px;padding:0 6px;border:0;border-right:1px solid #2a3553;background:transparent;color:inherit;font-size:12px;font-weight:700}
.auto-seg button:last-child{border-right:0}
.auto-seg button.active{background:linear-gradient(135deg,#7b5cff,#5b8cff);color:#fff}
.auto-bet-plan{margin-top:6px;font-size:11px;color:#8fa0bd;overflow-wrap:anywhere}
.auto-bet-msg{min-height:0;font-size:11px;color:#e5484d}
.auto-bet-msg:not(:empty){margin-top:4px}
.auto-bet-panel.compact .auto-bet-start{margin-top:6px;height:34px;min-height:34px}
html[data-theme="light"] .auto-seg,html[data-theme="light"] .auto-seg button{border-color:#dce3eb}
.play-bottom .auto-seg button{height:28px!important;min-height:28px!important;border-radius:0!important;box-shadow:none!important;margin:0!important;font-size:12px!important;background:transparent!important;color:inherit!important;border:0!important;border-right:1px solid #dce3eb!important}
.play-bottom .auto-seg button:last-child{border-right:0!important}
.play-bottom .auto-seg button.active{background:linear-gradient(135deg,#7b5cff,#5b8cff)!important;color:#fff!important}
/* 期数：内嵌滚轮，不弹出 */
.auto-wheel-box{position:relative;flex:1 1 auto;min-width:0;height:84px;border:1px solid #dce3eb;border-radius:8px;overflow:hidden}
.auto-wheel-box::before{content:"";position:absolute;left:4px;right:4px;top:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,rgba(123,92,255,.16),rgba(91,140,255,.16));pointer-events:none}
.auto-wheel{height:84px;overflow-y:auto;scroll-snap-type:y mandatory;padding:28px 0;box-sizing:border-box;scrollbar-width:none;overscroll-behavior:contain}
.auto-wheel::-webkit-scrollbar{display:none}
.auto-wheel-item{height:28px;line-height:28px;text-align:center;scroll-snap-align:center;font-size:12px;color:#8fa0bd;font-weight:700;cursor:pointer}
.auto-wheel-item.on{color:#5b4bff;font-size:14px}
.auto-bet-line{align-items:center}
.pg-auto .pg-play p{margin:4px 0;white-space:normal;overflow-wrap:anywhere}
/* 投注盘紧凑化：与原投注盘尺寸一致 */
.play-bottom .bottom-stake-presets{gap:4px!important}
.play-bottom .bottom-stake-presets button{height:26px!important;min-height:26px!important;padding:0 4px!important;font-size:12px!important;border-radius:6px!important}
.play-bottom .bottom-stake-row2{margin-top:4px!important;gap:4px!important;grid-template-columns:minmax(0,1fr) 46px!important}
.stake-stepper{grid-template-columns:28px minmax(0,1fr) 28px;gap:4px}
.play-bottom .bottom-stake-row2 .stake-step,.play-bottom .bottom-stake-row2 .auto-bet-open,.play-bottom .bottom-stake-row2 .bottom-stake-input{height:28px!important;min-height:28px!important;font-size:13px!important}
.play-bottom .bottom-stake-row2 .auto-bet-open{padding:0 4px!important;border-radius:6px!important}
.plan-bet-panel .stake-step{height:32px;border-radius:7px}
.auto-bet-panel.compact{padding:5px 8px!important;margin-top:4px!important;border-radius:8px}
.auto-bet-panel.compact .auto-bet-head{line-height:16px;white-space:nowrap;overflow:hidden}
.auto-bet-panel.compact .auto-bet-head b{font-size:11px}.auto-bet-panel.compact .auto-bet-head span{font-size:10px;overflow:hidden;text-overflow:ellipsis}
.auto-bet-panel.compact .auto-bet-line{margin-top:4px;gap:5px}
.auto-wheel-box{height:54px;border-radius:6px}
.auto-wheel-box::before{top:18px;height:18px;border-radius:4px}
.auto-wheel{height:54px;padding:18px 0}
.auto-wheel-item{height:18px;line-height:18px;font-size:11px}
.auto-wheel-item.on{font-size:12px}
.auto-seg{border-radius:6px}
.play-bottom .auto-seg button,.auto-seg button{height:22px!important;min-height:22px!important;padding:0 8px!important;font-size:11px!important}
.auto-bet-panel.compact .auto-bet-plan{margin-top:3px;font-size:10px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auto-bet-panel.compact .auto-bet-start{margin-top:4px!important;height:28px!important;min-height:28px!important;font-size:12px!important}
/* 自动投注：单行无框（滚轮 + 倍数 + 开始） */
.auto-bet-panel.compact.flat{border:0!important;background:transparent!important;padding:0!important;margin-top:4px!important;box-shadow:none!important}
.auto-row{display:grid;grid-template-columns:minmax(0,1fr) auto 64px;gap:6px;align-items:center}
.auto-bet-panel.flat .auto-wheel-box{height:54px;border:0;background:rgba(123,92,255,.06)}
.auto-bet-panel.flat .auto-seg{flex:none;white-space:nowrap}
.auto-bet-panel.flat .auto-seg button,.play-bottom .auto-bet-panel.flat .auto-seg button{white-space:nowrap!important;min-width:40px!important;padding:0 8px!important;height:26px!important;min-height:26px!important}
.auto-bet-panel.flat .auto-bet-start{margin:0!important;width:64px!important;height:30px!important;min-height:30px!important;padding:0!important;font-size:12px!important;border-radius:8px!important;white-space:nowrap}
.auto-bet-panel.flat .auto-bet-plan{margin-top:3px!important}
.bottom-action-row.single.with-allin{display:grid!important;grid-template-columns:minmax(0,1fr) 72px;gap:8px;align-items:center}
.bottom-action-row.with-allin .confirm-btn{width:100%!important;max-width:none!important;margin:0!important}
.bottom-action-row.with-allin .all-in-btn{height:44px!important;min-height:44px!important;width:72px!important;border-radius:12px!important;padding:0!important;font-size:14px!important;white-space:nowrap}
.auto-bet-panel.flat .auto-wheel-box,.auto-bet-panel.flat .auto-wheel{height:45px!important}
.auto-bet-panel.flat .auto-wheel{padding:15px 0!important}
.auto-bet-panel.flat .auto-wheel-box::before{top:15px!important;height:15px!important}
.auto-bet-panel.flat .auto-wheel-item{height:15px!important;line-height:15px!important;font-size:10px!important}
.auto-bet-panel.flat .auto-wheel-item.on{font-size:11px!important}
.auto-bet-panel.flat .auto-row{grid-template-columns:minmax(0,1fr) auto 56px!important}
.auto-bet-panel.flat .auto-seg button,.play-bottom .auto-bet-panel.flat .auto-seg button{min-width:34px!important;padding:0 6px!important;height:24px!important;min-height:24px!important;font-size:11px!important;line-height:24px!important;word-break:keep-all!important}
.auto-bet-panel.flat .auto-bet-start{width:56px!important;height:28px!important;min-height:28px!important}
/* 普通投注盘：单行固定布局 [1][10][100][1000][－ 金额 ＋][自动] */
.play-bottom .bet-one-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr)) 30px minmax(46px,1.25fr) 30px;gap:4px;align-items:center;margin-top:6px;width:100%;min-width:0}
.play-bottom .bet-one-row.with-auto{grid-template-columns:repeat(4,minmax(0,1fr)) 30px minmax(46px,1.25fr) 30px 46px!important}
.play-bottom .bet-one-row>button,.play-bottom .bet-one-row .bottom-stake-input{height:38px!important;min-height:38px!important;margin:0!important;min-width:0!important;width:100%!important;padding:0!important;border-radius:8px!important;font-size:15px!important;font-weight:800!important;line-height:38px!important;white-space:nowrap!important;box-sizing:border-box!important;transform:none!important}
.play-bottom .bet-one-row [data-stake]{background:#eef2f7!important;color:#334155!important;border:1px solid #dce3eb!important;box-shadow:none!important}
.play-bottom .bet-one-row [data-stake].active{background:linear-gradient(135deg,#7b5cff,#5b8cff)!important;color:#fff!important;border-color:transparent!important}
.play-bottom .bet-one-row .stake-step{font-size:18px!important;background:#f5f7fa!important;border:1px solid #dce3eb!important;color:#1f2937!important}
.play-bottom .bet-one-row .bottom-stake-input{display:flex!important;align-items:center;justify-content:center;gap:1px;border:1px solid #cfd8e3!important;background:#fff!important}
.play-bottom .bet-one-row .bottom-stake-input span{font-size:12px!important;color:#94a3b8}
.play-bottom .bet-one-row .bottom-stake-input input{width:100%!important;min-width:0!important;font-size:15px!important;font-weight:800!important;text-align:center!important;padding:0!important;border:0!important;background:transparent!important;height:36px!important}
.play-bottom .bet-one-row .auto-bet-open{font-size:15px!important;background:#fff1f2!important;color:#e11d48!important;border:1px solid #fecdd3!important}
.play-bottom .bet-one-row .auto-bet-open.active{background:linear-gradient(135deg,#f43f5e,#e11d48)!important;color:#fff!important}

