/* Stable fixed chrome; decoration and data never change its geometry. */
html,body{max-width:100%;overflow-x:clip}
.topbar,.bottom-nav{translate:none!important;scale:1!important}
.topbar .brand,.topbar .brand *,.topbar .top-actions,.topbar .top-actions *,.bottom-nav>button,.bottom-nav>button>span,.bottom-nav>button>small{translate:none!important;scale:1!important}
html:not(.asen-landscape) body:not(.in-game) .bottom-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:0!important}
body.in-game .bottom-nav{display:none!important}
.bottom-nav>button{min-width:0!important;width:100%!important;margin:0!important;position:relative}
.bottom-nav>button:nth-child(1){grid-column:1}.bottom-nav>button:nth-child(2){grid-column:2}.bottom-nav>.nav-recharge{grid-column:3}.bottom-nav>[data-route=favorites]{grid-column:4}.bottom-nav>[data-route=account]{grid-column:5}
.bottom-nav>button{grid-row:1}
[data-ui-icon=inbox]{--ui-icon:var(--ui-inbox)}
.inbox-dot{position:absolute;top:0;left:calc(50% + 9px);width:8px;height:8px;border-radius:50%;background:#f33145;box-shadow:0 0 0 2px #181d26}
/* Restore the original 390px header dimensions as one proportional layout. */
@media(max-width:1024px){
 html.asen-geometry-locked .topbar{height:calc(88px * var(--asen-geometry-scale) + env(safe-area-inset-top));padding:calc(12px * var(--asen-geometry-scale) + env(safe-area-inset-top)) 0 calc(12px * var(--asen-geometry-scale));align-items:flex-start;gap:calc(8px * var(--asen-geometry-scale));width:100%!important}
 html.asen-geometry-locked .topbar .brand{flex:1 1 auto;min-width:0;gap:calc(6px * var(--asen-geometry-scale));transform:none;margin:0;align-items:flex-start;width:auto!important;height:auto!important}
 html.asen-geometry-locked .topbar .brand-symbol{width:calc(64px * var(--asen-geometry-scale))!important;height:calc(64px * var(--asen-geometry-scale))!important;flex:0 0 calc(64px * var(--asen-geometry-scale))}
 html.asen-geometry-locked .topbar .brand-copy{height:calc(64px * var(--asen-geometry-scale))!important;width:auto!important;min-width:0;max-width:none;display:grid;grid-template-columns:max-content;grid-template-rows:calc(25px * var(--asen-geometry-scale)) 1fr;gap:0}
 html.asen-geometry-locked .topbar .brand-copy strong{font-size:calc(21px * var(--asen-geometry-scale));line-height:calc(25px * var(--asen-geometry-scale));width:auto!important;height:auto!important;transform:none!important;white-space:nowrap}
 html.asen-geometry-locked .topbar .brand-domain-row #brandDomain{font-size:calc(17px * var(--asen-geometry-scale));line-height:calc(20px * var(--asen-geometry-scale));width:max-content!important;height:auto!important;transform:none!important;margin:0;align-self:center!important;white-space:nowrap}
 html.asen-geometry-locked .topbar .brand-domain-row{width:max-content!important;height:auto!important;gap:calc(3px * var(--asen-geometry-scale));align-self:start;margin-top:calc(10px * var(--asen-geometry-scale));display:flex!important;flex-wrap:nowrap!important;align-items:center!important;transform:none!important}
 html.asen-geometry-locked .topbar .top-actions{width:calc(168px * var(--asen-geometry-scale))!important;flex:0 0 calc(168px * var(--asen-geometry-scale));transform:none}
 html.asen-geometry-locked .topbar .action-grid{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,calc(30px * var(--asen-geometry-scale)));gap:calc(4px * var(--asen-geometry-scale))}
 html.asen-geometry-locked .topbar .header-action{width:100%!important;height:calc(30px * var(--asen-geometry-scale))!important;min-height:0;font-size:calc(11px * var(--asen-geometry-scale));padding:0 calc(2px * var(--asen-geometry-scale))}
}
#memberTicker{position:fixed!important;top:var(--asen-header-bottom,80px)!important;left:10%!important;width:80%!important;max-width:none!important;height:28px;min-height:28px;padding:0;border:0;border-radius:6px;z-index:13;overflow:hidden;contain:paint;background:linear-gradient(90deg,rgb(0 0 0 / 10%),rgb(0 0 0 / 60%) 30%,rgb(0 0 0 / 60%) 70%,rgb(0 0 0 / 10%));color:#fff0cf;translate:none!important;scale:1!important;font-size:12px;line-height:28px;text-align:left}
.announcement-track{display:inline-block;width:max-content;padding-left:100%;white-space:nowrap;animation:announcement-scroll var(--announcement-duration,24s) linear infinite;will-change:transform}
@keyframes announcement-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-100%,0,0)}}
body.in-game #memberTicker{display:none}
@media(prefers-reduced-motion:reduce){.announcement-track{animation:none;padding-left:8px}}
body.profile-drawer-open{overflow:hidden}
#profileEditor.profile-editor{position:fixed;inset:auto 0 0;margin:0 auto;width:min(620px,100%);max-width:100%;height:auto;max-height:85dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;transform:none;translate:none!important;scale:1!important;padding:44px 18px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;box-sizing:border-box}
#profileEditor::backdrop{background:#0009}
.profile-drawer-close{position:absolute;right:10px;top:8px;width:36px;height:36px;padding:0;border:0;border-radius:50%;font-size:28px;background:#ffffff18;color:inherit}
#profileEditor form,#profileEditor fieldset{min-width:0;max-width:100%}
#profileEditor input[type=text],#profileNicknameInput{font-size:16px}
html[data-player-theme=light] #profileEditor{background:#fffaf2;color:#302b25}
#rechargeConversion{margin:0 0 16px;width:100%;max-width:100%;overflow-wrap:anywhere}
#memberConversionBalance button{display:block;margin-top:10px;padding:10px;border:1px solid #9c8055;border-radius:8px;background:transparent;color:inherit}
.popular-viewport{overflow:hidden;scroll-behavior:auto!important;touch-action:pan-y}
.popular-track,.popular-moving .popular-track{will-change:transform;backface-visibility:hidden}
html body .favorite-button{font-size:0!important;display:grid;place-items:center;padding:0}
html body .favorite-button::before{grid-area:1/1;width:23px;height:23px;margin:0}
html body .favorite-button.saved::before{--ui-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.3 4.8a5.1 5.1 0 0 0-7.2 0L12 5.9l-1.1-1.1a5.1 5.1 0 0 0-7.2 7.2L12 20.3l8.3-8.3a5.1 5.1 0 0 0 0-7.2Z'/%3E%3C/svg%3E")}

@media(prefers-reduced-motion:reduce){.popular-group[aria-hidden="true"]{display:flex}}

.quick-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:visible!important;gap:8px!important;width:100%!important;translate:none!important;scale:1!important}
.quick-grid>button{position:relative;min-width:0!important;width:100%!important;translate:none!important;scale:1!important}
.quick-grid .inbox-dot{top:8px}

/* 捕鱼保留上下越框；老虎机恢复旧分支的三行布局，图案不再覆盖整框。 */
@media(max-width:1024px){
 html.asen-geometry-locked .featured-fishing,
 html.asen-geometry-locked #homeCategoryGrid>[data-hall="slots"]{overflow:visible!important}
 html.asen-geometry-locked .featured-fishing>.featured-hall-art{
  position:absolute;left:auto;right:0;top:0;bottom:auto;width:58%!important;height:100%!important;max-height:none;transform-origin:right center;
  translate:0 -7px!important;scale:1.41!important;transform:none!important;object-fit:contain;
 }
 html.asen-geometry-locked #homeCategoryGrid>[data-hall="slots"]>.category-card-art{
  position:relative;grid-column:1;grid-row:2;inset:auto;object-position:center;width:100%!important;height:100%!important;max-height:118px!important;min-height:0;
  translate:none!important;scale:1!important;transform:none!important;object-fit:contain;
 }
}

