
.player-loading strong[data-v-04c03f29]{max-width:calc(100vw - 40px);text-align:center}
.player-loading button[data-v-04c03f29]{width:auto;padding-inline:1.5rem;white-space:nowrap}
.shared-image-viewer {
  position: fixed;
  z-index: 10000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 4.5rem 1.25rem 1.5rem;
  color: #fff;
  background: rgba(2, 8, 18, 0.92);
  backdrop-filter: blur(0.5rem);
}

.shared-image-viewer-stage {
  width: 100%;
  height: 100%;
  overflow: auto;
  overscroll-behavior: contain;
}

.shared-image-viewer-canvas {
  display: grid;
  min-width: 100%;
  min-height: 100%;
  place-items: center;
}

.shared-image-viewer-stage img {
  display: block;
  max-width: min(92vw, 100%);
  max-height: calc(100vh - 8rem);
  object-fit: contain;
  transition: width 120ms ease, height 120ms ease;
  user-select: none;
}

.shared-image-viewer-toolbar {
  position: fixed;
  z-index: 1;
  top: 1rem;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 0.875rem;
  background: rgba(10, 22, 39, 0.94);
  box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.35);
  transform: translateX(-50%);
}

.shared-image-viewer button {
  display: grid;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.75rem;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.625rem;
  color: #fff;
  background: #152b48;
  font: inherit;
  font-size: 0.875rem;
  cursor: pointer;
}

.shared-image-viewer button:hover {
  background: #245284;
}

.shared-image-viewer output {
  min-width: 4.25rem;
  color: #dcecff;
  font-size: 0.875rem;
  text-align: center;
}

.shared-image-viewer-close {
  position: fixed;
  z-index: 2;
  top: 1rem;
  right: 1rem;
  font-size: 1.375rem !important;
}

@media (max-width: 640px) {
  .shared-image-viewer {
    padding: 4.25rem 0.75rem 1rem;
  }

  .shared-image-viewer-stage img {
    max-width: 96vw;
    max-height: calc(100vh - 7rem);
  }

  .shared-image-viewer-toolbar {
    left: 0.75rem;
    transform: none;
  }
}
:root{--blue:#2d9df4;--blue-deep:#1f7fe4;--ink:#142a48;--muted:#7890ad;--line:#d9e9f6;--soft:#eef8ff;--white:#fff;--danger:#ef6574;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:#e9f2fb;font-synthesis:none}
/* Player 尺寸策略：文字、间距和组件尺寸使用 rem；精细边框、阴影、断点及画布绘制保留 px。 */
html{font-size:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(circle at 50% 0,#f9fcff 0,#eaf3fb 48%,#e1ebf5 100%)}button,input{font:inherit}button{cursor:pointer;outline:none}button:focus-visible{outline:2px solid rgba(45,157,244,.55);outline-offset:0.125rem}.bottom-nav button:focus-visible{border-radius:0.75rem;outline:0;background:#edf8ff}button:disabled{cursor:wait;opacity:.58}[hidden]{display:none!important}.form-error{min-height:1.25rem;margin:0.25rem 0 0;color:var(--danger);font-size:0.75rem;line-height:1.5}.primary-button{width:100%;min-height:3rem;border:0;border-radius:0.9375rem;color:#fff;background:linear-gradient(135deg,#55baff,#2589ec);box-shadow:0 11px 24px rgba(39,143,233,.24);font-weight:800}

/* 登录注册 */
.auth-view{position:relative;display:grid;min-height:100vh;place-items:center;overflow:hidden;padding:2rem 1.25rem;background:linear-gradient(145deg,#edf9ff 0,#e2f1ff 50%,#f4f9ff 100%)}.auth-view:before{position:absolute;content:"";inset:0;background-image:linear-gradient(rgba(60,150,230,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(60,150,230,.04) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}.auth-glow{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55}.auth-glow-a{top:-6.875rem;right:5%;width:22.5rem;height:22.5rem;background:radial-gradient(circle,#8ed7ff,transparent 68%)}.auth-glow-b{bottom:-10rem;left:4%;width:26.25rem;height:26.25rem;background:radial-gradient(circle,#b2e8ff,transparent 68%)}.auth-shell{position:relative;width:min(29.375rem,100%);padding:1.875rem 2rem 1.625rem;border:1px solid rgba(255,255,255,.9);border-radius:1.875rem;background:rgba(255,255,255,.88);box-shadow:0 30px 90px rgba(48,108,163,.17),inset 0 1px #fff;backdrop-filter:blur(18px)}.auth-brand{display:flex;align-items:center;gap:0.8125rem;margin-bottom:1.5rem}.brand-mark{display:grid;width:3rem;height:3rem;place-items:center;border-radius:1rem;background:#e4f5ff;box-shadow:0 8px 24px rgba(43,148,235,.15)}.brand-mark img{width:2.5625rem;height:2.5625rem;object-fit:contain}.auth-brand small,.auth-brand strong{display:block}.auth-brand small{margin-bottom:0.1875rem;color:#7b98b6;font-size:0.75rem;font-weight:800;letter-spacing:.16em}.auth-brand strong{font-size:1.125rem}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:1.5625rem;padding:0.25rem;border-radius:0.8125rem;background:#edf5fb}.auth-tabs button{height:2.5rem;border:0;border-radius:0.625rem;color:#7990aa;background:transparent;font-size:0.8125rem;font-weight:700}.auth-tabs button.active{color:#177dd6;background:#fff;box-shadow:0 6px 18px rgba(37,100,157,.1)}.auth-intro{margin-bottom:1.375rem}.auth-intro p{margin:0 0 0.375rem;color:#3098ec;font-size:0.75rem;font-weight:900;letter-spacing:.18em}.auth-intro h1{margin:0;font-size:1.75rem;letter-spacing:-.04em}.auth-intro span{display:block;margin-top:0.4375rem;color:#8297ae;font-size:0.75rem}.auth-form{display:grid;gap:0.9375rem}.auth-form>label,.form-pair>label{display:grid;gap:0.4375rem;color:#667f99;font-size:0.75rem;font-weight:700}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem}.auth-input{display:flex;align-items:center;height:3.125rem;border:1px solid #d9e8f4;border-radius:0.875rem;background:#f8fbfe;transition:.2s}.auth-input:focus-within{border-color:#65b8f7;background:#fff;box-shadow:0 0 0 4px rgba(50,156,239,.1)}.auth-input i{display:grid;width:2.625rem;place-items:center;color:#58aef0;font-style:normal;font-size:1.0625rem}.auth-input input{min-width:0;flex:1;height:100%;border:0;outline:0;color:#1c3653;background:transparent;font-size:0.8125rem}.auth-input input::placeholder{color:#a9bacb}.auth-input button{height:100%;padding:0 0.875rem;border:0;color:#409ee9;background:transparent;font-size:0.75rem}.captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 7.625rem;gap:0.625rem}.captcha-image{height:3.125rem;overflow:hidden;padding:0;border:1px solid #d9e8f4;border-radius:0.875rem;background:#eef7fd}.captcha-image img{display:block;width:100%;height:100%;object-fit:contain}.auth-submit{display:flex;align-items:center;justify-content:space-between;height:3.25rem;margin-top:0.125rem;padding:0 1.1875rem;border:0;border-radius:0.9375rem;color:#fff;background:linear-gradient(135deg,#58bfff,#2589ec);box-shadow:0 12px 26px rgba(38,139,232,.25);font-size:0.875rem;font-weight:800}.auth-submit span{display:grid;width:1.75rem;height:1.75rem;place-items:center;border-radius:0.5625rem;background:rgba(255,255,255,.18);font-size:1.0625rem}.auth-session{display:flex;align-items:center;justify-content:center;gap:0.4375rem;margin:1.1875rem 0 0;color:#91a4b7;font-size:0.75rem}.auth-session i{width:0.375rem;height:0.375rem;border-radius:50%;background:#54d0aa;box-shadow:0 0 0 4px rgba(84,208,170,.12)}

.form-pair>label,.form-pair .auth-input{min-width:0}.form-pair .auth-input{width:100%}

/* 主容器 */
.phone-page{position:relative;width:min(53.75rem,100%);min-height:100vh;margin:0 auto;overflow:hidden;background:linear-gradient(180deg,#fbfdff 0,#ecf7ff 18%,#edf7fd 100%);box-shadow:0 0 70px rgba(54,93,131,.14)}.page-scroll{min-height:100vh;padding:0 0 7rem}.tab-panel{min-height:calc(100vh - 5.875rem)}.topbar{display:flex;align-items:center;justify-content:space-between;height:4.5rem;padding:0 1.6875rem;background:rgba(255,255,255,.94)}.topbar-logo{display:flex;align-items:center;gap:0.625rem;min-width:0}.topbar-logo img{width:2.25rem;height:2.25rem;object-fit:contain}.topbar-logo strong{overflow:hidden;max-width:24.375rem;font-size:1.0625rem;text-overflow:ellipsis;white-space:nowrap}.top-actions{display:flex;gap:0.5625rem}.top-actions button,.sub-header>button,.mine-hero>button{display:grid;width:2.375rem;height:2.375rem;place-items:center;border:1px solid #d8e9f7;border-radius:0.8125rem;color:#288fe5;background:#f1f9ff;font-weight:900;box-shadow:0 7px 17px rgba(31,121,197,.1)}

/* 首页 */
.hero{position:relative;aspect-ratio:860/300;overflow:hidden;margin:0;border-radius:0 0 1.75rem 1.75rem;background:#91d5ff;box-shadow:0 14px 28px rgba(53,140,211,.14)}.hero>img{display:block;width:100%;height:100%;object-fit:cover}.hero-copy{position:absolute;z-index:2;top:50%;left:6%;display:grid;max-width:45%;transform:translateY(-50%)}.hero-copy span{width:max-content;margin-bottom:0.5625rem;padding:0.3125rem 0.5625rem;border-radius:62.4375rem;color:#1377ca;background:rgba(255,255,255,.75);font-size:0.75rem;font-weight:900;letter-spacing:.13em}.hero-copy strong{color:#173b65;font-size:1.8125rem;line-height:1.15;letter-spacing:-.04em}.hero-copy small{margin-top:0.6875rem;color:#41688b;font-size:0.75rem}.hero-dots{position:absolute;z-index:3;right:1.4375rem;bottom:0.9375rem;display:flex;gap:0.3125rem}.hero-dots i{width:0.375rem;height:0.375rem;border-radius:0.625rem;background:rgba(255,255,255,.55)}.hero-dots i.active{width:1.25rem;background:#fff}.notice-bar{display:grid;grid-template-columns:1.875rem minmax(0,1fr) auto;align-items:center;gap:0.5rem;margin:0.75rem 1.25rem 0;padding:0.5625rem 0.8125rem;border:1px solid #dcebf5;border-radius:62.4375rem;background:rgba(255,255,255,.88);box-shadow:0 7px 18px rgba(60,108,149,.06)}.notice-icon{display:grid;width:1.6875rem;height:1.6875rem;place-items:center;border-radius:50%;color:#fff;background:#57b2f4}.notice-bar>div{overflow:hidden}.notice-bar p{display:block;overflow:hidden;margin:0;color:#607b98;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.notice-bar button{border:0;color:#3999e5;background:transparent;font-size:0.75rem}.account-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;margin:0.875rem 1.25rem 0;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.95);border-radius:1.375rem;background:#fff;box-shadow:0 13px 34px rgba(54,116,166,.1)}.account-copy>span{color:#83a1bb;font-size:0.75rem;font-weight:900;letter-spacing:.15em}.account-copy>div{display:flex;align-items:baseline;gap:0.5625rem;margin-top:0.25rem}.account-copy>div strong{font-size:1rem}.account-copy>div small{color:#8da3b8;font-size:0.75rem}.account-copy p{display:flex;align-items:baseline;gap:0.625rem;margin:0.5rem 0 0}.account-copy b{color:#152c47;font-size:2.125rem;line-height:1}.account-copy em{color:#8ca1b6;font-size:0.75rem;font-style:normal}.quick-actions{display:flex;gap:1.375rem}.quick-actions button{display:grid;gap:0.375rem;justify-items:center;border:0;color:#58738f;background:transparent;font-size:0.75rem}.quick-actions i{display:grid;width:2.6875rem;height:2.6875rem;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#60c5ff,#258ded);box-shadow:0 8px 18px rgba(38,146,233,.27);font-size:1.0625rem;font-style:normal}.section-title{display:flex;align-items:end;justify-content:space-between;margin:1.75rem 1.5rem 0.8125rem}.section-title small,.sub-header small,.mine-hero small,.mine-card-head small{color:#4aa8ed;font-size:0.75rem;font-weight:900;letter-spacing:.16em}.section-title h2{margin:0.25rem 0 0;font-size:1.25rem}.section-title button{border:0;color:#4b9fe0;background:transparent;font-size:0.75rem}.featured-rooms{display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:repeat(2,9.6875rem);gap:0.75rem;padding:0 1.25rem}.featured-room{position:relative;overflow:hidden;padding:0;border:1px solid rgba(255,255,255,.95);border-radius:1.25rem;background:linear-gradient(140deg,#dff5ff,#a8dcff);box-shadow:0 10px 24px rgba(47,120,180,.1);text-align:left}.featured-room:first-child{grid-row:1/3}.featured-room img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.featured-room.has-icon img{inset:auto 2% 3% auto;width:62%;height:78%;object-fit:contain}.room-copy{position:absolute;z-index:2;top:1.25rem;left:1.25rem;display:grid;max-width:60%}.room-copy strong{color:#163a60;font-size:1.25rem}.room-copy span{margin-top:0.3125rem;color:#527897;font-size:0.75rem;line-height:1.5}.room-copy em{width:max-content;margin-top:0.6875rem;padding:0.3125rem 0.5rem;border-radius:62.4375rem;color:#238bdb;background:rgba(255,255,255,.72);font-size:0.75rem;font-style:normal}.featured-room.sleep:after,.room-item.sleep:after{position:absolute;z-index:4;content:"休息中";top:0.75rem;right:0.75rem;padding:0.3125rem 0.5rem;border-radius:62.4375rem;color:#fff;background:rgba(42,68,95,.72);font-size:0.75rem}.home-activities{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem;padding:1.5rem 1.25rem 0}.home-activity{display:flex;align-items:center;gap:0.8125rem;padding:0.8125rem;border:1px solid #e1edf6;border-radius:1.0625rem;background:#fff;box-shadow:0 8px 20px rgba(56,105,145,.06)}.home-activity img{width:3.375rem;height:3.375rem;border-radius:0.875rem;object-fit:cover;background:#dff2ff}.home-activity div{min-width:0}.home-activity strong,.home-activity span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-activity strong{font-size:0.75rem}.home-activity span{margin-top:0.3125rem;color:#8ca0b4;font-size:0.75rem}

/* 子页面与房间 */
.sub-header{display:flex;align-items:center;gap:1rem;padding:1.625rem 1.5rem 1.25rem;background:#fff}.sub-header>button,.mine-hero>button{font-size:1.5rem}.sub-header div{min-width:0}.sub-header h1{margin:0.25rem 0 0;font-size:1.5625rem}.sub-header>span{margin-left:auto;color:#8198b0;font-size:0.75rem}.game-filters{display:flex;gap:0.5rem;overflow-x:auto;padding:0.875rem 1.25rem}.game-filters button{flex:0 0 auto;height:2.1875rem;padding:0 0.9375rem;border:1px solid #d9e8f4;border-radius:62.4375rem;color:#718ba5;background:#fff;font-size:0.75rem}.game-filters button.active{border-color:#399ce9;color:#fff;background:linear-gradient(135deg,#59bbfb,#2c8ee9);box-shadow:0 7px 16px rgba(49,148,229,.2)}.room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.8125rem;padding:0.25rem 1.25rem 1.5rem}.room-item{position:relative;display:grid;grid-template-columns:6.375rem minmax(0,1fr);min-height:8rem;overflow:hidden;padding:0;border:1px solid #dceaf5;border-radius:1.1875rem;background:#fff;box-shadow:0 9px 21px rgba(54,105,148,.07);text-align:left}.room-item>img{width:100%;height:100%;object-fit:cover;background:#dff3ff}.room-item>div{align-self:center;min-width:0;padding:1rem 0.875rem}.room-item strong,.room-item span,.room-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-item strong{font-size:0.875rem}.room-item span{margin-top:0.375rem;color:#338fd6;font-size:0.75rem}.room-item small{margin-top:0.4375rem;color:#8499ae;font-size:0.75rem}.empty{grid-column:1/-1;padding:4.375rem 1.25rem;color:#8ca1b5;text-align:center}

/* 活动与我的 */
.activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.875rem;padding:0.9375rem 1.25rem 1.75rem}.activity-card{overflow:hidden;padding:0;border:1px solid #dceaf5;border-radius:1.25rem;background:#fff;box-shadow:0 10px 25px rgba(50,105,149,.08);text-align:left}.activity-card img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover;background:linear-gradient(135deg,#c9edff,#6ec3ff)}.activity-card div{padding:1rem}.activity-card strong,.activity-card span{display:block}.activity-card strong{font-size:0.875rem}.activity-card span{overflow:hidden;margin-top:0.4375rem;color:#8197ad;font-size:0.75rem;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.mine-hero{display:flex;align-items:center;gap:1rem;padding:1.75rem 1.5625rem 4.375rem;background:linear-gradient(145deg,#b9eaff,#54b4fa);border-radius:0 0 2.125rem 2.125rem}.mine-hero>button{align-self:flex-start;background:rgba(255,255,255,.68)}.mine-avatar{display:grid;width:4.5rem;height:4.5rem;place-items:center;border:4px solid rgba(255,255,255,.8);border-radius:1.5rem;color:#fff;background:linear-gradient(135deg,#318fe4,#176ec8);box-shadow:0 15px 30px rgba(20,105,181,.25);font-size:1.625rem;font-weight:900}.mine-hero h1{margin:0.3125rem 0 0.125rem;color:#153857;font-size:1.5rem}.mine-hero p{margin:0;color:#42779d;font-size:0.75rem}.mine-hero small{color:#fff}.mine-balance{display:grid;grid-template-columns:repeat(3,1fr);margin:-2.625rem 1.25rem 1rem;padding:1.3125rem 0.625rem;border:1px solid rgba(255,255,255,.95);border-radius:1.25rem;background:#fff;box-shadow:0 13px 32px rgba(44,108,158,.13)}.mine-balance div{padding:0 0.875rem;text-align:center}.mine-balance div+div{border-left:1px solid #e2edf5}.mine-balance span,.mine-balance strong{display:block}.mine-balance span{color:#8aa0b5;font-size:0.75rem}.mine-balance strong{margin-top:0.4375rem;font-size:1.125rem}.mine-card{margin:0.8125rem 1.25rem;padding:1.375rem;border:1px solid #deebf5;border-radius:1.25rem;background:#fff;box-shadow:0 9px 24px rgba(51,102,144,.07)}.mine-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1875rem}.mine-card-head h2{margin:0.3125rem 0 0;font-size:1.0625rem}.mine-card-head>span{padding:0.375rem 0.5625rem;border-radius:62.4375rem;color:#318fda;background:#eaf7ff;font-size:0.75rem}.mine-card form{display:grid;grid-template-columns:1fr 1fr;gap:0.8125rem}.mine-card form label{display:grid;gap:0.4375rem;color:#71889f;font-size:0.75rem}.mine-card form input{height:2.8125rem;padding:0 0.75rem;border:1px solid #d8e7f2;border-radius:0.75rem;outline:0;color:#1a3550;background:#f8fbfe}.mine-card form input:focus{border-color:#5ab3f5;box-shadow:0 0 0 3px rgba(47,151,233,.1)}.mine-card form .form-error,.mine-card form .primary-button{grid-column:1/-1}.menu-card{padding:0.3125rem 1.125rem}.menu-card button{display:flex;width:100%;align-items:center;justify-content:space-between;padding:0.9375rem 0.125rem;border:0;color:#294761;background:transparent}.menu-card button+button{border-top:1px solid #e3edf5}.menu-card button>span{display:flex;align-items:center;gap:0.75rem}.menu-card i{display:grid;width:2.3125rem;height:2.3125rem;place-items:center;border-radius:0.75rem;color:#2489dd;background:#e8f6ff;font-style:normal}.menu-card b{font-size:0.75rem}.menu-card em{color:#95a9bb;font-size:1.25rem;font-style:normal}.menu-card .logout{color:#d85f70}.menu-card .logout i{color:#e76574;background:#fff0f2}

/* 底栏、弹层与提示 */
.bottom-nav{position:fixed;z-index:20;right:50%;bottom:0;display:grid;width:min(53.75rem,100%);grid-template-columns:repeat(5,1fr);padding:0.5625rem 1rem calc(0.5rem + env(safe-area-inset-bottom));border-top:1px solid rgba(210,229,242,.9);background:rgba(255,255,255,.95);box-shadow:0 -10px 30px rgba(58,101,137,.09);transform:translateX(50%);backdrop-filter:blur(18px)}.bottom-nav button{display:grid;gap:0.1875rem;justify-items:center;min-height:3.5625rem;border:0;color:#92a6b9;background:transparent;font-size:0.75rem}.bottom-nav i{display:grid;width:1.875rem;height:1.875rem;place-items:center;border-radius:0.6875rem;font-size:1.0625rem;font-style:normal}.bottom-nav button.active{color:#278fe6}.bottom-nav button.active i{background:#e9f7ff}.bottom-nav .nav-center{position:relative;color:#3b91d8}.bottom-nav .nav-center i{width:3.1875rem;height:3.1875rem;margin-top:-1.5625rem;border:5px solid #f6fbff;border-radius:50%;color:#fff;background:linear-gradient(145deg,#58bdff,#1984e7);box-shadow:0 7px 18px rgba(28,130,219,.28)}.dialog{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:1.25rem;background:rgba(25,52,77,.48);backdrop-filter:blur(8px)}.dialog-card{position:relative;width:min(26.875rem,100%);max-height:calc(100vh - 2.5rem);overflow-y:auto;padding:1.875rem;border:1px solid rgba(255,255,255,.9);border-radius:1.5625rem;background:#fff;box-shadow:0 30px 80px rgba(25,63,95,.28)}.dialog-close{position:absolute;top:0.9375rem;right:0.9375rem;display:grid;width:2rem;height:2rem;place-items:center;border:0;border-radius:0.625rem;color:#6f8aa4;background:#edf6fc;font-size:1.1875rem}.dialog-code{display:block;margin-bottom:0.5rem;color:#3196e6;font-size:0.75rem;font-weight:900;letter-spacing:.16em}.dialog-card h2{margin:0;color:#173551;font-size:1.4375rem}.dialog-card>p{color:#71889f;font-size:0.75rem;line-height:1.8;white-space:pre-wrap}.dialog-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:0.5625rem;margin:1.25rem 0}.dialog-meta span{padding:0.75rem;border:1px solid #dceaf4;border-radius:0.75rem;color:#7890a7;background:#f7fbfe;font-size:0.75rem}.dialog-meta b{display:block;margin-top:0.3125rem;color:#1d4467;font-size:0.8125rem}.activity-dialog-card>img{display:block;width:calc(100% + 3.75rem);max-height:13.75rem;margin:-1.875rem -1.875rem 1.5rem;object-fit:cover;background:#dff3ff}.popup-card{text-align:center}.popup-badge{display:inline-block;margin-bottom:0.8125rem;padding:0.375rem 0.6875rem;border-radius:62.4375rem;color:#2587d7;background:#e6f6ff;font-size:0.75rem;font-weight:900;letter-spacing:.15em}.popup-card label{display:flex;align-items:center;justify-content:center;gap:0.4375rem;margin:1.125rem 0;color:#7890a6;font-size:0.75rem}.popup-card input{accent-color:#3199e9}.toasts{position:fixed;z-index:60;top:1.125rem;left:50%;display:grid;gap:0.5625rem;width:min(24.375rem,calc(100% - 1.875rem));transform:translateX(-50%)}.toast{display:flex;align-items:flex-start;gap:0.6875rem;padding:0.8125rem 0.875rem;border:1px solid rgba(255,255,255,.8);border-radius:0.9375rem;color:#31506b;background:rgba(255,255,255,.95);box-shadow:0 16px 38px rgba(32,77,113,.17);backdrop-filter:blur(12px)}.toast i{flex:0 0 auto;width:0.4375rem;height:0.4375rem;margin-top:0.3125rem;border-radius:50%;background:#43b2f7;box-shadow:0 0 0 5px rgba(67,178,247,.12)}.toast.error i{background:#ef6574;box-shadow:0 0 0 5px rgba(239,101,116,.12)}.toast strong,.toast span{display:block}.toast strong{font-size:0.75rem}.toast span{margin-top:0.25rem;color:#7890a6;font-size:0.75rem;line-height:1.5}

@media(max-width:700px){.phone-page{box-shadow:none}.topbar{height:3.75rem;padding:0 1rem}.topbar-logo img{width:2rem;height:2rem}.topbar-logo strong{max-width:13.125rem;font-size:0.875rem}.top-actions button{width:2.125rem;height:2.125rem}.hero{border-radius:0 0 1.25rem 1.25rem}.hero-copy{left:5%;max-width:50%}.hero-copy strong{font-size:1.25rem}.hero-copy small{font-size:0.75rem}.notice-bar{margin:0.5625rem 0.75rem 0;padding-block:0.4375rem}.account-card{margin:0.625rem 0.75rem 0;padding:1rem;gap:0.625rem}.account-copy b{font-size:1.75rem}.quick-actions{gap:0.6875rem}.quick-actions i{width:2.375rem;height:2.375rem}.section-title{margin:1.4375rem 1rem 0.6875rem}.featured-rooms{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,8.125rem);gap:0.5625rem;padding:0 0.75rem}.room-copy{top:0.9375rem;left:0.9375rem}.room-copy strong{font-size:1rem}.home-activities{padding:1.125rem 0.75rem 0}.sub-header{padding:1.25rem 1rem 0.9375rem}.game-filters{padding-inline:0.75rem}.room-list{gap:0.625rem;padding:0.1875rem 0.75rem 1.25rem}.room-item{grid-template-columns:5.25rem minmax(0,1fr);min-height:6.875rem}.room-item>div{padding:0.75rem 0.625rem}.activity-list{gap:0.625rem;padding:0.75rem}.mine-hero{padding:1.375rem 1rem 3.9375rem}.mine-balance{margin-inline:0.75rem}.mine-card{margin-inline:0.75rem}.bottom-nav{padding-inline:0.3125rem}}
@media(max-width:470px){.auth-view{padding:0;background:#eef8ff}.auth-shell{min-height:100vh;padding:1.5625rem 1.25rem;border:0;border-radius:0;background:rgba(255,255,255,.92);box-shadow:none}.auth-brand{margin-bottom:1.25rem}.auth-tabs{margin-bottom:1.3125rem}.auth-intro h1{font-size:1.5625rem}.form-pair{grid-template-columns:1fr}.auth-input,.captcha-image{height:3rem}.captcha-row{grid-template-columns:minmax(0,1fr) 6.75rem}.hero{aspect-ratio:390/158}.hero-copy strong{font-size:1.0625rem}.hero-copy small{display:none}.account-card{grid-template-columns:minmax(0,1fr) auto}.account-copy>span{display:none}.account-copy>div{display:block}.account-copy>div small{display:block;margin-top:0.125rem}.account-copy p{margin-top:0.4375rem}.account-copy em{display:none}.quick-actions{gap:0.4375rem}.quick-actions button:nth-child(2){display:none}.featured-rooms{grid-template-rows:repeat(2,7.5625rem)}.room-copy{max-width:68%}.room-copy span{display:none}.featured-room:first-child .room-copy strong{font-size:1.125rem}.home-activities{grid-template-columns:1fr}.room-list{grid-template-columns:1fr}.room-item{grid-template-columns:5.875rem minmax(0,1fr)}.activity-list{grid-template-columns:1fr}.mine-hero{gap:0.75rem}.mine-avatar{width:3.8125rem;height:3.8125rem;border-radius:1.25rem}.mine-balance{padding-inline:0.125rem}.mine-balance div{padding-inline:0.4375rem}.mine-balance strong{font-size:0.9375rem}.mine-card{padding:1.125rem}.mine-card form{grid-template-columns:1fr}.mine-card form .form-error,.mine-card form .primary-button{grid-column:1}.dialog-card{padding:1.5rem}.activity-dialog-card>img{width:calc(100% + 3rem);margin:-1.5rem -1.5rem 1.3125rem}.bottom-nav button{font-size:0.75rem}}

/* 上下分、客服、代理与玩家资料 */
.sub-tabs{display:flex;gap:0.5rem;overflow-x:auto;padding:1.0625rem 1.25rem 0.1875rem}.sub-tabs button,.payment-tabs button{flex:0 0 auto;height:2.375rem;padding:0 1rem;border:1px solid #d7e7f3;border-radius:62.4375rem;color:#718ba5;background:#fff;font-size:0.75rem;font-weight:700}.sub-tabs button.active,.payment-tabs button.active{border-color:#399ce9;color:#fff;background:linear-gradient(135deg,#59bbfb,#2c8ee9);box-shadow:0 7px 16px rgba(49,148,229,.2)}.finance-shell{padding-bottom:1.75rem}.finance-card{margin:0.875rem 1.25rem;padding:1.4375rem;border:1px solid #dceaf5;border-radius:1.3125rem;background:#fff;box-shadow:0 10px 26px rgba(49,105,151,.08)}.finance-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.finance-card-head small,.agent-card>span,.contact-card>span,.chat-card header small,.agent-list-head span{color:#3d9de7;font-size:0.75rem;font-weight:900;letter-spacing:.16em}.finance-card-head h2,.agent-card h2,.contact-card h2,.chat-card h2,.agent-list-head h2{margin:0.3125rem 0 0;font-size:1.1875rem}.finance-card-head>span{padding:0.375rem 0.5625rem;border-radius:62.4375rem;color:#2493dd;background:#e9f7ff;font-size:0.75rem}.finance-card-head>span.closed{color:#d95d6d;background:#fff0f2}.finance-warning{padding:0.6875rem 0.8125rem;border-radius:0.75rem;color:#bf5664;background:#fff1f3;font-size:0.75rem}.finance-card form{display:grid;gap:0.875rem}.finance-card form>label,.finance-card .form-pair label,.payment-root form>label{display:grid;gap:0.4375rem;color:#6e879f;font-size:0.75rem}.finance-card input,.finance-card select,.finance-card textarea,.payment-root input{width:100%;padding:0 0.8125rem;border:1px solid #d7e7f3;border-radius:0.75rem;outline:0;color:#183752;background:#f8fbfe}.finance-card input,.finance-card select,.payment-root input{height:2.875rem}.finance-card textarea{padding-block:0.6875rem;resize:vertical}.finance-card input:focus,.finance-card select:focus,.finance-card textarea:focus,.payment-root input:focus{border-color:#53acf0;box-shadow:0 0 0 3px rgba(45,157,244,.1)}.payment-preview{min-height:5.625rem;border:1px dashed #c9deed;border-radius:0.875rem;background:#f4faff}.payment-preview.image{display:flex;align-items:center;gap:0.9375rem;padding:0.75rem;color:#718ba3;font-size:0.75rem}.payment-preview.image img{width:5.625rem;height:5.625rem;border-radius:0.625rem;object-fit:contain;background:#fff}.payment-preview.text{display:grid;align-content:center;gap:0.3125rem;padding:1rem}.payment-preview.text span{color:#728aa2;font-size:0.75rem}.payment-preview.text strong{color:#1e486c;font-size:1.0625rem}.payment-preview.text small{color:#88a0b4}.empty-payment{display:grid;place-items:center;color:#8ba1b5;font-size:0.75rem}.player-record-list{display:grid;gap:0.625rem;padding:0.9375rem 1.25rem}.player-record-list article{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;gap:0.75rem;align-items:center;padding:0.9375rem;border:1px solid #dceaf5;border-radius:1rem;background:#fff;box-shadow:0 7px 18px rgba(47,101,145,.05)}.player-record-icon{display:grid;width:2.75rem;height:2.75rem;place-items:center;border-radius:0.8125rem;font-weight:900}.player-record-icon.up{color:#178d71;background:#e3faf3}.player-record-icon.down{color:#d65b6b;background:#fff0f2}.player-record-list strong,.player-record-list small,.player-record-list p{display:block}.player-record-list article>div{min-width:0}.player-record-list article>div strong{font-size:0.75rem}.player-record-list article>div small{margin-top:0.3125rem;color:#8aa0b4;font-size:0.75rem}.player-record-list p{overflow:hidden;margin:0.3125rem 0 0;color:#728aa2;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.player-record-list article>b{color:#50718c;font-size:0.75rem}.player-record-list .record-state-1{color:#d49326}.player-record-list .record-state-2{color:#198b70}.player-record-list .record-state-3{color:#d65b6b}.player-pages{display:flex;justify-content:center;gap:0.4375rem;padding:0.5rem 1.25rem}.player-pages button{width:2.125rem;height:2.125rem;border:1px solid #d6e7f3;border-radius:0.625rem;color:#66829c;background:#fff}.player-pages button.active{border-color:#3599e7;color:#fff;background:#3599e7}.player-service-root,.agent-root{padding:0.9375rem 1.25rem 1.75rem}.chat-card,.contact-card,.agent-card{overflow:hidden;padding:1.4375rem;border:1px solid #dceaf5;border-radius:1.3125rem;background:#fff;box-shadow:0 10px 26px rgba(49,105,151,.08)}.chat-card header{display:flex;align-items:center;justify-content:space-between;padding-bottom:1.0625rem;border-bottom:1px solid #e2edf5}.chat-card header>span{padding:0.375rem 0.5625rem;border-radius:62.4375rem;color:#238ed9;background:#eaf7ff;font-size:0.75rem}.player-service-messages{display:flex;height:29.375rem;flex-direction:column;gap:0.625rem;overflow:auto;padding:1.25rem 0.25rem}.player-message{display:grid;align-self:flex-start;max-width:76%;gap:0.25rem}.player-message.mine{align-self:flex-end;justify-items:end}.player-message>div{padding:0.625rem 0.8125rem;border-radius:0.25rem 0.9375rem 0.9375rem;color:#43617c;background:#edf5fb;font-size:0.75rem;line-height:1.6;white-space:pre-wrap}.player-message.mine>div{border-radius:0.9375rem 0.25rem 0.9375rem 0.9375rem;color:#fff;background:linear-gradient(135deg,#54b7f8,#268be9)}.player-message.revoked>div{color:#8ca0b3;background:#f1f4f6;font-style:italic}.player-message small{color:#98aabc;font-size:0.75rem}.chat-card form{display:grid;grid-template-columns:minmax(0,1fr) 8.125rem;gap:0.625rem;padding-top:0.875rem;border-top:1px solid #e2edf5}.chat-card textarea{min-height:3.625rem;resize:none;padding:0.6875rem 0.75rem;border:1px solid #d7e7f3;border-radius:0.8125rem;outline:0;color:#193651;background:#f8fbfe}.chat-card textarea:focus{border-color:#53acf0}.contact-card{display:grid;justify-items:center;max-width:32.5rem;margin:0.9375rem auto;text-align:center}.contact-card h2{margin-top:0.5625rem}.contact-card p,.agent-card p{color:#7890a7;font-size:0.75rem;line-height:1.8}.contact-card img{width:min(17.5rem,80%);aspect-ratio:1;margin:0.9375rem;border-radius:1.125rem;object-fit:contain;background:#f4faff}.contact-card .primary-button{display:grid;width:min(17.5rem,100%);place-items:center;text-decoration:none}.agent-root{display:grid;gap:0.8125rem}.agent-card.locked{text-align:center}.invite-link{display:flex;gap:0.5625rem;margin-top:1.125rem}.invite-link input{min-width:0;flex:1;height:2.75rem;padding:0 0.75rem;border:1px solid #d7e7f3;border-radius:0.75rem;color:#4b6c86;background:#f7fbfe;outline:0}.invite-link button{padding:0 1rem;border:0;border-radius:0.75rem;color:#fff;background:#2d95e8;font-weight:800}.agent-list-head{display:flex;align-items:center;justify-content:space-between}.agent-list-head>strong{display:grid;width:2.875rem;height:2.875rem;place-items:center;border-radius:0.875rem;color:#1884d5;background:#e6f6ff;font-size:1.125rem}.agent-player-list{display:grid;margin:1.0625rem -1.4375rem -1.4375rem}.agent-player-list article{display:grid;grid-template-columns:2.625rem minmax(0,1fr) auto;gap:0.6875rem;align-items:center;padding:0.8125rem 1.4375rem;border-top:1px solid #e2edf5}.agent-player-list article>span{display:grid;width:2.625rem;height:2.625rem;place-items:center;border-radius:0.8125rem;color:#fff;background:linear-gradient(135deg,#59baf9,#2d8be4);font-weight:900}.agent-player-list strong,.agent-player-list small{display:block}.agent-player-list strong{font-size:0.75rem}.agent-player-list small{margin-top:0.25rem;color:#8ca1b5;font-size:0.75rem}.agent-player-list article>b{color:#8298ad;font-size:0.75rem}.mine-avatar.has-image{color:transparent;background-position:center;background-size:cover}.payment-root{display:grid;gap:0.875rem}.payment-tabs{display:flex;gap:0.4375rem;overflow-x:auto}.payment-tabs button{height:2.125rem;padding-inline:0.8125rem}.payment-root form{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem}.payment-root form .form-error,.payment-root form .primary-button,.payment-current-image,.payment-current-empty,.payment-clear{grid-column:1/-1}.payment-current-image{display:block;width:9.375rem;height:9.375rem;margin:0 auto;border:1px solid #dceaf5;border-radius:1rem;object-fit:contain;background:#f5fbff}.payment-current-empty{padding:1.875rem;border:1px dashed #c9deed;border-radius:0.875rem;color:#91a5b7;text-align:center}.payment-clear{display:flex!important;align-items:center;grid-auto-flow:column;justify-content:start!important}.payment-clear input{width:auto!important;height:auto!important;accent-color:#2d95e8}
@media(max-width:700px){.sub-tabs{padding-inline:0.75rem}.finance-card,.player-service-root,.agent-root{margin-inline:0.75rem}.finance-card{margin-top:0.75rem}.player-service-root,.agent-root{padding-inline:0}.player-service-messages{height:26.25rem}.chat-card form{grid-template-columns:1fr}.chat-card form .primary-button{min-height:2.75rem}.payment-root form{grid-template-columns:1fr}.payment-root form .form-error,.payment-root form .primary-button,.payment-current-image,.payment-current-empty,.payment-clear{grid-column:1}.agent-player-list article{padding-inline:1.0625rem}}
@media(max-width:470px){.quick-actions button:nth-child(2){display:grid}.finance-card{padding:1.125rem}.finance-card .form-pair{grid-template-columns:1fr}.player-record-list{padding-inline:0.75rem}.player-record-list article{grid-template-columns:2.5rem minmax(0,1fr)}.player-record-list article>b{grid-column:2}.player-service-root,.agent-root{margin-inline:0}.chat-card,.contact-card,.agent-card{border-radius:0;border-inline:0}.player-message{max-width:88%}.invite-link{flex-direction:column}.invite-link button{height:2.625rem}.agent-player-list article>b{display:none}}

/* 代理返点汇总与账单 */
.agent-reward-stats{display:grid;grid-template-columns:1fr 1fr;gap:0.625rem}.agent-reward-stats>div{padding:1.1875rem 1.3125rem;border:1px solid #dceaf5;border-radius:1.125rem;background:linear-gradient(145deg,#fff,#f3faff);box-shadow:0 8px 22px rgba(49,105,151,.07)}.agent-reward-stats span,.agent-reward-stats strong,.agent-reward-stats small{display:block}.agent-reward-stats span{color:#3d9de7;font-size:0.75rem;font-weight:900;letter-spacing:.14em}.agent-reward-stats strong{margin:0.5rem 0 0.25rem;color:#183f60;font-size:1.5rem}.agent-reward-stats small{color:#8aa0b4;font-size:0.75rem}.agent-reward-list{display:grid;margin:1.0625rem -1.4375rem -1.4375rem}.agent-reward-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:0.75rem;align-items:center;padding:0.875rem 1.4375rem;border-top:1px solid #e2edf5}.agent-reward-list strong,.agent-reward-list small{display:block}.agent-reward-list strong{color:#315571;font-size:0.75rem}.agent-reward-list small{margin-top:0.3125rem;color:#91a5b7;font-size:0.75rem}.agent-reward-list article>span{color:#7991a7;font-size:0.75rem}.agent-reward-list article>b{color:#188b70;font-size:0.8125rem}
@media(max-width:470px){.agent-reward-stats{padding-inline:0.75rem}.agent-reward-stats>div{padding:1rem}.agent-reward-stats strong{font-size:1.25rem}.agent-reward-list article{grid-template-columns:minmax(0,1fr) auto;padding-inline:1.0625rem}.agent-reward-list article>span{grid-column:1}.agent-reward-list article>b{grid-column:2;grid-row:1/3}}

/* 二维码图片仅用于本地识别，展示图由保存的二维码文本即时生成 */
.payment-qr-note{display:block;color:#8ba0b4;font-size:0.75rem;line-height:1.55}.payment-current-image,.payment-preview.image img,.contact-card img{image-rendering:auto}

/* 玩家签到、幸运转盘与福利记录 */
.benefit-root{display:grid;gap:0.875rem;padding:1rem 1.25rem 2.125rem}.benefit-checkin-card,.benefit-wheel-card,.benefit-log-card{overflow:hidden;border:1px solid #dceaf5;border-radius:1.375rem;background:#fff;box-shadow:0 10px 27px rgba(48,104,150,.08)}.benefit-checkin-card{padding:1.4375rem;background:linear-gradient(145deg,#fff,#f2faff)}.benefit-checkin-copy>span,.benefit-wheel-card header span,.benefit-log-card header span{color:#3199e8;font-size:0.75rem;font-weight:900;letter-spacing:.16em}.benefit-checkin-copy h2,.benefit-wheel-card h2,.benefit-log-card h2{margin:0.3125rem 0 0;color:#183a57;font-size:1.1875rem}.benefit-checkin-copy p{margin:0.5rem 0 0;color:#7890a7;font-size:0.75rem;line-height:1.65}.benefit-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0.4375rem;margin:1.3125rem 0}.benefit-days div{display:grid;gap:0.375rem;justify-items:center;color:#93a6b8;font-size:0.75rem}.benefit-days i{display:grid;width:2.125rem;height:2.125rem;place-items:center;border:1px solid #d5e7f3;border-radius:0.6875rem;color:#7992a8;background:#f7fbfe;font-style:normal;font-weight:800}.benefit-days div.complete{color:#268bd9}.benefit-days div.complete i{border-color:#78c4f6;color:#fff;background:linear-gradient(145deg,#59bbfa,#268ce7);box-shadow:0 7px 15px rgba(45,148,231,.2)}.benefit-checkin-action{display:flex;align-items:center;justify-content:space-between;gap:0.875rem;padding-top:1.0625rem;border-top:1px solid #e3edf5}.benefit-checkin-action>div{flex:0 0 5.125rem}.benefit-checkin-action strong,.benefit-checkin-action small{display:block}.benefit-checkin-action strong{color:#245176;font-size:1.125rem;white-space:nowrap}.benefit-checkin-action small{margin-top:0.1875rem;color:#8ba0b4;font-size:0.75rem}.benefit-checkin-action .primary-button{flex:0 1 15rem;width:auto;min-width:9.375rem}.benefit-wheel-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.875rem}.benefit-wheel-card{padding:1.3125rem;text-align:center}.benefit-wheel-card>header,.benefit-log-card>header{display:flex;align-items:center;justify-content:space-between;text-align:left}.benefit-wheel-card header>strong{display:flex;align-items:baseline;gap:0.25rem;padding:0.4375rem 0.625rem;border-radius:62.4375rem;color:#278fdc;background:#e9f7ff;font-size:0.75rem}.benefit-wheel-card header>strong b{font-size:1rem}.benefit-wheel-card.premium header>strong{color:#a96716;background:#fff4dc}.benefit-wheel-stage{position:relative;width:14.5rem;height:14.5rem;margin:1.375rem auto 1.0625rem}.benefit-wheel{position:absolute;inset:0.4375rem;border:8px solid #f0f7fc;border-radius:50%;background:conic-gradient(#75ccfb 0 60deg,#e5f6ff 60deg 120deg,#75ccfb 120deg 180deg,#e5f6ff 180deg 240deg,#75ccfb 240deg 300deg,#e5f6ff 300deg 360deg);box-shadow:0 13px 34px rgba(46,137,205,.18),inset 0 0 0 2px #fff}.premium .benefit-wheel{background:conic-gradient(#ffd27a 0 60deg,#fff3d3 60deg 120deg,#ffd27a 120deg 180deg,#fff3d3 180deg 240deg,#ffd27a 240deg 300deg,#fff3d3 300deg 360deg);box-shadow:0 13px 34px rgba(206,145,45,.18),inset 0 0 0 2px #fff}.benefit-wheel.spinning{transition:transform 1.1s cubic-bezier(.16,.78,.2,1)}.benefit-wheel-value{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:3.25rem;height:2.5rem;place-content:center;transform:translate(-50%,-50%) rotate(calc(var(--slot)*60deg)) translateY(-4.75rem) rotate(calc(var(--slot)*-60deg));border-radius:0.625rem;color:#276b9e;text-align:center;transition:.2s}.premium .benefit-wheel-value{color:#986218}.benefit-wheel-value b,.benefit-wheel-value small{display:block}.benefit-wheel-value b{font-size:0.8125rem}.benefit-wheel-value small{font-size:0.75rem}.benefit-wheel-value.winner{color:#fff;background:#228de5;box-shadow:0 5px 13px rgba(30,130,214,.28)}.premium .benefit-wheel-value.winner{background:#d99a35;box-shadow:0 5px 13px rgba(191,124,22,.28)}.benefit-wheel-center{position:absolute;z-index:3;top:50%;left:50%;display:grid;width:4.5rem;height:4.5rem;place-items:center;border:7px solid rgba(255,255,255,.92);border-radius:50%;color:#fff;background:linear-gradient(145deg,#55b8fa,#237fd7);box-shadow:0 7px 18px rgba(34,126,203,.26);transform:translate(-50%,-50%);font-size:0.75rem;font-weight:900;letter-spacing:.1em}.premium .benefit-wheel-center{background:linear-gradient(145deg,#efbb5d,#c78122);box-shadow:0 7px 18px rgba(188,121,24,.24)}.benefit-pointer{position:absolute;z-index:5;top:-0.0625rem;left:50%;color:#1f79c5;transform:translateX(-50%);font-size:1.375rem;font-style:normal;filter:drop-shadow(0 3px 2px rgba(32,105,161,.2))}.premium .benefit-pointer{color:#bd7a21}.benefit-wheel-card>p{min-height:2rem;margin:0 0 0.875rem;color:#7b91a6;font-size:0.75rem;line-height:1.65}.benefit-draw-button{width:100%;height:2.8125rem;border:0;border-radius:0.8125rem;color:#fff;background:linear-gradient(135deg,#55b9f8,#2587e4);box-shadow:0 8px 19px rgba(38,137,221,.2);font-weight:800}.benefit-draw-button.premium{background:linear-gradient(135deg,#edbd68,#ca8528);box-shadow:0 8px 19px rgba(194,126,31,.18)}.benefit-draw-button:disabled{color:#91a4b6;background:#edf3f7;box-shadow:none}.benefit-log-card>header{padding:1.1875rem 1.3125rem;border-bottom:1px solid #e2edf5}.benefit-log-card header button{height:2.125rem;padding:0 0.75rem;border:1px solid #d6e6f2;border-radius:0.625rem;color:#638099;background:#f7fbfe;font-size:0.75rem}.benefit-log-list{display:grid;padding:0.3125rem 1.25rem}.benefit-log-list article{display:grid;grid-template-columns:2.625rem minmax(0,1fr) auto;gap:0.75rem;align-items:center;padding:0.875rem 0.125rem;border-bottom:1px solid #e5eef5}.benefit-log-list article:last-child{border-bottom:0}.benefit-log-icon{display:grid;width:2.625rem;height:2.625rem;place-items:center;border-radius:0.8125rem;color:#288eda;background:#e9f7ff;font-weight:900}.benefit-log-list strong,.benefit-log-list small{display:block}.benefit-log-list strong{color:#244762;font-size:0.75rem}.benefit-log-list small{margin-top:0.3125rem;color:#8297aa;font-size:0.75rem}.benefit-log-list time{color:#8ba0b3;font-size:0.75rem}.benefit-log-card .player-pages{padding:0.5rem 1.25rem 1.125rem}
@media(max-width:700px){.benefit-root{padding:0.75rem 0.75rem 1.75rem}.benefit-wheel-grid{grid-template-columns:1fr}.benefit-wheel-card{padding:1.1875rem}.benefit-wheel-stage{width:14.125rem;height:14.125rem}.benefit-header>span{display:none}}
@media(max-width:470px){.benefit-root{padding-inline:0}.benefit-checkin-card,.benefit-wheel-card,.benefit-log-card{border-inline:0;border-radius:0}.benefit-checkin-card{padding:1.125rem 0.875rem}.benefit-days{gap:0.1875rem}.benefit-days i{width:1.9375rem;height:1.9375rem;border-radius:0.625rem}.benefit-days span{font-size:0.75rem}.benefit-checkin-action .primary-button{min-width:8rem}.benefit-log-list{padding-inline:0.875rem}.benefit-log-list article{grid-template-columns:2.375rem minmax(0,1fr)}.benefit-log-icon{width:2.375rem;height:2.375rem}.benefit-log-list time{grid-column:2}.benefit-wheel-stage{width:13.875rem;height:13.875rem}}

/* 公共聊天室 */
.group-chat-root{padding:0.875rem 1.25rem 2.125rem}.group-chat-card{overflow:hidden;border:1px solid #dceaf5;border-radius:1.375rem;background:#fff;box-shadow:0 11px 29px rgba(47,105,151,.09)}.chat-load-older{display:block;margin:0.75rem auto 0;padding:0.4375rem 0.8125rem;border:1px solid #d8e8f3;border-radius:62.4375rem;color:#66839c;background:#f6fbfe;font-size:0.75rem}.group-chat-messages{display:flex;height:min(36.875rem,calc(100vh - 16.25rem));min-height:24.375rem;flex-direction:column;gap:0.8125rem;overflow-y:auto;padding:1.125rem 1.375rem;scroll-behavior:smooth}.group-chat-message{display:grid;width:min(78%,35rem);grid-template-columns:2.5rem minmax(0,1fr);gap:0.5625rem;align-self:flex-start}.group-chat-message.mine{grid-template-columns:minmax(0,1fr) 2.5rem;align-self:flex-end}.group-chat-message.mine .group-chat-avatar{grid-column:2}.group-chat-message.mine>div{grid-row:1;grid-column:1;justify-items:end}.group-chat-avatar{display:grid;width:2.5rem;height:2.5rem;place-items:center;overflow:hidden;border-radius:0.8125rem;color:#fff;background:linear-gradient(145deg,#67c6fb,#2d90e5);font-size:0.8125rem;font-weight:900}.group-chat-avatar img{width:100%;height:100%;object-fit:cover}.group-chat-message.operator .group-chat-avatar{background:linear-gradient(145deg,#77b7ff,#536ee7)}.group-chat-message>div{display:grid;min-width:0}.group-chat-message header{display:flex;align-items:center;gap:0.5rem;margin:0 0.1875rem 0.25rem}.group-chat-message.mine header{justify-content:flex-end}.group-chat-message header strong{overflow:hidden;color:#668099;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.group-chat-message header time{color:#a0b0bf;font-size:0.75rem;white-space:nowrap}.group-chat-message p{margin:0;padding:0.625rem 0.8125rem;border-radius:0.25rem 0.9375rem 0.9375rem;color:#405f79;background:#edf5fb;font-size:0.75rem;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.group-chat-message.mine p{border-radius:0.9375rem 0.25rem 0.9375rem 0.9375rem;color:#fff;background:linear-gradient(135deg,#55b9fa,#278be6);box-shadow:0 6px 15px rgba(39,139,230,.16)}.group-chat-message.operator p{color:#40567d;background:#edf0ff}.group-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 7rem;gap:0.625rem;padding:0.875rem 1.125rem 1.0625rem;border-top:1px solid #e2edf5;background:#fbfdff}.chat-quick-replies{display:flex;grid-column:1/-1;gap:0.4375rem;overflow-x:auto;padding:0 0.0625rem 0.125rem;scrollbar-width:thin}.chat-quick-replies[hidden]{display:none}.chat-quick-replies button{flex:0 0 auto;max-width:16.25rem;padding:0.4375rem 0.6875rem;overflow:hidden;border:1px solid #d6e8f5;border-radius:62.4375rem;color:#48718e;background:#f3f9fd;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.chat-quick-replies button:hover{border-color:#69b8ef;color:#258ed9;background:#eaf7ff}.chat-quick-replies button:disabled{opacity:.55;cursor:not-allowed}.group-chat-form textarea{min-height:3.625rem;padding:0.6875rem 0.8125rem;border:1px solid #d6e7f3;border-radius:0.8125rem;outline:0;color:#1d3c58;background:#fff;resize:none}.group-chat-form textarea:focus{border-color:#50abef;box-shadow:0 0 0 3px rgba(45,157,244,.09)}.group-chat-form .primary-button{min-height:3.625rem}.sub-header>span.closed{color:#d65d6c;background:#fff0f2}
@media(max-width:700px){.group-chat-root{padding:0.75rem 0.75rem 1.75rem}.group-chat-messages{height:calc(100vh - 15.3125rem);padding-inline:0.9375rem}.group-chat-message{width:88%}}
@media(max-width:470px){.group-chat-root{padding-inline:0}.group-chat-card{border-inline:0;border-radius:0}.group-chat-messages{height:calc(100vh - 14.875rem);min-height:22.5rem;padding:0.875rem 0.75rem}.group-chat-message{width:94%;grid-template-columns:2.25rem minmax(0,1fr)}.group-chat-message.mine{grid-template-columns:minmax(0,1fr) 2.25rem}.group-chat-avatar{width:2.25rem;height:2.25rem;border-radius:0.6875rem}.group-chat-form{grid-template-columns:1fr;padding:0.6875rem 0.75rem calc(0.8125rem + env(safe-area-inset-bottom))}.group-chat-form .primary-button{min-height:2.75rem}.chat-load-older{margin-top:0.5625rem}}

/* 聊天页扣除固定底部导航高度，消息列表内部滚动，输入区始终完整可见。 */
#chat-panel{display:flex;height:calc(100dvh - 4.6875rem - env(safe-area-inset-bottom));min-height:0;flex-direction:column;overflow:hidden}#chat-panel>.sub-header{flex:0 0 auto}#chat-panel>.group-chat-root{min-height:0;flex:1;padding-bottom:0}#chat-panel .group-chat-card{display:grid;height:100%;grid-template-rows:auto minmax(0,1fr) auto}#chat-panel .chat-load-older{grid-row:1}#chat-panel .group-chat-messages{height:auto;min-height:0;grid-row:2}#chat-panel .group-chat-form{grid-row:3}

/* 正式游戏房间、下注输入和开奖历史 */
.game-room-panel{padding-bottom:1.5rem}.game-room-header{position:sticky;z-index:18;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(15px)}.game-room-header>span{color:#16896e;background:#e8faf4}.game-room-header>span.closed{color:#d65b69;background:#fff0f2}.game-draw-card{overflow:hidden;margin:1rem 1.25rem;padding:1.375rem 1.5rem 1.25rem;border-radius:1.5rem;color:#fff;background:radial-gradient(circle at 88% 8%,rgba(100,205,255,.38),transparent 36%),linear-gradient(145deg,#173d68,#176da6);box-shadow:0 18px 38px rgba(25,90,139,.24)}.game-draw-head,.game-draw-foot,.game-current-card>header,.game-bet-title,.game-history-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.game-draw-head span,.game-draw-head strong,.game-countdown small,.game-countdown b{display:block}.game-draw-head span{color:#a9d9f6;font-size:0.75rem;font-weight:800;letter-spacing:.09em}.game-draw-head strong{margin-top:0.3125rem;font-size:1.0625rem}.game-countdown{text-align:right}.game-countdown small{color:#a9d9f6;font-size:0.75rem}.game-countdown b{margin-top:0.125rem;font-size:1.75rem;font-variant-numeric:tabular-nums;letter-spacing:.05em}.game-draw-balls{display:flex;flex-wrap:wrap;gap:0.5625rem;align-items:center;justify-content:center;min-height:4.5rem;margin:1.25rem 0;padding:0.8125rem;border-radius:1.125rem;background:rgba(255,255,255,.1)}.game-draw-balls>span{color:#b9d7eb;font-size:0.75rem}.game-ball{position:relative;display:grid;width:2.6875rem;height:2.6875rem;place-items:center;border:3px solid rgba(255,255,255,.75);border-radius:50%;color:#fff;background:#3d9deb;box-shadow:0 7px 14px rgba(6,41,69,.24),inset 0 0 0 2px rgba(255,255,255,.22);font-size:1rem;font-style:normal;font-weight:900}.game-ball small{position:absolute;top:-0.4375rem;left:-0.3125rem;display:grid;width:1.0625rem;height:1.0625rem;place-items:center;border-radius:50%;color:#40637e;background:#fff;font-size:0.75rem}.game-ball-0,.game-ball-5{background:#e2a42d}.game-ball-1,.game-ball-6{background:#268fe5}.game-ball-2,.game-ball-7{background:#31af8c}.game-ball-3,.game-ball-8{background:#df6673}.game-ball-4,.game-ball-9{background:#8368d9}.game-draw-foot{color:#c8e5f6;font-size:0.75rem}.game-draw-foot span:last-child{white-space:nowrap}.game-room-notice{margin:0 1.25rem 0.875rem;padding:0.75rem 0.9375rem;border:1px solid #cee6f6;border-radius:0.875rem;color:#487390;background:#f6fcff;font-size:0.75rem;line-height:1.65}.game-current-card,.game-bet-shell,.game-history-card{margin:0.875rem 1.25rem;border:1px solid #dceaf5;border-radius:1.375rem;background:#fff;box-shadow:0 10px 26px rgba(47,103,148,.08)}.game-current-card{padding:1.25rem 1.375rem}.game-current-card small,.game-bet-title small{color:#3b9ce7;font-size:0.75rem;font-weight:900;letter-spacing:.15em}.game-current-card h2,.game-bet-title h2{margin:0.3125rem 0 0;font-size:1.1875rem}.game-current-card header>strong{padding:0.5rem 0.75rem;border-radius:62.4375rem;color:#228edb;background:#eaf7ff;font-size:0.8125rem}.game-current-content{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem}.game-current-content>span{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.6875rem;border:1px solid #d8e8f3;border-radius:0.6875rem;color:#71899f;background:#f8fbfe;font-size:0.75rem}.game-current-content b{color:#2b587a;font-size:0.75rem}.game-current-content em{color:#288fdb;font-style:normal;font-weight:800}.game-bet-shell{padding:1.3125rem}.game-bet-title>span{color:#8499ad;font-size:0.75rem}.game-bet-groups{display:grid;gap:0.6875rem;margin-top:1.125rem}.game-bet-group{overflow:hidden;border:1px solid #dceaf5;border-radius:1.0625rem;background:#fbfdff}.game-bet-group>summary{display:flex;align-items:center;justify-content:space-between;gap:0.9375rem;min-height:3.6875rem;padding:0.6875rem 1rem;cursor:pointer;list-style:none;background:#f6fbff}.game-bet-group>summary::-webkit-details-marker{display:none}.game-bet-group>summary strong,.game-bet-group>summary small{display:block}.game-bet-group>summary strong{color:#2a4d68;font-size:0.875rem}.game-bet-group>summary small{margin-top:0.25rem;color:#8a9eaf;font-size:0.75rem}.game-bet-group>summary>span{padding:0.3125rem 0.5rem;border-radius:62.4375rem;color:#318fd3;background:#e5f5ff;font-size:0.75rem}.game-bet-group[open]>summary{border-bottom:1px solid #deebf4}.game-bet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.5625rem;padding:0.8125rem}.game-bet-item{display:grid;grid-template-columns:minmax(0,1fr) 5.125rem;gap:0.4375rem;align-items:center;min-height:3.625rem;padding:0.5rem 0.5625rem;border:1px solid #dfeaf3;border-radius:0.8125rem;background:#fff}.game-bet-item span{min-width:0}.game-bet-item b,.game-bet-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-bet-item b{color:#31536e;font-size:0.75rem}.game-bet-item small{margin-top:0.25rem;color:#4b9dde;font-size:0.75rem}.game-bet-item input{width:100%;height:2.375rem;padding:0 0.5rem;border:1px solid #cfe2f0;border-radius:0.5625rem;outline:0;color:#1c4a70;background:#f6fbff;text-align:center;font-size:0.75rem;font-weight:800}.game-bet-item input:focus{border-color:#43a5ee;background:#fff;box-shadow:0 0 0 3px rgba(45,157,244,.1)}.game-submit-card{position:sticky;z-index:16;bottom:5.125rem;display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.125rem;align-items:center;margin:0.9375rem 1.25rem;padding:0.875rem 1.0625rem;border:1px solid rgba(194,221,240,.95);border-radius:1.1875rem;background:rgba(255,255,255,.96);box-shadow:0 15px 36px rgba(41,91,131,.18);backdrop-filter:blur(15px)}.game-submit-card>div:first-child{display:grid;grid-template-columns:auto auto;column-gap:0.5625rem;align-items:baseline}.game-submit-card>div:first-child span,.game-submit-card>div:first-child small{color:#8197aa;font-size:0.75rem}.game-submit-card>div:first-child strong{color:#1f74b5;font-size:1.25rem}.game-submit-card>div:first-child small{grid-column:1/-1;margin-top:0.125rem}.game-submit-card>div:last-child{display:flex;justify-content:flex-end;gap:0.5rem}.game-submit-card button{min-height:2.625rem;padding:0 0.9375rem;border:0;border-radius:0.75rem;font-size:0.75rem;font-weight:800}.game-cancel-button{color:#cf5967;background:#fff0f2}.game-replace-button{color:#247fbd;background:#eaf7ff}.game-append-button{color:#fff;background:linear-gradient(135deg,#52b7f8,#2689e5);box-shadow:0 7px 16px rgba(38,137,225,.2)}.game-history-card{overflow:hidden}.game-history-card>header{padding:0.875rem 1.0625rem;border-bottom:1px solid #e0ebf4}.game-history-tabs{display:flex;gap:0.4375rem}.game-history-tabs button,.game-history-card>header>button{height:2.1875rem;padding:0 0.8125rem;border:1px solid #d7e6f1;border-radius:0.625rem;color:#6e879c;background:#f8fbfd;font-size:0.75rem}.game-history-tabs button.active{border-color:#3a9ce6;color:#fff;background:#3a9ce6}.game-history-content{display:grid;padding:0.25rem 1.125rem 0.5625rem}.game-bet-history,.game-draw-history{display:grid;grid-template-columns:8.25rem minmax(0,1fr) 10rem;gap:1rem;align-items:center;padding:0.9375rem 0.125rem;border-bottom:1px solid #e5eef5}.game-bet-history:last-child,.game-draw-history:last-child{border-bottom:0}.game-bet-history strong,.game-bet-history small,.game-draw-history strong,.game-draw-history small{display:block}.game-bet-history strong,.game-draw-history strong{color:#294c68;font-size:0.75rem}.game-bet-history small,.game-draw-history small{margin-top:0.3125rem;color:#8ba0b2;font-size:0.75rem}.game-bet-history>p{overflow:hidden;margin:0;color:#668199;font-size:0.75rem;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.game-history-result{text-align:right}.game-history-result span,.game-history-result b,.game-history-result small{display:block}.game-history-result span{font-size:0.75rem}.game-history-result .state-0{color:#cf8a24}.game-history-result .state-1{color:#188a6e}.game-history-result .state-2{color:#66879f}.game-history-result b{margin-top:0.1875rem;color:#276d9f;font-size:0.875rem}.game-draw-history>div:nth-child(2){display:flex;flex-wrap:wrap;gap:0.25rem}.game-draw-history i{display:grid;width:1.5625rem;height:1.5625rem;place-items:center;border-radius:50%;color:#fff;background:#368fd3;font-size:0.75rem;font-style:normal;font-weight:800}.game-draw-history>span{color:#557792;font-size:0.75rem;text-align:right}
@media(max-width:760px){.game-bet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.game-bet-history,.game-draw-history{grid-template-columns:7.1875rem minmax(0,1fr) 7.8125rem}}
@media(max-width:600px){.game-room-panel{padding-bottom:0.5rem}.game-draw-card{margin:0.6875rem 0.75rem;padding:1.125rem 0.875rem;border-radius:1.25rem}.game-draw-balls{gap:0.4375rem;margin-block:1rem;padding-inline:0.4375rem}.game-ball{width:2.3125rem;height:2.3125rem;border-width:2px;font-size:0.875rem}.game-room-notice,.game-current-card,.game-bet-shell,.game-history-card,.game-submit-card{margin-inline:0.75rem}.game-current-card,.game-bet-shell{padding:1.0625rem 0.875rem}.game-bet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0.4375rem;padding:0.5625rem}.game-bet-item{grid-template-columns:minmax(0,1fr) 4.25rem;min-height:3.4375rem;padding:0.4375rem}.game-bet-item input{height:2.25rem;padding-inline:0.3125rem}.game-submit-card{bottom:4.75rem;grid-template-columns:1fr;padding:0.6875rem 0.75rem;gap:0.5625rem}.game-submit-card>div:first-child{grid-template-columns:auto auto 1fr}.game-submit-card>div:first-child small{grid-row:1;grid-column:3;justify-self:end;margin:0}.game-submit-card>div:last-child{display:grid;grid-template-columns:.85fr 1fr 1.15fr}.game-submit-card button{min-height:2.5rem;padding-inline:0.4375rem}.game-bet-history,.game-draw-history{grid-template-columns:1fr auto;gap:0.5rem 0.75rem}.game-bet-history>p,.game-draw-history>div:nth-child(2){grid-row:2;grid-column:1/-1;white-space:normal}.game-history-result{grid-row:1/2;grid-column:2}.game-draw-history>span{grid-row:1;grid-column:2}.game-history-content{padding-inline:0.8125rem}}
@media(max-width:390px){.game-bet-grid{grid-template-columns:1fr}.game-bet-item{grid-template-columns:minmax(0,1fr) 5.75rem}.game-submit-card button{font-size:0.75rem}.game-draw-head strong{font-size:0.875rem}.game-countdown b{font-size:1.5rem}}

/* 平台外观、内置浏览器提示、结构聊天室、数字键盘与红包 */
body[data-skin="2"]{--player-accent:#8064dc}body[data-skin="2"] .auth-submit,body[data-skin="2"] .primary-button,body[data-skin="2"] .game-append-button{background:linear-gradient(135deg,#9a7bef,#6c50cf)}body[data-skin="3"]{--player-accent:#e69b35}body[data-skin="3"] .auth-submit,body[data-skin="3"] .primary-button,body[data-skin="3"] .game-append-button{background:linear-gradient(135deg,#f1ba61,#d58427)}
.group-chat-message.kind-3{width:min(86%,36.875rem)}.group-chat-message.kind-3>div{width:100%}.player-forecast-card{min-width:16.25rem;padding:0.875rem 1rem;border:1px solid #c9e3f4;border-radius:1.0625rem;background:linear-gradient(145deg,#eef9ff,#f9fcff);box-shadow:0 8px 20px rgba(39,129,193,.08)}.player-forecast-card span,.player-forecast-card strong{display:block}.player-forecast-card span{color:#3699df;font-size:0.75rem;font-weight:900;letter-spacing:.16em}.player-forecast-card strong{margin:0.4375rem 0;color:#28506f;font-size:0.8125rem}.player-forecast-card p{margin:0!important;padding:0!important;color:#66829a!important;background:none!important;box-shadow:none!important;font-size:0.75rem!important;line-height:1.7}.player-red-packet-card{display:grid;width:100%;min-width:17.1875rem;grid-template-columns:2.625rem minmax(0,1fr) auto;gap:0.6875rem;align-items:center;padding:0.8125rem;border:0;border-radius:1.0625rem;color:#fff;background:radial-gradient(circle at 12% 15%,rgba(255,226,170,.2),transparent 30%),linear-gradient(145deg,#df5361,#bd2e40);box-shadow:0 10px 22px rgba(174,46,63,.2);text-align:left}.player-red-packet-card>span{display:grid;width:2.625rem;height:2.625rem;place-items:center;border:1px solid rgba(255,241,196,.42);border-radius:0.8125rem;color:#fff1c3;background:rgba(96,13,27,.2);font-size:1.125rem;font-weight:900}.player-red-packet-card small,.player-red-packet-card strong,.player-red-packet-card p{display:block}.player-red-packet-card small{color:#ffd7dc;font-size:0.75rem;letter-spacing:.14em}.player-red-packet-card strong{margin:0.25rem 0;color:#fff;font-size:0.75rem}.player-red-packet-card p{overflow:hidden;margin:0!important;padding:0!important;color:#ffdfe3!important;background:none!important;box-shadow:none!important;font-size:0.75rem!important;text-overflow:ellipsis;white-space:nowrap}.player-red-packet-card em{color:#ffe4e7;font-size:0.75rem;font-style:normal;white-space:nowrap}.group-chat-message.mine.kind-3 .player-red-packet-card{text-align:left}
.keypad-card{width:min(22.5rem,calc(100% - 1.75rem));padding:1.5625rem}.keypad-value{display:block;margin:1.125rem 0;padding:0.9375rem;border:1px solid #d7e7f2;border-radius:0.875rem;color:#237fc4;background:#f5faff;font-size:1.6875rem;text-align:right;font-variant-numeric:tabular-nums}.game-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5625rem}.game-keypad button{height:3.1875rem;border:1px solid #d5e6f2;border-radius:0.8125rem;color:#315775;background:#f7fbfe;font-size:1.0625rem;font-weight:800}.game-keypad button:active{border-color:#58ade9;color:#fff;background:#3b9ee8}.keypad-card>.primary-button{width:100%;margin-top:0.75rem}.game-bet-item input[readonly]{cursor:pointer;color:#247dbd;background:#eef8ff}
.player-red-packet-shell{overflow:hidden;width:min(26.875rem,calc(100% - 1.5rem));max-height:min(47.5rem,calc(100dvh - 1.625rem));padding:0;background:#fff}.player-red-packet-head{padding:1.875rem 1.5625rem 1.5625rem;color:#fff;background:radial-gradient(circle at 15% 12%,rgba(255,230,178,.2),transparent 34%),linear-gradient(145deg,#df5261,#b9283c);text-align:center}.player-red-packet-head>span{display:grid;width:3.625rem;height:3.625rem;margin:0 auto 0.75rem;place-items:center;border:1px solid rgba(255,239,192,.42);border-radius:1.125rem;color:#fff0bd;background:rgba(102,11,27,.22);font-size:1.5625rem;font-weight:900}.player-red-packet-head small{color:#ffd5db;font-size:0.75rem;font-weight:900;letter-spacing:.18em}.player-red-packet-head h2{margin:0.4375rem 0 0.375rem;font-size:1.3125rem}.player-red-packet-head p{margin:0;color:#ffe0e4;font-size:0.75rem;line-height:1.6}.player-red-packet-head b{display:block;margin-top:0.75rem;color:#fff0bd;font-size:0.75rem}.player-red-packet-body{padding:1.25rem}.player-red-packet-body>strong{display:block;color:#385873;font-size:0.75rem;text-align:center}.player-red-packet-body>.primary-button{width:100%;margin:0.875rem 0;background:linear-gradient(135deg,#e45965,#c93245)}.player-red-packet-body>.primary-button:disabled{color:#a0aab4;background:#edf1f4}.packet-claims-title{display:flex;align-items:center;justify-content:space-between;padding:0.8125rem 0 0.5rem;border-top:1px solid #e3edf4}.packet-claims-title span{color:#34536c;font-size:0.75rem;font-weight:800}.packet-claims-title small{color:#9aabb9;font-size:0.75rem}.player-red-packet-claims{display:grid;max-height:15.625rem;overflow-y:auto}.player-red-packet-claims article{display:grid;grid-template-columns:2.1875rem minmax(0,1fr) auto;gap:0.625rem;align-items:center;padding:0.5625rem 0.125rem;border-bottom:1px solid #e7eff5}.packet-claim-avatar{display:grid;width:2.1875rem;height:2.1875rem;place-items:center;overflow:hidden;border-radius:0.6875rem;color:#fff;background:linear-gradient(145deg,#65bdf6,#318cdb);font-size:0.75rem;font-weight:900}.packet-claim-avatar img{width:100%;height:100%;object-fit:cover}.player-red-packet-claims strong,.player-red-packet-claims small{display:block}.player-red-packet-claims strong{color:#3b5971;font-size:0.75rem}.player-red-packet-claims small{margin-top:0.1875rem;color:#9aabb9;font-size:0.75rem}.player-red-packet-claims b{color:#d94a59;font-size:0.75rem}
.game-draw-history.manual{background:#f3fcf9}.game-draw-history.manual small{color:#1c9777}.game-draw-history.invalid{background:#fff5f6}.game-draw-history.invalid small,.game-draw-history.invalid>span{color:#d65363}
@media(max-width:470px){.group-chat-message.kind-3{width:96%}.player-forecast-card,.player-red-packet-card{min-width:0}.player-red-packet-card{grid-template-columns:2.375rem minmax(0,1fr) auto}.player-red-packet-card>span{width:2.375rem;height:2.375rem}.keypad-card{padding:1.3125rem}.game-keypad button{height:3rem}.player-red-packet-body{padding:1rem}.player-red-packet-head{padding:1.6875rem 1.1875rem 1.375rem}}

/* 同玩法合并开启后，玩家大厅按玩法名称分组并沿用管理控制台保存的顺序。 */
.room-list.merged{grid-template-columns:1fr}.player-room-group{overflow:hidden;border:1px solid #d8e8f4;border-radius:1.25rem;background:rgba(255,255,255,.72);box-shadow:0 9px 22px rgba(54,105,148,.06)}.player-room-group>header{display:flex;align-items:center;justify-content:space-between;padding:0.9375rem 1.125rem;border-bottom:1px solid #dfebf4;background:linear-gradient(135deg,#f7fcff,#eaf6ff)}.player-room-group>header strong{color:#244e72;font-size:0.875rem}.player-room-group>header span{padding:0.3125rem 0.5rem;border-radius:62.4375rem;color:#348fd4;background:#fff;font-size:0.75rem}.player-room-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.75rem;padding:0.8125rem}.player-room-group .room-item{box-shadow:none}
@media(max-width:470px){.player-room-group{border-radius:1rem}.player-room-group>header{padding:0.8125rem 0.875rem}.player-room-group>div{grid-template-columns:1fr;gap:0.5625rem;padding:0.5625rem}}

/* 多条平台收款资料与客服常见问题。 */
.payment-preview-list{display:grid;gap:0.625rem}.payment-preview-list .payment-preview{margin:0}.payment-preview.text.custom{display:grid;grid-template-columns:4.5rem minmax(0,1fr);column-gap:0.8125rem;align-items:center}.payment-preview.text.custom img{grid-row:1/4;width:4.5rem;height:4.5rem;object-fit:contain;border:1px solid #d9e8f2;border-radius:0.6875rem;background:#fff}.payment-preview.text.custom span,.payment-preview.text.custom strong,.payment-preview.text.custom small{grid-column:2}.player-service-questions{padding:0.75rem 1.0625rem;border-top:1px solid #e2edf5;background:#f8fcff}.player-service-questions>strong{display:block;margin-bottom:0.5rem;color:#5c7890;font-size:0.75rem}.player-service-questions>div{display:flex;gap:0.4375rem;overflow-x:auto;padding-bottom:0.125rem}.player-service-questions button{flex:0 0 auto;max-width:16.25rem;padding:0.4375rem 0.6875rem;overflow:hidden;border:1px solid #d4e7f4;border-radius:62.4375rem;color:#397cae;background:#fff;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.player-service-questions button:active{border-color:#43a2e8;color:#fff;background:#43a2e8}
@media(max-width:470px){.payment-preview.text.custom{grid-template-columns:3.625rem minmax(0,1fr)}.payment-preview.text.custom img{width:3.625rem;height:3.625rem}.player-service-questions{padding-inline:0.75rem}}

/* 游戏房间独立消息流，消息条目直接复用公共聊天室结构。 */
.game-room-chat-messages{display:flex;max-height:24.375rem;min-height:9.375rem;flex-direction:column;gap:0.625rem;overflow:auto;padding:0.875rem;background:#f7fbfe;scroll-behavior:smooth}
@media(max-width:700px){.game-room-chat-messages{max-height:21.25rem;padding:0.6875rem}}
@media(max-width:470px){.game-room-chat-messages{max-height:19.375rem}}

/* Player端只按手机比例呈现；桌面访问同样收窄，验证码完整缩放显示。 */
.phone-page,.bottom-nav{width:min(26.875rem,100%)}.auth-shell{width:min(26.875rem,100%)}.captcha-image{position:relative}.captcha-image img{width:100%;height:100%;object-fit:contain;object-position:center}.captcha-image small{position:absolute;right:0.25rem;bottom:0.1875rem;padding:0.0625rem 0.25rem;border-radius:0.25rem;color:#fff;background:rgba(20,52,76,.72);font-size:0.75rem}

.player-loading{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 22%,#dff3ff,#f6fbff 62%)}.player-loading>div{display:grid;justify-items:center;gap:0.75rem}.player-loading img{width:3.25rem;height:3.25rem}.player-loading i{display:block;width:5.375rem;height:0.1875rem;overflow:hidden;border-radius:6.1875rem;background:#d7eaf6}.player-loading i:after{display:block;width:38%;height:100%;border-radius:inherit;content:"";background:#3ca0e8;animation:player-loading 1s ease-in-out infinite alternate}.player-loading strong{color:#52738c;font-size:0.75rem;letter-spacing:.05em}@keyframes player-loading{to{transform:translateX(150%)}}

/* 平台可配置或玩家可上传的图片按实际区域拉伸显示，不使用裁切。 */
.brand-mark img,.topbar-logo img,.hero>img,.featured-room img,.featured-room.has-icon img,.room-item>img,.home-activity img,.activity-card img,.activity-dialog-card>img,.payment-preview.image img{object-fit:fill!important;object-position:center!important}
/* 公开APP下载页：自动识别设备，页面只保留名称、单个下载按钮和带图标二维码。 */
.app-download-view{position:relative;min-height:100dvh;overflow:hidden;color:#284761;background:radial-gradient(circle at 50% -10%,#bce8ff 0,transparent 43%),linear-gradient(180deg,#edf9ff,#f8fbfd)}.app-download-glow{position:absolute;width:24.375rem;height:24.375rem;right:-11.875rem;bottom:-11.25rem;border-radius:50%;background:rgba(76,168,234,.15);filter:blur(5px)}.app-download-shell{position:relative;z-index:1;display:grid;grid-template-rows:minmax(0,1fr) auto;width:min(26.875rem,100%);min-height:100dvh;margin:auto;padding:2.125rem 1.5rem 1.75rem}.app-download-loading,.app-download-empty,.app-download-content{grid-row:1/3;display:grid;justify-items:center;align-content:center;text-align:center}.app-download-loading{gap:0.9375rem}.app-download-loading i{width:2.875rem;height:2.875rem;border:5px solid #d5eaf6;border-top-color:#3c9cdf;border-radius:50%;animation:app-download-spin .9s linear infinite}.app-download-loading strong{color:#63849b;font-size:0.9375rem}.app-download-empty{gap:0.8125rem}.app-download-empty>span{display:grid;width:4.75rem;height:4.75rem;place-items:center;border:1px solid #cfe5f3;border-radius:1.5rem;color:#459edc;background:#fff;font-size:1.9375rem;box-shadow:0 13px 30px rgba(50,119,168,.1)}.app-download-empty h1{margin:0.5rem 0 0;font-size:1.5625rem}.app-download-empty p{max-width:18.75rem;margin:0;color:#7891a4;font-size:0.875rem;line-height:1.7}.app-download-content{grid-row:1;gap:1.5rem;padding:1.125rem 0 0.5rem}.app-download-content h1{max-width:100%;margin:0;color:#244965;font-size:clamp(1.6875rem,8vw,2.125rem);line-height:1.2;overflow-wrap:anywhere}.app-download-action{display:flex;width:min(19.375rem,100%);min-height:4rem;align-items:center;justify-content:center;gap:0.75rem;border:1px solid rgba(255,255,255,.42);border-radius:1.25rem;color:#fff;background:linear-gradient(145deg,#49a9eb,#277fcb);box-shadow:0 14px 29px rgba(39,128,203,.24);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.app-download-action:active{transform:translateY(0.125rem);box-shadow:0 9px 20px rgba(39,128,203,.2)}.app-download-action span{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:0.75rem;color:#328fd3;background:#fff;font-size:1.5rem;font-weight:800;line-height:1}.app-download-action strong{font-size:1.125rem;letter-spacing:.04em}.app-download-qrcode{position:relative;width:min(16.25rem,72vw);aspect-ratio:1;padding:0.6875rem;border:1px solid #d3e8f5;border-radius:1.5rem;background:#fff;box-shadow:0 16px 34px rgba(48,113,161,.13)}.app-download-qrcode>img{display:block;width:100%;height:100%;border-radius:0.875rem;object-fit:contain}.app-download-qrcode>span{position:absolute;left:50%;top:50%;display:grid;width:3.625rem;height:3.625rem;padding:0.3125rem;place-items:center;transform:translate(-50%,-50%);border-radius:1.0625rem;background:#fff;box-shadow:0 3px 12px rgba(31,86,126,.18)}.app-download-qrcode>span img{display:block;width:100%;height:100%;border-radius:0.75rem;object-fit:fill}.app-download-point{grid-row:2;margin:0.875rem 0 0;color:#5f88a4;font-size:0.9375rem;font-weight:700;letter-spacing:.06em;text-align:center}.app-download-point:before{display:inline-block;width:0.375rem;height:0.375rem;margin-right:0.5rem;border-radius:50%;content:"";vertical-align:0.125rem;background:#45a5e5;box-shadow:0 0 0 5px rgba(69,165,229,.1)}@keyframes app-download-spin{to{transform:rotate(360deg)}}
@media(max-height:700px){.app-download-shell{padding-block:1.25rem 1.125rem}.app-download-content{gap:1rem}.app-download-qrcode{width:min(13.75rem,62vw)}.app-download-point{margin-top:0.5rem}}

/* 大厅房间把玩法规则收进独立按钮，房间主体仍保持整块可点击。 */
.featured-room>.room-entry{position:absolute;z-index:1;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;text-align:left}.featured-room>.room-entry>img{position:absolute;inset:0;width:100%;height:100%}.featured-room.has-icon>.room-entry>img{inset:auto 2% 3% auto;width:62%;height:78%}.room-rule-button{position:absolute;z-index:6;top:0.6875rem;right:0.6875rem;min-height:1.8125rem;padding:0 0.625rem;border:1px solid rgba(255,255,255,.9);border-radius:62.4375rem;color:#267fbd;background:rgba(255,255,255,.9);box-shadow:0 5px 13px rgba(34,98,145,.13);font-size:0.75rem;font-weight:800;backdrop-filter:blur(8px)}.room-rule-button:active{color:#fff;background:#3699e3}.featured-room.sleep:after,.room-item.sleep:after{right:auto;left:0.6875rem}.room-item{display:block}.room-item>.room-entry{display:grid;width:100%;min-height:8rem;grid-template-columns:6.375rem minmax(0,1fr);padding:0;border:0;background:transparent;text-align:left}.room-item>.room-entry>img{width:100%;height:100%;object-fit:fill;background:#dff3ff}.room-item>.room-entry>span{align-self:center;min-width:0;padding:1rem 0.875rem}.room-item>.room-entry strong,.room-item>.room-entry em,.room-item>.room-entry small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-item>.room-entry strong{padding-right:4.125rem;color:#263f57;font-size:0.875rem}.room-item>.room-entry em{margin-top:0.375rem;color:#338fd6;font-size:0.75rem;font-style:normal}.room-item>.room-entry small{margin-top:0.4375rem;color:#8499ae;font-size:0.75rem}

/* KK皮肤投注页：页签、专业选号、群投命令和统一金额操作区。 */
.game-page-tabs{position:sticky;z-index:17;top:4.6875rem;display:grid;grid-template-columns:repeat(4,1fr);margin:0 0.75rem 0.75rem;overflow:hidden;border:1px solid #d8e8f3;border-radius:0.875rem;background:rgba(255,255,255,.96);box-shadow:0 8px 20px rgba(39,95,137,.08);backdrop-filter:blur(14px)}.game-page-tabs button{min-height:2.6875rem;border:0;border-right:1px solid #e4edf4;color:#71889c;background:transparent;font-size:0.75rem;font-weight:800}.game-page-tabs button:last-child{border-right:0}.game-page-tabs button.active{color:#fff;background:linear-gradient(135deg,#50b3f4,#288ce4)}.game-view-panel{min-width:0}.game-bet-shell{padding:0;overflow:hidden}.game-bet-title{min-height:4rem;padding:0.875rem 1rem;border-bottom:1px solid #e0ebf4}.game-bet-title>button{height:2.1875rem;padding:0 0.875rem;border:1px solid #c8e4f5;border-radius:62.4375rem;color:#2887c8;background:#eef9ff;font-size:0.75rem;font-weight:800}.game-professional-mode{display:grid;min-height:18.125rem;grid-template-columns:5.125rem minmax(0,1fr)}.game-bet-categories{display:flex;min-width:0;flex-direction:column;border-right:1px solid #dfeaf3;background:#f7fbfe}.game-bet-categories button{min-height:3.4375rem;padding:0.5rem;border:0;border-bottom:1px solid #e3edf4;color:#6f879a;background:transparent;font-size:0.75rem}.game-bet-categories button.active{position:relative;color:#278edb;background:#fff;font-weight:900}.game-bet-categories button.active:after{position:absolute;right:-0.0625rem;bottom:0;left:0;height:0.1875rem;content:"";background:#329ae7}.game-bet-groups{display:block;min-width:0;margin:0;background:#f1f6fb}.game-bet-groups>header{display:flex;min-height:3.0625rem;align-items:center;justify-content:space-between;gap:0.625rem;padding:0.625rem 0.75rem;color:#527086;background:#eef5fa}.game-bet-groups>header strong,.game-bet-groups>header small{display:block}.game-bet-groups>header strong{font-size:0.75rem}.game-bet-groups>header small{margin-top:0.1875rem;color:#8ba0b1;font-size:0.75rem}.game-bet-groups>header>span{color:#7890a5;font-size:0.75rem}.game-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.4375rem;padding:0.5rem}.game-choice{display:grid;min-height:3.4375rem;place-content:center;gap:0.1875rem;border:1px solid #dce7ef;border-radius:0.5rem;color:#5f7486;background:#fff;box-shadow:0 3px 8px rgba(48,92,126,.04);text-align:center}.game-choice strong{font-size:0.8125rem}.game-choice span{color:#8194a5;font-size:0.75rem}.game-choice.active{border-color:#2797e8;color:#fff;background:linear-gradient(145deg,#55b8f6,#2789e2);box-shadow:0 7px 15px rgba(35,140,221,.22)}.game-choice.active span{color:#e5f6ff}.game-choice:disabled{cursor:not-allowed;opacity:.58}.game-group-mode{padding:1.125rem;background:#f4f8fc}.game-group-mode>label{display:block;margin-bottom:0.5625rem;color:#355772;font-size:0.75rem;font-weight:800}.game-group-mode textarea{display:block;width:100%;min-height:5.75rem;padding:0.8125rem 0.875rem;resize:vertical;border:1px solid #cfdfea;border-radius:0.8125rem;outline:0;color:#294e69;background:#fff;font:0.875rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}.game-group-mode textarea:focus{border-color:#3b9ee8;box-shadow:0 0 0 3px rgba(59,158,232,.11)}.game-group-mode>div{display:flex;align-items:center;justify-content:space-between;gap:0.625rem;margin-top:0.625rem}.game-group-mode>div span{color:#8499aa;font-size:0.75rem}.game-group-mode>div button{min-width:5.75rem;height:2.5rem;border:0;border-radius:0.6875rem;color:#fff;background:linear-gradient(135deg,#50b3f4,#288ce4);font-size:0.75rem;font-weight:900}.game-submit-card{position:sticky;z-index:16;bottom:4.75rem;display:grid;grid-template-columns:1fr;margin:0.75rem;padding:0.75rem;border-radius:1.125rem}.game-submit-summary{display:grid!important;grid-template-columns:auto auto 1fr auto!important;column-gap:0.5rem!important;align-items:center!important}.game-submit-summary>span{color:#7990a3;font-size:0.75rem}.game-submit-summary>strong{color:#2487cf;font-size:1.125rem!important}.game-submit-summary>small{grid-row:auto!important;grid-column:auto!important;justify-self:end;color:#8196a8;font-size:0.75rem}.game-submit-summary>small b{color:#466982}.game-replace-option{display:flex;grid-row:1/2;align-items:center;gap:0.375rem;margin-right:0.25rem;color:#526f86;font-size:0.75rem;font-weight:800}.game-replace-option input{position:absolute;opacity:0}.game-replace-option i{display:block;width:1.125rem;height:1.125rem;border:1px solid #c5d8e6;border-radius:0.375rem;background:#fff}.game-replace-option input:checked+i{border-color:#3699e4;background:#3699e4;box-shadow:inset 0 0 0 4px #fff}.game-stake-control{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:0.5rem!important;margin-top:0.625rem}.game-quick-coins{display:flex!important;gap:0.375rem!important}.game-quick-coins button{width:2.375rem;min-height:2.5rem!important;padding:0!important;border:1px solid #cce2f0!important;border-radius:50%!important;color:#2f91d8;background:#eef8ff;font-size:0.75rem!important;font-weight:900}.game-quick-coins button:active{color:#fff;background:#3499e5}.game-stake-control>input{min-width:0;height:2.625rem;padding:0 0.75rem;border:1px solid #cadde9;border-radius:0.6875rem;outline:0;color:#244d6b;background:#fff;font-size:0.75rem}.game-stake-control>input:focus{border-color:#3c9de7;box-shadow:0 0 0 3px rgba(60,157,231,.1)}.game-submit-actions{display:grid!important;grid-template-columns:.8fr 1fr 1.2fr;gap:0.4375rem!important;margin-top:0.5625rem}.game-submit-actions button{min-height:2.625rem!important}.game-reset-button{color:#607b91;background:#edf3f7}.game-rule-card{margin:0.875rem 0.75rem;padding:1.375rem;border:1px solid #d7e8f4;border-radius:1.25rem;background:#fff;box-shadow:0 10px 25px rgba(46,101,143,.08)}.game-rule-card>span{color:#3b99df;font-size:0.75rem;font-weight:900;letter-spacing:.13em}.game-rule-card h2{margin:0.375rem 0 0.9375rem;color:#294a63;font-size:1.1875rem}.game-rule-card p{margin:0;color:#5f7c92;font-size:0.75rem;line-height:1.85;white-space:pre-wrap}.game-history-card>header>div>small,.game-history-card>header>div>h2{display:block;margin:0}.game-history-card>header>div>small{color:#3b98de;font-size:0.75rem;font-weight:900}.game-history-card>header>div>h2{margin-top:0.25rem;color:#294b64;font-size:1.0625rem}

@media(max-width:470px){.featured-room .room-rule-button{top:0.5rem;right:0.5rem;min-height:1.6875rem;padding-inline:0.5rem}.room-item>.room-entry{grid-template-columns:5.875rem minmax(0,1fr);min-height:6.875rem}.room-item>.room-entry>span{padding:0.75rem 0.625rem}.room-item>.room-entry strong{padding-right:3.875rem}.game-draw-card{padding-top:0.9375rem;padding-bottom:0.875rem}.game-draw-balls{min-height:3.625rem}.game-page-tabs{top:3.75rem}.game-current-card{padding-block:0.875rem}.game-current-content{margin-top:0.6875rem}.game-bet-shell{margin-inline:0;border-inline:0;border-radius:0}.game-submit-card{margin-inline:0.5rem;padding:0.625rem}.game-professional-mode{grid-template-columns:4.625rem minmax(0,1fr)}.game-bet-categories button{min-height:3.25rem;font-size:0.75rem}.game-choice-grid{gap:0.375rem;padding:0.4375rem}.game-choice{min-height:3.25rem}.game-quick-coins button{width:2.125rem}.game-stake-control{grid-template-columns:auto minmax(5.75rem,1fr)}.game-submit-summary{grid-template-columns:auto auto minmax(0,1fr) auto!important}.game-submit-summary>small{white-space:nowrap}}
@media(max-width:360px){.game-page-tabs button{font-size:0.75rem}.game-professional-mode{grid-template-columns:4.25rem minmax(0,1fr)}.game-choice-grid{grid-template-columns:1fr}.game-stake-control{grid-template-columns:1fr}.game-quick-coins{justify-content:center}.game-quick-coins button{width:2.625rem}.game-submit-summary{grid-template-columns:auto 1fr auto!important}.game-submit-summary>span{display:none}.game-submit-summary>small{grid-column:3!important}}

/* 游戏房间严格采用旧版KK的全屏结构：紧凑开奖区、左侧玩法、浮动模式切换和底部操作台。 */
body.player-room-active{overflow:hidden;background:#e8edf8}
body.player-room-active .phone-page,body.player-room-active .page-scroll{height:100dvh;min-height:0}
body.player-room-active .page-scroll{padding-bottom:0}
.game-room-panel{display:flex;height:100dvh;min-height:0;flex-direction:column;overflow:hidden;padding-bottom:0;color:#203957;background:#e8edf8}
.game-kk-top{position:relative;z-index:3;flex:0 0 12.1875rem;overflow:hidden;background:linear-gradient(135deg,#eef5ff 0,#e4effe 46%,#eff5ff 100%)}
.game-kk-top:before,.game-kk-top:after{position:absolute;z-index:-1;content:"";pointer-events:none;transform:skewX(-20deg)}
.game-kk-top:before{top:-2.8125rem;left:24%;width:28%;height:14.375rem;background:rgba(201,221,246,.64)}
.game-kk-top:after{top:-2.1875rem;left:55%;width:15%;height:13.75rem;background:rgba(211,228,249,.78)}
.game-room-header{position:relative;top:auto;display:flex;height:3rem;align-items:center;gap:0.4375rem;padding:0.25rem 0.75rem 0;background:transparent;backdrop-filter:none}
.game-room-back{display:grid;width:1.5rem;height:2rem;flex:0 0 1.5rem;place-items:center;padding:0;border:0;color:#1589ee;background:transparent;font-size:2.125rem;font-weight:300;line-height:1}
.game-room-name{display:flex;min-width:0;align-items:center;gap:0.5rem}.game-room-name>strong{overflow:hidden;max-width:11.875rem;color:#243a56;font-size:1.125rem;text-overflow:ellipsis;white-space:nowrap}.game-room-name>span{padding:0.3125rem 0.5625rem;border-radius:62.4375rem;color:#fff;background:#22a978;font-size:0.75rem;font-weight:800;white-space:nowrap}.game-room-name>span.closed{background:#fa3856}.game-room-name>i{color:#687f9f;font-size:1.125rem;font-style:normal}.game-room-balance{display:flex;height:1.75rem;align-items:center;margin-left:auto;padding:0 0.6875rem;border:0;border-radius:62.4375rem;color:#6c7f98;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(66,98,136,.05);font-size:0.75rem;white-space:nowrap}.game-room-balance i{margin-right:0.1875rem;color:#6783a1;font-size:1rem;font-style:normal}.game-room-balance b{font-weight:500}
.game-draw-card{display:grid;height:6.375rem;grid-template-columns:34% minmax(0,1fr);align-items:center;margin:0;padding:0.25rem 1.0625rem 0.4375rem;border-radius:0;color:#29405d;background:transparent;box-shadow:none}.game-next-draw{display:grid;align-content:center;justify-items:start;min-width:0}.game-next-draw>strong{overflow:hidden;max-width:100%;font-size:1.125rem;text-overflow:ellipsis;white-space:nowrap}.game-next-draw>span{margin:0.1875rem 0 0.4375rem;color:#657b99;font-size:0.8125rem}.game-countdown{display:flex;align-items:center;gap:0.25rem}.game-countdown b{display:grid;width:1.5rem;height:1.625rem;place-items:center;border-radius:0.25rem;color:#fff;background:#70829b;font-size:1.125rem;font-variant-numeric:tabular-nums}.game-countdown i{color:#5d708c;font-size:1.0625rem;font-style:normal;font-weight:800}.game-result{min-width:0}.game-result-head{display:flex;min-height:1.75rem;align-items:center;justify-content:space-between;gap:0.5rem;color:#607594;font-size:0.8125rem}.game-result-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-result-head em{padding:0.3125rem 0.625rem;border-radius:62.4375rem;color:#fff;background:#8399c8;font-size:0.75rem;font-style:normal;font-weight:800;white-space:nowrap}.game-draw-balls{display:flex;min-height:2.875rem;align-items:center;justify-content:flex-start;gap:0.4375rem;margin:0;padding:0;border-radius:0;background:transparent}.game-draw-balls>i{color:#405372;font-size:1.125rem;font-style:normal}.game-draw-balls>span{color:#8798ad;font-size:0.75rem}.game-result-ball{display:grid;width:1.875rem;height:1.875rem;flex:0 0 1.875rem;place-items:center;border:3px solid #2498f2;border-radius:50%;color:#203a5a;background:#fff;font-size:1rem}.game-result-ball.sum{border-color:#ff3e59;color:#fff;background:#ff3e59;box-shadow:0 0 12px rgba(255,62,89,.36)}.game-result-ball.compact{width:1.6875rem;height:1.6875rem;flex-basis:1.6875rem;border-width:2px;font-size:0.75rem}
.game-page-tabs{position:absolute;z-index:2;top:auto;right:0;bottom:0;left:0;display:flex;height:2.8125rem;gap:0.625rem;margin:0;padding:0.25rem 0.5rem 0.375rem;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.game-page-tabs button{width:5.4375rem;min-height:2.1875rem;flex:0 0 5.4375rem;border:0!important;border-radius:0.25rem;color:#526884;background:#fff;font-size:0.9375rem;font-weight:500;box-shadow:none}.game-page-tabs button.active{color:#fff;background:#078ff2}
.game-bet-view{display:flex;min-height:0;flex:1;flex-direction:column}.game-bet-shell{position:relative;min-height:0;flex:1;overflow:hidden;margin:0;border:0;border-radius:0;background:#e8edf8;box-shadow:none}.game-professional-mode{display:grid;height:100%;min-height:0;grid-template-columns:clamp(5.125rem,19%,6.25rem) minmax(0,1fr)}.game-bet-categories{min-height:0;overflow-y:auto;border-right:1px solid #d7dfec;background:rgba(255,255,255,.88)}.game-bet-categories button{min-height:4.75rem;flex:0 0 4.75rem;padding:0.5rem;border:0;border-bottom:1px solid #e0e5ee;color:#2e445f;background:transparent;font-size:1rem}.game-bet-categories button.active{color:#078ff2;background:#fff;font-weight:500}.game-bet-categories button.active:after{right:0;left:0;height:0.25rem;background:#078ff2}.game-bet-groups{min-height:0;overflow-y:auto;margin:0;background:#e8edf8}.game-bet-groups>h3{height:2.25rem;margin:0;padding:0.4375rem 0.625rem;color:#243957;font-size:1.0625rem;font-weight:500}.game-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.625rem;padding:0 0.625rem 0.75rem}.game-choice{min-height:3.1875rem;gap:0.0625rem;border:0;border-radius:0.3125rem;color:#253d5c;background:#fff;box-shadow:none}.game-choice strong{font-size:1.125rem;font-weight:500}.game-choice span{color:#60718c;font-size:0.8125rem}.game-choice.active{border:0;color:#fff;background:#168ff0;box-shadow:0 5px 13px rgba(22,143,240,.23)}.game-choice.active span{color:#fff}
.game-group-mode{display:flex;height:100%;min-height:0;flex-direction:column;padding:0;background:#e8edf8}.game-group-mode>#game-chat-older{align-self:center;margin:0.5625rem 0 0;padding:0.3125rem 0.6875rem;border:0;border-radius:62.4375rem;color:#63809c;background:rgba(255,255,255,.75);font-size:0.75rem}.game-group-mode .game-room-chat-messages{max-height:none;min-height:0;flex:1;overflow-y:auto;padding:0.75rem 0.875rem 5.75rem;background:transparent}.game-group-mode .game-room-chat-messages>.empty{display:none}.game-mode-toggle{position:absolute;z-index:4;right:1.4375rem;bottom:2.375rem;display:grid;justify-items:center;gap:0.3125rem;padding:0;border:0;color:#263e5b;background:transparent;font-size:0.75rem}.game-mode-toggle.group{bottom:20vh}.game-mode-toggle>i{position:relative;display:grid;width:3.4375rem;height:3.4375rem;place-items:center;border-radius:50%;color:#fff;background:#0b68fa;box-shadow:0 7px 18px rgba(11,104,250,.28);font-size:1.5rem;font-style:normal;font-weight:800}.game-mode-toggle>i.chat-icon:before{width:1.25rem;height:0.9375rem;border:2px solid #fff;border-radius:0.5rem;content:""}.game-mode-toggle>i.chat-icon:after{position:absolute;right:1rem;bottom:1rem;width:0.375rem;height:0.375rem;border-right:2px solid #fff;border-bottom:2px solid #fff;content:"";transform:skew(24deg)}.game-mode-toggle>span{white-space:nowrap}
.game-submit-card{position:relative;z-index:5;bottom:auto;display:grid;min-height:12.8125rem;flex:0 0 12.8125rem;grid-template-columns:1fr;gap:0.5625rem;margin:0;padding:0.6875rem 1.125rem 0.8125rem;border:0;border-radius:1.375rem 1.375rem 0 0;background:#fff;box-shadow:0 -8px 25px rgba(68,91,126,.06);backdrop-filter:none}.game-submit-summary{position:relative;display:flex!important;min-height:2.3125rem;align-items:center!important;justify-content:flex-start;gap:0.4375rem!important}.game-submit-summary>span{position:absolute;left:50%;display:flex;align-items:center;gap:0.3125rem;padding:0.4375rem 0.9375rem;border-radius:62.4375rem;color:#fff!important;background:#168ff0;font-size:0.8125rem!important;font-weight:700;transform:translateX(-50%);white-space:nowrap}.game-submit-summary>span b{color:#fff;font-size:1rem}.game-submit-summary>small{display:none}.game-replace-option{display:flex;align-items:center;gap:0.375rem;margin:0;padding:0.375rem 0.6875rem;border-radius:62.4375rem;color:#2e465f;background:#f5f7fa;font-size:0.8125rem}.game-replace-option i{width:1.125rem;height:1.125rem;border-color:#8e9db0;border-radius:0.125rem}.game-stake-control{display:grid!important;grid-template-columns:2.5rem auto minmax(6.875rem,1fr);gap:0.5rem!important;margin:0}.game-stake-edit{display:grid;width:2.5rem;min-height:2.75rem!important;place-items:center!important;padding:0!important;border:0!important;border-radius:0.5rem!important;color:#8092aa;background:#f0f4fa;font-size:1.1875rem!important}.game-quick-coins{display:flex!important;gap:0.4375rem!important}.game-quick-coins button{width:2.875rem;min-height:2.875rem!important;padding:0!important;border:5px dashed #2995ff!important;border-radius:50%!important;color:#1588ef;background:#fff;font-size:0.875rem!important}.game-stake-control>input{height:2.875rem;padding:0 0.8125rem;border-color:#91a7c1;border-radius:0.375rem;color:#334b67;background:#fff;font-size:0.8125rem}.game-submit-actions{display:grid!important;grid-template-columns:1fr 1fr 1.45fr;gap:0.625rem!important;margin:0}.game-submit-actions button{min-height:4.25rem!important;border:0!important;border-radius:0.4375rem!important;color:#65748b!important;background:#edf2fa!important;font-size:1rem!important;font-weight:500!important;box-shadow:none!important}.game-submit-actions .game-cancel-button{display:grid;place-content:center;gap:0.1875rem}.game-cancel-button i{font-size:1.0625rem;font-style:normal}.game-submit-actions .game-append-button:not(:disabled){color:#fff!important;background:#168ff0!important}.game-command-dock{z-index:5;display:grid;min-height:4.375rem;flex:0 0 4.375rem;grid-template-columns:minmax(0,1fr) 6.5rem;gap:0.625rem;align-items:center;padding:0.625rem 1.0625rem calc(0.625rem + env(safe-area-inset-bottom));border-top:1px solid #d6deea;background:#fff}.game-command-dock input{min-width:0;height:2.875rem;padding:0 0.875rem;border:1px solid #9badc3;border-radius:0.375rem;outline:0;color:#2d4562;background:#fff;font-size:0.875rem}.game-command-dock input:focus{border-color:#168ff0;box-shadow:0 0 0 3px rgba(22,143,240,.11)}.game-command-dock button{height:2.875rem;border:0;border-radius:0.375rem;color:#fff;background:#078ff2;font-size:1.0625rem;font-weight:800}.game-secondary-view{min-height:0;flex:1;overflow-y:auto;background:#eef3fa}.game-secondary-view .game-history-card{margin:0.75rem}.game-rule-card{margin:0.75rem}
@media(max-width:470px){.game-kk-top{flex-basis:11.75rem}.game-room-header{height:2.8125rem;padding-inline:0.5rem}.game-room-name{gap:0.3125rem}.game-room-name>strong{max-width:7.8125rem;font-size:1rem}.game-room-name>span{padding:0.25rem 0.4375rem;font-size:0.75rem}.game-room-balance{height:1.5625rem;padding-inline:0.5rem;font-size:0.75rem}.game-draw-card{height:6.1875rem;padding:0.125rem 0.6875rem 0.3125rem;grid-template-columns:36% minmax(0,1fr)}.game-next-draw>strong{font-size:0.9375rem}.game-next-draw>span,.game-result-head{font-size:0.75rem}.game-countdown{gap:0.1875rem}.game-countdown b{width:1.25rem;height:1.4375rem;font-size:0.9375rem}.game-result-head em{padding:0.25rem 0.4375rem;font-size:0.75rem}.game-draw-balls{gap:0.25rem}.game-result-ball{width:1.625rem;height:1.625rem;flex-basis:1.625rem;border-width:2px;font-size:0.8125rem}.game-result-ball.compact{width:1.375rem;height:1.375rem;flex-basis:1.375rem;font-size:0.75rem}.game-page-tabs{height:2.75rem;gap:0.4375rem;padding-inline:0.375rem}.game-page-tabs button{width:4.875rem;min-height:2.125rem;flex-basis:4.875rem;font-size:0.8125rem}.game-professional-mode{grid-template-columns:clamp(4.875rem,20%,5.875rem) minmax(0,1fr)}.game-bet-categories button{min-height:4.375rem;flex-basis:4.375rem;font-size:0.875rem}.game-bet-groups>h3{height:2.125rem;padding-left:0.5625rem;font-size:0.9375rem}.game-choice-grid{gap:0.4375rem;padding-inline:0.5rem}.game-choice{min-height:3rem}.game-choice strong{font-size:1rem}.game-choice span{font-size:0.75rem}.game-submit-card{min-height:12.9375rem;flex-basis:12.9375rem;padding:0.5625rem 0.625rem 0.6875rem}.game-submit-summary{min-height:2.1875rem}.game-submit-summary>span{padding:0.375rem 0.75rem;font-size:0.75rem!important}.game-submit-summary>span b{font-size:0.875rem}.game-replace-option{padding:0.3125rem 0.5rem;font-size:0.75rem}.game-stake-control{grid-template-columns:2.25rem auto minmax(5.5rem,1fr);gap:0.3125rem!important}.game-stake-edit{width:2.25rem;min-height:2.625rem!important}.game-quick-coins{gap:0.25rem!important}.game-quick-coins button{width:2.5rem;min-height:2.625rem!important;border-width:4px!important;font-size:0.75rem!important}.game-stake-control>input{height:2.6875rem;padding-inline:0.5625rem;font-size:0.75rem}.game-submit-actions{gap:0.4375rem!important}.game-submit-actions button{min-height:4.125rem!important;font-size:0.875rem!important}.game-mode-toggle{right:1rem}.game-mode-toggle>i{width:3.25rem;height:3.25rem}.game-command-dock{grid-template-columns:minmax(0,1fr) 6rem;padding-inline:0.625rem}}
@media(max-height:800px){.game-kk-top{flex-basis:10rem}.game-room-header{height:2.375rem}.game-draw-card{height:5.125rem}.game-page-tabs{height:2.5rem;padding-block:0.1875rem}.game-page-tabs button{width:4.5rem;min-height:2rem;flex-basis:4.5rem;font-size:0.75rem}.game-bet-categories button{min-height:4.125rem;flex-basis:4.125rem;font-size:0.875rem}.game-choice{min-height:2.625rem}.game-choice strong{font-size:0.9375rem}.game-submit-card{min-height:11.3125rem;flex-basis:11.3125rem;padding-block:0.5rem}.game-submit-actions button{min-height:3.625rem!important}.game-mode-toggle>i{width:3.125rem;height:3.125rem}}
@media(max-width:360px){.game-room-name>strong{max-width:6.375rem}.game-page-tabs{gap:0.3125rem}.game-page-tabs button{width:4.5rem;flex-basis:4.5rem;font-size:0.75rem}.game-submit-card{padding-inline:0.4375rem}.game-stake-control{grid-template-columns:2rem auto minmax(4.75rem,1fr)}.game-stake-edit{width:2rem}.game-quick-coins button{width:2.25rem}.game-stake-control>input{padding-inline:0.375rem;font-size:0.75rem}}

/* 下分页面直接维护玩家自己的收款资料，避免离开当前申请流程。 */
.finance-payment-editor{display:grid;gap:0.8125rem;padding:1rem;border:1px solid #d5e7f3;border-radius:0.9375rem;background:#f7fbfe}
.finance-payment-editor>header{display:flex;align-items:center;justify-content:space-between;gap:0.75rem}
.finance-payment-editor>header small,.finance-payment-editor>header strong{display:block}
.finance-payment-editor>header small{color:#8299ad;font-size:0.75rem}
.finance-payment-editor>header strong{margin-top:0.25rem;color:#294c66;font-size:0.875rem}
.finance-payment-editor>header>span{padding:0.3125rem 0.5rem;border-radius:62.4375rem;color:#268ccf;background:#e7f5ff;font-size:0.75rem}
.finance-payment-editor>img{display:block;width:9.375rem;height:9.375rem;margin:auto;border:1px solid #d7e6f0;border-radius:0.875rem;object-fit:contain;background:#fff}
.finance-payment-empty{display:grid;min-height:5.5rem;place-items:center;border:1px dashed #c6dce9;border-radius:0.75rem;color:#7891a6;font-size:0.75rem}
.finance-payment-editor>label,.finance-payment-fields label{display:grid;gap:0.4375rem;color:#6e879f;font-size:0.75rem}
.finance-payment-editor input{width:100%;height:2.625rem;padding:0 0.75rem;border:1px solid #d3e4ef;border-radius:0.625rem;color:#244862;background:#fff;outline:0}
.finance-payment-editor input[type=file]{height:auto;padding:0.5625rem}
.finance-payment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.625rem}
.finance-payment-fields label:last-child{grid-column:1/-1}

@media(max-width:470px){.finance-payment-fields{grid-template-columns:1fr}.finance-payment-fields label:last-child{grid-column:auto}}

/* Player固定为手机宽度，内部布局统一按430px容器收敛，避免桌面宽视口继续套用双栏规则。 */
html,body{width:100%;max-width:100%;overflow-x:hidden}
body,.phone-page,.page-scroll,.tab-panel{min-width:0}
img,svg,video,canvas{max-width:100%}
button,input,select,textarea{min-width:0;max-width:100%}
.topbar-logo,.account-copy,.section-title>div,.sub-header>div,.mine-hero>div,.mine-card-head>div,.finance-card-head>div,.agent-list-head>div,.benefit-wheel-card header>div,.benefit-log-card header>div,.finance-payment-editor>header>div{min-width:0}
.topbar-logo strong,.sub-header h1,.mine-hero h1{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-copy>div,.account-copy p,.mine-balance div,.agent-reward-stats>div{min-width:0}
.account-copy>div strong,.account-copy>div small{display:block;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}
.account-copy b,.mine-balance strong,.agent-reward-stats strong{overflow:hidden;max-width:100%;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}
.payment-preview strong,.payment-preview small,.dialog-card>p,.dialog-meta b,.player-message>div,.game-rule-card p,.finance-payment-editor input,.payment-root input{overflow-wrap:anywhere;word-break:break-word}

/* 大厅、列表和个人中心始终使用手机单列结构。 */
.topbar{height:3.75rem;padding:0 1rem}
.topbar-logo img{width:2rem;height:2rem}
.topbar-logo strong{max-width:none;font-size:0.875rem}
.top-actions{flex:0 0 auto}
.top-actions button{width:2.125rem;height:2.125rem}
.hero{aspect-ratio:390/158;border-radius:0 0 1.25rem 1.25rem}
.hero-copy{left:5%;max-width:52%}
.hero-copy span,.room-copy em{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero-copy strong{font-size:1.0625rem;overflow-wrap:anywhere}
.hero-copy small{display:none}
.notice-bar{margin:0.5625rem 0.75rem 0;padding-block:0.4375rem}
.account-card{grid-template-columns:minmax(0,1fr) auto;gap:0.5rem;margin:0.625rem 0.75rem 0;padding:1rem}
.account-copy>span{display:none}
.account-copy>div{display:block}
.account-copy>div small{display:block;margin-top:0.125rem}
.account-copy p{margin-top:0.4375rem}
.account-copy b{font-size:clamp(1.3125rem,7vw,1.75rem)}
.account-copy em{display:none}
.quick-actions{flex:0 0 auto;gap:clamp(0.3125rem,2vw,0.5625rem)}
.quick-actions button{display:grid!important;min-width:0}
.quick-actions i{width:clamp(2.125rem,9vw,2.375rem);height:clamp(2.125rem,9vw,2.375rem)}
.section-title{margin:1.4375rem 1rem 0.6875rem}
.featured-rooms{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,7.5625rem);gap:0.5625rem;padding:0 0.75rem}
.room-copy{top:0.9375rem;left:0.9375rem;max-width:68%}
.room-copy strong{display:-webkit-box;overflow:hidden;font-size:1rem;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.room-copy span{display:none}
.featured-room:first-child .room-copy strong{font-size:1.125rem}
.home-activities{grid-template-columns:1fr;padding:1.125rem 0.75rem 0}
.sub-header{gap:0.75rem;padding:1.25rem 1rem 0.9375rem}
.sub-header>button{flex:0 0 auto}
.sub-header>div{flex:1;overflow:hidden}
.sub-header>span{flex:0 1 auto;max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.game-filters,.sub-tabs{padding-inline:0.75rem;scrollbar-width:none}
.game-filters::-webkit-scrollbar,.sub-tabs::-webkit-scrollbar,.payment-tabs::-webkit-scrollbar,.chat-quick-replies::-webkit-scrollbar,.player-service-questions>div::-webkit-scrollbar{display:none}
.room-list{grid-template-columns:1fr;gap:0.625rem;padding:0.1875rem 0.75rem 1.25rem}
.player-room-group>div{grid-template-columns:1fr;gap:0.5625rem;padding:0.5625rem}
.room-item>.room-entry{grid-template-columns:5.875rem minmax(0,1fr);min-height:6.875rem}
.room-item>.room-entry>span{padding:0.75rem 0.625rem}
.room-item>.room-entry strong{padding-right:3.875rem}
.activity-list{grid-template-columns:1fr;gap:0.625rem;padding:0.75rem}
.mine-hero{gap:0.75rem;padding:1.375rem 1rem 3.9375rem}
.mine-hero>button,.mine-avatar{flex:0 0 auto}
.mine-avatar{width:3.8125rem;height:3.8125rem;border-radius:1.25rem}
.mine-hero>div{flex:1;overflow:hidden}
.mine-hero p{overflow-wrap:anywhere}
.mine-balance{margin-inline:0.75rem;padding-inline:0.125rem}
.mine-balance div{padding-inline:0.4375rem}
.mine-balance strong{font-size:clamp(0.75rem,3.8vw,0.9375rem)}
.mine-card{margin-inline:0.75rem;padding:1.125rem}
.auth-form .form-pair,.mine-card form,.payment-root form{grid-template-columns:1fr}
.mine-card form .form-error,.mine-card form .primary-button,.payment-root form .form-error,.payment-root form .primary-button,.payment-current-image,.payment-current-empty,.payment-clear{grid-column:1}

/* 表单、记录、客服、代理和福利按固定手机容器重新排布。 */
.finance-card{margin:0.75rem;padding:1.125rem}
.finance-card .form-pair,.finance-payment-fields{grid-template-columns:1fr}
.finance-payment-fields label:last-child{grid-column:auto}
.finance-card-head{gap:0.625rem}
.finance-card-head>span,.finance-payment-editor>header>span{flex:0 0 auto}
.payment-preview.image{align-items:flex-start}
.payment-preview.image img{flex:0 0 5.625rem}
.player-record-list{padding-inline:0.75rem}
.player-record-list article{grid-template-columns:2.5rem minmax(0,1fr)}
.player-record-list article>b{grid-column:2;justify-self:start;max-width:100%;overflow-wrap:anywhere;text-align:left}
.player-service-root,.agent-root{margin-inline:0;padding-inline:0}
.chat-card,.contact-card,.agent-card{border-inline:0;border-radius:0}
.chat-card form{grid-template-columns:minmax(0,1fr) 5.5rem}
.chat-card form .primary-button{min-height:3.625rem}
.player-service-messages{height:min(26.25rem,calc(100dvh - 18.75rem));min-height:16.25rem}
.player-message{max-width:88%}
.player-message>div{max-width:100%}
.agent-card p{overflow-wrap:anywhere;word-break:break-word}
.invite-link{flex-direction:column}
.invite-link button{height:2.625rem}
.agent-player-list article{grid-template-columns:2.625rem minmax(0,1fr);padding-inline:1.0625rem}
.agent-player-list article>div{min-width:0}
.agent-player-list article>b{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-player-list strong,.agent-player-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-reward-list article{grid-template-columns:minmax(0,1fr) auto;padding-inline:1.0625rem}
.agent-reward-list article>div{min-width:0}
.agent-reward-list article>span{grid-column:1;overflow-wrap:anywhere}
.agent-reward-list article>b{grid-row:1/3;grid-column:2;max-width:100%;overflow-wrap:anywhere}
.agent-reward-stats{padding-inline:0.75rem}
.agent-reward-stats>div{min-width:0;padding:1rem}
.agent-reward-stats strong{font-size:clamp(1rem,5vw,1.25rem)}
.benefit-root{padding:0.75rem 0 1.75rem}
.benefit-wheel-grid{grid-template-columns:1fr}
.benefit-checkin-card,.benefit-wheel-card,.benefit-log-card{border-inline:0;border-radius:0}
.benefit-checkin-card{padding:1.125rem 0.875rem}
.benefit-checkin-copy,.benefit-checkin-copy p{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.benefit-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:0.1875rem}
.benefit-days div{min-width:0}
.benefit-days i{width:min(1.9375rem,100%);height:auto;aspect-ratio:1;border-radius:0.625rem}
.benefit-days span{font-size:0.75rem;white-space:nowrap}
.benefit-checkin-action>div{flex:1 1 auto;min-width:0}
.benefit-checkin-action .primary-button{min-width:0;flex:0 1 10rem}
.benefit-wheel-card{padding:1.1875rem}
.benefit-wheel-stage{width:min(14.125rem,100%);height:auto;aspect-ratio:1}
.benefit-wheel-value{max-width:24%;overflow:hidden}
.benefit-wheel-value b{overflow:hidden;font-size:clamp(0.75rem,3vw,0.8125rem);text-overflow:ellipsis;white-space:nowrap}
.benefit-header>span{display:none}
.benefit-log-list{padding-inline:0.875rem}
.benefit-log-list article{grid-template-columns:2.375rem minmax(0,1fr)}
.benefit-log-list article>div{min-width:0}
.benefit-log-list strong,.benefit-log-list small{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.benefit-log-icon{width:2.375rem;height:2.375rem}
.benefit-log-list time{grid-column:2;overflow-wrap:anywhere}

/* 聊天卡片与弹窗允许长文本换行，矮屏内容保持可滚动。 */
.group-chat-root{padding:0.75rem 0 1.75rem}
.group-chat-card{border-inline:0;border-radius:0}
.group-chat-messages{overflow-x:hidden;padding-inline:0.75rem}
.group-chat-message{width:94%;max-width:100%;min-width:0;grid-template-columns:2.25rem minmax(0,1fr);overflow:hidden}
.group-chat-message.mine{grid-template-columns:minmax(0,1fr) 2.25rem}
.group-chat-avatar{width:2.25rem;height:2.25rem;border-radius:0.6875rem}
.group-chat-message.kind-3{width:96%}
.group-chat-message>div,.group-chat-message header,.group-chat-message p{min-width:0;max-width:100%}
.group-chat-message>div{overflow:hidden}
.group-chat-message header strong{min-width:0;flex:1}
.player-forecast-card,.player-red-packet-card{width:100%;min-width:0;max-width:100%}
.player-red-packet-card{grid-template-columns:2.375rem minmax(0,1fr) auto}
.player-red-packet-card>span{width:2.375rem;height:2.375rem}
.player-red-packet-card>div{min-width:0}
.group-chat-form{grid-template-columns:minmax(0,1fr) 5.5rem;padding:0.6875rem 0.75rem calc(0.8125rem + env(safe-area-inset-bottom))}
.group-chat-form .primary-button{min-height:3.625rem}
.dialog{overflow-y:auto;padding:max(0.75rem,env(safe-area-inset-top)) max(0.75rem,env(safe-area-inset-right)) max(0.75rem,env(safe-area-inset-bottom)) max(0.75rem,env(safe-area-inset-left))}
.dialog-card{width:min(26.875rem,100%);max-height:calc(100dvh - 1.5rem);overflow-x:hidden;padding:1.5rem;overscroll-behavior:contain}
.dialog-card>h2{padding-right:2.625rem;overflow-wrap:anywhere}
.dialog-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
.dialog-meta span{min-width:0}
.activity-dialog-card>img{width:calc(100% + 3rem);margin:-1.5rem -1.5rem 1.3125rem}
.player-red-packet-shell{overflow-y:auto;padding:0}
.player-red-packet-head h2{padding-inline:2.125rem;color:#fff;overflow-wrap:anywhere}
.player-red-packet-head p{overflow-wrap:anywhere;word-break:break-word}
.player-red-packet-claims article{grid-template-columns:2.1875rem minmax(0,1fr) minmax(0,7.5rem)}
.player-red-packet-claims article>div{min-width:0}
.player-red-packet-claims strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-red-packet-claims b{min-width:0;max-width:7.5rem;overflow-wrap:anywhere;text-align:right;font-size:clamp(0.75rem,3vw,0.75rem)}
html:has(.dialog:not([hidden])),body:has(.dialog:not([hidden])){overflow:hidden}

/* KK游戏房间压缩动态标题、开奖号码和底部操作区，避免互相覆盖。 */
.game-room-header{display:grid;grid-template-columns:1.5rem minmax(0,1fr) auto}
.game-room-name{min-width:0;overflow:hidden}
.game-room-name>strong{min-width:0;max-width:none;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.game-room-name>span,.game-room-name>i,.game-room-balance{flex:0 0 auto}
.game-room-balance{max-width:7.25rem;overflow:hidden}
.game-room-balance b{overflow:hidden;text-overflow:ellipsis}
.game-result{overflow:hidden}
.game-draw-balls{min-width:0;flex-wrap:nowrap;overflow:hidden}
.game-result-ball.compact{width:auto;min-width:0;max-width:1.375rem;height:auto;flex:1 1 0;aspect-ratio:1;font-size:clamp(0.75rem,2.5vw,0.75rem)}
.game-page-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(0.25rem,1.6vw,0.4375rem);overflow:hidden}
.game-page-tabs button{width:auto;min-width:0;flex:initial;overflow:hidden;padding-inline:0.125rem;text-overflow:ellipsis;white-space:nowrap}
.game-submit-summary{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:0.4375rem!important}
.game-submit-summary>span{position:static;min-width:0;justify-self:end;overflow:hidden;max-width:100%;padding-inline:0.6875rem;transform:none;text-overflow:ellipsis}
.game-submit-summary>span b{overflow:hidden;text-overflow:ellipsis}
.game-replace-option{min-width:0}
.game-stake-control{grid-template-columns:2.25rem minmax(0,auto) minmax(4.875rem,1fr);gap:0.3125rem!important}
.game-stake-edit{width:2.25rem}
.game-quick-coins{min-width:0;gap:0.25rem!important}
.game-quick-coins button{width:clamp(2.125rem,9.3vw,2.5rem);min-width:0}
.game-stake-control>input{width:100%}
.game-bet-history,.game-draw-history{grid-template-columns:minmax(0,1fr) auto;gap:0.5rem 0.75rem}
.game-bet-history>div:first-child,.game-draw-history>div:first-child{min-width:0}
.game-bet-history>p,.game-draw-history>div:nth-child(2){grid-row:2;grid-column:1/-1;min-width:0;white-space:normal;overflow-wrap:anywhere}
.game-history-result{grid-row:1;grid-column:2;min-width:0;max-width:9.375rem}
.game-draw-history>span{grid-row:1;grid-column:2;max-width:9.0625rem;overflow-wrap:anywhere}

@media(max-width:340px){.account-card{padding-inline:0.8125rem}.quick-actions span{font-size:0.75rem}.mine-balance strong{font-size:0.75rem}.benefit-checkin-action{align-items:stretch;flex-direction:column}.benefit-checkin-action .primary-button{width:100%;flex-basis:auto}.chat-card form,.group-chat-form{grid-template-columns:1fr}.chat-card form .primary-button,.group-chat-form .primary-button{min-height:2.75rem}.dialog-meta{grid-template-columns:1fr}.game-room-name>i{display:none}.game-room-balance{max-width:5.75rem;padding-inline:0.375rem;font-size:0.75rem}.game-stake-control{grid-template-columns:2rem minmax(0,1fr)}.game-stake-edit{width:2rem}.game-quick-coins{grid-row:2;grid-column:1/-1;display:grid!important;grid-template-columns:repeat(4,1fr)}.game-quick-coins button{width:100%;border-radius:0.5rem!important}.game-stake-control>input{grid-row:1;grid-column:2}}

/* 首页轮播使用原生scroll-snap：图片全幅拉伸，文案只在点击后的详情中展示。 */
.hero{width:100%;max-width:none;aspect-ratio:390/158;margin:0 0 clamp(1rem,2.4vw,1.375rem);border-radius:0!important;box-shadow:none!important;background:#d9effc}
.hero-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:manipulation}
.hero-track::-webkit-scrollbar{display:none}
.hero-slide{position:relative;display:block;width:100%;height:100%;min-width:100%;flex:0 0 100%;overflow:hidden;padding:0;border:0;scroll-snap-align:start;scroll-snap-stop:always;color:inherit;background:#d9effc;text-align:left;cursor:pointer}
.hero-slide-fallback{cursor:default}
.hero-slide>img{display:block;width:100%;height:100%;object-fit:fill;object-position:center;pointer-events:none;user-select:none}
.hero-dots{right:0.5625rem;bottom:0.3125rem;gap:0;align-items:center;padding:0.0625rem 0.25rem;border-radius:62.4375rem;background:rgba(24,61,91,.12);backdrop-filter:blur(4px)}
.hero-dots button{position:relative;width:1.5rem;height:1.5rem;padding:0;border:0;border-radius:62.4375rem;background:transparent;cursor:pointer}
.hero-dots button:before{position:absolute;top:50%;left:50%;width:0.4375rem;height:0.4375rem;border-radius:62.4375rem;content:"";background:rgba(255,255,255,.62);box-shadow:0 1px 4px rgba(34,83,121,.2);transform:translate(-50%,-50%);transition:.18s}
.hero-dots button.active:before{width:1.375rem;background:#fff}
.hero-dots button:focus-visible{outline:2px solid #237fc4;outline-offset:0.125rem}

/* 滚动公告与轮播保留明确留白，避免卡片与图片粘连或叠压。 */
.notice-bar{position:relative;z-index:5;margin:0 1.25rem;padding:0.5625rem 0.75rem;border-radius:0.875rem;background:rgba(255,255,255,.96);box-shadow:0 8px 20px rgba(53,111,155,.12);backdrop-filter:blur(10px)}
.notice-bar button{min-height:1.75rem;padding:0 0.3125rem;font-weight:800;cursor:pointer}
.notice-list{display:grid;gap:0.625rem;padding:0.8125rem 0.75rem 1.75rem}
.notice-card{position:relative;display:grid;gap:0.5625rem;width:100%;min-width:0;padding:1rem 1.0625rem;border:1px solid #d9e9f4;border-radius:1.0625rem;color:#31526c;background:#fff;box-shadow:0 8px 20px rgba(48,103,147,.06);text-align:left;cursor:pointer}
.notice-card>span{display:flex;align-items:center;justify-content:space-between;gap:0.75rem}
.notice-card b{color:#2c91da;font-size:0.75rem}
.notice-card time{color:#97a9b8;font-size:0.75rem;font-weight:500}
.notice-card p{display:-webkit-box;overflow:hidden;margin:0;padding-right:2.75rem;color:#607b91;font-size:0.75rem;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}
.notice-card em{position:absolute;right:1rem;bottom:1.0625rem;color:#3297df;font-size:0.75rem;font-style:normal;font-weight:800}
.notice-card:active{border-color:#62b5ec;background:#f5fbff;transform:translateY(0.0625rem)}
.lobby-content-dialog-card{width:min(24.375rem,calc(100% - 1.625rem));max-height:calc(100dvh - 1.875rem);overflow-y:auto;padding:1.75rem 1.5625rem}
.lobby-content-dialog-card h2{margin:0 0 0.6875rem;color:#244b68;font-size:1.3125rem;line-height:1.35;overflow-wrap:anywhere}
.lobby-content-dialog-card>p{max-height:min(52dvh,26.875rem);overflow-y:auto;margin:0 0 1.25rem;color:#607b91;font-size:0.75rem;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}
.lobby-content-dialog-card>.primary-button{width:100%}

/* Player端全部收款二维码也统一为点击图片选择、右上红色×清除。 */
.player-media-picker{position:relative;display:grid;width:min(14.375rem,100%);grid-column:1/-1;gap:0.5rem;justify-self:center;margin:0.125rem auto}
.player-media-picker-preview{position:relative;display:grid;width:100%;aspect-ratio:1;place-items:center;overflow:hidden;border:1px dashed #bcd9eb;border-radius:1.0625rem;background:#f6fbfe;cursor:pointer;transition:.18s}
.player-media-picker-preview:hover{border-color:#43a4e9;background:#eef9ff;box-shadow:0 0 0 3px rgba(45,157,244,.08)}
.player-media-picker-preview:has(input:focus-visible){outline:2px solid #318fda;outline-offset:0.125rem}
.player-media-picker-input{position:absolute!important;width:0.0625rem!important;height:0.0625rem!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0!important;opacity:0;clip-path:inset(50%)}
.player-media-picker-preview img{display:block;width:100%;height:100%;padding:0.5625rem;object-fit:contain;background:#fff}
.player-media-picker-empty{display:grid;justify-items:center;gap:0.4375rem;padding:1.125rem;color:#7894a9;text-align:center}
.player-media-picker-empty b{color:#3199e4;font-size:1.8125rem;font-weight:400;line-height:1}
.player-media-picker-empty small{font-size:0.75rem;font-weight:800;line-height:1.5}
.player-media-picker-clear{position:absolute;z-index:3;top:-0.5rem;right:-0.5rem;display:grid;width:1.75rem;height:1.75rem;padding:0;place-items:center;border:2px solid #fff;border-radius:50%;color:#fff;background:#ec596a;box-shadow:0 5px 13px rgba(80,46,54,.25);font-size:1.125rem;font-weight:900;line-height:1;cursor:pointer}
.player-media-picker-clear[hidden]{display:none}
.player-media-picker-clear:disabled{cursor:wait;opacity:.5}
.player-media-picker-note{color:#8aa0b2;font-size:0.75rem;line-height:1.6;text-align:center}
.player-media-picker.uploading{opacity:.65}
.finance-payment-editor>.player-media-picker{margin-block:0.1875rem}

@media(max-width:700px){.notice-bar{margin-inline:0.75rem}}
@media(max-width:340px){.notice-bar{margin-inline:0.5rem}.lobby-content-dialog-card{padding:1.5rem 1.1875rem}.player-media-picker{width:min(13.125rem,100%)}}

/* 参考站式 Player 重构：固定 500px 手机壳、平面白卡、左侧游戏分类与中心充值导航。 */
:root{
  --blue:#1677ff;
  --blue-deep:#0f66e8;
  --ink:#3c3c3c;
  --muted:#949494;
  --line:#eee;
  --soft:#f3f6fa;
  --white:#fff;
  --danger:#ee596a;
  color:#3c3c3c;
  background:#f3f6fa;
}
html,body{background:#f3f6fa;color:#3c3c3c}
body{font-size:0.875rem}
.phone-page,.bottom-nav{width:min(31.25rem,100%)}
.phone-page{background:#f3f6fa;box-shadow:0 0 26px rgba(39,59,89,.1)}
.page-scroll{padding-bottom:6.375rem}
.tab-panel{background:#f3f6fa}
.primary-button,.auth-submit{border-radius:62.4375rem;background:#1677ff;box-shadow:none}
.primary-button:hover,.auth-submit:hover{background:#0f6fee}
.brand-mark img,.topbar-logo img{object-fit:contain!important}
.featured-room img,.featured-room.has-icon img,.room-item>.room-entry>img,.home-activity img,.activity-card img{object-fit:cover!important}

/* 顶栏与内页标题采用参考站居中标题结构。 */
.topbar{position:relative;height:4.25rem;padding:0 1.25rem;border:0;background:#fff}
.topbar-logo{position:absolute;left:50%;max-width:calc(100% - 7rem);gap:0.5625rem;transform:translateX(-50%)}
.topbar-logo img{width:2.375rem;height:2.375rem}
.topbar-logo strong{max-width:11.875rem;color:#272727;font-size:1.0625rem;font-weight:800}
.top-actions{margin-left:auto}
.top-actions button,.sub-header>button{border:0;color:#313d50;background:transparent;box-shadow:none}
.top-actions button{width:2.5rem;height:2.5rem}
.top-actions svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.sub-header{position:sticky;z-index:19;top:0;height:4.125rem;min-height:4.125rem;gap:0;padding:0 1.125rem;border-bottom:1px solid #eee;background:#fff}
.sub-header>button{width:2.5rem;height:2.5rem;flex:0 0 2.5rem;border-radius:50%;font-size:1.875rem;font-weight:300}
.sub-header>button:hover{background:#f3f6fa}
.sub-header>div{position:absolute;left:50%;width:min(58%,16.25rem);overflow:hidden;transform:translateX(-50%);text-align:center}
.sub-header small{display:none}
.sub-header h1{margin:0;color:#282828;font-size:1.25rem;font-weight:500;line-height:1.25}
.sub-header>span{max-width:26%;margin-left:auto;overflow:hidden;color:#949494;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}

/* 首页：公告和账户快捷入口形成一整张白卡，房间仍保留一大两小布局。 */
.hero{margin-bottom:1.0625rem;background:#e7edf4}
.notice-bar{min-height:2.8125rem;margin:0 1.0625rem;padding:0.5rem 0.875rem;border:0;border-radius:1.25rem 1.25rem 0 0;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09);backdrop-filter:none}
.notice-icon{width:1.375rem;height:1.375rem;color:#697487;background:transparent;font-size:1.125rem}
.notice-bar p{color:#747b86;font-size:0.75rem}
.notice-bar>div{position:relative;overflow:hidden}
.notice-bar p{width:max-content;min-width:100%;will-change:transform}
.notice-bar p.scrolling{min-width:0;animation:player-notice-marquee var(--notice-duration,12s) linear .6s infinite}
.notice-bar p.scrolling:after{content:attr(data-marquee);padding-left:3rem}
@keyframes player-notice-marquee{from{transform:translateX(0)}to{transform:translateX(var(--notice-end,-100%))}}
@media(prefers-reduced-motion:reduce){.notice-bar p.scrolling{width:100%;overflow:hidden;animation:none;text-overflow:ellipsis}.notice-bar p.scrolling:after{display:none}}
.notice-bar button{min-height:1.875rem;color:#1677ff;font-size:0.75rem;font-weight:700}
.account-card{display:grid;grid-template-columns:1fr;gap:0.875rem;margin:0 1.0625rem 1.125rem;padding:0.875rem 1.0625rem 1.0625rem;border:0;border-radius:0 0 1.25rem 1.25rem;background:#fff;box-shadow:0 3px 6px rgba(0,0,0,.09)}
.account-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(6.5625rem,45%);gap:0.875rem;align-items:center;padding-bottom:0.8125rem;border-bottom:1px solid #eee}
.account-copy{width:100%;border-top:0;border-right:0;border-left:0;background:transparent;text-align:left;font:inherit}
.account-copy>span{display:none}
.account-copy>div{min-width:0;margin:0}
.account-copy>div strong{color:#333;font-size:1rem;font-weight:700}
.account-copy>div small{margin-top:0.25rem;color:#949494;font-size:0.75rem}
.account-copy p{display:grid;min-width:0;justify-items:end;gap:0.1875rem;margin:0;text-align:right}
.account-copy b{display:block;width:100%;overflow:hidden;color:#3c3c3c;font-size:1.5rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.account-copy em{display:block;color:#949494;font-size:0.75rem}
.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.4375rem}
.quick-actions button{display:grid!important;gap:0.4375rem;justify-items:center;min-width:0;padding:0;border:0;color:#3c3c3c;background:transparent;font-size:0.75rem}
.quick-actions i{display:grid;width:3rem;height:3rem;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#48b4ff,#1677ff);box-shadow:0 3px 8px rgba(22,119,255,.22)}
.quick-actions svg{width:1.5625rem;height:1.5625rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.guest-player .account-card{grid-template-columns:minmax(7.625rem,1fr) auto;align-items:center;gap:0.5rem;padding-top:0.8125rem}
.guest-player .account-copy{display:block;padding:0;border:0}
.guest-player .account-copy>div strong{font-size:1.125rem}
.guest-player .account-copy>div small{margin-top:0.375rem;font-size:0.75rem}
.guest-player .account-copy p{display:none}
.guest-player .quick-actions{gap:0.25rem}
.guest-player .quick-actions i{width:2.875rem;height:2.875rem}
.section-title{align-items:center;margin:1.5rem 1.1875rem 0.8125rem}
.section-title small{display:none}
.section-title h2{margin:0;color:#333;font-size:1.1875rem;font-weight:600}
.section-title button{color:#1677ff;font-size:0.75rem}
.featured-rooms{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,clamp(7.375rem,29vw,9.0625rem));gap:0.625rem;padding:0 1.0625rem}
.featured-room{border:0;border-radius:1.0625rem;background:#eaf4ff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
.featured-room .room-copy{top:1rem;left:0.9375rem;max-width:72%}
.featured-room .room-copy strong{color:#2f3e55;font-size:1rem;font-weight:700;text-shadow:0 1px 0 rgba(255,255,255,.55)}
.featured-room:first-child .room-copy strong{font-size:1.1875rem}
.featured-room .room-copy em{color:#1677ff;background:rgba(255,255,255,.9)}
.featured-room .room-rule-button{top:0.5rem;right:0.5rem;min-height:1.5625rem;padding:0 0.4375rem;border:0;color:#1677ff;background:rgba(255,255,255,.9);font-size:0.75rem;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.home-activities{grid-template-columns:1fr;gap:1.125rem;padding:1.5625rem 1.0625rem 0.5rem}
.home-activity{display:block;overflow:hidden;padding:0;border:0;border-radius:1.0625rem;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
.home-activity img{display:block;width:100%;height:auto;aspect-ratio:878/329;border-radius:0;background:#e9eef5}
.home-activity div{display:none}

/* 活动与公告使用参考站的海报流和纯白消息卡。 */
.activity-list{display:grid;grid-template-columns:1fr;gap:1.4375rem;padding:1.4375rem 1.4375rem 7rem}
.activity-card{overflow:hidden;border:0;border-radius:1.0625rem;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
.activity-card img{display:block;width:100%;height:auto;aspect-ratio:878/329;background:#e9eef5}
.activity-card div{display:none}
#activity-dialog.activity-detail-view{z-index:18;right:auto;left:50%;display:flex;width:min(31.25rem,100%);height:100dvh;flex-direction:column;place-items:initial;overflow-y:auto;padding:0 0 5.125rem;background:#f3f6fa;transform:translateX(-50%);backdrop-filter:none}
.activity-detail-header{position:sticky;z-index:2;top:0;display:flex;min-height:4.125rem;flex:0 0 4.125rem;align-items:center;justify-content:center;border-bottom:1px solid #eee;background:#fff}
.activity-detail-header button{position:absolute;left:1.0625rem;display:grid;width:2.5rem;height:2.5rem;place-items:center;padding:0;border:0;border-radius:50%;color:#2b3340;background:transparent;font-size:1.875rem;font-weight:300}
.activity-detail-header button:hover{background:#f3f6fa}
.activity-detail-header h1{max-width:68%;overflow:hidden;margin:0;color:#282828;font-size:1.125rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
#activity-dialog .activity-dialog-card{width:calc(100% - 2.875rem);max-height:none;overflow:visible;margin:1.4375rem;padding:1.8125rem;border:0;border-radius:1.4375rem;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
#activity-dialog .activity-dialog-card>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:878/329;margin:0 0 1.4375rem;border-radius:1.0625rem;object-fit:cover!important;background:#e9eef5}
#activity-dialog .activity-dialog-card>.dialog-code{display:inline-flex;margin:0 0 0.5625rem;padding:0.375rem 0.6875rem;border-radius:62.4375rem}
#activity-dialog .activity-dialog-card h2{margin:0 0 0.9375rem;color:#333;font-size:1.25rem;line-height:1.4}
#activity-dialog .activity-dialog-card>p{margin:0;color:#555;font-size:0.8125rem;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.notice-list{gap:0.75rem;padding:1.0625rem 1.0625rem 7rem}
.notice-card{gap:0.625rem;padding:1.0625rem 1.125rem;border:0;border-radius:1.25rem;color:#3c3c3c;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.notice-card b{color:#1677ff;font-size:0.75rem}
.notice-card time{color:#a0a0a0;font-size:0.75rem}
.notice-card p{padding-right:3.125rem;color:#6f6f6f;font-size:0.8125rem;line-height:1.7}
.notice-card em{color:#1677ff;font-size:0.75rem}
.notice-card:active{border-color:transparent;background:#f8fbff}

/* 游戏大厅按参考站改为左分类、右侧三列封面；下注房间本身只统一皮肤。 */
#game-panel:not([hidden]){display:grid;min-height:calc(100dvh - 5.125rem);grid-template-columns:5.875rem minmax(0,1fr);grid-template-rows:4.125rem 4.0625rem minmax(calc(100dvh - 13.3125rem),auto);align-items:start;background:linear-gradient(to right,#fff 0 5.875rem,#f3f6fa 5.875rem)}
#game-panel>.sub-header{grid-row:1;grid-column:1/-1;width:100%}
#game-panel>.game-filters{position:sticky;top:4.125rem;display:flex;height:calc(100dvh - 4.125rem);grid-row:2/4;grid-column:1;flex-direction:column;gap:0.75rem;overflow-y:auto;padding:1rem 0.4375rem 6.875rem;background:#fff}
#game-panel>.game-filters button{width:100%;height:4rem;min-height:4rem;flex:0 0 4rem;padding:0 0.25rem;border:0;border-radius:0.6875rem;color:#7c8497;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09);font-size:0.75rem}
#game-panel>.game-filters button.active{color:#fff;background:#1677ff;box-shadow:0 4px 9px rgba(22,119,255,.23)}
.game-search{display:flex;height:2.8125rem;grid-row:2;grid-column:2;align-items:center;align-self:center;gap:0.5rem;margin:0.625rem 0.6875rem;padding:0 0.875rem;border:1px solid #1677ff;border-radius:1.5rem;background:#fff}
.game-search svg{width:1.25rem;height:1.25rem;flex:0 0 1.25rem;fill:none;stroke:#333;stroke-linecap:round;stroke-width:1.7}
.game-search input{width:100%;height:100%;padding:0;border:0;outline:0;color:#3c3c3c;background:transparent;font-size:0.8125rem}
.game-search input::placeholder{color:#949494}
#game-panel>.room-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-row:3;grid-column:2;align-content:start;gap:1.125rem 0.5rem;min-width:0;padding:0.5rem 0.625rem 7rem;background:#f3f6fa}
#game-panel .room-item{display:block;min-width:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
#game-panel .room-item>.room-entry{display:block;width:100%;min-height:0;background:transparent}
#game-panel .room-item>.room-entry>img{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:0.875rem;background:#e1e8f1;box-shadow:0 2px 7px rgba(0,0,0,.08)}
#game-panel .room-item>.room-entry>span{display:block;min-width:0;padding:0.4375rem 0.0625rem 0;text-align:center}
#game-panel .room-item>.room-entry strong{display:-webkit-box;min-height:2.65em;padding:0;overflow:hidden;color:#3c3c3c;font-size:0.75rem;line-height:1.32;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
#game-panel .room-item>.room-entry em{margin-top:0.1875rem;color:#1677ff;font-size:0.75rem}
#game-panel .room-item>.room-entry small{margin-top:0.1875rem;color:#949494;font-size:0.75rem}
#game-panel .room-rule-button{top:0.3125rem;right:0.3125rem;min-height:1.25rem;padding:0 0.3125rem;border:0;color:#1677ff;background:rgba(255,255,255,.93);font-size:0.75rem;box-shadow:0 2px 5px rgba(0,0,0,.1)}
#game-panel .room-item.sleep:after{top:0.3125rem;left:0.3125rem;padding:0.25rem 0.3125rem;font-size:0.75rem}
#game-panel>.room-list.merged{grid-template-columns:1fr}
#game-panel .player-room-group{border:0;border-radius:1.125rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
#game-panel .player-room-group>header{padding:0.8125rem 0.875rem;border-bottom:1px solid #eee;background:#fff}
#game-panel .player-room-group>header strong{color:#3c3c3c}
#game-panel .player-room-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 0.5rem;padding:0.625rem}
body.player-room-active,.game-room-panel,.game-bet-shell,.game-bet-groups,.game-group-mode,.game-secondary-view{background:#f3f6fa}
.game-kk-top{background:linear-gradient(135deg,#f4f8ff,#e9f1ff)}
.game-page-tabs button.active,.game-choice.active,.game-command-dock button,.game-submit-actions .game-append-button:not(:disabled){background:#1677ff!important}
.game-mode-toggle>i{background:#1677ff;box-shadow:0 5px 14px rgba(22,119,255,.25)}
.game-submit-card{border-radius:1.375rem 1.375rem 0 0}

/* 财务、客服、代理、福利沿用业务结构，统一参考站的间距与组件尺寸。 */
.sub-tabs{display:flex;gap:0.5625rem;padding:1.0625rem 1.125rem 0.875rem}
.sub-tabs button,.payment-tabs button{min-height:3rem;flex:1;border:1px solid #eee;border-radius:62.4375rem;color:#777;background:#fff;font-size:0.75rem}
.sub-tabs button.active,.payment-tabs button.active{border-color:#1677ff;color:#fff;background:#1677ff;box-shadow:none}
.finance-card,.chat-card,.contact-card,.agent-card{margin:0 1.0625rem 1.5rem;padding:1.3125rem;border:0;border-radius:1.4375rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.finance-card-head h2{color:#333;font-size:1.1875rem}
.finance-card-head small,.agent-list-head small{color:#1677ff}
.finance-card form>label,.finance-card .form-pair>label,.payment-root form label,.finance-payment-editor>label,.finance-payment-fields label{gap:0.5rem;color:#707070;font-size:0.75rem}
.finance-card input,.finance-card select,.payment-root input,.finance-payment-editor input,.mine-settings-body input{height:3.25rem;padding:0 1.0625rem;border:1px solid #dde0e5;border-radius:1.625rem;color:#3c3c3c;background:#f7fbff;font-size:0.875rem}
.finance-card textarea{padding:0.875rem 1.0625rem;border:1px solid #dde0e5;border-radius:1.25rem;color:#3c3c3c;background:#f7fbff;font-size:0.875rem}
.finance-card input:focus,.finance-card select:focus,.finance-card textarea:focus,.payment-root input:focus,.finance-payment-editor input:focus,.mine-settings-body input:focus{border-color:#1677ff;box-shadow:0 0 0 3px rgba(22,119,255,.1)}
.finance-card .primary-button{min-height:3.125rem;border-radius:62.4375rem;background:#1677ff;font-size:0.875rem}
.finance-payment-editor{padding:1.0625rem;border:1px solid #eee;border-radius:1.25rem;background:#f7fbff}
.player-record-list{gap:0.6875rem;padding:0.125rem 1.0625rem 7rem}
.player-record-list article{padding:1rem;border:0;border-radius:1.25rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.player-record-list article>div strong{font-size:0.8125rem}
.player-record-list article>div small,.player-record-list p{font-size:0.75rem}
.group-chat-root{padding:0.875rem 1.0625rem 1.875rem}
.group-chat-card{border:0;border-radius:1.4375rem;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.group-chat-message p,.player-message>div{border-radius:0.3125rem 1.125rem 1.125rem;color:#565e6c;background:#f0f3f7;font-size:0.75rem}
.group-chat-message.mine p,.player-message.mine>div{border-radius:1.125rem 0.3125rem 1.125rem 1.125rem;background:#1677ff}
.group-chat-form,.chat-card form{border-color:#eee;background:#fff}
.group-chat-form textarea,.chat-card textarea{border:1px solid #dde0e5;border-radius:1.25rem;background:#f7fbff;font-size:0.875rem}
#chat-panel{height:calc(100dvh - 5.125rem - env(safe-area-inset-bottom))}
.player-service-root,.agent-root{display:grid;gap:0.875rem;margin:0;padding:0.875rem 1.0625rem 7rem}
.player-service-root .chat-card,.player-service-root .contact-card,.agent-root .agent-card{margin:0;border:0;border-radius:1.4375rem}
.agent-reward-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:0.75rem;padding-inline:0}
.agent-reward-stats>div{border:0;border-radius:1.25rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.agent-reward-stats span{font-size:0.75rem;letter-spacing:.06em}
.agent-reward-stats strong{font-size:clamp(1.0625rem,4.6vw,1.375rem)}
.benefit-root{gap:1rem;padding:1.0625rem 1.0625rem 7rem}
.benefit-checkin-card,.benefit-wheel-card,.benefit-log-card{border:0;border-radius:1.4375rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.benefit-checkin-card{padding:1.3125rem;background:#fff}
.benefit-days i{border-color:#eee;background:#f7fbff}
.benefit-days div.complete i,.benefit-draw-button{border-color:#1677ff;background:#1677ff;box-shadow:none}
.benefit-wheel-card{padding:1.3125rem}

/* 我的：账户卡置顶，表单折叠成设置项，首屏保持个人中心形态。 */
#mine-panel{padding-top:0.0625rem}
.mine-hero{margin:1.25rem 1.0625rem 0;padding:1.4375rem 1.25rem 4.375rem;border-radius:1.4375rem;background:linear-gradient(145deg,#3189fa,#a9d3ff);box-shadow:0 3px 12px rgba(22,119,255,.12)}
.mine-hero>button{display:none}
.mine-avatar{width:3.875rem;height:3.875rem;border:3px solid rgba(255,255,255,.86);border-radius:50%;background:#1677ff;box-shadow:none}
.mine-hero small{color:#fff;font-size:0.75rem}
.mine-hero h1{color:#2f3b4b;font-size:1.3125rem}
.mine-hero p{color:#52667c;font-size:0.75rem}
.mine-balance{margin:-3.0625rem 1.6875rem 1.0625rem;padding:1.1875rem 0.25rem;border:0;border-radius:1.25rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.mine-balance div{padding:0 0.5rem}
.mine-balance div+div{border-color:#eee}
.mine-balance span{color:#949494;font-size:0.75rem}
.mine-balance strong{margin-top:0.4375rem;color:#3c3c3c;font-size:0.9375rem}
.mine-finance-actions{display:grid;grid-template-columns:1fr 1fr;gap:0.8125rem;margin:0 1.0625rem 0.9375rem}
.mine-finance-actions button{display:flex;min-height:3.625rem;align-items:center;justify-content:center;gap:0.625rem;border:0;border-radius:1.8125rem;color:#7e7e7e;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.08);font-size:0.9375rem}
.mine-finance-actions i{display:grid;width:1.75rem;height:1.75rem;place-items:center;border-radius:50%;color:#1677ff;background:#edf4ff;font-size:0.75rem;font-style:normal;font-weight:800}
.mine-card{margin:0.8125rem 1.0625rem;padding:1.125rem;border:0;border-radius:1.4375rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09)}
.menu-card{padding:0.3125rem 1.125rem}
.menu-card button{min-height:3.4375rem;padding:0.5rem 0.125rem;color:#3c3c3c}
.menu-card button+button{border-color:#eee}
.menu-card i{border-radius:0.75rem;color:#1677ff;background:#edf4ff}
.menu-card b{font-size:0.875rem;font-weight:500}
.mine-settings-card{padding:0;overflow:hidden}
.mine-settings-card summary{display:flex;min-height:4.125rem;align-items:center;justify-content:space-between;padding:0.625rem 1.125rem;cursor:pointer;list-style:none}
.mine-settings-card summary::-webkit-details-marker{display:none}
.mine-settings-card summary>span{display:grid;min-width:0;grid-template-columns:2.5rem minmax(0,1fr);grid-template-rows:auto auto;column-gap:0.75rem;align-items:center}
.mine-settings-card summary i{display:grid;width:2.5rem;height:2.5rem;grid-row:1/3;place-items:center;border-radius:0.75rem;color:#1677ff;background:#edf4ff;font-size:0.75rem;font-style:normal;font-weight:800}
.mine-settings-card summary b{color:#3c3c3c;font-size:0.875rem;font-weight:500}
.mine-settings-card summary small{margin-top:0.25rem;overflow:hidden;color:#949494;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}
.mine-settings-card summary>em{color:#acb3c9;font-size:1.5rem;font-style:normal;transition:transform .18s}
.mine-settings-card[open] summary>em{transform:rotate(90deg)}
.mine-settings-body{padding:1.125rem;border-top:1px solid #eee}
.mine-settings-body form{display:grid;grid-template-columns:1fr;gap:0.8125rem}
.mine-settings-body form label{display:grid;gap:0.5rem;color:#707070;font-size:0.75rem}
.mine-settings-body .empty{padding:2.1875rem 0.75rem}

/* 底部导航完全按参考站的五等分和中心充值按钮呈现。 */
.bottom-nav{height:5.125rem;grid-template-columns:repeat(5,1fr);align-items:end;padding:0.3125rem 0 calc(0.4375rem + env(safe-area-inset-bottom));border-top:1px solid #eee;background:rgba(255,255,255,.97);box-shadow:0 -2px 8px rgba(0,0,0,.06);backdrop-filter:blur(16px)}
.bottom-nav button{gap:0.1875rem;min-height:3.8125rem;color:#acb3c9;font-size:0.75rem}
.bottom-nav i{width:2.125rem;height:2.125rem;border-radius:0.75rem;font-size:1.0625rem}
.bottom-nav i svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.bottom-nav button.active{color:#1677ff}
.bottom-nav button.active i{background:#edf4ff}
.bottom-nav .nav-center{color:#1677ff}
.bottom-nav .nav-center i,.bottom-nav .nav-center.active i{width:4.25rem;height:4.25rem;margin-top:-2.125rem;border:7px solid #fff;border-radius:50%;color:#fff;background:#1677ff;box-shadow:0 5px 13px rgba(22,119,255,.25);font-size:1.5rem;font-weight:500}

/* 登录页去掉玻璃光效，改为参考站的居中 Logo 与胶囊表单。 */
.auth-view{padding:0;background:#f3f6fa}
.auth-view:before,.auth-glow{display:none}
.auth-shell{display:flex;width:min(31.25rem,100%);min-height:100vh;flex-direction:column;padding:3rem 3.125rem 2.125rem;border:0;border-radius:0;background:#f3f6fa;box-shadow:none;backdrop-filter:none}
.auth-brand{flex-direction:column;gap:0.5625rem;justify-content:center;margin:0 0 2.625rem;text-align:center}
.brand-mark{width:5.75rem;height:4.5rem;border-radius:0;background:transparent;box-shadow:none}
.brand-mark img{width:5.75rem;height:4.5rem}
.auth-brand small{color:#949494;font-size:0.75rem}
.auth-brand strong{max-width:22.5rem;color:#2b2b2b;font-size:1.25rem}
.auth-form{order:1;gap:1.3125rem}
.auth-form>label,.form-pair>label{gap:0.5rem;color:#6f6f6f;font-size:0.75rem}
.auth-intro{margin:0;text-align:center}
.auth-intro h1{display:none}
.auth-input{height:3.25rem;border:1px solid #1677ff;border-radius:1.6875rem;background:#fff}
.auth-input:focus-within{border-color:#1677ff;background:#fff;box-shadow:0 0 0 3px rgba(22,119,255,.1)}
.auth-input i{width:2.8125rem;color:#333;font-size:1.0625rem}
.auth-input input{padding-right:0.875rem;color:#3c3c3c;font-size:0.9375rem}
.auth-input input::placeholder{color:#aaa}
.auth-input button{color:#1677ff;font-size:0.75rem}
.captcha-row{grid-template-columns:minmax(0,1fr) 7.375rem;gap:0.625rem}
.captcha-image{height:3.25rem;border:1px solid #dde0e5;border-radius:1.625rem;background:#fff}
.auth-submit{height:3.25rem;margin-top:0.75rem;padding:0 1.3125rem;font-size:0.9375rem}
.auth-submit span{background:rgba(255,255,255,.18)}
.auth-tabs{order:3;display:flex;justify-content:center;gap:0.5rem;margin:1.3125rem 0 0;padding:0;background:transparent}
.auth-tabs button{width:auto;height:2.125rem;padding:0 0.5rem;border:0;color:#1677ff;background:transparent;font-size:0.875rem}
.auth-tabs button.active{display:none}
.auth-session{order:2;margin:1.125rem 0 0;color:#949494;font-size:0.75rem}
.auth-session i{background:#18c987}

/* 弹层与上传控件统一圆角、遮罩和主色。 */
.dialog{padding:0.9375rem;background:rgba(0,0,0,.55);backdrop-filter:none}
.dialog-card{width:min(24.0625rem,100%);padding:1.625rem;border:0;border-radius:1.25rem;box-shadow:0 16px 44px rgba(0,0,0,.24)}
.dialog-close{top:0.875rem;right:0.875rem;border-radius:50%;color:#7f8794;background:#f1f3f6}
.dialog-code,.popup-badge{color:#1677ff;background:#edf4ff}
.dialog-card h2{color:#333;font-size:1.3125rem}
.dialog-card>p{color:#666;font-size:0.8125rem}
.dialog-meta span{border-color:#eee;border-radius:0.9375rem;color:#7a7a7a;background:#f7fbff}
.lobby-content-dialog-card{width:min(24.0625rem,calc(100% - 1.625rem));padding:1.625rem}
.player-media-picker-preview{border-color:#c7d7ec;border-radius:1.25rem;background:#f7fbff}
.player-media-picker-empty b{color:#1677ff}
.toast{border:0;border-radius:1.125rem;color:#3c3c3c;box-shadow:0 7px 22px rgba(0,0,0,.14)}
.player-loading{background:#f3f6fa}
.player-loading i:after{background:#1677ff}
.app-download-view{background:#f3f6fa}
.app-download-shell{width:min(31.25rem,100%)}
.app-download-action{border-radius:62.4375rem;background:#1677ff;box-shadow:none}

@media(max-width:500px){
  .phone-page{box-shadow:none}
  .topbar-logo strong{max-width:10.625rem}
}
@media(max-width:420px){
  .topbar-logo strong{max-width:8.25rem;font-size:0.9375rem}
  .sub-header>div{width:54%}
  .sub-header>span{max-width:24%;font-size:0.75rem}
  .featured-rooms{grid-template-rows:repeat(2,7.5625rem)}
  .featured-room .room-copy strong{font-size:0.875rem}
  .featured-room:first-child .room-copy strong{font-size:1.0625rem}
  .auth-shell{padding:2.375rem 1.5625rem 1.75rem}
  .auth-brand{margin-bottom:2.125rem}
  #activity-dialog .activity-dialog-card{width:calc(100% - 2rem);margin:1rem;padding:1.3125rem}
}
@media(max-width:360px){
  #game-panel:not([hidden]){grid-template-columns:5rem minmax(0,1fr);background:linear-gradient(to right,#fff 0 5rem,#f3f6fa 5rem)}
  #game-panel>.game-filters{padding-inline:0.375rem}
  #game-panel>.game-filters button{height:3.625rem;min-height:3.625rem;flex-basis:3.625rem;font-size:0.75rem}
  #game-panel>.room-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 0.5rem;padding-inline:0.5rem}
  #game-panel .player-room-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-card{padding-inline:0.8125rem}
  .quick-actions i{width:2.6875rem;height:2.6875rem}
  .quick-actions button{font-size:0.75rem}
  .mine-balance{margin-inline:1.375rem}
  .mine-finance-actions,.mine-card{margin-inline:0.75rem}
}

/* Pixel baseline: reference shell geometry, with platform-owned artwork and branding. */
html,body{height:100%;overflow:hidden;background:#f3f6fa!important}
body{color:#333;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif}
.phone-page{width:min(31.25rem,100%);height:100dvh;min-height:0;overflow-x:hidden;overflow-y:auto;background:#f3f6fa;box-shadow:none}
.page-scroll{padding-bottom:4.6875rem}

/* 首页头部、轮播与游客快捷区。 */
#home-panel>.topbar{height:4.3125rem;padding:0;background:#fff}
#home-panel .topbar-logo{left:1.375rem;width:7.4375rem;max-width:7.4375rem;transform:none}
:is(#home-panel,#game-panel) .topbar-logo{gap:0}
#home-panel .topbar-logo img{width:7.4375rem;height:2.875rem;flex:0 0 7.4375rem;object-fit:contain!important}
:is(#home-panel,#game-panel) .topbar-logo strong{position:absolute;width:0.0625rem;height:0.0625rem;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#home-panel .top-actions{margin-left:auto;margin-right:0.5625rem}
#home-panel .top-actions button{width:3.9375rem;height:3.9375rem;padding:0.8125rem;color:#1677ff}
#home-panel .top-actions svg{width:1.875rem;height:1.875rem;stroke-width:1.6}
#home-panel .hero{height:auto;aspect-ratio:485/216;margin:0;border:0;border-radius:0;background:#f3f6fa;box-shadow:none}
#home-panel .hero-track{height:auto;aspect-ratio:878/329;background:#eef2f8}
#home-panel .hero-slide{height:100%;background:#eef2f8}
#home-panel .hero-slide>img{height:100%;object-fit:fill!important}
#home-panel .hero-dots{right:0;bottom:0.3125rem;left:0;justify-content:center;gap:0}
#home-panel .hero-dots button{position:relative;width:1.5rem;height:1.5rem;border:0;background:transparent}
#home-panel .hero-dots button:before{position:absolute;content:"";top:50%;left:50%;width:0.4375rem;height:0.4375rem;border-radius:50%;background:#c8d0dc;transform:translate(-50%,-50%)}
#home-panel .hero-dots button.active:before{width:1.125rem;border-radius:0.4375rem;background:#1677ff}
.home-user-card{height:9.625rem;min-height:9.625rem;margin:0 0 0.75rem;padding:0.9375rem 0.875rem 0.75rem;border-radius:0 0 1.25rem 1.25rem;background:#fff;box-shadow:0 3px 6px rgba(0,0,0,.1)}
.home-user-card .notice-bar{width:100%;height:1.9375rem;min-height:1.9375rem;margin:0;padding:0 0.75rem;border:0;border-radius:1rem;background:#f1f5fa;box-shadow:none}
.home-user-card .notice-icon{width:1.5rem;height:1.5rem;color:#6f7f92;background:transparent}
.home-user-card .notice-icon svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.home-user-card .notice-bar p{color:#77869e;font-size:0.875rem;line-height:1.9375rem}
.home-user-card .notice-bar>button{min-height:1.9375rem;padding:0 0.1875rem;color:#1677ff;font-size:0.75rem}
.home-user-card .account-card{display:grid;min-height:5.6875rem;grid-template-columns:minmax(10.625rem,1fr) auto;align-items:center;gap:0.5rem;margin:0;padding:0.8125rem 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.home-user-card .account-copy{display:grid;grid-template-columns:1fr;gap:0;width:100%;padding:0 0.3125rem;border:0;background:transparent;text-align:left}
.home-user-card .account-copy>div{display:block;margin:0}
.home-user-card .account-copy>div strong{color:#333;font-size:1.1875rem;font-weight:600;line-height:1.35}
.home-user-card .account-copy>div small{display:block;margin-top:0.4375rem;color:#71809a;font-size:0.875rem;line-height:1.2}
.home-user-card .account-copy p{display:none}
.home-user-card .quick-actions{display:grid;grid-template-columns:repeat(4,3.625rem);gap:0.5625rem}
.home-user-card .quick-actions button{display:grid!important;gap:0.3125rem;color:#222;font-size:0.8125rem;white-space:nowrap}
.home-user-card .quick-actions i{width:3.375rem;height:3.375rem;border-radius:50%;background:linear-gradient(145deg,#49c5ff,#1687ff);box-shadow:0 3px 7px rgba(22,119,255,.22)}
.home-user-card .quick-actions svg{width:1.8125rem;height:1.8125rem;stroke-width:1.65}
.home-user-card:not(:has(.guest-player)) .account-copy p{display:none}
#home-panel>.section-title,#home-panel>.home-activities{display:none}

/* 首页游戏分类拼图，与参考页面保持 2+2+4 的几何关系。 */
#home-panel .featured-rooms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:9.625rem 9.625rem 9.875rem;gap:0;margin:0 1rem;padding:0 0 6rem}
.home-game-tile{position:relative;display:block;overflow:hidden;padding:0;border:5px solid transparent;color:#24334a;background:linear-gradient(145deg,#edf9ff,#cbeaff) padding-box;text-align:left}
.home-game-tile:focus-visible{z-index:2;outline:2px solid #1677ff;outline-offset:-0.125rem}
.home-game-tile.is-placeholder{cursor:default}
.home-game-tile.is-placeholder .home-game-copy{opacity:.72}
.home-game-tile.tile-1{grid-row:1/3;grid-column:1/3;margin:0;border-radius:1.25rem 0 0 0;background:linear-gradient(150deg,#e4f7ff,#b9e5ff) padding-box}
.home-game-tile.tile-2{grid-row:1;grid-column:3/5;margin:0;border-radius:0 1.25rem 0 0;background:linear-gradient(145deg,#edf8ff,#caeaff) padding-box}
.home-game-tile.tile-3{grid-row:2;grid-column:3/5;margin:0;background:linear-gradient(145deg,#f4fbff,#d8ecff) padding-box}
.home-game-tile.tile-4,.home-game-tile.tile-5,.home-game-tile.tile-6,.home-game-tile.tile-7{grid-row:3;margin:0;background:linear-gradient(155deg,#f4fbff,#d8ecff) padding-box}
.home-game-tile.tile-4{grid-column:1;border-radius:0 0 0 1.25rem}
.home-game-tile.tile-5{grid-column:2}
.home-game-tile.tile-6{grid-column:3}
.home-game-tile.tile-7{grid-column:4;border-radius:0 0 1.25rem 0}
.home-game-copy{position:absolute;z-index:2;top:1.375rem;left:1.125rem;display:grid;max-width:55%;gap:0.4375rem}
.home-game-copy strong{font-size:1.375rem;line-height:1.15;white-space:nowrap}
.home-game-copy small{color:#56667b;font-size:0.75rem;line-height:1.45}
.tile-2 .home-game-copy,.tile-3 .home-game-copy{top:1.375rem;left:1.125rem;max-width:48%}
.tile-2 .home-game-copy strong,.tile-3 .home-game-copy strong{font-size:1.3125rem}
.tile-4 .home-game-copy,.tile-5 .home-game-copy,.tile-6 .home-game-copy,.tile-7 .home-game-copy{top:1rem;left:0.625rem;max-width:88%}
.tile-4 .home-game-copy strong,.tile-5 .home-game-copy strong,.tile-6 .home-game-copy strong,.tile-7 .home-game-copy strong{font-size:0.9375rem}
.tile-4 .home-game-copy small,.tile-5 .home-game-copy small,.tile-6 .home-game-copy small,.tile-7 .home-game-copy small{display:none}
.home-game-art{position:absolute;right:-1rem;bottom:-0.8125rem;width:72%;height:72%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0 7%,rgba(255,255,255,.8) 8% 18%,rgba(55,154,255,.25) 19% 54%,rgba(22,119,255,.12) 55%);filter:drop-shadow(0 10px 10px rgba(36,118,195,.18))}
.home-game-art:before,.home-game-art:after,.home-game-art i{position:absolute;content:"";border-radius:50%;background:linear-gradient(145deg,#8bd6ff,#1677ff);box-shadow:inset 0 2px 6px rgba(255,255,255,.75)}
.home-game-art:before{right:8%;bottom:9%;width:39%;height:39%}
.home-game-art:after{right:40%;bottom:4%;width:26%;height:26%}
.home-game-art i{right:19%;bottom:42%;width:22%;height:22%}
.home-game-art b{position:absolute;z-index:2;right:15%;bottom:17%;color:#fff;font-size:2.375rem;font-weight:900;line-height:1;text-shadow:0 2px 4px rgba(0,73,152,.35)}
.tile-2 .home-game-art,.tile-3 .home-game-art{right:-0.5rem;bottom:-1.5625rem;width:55%;height:115%}
.tile-2 .home-game-art b,.tile-3 .home-game-art b{font-size:1.8125rem}
.tile-4 .home-game-art,.tile-5 .home-game-art,.tile-6 .home-game-art,.tile-7 .home-game-art{right:-1.4375rem;bottom:-1.125rem;width:100%;height:78%}
.tile-4 .home-game-art b,.tile-5 .home-game-art b,.tile-6 .home-game-art b,.tile-7 .home-game-art b{font-size:1.5rem}
.tile-2 .home-game-art{filter:hue-rotate(20deg) drop-shadow(0 10px 10px rgba(36,118,195,.18))}
.tile-3 .home-game-art{filter:hue-rotate(285deg) drop-shadow(0 10px 10px rgba(36,118,195,.18))}
.tile-4 .home-game-art{filter:hue-rotate(45deg)}
.tile-5 .home-game-art{filter:hue-rotate(165deg)}
.tile-6 .home-game-art{filter:hue-rotate(250deg)}
.tile-7 .home-game-art{filter:hue-rotate(315deg)}

/* 游戏页：77px 品牌栏、114px 左侧分类、339px 右侧内容。 */
#game-panel:not([hidden]){display:grid;width:31.25rem;min-height:calc(100dvh - 4.6875rem);grid-template-columns:7.125rem minmax(0,1fr);grid-template-rows:4.8125rem 5.25rem 3.75rem minmax(calc(100dvh - 18.5rem),auto);align-items:start;background:linear-gradient(to right,#fff 0 7.125rem,#f3f6fa 7.125rem)}
.game-lobby-header{display:flex;height:4.8125rem;grid-row:1;grid-column:1/-1;align-items:center;justify-content:space-between;padding:0 1.25rem;border:0;background:#fff}
.game-lobby-logo{display:flex;width:6.9375rem;height:2.875rem;align-items:center;gap:0;padding:0;border:0;background:transparent;text-align:left}
.game-lobby-logo img{display:block;width:6.9375rem;height:2.6875rem;flex:0 0 6.9375rem;object-fit:contain}
.game-lobby-logo span{position:absolute;width:0.0625rem;height:0.0625rem;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.game-lobby-logo strong{display:block;max-width:4.3125rem;overflow:hidden;color:#111;font-size:0.875rem;font-weight:800;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
.game-lobby-logo small{color:#111;font-size:0.75rem;font-weight:700;letter-spacing:0.25rem}
.game-lobby-balance{display:flex;align-items:center;gap:0.4375rem;padding:0;border:0;color:#111;background:transparent;font-size:1rem}
.game-lobby-balance i{display:grid;width:1.8125rem;height:1.8125rem;place-items:center;border-radius:50%;color:#fff;background:#18a87f;font-size:0.75rem;font-style:normal}
.game-lobby-balance strong{font-size:1.625rem;font-weight:500;font-variant-numeric:tabular-nums}
.game-lobby-balance span{font-size:1rem;white-space:nowrap}
#game-panel>.game-filters{position:sticky;top:0;display:flex;height:calc(100dvh - 4.8125rem);grid-row:2/5;grid-column:1;flex-direction:column;gap:0.75rem;overflow-y:auto;padding:1.1875rem 0.875rem 6.25rem;background:#fff}
#game-panel>.game-filters button{display:grid;width:5.375rem;height:4.3125rem;min-height:4.3125rem;flex:0 0 4.3125rem;place-content:center;gap:0.1875rem;padding:0;border:0;border-radius:0.6875rem;color:#7c8497;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.09);font-size:0.9375rem}
#game-panel>.game-filters button i{height:1.25rem;font-size:1rem;font-style:normal;line-height:1.25rem}
#game-panel>.game-filters button.active{color:#fff;background:linear-gradient(145deg,#58a9ff,#1677ff);box-shadow:0 4px 9px rgba(22,119,255,.23)}
#game-panel>.game-search{height:2.8125rem;grid-row:2;grid-column:2;align-self:start;margin:1.4375rem 1.4375rem 0 1.5rem;padding:0 0.9375rem;border:1px solid #1677ff;border-radius:1.5rem}
#game-panel>.game-search input{font-size:1rem}
.game-firms{display:flex;height:2.9375rem;grid-row:3;grid-column:2;gap:0.75rem;overflow-x:auto;margin:0.4375rem 1.4375rem 0.375rem 1.5rem;scrollbar-width:none}
.game-firms::-webkit-scrollbar{display:none}
.game-firms button{height:2.9375rem;min-width:5.625rem;flex:0 0 5.625rem;padding:0 0.75rem;border:1px solid #e7e7e7;border-radius:1.5rem;color:#111;background:#fff;font-size:1.125rem;font-weight:800;letter-spacing:-0.0625rem}
.game-firms button.active{border-color:#1677ff;box-shadow:inset 0 0 0 1px #1677ff}
#game-panel>.room-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-row:4;grid-column:2;align-content:start;gap:1.4375rem 1rem;min-width:0;padding:1rem 1.4375rem 6.5625rem 1.5rem;background:#f3f6fa}
#game-panel .room-item{position:relative;display:block;min-width:0;overflow:hidden;border:0;border-radius:0.75rem;background:#dfe8f2;box-shadow:none}
#game-panel .room-item>.room-entry{position:relative;display:block;width:100%;min-height:0;aspect-ratio:380/506;overflow:hidden;border-radius:0.75rem;background:#dfe8f2}
#game-panel .room-item>.room-entry>img{position:absolute;inset:0;display:block;width:100%;height:100%;border-radius:0.75rem;object-fit:cover!important;box-shadow:none}
#game-panel .room-item>.room-entry>span{position:absolute;right:0;bottom:0;left:0;display:block;padding:1.5625rem 0.3125rem 0.4375rem;background:linear-gradient(transparent,rgba(0,42,96,.78));text-align:center}
#game-panel .room-item>.room-entry strong{display:block;min-height:0;overflow:hidden;color:#fff;font-size:0.75rem;font-weight:700;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.55)}
#game-panel .room-item>.room-entry em,#game-panel .room-item>.room-entry small,#game-panel .room-rule-button{display:none}
#game-panel .room-item.sleep:after{top:0.3125rem;left:0.3125rem;padding:0.1875rem 0.3125rem;font-size:0.75rem}

/* 活动页与通知页。 */
#activity-panel>.sub-header{height:4.125rem;min-height:4.125rem;border:0}
#activity-panel>.sub-header>button{visibility:hidden}
.activity-tabs{display:flex;height:3.4375rem;align-items:flex-start;gap:0.8125rem;overflow-x:auto;margin-top:1.4375rem;padding:0 1.4375rem;scrollbar-width:none}
.activity-tabs::-webkit-scrollbar{display:none}
.activity-tabs button{height:2.625rem;min-width:4.625rem;flex:0 0 auto;padding:0 1.25rem;border:1px solid #eee;border-radius:1.375rem;color:#222;background:#fff;font-size:0.9375rem;white-space:nowrap}
.activity-tabs button:first-child{min-width:6.375rem}
.activity-tabs button.active{border-color:#1677ff;color:#fff;background:#1677ff}
#activity-panel>.activity-list{gap:1.4375rem;padding:0.75rem 1.4375rem 6.5625rem}
#activity-panel .activity-card{border:1px solid #b9cde0;border-radius:1.0625rem;box-shadow:none}
#activity-panel .activity-card img{aspect-ratio:878/329;border-radius:1.0625rem;object-fit:fill!important}
#notice-panel>.notice-list{padding-bottom:6.5625rem}

/* 五等分底栏，中心按钮带参考站同样的上浮白色托槽。 */
.bottom-nav{height:4.6875rem;align-items:end;padding:0.3125rem 0 calc(0.375rem + env(safe-area-inset-bottom));overflow:visible;border-top:0;background:#fff;box-shadow:none}
.bottom-nav button{position:relative;z-index:1;gap:0.125rem;min-height:3.75rem;color:#aeb7cc;font-size:0.8125rem}
.bottom-nav i{width:3.125rem;height:3.125rem;border-radius:50%;font-size:1.125rem}
.bottom-nav i svg{width:3.125rem;height:3.125rem;fill:currentColor;stroke:none}
.bottom-nav button.active{color:#1677ff}
.bottom-nav button.active i{background:transparent}
.bottom-nav .nav-center:before{position:absolute;z-index:-1;content:"";top:-2.875rem;left:50%;width:7rem;height:4.5625rem;border-radius:3.5rem 3.5rem 0 0;background:#fff;transform:translateX(-50%)}
.bottom-nav .nav-center i,.bottom-nav .nav-center.active i{width:5.875rem;height:5.875rem;margin-top:-3.1875rem;border:7px solid #fff;color:#fff;background:#1677ff;box-shadow:0 5px 13px rgba(22,119,255,.25);font-size:1.5625rem}
.bottom-nav .nav-center i svg{width:3.25rem;height:3.25rem}
.bottom-nav .nav-center span{margin-top:-0.0625rem;color:#1677ff}

@media(max-width:499px){
  #home-panel>.topbar{height:3.375rem}
  #home-panel .topbar-logo{left:1.125rem;width:5.375rem;max-width:5.375rem}
  #home-panel .topbar-logo img{width:5.375rem;height:2.0625rem;flex-basis:5.375rem}
  #home-panel .top-actions button{width:3.0625rem;height:3.0625rem;padding:0.625rem}
  #home-panel .hero{height:auto;aspect-ratio:485/216}
  #home-panel .hero-track{height:auto;aspect-ratio:878/329}
  #home-panel .hero-slide,#home-panel .hero-slide>img{height:100%}
  .home-user-card{height:7.5rem;min-height:7.5rem;margin-bottom:0.625rem;padding:0.5625rem 0.6875rem 0.5rem}
  .home-user-card .notice-bar{height:1.5rem;min-height:1.5rem;padding-inline:0.5625rem}
  .home-user-card .notice-icon{width:1.125rem;height:1.125rem}
  .home-user-card .notice-icon svg{width:1rem;height:1rem}
  .home-user-card .notice-bar p{font-size:0.75rem;line-height:1.5rem}
  .home-user-card .notice-bar>button{min-height:1.5rem;font-size:0.75rem}
  .home-user-card .account-card{height:4.9375rem;min-height:4.9375rem;grid-template-columns:minmax(7rem,1fr) auto;padding-top:0.5rem}
  .home-user-card .account-copy>div strong{font-size:1.0625rem}
  .home-user-card .account-copy>div small{font-size:0.75rem}
  .home-user-card .quick-actions{grid-template-columns:repeat(4,2.8125rem);gap:0.25rem}
  .home-user-card .quick-actions i{width:2.625rem;height:2.625rem}
  .home-user-card .quick-actions button{font-size:0.75rem}
  #home-panel .featured-rooms{grid-template-rows:7.5rem 7.5rem 7.75rem;margin-inline:0.8125rem}
  .home-game-copy{top:1rem;left:0.75rem}
  .home-game-copy strong{font-size:1.0625rem}
  .home-game-copy small{font-size:0.75rem}
  .tile-2 .home-game-copy,.tile-3 .home-game-copy{top:0.9375rem;left:0.75rem}
  .tile-2 .home-game-copy strong,.tile-3 .home-game-copy strong{font-size:1rem}
  .tile-4 .home-game-copy strong,.tile-5 .home-game-copy strong,.tile-6 .home-game-copy strong,.tile-7 .home-game-copy strong{font-size:0.75rem}
  .home-game-art b{font-size:1.8125rem}
  #game-panel:not([hidden]){width:100vw;grid-template-columns:5.5625rem minmax(0,1fr);grid-template-rows:3.75rem 4.0625rem 3rem minmax(calc(100dvh - 15.5rem),auto);background:linear-gradient(to right,#fff 0 5.5625rem,#f3f6fa 5.5625rem)}
  .game-lobby-header{height:3.75rem;padding:0 0.8125rem}
  .game-lobby-logo{width:5.0625rem;height:2.25rem;gap:0}
  .game-lobby-logo img{width:5.0625rem;height:1.9375rem;flex-basis:5.0625rem}
  .game-lobby-balance{gap:0.25rem;font-size:0.75rem}
  .game-lobby-balance i{width:1.375rem;height:1.375rem;font-size:0.75rem}
  .game-lobby-balance strong{font-size:1.1875rem}
  .game-lobby-balance span{font-size:0.75rem}
  #game-panel>.game-filters{height:calc(100dvh - 3.75rem);padding:0.875rem 0.6875rem 5.625rem;gap:0.625rem}
  #game-panel>.game-filters button{width:4.1875rem;height:3.3125rem;min-height:3.3125rem;flex-basis:3.3125rem;font-size:0.75rem}
  #game-panel>.game-search{height:2.1875rem;margin:1.125rem 1.125rem 0;padding-inline:0.75rem}
  #game-panel>.game-search input{font-size:0.8125rem}
  .game-firms{height:2.375rem;gap:0.5625rem;margin:0.25rem 1.125rem 0.375rem}
  .game-firms button{height:2.375rem;min-width:4.4375rem;flex-basis:4.4375rem;font-size:0.875rem}
  #game-panel>.room-list{gap:1.125rem 0.75rem;padding:0.75rem 1.125rem 5.9375rem}
  #game-panel .room-item>.room-entry strong{font-size:0.75rem}
  #activity-panel>.sub-header{height:3.25rem;min-height:3.25rem}
  .activity-tabs{height:2.6875rem;gap:0.5625rem;margin-top:1.125rem;padding-inline:1.125rem}
  .activity-tabs button{height:2rem;min-width:4rem;padding-inline:0.9375rem;font-size:0.75rem}
  .activity-tabs button:first-child{min-width:5.5rem}
  #activity-panel>.activity-list{gap:1.125rem;padding:0.75rem 1.125rem 5.9375rem}
  .bottom-nav i,.bottom-nav i svg{width:2.4375rem;height:2.4375rem}
  .bottom-nav button{font-size:0.75rem}
  .bottom-nav .nav-center i,.bottom-nav .nav-center.active i{width:4.75rem;height:4.75rem;margin-top:-2.625rem}
  .bottom-nav .nav-center i svg{width:2.5625rem;height:2.5625rem}
}

@media(max-width:360px){
  .home-user-card .account-card{grid-template-columns:minmax(5.3125rem,1fr) auto}
  .home-user-card .account-copy>div strong{font-size:0.875rem}
  .home-user-card .account-copy>div small{font-size:0.75rem}
  .home-user-card .quick-actions{grid-template-columns:repeat(4,2.25rem);gap:0.0625rem}
  .home-user-card .quick-actions i{width:2.125rem;height:2.125rem}
  .home-user-card .quick-actions svg{width:1.3125rem;height:1.3125rem}
  .home-user-card .quick-actions button{font-size:0.75rem}
  #game-panel:not([hidden]){grid-template-columns:5rem minmax(0,1fr);background:linear-gradient(to right,#fff 0 5rem,#f3f6fa 5rem)}
  #game-panel>.game-filters{padding-inline:0.375rem}
  #game-panel>.game-filters button{width:4.25rem}
}

.auth-view,.app-download-view{height:100dvh;overflow-x:hidden;overflow-y:auto}

/* 我的：按移动壳的账户卡、快捷操作、概览卡和五行菜单重组。 */
#mine-panel{padding-top:0.0625rem;background:#f3f6fa}
#mine-panel .mine-profile-card{position:relative;height:20.5rem;overflow:hidden;margin:1.375rem 1.4375rem 1.0625rem;padding:1.4375rem;border-radius:1.125rem;background:linear-gradient(145deg,#5ea8ff 0,#8bc7ff 52%,#f9fdff 100%);box-shadow:0 2px 7px rgba(64,112,164,.12)}
#mine-panel .mine-profile-card:before{position:absolute;content:"";top:-7.5rem;right:-4.6875rem;width:18.75rem;height:18.75rem;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.34),rgba(255,255,255,0) 68%)}
.mine-profile-top{position:relative;z-index:1;display:flex;height:4.375rem;align-items:center;gap:0.75rem;margin-bottom:2.1875rem}
.mine-profile-top .mine-avatar{width:4.375rem;height:4.375rem;flex:0 0 4.375rem;border:3px solid rgba(255,255,255,.88);border-radius:50%;color:#fff;background:#1677ff;box-shadow:none;font-size:1.5rem}
.mine-profile-top>div{min-width:0;flex:1}
.mine-profile-top small,.mine-profile-top h1,.mine-profile-top p{display:block;overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}
.mine-profile-top small{color:rgba(255,255,255,.92);font-size:0.75rem;font-weight:600}
.mine-profile-top h1{margin-top:0.3125rem;color:#263a51;font-size:1.25rem;font-weight:700}
.mine-profile-top p{margin-top:0.25rem;color:#4a6d90;font-size:0.75rem}
.mine-profile-top nav{display:flex;align-self:flex-start;gap:0.75rem}
.mine-profile-top nav button{display:grid;width:1.9375rem;height:1.9375rem;place-items:center;padding:0;border:0;color:#233f5d;background:transparent}
.mine-profile-top nav svg{width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.mine-wallet-row{position:relative;z-index:1;display:flex;height:2.5625rem;align-items:center;justify-content:space-between;margin-bottom:1.875rem;color:#273f59}
.mine-wallet-row>span{display:flex;align-items:center;gap:0.5rem;font-size:1.0625rem;font-weight:600}
.mine-wallet-row i{display:grid;width:1.5625rem;height:1.5625rem;place-items:center;border-radius:50%;color:#fff;background:#18a87f;font-size:0.75rem;font-style:normal}
.mine-wallet-row strong{font-size:1.625rem;font-variant-numeric:tabular-nums}
.mine-wallet-row button{padding:0.3125rem 0;border:0;color:#344c64;background:transparent;font-size:0.9375rem}
.mine-level-row{position:relative;z-index:1;display:grid;height:3.625rem;grid-template-columns:3.625rem minmax(0,1fr) auto 1.8125rem;align-items:center;gap:0.875rem}
.mine-level-row>span{display:grid;width:3.625rem;height:3.625rem;place-items:center;border:5px solid rgba(255,255,255,.58);border-radius:1.1875rem;color:#1677ff;background:#fff;font-size:1.125rem;font-weight:800;box-shadow:0 4px 10px rgba(52,112,179,.15)}
.mine-level-row>div{height:0.5rem;overflow:hidden;border-radius:0.5rem;background:rgba(126,126,126,.45)}
.mine-level-row>div i{display:block;width:12%;height:100%;border-radius:inherit;background:#1677ff}
.mine-level-row>b{color:#1677ff;font-size:1.25rem;font-style:italic;white-space:nowrap}
.mine-level-row>button{display:grid;width:1.8125rem;height:1.8125rem;place-items:center;border:0;border-radius:0.5625rem;color:#8798aa;background:rgba(255,255,255,.8);font-size:1.3125rem}
.mine-member-meta{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;margin:0.5625rem 0 0;color:#3a4d62;font-size:0.75rem}
.mine-member-meta strong{color:#1677ff}
#mine-panel .mine-finance-actions{gap:1.4375rem;margin:0 1.8125rem 1.0625rem}
#mine-panel .mine-finance-actions button{height:4.4375rem;min-height:4.4375rem;border-radius:1.375rem;font-size:1.25rem}
#mine-panel .mine-finance-actions i{width:2rem;height:2rem;font-size:0.8125rem}
.mine-overview-card{height:9.875rem;margin:1.0625rem 1.4375rem;padding:1.375rem 1.4375rem;border-radius:1.4375rem;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.mine-overview-card>header{display:flex;height:1.9375rem;align-items:center;justify-content:space-between;color:#737373;font-size:1.125rem}
.mine-overview-card>header span{display:flex;align-items:center;gap:0.5625rem}
.mine-overview-card>header i{color:#39c630;font-size:1.4375rem;font-style:normal}
.mine-overview-card>header button{padding:0;border:0;color:#949494;background:transparent;font-size:0.9375rem}
.mine-overview-card>div{display:grid;height:4.125rem;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;margin-top:0.9375rem;padding:0.5rem 0;border-radius:1.0625rem;background:#f4f6fa}
.mine-overview-card p{display:grid;min-width:0;justify-items:center;gap:0.4375rem;margin:0;padding:0 0.5rem}
.mine-overview-card p+p{border-left:1px solid #d8d8d8}
.mine-overview-card strong{display:block;max-width:100%;overflow:hidden;color:#14c22b;font-size:0.9375rem;text-overflow:ellipsis;white-space:nowrap}
.mine-overview-card small{color:#949494;font-size:0.75rem;white-space:nowrap}
#mine-panel>.menu-card{height:17.3125rem;margin:1.0625rem 1.4375rem;padding:0.5625rem 1.4375rem;border-radius:1.4375rem}
#mine-panel>.menu-card button{height:3.25rem;padding:0}
#mine-panel>.menu-card i{width:1.8125rem;height:1.8125rem;border-radius:0;color:#9db8db;background:transparent;font-size:1.0625rem}
#mine-panel>.menu-card b{color:#6d6d6d;font-size:1rem;font-weight:500}
#mine-panel>.menu-card em{font-size:1.4375rem}

@media(max-width:499px){
  #mine-panel .mine-profile-card{height:14.8125rem;margin:1rem 1rem 0.75rem;padding:1.0625rem;border-radius:0.875rem}
  .mine-profile-top{height:3.1875rem;gap:0.5625rem;margin-bottom:1.5rem}
  .mine-profile-top .mine-avatar{width:3.1875rem;height:3.1875rem;flex-basis:3.1875rem;border-width:2px;font-size:1.125rem}
  .mine-profile-top small{font-size:0.75rem}
  .mine-profile-top h1{margin-top:0.1875rem;font-size:0.9375rem}
  .mine-profile-top p{margin-top:0.125rem;font-size:0.75rem}
  .mine-profile-top nav{gap:0.375rem}
  .mine-profile-top nav button{width:1.4375rem;height:1.4375rem}
  .mine-profile-top nav svg{width:1.0625rem;height:1.0625rem}
  .mine-wallet-row{height:1.875rem;margin-bottom:1.25rem}
  .mine-wallet-row>span{gap:0.375rem;font-size:0.8125rem}
  .mine-wallet-row i{width:1.1875rem;height:1.1875rem;font-size:0.75rem}
  .mine-wallet-row strong{font-size:1.1875rem}
  .mine-wallet-row button{font-size:0.75rem}
  .mine-level-row{height:2.625rem;grid-template-columns:2.625rem minmax(0,1fr) auto 1.375rem;gap:0.625rem}
  .mine-level-row>span{width:2.625rem;height:2.625rem;border-width:4px;border-radius:0.875rem;font-size:0.8125rem}
  .mine-level-row>div{height:0.375rem}
  .mine-level-row>b{font-size:0.9375rem}
  .mine-level-row>button{width:1.375rem;height:1.375rem;border-radius:0.4375rem;font-size:1rem}
  .mine-member-meta{margin-top:0.375rem;font-size:0.75rem}
  #mine-panel .mine-finance-actions{gap:1.0625rem;margin:0 1.3125rem 0.75rem}
  #mine-panel .mine-finance-actions button{height:3.1875rem;min-height:3.1875rem;border-radius:1.0625rem;font-size:0.9375rem}
  #mine-panel .mine-finance-actions i{width:1.5rem;height:1.5rem;font-size:0.75rem}
  .mine-overview-card{height:7.125rem;margin:0.75rem 1rem;padding:1rem;border-radius:1.0625rem}
  .mine-overview-card>header{height:1.375rem;font-size:0.8125rem}
  .mine-overview-card>header i{font-size:1.0625rem}
  .mine-overview-card>header button{font-size:0.75rem}
  .mine-overview-card>div{height:3rem;margin-top:0.6875rem;padding:0.375rem 0;border-radius:0.8125rem}
  .mine-overview-card p{gap:0.25rem;padding-inline:0.3125rem}
  .mine-overview-card strong{font-size:0.75rem}
  .mine-overview-card small{font-size:0.75rem}
  #mine-panel>.menu-card{height:12.5rem;margin:0.75rem 1rem;padding:0.375rem 1rem;border-radius:1.0625rem}
  #mine-panel>.menu-card button{height:2.34375rem}
  #mine-panel>.menu-card i{width:1.375rem;height:1.375rem;font-size:0.8125rem}
  #mine-panel>.menu-card b{font-size:0.75rem}
  #mine-panel>.menu-card em{font-size:1.125rem}
}

/* 登录：保留验证码安全流程，尺寸和位置按参考移动页等比缩放。 */
.auth-view{display:block;background:#f3f6fa}
.auth-shell{position:relative;width:min(31.25rem,100%);min-height:100dvh;margin:0 auto;padding-inline:clamp(1.5625rem,10%,3.125rem);background:#f3f6fa}
.auth-close{position:absolute;z-index:2;top:clamp(1rem,4vw,1.375rem);right:clamp(1rem,4vw,1.375rem);display:grid;width:1.875rem;height:1.875rem;place-items:center;padding:0;border:0;color:#acb3c9;background:transparent;font-size:1.8125rem;font-weight:300;line-height:1}
.auth-brand{width:100%;height:auto;gap:0;margin:0 0 clamp(1.5625rem,6.4vw,2.1875rem)}
.auth-brand .brand-mark{width:50%;height:auto;aspect-ratio:160/62;background:transparent}
.auth-brand .brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.auth-brand>div{position:absolute;width:0.0625rem;height:0.0625rem;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#login-form{width:100%;min-width:0;gap:clamp(1.5625rem,6.4vw,2.1875rem)}
#login-form>label,#login-form .captcha-row,#login-form .auth-input{width:100%;min-width:0}
#login-form .auth-intro,#login-form>label>span{position:absolute;width:0.0625rem;height:0.0625rem;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#login-form .auth-input,#login-form .captcha-image,#login-form .auth-submit{height:clamp(2.25rem,9.333vw,3.15rem)}
#login-form .auth-input{border-color:#3066ff;border-radius:62.4375rem}
#login-form .auth-input i{width:clamp(2.125rem,8.533vw,2.875rem);font-size:clamp(0.8125rem,3.733vw,1.25rem)}
#login-form .auth-input input{font-size:clamp(0.8125rem,3.733vw,1.25rem)}
#login-form .captcha-row{grid-template-columns:minmax(0,1fr) clamp(5.375rem,23.6vw,7.9375rem);gap:clamp(0.4375rem,2.133vw,0.75rem)}
#login-form .captcha-image{border-radius:62.4375rem}
#login-form .form-error:empty{display:none}
#login-form .auth-submit{margin-top:-0.1875rem;border-radius:62.4375rem;font-size:clamp(0.8125rem,3.2vw,1.0625rem)}
#login-form .auth-submit span{display:none}

/* 首页最终几何基线：使用与参考页面一致的连续 rem 比例，而不是移动/桌面两套跳变尺寸。 */
:is(#home-panel,#game-panel)>.topbar{
  height:min(12.8vw,4.32rem);
  min-height:min(12.8vw,4.32rem);
  padding:0;
}
:is(#home-panel,#game-panel) .topbar-logo{
  left:min(4.2667vw,1.44rem);
  width:min(22.0103vw,7.4285rem);
  max-width:min(22.0103vw,7.4285rem);
}
:is(#home-panel,#game-panel) .topbar-logo img{
  width:min(22.0103vw,7.4285rem);
  height:min(8.5333vw,2.88rem);
  flex-basis:min(22.0103vw,7.4285rem);
}
#home-panel .top-actions{margin-right:min(1.6vw,0.54rem)}
#home-panel .top-actions button{
  width:min(11.7333vw,3.96rem);
  height:min(11.7333vw,3.96rem);
  padding:min(2.4vw,0.81rem);
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#home-panel .top-actions svg{
  width:min(7.68vw,2.592rem);
  height:min(7.68vw,2.592rem);
}

/* 轮播图片按原比例铺满宽度；剩余区域只承载干净的小分页点。 */
#home-panel .hero{
  width:100%;
  height:min(40vw,13.5rem);
  aspect-ratio:auto;
  overflow:hidden;
  margin:0;
  border-radius:0;
  background:#f3f6fa;
}
#home-panel .hero-track{
  width:100%;
  height:auto;
  aspect-ratio:878/329;
}
#home-panel .hero-slide,
#home-panel .hero-slide>img{height:100%}
#home-panel .hero-dots{
  right:auto;
  bottom:0.375rem;
  left:50%;
  width:max-content;
  height:1.5rem;
  align-items:center;
  justify-content:center;
  gap:0;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  filter:none;
  backdrop-filter:none;
  transform:translateX(-50%);
  pointer-events:none;
}
#home-panel .hero-dots button{
  width:1.5rem;
  height:1.5rem;
  flex:0 0 1.5rem;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  pointer-events:auto;
}
#home-panel .hero-dots button+button{margin-left:-0.9375rem}
#home-panel .hero-dots button:before{
  top:auto;
  bottom:0;
  width:0.1875rem;
  height:0.1875rem;
  border-radius:0.1875rem;
  background:#c8d0dc;
  box-shadow:none;
  transform:translateX(-50%);
}
#home-panel .hero-dots button.active:before{
  width:0.8125rem;
  height:0.1875rem;
  border-radius:0.1875rem;
  background:#1677ff;
}

/* 公告及游客快捷区。 */
.home-user-card{
  position:relative;
  width:100%;
  height:min(25.253vw,8.522875rem);
  min-height:min(25.253vw,8.522875rem);
  margin:0 0 min(4.2667vw,1.44rem);
  padding:min(2.6667vw,0.9rem) 0 0;
  border-radius:0 0 min(4.2667vw,1.44rem) min(4.2667vw,1.44rem);
  background:#fff;
  box-shadow:none;
}
.home-user-card .notice-bar{
  width:auto;
  height:min(5.8667vw,1.98rem);
  min-height:min(5.8667vw,1.98rem);
  margin:0 min(2.6667vw,0.9rem);
  padding:0 min(1.6vw,0.54rem);
  border:0;
  border-radius:min(2.6667vw,0.9rem);
  background:#f3f8fe;
  box-shadow:inset 0 min(.1vw,.54px) min(.1vw,.54px) rgba(187,180,180,.25);
}
.home-user-card .notice-icon{
  width:min(4.8vw,1.62rem);
  height:min(4.8vw,1.62rem);
}
.home-user-card .notice-icon svg{
  width:min(4.2667vw,1.44rem);
  height:min(4.2667vw,1.44rem);
}
.home-user-card .notice-bar p{
  color:#6d7693;
  font-size:clamp(0.75rem,3.2vw,1.08rem);
  line-height:min(5.8667vw,1.98rem);
}
.home-user-card .notice-bar>button{
  min-height:min(5.8667vw,1.98rem);
  padding:0;
  font-size:clamp(0.75rem,2.6667vw,0.9rem);
  line-height:1;
}
.home-user-card .account-card{
  position:relative;
  display:block;
  width:100%;
  height:min(14.32vw,4.833rem);
  min-height:min(14.32vw,4.833rem);
  margin:min(2.4vw,0.81rem) 0 0;
  padding:0;
  border:0;
  background:transparent;
}
.home-user-card .account-copy{
  position:absolute;
  top:50%;
  left:min(6.4vw,2.16rem);
  display:grid;
  width:min(25.2244vw,8.51325rem);
  height:auto;
  padding:0;
  border:0;
  background:transparent;
  text-align:center;
  transform:translateY(-50%);
}
.home-user-card .account-copy>span{display:none}
.home-user-card .account-copy>div{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  margin:0;
}
.home-user-card .account-copy>div strong{
  display:block;
  margin:0 0 min(1.0667vw,0.36rem);
  color:#30303d;
  font-size:clamp(0.75rem,4.2667vw,1.44rem);
  font-weight:700;
  line-height:min(6.7048vw,2.262875rem);
  white-space:nowrap;
}
.home-user-card .account-copy>div small{
  display:block;
  margin:0;
  color:#6d7693;
  font-size:clamp(0.75rem,3.4667vw,1.17rem);
  line-height:min(5.446vw,1.838rem);
  white-space:nowrap;
}
.home-user-card .account-copy p{display:none}
.home-user-card .quick-actions{
  position:absolute;
  top:0;
  right:min(2.6667vw,0.9rem);
  display:flex;
  width:auto;
  height:100%;
  align-items:flex-start;
  gap:min(2.1333vw,0.72rem);
}
.home-user-card .quick-actions:before{
  position:absolute;
  top:50%;
  left:calc(-0.0625rem - min(2.6667vw,0.9rem));
  width:0.0625rem;
  height:min(10.6667vw,3.6rem);
  content:"";
  border-left:1px solid #eee;
  transform:translateY(-50%);
}
.home-user-card .quick-actions button{
  display:flex!important;
  width:max-content;
  height:100%;
  min-width:min(10.1333vw,3.42rem);
  flex:0 0 auto;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  padding:0;
  color:#000;
  font-size:clamp(0.75rem,2.6667vw,0.9rem);
  line-height:min(4.1905vw,1.414313rem);
}
.home-user-card .quick-actions i{
  width:min(10.1333vw,3.42rem);
  height:min(10.1333vw,3.42rem);
  flex:0 0 min(10.1333vw,3.42rem);
  border-radius:50%;
}
.home-user-card .quick-actions svg{
  width:min(6.4vw,2.16rem);
  height:min(6.4vw,2.16rem);
}

/* 游戏拼图的行高、内边距和圆角严格按同一缩放单位。 */
#home-panel .featured-rooms{
  display:grid;
  width:100%;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:min(28.5vw,9.61875rem) min(28.5vw,9.61875rem) min(29.3333vw,9.9rem);
  gap:0;
  margin:0;
  padding:min(1.0667vw,0.36rem) min(3vw,1.0125rem);
}
#home-panel .home-game-tile{
  z-index:1;
  border:0;
  border-radius:0;
  background-color:#eaf7ff;
  background-repeat:no-repeat;
}
#home-panel .home-game-tile.tile-1{
  border-radius:min(3.2vw,1.08rem) 0 0 0;
  background-position:left top;
  background-size:200% 148.368%;
}
#home-panel .home-game-tile.tile-2{
  border-radius:0 min(3.2vw,1.08rem) 0 0;
  background-position:right top;
  background-size:200% 299.401%;
}
#home-panel .home-game-tile.tile-3{
  background-position:right 50.606%;
  background-size:200% 294.118%;
}
#home-panel .home-game-tile.tile-4{border-radius:0 0 0 min(3.2vw,1.08rem)}
#home-panel .home-game-tile.tile-7{border-radius:0 0 min(3.2vw,1.08rem) 0}
#home-panel .home-game-tile.tile-4,
#home-panel .home-game-tile.tile-5,
#home-panel .home-game-tile.tile-6,
#home-panel .home-game-tile.tile-7{background-size:400% 306.748%}
#home-panel .home-game-tile.tile-4{background-position:left bottom}
#home-panel .home-game-tile.tile-5{background-position:33.3333% bottom}
#home-panel .home-game-tile.tile-6{background-position:66.6667% bottom}
#home-panel .home-game-tile.tile-7{background-position:right bottom}
#home-panel .home-game-copy{
  top:min(4.0741vw,1.375rem);
  left:min(3.3333vw,1.125rem);
  gap:min(1.2963vw,0.4375rem);
}
#home-panel .home-game-copy strong{font-size:clamp(0.75rem,4.0741vw,1.375rem)}
#home-panel .home-game-copy small{font-size:clamp(0.75rem,2.2222vw,0.75rem)}
#home-panel .tile-2 .home-game-copy,
#home-panel .tile-3 .home-game-copy{
  top:min(4.0741vw,1.375rem);
  left:min(3.3333vw,1.125rem);
}
#home-panel .tile-2 .home-game-copy strong,
#home-panel .tile-3 .home-game-copy strong{font-size:clamp(0.75rem,3.8889vw,1.3125rem)}
#home-panel .tile-4 .home-game-copy,
#home-panel .tile-5 .home-game-copy,
#home-panel .tile-6 .home-game-copy,
#home-panel .tile-7 .home-game-copy{
  top:min(2.963vw,1rem);
  left:min(1.8519vw,0.625rem);
}
#home-panel .tile-4 .home-game-copy strong,
#home-panel .tile-5 .home-game-copy strong,
#home-panel .tile-6 .home-game-copy strong,
#home-panel .tile-7 .home-game-copy strong{font-size:clamp(0.75rem,2.7778vw,0.9375rem)}
#home-panel .home-game-art{display:none}

/* 五等分底栏使用完整托槽轮廓，中心圆和普通图标均随壳宽连续缩放。 */
.page-scroll{padding-bottom:calc(min(22vw,6.875rem) + min(2.1333vw,0.72rem))}
.bottom-nav{
  bottom:max(-0.09rem,-.2667vw);
  height:calc(min(22vw,6.875rem) + min(2.1333vw,0.72rem));
  align-items:end;
  padding:0 0 min(2.1333vw,0.72rem);
  overflow:visible;
  border:0;
  background:transparent url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20750%20162'%20aria-hidden='true'%3e%3cg%20filter='url(%23bottom-shadow)'%3e%3cpath%20fill='%23fff'%20d='M0%2010h274c15.464%200%2027.499%2012.976%2033.216%2027.344C318.092%2064.678%20344.79%2084%20376%2084c31.21%200%2057.908-19.322%2068.784-46.656C450.501%2022.976%20462.536%2010%20478%2010h272v152H0V10Z'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='bottom-shadow'%20x='-8'%20y='0'%20width='766'%20height='168'%20color-interpolation-filters='sRGB'%20filterUnits='userSpaceOnUse'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20result='hardAlpha'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'/%3e%3cfeOffset%20dy='-2'/%3e%3cfeGaussianBlur%20stdDeviation='4'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='out'/%3e%3cfeColorMatrix%20values='0%200%200%200%200.0679%200%200%200%200%200.0991%200%200%200%200%200.1792%200%200%200%200.06%200'/%3e%3cfeBlend%20in2='BackgroundImageFix'%20result='dropShadow'/%3e%3cfeBlend%20in='SourceGraphic'%20in2='dropShadow'%20result='shape'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e") 0 min(7.4667vw,40.32px)/100% auto no-repeat;
  box-shadow:none;
  backdrop-filter:none;
}
.bottom-nav button{
  min-width:0;
  padding:0;
  color:#acb3c9;
  background:transparent;
  font-size:clamp(0.75rem,2.6133vw,0.882rem);
  line-height:1;
}
.bottom-nav button:not(.nav-center){
  display:grid;
  height:calc(min(10.657vw,3.32225rem) + min(2.6133vw,0.882rem));
  min-height:0;
  grid-template-rows:min(10.657vw,3.32225rem) min(2.6133vw,0.882rem);
  align-content:end;
  justify-items:center;
  gap:0;
}
.bottom-nav button:not(.nav-center) i{
  display:grid;
  width:min(10vw,3.125rem);
  height:min(10.657vw,3.32225rem);
  place-items:start center;
  border-radius:0;
  background:transparent;
}
.bottom-nav button:not(.nav-center) i svg{
  width:min(10vw,3.125rem);
  height:min(10vw,3.125rem);
}
.bottom-nav button>span{
  height:min(2.6133vw,0.882rem);
  margin:0;
  color:#6d7693;
  font-size:clamp(0.75rem,2.6133vw,0.882rem);
  line-height:1;
}
.bottom-nav button.active{color:#1677ff}
.bottom-nav button.active>span{color:#6d7693}
.bottom-nav .nav-center{
  position:relative;
  display:block;
  height:min(22vw,6.875rem);
  min-height:0;
  padding:0 min(2vw,0.625rem) min(6vw,1.875rem);
  color:#fff;
}
.bottom-nav .nav-center:before{display:none}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  display:flex;
  width:100%;
  height:auto;
  aspect-ratio:1;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0;
  border:min(.2vw,1.08px) solid #30b4f9;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(0deg,#1677ff,#1677ff),radial-gradient(268.47% 208.93% at 50.82% -64.29%,#5dcaf9 0,#2283f6 45.16%,#0038ff 86.78%);
  box-shadow:0 0 min(1.4vw,7.56px) rgba(34,131,246,.8);
}
.bottom-nav .nav-center i svg{
  width:65%;
  height:auto;
  aspect-ratio:1;
}
.bottom-nav .nav-center i span{
  height:min(2.6133vw,0.882rem);
  color:#fff;
  font-size:clamp(0.75rem,2.6133vw,0.882rem);
  line-height:1;
}
.bottom-nav .nav-center>span{
  position:absolute;
  top:calc(min(11.7333vw,3.96rem) + min(.8267vw,0.279rem));
  right:0;
  left:0;
  color:#fff;
}

@media(max-width:499px){
  .phone-page{scrollbar-width:none}
  .phone-page::-webkit-scrollbar{display:none}
}

/* 首页视觉整理：保留现有内容与交互，改用更清晰的卡片层级和舒适留白。 */
#home-panel{
  --home-gutter:clamp(0.75rem,3.2vw,1rem);
  --home-gap:clamp(0.4375rem,2.05vw,0.625rem);
  --home-radius:clamp(0.875rem,3.85vw,1.25rem);
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0 clamp(3.375rem,12.8vw,4rem),#f4f7fb clamp(3.375rem,12.8vw,4rem),#eef3f9 100%);
}
:is(#home-panel,#game-panel)>.topbar{
  height:clamp(3.375rem,12.8vw,4rem);
  min-height:clamp(3.375rem,12.8vw,4rem);
  padding:0 var(--home-gutter);
  border-bottom:1px solid rgba(220,229,240,.72);
  background:#fff;
}
:is(#home-panel,#game-panel) .topbar-logo{
  left:var(--home-gutter);
  width:clamp(5.375rem,22vw,6.875rem);
  max-width:clamp(5.375rem,22vw,6.875rem);
}
:is(#home-panel,#game-panel) .topbar-logo img{
  width:clamp(5.375rem,22vw,6.875rem);
  height:clamp(2.125rem,8.8vw,2.75rem);
  flex-basis:clamp(5.375rem,22vw,6.875rem);
}
:is(#home-panel,#game-panel) .top-actions{margin-right:0}
:is(#home-panel,#game-panel) .top-actions button{
  width:clamp(2.5rem,10.25vw,3rem);
  height:clamp(2.5rem,10.25vw,3rem);
  padding:clamp(0.4375rem,1.8vw,0.5625rem);
  border-radius:50%;
}
:is(#home-panel,#game-panel) .top-actions button:hover{background:#f0f6ff}
:is(#home-panel,#game-panel) .top-actions svg{
  width:clamp(1.5625rem,6.5vw,1.9375rem);
  height:clamp(1.5625rem,6.5vw,1.9375rem);
}

/* 轮播成为独立海报卡；分页点直接覆在图片上，不再占一整条灰色区域。 */
:is(#home-panel,#game-panel) .hero{
  width:auto;
  height:auto;
  aspect-ratio:878/329;
  margin:var(--home-gutter) var(--home-gutter) 0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.82);
  border-radius:var(--home-radius);
  background:#e8f0f8;
  box-shadow:0 8px 24px rgba(42,83,128,.13);
}
:is(#home-panel,#game-panel) .hero-track{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  border-radius:inherit;
  background:#e8f0f8;
}
:is(#home-panel,#game-panel) .hero-slide{border-radius:inherit;background:#e8f0f8}
:is(#home-panel,#game-panel) .hero-slide>img{height:100%;border-radius:inherit;object-fit:fill!important}
:is(#home-panel,#game-panel) .hero-dots{
  bottom:clamp(0.3125rem,1.55vw,0.5rem);
  height:1.5rem;
  padding:0 0.3125rem;
  border-radius:62.4375rem;
  background:rgba(21,52,91,.18);
}
:is(#home-panel,#game-panel) .hero-dots button{
  width:1.5rem;
  height:1.5rem;
  flex-basis:1.5rem;
}
:is(#home-panel,#game-panel) .hero-dots button+button{margin-left:0}
:is(#home-panel,#game-panel) .hero-dots button:before{
  bottom:50%;
  width:0.25rem;
  height:0.25rem;
  background:rgba(255,255,255,.72);
  box-shadow:0 1px 3px rgba(20,51,87,.2);
  transform:translate(-50%,50%);
}
:is(#home-panel,#game-panel) .hero-dots button.active:before{
  width:0.875rem;
  height:0.25rem;
  background:#fff;
}

/* 公告和账户各自成卡，避免快捷入口把登录文案挤成省略号。 */
:is(#home-panel,#game-panel) .home-user-card{
  width:auto;
  height:auto;
  min-height:0;
  margin:clamp(0.6875rem,3.05vw,0.9375rem) var(--home-gutter) 0;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
:is(#home-panel,#game-panel) .home-user-card .notice-bar{
  width:100%;
  height:clamp(2rem,8.45vw,2.4375rem);
  min-height:clamp(2rem,8.45vw,2.4375rem);
  margin:0;
  padding:0 clamp(0.625rem,2.8vw,0.875rem);
  border:1px solid rgba(218,229,241,.9);
  border-radius:clamp(0.6875rem,3vw,0.9375rem);
  background:rgba(255,255,255,.92);
  box-shadow:0 4px 14px rgba(48,84,125,.06);
}
:is(#home-panel,#game-panel) .home-user-card .notice-icon{
  width:clamp(1.25rem,5.25vw,1.5625rem);
  height:clamp(1.25rem,5.25vw,1.5625rem);
  color:#4c88d7;
}
:is(#home-panel,#game-panel) .home-user-card .notice-icon svg{
  width:clamp(1.0625rem,4.55vw,1.375rem);
  height:clamp(1.0625rem,4.55vw,1.375rem);
}
:is(#home-panel,#game-panel) .home-user-card .notice-bar p{
  color:#66778d;
  font-size:clamp(0.75rem,2.95vw,0.875rem);
  line-height:clamp(2rem,8.45vw,2.4375rem);
}
:is(#home-panel,#game-panel) .home-user-card .notice-bar>button{
  min-height:clamp(2rem,8.45vw,2.4375rem);
  padding-left:0.4375rem;
  font-size:clamp(0.75rem,2.55vw,0.75rem);
}
#home-panel .home-user-card .account-card{
  position:relative;
  display:grid;
  width:100%;
  height:auto;
  min-height:clamp(5.25rem,22.8vw,6.75rem);
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(0.5rem,2.3vw,0.75rem);
  margin:var(--home-gap) 0 0;
  padding:clamp(0.6875rem,3vw,0.9375rem);
  border:1px solid rgba(218,229,241,.9);
  border-radius:var(--home-radius);
  background:#fff;
  box-shadow:0 7px 22px rgba(42,78,120,.09);
}
#home-panel .home-user-card .account-copy{
  position:static;
  display:grid;
  width:auto;
  min-width:0;
  height:auto;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  column-gap:0.3125rem;
  padding:0;
  border:0;
  background:transparent;
  text-align:left;
  transform:none;
}
#home-panel .home-user-card .account-copy-entry{
  display:grid;
  min-width:0;
  gap:0.1875rem;
  padding:0;
  border:0;
  color:inherit;
  background:transparent;
  text-align:left;
}
#home-panel .home-user-card .account-copy-entry strong{
  width:100%;
  overflow:hidden;
  margin:0;
  color:#26354b;
  font-size:clamp(0.875rem,4vw,1.125rem);
  line-height:1.35;
  text-align:left;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#home-panel .home-user-card .account-copy-entry small{
  width:100%;
  overflow:hidden;
  color:#75869d;
  font-size:clamp(0.75rem,2.55vw,0.75rem);
  line-height:1.35;
  text-align:left;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#home-panel .home-user-card .home-score-toggle{
  display:grid;
  width:clamp(1.5rem,6.7vw,1.875rem);
  height:clamp(1.5rem,6.7vw,1.875rem);
  place-items:center;
  margin-top:0;
  padding:0;
  border:0;
  border-radius:50%;
  color:#4b7fbd;
  background:#eef5ff;
}
#home-panel .home-user-card .home-score-toggle:hover{background:#e2efff}
#home-panel .home-user-card .home-score-toggle svg{
  width:clamp(0.9375rem,4.2vw,1.1875rem);
  height:clamp(0.9375rem,4.2vw,1.1875rem);
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.75;
}
#home-panel .home-user-card .home-score-toggle-slash{display:none}
#home-panel .home-user-card .home-score-toggle.is-hidden .home-score-toggle-slash{display:block}
#home-panel .home-user-card .account-copy p{display:none}
#home-panel .home-user-card .quick-actions{
  position:static;
  display:grid;
  width:auto;
  height:auto;
  grid-template-columns:repeat(4,clamp(2.25rem,10.25vw,3rem));
  align-items:start;
  gap:clamp(0.125rem,1.05vw,0.375rem);
  padding-left:clamp(0.5rem,2.3vw,0.75rem);
  border-left:1px solid #e8edf3;
}
#home-panel .home-user-card .quick-actions:before{display:none}
#home-panel .home-user-card .quick-actions button{
  display:grid!important;
  width:clamp(2.25rem,10.25vw,3rem);
  min-width:0;
  height:auto;
  grid-template-rows:auto auto;
  justify-items:center;
  gap:0.25rem;
  color:#34455b;
  font-size:clamp(0.75rem,2.45vw,0.75rem);
  line-height:1.2;
}
#home-panel .home-user-card .quick-actions i{
  width:clamp(2.125rem,9.4vw,2.6875rem);
  height:clamp(2.125rem,9.4vw,2.6875rem);
  flex-basis:auto;
  background:linear-gradient(145deg,#54c8ff 0,#258ff5 58%,#1677e8 100%);
  box-shadow:0 5px 12px rgba(23,120,226,.22),inset 0 1px rgba(255,255,255,.45);
}
#home-panel .home-user-card .quick-actions svg{
  width:clamp(1.3125rem,5.8vw,1.6875rem);
  height:clamp(1.3125rem,5.8vw,1.6875rem);
}

/* 游戏标题负责区分账户卡与内容区，七个入口仍保持原点击逻辑。 */
#home-panel>.section-title{
  display:flex;
  align-items:center;
  margin:clamp(1.0625rem,4.6vw,1.4375rem) var(--home-gutter) clamp(0.5625rem,2.6vw,0.8125rem);
}
#home-panel>.section-title small{display:none}
#home-panel>.section-title h2{
  display:flex;
  align-items:center;
  gap:0.5rem;
  margin:0;
  color:#26354b;
  font-size:clamp(1rem,4.35vw,1.25rem);
  font-weight:750;
}
#home-panel>.section-title h2:before{
  width:0.25rem;
  height:1em;
  content:"";
  border-radius:62.4375rem;
  background:linear-gradient(#47bdfd,#1677ef);
  box-shadow:0 2px 6px rgba(22,119,239,.24);
}
#home-panel>.section-title button{
  min-height:1.75rem;
  padding:0 0.625rem;
  border-radius:62.4375rem;
  color:#307fd9;
  background:#eaf3ff;
  font-size:clamp(0.75rem,2.45vw,0.75rem);
}

/* 首页玩法图支持平台逐槽配置；不足七项时自动收紧为连续两列。 */
#home-panel .featured-rooms{
  width:auto;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:none;
  grid-auto-rows:clamp(6.375rem,29vw,9.0625rem);
  gap:var(--home-gap);
  margin:0 var(--home-gutter);
  padding:0 0 clamp(1.25rem,5.2vw,1.625rem);
}
#home-panel .featured-rooms.tile-count-7{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:clamp(6.375rem,29vw,9.0625rem) clamp(6.375rem,29vw,9.0625rem) clamp(6rem,27.5vw,8.5625rem);
}
#home-panel .home-game-tile,
#home-panel .home-game-tile.tile-1,
#home-panel .home-game-tile.tile-2,
#home-panel .home-game-tile.tile-3,
#home-panel .home-game-tile.tile-4,
#home-panel .home-game-tile.tile-5,
#home-panel .home-game-tile.tile-6,
#home-panel .home-game-tile.tile-7{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.9);
  border-radius:clamp(0.75rem,3.35vw,1.0625rem);
  background:#eaf7ff;
  box-shadow:0 6px 17px rgba(40,83,130,.12),inset 0 0 0 1px rgba(177,207,235,.16);
  isolation:isolate;
  transition:transform .16s ease,box-shadow .16s ease;
}
#home-panel .featured-rooms:not(.tile-count-7) .home-game-tile{
  grid-row:auto;
  grid-column:auto;
  aspect-ratio:8/5;
}
#home-panel .featured-rooms:is(.tile-count-3,.tile-count-5) .home-game-tile:last-child{grid-column:1/-1;aspect-ratio:16/5}
#home-panel .featured-rooms.tile-count-1 .home-game-tile:last-child{grid-column:1/-1;aspect-ratio:8/5}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-1{grid-row:1/3;grid-column:1/3}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-2{grid-row:1;grid-column:3/5}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-3{grid-row:2;grid-column:3/5}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-4{grid-row:3;grid-column:1}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-5{grid-row:3;grid-column:2}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-6{grid-row:3;grid-column:3}
#home-panel .featured-rooms.tile-count-7 .home-game-tile.tile-7{grid-row:3;grid-column:4}
#home-panel .home-game-image{
  position:absolute;
  z-index:0;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  pointer-events:none;
}
#home-panel .home-game-image.is-default{object-fit:cover!important}
#home-panel .home-game-tile:after{
  position:absolute;
  z-index:1;
  content:"";
  inset:0;
  border-radius:inherit;
  background:linear-gradient(145deg,rgba(255,255,255,.13),transparent 48%,rgba(36,120,210,.05));
  pointer-events:none;
}
#home-panel .home-game-tile:active{
  transform:scale(.982);
  box-shadow:0 3px 10px rgba(40,83,130,.13),inset 0 0 0 1px rgba(177,207,235,.2);
}
#home-panel .home-game-copy,
#home-panel .tile-2 .home-game-copy,
#home-panel .tile-3 .home-game-copy{
  top:clamp(0.5rem,2.35vw,0.75rem);
  left:clamp(0.5rem,2.35vw,0.75rem);
  max-width:calc(76% - 0.5rem);
  gap:0.1875rem;
  padding:clamp(0.375rem,1.65vw,0.5rem) clamp(0.4375rem,1.95vw,0.625rem);
  border:1px solid rgba(255,255,255,.76);
  border-radius:clamp(0.5625rem,2.55vw,0.8125rem);
  background:rgba(255,255,255,.72);
  box-shadow:0 3px 10px rgba(42,84,126,.06);
}
#home-panel .home-game-copy strong,
#home-panel .tile-2 .home-game-copy strong,
#home-panel .tile-3 .home-game-copy strong{
  width:100%;
  overflow:hidden;
  color:#263954;
  font-size:clamp(0.875rem,3.75vw,1.1875rem);
  line-height:1.2;
  text-overflow:ellipsis;
  text-shadow:0 1px rgba(255,255,255,.5);
  white-space:nowrap;
}
#home-panel .home-game-copy small{
  overflow:hidden;
  color:#61758f;
  font-size:clamp(0.75rem,2.1vw,0.75rem);
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#home-panel .tile-4 .home-game-copy,
#home-panel .tile-5 .home-game-copy,
#home-panel .tile-6 .home-game-copy,
#home-panel .tile-7 .home-game-copy{
  top:0.3125rem;
  right:0.3125rem;
  left:0.3125rem;
  max-width:none;
  padding:0.3125rem 0.25rem;
  border-radius:0.5rem;
  background:rgba(255,255,255,.78);
}
#home-panel .tile-4 .home-game-copy strong,
#home-panel .tile-5 .home-game-copy strong,
#home-panel .tile-6 .home-game-copy strong,
#home-panel .tile-7 .home-game-copy strong{
  overflow:visible;
  color:#293b53;
  font-size:clamp(0.75rem,2.55vw,0.75rem);
  line-height:1.22;
  text-align:center;
  text-overflow:clip;
  white-space:normal;
  word-break:break-all;
}

/* 底栏改成轻量悬浮托盘，中心入口不再大面积遮挡最后一排卡片。 */
.page-scroll{padding-bottom:calc(5.875rem + env(safe-area-inset-bottom))}
.bottom-nav{
  bottom:0;
  height:calc(4.75rem + env(safe-area-inset-bottom));
  align-items:end;
  padding:0.5rem 0.4375rem calc(0.375rem + env(safe-area-inset-bottom));
  overflow:visible;
  border:1px solid rgba(216,226,238,.88);
  border-bottom:0;
  border-radius:clamp(1.125rem,4.8vw,1.5rem) clamp(1.125rem,4.8vw,1.5rem) 0 0;
  background:rgba(255,255,255,.96);
  box-shadow:0 -8px 28px rgba(41,71,108,.11);
  backdrop-filter:saturate(1.2) blur(16px);
}
.bottom-nav button{
  min-height:3.375rem;
  color:#8f9db1;
  font-size:clamp(0.75rem,2.45vw,0.75rem);
}
.bottom-nav button:not(.nav-center){
  height:3.375rem;
  grid-template-rows:2.25rem 0.8125rem;
  align-content:end;
  gap:0.125rem;
}
.bottom-nav button:not(.nav-center) i{
  width:2.25rem;
  height:2.25rem;
  place-items:center;
}
.bottom-nav button:not(.nav-center) i svg{
  width:1.9375rem;
  height:1.9375rem;
}
.bottom-nav button>span{
  height:0.8125rem;
  color:#7d8ba0;
  font-size:clamp(0.75rem,2.45vw,0.75rem);
  line-height:0.8125rem;
}
.bottom-nav button.active>span{color:#1677ef;font-weight:650}
.bottom-nav .nav-center{
  display:grid;
  height:4.25rem;
  min-height:4.25rem;
  place-items:center;
  padding:0;
}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  display:flex;
  width:clamp(3.625rem,16.2vw,4.25rem);
  height:clamp(3.625rem,16.2vw,4.25rem);
  aspect-ratio:auto;
  margin-top:clamp(-1.5625rem,-5.8vw,-1.125rem);
  border:5px solid #fff;
  background:linear-gradient(145deg,#50c4ff 0,#278ef4 55%,#116be1 100%);
  box-shadow:0 7px 18px rgba(28,116,220,.3),0 0 0 1px rgba(49,147,239,.15);
}
.bottom-nav .nav-center i svg{
  width:clamp(1.8125rem,7.8vw,2.1875rem);
  height:clamp(1.8125rem,7.8vw,2.1875rem);
}
.bottom-nav .nav-center i span{
  height:0.6875rem;
  margin-top:-0.125rem;
  font-size:clamp(0.75rem,2.25vw,0.75rem);
  line-height:0.6875rem;
}
.bottom-nav .nav-center>span{
  top:auto;
  bottom:0.0625rem;
  color:#1677ef;
  font-size:clamp(0.75rem,2.25vw,0.75rem);
}

@media(hover:hover){
  #home-panel .home-game-tile:hover{box-shadow:0 9px 24px rgba(40,83,130,.17),inset 0 0 0 1px rgba(177,207,235,.2);transform:translateY(-0.125rem)}
}

/* 我的页资料头只保留账号和会员ID，会员ID提高字号与对比。 */
#mine-panel .mine-profile-top h1{margin-top:0}
#mine-panel .mine-profile-top p{
  margin-top:0.3125rem;
  color:#315778;
  font-size:clamp(0.75rem,3.2vw,0.9375rem);
  font-weight:600;
  letter-spacing:.01em;
}
#mine-panel .mine-profile-card{
  height:auto;
  min-height:0;
}
#mine-panel .mine-profile-card.without-checkin .mine-wallet-row{margin-bottom:0}
#mine-panel .mine-wallet-row i{
  color:#fff;
  background:linear-gradient(145deg,#ffd75b,#f5a623);
  box-shadow:0 3px 8px rgba(206,134,23,.24),inset 0 1px rgba(255,255,255,.55);
}
#mine-panel .mine-wallet-row i svg{
  width:68%;
  height:68%;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
#mine-panel .mine-wallet-row>span{min-width:0;white-space:nowrap}
#mine-panel .mine-wallet-row strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#mine-panel .mine-checkin-entry{
  position:relative;
  z-index:1;
  display:grid;
  width:100%;
  height:3.625rem;
  grid-template-columns:3.625rem minmax(0,1fr) auto;
  align-items:center;
  gap:0.875rem;
  padding:0;
  border:0;
  color:#29425e;
  background:transparent;
  text-align:left;
}
#mine-panel .mine-checkin-entry>span{
  display:grid;
  width:3.625rem;
  height:3.625rem;
  place-items:center;
  border:5px solid rgba(255,255,255,.58);
  border-radius:1.1875rem;
  color:#1677ef;
  background:#fff;
  box-shadow:0 4px 10px rgba(52,112,179,.15);
}
#mine-panel .mine-checkin-entry>span svg{
  width:1.6875rem;
  height:1.6875rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
#mine-panel .mine-checkin-entry>div{display:grid;min-width:0;gap:0.3125rem}
#mine-panel .mine-checkin-entry strong{
  color:#214a78;
  font-size:1.125rem;
  line-height:1.1;
}
#mine-panel .mine-checkin-entry small{
  overflow:hidden;
  color:#476988;
  font-size:0.75rem;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#mine-panel .mine-checkin-entry>button{
  min-width:4.5rem;
  height:2.125rem;
  padding:0 0.8125rem;
  border:0;
  border-radius:62.4375rem;
  color:#fff;
  background:#1677ef;
  box-shadow:0 4px 10px rgba(22,119,239,.2);
  font-size:0.75rem;
  font-weight:700;
  white-space:nowrap;
}
#mine-panel .mine-checkin-entry>button:disabled{
  color:#54708c;
  background:rgba(255,255,255,.74);
  box-shadow:none;
  opacity:1;
}

@media(max-width:499px){
  #mine-panel .mine-checkin-entry{
    height:2.625rem;
    grid-template-columns:2.625rem minmax(0,1fr) auto;
    gap:0.625rem;
  }
  #mine-panel .mine-checkin-entry>span{
    width:2.625rem;
    height:2.625rem;
    border-width:4px;
    border-radius:0.875rem;
  }
  #mine-panel .mine-checkin-entry>span svg{width:1.25rem;height:1.25rem}
  #mine-panel .mine-checkin-entry>div{gap:0.1875rem}
  #mine-panel .mine-checkin-entry strong{font-size:0.875rem}
  #mine-panel .mine-checkin-entry small{font-size:0.75rem}
  #mine-panel .mine-checkin-entry>button{min-width:3.5625rem;height:1.75rem;padding-inline:0.5625rem;font-size:0.75rem}
}

/* 首页首屏合并为连续白色整体：顶部、轮播、公告与账户不再拆成多张卡。 */
#app-view,
#app-view>.page-scroll,
#home-panel{background:#eef3f9}
:is(#home-panel,#game-panel)>.topbar{border-bottom:1px solid #edf1f6;box-shadow:none}
:is(#home-panel,#game-panel)>.hero{
  width:100%;
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
:is(#home-panel,#game-panel)>.hero .hero-track,
:is(#home-panel,#game-panel)>.hero .hero-slide,
:is(#home-panel,#game-panel)>.hero .hero-slide>img{border-radius:0}
:is(#home-panel,#game-panel)>.home-user-card{
  width:100%;
  margin:0;
  padding:clamp(0.625rem,2.8vw,0.875rem) var(--home-gutter) clamp(0.75rem,3.3vw,1.0625rem);
  border-radius:0 0 var(--home-radius) var(--home-radius);
  background:#fff;
  box-shadow:0 7px 20px rgba(42,78,120,.09);
}
#home-panel .home-user-card .account-card{
  min-height:clamp(4.75rem,20.5vw,6rem);
  margin:clamp(0.375rem,1.8vw,0.5625rem) 0 0;
  padding:clamp(0.5rem,2.2vw,0.6875rem) 0.125rem 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#home-panel .featured-rooms{margin:var(--home-gap) var(--home-gutter) 0}

/* 底栏收紧为直边矩形，入口图标与文字使用同一条水平中轴线。 */
.page-scroll{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}
.bottom-nav{
  height:calc(3.625rem + env(safe-area-inset-bottom));
  align-items:start;
  padding:0.125rem 0.25rem calc(0.125rem + env(safe-area-inset-bottom));
  border:0;
  border-top:1px solid #edf1f6;
  border-radius:0;
  background:#fff;
  box-shadow:0 -3px 12px rgba(40,70,105,.06);
  backdrop-filter:none;
}
.bottom-nav button{
  width:100%;
  min-height:0;
  justify-items:center;
  text-align:center;
}
.bottom-nav button:not(.nav-center){
  display:grid;
  height:3.3125rem;
  grid-template-rows:2.125rem 0.875rem;
  align-content:start;
  justify-items:center;
  gap:0.0625rem;
}
.bottom-nav button:not(.nav-center) i{
  display:grid;
  width:2.125rem;
  height:2.125rem;
  place-items:center;
}
.bottom-nav button:not(.nav-center) i svg{
  display:block;
  width:1.9375rem;
  height:1.9375rem;
  margin:0;
}
.bottom-nav button>span{
  width:100%;
  height:0.875rem;
  margin:0;
  line-height:0.875rem;
  text-align:center;
}
.bottom-nav .nav-center{
  display:grid;
  height:3.5rem;
  min-height:3.5rem;
  place-items:center;
  padding:0;
}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  width:clamp(3.875rem,17vw,4.375rem);
  height:clamp(3.875rem,17vw,4.375rem);
  margin-top:clamp(-2rem,-7.5vw,-1.5625rem);
}

/* 游戏大厅只保留左侧号段分类，搜索框下方直接衔接具体房间。 */
#game-panel:not([hidden]){
  min-height:calc(100dvh - 3.625rem - env(safe-area-inset-bottom));
  grid-template-rows:4.8125rem 5.25rem minmax(calc(100dvh - 13.6875rem - env(safe-area-inset-bottom)),auto);
}
#game-panel>.game-filters{grid-row:2/4}
#game-panel>.room-list{grid-row:3;padding-top:0.5rem}

@media(max-width:499px){
  #game-panel:not([hidden]){
    grid-template-rows:3.75rem 4.0625rem minmax(calc(100dvh - 11.4375rem - env(safe-area-inset-bottom)),auto);
  }
  #game-panel>.game-filters{grid-row:2/4}
  #game-panel>.room-list{grid-row:3;padding-top:0.5rem}
}

/* 所有余额前统一使用金色金币，余额本身不再承担手动刷新交互。 */
.player-coin-icon{
  display:grid;
  flex:0 0 auto;
  place-items:center;
  border:1px solid #e7aa22;
  border-radius:50%;
  color:#9b6500;
  background:linear-gradient(145deg,#fff3a6 0,#ffd24f 52%,#f2a817 100%);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.72),0 2px 5px rgba(191,126,0,.2);
}
.player-coin-icon svg{
  width:72%;
  height:72%;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.game-lobby-balance{cursor:default}
.game-lobby-balance .player-coin-icon,
.game-room-balance .player-coin-icon,
#mine-panel .mine-wallet-row .player-coin-icon{
  color:#9b6500;
  background:linear-gradient(145deg,#fff3a6 0,#ffd24f 52%,#f2a817 100%);
}
.game-lobby-balance .player-coin-icon{width:1.8125rem;height:1.8125rem}
.game-room-balance{cursor:default}
.game-room-balance .player-coin-icon{width:1.375rem;height:1.375rem;margin-right:0.3125rem}

@media(max-width:499px){
  .game-lobby-balance .player-coin-icon{width:1.375rem;height:1.375rem}
  .game-room-balance .player-coin-icon{width:1.125rem;height:1.125rem;margin-right:0.25rem}
}

/* 登录与注册内容在可用屏幕内垂直居中，矮屏仍由外层正常滚动。 */
.auth-shell{
  justify-content:center;
  padding-top:clamp(3.625rem,8vh,5.125rem);
  padding-bottom:clamp(2rem,6vh,3.875rem);
}

/* 注册表单与登录表单共用同一尺寸，字段名称保留为无障碍文本但不额外占行。 */
#register-form{
  width:100%;
  min-width:0;
  gap:clamp(0.75rem,3.2vw,1.0625rem);
}
#register-form .form-pair{gap:clamp(0.75rem,3.2vw,1.0625rem)}
#register-form>label,
#register-form .form-pair>label,
#register-form .captcha-row,
#register-form .auth-input{width:100%;min-width:0}
#register-form .auth-intro,
#register-form>label>span,
#register-form .form-pair>label>span{
  position:absolute;
  width:0.0625rem;
  height:0.0625rem;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
}
#register-form .auth-input,
#register-form .captcha-image,
#register-form .auth-submit{height:clamp(2.25rem,9.333vw,3.15rem)}
#register-form .auth-input{border-color:#3066ff;border-radius:62.4375rem}
#register-form .auth-input i{width:clamp(2.125rem,8.533vw,2.875rem);font-size:clamp(0.8125rem,3.733vw,1.25rem)}
#register-form .auth-input input{font-size:clamp(0.8125rem,3.733vw,1.25rem)}
#register-form .captcha-row{grid-template-columns:minmax(0,1fr) clamp(5.375rem,23.6vw,7.9375rem);gap:clamp(0.4375rem,2.133vw,0.75rem)}
#register-form .captcha-image,
#register-form .auth-submit{border-radius:62.4375rem}
#register-form .form-error:empty{display:none}
#register-form .auth-submit{margin-top:0;font-size:clamp(0.8125rem,3.2vw,1.0625rem)}
#register-form .auth-submit span{display:none}
.auth-tabs [data-auth-prompt]{
  align-items:center;
  justify-content:center;
  gap:0.3125rem;
  color:#747f90;
  font-size:clamp(0.75rem,3.2vw,0.875rem);
}
.auth-tabs [data-auth-prompt]:not([hidden]){display:flex}
.auth-tabs [data-auth-prompt] button{
  height:auto;
  padding:0.1875rem 0;
  color:#1677ff;
  background:transparent;
  font-size:inherit;
  font-weight:700;
}
.auth-tabs [data-auth-prompt] button.active{display:inline-block}

/* 首页账户快捷区压缩纵向留白；游客登录文案向右收进一些。 */
:is(#home-panel,#game-panel)>.home-user-card{
  padding-bottom:clamp(0.4375rem,2vw,0.625rem);
}
#home-panel .home-user-card .account-card{
  min-height:clamp(4rem,18vw,4.875rem);
  margin-top:clamp(0.1875rem,.9vw,0.3125rem);
  padding-top:clamp(0.25rem,1.2vw,0.375rem);
}
#home-panel .home-user-card .account-copy{
  padding-left:clamp(0.625rem,2.8vw,0.875rem);
}

/* 顶部栏缩短10px，左右内容始终按新高度垂直居中。 */
:is(#home-panel,#game-panel)>.topbar{
  display:flex;
  height:clamp(2.75rem,calc(12.8vw - 0.625rem),3.375rem);
  min-height:clamp(2.75rem,calc(12.8vw - 0.625rem),3.375rem);
  align-items:center;
}
:is(#home-panel,#game-panel) .topbar-logo{
  top:50%;
  transform:translateY(-50%);
}
:is(#home-panel,#game-panel) .top-actions{align-self:center}

/* 公告和账户之间不再保留额外空档，账户区贴合实际内容高度。 */
:is(#home-panel,#game-panel)>.home-user-card{padding-bottom:clamp(0.25rem,1vw,0.375rem)}
#home-panel .home-user-card .account-card{
  min-height:clamp(3.375rem,15vw,4rem);
  margin-top:0;
  padding-top:0;
}

/* 当前皮肤按gameid动态分类，并始终合并同一游戏下的房间。 */
#game-panel:not([hidden]){
  grid-template-rows:4.8125rem minmax(calc(100dvh - 8.4375rem - env(safe-area-inset-bottom)),auto);
}
#game-panel>.game-filters{grid-row:2/3}
#game-panel>.room-list{grid-row:2;padding-top:1.1875rem}

@media(max-width:499px){
  #game-panel:not([hidden]){
    grid-template-rows:3.75rem minmax(calc(100dvh - 7.375rem - env(safe-area-inset-bottom)),auto);
  }
  #game-panel>.game-filters{grid-row:2/3}
  #game-panel>.room-list{grid-row:2;padding-top:0.875rem}
}

/* Player各主页面只统一顶部栏高度，内部字体、Logo和图标尺寸保持不变。 */
:root{--player-topbar-height:clamp(2.75rem,calc(12.8vw - 0.625rem),3.375rem)}
:is(#home-panel,#game-panel)>.topbar,
#app-view .sub-header,
.activity-detail-header{
  height:var(--player-topbar-height);
  min-height:var(--player-topbar-height);
  align-items:center;
}
#app-view .sub-header,
.activity-detail-header{flex-basis:var(--player-topbar-height)}
#game-panel:not([hidden]){
  grid-template-rows:var(--player-topbar-height) minmax(calc(100dvh - var(--player-topbar-height) - 3.625rem - env(safe-area-inset-bottom)),auto);
}

/* 公告卡片固定完整展示，不提供详情点击；完整时间放在右下角。 */
#notice-panel .notice-card{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  cursor:default;
}
#notice-panel .notice-card p{
  display:block;
  overflow:visible;
  margin:0;
  padding:0;
  color:#606b7b;
  line-height:1.75;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  -webkit-line-clamp:unset;
}
#notice-panel .notice-card time{
  align-self:flex-end;
  margin-top:0.125rem;
  color:#929cab;
  font-size:0.75rem;
  line-height:1.3;
}
#notice-panel .notice-card:active{
  border-color:transparent;
  background:#fff;
  transform:none;
}

/* 游戏左侧入口使用图形而不是游戏名称首字。 */
#game-panel>.game-filters button i{
  display:grid;
  place-items:center;
}
#game-panel>.game-filters button i svg{
  display:block;
  width:1.25rem;
  height:1.25rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.65;
}

/* 页面内容高度与58px底栏严格闭合，避免长屏短内容滚到底露出背景断层。 */
#app-view>.page-scroll{
  min-height:100dvh;
  padding-bottom:calc(3.625rem + env(safe-area-inset-bottom));
}
#app-view .tab-panel{
  min-height:calc(100dvh - 3.625rem - env(safe-area-inset-bottom));
}
#chat-panel{
  height:calc(100dvh - 3.625rem - env(safe-area-inset-bottom));
  min-height:0;
}
body.player-room-active #app-view>.page-scroll{
  padding-bottom:0;
}
body.player-room-active #room-panel{
  height:100dvh;
  min-height:0;
}

/* 中间充值入口增加上托白弧和底部浅灰圆弧，形成嵌入底栏的层次。 */
.bottom-nav .nav-center{isolation:isolate}
.bottom-nav .nav-center:before{
  position:absolute;
  z-index:0;
  top:clamp(-1.5rem,-5.3vw,-1.0625rem);
  left:50%;
  display:block;
  width:clamp(5.5rem,24vw,6.5rem);
  height:clamp(3rem,13vw,3.625rem);
  content:"";
  border-radius:3.25rem 3.25rem 0 0;
  background:#fff;
  transform:translateX(-50%);
}
.bottom-nav .nav-center:after{
  position:absolute;
  z-index:1;
  top:clamp(1.625rem,7.3vw,2rem);
  left:50%;
  width:clamp(4.125rem,18vw,4.875rem);
  height:clamp(1.5625rem,7vw,1.9375rem);
  content:"";
  border-radius:0 0 50% 50%;
  background:#edf1f6;
  box-shadow:0 4px 8px rgba(42,67,99,.08);
  transform:translateX(-50%);
}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  position:relative;
  z-index:2;
}

/* 圆弧由底栏本身承托，避免伪元素被中间按钮的布局范围限制。 */
.bottom-nav .nav-center{isolation:auto}
.bottom-nav .nav-center:before,
.bottom-nav .nav-center:after{display:none}
.bottom-nav:before{
  position:absolute;
  z-index:0;
  top:clamp(-1.6875rem,-6.2vw,-1.3125rem);
  left:50%;
  display:block;
  width:clamp(5.875rem,25.5vw,6.75rem);
  height:clamp(3.875rem,17vw,4.5rem);
  content:"";
  border-radius:3.375rem 3.375rem 0 0;
  background:#fff;
  transform:translateX(-50%);
}
.bottom-nav:after{
  position:absolute;
  z-index:1;
  top:clamp(1.4375rem,6.5vw,1.75rem);
  left:50%;
  width:clamp(4.5rem,19.5vw,5.125rem);
  height:clamp(1.5rem,6.8vw,1.8125rem);
  content:"";
  border-radius:0 0 2.625rem 2.625rem;
  background:#edf1f6;
  transform:translateX(-50%);
}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  z-index:3;
}

/* 登录前后身份信息使用同一起点；登录后的分数突出显示，眼睛按钮紧随文字。 */
#home-panel .home-user-card .account-copy{
  width:max-content;
  max-width:100%;
  grid-template-columns:minmax(0,max-content) auto;
  justify-self:start;
  justify-content:start;
  column-gap:clamp(0.375rem,1.8vw,0.5625rem);
}
#home-panel .home-user-card .account-copy-entry{
  width:auto;
  max-width:clamp(6.5625rem,30vw,9.375rem);
}
#app-view:not(.guest-player) #home-panel .home-user-card .account-copy-entry small{
  color:#111;
  font-size:clamp(1rem,4.4vw,1.3125rem);
  font-weight:700;
  line-height:1.2;
}

/* 中心入口下方使用半透明圆球承托，只让圆球下半部从按钮后方露出。 */
.bottom-nav:after{
  top:clamp(-1rem,-3.5vw,-0.75rem);
  width:clamp(4.875rem,21.5vw,5.75rem);
  height:clamp(4.875rem,21.5vw,5.75rem);
  border:1px solid rgba(255,255,255,.72);
  border-radius:50%;
  background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.82),rgba(255,255,255,.46) 72%);
  box-shadow:0 10px 20px rgba(56,78,109,.14),inset 0 0 12px rgba(255,255,255,.34);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

/* 五个入口严格共用按钮中心线；普通图标放大，文字统一加粗。 */
.bottom-nav button:not(.nav-center){
  height:3.5rem;
  grid-template-rows:2.5rem 0.9375rem;
  align-content:start;
  justify-items:center;
  gap:0.0625rem;
}
.bottom-nav button:not(.nav-center) i{
  width:2.5rem;
  height:2.5rem;
  place-items:center;
}
.bottom-nav button:not(.nav-center) i svg{
  width:2.375rem;
  height:2.375rem;
  margin:0;
}
.bottom-nav button>span,
.bottom-nav .nav-center i span{
  font-weight:700;
  text-align:center;
}
.bottom-nav button[data-tab="activity"] i svg{
  transform:translateX(0.25rem);
}

/* 底栏改为参考图的中央内凹缺口：四个主入口分列两侧，凹口保持干净。 */
.bottom-nav{
  isolation:isolate;
  border-top:0;
  background:transparent;
  box-shadow:none;
}
.bottom-nav:before{
  inset:0;
  z-index:0;
  width:auto;
  height:auto;
  border-radius:0;
  background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 58' preserveAspectRatio='none'%3E%3Cpath fill='%23fff' d='M0 0h190c24 0 17 45 60 45s36-45 60-45h190v58H0Z'/%3E%3C/svg%3E") center/500px 100% no-repeat;
  filter:drop-shadow(0 -2px 5px rgba(55,79,112,.06));
  transform:none;
  -webkit-mask:none;
  mask:none;
}
.bottom-nav:after{display:none}
.bottom-nav .nav-center{
  visibility:hidden;
  pointer-events:none;
}
.bottom-nav button:not(.nav-center){z-index:2}
.bottom-nav button:not(.nav-center)>span{
  position:relative;
  top:-0.1875rem;
}

/* 会员ID与复制按钮保持一行，设置页承接密码修改和退出登录。 */
#mine-panel .mine-profile-top p.mine-member-id-row{
  display:flex;
  align-items:center;
  gap:0.375rem;
  overflow:visible;
  white-space:nowrap;
}

/* The profile-card rule above uses the `background` shorthand after the
 * generic avatar rule. Re-apply the image presentation on the more specific
 * selector so a real avatar is centred and covers the circle instead of
 * exposing its top-left pixels with the nickname fallback on top. */
#mine-panel .mine-profile-top .mine-avatar.has-image{
  color:transparent;
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
}
#mine-panel .mine-member-id-row>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
#mine-panel .mine-member-id-row>button{
  display:grid;
  width:1.5rem;
  height:1.5rem;
  flex:0 0 1.5rem;
  place-items:center;
  padding:0;
  border:0;
  border-radius:0.4375rem;
  color:#24577f;
  background:rgba(255,255,255,.5);
}
#mine-panel .mine-member-id-row>button svg{
  width:0.9375rem;
  height:0.9375rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
#settings-panel{background:#f3f6fa}
#settings-panel>.sub-header{border-bottom:1px solid #edf0f4}
#settings-panel .settings-page-body{padding:1rem 0 2rem}
#settings-panel .settings-page-body>.mine-card:first-child{margin-top:0}
#settings-panel .settings-logout-card{margin-top:0.875rem}
#settings-panel .settings-logout-card .logout b{font-size:0.875rem}

/* 我的页菜单必须按实际条目撑开，避免固定高度与按钮最小高度冲突后覆盖下一张卡片。 */
#mine-panel>.menu-card{
  height:auto;
  min-height:0;
  overflow:hidden;
}
#mine-panel>.menu-card button{
  height:auto;
  min-height:3.25rem;
}
#mine-panel>.mine-settings-card{
  position:relative;
  clear:both;
}
@media(max-width:499px){
  #mine-panel>.menu-card{height:auto}
  #mine-panel>.menu-card button{
    height:auto;
    min-height:2.875rem;
  }
}

/* 充值按钮悬浮在平滑缺口上方，圆形内同时呈现金币符号与入口名称。 */
.bottom-nav .nav-center{
  position:relative;
  z-index:4;
  display:block;
  visibility:visible;
  height:3.625rem;
  min-height:0;
  padding:0;
  overflow:visible;
  pointer-events:auto;
}
.bottom-nav .nav-center i,
.bottom-nav .nav-center.active i{
  position:absolute;
  z-index:4;
  top:clamp(-1.75rem,-5.5vw,-1.4375rem);
  left:50%;
  display:flex;
  width:clamp(3.3125rem,13.9vw,3.6875rem);
  height:clamp(3.3125rem,13.9vw,3.6875rem);
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  margin:0;
  border:0;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#35b6ff 0,#1677ff 68%,#0865e6 100%);
  box-shadow:0 7px 18px rgba(22,119,255,.28);
  transform:translateX(-50%);
}
.bottom-nav .nav-center i svg{
  width:clamp(1.4375rem,6vw,1.5625rem);
  height:clamp(1.4375rem,6vw,1.5625rem);
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2.4;
}
.bottom-nav .nav-center i span{
  height:0.875rem;
  margin-top:-0.125rem;
  color:#fff;
  font-size:clamp(0.75rem,2.8vw,0.75rem);
  font-weight:700;
  line-height:0.875rem;
}

/* 我的页承接完整七日签到；大转盘页只展示单个主转盘。 */
#mine-panel .mine-checkin-card{
  margin:0.75rem 1rem;
  padding:1.125rem 0.875rem;
  border:0;
  border-radius:1.125rem;
  background:#fff;
  box-shadow:0 3px 10px rgba(43,73,108,.1);
}
#mine-panel .mine-checkin-card .benefit-checkin-copy>span{display:none}
#mine-panel .mine-checkin-card .benefit-checkin-copy h2{
  margin-top:0;
  font-size:clamp(1.125rem,4.8vw,1.375rem);
}
#mine-panel .mine-checkin-card .benefit-days{margin:1.125rem 0}
#mine-panel .mine-checkin-card .benefit-checkin-action{padding-top:0.9375rem}
#mine-panel .mine-checkin-card .benefit-checkin-action .primary-button{min-width:8.625rem}
#benefit-panel .benefit-root{padding-top:1rem}
#benefit-panel .benefit-wheel-grid{display:block}
#benefit-panel .benefit-wheel-card.premium{
  width:100%;
  padding:clamp(1.25rem,5vw,1.625rem);
}
#benefit-panel .benefit-wheel-card.premium .benefit-wheel-stage{
  width:min(68vw,18.75rem);
  height:min(68vw,18.75rem);
  margin-block:1.5rem 1.25rem;
}
#benefit-panel .benefit-wheel-card.premium .benefit-wheel-value{
  transform:translate(-50%,-50%) rotate(calc(var(--slot)*60deg)) translateY(max(-6.375rem,-23vw)) rotate(calc(var(--slot)*-60deg));
}

/* 充值、提现使用可识别的线性功能图标，不再以单字代替图形。 */
#mine-panel .mine-finance-actions i svg{
  display:block;
  width:72%;
  height:72%;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}

/* 完整签到并入蓝色账户卡，共用同一背景、圆角和阴影。 */
#mine-panel .mine-profile-card .mine-checkin-card{
  position:relative;
  z-index:1;
  margin:1.125rem 0 0;
  padding:1.125rem 0 0;
  border:0;
  border-top:1px solid rgba(255,255,255,.52);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-checkin-copy h2{color:#173b62}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-checkin-copy p{color:#41698f}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-days i{
  border-color:rgba(255,255,255,.65);
  background:rgba(255,255,255,.62);
  font-size:0.75rem;
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-days span{
  font-size:0.75rem;
  font-weight:600;
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-days div.complete i{
  border-color:#1677ff;
  color:#fff;
  background:#1677ff;
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-checkin-action{
  border-top-color:rgba(255,255,255,.5);
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-checkin-action .primary-button{
  color:#1677ef;
  background:rgba(255,255,255,.88);
  box-shadow:none;
}
#mine-panel .mine-profile-card .mine-checkin-card .benefit-checkin-action .primary-button:disabled{
  color:#496c90;
  background:rgba(255,255,255,.68);
  opacity:1;
}

/* 房间消息不足一屏时贴近输入区，超过一屏后仍按正常文档流滚动。 */
.game-group-mode .game-room-chat-messages>.group-chat-message:first-child{
  margin-top:auto;
}
.game-group-mode .game-room-chat-messages{
  padding-bottom:0.75rem;
}

/* 群投模式提供显式回底按钮，位于“专业模式”入口下方。 */
.game-chat-bottom-button{
  position:absolute;
  z-index:4;
  right:1.4375rem;
  bottom:calc(20vh - 4.25rem);
  display:grid;
  justify-items:center;
  gap:0.25rem;
  padding:0;
  border:0;
  color:#47607e;
  background:transparent;
  font-size:0.75rem;
}
.game-chat-bottom-button>i{
  display:grid;
  width:2.625rem;
  height:2.625rem;
  place-items:center;
  border-radius:50%;
  color:#1677ff;
  background:rgba(255,255,255,.94);
  box-shadow:0 5px 14px rgba(45,75,112,.17);
  font-style:normal;
}
.game-chat-bottom-button svg{
  width:1.4375rem;
  height:1.4375rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2;
}
.game-chat-bottom-button>span{white-space:nowrap}
@media(max-width:470px){
  .game-chat-bottom-button{right:1rem}
}

/* 底栏按压时不产生临时反馈色；页面切换完成后，仅当前入口保持蓝色。 */
.bottom-nav button:not(.nav-center){
  color:#9aa9bd!important;
  background:transparent!important;
  -webkit-tap-highlight-color:transparent;
  transition:none;
}
.bottom-nav button:not(.nav-center)>span{
  color:#6d7693!important;
}
.bottom-nav button:not(.nav-center) i{
  color:#9aa9bd!important;
  background:transparent!important;
}
.bottom-nav button:not(.nav-center).active,
.bottom-nav button:not(.nav-center).active>span,
.bottom-nav button:not(.nav-center).active i{
  color:#1677ff!important;
}
.bottom-nav .nav-center.active i{
  border:3px solid #fff;
}
.bottom-nav .nav-center,
.bottom-nav .nav-center:active,
.bottom-nav .nav-center:focus,
.bottom-nav .nav-center:focus-visible{
  background:transparent!important;
  outline:0!important;
  -webkit-tap-highlight-color:transparent;
}

/* 所有无Logo的内页标题栏都显示左上角返回按钮。 */
#app-view .sub-header>button,
#activity-panel>.sub-header>button{
  position:relative;
  z-index:2;
  display:grid;
  visibility:visible;
  place-items:center;
}

/* 首页顶栏并排放置APP下载与公告；公告条只保留正文。 */
:is(#home-panel,#game-panel) .top-actions{display:flex;gap:0.125rem}
:is(#home-panel,#game-panel) .top-actions button{flex:0 0 auto;color:#1677ff}
:is(#home-panel,#game-panel) .home-user-card .notice-bar{grid-template-columns:1.875rem minmax(0,1fr)}

/* 今日收益仅展示汇总值，并提高数字和说明字号。 */
#mine-panel .mine-overview-card{
  height:auto;
  min-height:7.875rem;
}
#mine-panel .mine-overview-card>header{font-size:clamp(0.9375rem,3.9vw,1.125rem);font-weight:600}
#mine-panel .mine-overview-card>header button{font-size:clamp(0.75rem,3.1vw,0.875rem)}
#mine-panel .mine-today-metrics{
  height:3.875rem;
  margin-top:0.8125rem;
  padding:0.375rem 0;
}
#mine-panel .mine-today-metrics>div{
  display:grid;
  min-width:0;
  height:100%;
  align-content:center;
  justify-items:center;
  gap:0.3125rem;
  padding:0 0.3125rem;
}
#mine-panel .mine-today-metrics>div+div{border-left:1px solid #d8d8d8}
#mine-panel .mine-today-metrics strong{
  display:block;
  max-width:100%;
  overflow:hidden;
  color:#14a92a;
  font-size:clamp(0.9375rem,4vw,1.125rem);
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#mine-panel .mine-today-metrics strong.negative{color:#ee5262}
#mine-panel .mine-today-metrics small{
  color:#767f8d;
  font-size:clamp(0.75rem,3vw,0.8125rem);
  font-weight:600;
  white-space:nowrap;
}

/* 我的页菜单按业务顺序完整展开，并用分隔段区分APP下载。 */
#mine-panel>.menu-card{padding-block:0.5rem}
#mine-panel>.menu-card button{min-height:2.875rem}
#mine-panel>.menu-card button>span{gap:0.8125rem}
#mine-panel>.menu-card i{width:1.6875rem;height:1.6875rem}
#mine-panel>.menu-card i svg{
  width:1.375rem;
  height:1.375rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.65;
}
#mine-panel>.menu-card b{font-size:clamp(0.75rem,3.35vw,0.875rem);font-weight:500}
#mine-panel>.menu-card hr{
  height:0.625rem;
  margin:0 -1.4375rem;
  border:0;
  border-top:1px solid #e3e9f0;
  border-bottom:1px solid #e3e9f0;
  background:#f3f6fa;
}

.player-scroll-sentinel{display:grid;min-height:3.25rem;place-items:center;padding:0.625rem 1rem 1.5rem;color:#8a98aa;font-size:0.75rem}
.point-filter{position:relative;z-index:6;padding:1rem 1.25rem 0.125rem}
.point-filter-toggle{display:flex;min-width:7.25rem;height:2.75rem;align-items:center;justify-content:center;gap:0.5625rem;padding:0 1.375rem;border:1px solid #e3ebf4;border-radius:1.375rem;color:#31435a;background:#fff;font-size:0.875rem}
.point-filter-toggle i{width:0.5rem;height:0.5rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-0.125rem);transition:transform .18s ease}
.point-filter-toggle.open i{transform:rotate(225deg) translate(-0.125rem,-0.125rem)}
.point-filter-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.625rem;margin-top:0.75rem;padding:1rem;border:1px solid #e5edf5;border-radius:1.125rem;background:#fff;box-shadow:0 12px 30px rgba(42,78,117,.12)}
.point-filter-panel button{min-height:2.75rem;padding:0.5rem;border:0;border-radius:0.625rem;color:#435269;background:#f1f5fb;font-size:0.8125rem;line-height:1.25}
.point-filter-panel button.active{color:#fff;background:#287ff0}
.finance-request-filter{display:grid;grid-template-columns:repeat(3,1fr);gap:0.625rem;padding:1rem 1.25rem 0.125rem}
.finance-request-filter button{height:2.75rem;border:0;border-radius:0.75rem;color:#45556a;background:#f0f4fa;font-size:0.875rem}
.finance-request-filter button.active{color:#fff;background:#287ff0}
.agent-invite-qr{display:grid;place-items:center;margin:1.125rem 0 0.875rem}
.agent-invite-qr img{display:block;width:min(13.75rem,72%);aspect-ratio:1;border:10px solid #fff;border-radius:1.125rem;box-shadow:0 8px 24px rgba(42,83,122,.12)}
.agent-invite-code{display:flex;width:100%;align-items:center;justify-content:center;gap:0.625rem;margin:0.125rem 0 0.875rem;padding:0.5rem 0.75rem;border:0;border-radius:0.625rem;color:#71859a;background:#f4f8fc;font-size:0.75rem}
.agent-invite-code strong{color:#1f4d72;font-size:1.125rem;letter-spacing:.08em}
.agent-invite-code em{color:#288ee4;font-size:0.75rem;font-style:normal}
.agent-explain-card p{margin:0.875rem 0 0;white-space:pre-wrap}
.agent-link-card{display:flex;width:auto;align-items:center;justify-content:space-between;text-align:left}
.agent-link-card>span{display:grid;gap:0.375rem}
.agent-link-card small{color:#3d9de7;font-size:0.75rem;font-weight:800}
.agent-link-card strong{color:#263e5a;font-size:1.25rem}
.agent-link-card>em{color:#8fa4b8;font-size:1.625rem;font-style:normal}
.downlines-root{display:grid;gap:1rem;padding:1rem 1.0625rem 2rem}
.downlines-period{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem}
.downlines-period button{height:3.125rem;border:1px solid #d7e1ee;border-radius:1.5625rem;color:#50658a;background:#fff;font-size:1.125rem;font-weight:700}
.downlines-period button.active{border-color:#438ff5;color:#fff;background:#438ff5}
.downlines-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.75rem}
.downlines-summary article{min-width:0;padding:1.25rem 1.0625rem;border-radius:1.25rem;background:#fff}
.downlines-summary span,.downlines-summary strong{display:block}
.downlines-summary span{overflow:hidden;color:#7284a4;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}
.downlines-summary strong{margin-top:0.625rem;color:#071322;font-size:1.5rem}
.downlines-list{overflow:hidden;border-radius:1.375rem;background:#fff}
.downlines-list article{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;gap:0.75rem;align-items:center;padding:0.9375rem 1.0625rem;border-bottom:1px solid #e8edf3}
.downlines-list article:last-child{border-bottom:0}
.downlines-list article>span{display:grid;width:2.75rem;height:2.75rem;place-items:center;border-radius:0.875rem;color:#fff;background:#438ff5;font-weight:800}
.downlines-list strong,.downlines-list small{display:block}
.downlines-list strong{color:#263e5a;font-size:0.8125rem}
.downlines-list small{margin-top:0.25rem;color:#8798ab;font-size:0.75rem}
.downlines-list article>b{color:#8c9bad;font-size:0.75rem;font-weight:500}
.downlines-list>.empty{min-height:11.25rem}
/* APP下载作为独立单屏页面展示，内容整体居中且页面不可上下拖动。 */
.app-download-view{
  width:100%;
  height:100dvh;
  min-height:0;
  overflow:hidden;
  overscroll-behavior:none;
}
.app-download-shell{
  display:flex;
  width:min(31.25rem,100%);
  height:100dvh;
  min-height:0;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:clamp(0.875rem,3.2vh,1.625rem);
  overflow:hidden;
  padding:clamp(1.125rem,4vh,2.125rem) 1.5rem;
}
.app-download-loading,.app-download-empty,.app-download-content{grid-row:auto}
.app-download-content{gap:clamp(0.8125rem,2.8vh,1.5rem);padding:0}
.app-download-qrcode{width:min(16.25rem,68vw,37dvh)}
.app-download-point{grid-row:auto;margin:0}

/* 数据统计页：单独的余额摘要、日期筛选、六项柱状图和分数流水入口。 */
#stats-panel{min-height:100dvh;background:#f3f6fa}
.stats-root{display:grid;gap:1rem;padding:0.875rem 1rem 1.75rem}
.stats-balance-card{
  display:grid;
  min-height:11.875rem;
  align-content:center;
  justify-items:center;
  gap:0.875rem;
  overflow:hidden;
  border-radius:1.125rem;
  color:#fff;
  background:linear-gradient(145deg,#43b378,#2da967);
}
.stats-balance-card>.player-coin-icon{
  width:3.875rem;
  height:3.875rem;
  color:#fff;
  background:transparent;
}
.stats-balance-card>.player-coin-icon svg{width:3.625rem;height:3.625rem;stroke-width:1.45}
.stats-balance-card>strong{font-size:clamp(2.375rem,10vw,3.25rem);font-weight:500;line-height:1}
.stats-date-control{position:relative;display:block}
.stats-date-control>#stats-date-toggle{
  display:grid;
  width:100%;
  height:3.5rem;
  place-items:center;
  padding:0 1.375rem;
  border:0;
  border-radius:62.4375rem;
  outline:0;
  color:#fff;
  background:#1677ff;
  font-size:clamp(1.125rem,5vw,1.4375rem);
  font-weight:650;
  text-align:center;
}
.stats-calendar{
  position:absolute;
  z-index:24;
  top:calc(100% + 0.5rem);
  left:0;
  width:100%;
  padding:0.875rem;
  border:1px solid #dce5ef;
  border-radius:1.125rem;
  background:#fff;
  box-shadow:0 16px 36px rgba(40,67,101,.18);
}
.stats-calendar>header{display:grid;height:2.5rem;grid-template-columns:2.625rem 1fr 2.625rem;align-items:center}
.stats-calendar>header strong{text-align:center;font-size:1rem}
.stats-calendar>header button{
  display:grid;
  width:2.25rem;
  height:2.25rem;
  place-items:center;
  border:0;
  border-radius:0.625rem;
  color:#1677ff;
  background:#edf5ff;
  font-size:1.5625rem;
}
.stats-calendar>header button:last-child{justify-self:end}
.stats-calendar>header button:disabled{color:#b7c1cf;background:#f4f6f8;opacity:1}
.stats-calendar-week,.stats-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.stats-calendar-week{padding:0.625rem 0 0.375rem;color:#8995a5;font-size:0.75rem;text-align:center}
.stats-calendar-days{gap:0.3125rem}
.stats-calendar-days>i,.stats-calendar-days>button{aspect-ratio:1}
.stats-calendar-days>button{
  display:grid;
  min-width:0;
  place-items:center;
  padding:0;
  border:0;
  border-radius:0.625rem;
  color:#34465d;
  background:#f6f8fb;
  font-size:0.75rem;
}
.stats-calendar-days>button.active{color:#fff;background:#1677ff;font-weight:700}
.stats-calendar-days>button:disabled{color:#c4cbd4;background:#fafbfc;opacity:1}
.stats-content{min-height:20.625rem;padding:1rem 0.75rem 1.25rem;border-radius:1.125rem;background:#fff}
.stats-content>.empty{min-height:18.125rem}
.stats-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.8125rem 0.5625rem;padding:0 0.25rem 1.125rem}
.stats-legend span{display:grid;grid-template-columns:0.5rem minmax(0,1fr);align-items:center;gap:0.375rem;color:#6d7683;font-size:0.75rem}
.stats-legend span>i{width:0.4375rem;height:0.4375rem;border-radius:50%;background:var(--metric-color)}
.stats-legend span>b{grid-column:2;overflow:hidden;color:#283b52;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}
.stats-chart{
  display:grid;
  height:15.3125rem;
  grid-template-columns:repeat(6,minmax(0,1fr));
  align-items:end;
  gap:0.4375rem;
  padding:0.75rem 0.25rem 0;
  border-top:1px dashed #dce2e9;
  background:repeating-linear-gradient(to bottom,transparent 0,transparent 54px,#e5e9ef 55px);
}
.stats-chart-item{display:grid;min-width:0;height:100%;grid-template-rows:1.375rem minmax(0,1fr) 2rem;align-items:end;justify-items:center}
.stats-chart-item>strong{max-width:100%;overflow:hidden;color:#66717f;font-size:0.75rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.stats-chart-item>div{display:flex;width:100%;height:100%;align-items:end;justify-content:center}
.stats-chart-item>div i{display:block;width:min(1.75rem,70%);height:var(--metric-height);min-height:0;border-radius:0.4375rem 0.4375rem 0.125rem 0.125rem;background:var(--metric-color);transition:height .25s ease}
.stats-chart-item.negative>div i{opacity:.88}
.stats-chart-item>span{align-self:center;color:#737d89;font-size:0.75rem;white-space:nowrap}
.stats-score-log{
  width:100%;
  height:3.625rem;
  border:0;
  border-radius:62.4375rem;
  color:#fff;
  background:#1677ff;
  font-size:clamp(1.125rem,5vw,1.375rem);
  font-weight:700;
}
@media(max-width:370px){
  .stats-root{padding-inline:0.75rem}
  .stats-legend span,.stats-legend span>b{font-size:0.75rem}
  .stats-chart{gap:0.1875rem}
  .stats-chart-item>span,.stats-chart-item>strong{font-size:0.75rem}
}

/* 密码显隐使用眼睛图标，明文状态显示斜线。 */
.auth-input button[data-eye]{display:grid;width:2.875rem;min-width:2.875rem;place-items:center;padding:0}
.auth-input button[data-eye] svg{
  width:1.375rem;
  height:1.375rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.auth-input button[data-eye] .eye-slash{opacity:0}
.auth-input button[data-eye].visible .eye-slash{opacity:1}
.settings-password-input{position:relative}
.settings-password-input input{width:100%;padding-right:3.25rem}
.settings-password-input button[data-eye]{position:absolute;top:50%;right:0.4375rem;display:grid;width:2.5rem;height:2.5rem;padding:0;place-items:center;border:0;color:#1677ff;background:transparent;transform:translateY(-50%)}
.settings-password-input button[data-eye] svg{width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.settings-password-input button[data-eye] .eye-slash{opacity:0}
.settings-password-input button[data-eye].visible .eye-slash{opacity:1}

/* 验证码角标只显示刷新图标；修改密码页复用同一验证码控件。 */
.captcha-image small{
  display:grid;
  width:1.25rem;
  height:1.25rem;
  place-items:center;
  padding:0;
  border-radius:0.375rem;
}
.captcha-image small svg{
  width:0.875rem;
  height:0.875rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2;
}
.settings-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 7.375rem;gap:0.625rem}
.settings-captcha-row .captcha-image{height:3.25rem;border-color:#dde0e5;border-radius:1.625rem}
@media(max-width:370px){.settings-captcha-row{grid-template-columns:minmax(0,1fr) 6.375rem}}

/* 验证码图片本身即可点击刷新，三处都不再显示额外刷新角标。 */
.captcha-image small{display:none!important}

/* 两种转盘分页展示：签到使用蓝色，高级使用金色，奖项固定在各扇区正中。 */
#benefit-panel .benefit-wheel-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0.5rem;
  margin-bottom:0.75rem;
  padding:0.3125rem;
  border-radius:1rem;
  background:#eaf0f7;
}
#benefit-panel .benefit-wheel-tabs>button{
  height:2.75rem;
  border:0;
  border-radius:0.75rem;
  color:#75859a;
  background:transparent;
  font-size:0.9375rem;
  font-weight:700;
}
#benefit-panel .benefit-wheel-tabs>button.active{
  color:#fff;
  background:#1677ff;
  box-shadow:0 5px 13px rgba(22,119,255,.22);
}
#benefit-panel .benefit-wheel-tabs>button[data-benefit-wheel-tab="premium"].active{
  color:#744500;
  background:linear-gradient(135deg,#ffd974,#f3ae36);
  box-shadow:0 5px 13px rgba(218,145,29,.25);
}
#benefit-panel .benefit-wheel-grid{display:block}
#benefit-panel .benefit-wheel-card{
  width:100%;
  padding:clamp(1.25rem,5vw,1.625rem);
}
#benefit-panel .benefit-wheel-card.checkin{
  background:linear-gradient(155deg,#fff 52%,#eef7ff 100%);
}
#benefit-panel .benefit-wheel-card.premium{
  background:linear-gradient(155deg,#fff 52%,#fff7e5 100%);
}
#benefit-panel .benefit-wheel-card .benefit-wheel-stage{
  width:min(68vw,18.75rem);
  height:min(68vw,18.75rem);
  margin:1.5rem auto 1.25rem;
}
#benefit-panel .benefit-wheel-card.checkin .benefit-wheel-value,
#benefit-panel .benefit-wheel-card.premium .benefit-wheel-value{
  width:3.625rem;
  height:2.625rem;
  overflow:visible;
  transform:translate(-50%,-50%) rotate(var(--angle)) translateY(clamp(-6.4375rem,-22vw,-4.875rem)) rotate(var(--counter-angle));
}
#benefit-panel .benefit-wheel-card.checkin .benefit-wheel{
  border-color:#dcedff;
  background:conic-gradient(#71b5ff 0 60deg,#dbeeff 60deg 120deg,#71b5ff 120deg 180deg,#dbeeff 180deg 240deg,#71b5ff 240deg 300deg,#dbeeff 300deg 360deg);
}
#benefit-panel .benefit-wheel-card.checkin .benefit-wheel-center{
  background:#1677ff;
}
#benefit-panel .benefit-wheel-center svg{
  width:1.875rem;
  height:1.875rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
#benefit-panel .benefit-wheel-card.premium .benefit-wheel-center svg{
  width:2.0625rem;
  height:2.0625rem;
}
#benefit-panel .benefit-wheel-card>p{
  min-height:2.375rem;
  margin-bottom:1rem;
  color:#607d9a;
  font-size:clamp(0.8125rem,3.4vw,0.9375rem);
  line-height:1.6;
}
#benefit-panel .benefit-wheel-card.checkin .benefit-pointer{
  color:#1677ff;
}

/* Player 群聊只展示当前最新消息，不提供向前翻阅入口。 */
#chat-panel .group-chat-card{grid-template-rows:minmax(0,1fr) auto}
#chat-panel .group-chat-messages{grid-row:1}
#chat-panel .group-chat-form{grid-row:2}

/* 群聊与在线客服作为独立房间铺满屏幕，进入后不为底栏预留空间。 */
body.player-conversation-active .phone-page,
body.player-conversation-active #app-view>.page-scroll{
  height:100dvh;
  min-height:0;
}
body.player-conversation-active #app-view>.page-scroll{
  overflow:hidden;
  padding-bottom:0;
}
#chat-panel,
#service-panel{
  height:100dvh;
  min-height:0;
  flex-direction:column;
  overflow:hidden;
}
#chat-panel:not([hidden]),
#service-panel:not([hidden]){display:flex}
#chat-panel>.sub-header,
#service-panel>.sub-header{flex:0 0 auto}
#chat-panel>.group-chat-root,
#service-panel>.player-service-root{
  min-height:0;
  flex:1;
  margin:0;
  padding:0;
}
#chat-panel .group-chat-card{
  height:100%;
  border:0;
  border-radius:0;
  box-shadow:none;
}
#chat-panel .group-chat-messages{
  width:100%;
  padding:1.125rem clamp(0.75rem,4vw,1.25rem);
}
#chat-panel .group-chat-form{
  padding:0.75rem clamp(0.75rem,4vw,1.125rem) calc(0.875rem + env(safe-area-inset-bottom));
}
#service-panel>.player-service-root{display:block}
#service-panel .chat-card{
  display:flex;
  height:100%;
  flex-direction:column;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
#service-panel .chat-card>header{display:none}
#service-panel .player-service-messages{
  width:100%;
  height:auto;
  min-height:0;
  flex:1;
  padding:1.125rem clamp(0.75rem,4vw,1.25rem);
}
#service-panel .player-service-questions{flex:0 0 auto}
#service-panel .chat-card>form{
  flex:0 0 auto;
  padding:0.75rem clamp(0.75rem,4vw,1.125rem) calc(0.875rem + env(safe-area-inset-bottom));
}
#service-panel .contact-card{
  width:100%;
  max-width:none;
  height:100%;
  align-content:center;
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}

/* 两类聊天均展示头像；客服会话时间精确到年月日时分秒。 */
#chat-panel .group-chat-message header{justify-content:space-between}
#chat-panel .group-chat-message header time{flex:0 0 auto}
#service-panel .player-message{
  display:grid;
  width:auto;
  max-width:88%;
  grid-template-columns:3rem minmax(0,1fr);
  align-items:start;
  gap:0.5rem;
}
#service-panel .player-message.mine{
  grid-template-columns:minmax(0,1fr) 3rem;
}
#service-panel .player-message.mine .player-message-identity{grid-row:1;grid-column:2}
#service-panel .player-message.mine>section{grid-row:1;grid-column:1;justify-items:end}
#service-panel .player-message-identity{
  display:grid;
  justify-items:center;
  gap:0.25rem;
}
#service-panel .player-message-identity>strong{
  display:block;
  width:3rem;
  overflow:hidden;
  color:#70849b;
  font-size:0.75rem;
  font-weight:600;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#service-panel .player-message-avatar{
  display:grid;
  width:2.375rem;
  height:2.375rem;
  place-items:center;
  overflow:hidden;
  border-radius:0.75rem;
  color:#fff;
  background:linear-gradient(145deg,#64bdff,#247bea);
  font-size:0.875rem;
  font-weight:800;
}
#service-panel .player-message.theirs .player-message-avatar{
  background:linear-gradient(145deg,#58c5ff,#1677ff);
}
#service-panel .player-message-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}
#service-panel .player-message-avatar svg{
  width:1.4375rem;
  height:1.4375rem;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
#service-panel .player-message>section{display:grid;min-width:0;gap:0.25rem}
#service-panel .player-message>section>div{
  padding:0.625rem 0.8125rem;
  border-radius:0.25rem 0.9375rem 0.9375rem;
  color:#43617c;
  background:#edf5fb;
  font-size:0.75rem;
  line-height:1.6;
  white-space:pre-wrap;
}
#service-panel .player-message>section>div>p{
  margin:0;
  color:inherit;
  font:inherit;
}
#service-panel .player-message.mine>section>div{
  border-radius:0.9375rem 0.25rem 0.9375rem 0.9375rem;
  color:#fff;
  background:linear-gradient(135deg,#54b7f8,#268be9);
}
#service-panel .player-message.revoked>section>div{
  color:#8ca0b3;
  background:#f1f4f6;
  font-style:italic;
}
#service-panel .player-message small{white-space:nowrap}

/* 上分收款二维码不再附加文字说明，直接在预览框内居中显示。 */
#finance-panel .payment-preview.image{
  display:grid;
  place-items:center;
  padding:0.75rem;
}
#finance-panel .payment-preview.image img{
  flex:none;
  margin:0;
}

/* 资金申请页顶部只切换充值与提现；申请记录和积分记录使用各自独立页面。 */
#finance-panel .finance-action-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0.625rem;
  margin:0.875rem 1.25rem 0;
  padding:0.3125rem;
  border-radius:1.0625rem;
  background:#eaf0f7;
}
#finance-panel .finance-action-tabs>button{
  height:2.75rem;
  border:0;
  border-radius:0.8125rem;
  color:#78879a;
  background:transparent;
  font-size:0.9375rem;
  font-weight:700;
}
#finance-panel .finance-action-tabs>button.active{
  color:#fff;
  background:#1677ff;
  box-shadow:0 5px 13px rgba(22,119,255,.22);
}
@media(max-width:470px){
  #finance-panel .finance-action-tabs{margin-inline:0.75rem}
}

/* Player 全局关闭按下瞬间的触摸高亮；真正的 .active / 选中状态仍由原规则控制。 */
#app-view :is(button,a,label,[role="button"]),
#auth-view :is(button,a,label,[role="button"]),
#download-view :is(button,a,label,[role="button"]){
  -webkit-tap-highlight-color:transparent;
}
.game-keypad button:active{
  border-color:#d5e6f2!important;
  color:#315775!important;
  background:#f7fbfe!important;
}
.player-service-questions button:active{
  border-color:#d4e7f4!important;
  color:#397cae!important;
  background:#fff!important;
}
.app-download-action:active{
  transform:none!important;
  box-shadow:0 14px 29px rgba(39,128,203,.24)!important;
}
.featured-room .room-rule-button:active{
  color:#1677ff!important;
  background:rgba(255,255,255,.9)!important;
}
.room-item .room-rule-button:active{
  color:#267fbd!important;
  background:rgba(255,255,255,.9)!important;
}
.game-quick-coins button:active{
  color:#2f91d8!important;
  background:#eef8ff!important;
}
#home-panel .home-game-tile:active{
  transform:none!important;
  box-shadow:none!important;
}
#notice-panel .notice-card:active{
  border-color:transparent!important;
  background:#fff!important;
  transform:none!important;
}

/* 房间顶部所有控件共用同一条水平中线。 */
.game-room-header{
  display:grid;
  height:3rem;
  min-height:3rem;
  grid-template-columns:1.75rem minmax(0,1fr) auto;
  align-items:center;
  gap:0.4375rem;
  padding:0 0.75rem;
}
.game-room-header>*{
  grid-row:1;
  align-self:center;
  margin-top:0;
  margin-bottom:0;
}
.game-room-back{
  display:grid;
  width:1.75rem;
  height:2rem;
  place-items:center;
  padding:0;
  line-height:1;
}
.game-room-back svg{
  display:block;
  width:1.25rem;
  height:1.25rem;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.game-room-name{
  display:flex;
  height:2rem;
  align-items:center;
  padding:0;
  border:0;
  color:inherit;
  background:transparent;
  text-align:left;
}
.game-room-name>strong{
  display:flex;
  height:2rem;
  flex:0 1 auto;
  align-items:center;
  max-width:calc(100% - 4.75rem);
  line-height:1;
}
.game-room-name>span{
  display:flex;
  height:1.5rem;
  align-items:center;
  padding-block:0;
  line-height:1;
}
.game-room-name>i{
  position:relative;
  display:block;
  width:1.125rem;
  height:1.125rem;
  flex:0 0 1.125rem;
  color:transparent;
  font-size:0;
}
.game-room-name>i:before{
  position:absolute;
  top:50%;
  left:50%;
  width:0.375rem;
  height:0.375rem;
  border-right:1.5px solid #687f9f;
  border-bottom:1.5px solid #687f9f;
  content:"";
  transform:translate(-50%,-50%) rotate(45deg);
  transition:transform .18s ease;
}
.game-room-name.open>i:before{transform:translate(-50%,-50%) rotate(225deg)}
.game-room-balance{
  height:2rem;
  margin-left:0;
  line-height:1;
}
.game-kk-top.room-menu-open{z-index:30;overflow:visible}
.game-room-menu{
  position:absolute;
  z-index:42;
  top:3rem;
  left:0.75rem;
  display:grid;
  width:min(16.875rem,calc(100% - 1.5rem));
  max-height:calc(100dvh - 4.25rem);
  overflow-y:auto;
  padding:0.5rem;
  border:1px solid #dce5ef;
  border-radius:0.375rem;
  background:#fff;
  box-shadow:0 16px 36px rgba(32,57,91,.2);
  overscroll-behavior:contain;
}
.game-room-menu button{
  display:flex;
  width:100%;
  min-height:3.25rem;
  align-items:center;
  justify-content:space-between;
  gap:0.625rem;
  padding:0.625rem 1rem;
  border:0;
  border-radius:0.3125rem;
  color:#18304d;
  background:#fff;
  text-align:left;
}
.game-room-menu button strong{font-size:1rem}
.game-room-menu button small{color:#98a6b5;font-size:0.75rem;white-space:nowrap}
.game-room-menu button.active{color:#fff;background:#168ff0}
.game-room-menu button.active small{color:#fff}
.game-room-menu button:disabled{color:#98a6b5;background:#f5f7fa;opacity:1}

/* 放大开奖期号，并把圆球数字校准到视觉圆心。 */
.game-result-head{font-size:0.875rem}
#game-latest-number{font-size:0.75rem;font-weight:700}
.game-result-ball,
.game-result-ball.compact,
.game-result-ball.sum{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 0 0.125rem;
  line-height:1;
}
#game-aim-toggle{
  display:flex;
  min-height:1.875rem;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  padding:0.3125rem 0.6875rem;
  border:0;
  border-radius:62.4375rem;
  color:#fff;
  background:#879ac4;
  font-size:0.75rem;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.game-result{position:relative;overflow:visible}
.game-result .game-draw-balls{padding-left:1.25rem}
.game-result-line{display:flex;min-width:0;align-items:center}
.game-result-line .game-draw-balls{width:auto;flex:0 1 auto}
.game-recent-draw-toggle{
  display:grid;
  width:1.5rem;
  height:1.875rem;
  min-width:1.5rem;
  flex:0 0 1.5rem;
  place-items:center;
  margin-left:0.125rem;
  padding:0;
  border:0;
  color:#607594;
  background:transparent;
}
.game-recent-draw-toggle>i{position:relative;width:0.75rem;height:1rem;flex:0 0 0.75rem}
.game-recent-draw-toggle>i:before{
  position:absolute;
  top:50%;
  left:50%;
  width:0.375rem;
  height:0.375rem;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  content:"";
  transform:translate(-50%,-50%) rotate(45deg);
  transition:transform .18s ease;
}
.game-recent-draw-toggle.open>i:before{transform:translate(-50%,-50%) rotate(225deg)}
.game-kk-top.draw-menu-open{z-index:30;overflow:visible}
.game-kk-top.draw-menu-open .game-draw-card{z-index:31;overflow:visible}
.game-recent-draws{
  position:absolute;
  z-index:43;
  top:calc(100% + 0.25rem);
  right:0;
  left:auto;
  width:min(29.75rem,calc(100vw - 1.5rem));
  max-height:min(32.5rem,calc(100dvh - 9.75rem));
  overflow-x:hidden;
  overflow-y:auto;
  padding:0;
  border:1px solid #dce5ef;
  border-radius:0.5rem;
  background:#fff;
  box-shadow:0 16px 36px rgba(32,57,91,.2);
  overscroll-behavior:contain;
}
.game-recent-draws>header,.game-recent-draws article{display:grid;width:100%;min-width:0;grid-template-columns:22.5% 31.5% 9% 14% 11.5% 11.5%;align-items:center;box-sizing:border-box;text-align:center}
.game-recent-draws>header{position:sticky;z-index:2;top:0;min-height:2.8125rem;padding:0 0.5rem;color:#fff;background:#168ff0}
.game-recent-draws>header b{overflow:hidden;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}
.game-recent-draws>div{width:100%;min-width:0}
.game-recent-draws article{min-height:2.6875rem;padding:0 0.5rem;color:#65748b;background:#fff}
.game-recent-draws article:nth-child(even){background:#f5f7fb}
.game-recent-draws article:last-child{border-bottom:0}
.game-recent-draws article>strong{overflow:visible;color:#65748b;font-size:0.75rem;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:normal;text-align:center;white-space:nowrap}
.game-recent-draws article>span{overflow:hidden;font-size:0.75rem;white-space:nowrap}
.recent-draw-numbers{display:flex;align-items:center;justify-content:center;gap:0.125rem;white-space:nowrap}
.recent-draw-numbers em{color:#334862;font-size:0.75rem;font-style:normal}
.recent-draw-numbers i{display:grid;width:1.375rem;height:1.375rem;flex:0 0 1.375rem;place-items:center;border:2px solid #168ff0;border-radius:50%;color:#17324f;background:#fff;font-size:0.75rem;font-style:normal;font-weight:700;line-height:1}
.recent-draw-numbers i.red{border-color:#ff5570}
.game-recent-draws article>b{display:grid;width:1.375rem;height:1.375rem;place-items:center;justify-self:center;border-radius:50%;color:#fff;font-size:0.75rem}
.game-recent-draws article>b.blue{background:#176bdf}
.game-recent-draws article>b.green{background:#26c841}
.game-recent-draws article>b.red{background:#ff3f58}
.recent-draw-two{display:flex;align-items:center;justify-content:center;gap:0.25rem}
.recent-draw-two i{font-style:normal}
.recent-draw-two i.red{color:#ff304e}
.recent-draw-two i.blue{color:#1688df}
.game-recent-draws article>span.shape{color:#e4a900;font-weight:700}
.game-recent-draws>.empty{min-height:7.5rem}
@media(max-width:400px){.recent-draw-numbers{gap:0.0625rem}.recent-draw-numbers i{width:1.125rem;height:1.125rem;flex-basis:1.125rem;font-size:0.75rem}.recent-draw-numbers em{font-size:0.75rem}.game-recent-draws article>b{width:1.1875rem;height:1.1875rem;font-size:0.75rem}}

/* 下注区底部操作按钮缩短三分之一；快捷金额保持正圆。 */
.game-submit-actions button{min-height:2.8125rem!important}
.game-quick-coins button{width:2.875rem!important;height:2.875rem!important;min-width:2.875rem!important;min-height:2.875rem!important;flex:0 0 2.875rem;box-sizing:border-box}
@media(max-width:470px){.game-submit-actions button{min-height:2.75rem!important}.game-quick-coins button{width:2.5rem!important;height:2.5rem!important;min-width:2.5rem!important;min-height:2.5rem!important;flex-basis:2.5rem}}
@media(max-height:800px){.game-submit-actions button{min-height:2.4375rem!important}}
@media(max-width:360px){.game-quick-coins button{width:2.25rem!important;height:2.25rem!important;min-width:2.25rem!important;min-height:2.25rem!important;flex-basis:2.25rem}}

/* 房间倒计时只计算到封盘点，封盘后显示开奖状态。 */
.game-countdown>span{display:grid;min-width:4.875rem;height:1.625rem;place-items:center;color:#607594;font-size:1rem;font-weight:800;white-space:nowrap}
@media(max-width:470px){.game-countdown>span{min-width:4.125rem;height:1.4375rem;font-size:0.875rem}}

/* 房间下注记录始终保留筛选栏；加载、空数据和错误共用剩余区域。 */
.game-history-card.direct-records{height:100%;min-height:100%;overflow:visible;margin:0!important;border:0;border-radius:0;background:transparent;box-shadow:none}
.game-history-content.direct-records{display:flex;height:100%;min-height:100%;padding:0}
.game-room-bet-records{display:flex;min-height:100%;flex:1;flex-direction:column}
.game-room-bet-records .finance-request-filter{flex:0 0 auto;padding:0.75rem 0.75rem 0.5rem}
.game-room-bet-records .player-record-list{flex:1;padding:0.125rem 0.75rem 1.5rem}
.empty{display:grid;place-items:center}
.bet-record-list.empty-records{display:grid;min-height:calc(100dvh - 11.875rem);place-items:center;padding:1.25rem}
.game-room-bet-records .bet-record-list.empty-records{min-height:15rem;flex:1}
.bet-record-list.empty-records>.empty{width:100%;padding:0}
.game-history-state{width:100%;min-height:15rem;flex:1;padding:1.25rem}
.group-chat-messages>.empty,.game-room-chat-messages>.empty{width:100%;height:100%;flex:1}
.game-cancel-button svg{display:block;width:1.1875rem;height:1.1875rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.game-submit-actions .game-cancel-button{justify-items:center;text-align:center}
.game-submit-actions .game-cancel-button>i{display:grid;width:100%;place-items:center}

/* 走势图使用固定10列表格，不显示原来的最近开奖卡片标题。 */
.game-history-card.trend-records{overflow:visible;margin:0!important;border:0;border-radius:0;background:transparent;box-shadow:none}
.game-history-content.trend-records{display:block;padding:0;background:#fff}
.game-trend-table{width:100%;border-collapse:collapse;table-layout:fixed;background:#fff}
.game-trend-table col.period{width:18%}
.game-trend-table col.value{width:8%}
.game-trend-table col.mark{width:9.25%}
.game-trend-table th,.game-trend-table td{height:2.625rem;overflow:hidden;padding:0.1875rem 0.0625rem;border-bottom:1px solid #e4eaf2;color:#566b87;font-size:0.75rem;text-align:center;white-space:nowrap}
.game-trend-table thead th{position:sticky;z-index:2;top:0;height:2.5rem;color:#fff;background:#168ff0;font-size:0.75rem;font-weight:700}
.game-trend-table tbody tr:nth-child(even){background:#f4f7fb}
.game-trend-table td:first-child{color:#38536f;font-size:0.75rem;font-variant-numeric:tabular-nums;font-weight:700}
.game-trend-table td:nth-child(2){color:#173b5f;font-size:0.75rem;font-variant-numeric:tabular-nums;font-weight:800}
.game-trend-table i{display:inline-grid;width:1.1875rem;height:1.1875rem;place-items:center;font-style:normal;line-height:1}
.game-trend-table i.hit{border-radius:50%;background:#28b66f;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.game-trend-table i.miss{color:#ed4056;font-size:1.25rem;font-weight:500}
@media(max-width:400px){.game-trend-table th,.game-trend-table td{font-size:0.75rem}.game-trend-table td:first-child{font-size:0.75rem}.game-trend-table i{width:1.0625rem;height:1.0625rem}.game-trend-table i.miss{font-size:1.125rem}}

/* 仅PK10类游戏放大顶部开奖号码，并使用正方形外框。 */
.game-result-line .game-draw-balls.pk10-results{gap:0.1875rem;padding-left:0.5rem}
.game-result-ball.compact.pk10{width:1.5rem;min-width:1.5rem;max-width:1.5rem;height:1.5rem;flex:0 0 1.5rem;aspect-ratio:auto;border-width:2px;border-radius:0.1875rem;font-size:0.75rem;font-weight:800}
@media(max-width:470px){.game-result-line .game-draw-balls.pk10-results{gap:0.125rem;padding-left:0.25rem}.game-result-ball.compact.pk10{width:1.125rem;min-width:1.125rem;max-width:1.125rem;height:1.125rem;flex-basis:1.125rem;border-width:1.5px;border-radius:0.125rem;font-size:0.75rem}}

/* PK10下拉开奖记录只保留期号和方形开奖号码。 */
.game-recent-draws.pk10>header,.game-recent-draws.pk10 article{grid-template-columns:28% 72%}
.game-recent-draws.pk10>header b{font-size:0.8125rem}
.game-recent-draws.pk10 article>strong{font-size:0.75rem;text-align:center}
.game-recent-draws.pk10 .recent-draw-numbers.pk10{justify-content:flex-start;gap:0.1875rem;overflow:visible;padding-left:0.25rem}
.game-recent-draws.pk10 .recent-draw-numbers.pk10 i{width:1.625rem;height:1.625rem;flex:0 0 1.625rem;border:2px solid #168ff0;border-radius:0.1875rem;color:#17324f;font-size:0.75rem}
@media(max-width:400px){.game-recent-draws.pk10>header,.game-recent-draws.pk10 article{grid-template-columns:30% 70%}.game-recent-draws.pk10>header b{font-size:0.75rem}.game-recent-draws.pk10 article>strong{font-size:0.75rem}.game-recent-draws.pk10 .recent-draw-numbers.pk10{gap:0.0625rem;padding-left:0.125rem}.game-recent-draws.pk10 .recent-draw-numbers.pk10 i{width:1.375rem;height:1.375rem;flex-basis:1.375rem;border-width:1.5px;border-radius:0.125rem;font-size:0.75rem}}

/* PK10走势图按冠、亚到第十名直接展示号码。 */
.game-trend-table.pk10 col.period{width:22%}
.game-trend-table.pk10 col.rank{width:7.8%}
.game-trend-table.pk10 th,.game-trend-table.pk10 td{padding-inline:0}
.game-trend-table.pk10 td:first-child{font-size:0.75rem}
.game-trend-table.pk10 td:not(:first-child){color:#173b5f;font-size:0.75rem;font-variant-numeric:tabular-nums;font-weight:800}
@media(max-width:400px){.game-trend-table.pk10 col.period{width:25%}.game-trend-table.pk10 col.rank{width:7.5%}.game-trend-table.pk10 td:not(:first-child){font-size:0.75rem}}

/* 两处下注记录共用房间筛选，房间内默认当前房间，个人中心默认全部。 */
.bet-room-filter{display:block;width:100%;padding:0.625rem 1.25rem 0.25rem;color:#607594;font-size:0.8125rem}
.bet-room-filter select{display:block;width:100%;height:2.625rem;min-width:0;padding:0 2.25rem 0 0.8125rem;border:1px solid #d8e4ef;border-radius:0.75rem;outline:0;color:#405570;background:#fff;font-size:0.875rem}
.bet-room-filter select:focus{border-color:#287ff0;box-shadow:0 0 0 3px rgba(40,127,240,.12)}
.game-room-bet-records .bet-room-filter{padding:0 0.75rem 0.5rem}
.bet-filter-empty{min-height:13.75rem;place-items:center}

/* PK10顶部方框内数字水平、垂直居中。 */
.game-result-ball.compact.pk10{display:inline-flex!important;align-items:center;justify-content:center;padding:0!important;line-height:1!important;text-align:center}

/* 快3类顶部开奖号码使用三枚无加号的骰子，末尾和值保持原样。 */
.game-result-line .game-draw-balls.k3-results{gap:0.4375rem;padding-left:0.75rem}
.game-die{position:relative;display:block;width:1.9375rem;height:1.9375rem;flex:0 0 1.9375rem;border:2px solid #168ff0;border-radius:0.4375rem;background:#fff;box-shadow:0 2px 5px rgba(30,91,145,.12)}
.game-die>i{position:absolute;width:0.3125rem;height:0.3125rem;border-radius:50%;background:#173b5f;transform:translate(-50%,-50%)}
.game-die>i.tl{top:27%;left:27%}.game-die>i.tr{top:27%;left:73%}
.game-die>i.ml{top:50%;left:27%}.game-die>i.mm{top:50%;left:50%}.game-die>i.mr{top:50%;left:73%}
.game-die>i.bl{top:73%;left:27%}.game-die>i.br{top:73%;left:73%}
.game-die>span{display:grid;width:100%;height:100%;place-items:center;color:#173b5f;font-size:0.8125rem;font-weight:800}
@media(max-width:470px){.game-result-line .game-draw-balls.k3-results{gap:0.3125rem;padding-left:0.4375rem}.game-die{width:1.6875rem;height:1.6875rem;flex-basis:1.6875rem;border-radius:0.375rem}.game-die>i{width:0.25rem;height:0.25rem}}

/* 快3下拉开奖表保留期号、骰子、总额、两面和形态。 */
.game-recent-draws.k3>header,.game-recent-draws.k3 article{grid-template-columns:23% 31% 14% 18% 14%}
.game-recent-draws.k3>header b{font-size:0.75rem}
.game-recent-draws.k3 article>strong{font-size:0.75rem;text-align:center}
.game-recent-draws.k3 .recent-draw-dice{display:flex;align-items:center;justify-content:center;gap:0.1875rem}
.game-recent-draws.k3 .recent-draw-dice .game-die{width:1.625rem;height:1.625rem;flex-basis:1.625rem;border-width:1.5px;border-radius:0.3125rem}
.game-recent-draws.k3 .recent-draw-dice .game-die>i{width:0.25rem;height:0.25rem}

/* 时时彩顶部放大五个正圆开奖号码，并在末尾显示和值。 */
.game-result-line .game-draw-balls.ssc-results{gap:0.3125rem;padding-left:0.5625rem}
.game-result-ball.compact.ssc{display:inline-flex!important;width:1.875rem;min-width:1.875rem;max-width:1.875rem;height:1.875rem;flex:0 0 1.875rem;align-items:center;justify-content:center;padding:0!important;aspect-ratio:1;border-width:2px;border-radius:50%;font-size:0.9375rem;font-weight:800;line-height:1}
.ssc-results .game-result-ball.sum{width:1.875rem;min-width:1.875rem;height:1.875rem;flex:0 0 1.875rem;font-size:0.875rem}
@media(max-width:470px){.game-result-line .game-draw-balls.ssc-results{gap:0.125rem;padding-left:0.25rem}.game-result-ball.compact.ssc,.ssc-results .game-result-ball.sum{width:1.5rem;min-width:1.5rem;max-width:1.5rem;height:1.5rem;flex-basis:1.5rem;font-size:0.75rem}.ssc-results>i{font-size:0.8125rem}}

/* 时时彩下拉开奖记录只显示期号、开奖号码、总和与两面。 */
.game-recent-draws.ssc>header,.game-recent-draws.ssc article{grid-template-columns:25% 43% 14% 18%}
.game-recent-draws.ssc>header b{font-size:0.75rem}
.game-recent-draws.ssc article>strong{font-size:0.75rem;text-align:center}
.game-recent-draws.ssc .recent-draw-numbers.ssc{gap:0.25rem;overflow:visible}
.game-recent-draws.ssc .recent-draw-numbers.ssc i{width:1.625rem;height:1.625rem;flex:0 0 1.625rem;border:2px solid #168ff0;border-radius:50%;font-size:0.75rem}
.game-recent-draws.ssc article>b.invalid{color:#65748b;background:transparent}
@media(max-width:400px){.game-recent-draws.ssc>header,.game-recent-draws.ssc article{grid-template-columns:27% 43% 12% 18%}.game-recent-draws.ssc .recent-draw-numbers.ssc{gap:0.125rem}.game-recent-draws.ssc .recent-draw-numbers.ssc i{width:1.375rem;height:1.375rem;flex-basis:1.375rem;font-size:0.75rem}}

/* 时时彩走势图展示五个号码、和值、龙虎和三段形态。 */
.game-trend-table.ssc col.period{width:20%}
.game-trend-table.ssc col.numbers{width:30%}
.game-trend-table.ssc col.total{width:8%}
.game-trend-table.ssc col.dragon{width:8%}
.game-trend-table.ssc col.shape{width:11.33%}
.game-trend-table.ssc th,.game-trend-table.ssc td{padding-inline:0;font-size:0.75rem}
.game-trend-table.ssc td:first-child{font-size:0.75rem}
.game-trend-table.ssc td:nth-child(n+3){color:#173b5f;font-weight:700}
.ssc-trend-numbers{display:flex;align-items:center;justify-content:center;gap:0.1875rem}
.game-trend-table .ssc-trend-numbers i{display:grid;width:1.375rem;height:1.375rem;place-items:center;border:1.5px solid #168ff0;border-radius:50%;color:#17324f;background:#fff;font-size:0.75rem;font-style:normal;font-weight:700}
@media(max-width:400px){.game-trend-table.ssc col.period{width:20%}.game-trend-table.ssc col.numbers{width:28%}.game-trend-table.ssc th,.game-trend-table.ssc td{font-size:0.75rem}.game-trend-table.ssc td:first-child{font-size:0.75rem}.ssc-trend-numbers{gap:0.0625rem}.game-trend-table .ssc-trend-numbers i{width:1.125rem;height:1.125rem;font-size:0.75rem}}

/* 所有玩法的走势图表头统一为手机端也清晰可读的字号。 */
.game-trend-table thead th,.game-trend-table.pk10 thead th,.game-trend-table.ssc thead th{font-size:0.75rem}

/* 时时彩走势图的数据文字整体放大，五个开奖号码同步增大。 */
.game-trend-table.ssc tbody td{font-size:0.8125rem}
.game-trend-table.ssc tbody td:first-child{font-size:0.875rem}
.game-trend-table.ssc .ssc-trend-numbers{gap:0.125rem}
.game-trend-table.ssc .ssc-trend-numbers i{width:1.625rem;height:1.625rem;font-size:0.8125rem}
@media(max-width:400px){.game-trend-table.ssc col.numbers{width:30%}.game-trend-table.ssc col.total{width:8%}.game-trend-table.ssc col.dragon{width:8%}.game-trend-table.ssc tbody td{font-size:0.75rem}.game-trend-table.ssc tbody td:first-child{font-size:0.75rem}.game-trend-table.ssc .ssc-trend-numbers{gap:0.0625rem}.game-trend-table.ssc .ssc-trend-numbers i{width:1.375rem;height:1.375rem;font-size:0.75rem}}

/* 所有玩法的走势图期号不再使用难以辨认的小字号。 */
.game-trend-table tbody td:first-child{font-size:0.75rem}

/* 瞄牌弹层复用顶部开奖号码，并以高分屏画布实现手指刮开。 */
.game-aim-dialog{position:fixed;z-index:58;inset:0;display:grid;place-items:center;padding:clamp(1rem,4vw,1.75rem);background:rgba(22,29,37,.7);backdrop-filter:blur(.4rem);-webkit-backdrop-filter:blur(.4rem)}
.game-aim-card{width:min(100%,26rem);overflow:hidden;border-radius:1.35rem;background:#fff;box-shadow:0 1.5rem 4rem rgba(0,0,0,.28)}
.game-aim-card>header{display:flex;min-height:4rem;align-items:center;justify-content:space-between;padding:0 1.35rem;color:#fff;background:linear-gradient(115deg,#128df5,#18a8a4)}
.game-aim-card>header strong{font-size:clamp(1.25rem,5vw,1.55rem);font-weight:800}
.game-aim-card>header button{display:grid;width:2.65rem;height:2.65rem;place-items:center;padding:0;border:0;border-radius:50%;color:#fff;background:rgba(255,255,255,.18)}
.game-aim-card>header button>i{position:relative;display:block;width:1.35rem;height:1.35rem}
.game-aim-card>header button>i:before,.game-aim-card>header button>i:after{position:absolute;top:50%;left:50%;width:1.35rem;height:.16rem;border-radius:999rem;background:currentColor;content:"";transform:translate(-50%,-50%) rotate(45deg)}
.game-aim-card>header button>i:after{transform:translate(-50%,-50%) rotate(-45deg)}
.game-aim-body{padding:clamp(1.1rem,4vw,1.35rem)}
.game-aim-board{position:relative;display:grid;width:100%;height:clamp(13.5rem,56vw,15rem);place-items:center;overflow:hidden;border:.0625rem solid #d9e5f0;border-radius:1.15rem;background:#f7fbff}
.game-aim-result{display:grid;width:100%;place-items:center;gap:.85rem;padding:1rem;color:#17324f;text-align:center}
.game-aim-result>strong{font-size:clamp(1rem,4vw,1.15rem);font-weight:800}
.game-aim-result>span{padding:.42rem .8rem;border-radius:999rem;color:#13814d;background:#e8f8ef;font-size:.92rem;font-weight:800}
.game-aim-result-line{width:100%;justify-content:center;overflow:visible}
.game-aim-result-line .game-aim-numbers{width:100%;flex:1 1 auto;justify-content:center;overflow:visible;padding:0!important}
.game-aim-result-line .game-draw-balls.pk10-results{flex-wrap:wrap;justify-content:center;padding:0}
.game-aim-result-line .game-draw-balls.k3-results,.game-aim-result-line .game-draw-balls.ssc-results{justify-content:center;padding:0}
#game-aim-canvas{position:absolute;z-index:2;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;transition:opacity .18s ease}
.game-aim-board.opened #game-aim-canvas{pointer-events:none;opacity:0}
#game-aim-hint{min-height:1.5rem;margin:1rem 0 .75rem;color:#708096;font-size:clamp(.95rem,3.8vw,1.05rem);text-align:center}
#game-aim-reset{width:100%;min-height:3.25rem;border:0;border-radius:.9rem;color:#fff;background:#168ff0;font-size:1.1rem;font-weight:800}
html:has(.game-aim-dialog:not([hidden])),body:has(.game-aim-dialog:not([hidden])){overflow:hidden}
@media(max-width:24rem){.game-aim-dialog{padding:.75rem}.game-aim-card>header{min-height:3.6rem;padding-inline:1rem}.game-aim-body{padding:1rem}.game-aim-board{height:13rem}.game-aim-result-line .game-draw-balls.pk10-results{gap:.12rem}.game-aim-result-line .game-result-ball.compact.pk10{width:1.22rem;min-width:1.22rem;max-width:1.22rem;height:1.22rem;flex-basis:1.22rem;font-size:0.75rem}}

/* 下注记录日期筛选的未选项保留按钮边界。 */
.finance-bet-period button{border:1px solid #cbd9e8}
.finance-bet-period button:not(.active){color:#45556a;background:#fff;box-shadow:0 1px 3px rgba(48,82,119,.06)}
.finance-bet-period button.active{border-color:#287ff0}

/* 四档快捷金额编辑器从页面底部升起，所有玩法共用。 */
.game-coin-editor{position:fixed;z-index:55;inset:0;display:flex;align-items:flex-end;justify-content:center;background:rgba(18,30,45,.68)}
.game-coin-editor-card{width:min(31.25rem,100%);overflow:hidden;padding:0 1.25rem calc(1.125rem + env(safe-area-inset-bottom));border-radius:1.375rem 1.375rem 0 0;background:#fff;box-shadow:0 -16px 40px rgba(14,38,66,.24);animation:game-coin-editor-in .18s ease-out}
.game-coin-editor-card>header{display:flex;height:3.25rem;align-items:center;justify-content:space-between;margin:0 -1.25rem;padding:0 1.25rem;color:#fff;background:#0d89f5}
.game-coin-editor-card>header strong{font-size:1.0625rem}
.game-coin-editor-card>header button{display:grid;width:2.25rem;height:2.25rem;place-items:center;padding:0;border:0;color:#fff;background:transparent;line-height:1}
.game-coin-editor-card>header button>i{display:block;width:0.5625rem;height:0.5625rem;border-right:3px solid currentColor;border-bottom:3px solid currentColor;transform:translateY(-0.125rem) rotate(45deg)}
.game-coin-editor-inputs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.625rem;padding:1.25rem 0}
.game-coin-editor-inputs input{width:100%;height:3.125rem;min-width:0;padding:0 0.375rem;border:1px solid #e3e8f2;border-radius:0.5rem;outline:0;color:#34445c;background:#eef1fb;font-size:1rem;font-weight:800;text-align:center}
.game-coin-editor-inputs input:focus{border-color:#168ff0;box-shadow:0 0 0 3px rgba(22,143,240,.12)}
.game-coin-editor-card>footer{display:grid;grid-template-columns:1fr 1fr;gap:1.125rem}
.game-coin-editor-card>footer button{height:3.125rem;border:0;border-radius:0.5625rem;font-size:1.0625rem;font-weight:800}
#game-coin-editor-reset{color:#68758b;background:#eceffa}
#game-coin-editor-save{color:#fff;background:#0d89f5}
html:has(.game-coin-editor:not([hidden])),body:has(.game-coin-editor:not([hidden])){overflow:hidden}
@keyframes game-coin-editor-in{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media(max-width:360px){.game-coin-editor-inputs{gap:0.375rem}.game-coin-editor-card>footer{gap:0.625rem}}

/* 非PC28玩法收起时，底部只保留展开专业下注区的入口，不提供命令下注。 */
.game-mode-toggle>i.collapse-icon:before{display:block;width:1.125rem;height:1.125rem;border-right:2px solid #fff;border-bottom:2px solid #fff;content:"";transform:translateY(-0.25rem) rotate(45deg)}
.game-command-dock.expand-only{grid-template-columns:minmax(0,1fr)}
.game-command-dock.expand-only input{cursor:pointer;color:#1688df;background:#f7fbff;text-align:center;font-weight:700}

/* 内置客服可发送图片；公共群聊仅渲染运营图片，不改变玩家文字发送入口。 */
.player-service-send-actions{display:grid;min-width:8.125rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.5rem}
.player-service-send-actions>button{width:100%;min-width:0;padding-inline:0.5rem}
.player-service-image-button{border:1px solid #d4e5f2;border-radius:0.75rem;color:#397cae;background:#f7fbfe;font-size:0.75rem;font-weight:800}
.player-service-image-button:disabled{opacity:.55;cursor:wait}
.player-service-message-image,.player-chat-image{display:block;width:auto;max-width:min(100%,20rem);max-height:20rem;object-fit:contain;border-radius:0.75rem}
#service-panel .player-message>section>div:has(>.player-service-message-image){padding:0.375rem;white-space:normal}
.player-service-message-image{background:#fff}
.player-chat-image{border:1px solid #d8e8f3;background:#f6fbfe}
.group-chat-message.mine .player-chat-image{justify-self:end}
@media(max-width:470px){.player-service-send-actions{width:100%}.player-service-message-image,.player-chat-image{max-height:16.25rem}}

/* 客服编辑栏始终把输入框约束在剩余空间内，避免固有宽度将操作按钮推出页面。 */
#service-panel .chat-card>form{
  min-width:0;
  grid-template-columns:minmax(0,1fr) auto;
}
#service-panel .chat-card>form>textarea{
  width:100%;
  min-width:0;
}
#service-panel .player-service-send-actions{
  min-width:8.125rem;
  max-width:100%;
}

/* 身份信息不是消息气泡：昵称位于头像上方，并与相邻气泡保持为同一组。 */
#service-panel .player-message>.player-message-identity,
#service-panel .player-message.mine>.player-message-identity{
  padding:0;
  border-radius:0;
  color:#70849b;
  background:transparent;
  font-size:inherit;
  line-height:normal;
  white-space:normal;
}
#service-panel .player-message-identity>strong{
  width:100%;
  overflow-x:auto;
  color:#70849b;
  text-overflow:clip;
  scrollbar-width:none;
}
#service-panel .player-message-identity>strong::-webkit-scrollbar{display:none}

/* 全局轻提示始终高于业务弹窗、确认层和图片查看器。 */
.toasts{z-index:2147483647}

/* 验证码只在图片完整解码后显示，刷新与失败期间使用稳定占位。 */
.captcha-image .captcha-status{
  position:absolute;
  z-index:1;
  inset:0;
  display:grid;
  place-items:center;
  padding:0 0.5rem;
  color:#53677a;
  background:#fff;
  font-size:0.8125rem;
  font-weight:700;
  line-height:1.25;
  text-align:center;
}

/* 聊天编辑栏使用紧凑的等高控件，发送按钮保持圆角矩形。 */
#chat-panel .group-chat-form,
#service-panel .chat-card>form{align-items:end}
#chat-panel .group-chat-form>textarea,
#service-panel .chat-card>form>textarea{
  height:2.75rem;
  min-height:2.75rem;
  padding:0.625rem 0.75rem;
  border-radius:0.75rem;
  line-height:1.5;
}
#chat-panel #chat-send,
#service-panel .player-service-send-actions,
#service-panel .player-service-send-actions>button{
  height:2.75rem;
  min-height:2.75rem;
}
#chat-panel #chat-send,
#service-panel .player-service-send-actions>button{border-radius:0.75rem}

/* 首页与游戏页的轮播图、公告栏使用相同的紧凑间距。 */
:is(#home-panel,#game-panel)>.home-user-card{
  padding-top:clamp(0.375rem,1.8vw,0.5rem);
}

.auth-view.has-platform-background{
  background-color:transparent;
  background-image:var(--player-platform-background);
  background-repeat:repeat-y;
  background-position:center top;
  background-size:100% auto;
  background-attachment:scroll;
}
#app-view.has-platform-background>.page-scroll{
  background-color:#eef3f9;
  background-image:linear-gradient(rgba(243,246,250,.34),rgba(238,243,249,.34)),var(--player-platform-background);
  background-repeat:no-repeat,repeat-y;
  background-position:center top;
  background-size:100% 100%,100% auto;
  background-attachment:scroll;
}
#app-view.has-platform-background .tab-panel{background:transparent}
.auth-view.has-platform-background .auth-shell{
  background:transparent;
  backdrop-filter:none;
}
button.is-busy{position:relative;color:transparent!important;pointer-events:none}
button.is-busy>*{visibility:hidden!important}
button.is-busy:after{position:absolute;top:50%;left:50%;width:1em;height:1em;border:2px solid currentColor;border-color:#fff #fff transparent transparent;border-radius:50%;content:"";animation:shared-button-spin .7s linear infinite;transform:translate(-50%,-50%)}
@keyframes shared-button-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* 房间消息直接复用公共聊天室气泡，仅 @昵称 使用提示色。 */
.group-chat-messages>.group-chat-message,
.game-room-chat-messages>.group-chat-message{flex:0 0 auto}
.group-chat-message:not(.mine):not(.operator) p{border:1px solid #b7dfca;color:#315b49;background:#dff4e9;box-shadow:0 3px 10px rgba(48,105,78,.08)}
.group-chat-message.mine p{border-color:#1677ff;color:#fff;background:#1677ff}
.group-chat-message.operator p{border:1px solid #b6d5f5;color:#315a82;background:#e4f1ff;box-shadow:0 3px 10px rgba(49,90,130,.08)}
.group-chat-message.operator header strong{display:inline-flex;min-width:0;align-items:center;gap:0.3125rem}
.group-chat-message.operator header strong:after{display:inline-flex;height:1.125rem;flex:0 0 auto;align-items:center;padding:0 0.375rem;border-radius:62.4375rem;color:#2876bd;background:#d3e9ff;content:"管理员";font-size:0.75rem;font-weight:800;line-height:1}
.game-room-chat-messages .room-chat-mention{display:inline;color:#237fbc;font-weight:900}
.game-kk-top{flex-basis:15.25rem}
.game-room-notice{height:2.125rem;min-height:2.125rem;margin:0.25rem 0.75rem 0;padding:0.25rem 0.6875rem;border-radius:0.75rem}
.game-room-notice .notice-icon{width:1.375rem;height:1.375rem;background:transparent;color:#1677ff}
.game-room-notice p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:470px){.game-kk-top{flex-basis:14.8125rem}}
@media(max-height:800px){.game-kk-top{flex-basis:13.5rem}.game-room-notice{height:1.875rem;min-height:1.875rem}}

/* 群投模式没有页面标签栏，顶部区域同步收起，聊天内容直接衔接开奖区。 */
.game-kk-top.compact{height:auto;min-height:0;flex:0 0 auto;margin:0;padding:0}
.game-kk-top.compact>.game-page-tabs[hidden]{display:none!important;height:0;min-height:0;margin:0;padding:0}

/* 品牌区统一使用方形 LOGO，靠左排列并在右侧显示平台名称。 */
:root{
  --player-brand-logo-size:clamp(2.125rem,8.8vw,2.75rem);
  --player-brand-left:clamp(0.5rem,2.4vw,0.75rem);
  --player-brand-gap:clamp(0.375rem,1.8vw,0.5625rem);
}
:is(#home-panel,#game-panel) .topbar-logo{
  left:var(--player-brand-left);
  width:auto;
  max-width:calc(100% - 7rem);
  gap:var(--player-brand-gap);
  justify-content:flex-start;
}
:is(#home-panel,#game-panel) .topbar-logo img{
  width:var(--player-brand-logo-size);
  height:var(--player-brand-logo-size);
  flex:0 0 var(--player-brand-logo-size);
  aspect-ratio:1;
  object-fit:contain!important;
  object-position:left center!important;
}
:is(#home-panel,#game-panel) .topbar-logo strong{
  position:static;
  width:auto;
  height:auto;
  max-width:calc(100% - var(--player-brand-logo-size) - var(--player-brand-gap));
  overflow:hidden;
  clip-path:none;
  color:#26354b;
  font-size:clamp(0.875rem,3.8vw,1.0625rem);
  font-weight:750;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.game-lobby-logo{justify-content:flex-start}
.game-lobby-logo img{object-position:left center!important}
.game-lobby-logo{width:2.875rem}
.game-lobby-logo img{width:2.6875rem;height:2.6875rem;flex-basis:2.6875rem;aspect-ratio:1;object-fit:contain!important}
@media(max-width:499px){.game-lobby-logo{width:2.25rem}.game-lobby-logo img{width:1.9375rem;height:1.9375rem;flex-basis:1.9375rem}}

/* 登录与注册沿用大厅品牌区的尺寸、左距与名称排列。 */
.auth-brand{
  position:absolute;
  z-index:1;
  top:calc((var(--player-topbar-height) - var(--player-brand-logo-size))/2);
  right:auto;
  left:var(--player-brand-left);
  width:auto;
  max-width:calc(100% - 6rem);
  height:var(--player-brand-logo-size);
  flex-direction:row;
  gap:var(--player-brand-gap);
  margin:0;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
}
.auth-brand .brand-mark{
  width:var(--player-brand-logo-size);
  height:var(--player-brand-logo-size);
  flex:0 0 var(--player-brand-logo-size);
  aspect-ratio:1;
}
.auth-brand .brand-mark img{width:100%;height:100%;object-fit:contain!important;object-position:left center!important}
.auth-brand>div{
  position:static;
  width:auto;
  height:auto;
  overflow:hidden;
  clip-path:none;
  white-space:normal;
}
.auth-brand>div small{display:none}
.auth-brand>div strong{
  display:block;
  overflow:hidden;
  color:#26354b;
  font-size:clamp(0.875rem,3.8vw,1.0625rem);
  font-weight:750;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.auth-close{
  width:2rem;
  height:2rem;
  border:1px solid rgba(83,124,176,.5);
  border-radius:50%;
  color:#526982;
  background:rgba(255,255,255,.72);
  box-shadow:0 3px 10px rgba(45,79,119,.14);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  font-size:1.5rem;
}
.auth-card{
  position:relative;
  display:flex;
  width:calc(100% + 2rem);
  flex-direction:column;
  margin-inline:-1rem;
  padding:1rem;
  border:1px solid rgba(83,124,176,.45);
  border-radius:1.375rem;
  background:rgba(255,255,255,.28);
  box-shadow:0 10px 28px rgba(45,79,119,.12);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
@media(max-width:420px){
  .auth-card{width:calc(100% + 1.5rem);margin-inline:-0.75rem;padding:0.75rem}
}

/* 有平台背景图时，游戏列表的内容层保持透明，背景从顶部连续铺满。 */
#app-view.has-platform-background #game-panel:not([hidden]),
#app-view.has-platform-background #game-panel>.room-list{background:transparent}

/* 首页与游戏大厅共用同一套品牌栏、轮播和滚动公告；剩余高度自动交给游戏列表。 */
#game-panel{
  --home-gutter:clamp(0.75rem,3.2vw,1rem);
  --home-radius:clamp(0.875rem,3.85vw,1.25rem);
}
#game-panel:not([hidden]){
  height:calc(100dvh - 3.625rem - env(safe-area-inset-bottom));
  min-height:0;
  grid-template-rows:var(--player-topbar-height) auto auto minmax(0,1fr);
}
#game-panel>.topbar{
  width:100%;
  grid-row:1;
  grid-column:1/-1;
}
#game-panel>.hero{
  grid-row:2;
  grid-column:1/-1;
}
#game-panel>.home-user-card{
  grid-row:3;
  grid-column:1/-1;
  padding:clamp(0.375rem,1.8vw,0.5rem) var(--home-gutter);
  border-bottom:1px solid rgba(220,229,240,.8);
  border-radius:0;
  box-shadow:none;
}
#game-panel>.game-filters{
  top:0;
  height:100%;
  min-height:0;
  grid-row:4;
}
#game-panel>.room-list{
  min-height:100%;
  grid-row:4;
}
/*$vite$:1*/