*{box-sizing:border-box}html{font-size:12px}body{margin:0;background:#080914;color:#f4f4f6;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Microsoft YaHei",sans-serif;font-size:12px;min-width:320px}a{color:inherit;text-decoration:none}.page{min-height:100vh;padding-bottom:68px}.topbar{height:52px;display:flex;align-items:center;justify-content:center;padding:0 52px;background:#111226;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:10}.topbar h1{font-size:15px;margin:0;font-weight:700;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.back-btn{position:absolute;left:10px;top:50%;transform:translateY(-50%);min-width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#1b1c30;border:1px solid rgba(255,255,255,.09);color:#fff066;font-size:12px;font-weight:700;padding:0 10px}.back-btn:active{transform:translateY(-50%) scale(.96)}.empty-home{height:calc(100vh - 120px);display:flex;align-items:center;justify-content:center;color:#6e7188}
.home-screen{min-height:calc(100vh - 112px);padding:20px 14px 84px;display:flex;align-items:flex-start;justify-content:center}
.home-hero-card{width:100%;background:linear-gradient(180deg,#241543 0%,#17162b 100%);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:16px;display:grid;grid-template-columns:120px 1fr;gap:14px;box-shadow:0 16px 40px rgba(0,0,0,.34)}
.home-hero-figure{display:flex;align-items:flex-end;justify-content:center;min-height:176px}
.home-hero-figure img{width:100%;max-width:130px;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 10px 24px rgba(0,0,0,.36))}
.home-entry-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:end}
.home-entry-btn{min-height:88px;border-radius:18px;padding:14px 10px;background:linear-gradient(180deg,#38224f 0%,#24192f 100%);border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.home-entry-btn .title{font-size:18px;font-weight:900;letter-spacing:1px}
.home-entry-btn .sub{font-size:12px;font-weight:800;letter-spacing:1.2px;opacity:.8}
.home-entry-btn.order .title{color:#b36cff}.home-entry-btn.order .sub{color:#c894ff}
.home-entry-btn.reserve .title{color:#fff066}.home-entry-btn.reserve .sub{color:#fff39a}
.home-entry-btn:active{transform:scale(.98)}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;height:60px;background:#111226;border-top:1px solid rgba(255,255,255,.08);display:flex;z-index:50}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#9497ad;font-size:12px}.bottom-nav a.active{color:#ffef5a}.bottom-nav .ico{font-size:18px}.shop-layout{display:grid;grid-template-columns:92px 1fr;min-height:calc(100vh - 112px)}.cat-list{background:#0c0d19;border-right:1px solid rgba(255,255,255,.06);padding:10px 0;position:sticky;top:52px;height:calc(100vh - 112px);overflow:auto}.cat-list a{display:block;padding:14px 8px;text-align:center;color:#a5a8bc;border-left:3px solid transparent}.cat-list a.active{background:#fff066;color:#15151c;border-left-color:#fff066;font-weight:700}.goods{padding:10px 10px 92px;min-width:0}.goods-card{display:grid;grid-template-columns:90px 1fr;gap:10px;margin-bottom:14px;background:#111226;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:8px}.goods-card img{width:90px;height:90px;object-fit:cover;border-radius:10px;background:#222}.goods-info{min-width:0}.goods-title{font-size:14px;font-weight:700;color:#fff;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:7px}.price{font-size:18px;color:#fff066;font-weight:800}.meta{display:flex;gap:6px;flex-wrap:wrap;margin:5px 0}.badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:6px;background:rgba(255,240,102,.16);color:#fff066;font-size:12px}.goods-actions{display:flex;gap:8px;margin-top:8px}.btn{border:0;border-radius:999px;padding:8px 11px;background:#fff066;color:#161616;font-size:12px;font-weight:700;cursor:pointer}.btn.secondary{background:#24263a;color:#fff}.btn.danger{background:#ff6961;color:#fff}.btn.block{width:100%;border-radius:12px}.shop-footer{position:fixed;left:10px;right:10px;bottom:70px;z-index:999;background:#17182c;border:1px solid rgba(255,255,255,.08);border-radius:24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 8px 30px rgba(0,0,0,.35)}.shop-footer .sum{padding:10px 16px;color:#fff}.shop-footer .go{background:#fff066;color:#161616;padding:16px 24px;font-weight:800;border-radius:24px}.panel{margin:14px;background:#111226;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:14px}.panel h2{font-size:16px;margin:0 0 12px}.row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.row:last-child{border-bottom:0}.muted{color:#8d90a6}.form{padding:16px}.form label{display:block;margin:12px 0 6px;color:#c5c7d5}.input{width:100%;height:42px;border:1px solid rgba(255,255,255,.12);background:#111226;border-radius:10px;color:#fff;padding:0 12px;font-size:12px}.alert{margin:12px 14px;padding:10px 12px;border-radius:10px}.alert-success{background:rgba(78,203,113,.15);color:#7df0a6}.alert-danger{background:rgba(255,105,97,.15);color:#ff8f88}.product-detail{padding:14px 14px 80px}.product-detail img.main{width:100%;border-radius:18px;aspect-ratio:1/1;object-fit:cover}.rich-content{line-height:1.8;color:#e8e8ee}.rich-content img{max-width:100%;border-radius:10px}.login-links{margin-top:14px;text-align:center;color:#fff066}@media (min-width:768px){body{background:#05050b}.page{max-width:420px;margin:0 auto;background:#000000}.bottom-nav{left:50%;transform:translateX(-50%);max-width:420px}.shop-footer{left:calc(50% - 200px);right:calc(50% - 200px)}}
.form-inner label{display:block;margin:12px 0 6px;color:#c5c7d5}.text-link{display:inline-block;margin-top:10px;color:#fff066}.product-mini{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:center}.product-mini img{width:74px;height:74px;object-fit:cover;border-radius:12px}.product-mini h2{margin:0 0 4px}.product-mini p{margin:0 0 6px}.checkout-page{padding-bottom:94px}.confirm-form{margin:0}.info-choice{display:flex;align-items:center;gap:8px;background:#18192c;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px}.pay-option{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.08);background:#18192c;border-radius:12px;padding:12px;margin-bottom:10px}.pay-option input,.info-choice input{accent-color:#fff066}.pay-option span{display:flex;flex-direction:column;gap:3px}.pay-option small{color:#8d90a6}.confirm-bottom{position:fixed;left:10px;right:10px;bottom:70px;min-height:58px;background:#17182c;border:1px solid rgba(255,255,255,.08);border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;box-shadow:0 8px 30px rgba(0,0,0,.35);z-index:40}.confirm-bottom small{display:block;color:#8d90a6}.confirm-bottom strong{display:block;color:#fff066;font-size:18px}.btn:disabled{opacity:.45;cursor:not-allowed}.menu-list{padding:4px 14px}.menu-item{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.menu-item:last-child{border-bottom:0}.menu-item strong{color:#8d90a6;font-weight:500}.order-list{padding-bottom:70px}.order-card h2{font-size:14px;margin:0 0 6px}.order-head{display:flex;justify-content:space-between;gap:10px;color:#8d90a6;margin-bottom:10px}.order-head strong{color:#fff066}.order-body{display:grid;grid-template-columns:68px 1fr;gap:10px;margin-bottom:10px}.order-body img{width:68px;height:68px;object-fit:cover;border-radius:10px;background:#222}@media (min-width:768px){.confirm-bottom{left:calc(50% - 200px);right:calc(50% - 200px)}}
.product-carousel{position:relative;width:100%;border-radius:18px;overflow:hidden;background:#111226;border:1px solid rgba(255,255,255,.07)}
.carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}
.carousel-slide{min-width:100%;scroll-snap-align:center}.carousel-slide img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#222}
.carousel-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px}.carousel-dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.45);box-shadow:0 1px 5px rgba(0,0,0,.4)}.carousel-dots span.active{width:16px;border-radius:8px;background:#fff066}
.carousel-hint{position:absolute;right:10px;top:10px;background:rgba(0,0,0,.45);color:#fff;padding:4px 8px;border-radius:999px;font-size:12px}
.price-line{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.old-price{color:#777b90;text-decoration:line-through;font-size:12px;font-weight:500}.discount-tag{display:inline-flex;align-items:center;height:18px;border-radius:5px;background:#ff6961;color:#fff;padding:0 5px;font-size:12px;font-weight:700}
.goods-card{position:relative}.cart-add-btn{position:absolute;right:8px;top:8px;width:30px;height:30px;border:0;border-radius:50%;background:#fff066;color:#15151c;font-size:22px;line-height:28px;font-weight:900;box-shadow:0 4px 14px rgba(0,0,0,.35);z-index:2;cursor:pointer}.cart-add-btn:active{transform:scale(.94)}.cart-add-btn:disabled{opacity:.55}.card-qty{position:absolute;right:3px;top:2px;min-width:16px;height:16px;border-radius:999px;background:#ff6961;color:#fff;font-size:12px;font-weight:800;display:none;align-items:center;justify-content:center;padding:0 4px;z-index:3}.card-qty.show{display:inline-flex}.shop-footer .cart-summary{display:flex;align-items:center;gap:10px;min-width:0}.cart-bag{width:46px;height:46px;margin-left:8px;border-radius:50%;background:#24263a;display:flex;align-items:center;justify-content:center;position:relative;font-size:22px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.cart-bag span{position:absolute;right:-4px;top:-4px;min-width:18px;height:18px;border-radius:999px;background:#ff6961;color:#fff;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 4px}.shop-footer .go.disabled{background:#383a4a;color:#9fa2b6;pointer-events:auto}.cart-toast{position:fixed;left:50%;bottom:142px;transform:translateX(-50%);background:rgba(0,0,0,.82);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:9px 14px;z-index:80;box-shadow:0 8px 25px rgba(0,0,0,.35)}.cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.cart-item:last-child{border-bottom:0}.cart-item img{width:58px;height:58px;border-radius:10px;object-fit:cover;background:#222}.cart-item h3{margin:0 0 5px;font-size:13px}.cart-item .cart-line-price{color:#fff066;font-weight:800}.cart-item .cart-qty{color:#8d90a6;white-space:nowrap}.cart-total-row{font-size:14px}.cart-total-row strong{font-size:18px;color:#fff066}@media (min-width:768px){.cart-toast{bottom:142px}}
.cart-bag{border:0;color:#fff;cursor:pointer}.cart-mask{position:fixed;left:0;right:0;top:0;bottom:0;background:rgba(0,0,0,.55);z-index:90}.cart-drawer{position:fixed;left:0;right:0;bottom:0;max-height:78vh;background:#121326;border-radius:20px 20px 0 0;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -16px 38px rgba(0,0,0,.45);z-index:100;transform:translateY(105%);transition:transform .18s ease;overflow:hidden}.cart-drawer.open{transform:translateY(0)}.cart-drawer-head{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.07)}.cart-drawer-head h2{font-size:15px;margin:0}.cart-drawer-head>div{display:flex;align-items:center;gap:8px}.cart-clear{border:0;background:transparent;color:#fff066;font-size:12px;padding:7px 8px;cursor:pointer}.cart-close{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:#202238;color:#fff;font-size:20px;line-height:26px;cursor:pointer}.cart-drawer-body{max-height:calc(78vh - 126px);overflow:auto;padding:2px 14px}.cart-empty{padding:34px 12px;text-align:center;color:#8d90a6}.drawer-cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06)}.drawer-cart-item:last-child{border-bottom:0}.drawer-cart-item img{width:58px;height:58px;border-radius:10px;object-fit:cover;background:#222}.drawer-cart-info{min-width:0}.drawer-cart-info h3{font-size:13px;margin:0 0 5px;max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-badge{display:inline-flex;align-items:center;height:18px;padding:0 5px;border-radius:5px;background:rgba(255,240,102,.14);color:#fff066;font-size:12px;margin-top:4px}.drawer-cart-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.qty-control{display:flex;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:999px;overflow:hidden;background:#1b1c30}.qty-control button{width:28px;height:28px;border:0;background:transparent;color:#fff066;font-size:18px;font-weight:900;cursor:pointer}.qty-control span{min-width:24px;text-align:center;color:#fff;font-weight:700}.drawer-remove{border:0;background:transparent;color:#ff8f88;font-size:12px;cursor:pointer;padding:3px 0}.cart-drawer-foot{height:72px;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid rgba(255,255,255,.08);background:#17182c}.cart-drawer-foot small{display:block;color:#9fa2b6;margin-bottom:3px}.cart-drawer-foot strong{font-size:18px;color:#fff066}.cart-drawer-foot .btn.disabled{background:#383a4a;color:#9fa2b6;pointer-events:auto}@media (min-width:768px){.cart-mask{left:50%;transform:translateX(-50%);max-width:420px}.cart-drawer{left:50%;right:auto;transform:translate(-50%,105%);max-width:420px;width:420px}.cart-drawer.open{transform:translate(-50%,0)}}

.blank-page{min-height:calc(100vh - 112px);}
.me-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.me-head h2{margin:0 0 3px}.me-head p{margin:0}.me-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;background:#24263a;border:1px solid rgba(255,255,255,.12)}.profile-avatar-edit{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;margin-bottom:12px}.profile-avatar-edit img{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#24263a;border:1px solid rgba(255,255,255,.12)}.profile-avatar-edit label{margin-top:0}
.seat-list{padding:10px 14px 82px;display:grid;gap:12px}.seat-card{width:100%;border:1px solid rgba(255,255,255,.08);background:#17182c;border-radius:16px;padding:10px;display:grid;grid-template-columns:84px 1fr;gap:12px;text-align:left;color:#fff;text-decoration:none;align-items:center}.seat-card.reserved{cursor:pointer}.seat-card img{width:84px;height:84px;border-radius:12px;object-fit:cover;background:#222}.seat-info h2{font-size:15px;margin:0 0 6px}.seat-info p{margin:0 0 8px;color:#c7cad8}.seat-status{font-weight:900}.seat-status.is-reserved{color:#ff6961}.seat-status.is-free{color:#fff}.seat-detail{padding:14px 14px 90px}.seat-hero{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:18px;background:#222;border:1px solid rgba(255,255,255,.07);margin-bottom:12px}.btn.block{width:100%;height:46px;margin-top:14px}.seat-modal-mask{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:100;align-items:center;justify-content:center;padding:18px}.seat-modal{width:min(390px,94vw);background:#15162a;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:16px;box-shadow:0 18px 45px rgba(0,0,0,.45)}.seat-modal h2{font-size:16px;margin:0 0 10px}.seat-modal label{display:block;margin:12px 0 6px;color:#c5c7d5}.modal-actions{display:flex;gap:10px;margin-top:14px}.modal-actions .btn{flex:1}.reserve-calc{display:flex;justify-content:space-between;align-items:center;margin:12px 0;padding:12px;border-radius:12px;background:#1e2036}.reserve-calc strong{font-size:20px;color:#fff066}.section-title{padding:16px 14px 6px;color:#fff;font-size:14px;font-weight:900}.access-code-row strong{font-size:18px;letter-spacing:2px;color:#fff066}.seat-room{padding:14px 14px 82px}.room-online{display:flex;align-items:center;justify-content:space-between}.room-online strong{font-size:26px;color:#fff066}.room-blank{min-height:220px;display:flex;align-items:center;justify-content:center;text-align:center}

.access-code-copy{display:flex;align-items:center;gap:8px}.access-code-copy strong{font-size:18px;letter-spacing:2px;color:#fff066}.copy-code-btn{height:28px;border:0;border-radius:999px;background:#fff066;color:#15151c;font-size:12px;font-weight:800;padding:0 10px;cursor:pointer}.copy-code-btn:active{transform:scale(.96)}
.room-score-card{display:flex;flex-direction:column;gap:10px}.base-score{width:100%;border:0;border-radius:14px;background:#1d1f35;color:#fff;padding:14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.base-score span{color:#aeb2c8}.base-score strong{font-size:24px;color:#fff066}.base-score.can-edit{box-shadow:0 0 0 1px rgba(255,240,102,.35) inset}.score-progress{display:flex;justify-content:space-between;color:#c8cad8}.score-progress span:last-child{color:#fff066}.room-game-status{margin:0 14px 12px}.game-freeze,.game-result{background:rgba(255,240,102,.12);border:1px solid rgba(255,240,102,.22);border-radius:14px;padding:12px;text-align:center;color:#fff}.game-freeze strong{display:inline-block;margin-left:6px;color:#fff066;font-size:18px}.game-result{background:rgba(78,203,113,.13);border-color:rgba(78,203,113,.25)}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.room-cell{height:116px;border-radius:15px;background:#111226;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;touch-action:manipulation}.room-cell.empty{color:#555a72;background:#0d0e1c;border-style:dashed}.room-cell.empty span{font-size:22px;font-weight:800}.room-cell.me{box-shadow:0 0 0 1px rgba(255,240,102,.25) inset}.room-cell.submitted .avatar-wrap img{border-color:#4edb79;box-shadow:0 0 0 2px rgba(78,219,121,.35)}.avatar-wrap{position:relative;width:52px;height:52px}.avatar-wrap img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.14);background:#222}.commit-badge{position:absolute;right:-7px;bottom:-3px;min-width:24px;height:20px;border-radius:999px;background:#4edb79;color:#07130b;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 5px}.cell-name{width:100%;padding:0 6px;margin-top:6px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.owner-badge{margin-top:4px;height:18px;line-height:18px;border-radius:999px;background:#fff066;color:#161616;font-weight:900;font-size:12px;padding:0 7px}.seat-no{margin-top:4px;color:#8d90a6;font-size:12px}.kick-tip{position:absolute;left:0;right:0;bottom:0;background:rgba(255,105,97,.18);color:#ff9c96;font-size:12px;height:19px;line-height:19px}.room-actions{display:flex;flex-direction:column;gap:10px;margin:12px 0}.winner-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.winner-item{border:1px solid rgba(255,255,255,.08);background:#202238;border-radius:12px;color:#fff;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer}.winner-item img,.vote-winner img{width:50px;height:50px;border-radius:50%;object-fit:cover;background:#222}.vote-winner{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0}.vote-winner strong{font-size:15px;color:#fff066}.room-actions .btn.danger{background:#ff6961;color:#fff}
.kick-x{position:absolute;right:-7px;top:-7px;width:24px;height:24px;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:#ff4d4f;color:#fff;font-size:18px;font-weight:900;line-height:20px;display:flex;align-items:center;justify-content:center;z-index:5;box-shadow:0 3px 10px rgba(0,0,0,.35);cursor:pointer;padding:0}.kick-x:active{transform:scale(.94)}

.room-cell.hangup .avatar-wrap img{filter:grayscale(.35);opacity:.58;border-color:#777a8e}.hangup-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;border-radius:999px;background:rgba(0,0,0,.72);color:#fff066;font-size:12px;font-weight:900;padding:2px 6px;z-index:4}.room-cell.hangup .cell-name{color:#9a9dad}

@media (max-width:380px){.home-hero-card{grid-template-columns:104px 1fr;padding:14px;gap:12px}.home-entry-actions{gap:10px}.home-entry-btn{min-height:80px;padding:12px 8px}.home-entry-btn .title{font-size:16px}}

/* v32 首页排版：上方大图，下方两个等宽入口按钮 */
.home-screen{min-height:calc(100vh - 112px);padding:20px 14px 84px;display:block}
.home-hero-card{width:100%;background:linear-gradient(180deg,#241543 0%,#17162b 100%);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:14px;display:block;box-shadow:0 16px 40px rgba(0,0,0,.34)}
.home-banner{width:100%;aspect-ratio:4/1;border-radius:14px;background:#21163b;border:1px solid rgba(255,255,255,.06);overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.home-banner img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 8px 22px rgba(0,0,0,.32))}
.home-entry-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:initial}
.home-entry-btn{height:82px;min-height:82px;border-radius:16px;padding:12px 10px;background:linear-gradient(180deg,#38224f 0%,#24192f 100%);border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.home-entry-btn .title{font-size:18px;font-weight:900;letter-spacing:1px}.home-entry-btn .sub{font-size:12px;font-weight:800;letter-spacing:1.2px;opacity:.86}
.home-entry-btn.order .title{color:#b36cff}.home-entry-btn.order .sub{color:#c894ff}.home-entry-btn.reserve .title{color:#fff066}.home-entry-btn.reserve .sub{color:#fff39a}
@media (max-width:380px){.home-hero-card{padding:12px}.home-entry-actions{gap:10px}.home-entry-btn{height:76px;min-height:76px}.home-entry-btn .title{font-size:16px}}

/* v33 首页首屏样式微调 */
.home-hero-card {
    position: relative;
    width: 100%;
    height: 200px;
    background: linear-gradient(180deg, #241543 0%, #17162b 100%);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 22px;
    padding: 14px;
    display: block;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .34);
    margin-top: 50px;
}
.home-banner {
    width: 100%;
    aspect-ratio: 4 / 1;
    border-radius: 14px;
    background: transparent;
    border: 0;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    position: absolute;
    top: -90px;
    left: 14px;
    right: 14px;
    width: calc(100% - 28px);
}
.home-banner img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 8px 22px rgba(0, 0, 0, .32));
}
.home-entry-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-content: initial;
    position: absolute;
    width: calc(100% - 28px);
    bottom: 15px;
    left: 14px;
}

.home-slogan{position:absolute;left:14px;right:14px;bottom:100px;text-align:center;color:#fff;font-size:24px;letter-spacing:1px;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.55);z-index:2;white-space:nowrap}

/* v37 首页排行榜入口与排行榜页 */
.home-screen{padding-top:18px}
.home-rank-entry{display:block;margin:14px 0px;border-radius:16px;overflow:hidden;background:#17182c;border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 32px rgba(0,0,0,.34)}
.home-rank-entry img{display:block;width:100%;height:140px;aspect-ratio:1080/208;object-fit:cover;background:#151128}
.rank-page{min-height:calc(100vh - 112px);padding:16px 14px 86px;background:#15122a;background-image:linear-gradient(135deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(45deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:36px 36px;color:#fff}
.rank-tabs{display:flex;justify-content:center;gap:42px;margin:8px 0 60px;font-size:14px;font-weight:900;color:#c8c3e8}.rank-tabs span{position:relative}.rank-tabs span.active{color:#fff}.rank-tabs span.active:after{content:"";position:absolute;left:25%;right:25%;bottom:-8px;height:3px;border-radius:99px;background:#b36cff}
.rank-season{width:206px;height:46px;margin:18px auto 22px;border-radius:999px;background:rgba(255,255,255,.12);display:grid;grid-template-columns:1fr 1fr;padding:4px}.rank-season span{display:flex;align-items:center;justify-content:center;border-radius:999px;color:#d8d4ef;font-weight:900}.rank-season span.active{background:rgba(255,255,255,.16);color:#fff}
.rank-podium{display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:end;gap:8px;margin-top:26px}.podium-card{min-height:154px;background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));border-radius:22px 22px 8px 8px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:10px 6px 14px;text-align:center}.podium-1{min-height:184px;background:linear-gradient(180deg,rgba(255,240,102,.18),rgba(255,255,255,.06))}.podium-avatar{width:74px;height:74px;position:relative;margin-top:-28px;margin-bottom:12px}.podium-1 .podium-avatar{width:86px;height:86px;margin-top:-36px}.podium-avatar .rank-frame{position:absolute;width:calc(100% + 35px);height:calc(100% + 35px);object-fit:contain;z-index:2;pointer-events:none;top:-20px;left:-18px}.podium-avatar .user-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#2a2444;border:3px solid rgba(255,255,255,.2)}.podium-card strong{font-size:13px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podium-card small{display:block;margin-top:5px;color:#d7d1f2;font-size:12px}
.rank-list{margin-top:18px;background:#17182c;border:1px solid rgba(255,255,255,.07);border-radius:16px;overflow:hidden}.rank-row{display:grid;grid-template-columns:38px 42px 1fr auto;gap:10px;align-items:center;padding:12px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.rank-row:last-child{border-bottom:0}.rank-row .rank-no{font-weight:900;color:#eee}.rank-row img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#2a2444}.rank-row strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-row em{font-style:normal;color:#fff066;font-weight:800;font-size:12px;white-space:nowrap}
.admin-preview-box.wide img{max-height:120px;object-fit:contain}

.home-marquee{width:100%;height:40px;margin:5px 0;border-radius:12px;background:#17182c;border:1px solid rgba(255,255,255,.08);overflow:hidden;display:flex;align-items:center;position:relative}
.home-marquee-track{display:inline-flex;align-items:center;gap:42px;white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:.5px;animation:homeMarquee 14s linear infinite;padding-left:100%}
.home-marquee-track span{display:inline-block}
@keyframes homeMarquee{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

.rank-tabs a{position:relative;color:#c8c3e8;text-decoration:none;font-size:14px;font-weight:900}
.rank-tabs a.active{color:#fff}
.rank-tabs a.active:after{content:"";position:absolute;left:25%;right:25%;bottom:-8px;height:3px;border-radius:99px;background:#b36cff}
.rank-season a{display:flex;align-items:center;justify-content:center;border-radius:999px;color:#d8d4ef;font-weight:900;text-decoration:none}
.rank-season a.active{background:rgba(255,255,255,.16);color:#fff}
.rank-podium .podium-1{order:2}.rank-podium .podium-2{order:1}.rank-podium .podium-3{order:3}

/* v41 卡座/分类 5:2 Banner */
.page-banner {
    width: calc(100% - 28px);
    aspect-ratio: 5 / 2;
    margin: 12px 14px 10px;
    /* border-radius: 16px; */
    overflow: hidden;
    background: #17182c;
    /* border: 1px solid rgba(255, 255, 255, .08); */
    box-shadow: 0 10px 28px rgba(0, 0, 0, .28);
}
.page-banner img{display:block;width:100%;height:100%;object-fit:cover;background:#151128}
.goods .page-banner{width:100%;margin:0 0 12px}
.seat-list-banner{margin-bottom:4px}

.bottom-nav .ico{height:22px;display:flex;align-items:center;justify-content:center}.bottom-nav .nav-icon{width:22px;height:22px;display:block;object-fit:contain}.bottom-nav a .nav-icon{filter:none;opacity:1}

/* v45 底部导航选中态：图标和文字统一紫蓝色 */
.bottom-nav a{color:#fff;}
.bottom-nav a.active{color:#7b61ff;}
.bottom-nav .ico{height:22px;display:flex;align-items:center;justify-content:center;}
.bottom-nav .nav-icon{width:22px;height:22px;display:block;background-color:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;}
.bottom-nav .nav-home{mask-image:url('/assets/img/nav/home.svg');-webkit-mask-image:url('/assets/img/nav/home.svg');}
.bottom-nav .nav-shop{mask-image:url('/assets/img/nav/shop.svg');-webkit-mask-image:url('/assets/img/nav/shop.svg');}
.bottom-nav .nav-me{mask-image:url('/assets/img/nav/me.svg');-webkit-mask-image:url('/assets/img/nav/me.svg');}

/* square module */
.home-square-section{margin:14px 0 0;background:#111226;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:12px;box-shadow:0 12px 32px rgba(0,0,0,.28)}
.home-square-head{display:flex;align-items:flex-end;gap:8px;margin-bottom:10px}.home-square-head h2{margin:0;color:#fff;font-size:22px;letter-spacing:1px}.home-square-head span{color:#9fa2b6;font-size:12px;padding-bottom:3px}.square-preview-grid{columns:2 120px;column-gap:8px}.square-preview-card{display:block;break-inside:avoid;margin:0 0 8px;border-radius:12px;overflow:hidden;background:#17182c;position:relative;border:1px solid rgba(255,255,255,.06)}.square-preview-card img,.square-preview-card video{display:block;width:100%;height:auto;min-height:120px;max-height:230px;object-fit:cover;background:#222}.square-preview-card em,.video-mark{position:absolute;right:6px;top:6px;background:rgba(0,0,0,.65);color:#fff066;border-radius:999px;padding:2px 6px;font-style:normal;font-size:12px;font-weight:800}.home-square-more{display:block;text-align:center;color:#fff066;font-weight:900;padding:10px 0 2px}.home-square-empty{height:88px;border-radius:12px;background:#17182c;color:#777b90;display:flex;align-items:center;justify-content:center}
.square-page{padding:12px 12px 82px}.square-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 2px 12px}.square-head strong{display:block;font-size:22px;color:#fff}.square-head span{display:block;color:#9fa2b6;margin-top:2px}.square-waterfall{columns:2 140px;column-gap:10px}.square-card{break-inside:avoid;display:block;margin:0 0 10px;border-radius:14px;overflow:hidden;background:#17182c;border:1px solid rgba(255,255,255,.08);position:relative}.square-media{display:block;width:100%;height:auto;min-height:130px;max-height:280px;object-fit:cover;background:#222}.square-card-user{display:flex;gap:8px;align-items:center;padding:8px}.square-card-user img{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#222}.square-card-user strong{display:block;font-size:12px;color:#fff;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.square-card-user small{display:block;color:#8d90a6;font-size:12px;margin-top:1px}.square-pages{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:16px 0}.square-pages a{height:32px;border-radius:999px;background:#202238;color:#fff;padding:0 12px;display:inline-flex;align-items:center;justify-content:center}.square-pages a.active{background:#fff066;color:#15151c;font-weight:900}
.square-type-tabs{display:flex;gap:10px;margin:8px 0 12px}.square-type-tabs label{flex:1;height:42px;border-radius:12px;background:#1b1c30;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;gap:7px;margin:0}.square-type-tabs input{accent-color:#7b61ff}.square-thumb-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.square-thumb-item{min-width:0;background:#17182c;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.square-thumb-item img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#222}.square-thumb-item span{display:block;padding:4px 5px;color:#9fa2b6;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.square-media-wrap{position:relative}.multi-mark,.video-mark{position:absolute;right:6px;top:6px;background:rgba(0,0,0,.65);color:#fff066;border-radius:999px;padding:2px 6px;font-style:normal;font-size:12px;font-weight:800}.square-open-modal{cursor:pointer}.square-preview-grid .square-card{display:block;break-inside:avoid;margin:0 0 8px;border-radius:12px}.square-preview-grid .square-card-user{display:none}.square-preview-grid .square-media{min-height:120px;max-height:230px}.square-viewer{position:fixed;inset:0;z-index:1000}.square-viewer-mask{position:absolute;inset:0;background:rgba(0,0,0,.82)}.square-viewer-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,94vw);max-height:86vh;background:#111226;border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;box-shadow:0 20px 70px rgba(0,0,0,.55)}.square-viewer-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:24px;line-height:30px;z-index:4}.square-viewer-body{width:100%;max-height:82vh;background:#080914;display:flex;align-items:center;justify-content:center}.square-viewer-body>img,.square-viewer-body>video{display:block;width:100%;height:auto;max-height:82vh;object-fit:contain}.square-viewer-track{width:100%;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.square-viewer-track::-webkit-scrollbar{display:none}.square-viewer-slide{min-width:100%;height:82vh;display:flex;align-items:center;justify-content:center;scroll-snap-align:center}.square-viewer-slide img{display:block;width:100%;max-height:82vh;object-fit:contain}.square-viewer-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;z-index:5}.square-viewer-dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.45)}.square-viewer-dots span.active{width:18px;border-radius:999px;background:#fff066}

.square-upload-picker{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:center;margin:8px 0 10px}
.square-plus-uploader{width:74px;height:74px;border-radius:16px;border:1px dashed rgba(255,255,255,.28);background:#17182c;color:#fff066;display:flex!important;align-items:center;justify-content:center;margin:0!important;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.square-plus-uploader span{font-size:46px;line-height:1;font-weight:300;margin-top:-4px}.square-upload-picker strong{display:block;color:#fff;margin-bottom:4px}.square-file-input{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.square-file-count{margin:4px 0 0;color:#fff066;font-weight:800}.square-upload-progress{margin:12px 0;background:#17182c;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px}.square-progress-head{display:flex;align-items:center;justify-content:space-between;color:#cfd2df;margin-bottom:8px}.square-progress-head strong{color:#fff066}.square-progress-bar{height:8px;border-radius:999px;background:#2b2d43;overflow:hidden}.square-progress-bar i{display:block;height:100%;width:0;background:#7b61ff;border-radius:inherit;transition:width .15s ease}.square-thumb-item.loading{min-height:96px;display:flex;flex-direction:column}.square-thumb-loading{height:72px;display:flex;align-items:center;justify-content:center;color:#8d90a6;font-size:12px;background:#202238}
.square-video-cover-preview{margin:10px 0 4px}.square-video-cover-box{background:#17182c;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}.square-video-cover-box img{display:block;width:100%;max-height:220px;object-fit:cover;background:#222}.square-video-cover-box span{display:block;padding:8px 10px;color:#fff066;font-weight:800;font-size:12px}

.square-own-item{break-inside:avoid;position:relative;margin:0 0 10px}.square-own-item .square-card{margin:0}.square-delete-form{position:absolute;right:8px;bottom:8px;z-index:6}.square-delete-btn{border:0;border-radius:999px;background:rgba(255,77,79,.92);color:#fff;font-size:12px;font-weight:900;padding:6px 10px;box-shadow:0 4px 14px rgba(0,0,0,.35);cursor:pointer}.square-delete-btn:active{transform:scale(.96)}

.home-entry-actions.one{grid-template-columns:1fr}

/* v66 桌游卡座扫码入口与荷官密码页 */
.texas-poker-entry-page{padding:18px 14px 96px}.texas-poker-entry-card{max-width:620px;margin:12px auto;padding:22px 18px;border-radius:18px;background:#15162a;border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 34px rgba(0,0,0,.2)}.texas-poker-entry-icon{width:100%;height:auto;object-fit:cover;background:#25273a}.texas-poker-entry-title{display:flex;align-items:center;gap:10px;margin:14px 0 4px}.texas-poker-entry-title span{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#fff066;color:#171717;font-size:12px;font-weight:800;padding:4px 7px}.texas-poker-entry-title h1{font-size:22px;margin:0;color:#fff}.texas-poker-entry-capacity{color:#c8cbda;margin:7px 0 16px}.texas-poker-description{padding:14px 0;line-height:1.8;color:#e9eaf1;word-break:break-word}.texas-poker-description img{display:block;max-width:100%;height:auto;border-radius:12px;margin:10px 0}.texas-poker-description a{color:#fff066}.texas-poker-entry-note,.texas-dealer-host-placeholder{border-radius:12px;background:rgba(255,240,102,.1);color:#fff3ad;padding:12px;line-height:1.65;font-size:13px}.texas-dealer-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#090a12;color:#f4f5fb}.texas-dealer-login-card{width:min(100%,420px);border-radius:18px;background:#15162a;border:1px solid rgba(255,255,255,.1);padding:24px 20px;text-align:center}.texas-dealer-login-card h1{font-size:22px;margin:6px 0 8px}.texas-dealer-login-card .muted{line-height:1.65}.texas-dealer-login-icon{width:76px;height:76px;border-radius:16px;object-fit:cover;background:#25273a}.texas-dealer-eyebrow{margin:12px 0 4px;color:#fff066;font-size:12px;font-weight:700}.texas-dealer-form{text-align:left;margin-top:18px}.texas-dealer-form label{display:block;margin:12px 0 7px;color:#d8d9e2}.texas-dealer-form input{width:100%;border:1px solid rgba(255,255,255,.12);background:#090a12;color:#fff;border-radius:10px;padding:11px;font-size:14px}.texas-dealer-form button,.texas-dealer-logout button{width:100%;border:0;border-radius:10px;background:#fff066;color:#171717;font-weight:800;padding:12px;margin-top:18px;cursor:pointer}.texas-dealer-error{margin-top:14px;border-radius:10px;background:rgba(255,105,97,.15);color:#ffb0ab;padding:10px;line-height:1.5}.texas-dealer-host-top{display:flex;gap:12px;align-items:center}.texas-dealer-host-top h1{font-size:20px;margin:2px 0}.texas-dealer-host-top .texas-dealer-eyebrow{margin:0}.texas-dealer-logout{margin-top:18px}

/* v70 桌游卡座：线下赛事、线上入座与荷官主持 */
.bottom-nav .nav-texas{mask-image:url('/assets/img/nav/texas.svg');-webkit-mask-image:url('/assets/img/nav/texas.svg')}
.texas-lobby-page{padding:14px 14px 88px}.texas-table-list{display:grid;gap:10px}.texas-table-card{display:grid;grid-template-columns:62px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:12px;border-radius:16px;background:#15162a;border:1px solid rgba(255,255,255,.08);color:#fff}.texas-table-card:active{transform:scale(.99)}.texas-table-card>img{width:62px;height:62px;border-radius:14px;object-fit:cover;background:#25273a}.texas-table-card-title{display:flex;align-items:center;gap:7px;min-width:0}.texas-table-card-title span{font-size:11px;font-weight:900;color:#1a1720;background:#fff066;padding:3px 5px;border-radius:6px;white-space:nowrap}.texas-table-card-title h2{margin:0;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.texas-table-card-info p{margin:7px 0 0;color:#aeb2c4;font-size:12px}.texas-table-card-info p b{color:#7df0a6}.texas-table-card-info em{font-style:normal;color:#62667a;margin:0 3px}.texas-table-card-arrow{font-size:28px;color:#85899e}.texas-empty{text-align:center;margin:36px 0}.texas-entry-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.texas-entry-stats>div{padding:10px 8px;border-radius:12px;background:#0e0f1d;border:1px solid rgba(255,255,255,.06);text-align:center}.texas-entry-stats small{display:block;color:#9497ad;font-size:11px;margin-bottom:5px}.texas-entry-stats strong{display:block;color:#fff066;font-size:13px}.texas-entry-status{margin:14px 0;padding:11px;border-radius:12px;background:rgba(255,105,97,.12);border:1px solid rgba(255,105,97,.18);color:#ffb6b0;line-height:1.55;font-size:13px}.texas-entry-status.is-ok{background:rgba(78,203,113,.11);border-color:rgba(78,203,113,.18);color:#a5efbb}.texas-entry-actions{margin-top:14px}.texas-entry-balance-note{text-align:center;font-size:12px;line-height:1.5;margin:10px 0 0}.texas-payment-page{padding:14px 14px 92px}.texas-payment-card{display:flex;align-items:center;gap:12px}.texas-payment-card>img{width:68px;height:68px;border-radius:16px;object-fit:cover;background:#24263a}.texas-payment-card h2{margin:3px 0 6px}.texas-payment-card strong{color:#fff066;font-size:20px}.pay-option.disabled{opacity:.5}.texas-room-page,.texas-dealer-page{padding:14px 14px 94px}.texas-room-hero,.texas-dealer-hero{display:flex;align-items:center;gap:12px;padding:15px;border-radius:18px;background:linear-gradient(135deg,#25213b,#121321);border:1px solid rgba(255,255,255,.09)}.texas-room-hero img,.texas-dealer-hero img{width:64px;height:64px;border-radius:15px;object-fit:cover;background:#24263a}.texas-room-hero p,.texas-dealer-hero p{margin:0 0 4px;color:#b6b8cc;font-size:12px}.texas-room-hero h1,.texas-dealer-hero h1{font-size:18px;margin:0 0 8px}.texas-room-hero strong,.texas-dealer-hero strong{font-size:24px;letter-spacing:1px;color:#fff066;font-variant-numeric:tabular-nums}.texas-room-summary,.texas-dealer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.texas-room-summary>div,.texas-dealer-stats>div{padding:11px 7px;border-radius:12px;background:#15162a;border:1px solid rgba(255,255,255,.07);text-align:center}.texas-room-summary small,.texas-dealer-stats small{display:block;color:#8d90a6;font-size:11px;margin-bottom:5px}.texas-room-summary b,.texas-dealer-stats b{font-size:13px;color:#fff}.texas-room-message,.texas-dealer-notice{min-height:18px;padding:11px 12px;border-radius:12px;background:rgba(255,240,102,.09);color:#fff1ac;line-height:1.6;font-size:13px}.texas-room-members{margin-top:14px}.texas-room-members h2{font-size:16px;margin:0 0 9px}.texas-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.texas-member-card{min-width:0;position:relative;display:flex;align-items:center;gap:9px;padding:9px;border-radius:14px;background:#15162a;border:1px solid rgba(255,255,255,.08);color:#fff;text-align:left}.texas-member-card>img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#25273a}.texas-member-card>div{min-width:0}.texas-member-card b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.texas-member-card small{display:block;color:#9599ad;font-size:11px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.texas-seat-badge{margin-left:auto;min-width:38px;height:38px;padding:0 8px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff066,#ffb84d);color:#17120b;font-size:24px;font-weight:1000;line-height:1;box-shadow:0 8px 22px rgba(255,184,77,.22)}.texas-member-card i{position:absolute;right:9px;top:9px;width:8px;height:8px;border-radius:50%;background:#707487}.texas-member-card.is-online i{background:#55cf7d;box-shadow:0 0 0 3px rgba(85,207,125,.12)}.texas-dealer-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.texas-dealer-controls .btn{flex:1;min-width:130px;border-radius:12px;padding:11px}.texas-dealer-members .muted{font-size:12px;line-height:1.6;margin-top:-4px}.texas-dealer-member{border:0;cursor:pointer;width:100%}.texas-dealer-member:active{transform:scale(.98)}.texas-action-modal{position:fixed;z-index:800;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;padding:18px}.texas-action-modal[hidden]{display:none}.texas-action-modal-card{width:min(100%,420px);max-height:84vh;overflow:auto;border-radius:18px;background:#17182c;border:1px solid rgba(255,255,255,.12);padding:18px;box-shadow:0 24px 80px rgba(0,0,0,.55)}.texas-action-modal-card h2{font-size:18px;margin:0 0 10px}.texas-action-modal-card p{color:#aeb2c4;line-height:1.6}.texas-action-modal-card .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.texas-kick-confirm-user{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:#0e0f1b}.texas-kick-confirm-user img{width:46px;height:46px;border-radius:50%;object-fit:cover}.texas-kick-confirm-user b{font-size:15px}.texas-award-modal-card{width:min(100%,520px)}.texas-award-select{padding:11px;margin:10px 0;border-radius:12px;background:#0e0f1b;border:1px solid rgba(255,255,255,.07)}.texas-award-select h3{font-size:14px;margin:0 0 8px;color:#fff066}.texas-award-select select{width:100%;height:40px;border:1px solid rgba(255,255,255,.14);border-radius:9px;padding:0 10px;color:#fff;background:#17182c}.texas-award-check{display:flex;align-items:center;gap:8px;padding:7px 0;cursor:pointer}.texas-award-check input{width:17px;height:17px;accent-color:#fff066}.texas-award-check img{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#25273a}.texas-award-check span{font-size:13px}.texas-dealer-login-card{padding-bottom:22px}@media(max-width:380px){.texas-entry-stats{grid-template-columns:1fr}.texas-member-grid{grid-template-columns:1fr}.texas-room-summary,.texas-dealer-stats{grid-template-columns:1fr 1fr}.texas-room-summary>div:last-child,.texas-dealer-stats>div:last-child{grid-column:1/-1}}

/* 2026-07-01 微信支付测试与正式支付功能 */
.payment-cashier{padding:14px 14px 92px}.payment-cashier .price{font-size:30px;color:#fff066;font-weight:900;margin:10px 0}.payment-cashier-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}.payment-cashier-actions .btn{min-width:150px}.payment-mock-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-mock-actions .btn{width:100%;min-width:0}@media(max-width:360px){.payment-mock-actions{grid-template-columns:1fr}.payment-cashier-actions .btn{width:100%}}

/* 2026-07-01 我的奖品独立栏目：统一展示桌游卡座获奖奖品。 */
.my-prizes-page{padding:14px 14px 88px}.my-prizes-intro{margin:2px 0 14px;padding:16px;border-radius:16px;background:linear-gradient(135deg,#322449,#18172d);border:1px solid rgba(255,255,255,.09)}.my-prizes-intro h2{margin:0 0 6px;font-size:18px}.my-prizes-intro.my-prizes-record-title h2{margin-bottom:0}.my-prizes-intro p{margin:0;color:#c2c5d5;line-height:1.65;font-size:13px}.my-prize-list{display:grid;gap:10px;margin-bottom:15px}.my-prize-card{padding:14px;border-radius:16px;background:#15162a;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 22px rgba(0,0,0,.16)}.my-prize-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.my-prize-rank{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:7px;font-size:12px;font-weight:900;background:rgba(255,240,102,.18);color:#fff066}.my-prize-rank-runner_up{background:rgba(210,216,230,.18);color:#eef0f8}.my-prize-rank-third{background:rgba(214,146,88,.18);color:#ffc994}.my-prize-rank-participation{background:rgba(107,183,255,.16);color:#9dccff}.my-prize-issued{font-size:12px;color:#7df0a6}.my-prize-card h2{margin:12px 0 10px;font-size:17px;line-height:1.4}.my-prize-components{display:flex;flex-wrap:wrap;gap:7px}.my-prize-components span{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border-radius:8px;background:#22243a;color:#eceef6;font-size:12px}.my-prize-points{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;margin-top:12px;border-top:1px solid rgba(255,255,255,.07);color:#9ea2b7}.my-prize-points strong{color:#fff066;font-size:14px}.my-prize-meta{display:flex;justify-content:space-between;gap:10px;margin-top:10px;color:#84889e;font-size:11px;line-height:1.45}.my-prize-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-prize-meta time{white-space:nowrap}.my-prizes-empty{text-align:center;padding:34px 18px}.my-prizes-empty-icon{font-size:42px;margin-bottom:6px}.my-prizes-empty h2{margin:0 0 8px}.my-prizes-empty p{line-height:1.65;margin:0 0 18px}@media(max-width:360px){.my-prize-meta{display:block}.my-prize-meta time{display:block;margin-top:4px}}

/* 2026-07-01 配送位置二维码与商品配送功能 */
.delivery-location-panel h2{display:flex;align-items:center;gap:6px}.delivery-location-locked{display:flex;align-items:flex-start;gap:12px;border:1px solid rgba(255,240,102,.45);background:rgba(255,240,102,.08);border-radius:12px;padding:12px}.delivery-location-pin{font-size:24px;line-height:1.2}.delivery-location-locked strong{display:block;font-size:16px}.delivery-location-locked p{margin:4px 0 0;color:#bfc1d0;font-size:13px;line-height:1.5}.delivery-location-switch{margin-top:9px;padding:0;border:0;background:transparent;cursor:pointer}.delivery-location-clear-form{display:none}.delivery-landing-page{min-height:60vh;display:flex;align-items:center}.delivery-landing-card{text-align:center;width:100%;padding:30px 20px}.delivery-landing-icon{font-size:48px;line-height:1;margin-bottom:12px}.delivery-landing-card h2{margin:0 0 8px}.delivery-landing-location{font-size:20px;font-weight:800;color:#fff066;margin:8px 0 12px}.delivery-landing-card .btn{display:inline-flex;margin-top:14px;min-width:160px;justify-content:center}


/* 2026-07-01 积分记录独立栏目：移动端完整查看个人积分流水。 */
.my-points-page{padding:14px 14px 88px}.my-points-summary{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:end;padding:17px 16px;border-radius:16px;background:linear-gradient(135deg,#28304d,#16172a);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px rgba(0,0,0,.18)}.my-points-summary span{color:#bfc3d4;font-size:13px}.my-points-summary strong{grid-column:1/-1;color:#fff066;font-size:31px;line-height:1.12;font-variant-numeric:tabular-nums}.my-points-summary small{grid-column:1/-1;color:#9296aa;font-size:12px}.my-points-list{display:grid;gap:9px;margin-top:14px}.my-points-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:14px;background:#15162a;border:1px solid rgba(255,255,255,.08)}.my-points-card-main{min-width:0}.my-points-card h2{margin:0;color:#fff;font-size:14px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-points-card p{margin:4px 0 0;color:#969aad;font-size:11px}.my-points-card time{display:block;margin-top:5px;color:#777c92;font-size:11px}.my-points-card-value{flex:0 0 auto;text-align:right;font-variant-numeric:tabular-nums}.my-points-card-value strong{display:block;font-size:17px;line-height:1.25}.my-points-card-value.is-plus strong{color:#7df0a6}.my-points-card-value.is-minus strong{color:#ff9b94}.my-points-card-value small{display:block;margin-top:4px;color:#8e92a6;font-size:10px}.my-points-empty{text-align:center;padding:34px 18px;margin-top:14px}.my-points-empty-icon{font-size:42px;line-height:1;color:#fff066;margin-bottom:8px}.my-points-empty h2{margin:0 0 8px;font-size:17px}.my-points-empty p{line-height:1.65;margin:0}.my-points-pages{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 0 4px;color:#9296aa}.my-points-pages a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;background:#24263a;color:#fff;font-weight:800}.my-points-pages span{font-size:12px}@media(max-width:360px){.my-points-card{padding:12px 10px;gap:7px}.my-points-card h2{font-size:13px}.my-points-card-value strong{font-size:15px}}

/* 2026-07-01 券资产与核销：券包、代金券抵扣与套餐券入座界面。 */
.coupon-payment-panel h2{margin-bottom:8px}.coupon-payment-panel p{line-height:1.55}.coupon-cash-options{display:grid;gap:8px;margin-top:10px}.coupon-cash-option{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid rgba(255,240,102,.22);background:rgba(255,240,102,.055);border-radius:12px;cursor:pointer}.coupon-cash-option input{width:18px;height:18px;accent-color:#fff066}.coupon-cash-option span{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex:1}.coupon-cash-option strong{color:#fff066;font-size:18px}.coupon-cash-option small{color:#b6bacb;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.texas-package-coupon-form{margin-top:10px}.texas-entry-coupon-note{margin:8px 0 0;line-height:1.55}.coupon-wallet-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 14px}.coupon-wallet-card{min-width:0;padding:12px 9px;border-radius:14px;background:linear-gradient(135deg,#242640,#15162a);border:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;gap:3px}.coupon-wallet-card span{font-size:12px;color:#c4c7d6}.coupon-wallet-card strong{color:#fff066;font-size:18px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coupon-wallet-card small{font-size:11px;color:#9297aa}.coupon-wallet-panel h2{margin:0 0 10px;font-size:17px}.coupon-wallet-group+.coupon-wallet-group{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07)}.coupon-wallet-group h3{margin:0 0 7px;font-size:14px;color:#fff066}.coupon-wallet-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.coupon-wallet-row:last-child{border-bottom:0}.coupon-wallet-row span{min-width:0;color:#cfd2df;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coupon-wallet-row strong{flex:0 0 auto;color:#fff;font-size:13px}@media(max-width:360px){.coupon-wallet-summary{gap:6px}.coupon-wallet-card{padding:10px 7px}.coupon-wallet-card strong{font-size:15px}.coupon-wallet-card span,.coupon-wallet-card small{font-size:10px}}

/* 2026-07-02 德州卡座实时状态与获奖通知。 */
.texas-table-card-status-row{display:flex;align-items:center;margin-top:7px}.texas-table-game-status{display:inline-flex;align-items:center;min-height:22px;max-width:100%;padding:3px 8px;border-radius:999px;border:1px solid transparent;font-size:11px;font-weight:900;line-height:1.35;white-space:normal}.texas-table-game-status-waiting{background:rgba(255,240,102,.12);border-color:rgba(255,240,102,.28);color:#fff1a6}.texas-table-game-status-playing{background:rgba(85,207,125,.12);border-color:rgba(85,207,125,.3);color:#a8f0bf}.texas-table-game-status-final{background:rgba(255,145,91,.13);border-color:rgba(255,145,91,.34);color:#ffc39e}.texas-table-game-status-settling{background:rgba(129,170,255,.14);border-color:rgba(129,170,255,.32);color:#bed2ff}.texas-table-game-status-ended{background:rgba(174,178,196,.14);border-color:rgba(174,178,196,.26);color:#d2d5e2}.texas-table-game-status-cancelled,.texas-table-game-status-unknown{background:rgba(255,105,97,.12);border-color:rgba(255,105,97,.28);color:#ffbbb5}.texas-player-award-notice-card{text-align:center;padding:22px 18px 18px;background:linear-gradient(150deg,#312548,#18182c 58%,#17182c)}.texas-player-award-trophy{width:58px;height:58px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;border-radius:50%;font-size:30px;background:radial-gradient(circle at 35% 28%,#fff6ad,#f0b82c 57%,#aa6717);box-shadow:0 8px 24px rgba(240,184,44,.25)}.texas-player-award-notice-card h2{margin-bottom:7px;color:#fff066;font-size:21px}.texas-player-award-notice-card>p{margin:0;color:#d1d3df;font-size:13px}.texas-player-award-list{display:grid;gap:9px;margin-top:15px;text-align:left}.texas-player-award-item{padding:11px;border-radius:13px;background:rgba(10,11,25,.65);border:1px solid rgba(255,240,102,.16)}.texas-player-award-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.texas-player-award-item-head strong{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border-radius:7px;background:rgba(255,240,102,.16);color:#fff066;font-size:12px;white-space:nowrap}.texas-player-award-item-head span{min-width:0;color:#fff;font-size:14px;font-weight:800;line-height:1.45;text-align:right}.texas-player-award-components{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.texas-player-award-components span{display:inline-flex;align-items:center;min-height:23px;padding:2px 7px;border-radius:7px;background:#292b42;color:#eceef8;font-size:11px}.texas-player-award-points{margin:9px 0 0!important;padding-top:9px;border-top:1px solid rgba(255,255,255,.08);color:#a9edbc!important;font-size:12px!important;font-weight:800}.texas-player-award-actions{justify-content:center!important;flex-wrap:wrap}.texas-player-award-actions .btn{min-width:128px}@media(max-width:360px){.texas-table-game-status{font-size:10px}.texas-player-award-actions .btn{width:100%}}

/* 2026-07-02 v100：首页本地 Canvas 流体星尘背景。仅 .home-screen-ambient 首页生效。 */
.home-screen.home-screen-ambient{position:relative;isolation:isolate;min-height:calc(100vh - 112px);background:#070719}
.home-ambient-background{position:fixed;top:52px;bottom:60px;left:50%;width:min(100%,420px);transform:translateX(-50%);overflow:hidden;pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 20%,#151434 0%,#070719 68%)}
.home-ambient-fluid,.home-ambient-stars{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.home-ambient-fluid{filter:blur(68px);transform:scale(1.24);opacity:.8;will-change:transform}
.home-ambient-stars{opacity:.7}
.home-screen.home-screen-ambient>:not(.home-ambient-background){position:relative;z-index:1}
.home-screen.home-screen-ambient .home-hero-card{background:linear-gradient(145deg,rgba(46,27,78,.76),rgba(14,18,48,.82));border-color:rgba(236,228,255,.14);box-shadow:0 18px 46px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.home-screen.home-screen-ambient .home-slogan{text-shadow:0 3px 15px rgba(0,0,0,.82),0 0 16px rgba(180,134,255,.24)}
.home-screen.home-screen-ambient .home-entry-btn{background:linear-gradient(150deg,rgba(69,43,110,.82),rgba(22,23,57,.86));border-color:rgba(246,240,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 8px 20px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.home-screen.home-screen-ambient .home-entry-btn.order .title{color:#d5b3ff}.home-screen.home-screen-ambient .home-entry-btn.order .sub{color:#e1c9ff}
.home-screen.home-screen-ambient .home-marquee{background:rgba(16,18,47,.73);border-color:rgba(235,228,255,.12);box-shadow:0 10px 24px rgba(0,0,0,.22);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);margin-top:15px}
.home-screen.home-screen-ambient .home-rank-entry{background:rgba(18,19,47,.74);border-color:rgba(235,228,255,.12);box-shadow:0 14px 34px rgba(0,0,0,.3)}
.home-screen.home-screen-ambient .home-square-section{background:rgba(13,15,41,.78);border-color:rgba(235,228,255,.12);box-shadow:0 14px 34px rgba(0,0,0,.27);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
.home-screen.home-screen-ambient .square-preview-card{background:rgba(25,27,60,.84);border-color:rgba(255,255,255,.09)}
.home-screen.home-screen-ambient .home-square-empty{background:rgba(25,27,60,.76)}
@media (prefers-reduced-motion:reduce){.home-ambient-fluid{filter:blur(62px)}}

/* 2026-07-02 v101：首页背景从屏幕顶部开始，不再因首页没有 topbar 留出空白带。 */
.home-screen.home-screen-ambient .home-ambient-background{top:0}

/* 2026-07-02 v101：桌游卡座进行中（游戏中 / 决战中）卡座流光边框。
   纯 CSS 实现，不增加网络请求；伪元素不接收点击，卡片原有跳转保持有效。 */
.texas-table-card{position:relative;isolation:isolate;overflow:hidden}
.texas-table-card.is-game-active{border-color:transparent;background:transparent;box-shadow:0 0 0 1px rgba(0,240,255,.17),0 0 14px rgba(0,240,255,.25),0 0 30px rgba(255,0,127,.18)}
.texas-table-card.is-game-active::before{content:"";position:absolute;left:50%;top:50%;width:235%;aspect-ratio:1/1;transform:translate(-50%,-50%) rotate(0deg);background:conic-gradient(from 0deg,#ff007f 0deg,#00f0ff 92deg,#8c6bff 176deg,#ff2f96 262deg,#00f0ff 360deg);animation:texas-live-border-spin 2.4s linear infinite;z-index:0;pointer-events:none;will-change:transform}
.texas-table-card.is-game-active::after{content:"";position:absolute;inset:1px;border-radius:15px;background:linear-gradient(135deg,#1b1632 0%,#15162a 52%,#101221 100%);z-index:0;pointer-events:none}
.texas-table-card.is-game-active>img,.texas-table-card.is-game-active>.texas-table-card-info,.texas-table-card.is-game-active>.texas-table-card-arrow{position:relative;z-index:1}
.texas-table-card.is-game-active .texas-table-game-status{box-shadow:0 0 12px rgba(0,240,255,.13)}
.texas-table-card.is-game-active[data-texas-game-variant="final"]{box-shadow:0 0 0 1px rgba(255,136,76,.2),0 0 14px rgba(255,0,127,.24),0 0 30px rgba(255,136,76,.18)}
@keyframes texas-live-border-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.texas-table-card.is-game-active::before{animation:none;transform:translate(-50%,-50%) rotate(42deg)}}


/* 2026-07-02 v106：我的信息头像使用本地 1:1 裁剪后再提交。 */
.profile-avatar-picker{position:relative;width:72px;height:72px;flex:0 0 72px}
.profile-avatar-picker>img{display:block}
.profile-avatar-add{position:absolute;right:-4px;bottom:-4px;width:28px;height:28px;padding:0;border:2px solid #111226;border-radius:50%;background:#fff066;color:#161616;font-size:24px;line-height:22px;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 15px rgba(0,0,0,.4)}
.profile-avatar-add:active{transform:scale(.93)}
.profile-avatar-add:focus-visible{outline:2px solid #fff;outline-offset:2px}
.avatar-crop-modal{position:fixed;z-index:950;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.72)}
.avatar-crop-modal[hidden]{display:none!important}
.avatar-crop-dialog{width:min(100%,390px);max-height:calc(100vh - 32px);overflow:auto;border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:16px;background:#15162a;box-shadow:0 24px 80px rgba(0,0,0,.58)}
.avatar-crop-dialog h2{margin:0 0 8px;font-size:17px}
.avatar-crop-dialog .muted{margin:0 0 13px;line-height:1.6}
.avatar-crop-canvas-wrap{width:100%;aspect-ratio:1/1;overflow:hidden;border:1px dashed rgba(255,240,102,.75);border-radius:14px;background:#090a12}
.avatar-crop-canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:none}
.avatar-crop-dialog label{display:block;margin:12px 0 6px;color:#c5c7d5}
.avatar-crop-range{width:100%;accent-color:#fff066}
.avatar-crop-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}
.avatar-crop-actions .btn{min-width:92px}

/* v112 square review */
.square-review-badge{position:absolute;left:8px;top:8px;z-index:8;display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:900;white-space:nowrap;border:1px solid rgba(255,255,255,.18);box-shadow:0 6px 16px rgba(0,0,0,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.square-review-badge.pending{color:#fff066;background:rgba(45,37,10,.78);border-color:rgba(255,240,102,.34)}.square-review-badge.approved{color:#7df0a6;background:rgba(11,48,26,.78);border-color:rgba(78,203,113,.34)}.square-review-badge.rejected{color:#ffb0ab;background:rgba(66,20,22,.82);border-color:rgba(255,105,97,.34)}

/* v114：德州无限复活追加物作为其他奖品单独展示与核销。 */
.my-other-prize-card{border-color:rgba(255,240,102,.18);background:linear-gradient(150deg,rgba(39,34,65,.96),rgba(18,19,38,.96))}.other-prize-redeem-code{margin-top:12px;padding:12px;border-radius:13px;background:rgba(255,240,102,.08);border:1px dashed rgba(255,240,102,.28);text-align:center}.other-prize-redeem-code small{display:block;color:#c9cce0;margin-bottom:5px}.other-prize-redeem-code strong{display:block;font-size:20px;letter-spacing:1.2px;color:#fff066;word-break:break-all}.other-prize-redeem-code p{margin:7px 0 0!important;font-size:11px;line-height:1.5}.my-other-prizes-empty{padding:12px;text-align:center}

/* v119：其他奖品核销码默认脱敏，双击后显示。 */
.other-prize-redeem-code strong.is-masked{letter-spacing:4px;cursor:pointer;user-select:none}
.other-prize-redeem-code strong.is-revealed{letter-spacing:1.2px;cursor:default}


/* v120：首页关闭流体动态渐变背景，改为纯黑背景。 */
.home-screen.home-screen-black{background:#000;min-height:calc(100vh - 112px)}
@media (min-width:768px){.page:has(.home-screen.home-screen-black){background:#000}}

.home-first-screen{width:100%;margin:0 0 14px;overflow:hidden;border-radius:0;background:#000}
.home-first-screen-img{display:block;width:100%;height:auto;background:#000}
.home-first-copy{padding:14px 18px 18px;text-align:center;color:#fff;font-size:18px;font-weight:500;line-height:1.45;letter-spacing:.04em;margin-top:-100px}

/* v126：首页快捷入口白色方框。 */
.home-quick-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 20px 18px;background:#000}
.home-quick-entry{display:flex;min-height:138px;aspect-ratio:1/0.86;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;background:#fff;color:#000;border:3px solid #fff;border-radius:2px;box-shadow:none}
.home-quick-entry strong{display:block;color:#000;font-size:19px;font-weight:900;line-height:1.25;letter-spacing:.04em}
.home-quick-entry span{display:block;margin-top:7px;color:#000;font-size:11px;font-weight:300;line-height:1.1;letter-spacing:.16em;font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif}
.home-quick-entry:active{transform:scale(.985)}
@media (max-width:360px){.home-quick-entry-grid{padding-left:16px;padding-right:16px}.home-quick-entry{min-height:124px}.home-quick-entry strong{font-size:17px}}


/* 2026-07-15 v129：Black Shark 赛博风首页重构。只影响首页 .home-screen-cyber。 */
.home-screen.home-screen-cyber{
  position:relative;
  display:block;
  min-height:calc(100vh - 60px);
  padding:0 20px 22px;
  background:#020203;
  overflow:hidden;
  isolation:isolate;
}
.home-screen.home-screen-cyber::before,
.home-screen.home-screen-cyber::after{
  content:"";
  position:fixed;
  width:260px;
  height:260px;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
  filter:blur(92px);
  opacity:.36;
}
.home-screen.home-screen-cyber::before{left:50%;top:10px;transform:translateX(-72%);background:rgba(0,255,156,.14)}
.home-screen.home-screen-cyber::after{right:50%;bottom:100px;transform:translateX(78%);background:rgba(94,92,230,.16)}
.home-cyber-hero{
  position:relative;
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:0 0 28px 28px;
  margin:0 -20px 0;
  background:radial-gradient(circle at 50% 10%,rgba(0,255,156,.15) 0%,rgba(0,255,156,.04) 26%,rgba(2,2,3,0) 58%);
}
.home-cyber-grid-bg{
  position:absolute;
  left:-18%;
  right:-18%;
  bottom:-38px;
  height:150px;
  transform:perspective(280px) rotateX(58deg);
  transform-origin:center bottom;
  background-image:linear-gradient(rgba(0,255,156,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,156,.22) 1px,transparent 1px);
  background-size:32px 32px;
  opacity:.45;
  mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.84) 38%,transparent 100%);
  -webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.84) 38%,transparent 100%);
}
.home-cyber-logo{
  position:relative;
  z-index:1;
  width:min(100%,360px);
  text-align:center;
  transform:skewX(-7deg);
  user-select:none;
}
.home-cyber-logo::before{
  content:"";
  position:absolute;
  left:3%;
  right:3%;
  top:50%;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(0,255,156,.85),transparent);
  box-shadow:0 0 16px rgba(0,255,156,.55);
  transform:translateY(-50%);
  opacity:.8;
}
.home-cyber-logo-line{
  position:relative;
  font-size:clamp(64px,18vw,92px);
  line-height:.84;
  font-weight:1000;
  letter-spacing:-.08em;
  text-transform:uppercase;
  color:#c8ffe5;
  -webkit-text-stroke:1px rgba(187,255,225,.86);
  text-shadow:
    0 0 3px #fff,
    0 0 10px rgba(0,255,156,.95),
    0 0 26px rgba(0,255,156,.75),
    0 8px 0 rgba(0,102,70,.42),
    8px 9px 0 rgba(0,56,42,.35),
    -4px -2px 0 rgba(255,255,255,.12);
}
.home-cyber-logo-line:nth-child(2){margin-top:9px}
.home-cyber-logo-line::after{
  content:attr(class);
  display:none;
}
.home-cyber-brand{position:relative;z-index:1;margin-top:30px;text-align:center;transform:none}
.home-cyber-brand h1{margin:0;color:#fff;font-size:22px;line-height:1.1;font-weight:900;letter-spacing:.30em;text-indent:.30em;text-shadow:0 0 16px rgba(255,255,255,.18)}
.home-cyber-brand p{margin:7px 0 0;color:rgba(0,255,156,.78);font-size:10px;font-weight:700;letter-spacing:.46em;text-indent:.46em;font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif}
.home-cyber-slogan{
  width:max-content;
  max-width:100%;
  margin:-6px auto 18px;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:32px;
  padding:6px 18px;
  border:1px solid rgba(0,255,156,.22);
  background:rgba(0,255,156,.07);
  border-radius:999px;
  color:#37ffad;
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
  box-shadow:0 0 22px rgba(0,255,156,.08),inset 0 1px 0 rgba(255,255,255,.03);
}
.home-cyber-dot{position:relative;width:8px;height:8px;border-radius:50%;background:#00ff9c;box-shadow:0 0 12px rgba(0,255,156,.8);flex:0 0 auto}
.home-cyber-dot::after{content:"";position:absolute;inset:-5px;border-radius:inherit;background:rgba(0,255,156,.35);animation:homeCyberPulse 1.45s ease-out infinite}
@keyframes homeCyberPulse{0%{transform:scale(.35);opacity:.9}100%{transform:scale(1.75);opacity:0}}
.home-cyber-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0 0 24px}
.home-cyber-entry{
  position:relative;
  min-height:150px;
  border-radius:22px;
  overflow:hidden;
  padding:18px 16px 17px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  text-decoration:none;
  color:#fff;
  background:linear-gradient(155deg,rgba(39,42,48,.62),rgba(11,13,16,.82));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 18px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.home-cyber-entry::before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(0,255,156,0),rgba(0,255,156,.08),rgba(0,255,156,.13));opacity:.65;pointer-events:none}
.home-cyber-entry::after{content:"";position:absolute;right:-36px;top:-36px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,rgba(0,255,156,.17),rgba(0,255,156,0) 70%);pointer-events:none}
.home-cyber-entry:active{transform:scale(.98);border-color:rgba(0,255,156,.34);box-shadow:0 14px 28px rgba(0,0,0,.34),0 0 18px rgba(0,255,156,.08)}
.home-cyber-entry-top{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.home-cyber-entry-top span{font-family:"Courier New",monospace;color:#00ff9c;font-size:14px;font-weight:900;letter-spacing:.16em;text-shadow:0 0 16px rgba(0,255,156,.65)}
.home-cyber-entry-top i{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;background:rgba(0,255,156,.1);border:1px solid rgba(0,255,156,.2);color:#56ffc1;font-style:normal}
.home-cyber-entry-top svg{width:21px;height:21px;fill:currentColor}
.home-cyber-entry-text{position:relative;z-index:1}
.home-cyber-entry-text strong{display:block;color:#fff;font-size:20px;line-height:1.2;font-weight:900;letter-spacing:.05em}
.home-cyber-entry-text em{display:block;margin-top:6px;color:rgba(185,190,200,.8);font-style:normal;font-size:9px;font-weight:600;letter-spacing:.16em;font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif}
.home-cyber-square{
  margin:4px 0 0;
  padding:18px;
  border-radius:26px;
  background:linear-gradient(180deg,rgba(38,40,49,.52),rgba(8,9,13,.74));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 18px 40px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.home-cyber-square-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.home-cyber-square-head h2{margin:0;color:#fff;font-size:22px;line-height:1.1;font-weight:900;letter-spacing:.04em}
.home-cyber-square-head p{margin:4px 0 0;color:rgba(185,190,200,.78);font-size:12px;font-weight:400;letter-spacing:.02em}
.home-cyber-post-btn{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:0 12px;border-radius:999px;border:1px solid rgba(0,255,156,.22);background:rgba(0,255,156,.08);color:#43ffb5;font-size:12px;font-weight:800;white-space:nowrap}
.home-cyber-post-btn svg{width:14px;height:14px;fill:currentColor}
.home-cyber-square .square-card,.home-cyber-square .square-preview-card{background:rgba(10,12,16,.78);border-color:rgba(255,255,255,.07);border-radius:18px;overflow:hidden;box-shadow:0 12px 24px rgba(0,0,0,.22)}
.home-cyber-square .square-card-user{padding:10px 10px 0}
.home-cyber-square .square-card-text{color:#d7dbe5}
.home-cyber-square-empty{min-height:128px;border-radius:20px;background:rgba(7,8,12,.76);border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center;justify-content:center;color:rgba(185,190,200,.7);gap:10px}
.home-cyber-square-empty p{margin:0;font-size:13px}
.home-cyber-square-empty a{color:#43ffb5;font-size:12px;font-weight:900;letter-spacing:.08em}
@media(max-width:360px){
  .home-screen.home-screen-cyber{padding-left:16px;padding-right:16px}
  .home-cyber-logo-line{font-size:clamp(55px,17vw,76px)}
  .home-cyber-hero{min-height:266px;margin-left:-16px;margin-right:-16px}
  .home-cyber-brand h1{font-size:18px;letter-spacing:.25em;text-indent:.25em}
  .home-cyber-entry{min-height:132px;padding:15px 14px}
  .home-cyber-entry-text strong{font-size:17px}
  .home-cyber-square{padding:14px;border-radius:22px}
}
@media(prefers-reduced-motion:reduce){.home-cyber-dot::after{animation:none}.home-cyber-entry{transition:none}}


/* 2026-07-15 v133：前端 Black Shark 绿色主题统一。
   只覆盖前台视觉高亮，不改变后台、订单、支付、德州、券和核销逻辑。 */
:root{
  --bs-green:#00ff9c;
  --bs-green-2:#18f5a6;
  --bs-green-soft:rgba(0,255,156,.13);
  --bs-green-soft-2:rgba(0,255,156,.08);
  --bs-green-border:rgba(0,255,156,.28);
  --bs-green-border-soft:rgba(0,255,156,.16);
  --bs-black:#020203;
}
.back-btn,
.login-links,
.text-link,
.price,
.confirm-bottom strong,
.order-head strong,
.cart-item .cart-line-price,
.cart-total-row strong,
.delivery-landing-card strong,
.my-points-summary strong,
.my-points-empty-icon,
.coupon-wallet-card strong,
.coupon-wallet-group h3,
.coupon-cash-option strong,
.other-prize-redeem-code strong{
  color:var(--bs-green)!important;
}
.bottom-nav{background:#07080c;border-top-color:rgba(0,255,156,.16)}
.bottom-nav a.active{color:var(--bs-green);text-shadow:0 0 12px rgba(0,255,156,.45)}
.bottom-nav a.active .ico{filter:drop-shadow(0 0 8px rgba(0,255,156,.38))}
.cat-list a.active{background:var(--bs-green);color:#020203;border-left-color:var(--bs-green);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.btn,
.shop-footer .go,
.confirm-bottom .btn:not(.secondary):not(.danger),
.cart-add-btn,
.profile-avatar-add{
  background:var(--bs-green)!important;
  color:#020203!important;
  box-shadow:0 0 18px rgba(0,255,156,.14);
}
.btn.secondary{background:#1a1d24!important;color:#eefcf7!important;border:1px solid var(--bs-green-border-soft)}
.btn.danger{background:#ff6961!important;color:#fff!important;box-shadow:none}
.btn:focus-visible,
.cart-add-btn:focus-visible,
.profile-avatar-add:focus-visible,
a:focus-visible,
button:focus-visible{outline:2px solid rgba(0,255,156,.88);outline-offset:2px}
.input:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(0,255,156,.72)!important;
  box-shadow:0 0 0 3px rgba(0,255,156,.12)!important;
  outline:none;
}
.pay-option input,
.info-choice input,
.coupon-cash-option input,
.avatar-crop-range{accent-color:var(--bs-green)!important}
.badge,
.coupon-cash-option,
.other-prize-redeem-code{
  background:var(--bs-green-soft-2)!important;
  border-color:var(--bs-green-border)!important;
  color:var(--bs-green)!important;
}
.goods-card,
.panel,
.pay-option,
.info-choice,
.order-card,
.coupon-wallet-card,
.my-points-summary,
.my-points-card,
.my-other-prize-card,
.texas-table-card,
.home-square-section,
.square-preview-card{
  border-color:var(--bs-green-border-soft)!important;
}
.goods-card,
.panel,
.coupon-wallet-card,
.my-points-card,
.my-other-prize-card{
  box-shadow:0 12px 28px rgba(0,0,0,.18),0 0 18px rgba(0,255,156,.035);
}
.carousel-dots span.active{background:var(--bs-green);box-shadow:0 0 12px rgba(0,255,156,.42)}
.cart-bag{background:#151921;border:1px solid var(--bs-green-border-soft);color:var(--bs-green)}
.shop-footer{background:#0d1016;border-color:var(--bs-green-border-soft)}
.shop-footer .go.disabled{background:#30333b!important;color:#9aa2a1!important;box-shadow:none}
.home-entry-btn.order .title,
.home-entry-btn.reserve .title{color:var(--bs-green)!important}
.home-entry-btn.order .sub,
.home-entry-btn.reserve .sub{color:#a7ffd7!important}
.texas-table-game-status-waiting{background:var(--bs-green-soft);border-color:var(--bs-green-border);color:#afffe0}
.texas-table-game-status-playing{background:rgba(0,255,156,.14);border-color:rgba(0,255,156,.32);color:#afffe0}
.texas-player-award-notice-card h2,
.texas-player-award-item-head strong{color:var(--bs-green)!important}
.texas-player-award-item,
.texas-player-award-item-head strong{border-color:var(--bs-green-border-soft)!important;background:var(--bs-green-soft-2)!important}
.square-review-badge.pending{color:var(--bs-green);background:rgba(0,42,28,.78);border-color:var(--bs-green-border)}
.my-points-card-value.is-plus strong{color:var(--bs-green)!important}
.old-price{color:#7d8587}
.discount-tag,
.card-qty,
.cart-bag span{background:#ff6961;color:#fff}
.alert-success{background:rgba(0,255,156,.12);color:#98ffd3}
@media (min-width:768px){body{background:#000}.page{background:#000000}}

/* 2026-07-15 v134：前端黑灰玻璃卡片背景统一。
   只替换主要内容卡片/面板的旧 #111226 底色；顶部栏、底部导航、输入框和遮罩保持原层级。 */
:root{
  --front-panel-bg:linear-gradient(180deg,rgba(38,40,49,.52),rgba(8,9,13,.74));
}
.goods-card,
.panel,
.product-carousel,
.room-cell:not(.empty),
.home-square-section,
.square-viewer-box{
  background:var(--front-panel-bg)!important;
  border-color:rgba(0,255,156,.16)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22),0 0 18px rgba(0,255,156,.035);
}
.product-carousel,
.square-viewer-box{
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

/* 2026-07-15 v135：顶部栏与商品分类侧栏同步黑灰玻璃主题。 */
.topbar{
  background:var(--front-panel-bg)!important;
  border-bottom-color:rgba(0,255,156,.16)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),0 0 18px rgba(0,255,156,.03);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.cat-list{
  background:var(--front-panel-bg)!important;
  border-right-color:rgba(0,255,156,.16)!important;
  box-shadow:inset -1px 0 0 rgba(0,255,156,.045),0 10px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.cat-list a{color:#b7c4c0}

/* 2026-07-15 v136：购物车抽屉层级与黑灰玻璃主题同步。 */
.cart-drawer{
  background:var(--front-panel-bg)!important;
  border-top-color:rgba(0,255,156,.18)!important;
  box-shadow:0 -18px 42px rgba(0,0,0,.55),0 0 24px rgba(0,255,156,.055)!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.cart-drawer.open{z-index:999}
.cart-drawer-head{border-bottom-color:rgba(0,255,156,.12)!important}
.cart-drawer-foot{
  background:var(--front-panel-bg)!important;
  border-top-color:rgba(0,255,156,.14)!important;
}

/* 2026-07-15 v137：排行榜页面同步 Black Shark 黑灰玻璃主题。 */
.rank-page{
  background:#020203!important;
  background-image:
    radial-gradient(circle at 50% 0%,rgba(0,255,156,.12),transparent 36%),
    linear-gradient(135deg,rgba(0,255,156,.035) 1px,transparent 1px),
    linear-gradient(45deg,rgba(255,255,255,.025) 1px,transparent 1px)!important;
  background-size:auto,36px 36px,36px 36px!important;
}
.rank-tabs,
.rank-tabs a{
  color:#aebbb8!important;
}
.rank-tabs a.active,
.rank-tabs span.active{
  color:#fff!important;
  text-shadow:0 0 12px rgba(0,255,156,.26);
}
.rank-tabs a.active:after,
.rank-tabs span.active:after{
  background:var(--bs-green)!important;
  box-shadow:0 0 12px rgba(0,255,156,.48);
}
.rank-season{
  background:rgba(38,40,49,.32)!important;
  border:1px solid rgba(0,255,156,.14);
}
.rank-season a,
.rank-season span{
  color:#aebbb8!important;
}
.rank-season a.active,
.rank-season span.active{
  background:rgba(0,255,156,.12)!important;
  color:var(--bs-green)!important;
}
.podium-card,
.rank-list{
  background:var(--front-panel-bg)!important;
  border:1px solid rgba(0,255,156,.16)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.24),0 0 20px rgba(0,255,156,.04)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.podium-card{
  position:relative;
}
.podium-card::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,rgba(0,255,156,0),rgba(0,255,156,.75),rgba(0,255,156,0));
  opacity:.72;
}
.podium-1{
  background:linear-gradient(180deg,rgba(0,255,156,.16),rgba(8,9,13,.76))!important;
  border-color:rgba(0,255,156,.28)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.28),0 0 28px rgba(0,255,156,.08)!important;
}
.podium-card small{
  color:#9ef8c9!important;
}
.podium-avatar .user-avatar,
.rank-row img{
  background:#11161a!important;
  border-color:rgba(0,255,156,.24)!important;
}
.rank-row{
  border-bottom-color:rgba(0,255,156,.09)!important;
}
.rank-row:nth-child(odd){
  background:rgba(255,255,255,.018);
}
.rank-row .rank-no{
  color:#94aaa3!important;
}
.rank-row em{
  color:var(--bs-green)!important;
  text-shadow:0 0 10px rgba(0,255,156,.18);
}
.rank-row strong{
  color:#f4fff9;
}

/* 2026-07-15 v139：我的奖品 / 积分记录卡片同步 Black Shark 黑灰玻璃主题。 */
.my-prizes-intro,
.my-prize-card,
.my-points-summary,
.my-points-card,
.my-points-empty,
.my-prizes-empty,
.coupon-wallet-card{
  background:var(--front-panel-bg)!important;
  border-color:rgba(0,255,156,.16)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22),0 0 18px rgba(0,255,156,.04)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.my-prizes-intro{
  position:relative;
  overflow:hidden;
}
.my-prizes-intro::before,
.my-prize-card::before,
.my-points-summary::before,
.my-points-card::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:2px;
  background:linear-gradient(90deg,rgba(0,255,156,0),rgba(0,255,156,.68),rgba(0,255,156,0));
  opacity:.62;
  pointer-events:none;
}
.my-prize-card,
.my-points-card,
.my-points-summary{
  position:relative;
  overflow:hidden;
}
.my-prize-card-head,
.my-prize-card h2,
.my-prize-components,
.my-prize-points,
.my-prize-meta,
.my-points-card-main,
.my-points-card-value,
.my-points-summary span,
.my-points-summary strong,
.my-points-summary small{
  position:relative;
  z-index:1;
}
.my-prize-components span{
  background:rgba(0,255,156,.07)!important;
  border:1px solid rgba(0,255,156,.14)!important;
  color:#d9fff0!important;
}
.my-prize-rank{
  background:rgba(0,255,156,.12)!important;
  border:1px solid rgba(0,255,156,.2)!important;
  color:var(--bs-green)!important;
}
.my-prize-rank-runner_up{color:#eef0f8!important;background:rgba(210,216,230,.12)!important;border-color:rgba(210,216,230,.18)!important}
.my-prize-rank-third{color:#ffc994!important;background:rgba(214,146,88,.12)!important;border-color:rgba(214,146,88,.18)!important}
.my-prize-rank-participation{color:#9dccff!important;background:rgba(107,183,255,.12)!important;border-color:rgba(107,183,255,.18)!important}
.my-prize-points{
  border-top-color:rgba(0,255,156,.11)!important;
}
.my-prize-points strong,
.my-prizes-empty-icon{
  color:var(--bs-green)!important;
}
.my-points-pages a{
  background:rgba(0,255,156,.08)!important;
  border:1px solid rgba(0,255,156,.18)!important;
  color:var(--bs-green)!important;
}


/* 2026-07-16 v142：德州扫码入座待支付订单续付/取消入口。 */
.texas-entry-status.is-pending{background:rgba(0,255,156,.075);border-color:rgba(0,255,156,.22);color:#b9ffe2}
.texas-entry-pending-meta{margin-top:7px;color:#8ff0bf;font-size:12px;font-weight:700}
.texas-pending-cancel-form{margin-top:9px}

/* 2026-07-16 v143：荷官颁奖支持从当前在桌与本局历史成功入座玩家中选择。 */
.texas-award-candidate-group-title{margin:10px 0 4px;padding:6px 8px;border-radius:8px;background:rgba(0,255,156,.07);border-left:3px solid var(--theme-green,#00ff9c);color:#9ef8c9;font-size:12px;font-weight:900;letter-spacing:.04em}
.texas-award-check{border-bottom:1px solid rgba(255,255,255,.055)}
.texas-award-check:last-child{border-bottom:0}
.texas-award-check>span{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.texas-award-check>span b{font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.texas-award-check>span small{font-size:11px;color:#8f94a5;line-height:1.35;white-space:normal}
.texas-award-check.is-history{opacity:.9}
.texas-award-check.is-history>span small{color:#c4a985}
.texas-award-select select optgroup{color:#9ef8c9;background:#111318;font-weight:800}
.texas-award-select select option{color:#fff;background:#111318;font-weight:400}

/* v149：首次入座初始物品与复活追加物提示。 */
.texas-entry-item-tip,.texas-payment-item-grant{display:flex;align-items:center;justify-content:space-between;gap:12px}.texas-entry-item-tip{margin:12px 0;padding:12px 14px;border:1px solid rgba(40,225,157,.28);border-radius:12px;background:rgba(40,225,157,.07)}.texas-entry-item-tip strong,.texas-payment-item-grant strong{color:#25ed9f}.texas-payment-item-grant small{color:#aeb2c5}

/* 2026-07-27 v152：排行榜仅展示正积分用户，长昵称换行且前三名卡片保持固定布局。 */
.rank-podium{
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr)!important;
}
.rank-podium .podium-card{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow:visible;
}
.rank-podium .podium-1{grid-column:2}
.rank-podium .podium-2{grid-column:1}
.rank-podium .podium-3{grid-column:3}
.podium-card strong{
  display:-webkit-box!important;
  width:100%;
  min-width:0;
  min-height:34px;
  line-height:17px;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
  word-break:break-word;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.rank-row{
  grid-template-columns:38px 42px minmax(0,1fr) auto!important;
}
.rank-row strong{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
  word-break:break-word;
  line-height:1.35;
}
.rank-empty{
  min-height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:22px;
  border:1px solid rgba(0,255,156,.16);
  border-radius:16px;
  background:var(--front-panel-bg);
  color:#8fa39d;
  font-size:14px;
  letter-spacing:1px;
  box-shadow:0 14px 30px rgba(0,0,0,.24);
}


/* 2026-07-27 v153：购物卡片加购按钮移至右下角，个人中心退出按钮避开底部导航。 */
.goods-card .cart-add-btn{
  top:auto;
  right:8px;
  bottom:8px;
}
.goods-card .card-qty{
  top:auto;
  right:3px;
  bottom:31px;
}
.me-logout-panel{
  margin-bottom:24px;
}