/* 网址与复制图标为一个不可拆分的几何单元。 */
@media(max-width:1024px){
 html.asen-geometry-locked .topbar .brand-domain-row>.asen-copy-icon{position:static!important;flex:0 0 calc(20px * var(--asen-geometry-scale));width:calc(20px * var(--asen-geometry-scale))!important;min-width:0;min-height:0!important;height:calc(20px * var(--asen-geometry-scale))!important;padding:0;margin:0;transform:none!important;align-self:center}
}

/* 斗战胜佛按金框定位，透明装饰不参与卡片的尺寸计算。 */
html body .popular-card[data-art-frame="dasheng"]>img{
 position:absolute;left:calc(10px - 17px * 60 / 286);top:calc(-20px * 60 / 286);
 width:calc(320px * 60 / 286);height:calc(320px * 60 / 286);max-width:none;
 object-fit:contain;border-radius:0;outline:none;box-shadow:none;pointer-events:none;
}

/* 玩家端隐藏额外细线，保留素材自身的金框。 */
html body .popular-card>img,html body .game-row>.game-art{outline:none!important;border-color:transparent!important}
html body .game-row{border-color:transparent!important}

/* 外框独立锁定：图案缩放不得改变老虎机厅容器，竖屏与真人厅等高。 */
@media(max-width:1024px){
 html.asen-geometry-locked:not(.asen-landscape) #homeCategoryGrid>[data-hall="slots"]{
  height:184px!important;min-height:184px!important;max-height:184px!important;align-self:stretch!important;
 }
}

/* 从已合入的777分支恢复标题位置；网址与复制图标保持独立的绑定行。 */
@media(max-width:1024px){
 html.asen-geometry-locked .topbar .brand-copy #brandName{transform:translate(calc(12px * var(--asen-geometry-scale)),calc(5px * var(--asen-geometry-scale)))!important}
}
/* 电子游戏厅底部锁在原1.18倍图案底边；顶部越框量与捕鱼厅1.41倍/-7px一致。 */
@media(orientation:portrait) and (max-width:1024px){
 html.asen-geometry-locked .featured-electronic>.featured-hall-art{
  top:auto;bottom:-9%;width:80.24%!important;height:calc(129.5% + 7px)!important;max-height:none;object-fit:contain;object-position:left bottom;
  translate:none!important;scale:1!important;transform:none!important;transform-origin:left bottom;
 }
}

