/* Shared by both storefront entries; explicit sizing beats lazy route styles. */
.service-page .service-content{padding:14px 12px 90px!important;color:var(--shop-text);font-size:14px;line-height:1.5}
.service-page .service-hero{background:linear-gradient(120deg,#34363b,#202125);border-radius:18px;padding:26px 16px;text-align:center;color:#fff;box-shadow:0 6px 16px #20212514}
.service-page .service-emblem{display:flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0 auto 12px;border-radius:50%;border:1px solid #ffffff30;background:#ffffff10;font-size:24px}
.service-page h1{margin:0 0 10px;font-size:20px;font-weight:700}.service-page .service-hero p{margin:5px 0;font-size:12px;color:#e3e4e7}
.service-page .service-card{background:#fff;border:1px solid var(--shop-border,#e9ebef);border-radius:16px;box-shadow:var(--shop-shadow);margin:12px 0}
.service-page .service-summary,.service-page .service-contact,.service-page .service-info-row{display:flex;align-items:center;gap:12px;padding:16px}
.service-page .service-symbol,.service-page .service-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#f2f3f5;color:#42454c;font-size:22px}
.service-page .service-avatar{height:46px;border-radius:12px}.service-page .service-copy{flex:1;min-width:0}.service-page .service-copy strong,.service-page .service-copy small{display:block;overflow-wrap:anywhere}.service-page .service-copy strong{font-size:14px;font-weight:650}.service-page .service-copy small{font-size:12px;color:var(--shop-muted);margin:3px 0}
.service-page .service-heading{font-size:16px;font-weight:700;margin:18px 3px 10px}.service-page .service-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.service-page .service-tags span{font-size:10px;background:#f1f2f4;color:#70747d;border-radius:4px;padding:2px 5px}
.service-page .service-contact-button{flex:0 0 auto;border:0;border-radius:18px;background:var(--shop-primary);color:var(--shop-button-text);padding:9px 13px;font-size:12px;font-weight:600;min-height:36px;cursor:pointer;box-shadow:0 4px 10px #20212514}
.service-page .service-info-row+.service-info-row{border-top:1px solid #edf0f3}.service-page .service-faq-heading{margin-top:28px}.service-page .service-faq{display:block;background:#fff;border:1px solid var(--shop-border);border-radius:16px;overflow:hidden;box-shadow:var(--shop-shadow)}
.service-page .service-faq .u-cell__body{padding:16px!important}.service-page .service-faq .u-cell__title-text{font-size:14px!important;line-height:1.5!important;color:var(--shop-text)!important}.service-page .service-copyright{text-align:center;font-size:10px;color:#858b97;margin:46px 0 8px}.service-page .service-contact-button:focus-visible{outline:2px solid #777;outline-offset:3px}
.wallet-form { padding: 20px 18px 40px !important; background: #f5f7fc !important; min-height: 100vh; box-sizing: border-box; }
.wallet-form > uni-view:not(.u-navbar) { margin: 0 0 18px !important; padding: 20px !important; background: white; border: 1px solid #e6eaf2; border-radius: 18px; box-shadow: 0 6px 20px #26344d08; }
.wallet-form .c-margin-bottom60,.wallet-form .c-margin-bottom90 { margin-bottom: 18px !important; font-size: 14px !important; line-height: 1.6 !important; }
.wallet-form .c-margin-top20 { margin-top: 8px !important; }
.wallet-form .re-input-box { width: 100% !important; min-height: 50px !important; height: 50px !important; box-sizing: border-box !important; border: 1px solid #dce3ef !important; border-radius: 12px !important; background: #f8faff !important; padding: 0 14px !important; font-size: 14px !important; }
.wallet-form .uni-input-input { font-size: 14px !important; }
.wallet-form .wallet-network { display: inline-block; margin: 0 8px 8px 0; padding: 10px 17px; border: 1px solid #dce3ef; border-radius: 12px; background: #f8faff; color: #60708a; font-size: 14px; cursor: pointer; }
.wallet-form .wallet-network.selected { background: #edf2ff; border-color: #627bf0; color: #425ed7; box-shadow: 0 0 0 2px #627bf018; }
:root uni-app .wallet-form > .btn { display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 44px !important; min-height: 44px !important; margin: 12px 0 0 !important; padding: 9px 14px !important; border: 0 !important; border-radius: var(--shop-radius,18px) !important; background: var(--shop-primary,#202125) !important; color: var(--shop-button-text,#fff) !important; font-size: 14px !important; line-height: 1.4 !important; font-weight: 600; box-shadow: 0 4px 10px rgba(20,24,32,.10) !important; }
.pages-my-withdrawal .head_xuanze { flex-wrap: wrap !important; gap: 8px; }
.pages-my-withdrawal .head_xuanze .wi-tab { flex: 1 1 auto; min-width: 90px; }
:root { --shop-canvas-width: 450px; }
html body uni-app uni-page-body,
body:is(.pages-login-login,.pages-login-regist) uni-app uni-page-body {
  width: 100% !important;
  max-width: var(--shop-canvas-width) !important;
  margin: 0 auto !important;
  box-sizing: border-box;
}
:root uni-app .fooder_box,
:root uni-app .u-navbar--fixed,
:root uni-app .fixed[data-v-690cb28b],
:root uni-app .recharge-main-box .recharge-main-bottom {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: var(--shop-canvas-width);
  margin-inline: auto;
  box-sizing: border-box;
}
:root uni-app .u-popup__content {
  max-width: min(100%, var(--shop-canvas-width));
  margin-inline: auto;
  box-sizing: border-box;
}
:root uni-app .l-lang-btn {
  right: max(10px, calc((100% - var(--shop-canvas-width)) / 2 + 10px)) !important;
}
/* Compact controls still have at least a 44px touch target and can wrap labels. */
:root uni-app .btn,
:root uni-app .recharge-bottom-button,
:root uni-app .recharge-main-box .botton,
:root uni-app .tijioa.btn-sub,
:root uni-app .u-button--primary,
:root uni-app .receipt-submit,
:root uni-app .buy-btn.center {
  box-sizing: border-box;
  height: auto;
  min-height: 44px;
  padding: 9px 14px;
  font-size: 14px;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
}
:root uni-app .box-common { padding: 12px; }
:root uni-app .index-nav1 { padding: 10px 6px; }
:root uni-app .index-nav1:not(.m-row-center) { gap: 4px; margin: 10px; }
:root uni-app .index-nav1 > .btn {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  padding: 8px 2px;
  font-size: 11px;
}
:root uni-app .index-video { width: 100%; height: clamp(150px, 45vw, 220px); }
:root uni-app .index-video .uni-video-video { width: 100% !important; height: 100% !important; }
:root uni-app .index-nav1.m-row-center { margin: 10px 0; }
:root uni-app .index-nav1.m-row-center > uni-view { min-height: 44px; font-size: 13px; }
:root uni-app .index-nav1.m-row-center uni-image.w2 { width: 28px !important; height: 28px !important; margin-top: 0 !important; }
/* An empty commission carousel should not reserve a 200px blank panel. */
:root uni-app .new-list:has(.goods-swiper):not(:has(uni-swiper-item)) { display: none; }
:root uni-app .u-cell__body { min-height: 48px; padding: 10px 12px; }
:root uni-app .grabbing-list { padding: 8px 6px; }
:root uni-app .grabbing-list > uni-view { padding: 7px 4px; }
:root uni-app .shop-profile-content { padding: 14px 12px 6px; }
:root uni-app .shop-page-title { font-size: 21px; }
:root uni-app .shop-member-strip { margin: 10px 0; }
:root uni-app .shop-stat-grid { gap: 8px; }
:root uni-app .shop-stat { box-sizing: border-box; min-height: 78px; padding: 12px; }
:root uni-app .shop-stat-label { margin-bottom: 6px; }
:root uni-app .shop-stat-value { font-size: 20px; }
:root uni-app .shop-section { margin-top: 14px; }
:root uni-app .shop-section-title { margin-bottom: 8px; }
:root uni-app .shop-actions { padding: 10px 6px; }
:root uni-app .shop-action { gap: 6px; min-height: 44px; }
:root uni-app .shop-action-icon { width: 36px; height: 36px; border-radius: 12px; }
:root uni-app .shop-account-row { min-height: 48px; padding: 8px 0; }
:root uni-app .shop-rows { padding: 0 10px; }
:root uni-app .fooder_box.shop-nav {
  left: 10px !important;
  right: 10px !important;
  width: calc(100% - 20px) !important;
  max-width: calc(var(--shop-canvas-width) - 20px);
  bottom: calc(6px + env(safe-area-inset-bottom, 0px));
  border-radius: 18px;
}
:root uni-app .shop-nav .shop-nav-list { padding: 4px; }
:root uni-app .shop-nav-button { box-sizing: border-box; min-height: 48px; padding: 4px 2px; border-radius: 13px; }
:root uni-app .shop-nav-center .shop-nav-icon-wrap { width: 38px; height: 38px; margin-top: -11px; border-radius: 14px; }
:root uni-app .shop-nav-spacer { height: calc(80px + env(safe-area-inset-bottom, 0px)); }
:root uni-app .recharge-main-box .recharge-main-bottom {
  min-height: 62px;
  padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
}
:root uni-app uni-page[data-page="pages/index/purchase"] .goods-item { padding: 12px; margin-top: 8px; }
:root uni-app uni-page[data-page="pages/index/purchase"] .goods-item > .btn {
  min-height: 44px;
  margin-top: 12px !important;
  padding: 9px 14px;
  white-space: normal;
}
:root uni-app uni-page[data-page="pages/index/purchase"] .wave-bottom > .text-center { padding: 12px; font-size: 17px; }
:root uni-app uni-page[data-page="pages/index/purchase"] .wave-bottom > .page-padding:not(.sticky) > .m-flex { min-height: 48px; padding: 10px 12px; }
:root uni-app uni-page[data-page="pages/index/purchase"] .wave-bottom > .sticky { margin-bottom: 10px; }
/* Auth keeps the same artwork and hierarchy, with less decorative whitespace. */
.tk-auth { min-height: 100vh; min-height: 100dvh; }
.tk-auth .auth-header { max-width: var(--shop-canvas-width); padding: 14px 16px; gap: 10px; }
.tk-auth .auth-brand { font-size: 20px; gap: 8px; }
.tk-auth .auth-mark { width: 34px; height: 38px; flex-basis: 34px; font-size: 19px; }
.tk-auth .auth-round { width: 44px; height: 44px; }
.tk-auth .auth-main { width: min(100% - 24px, 560px); margin-top: 8px; }
.tk-auth .auth-hero { min-height: 108px; padding: 16px; border-radius: 18px; }
.tk-auth .auth-has-poster { height: 108px; padding: 0; }
.tk-auth .auth-poster-image { object-fit: contain; }
.tk-auth .auth-hero-copy strong { font-size: 23px; letter-spacing: 2px; }
.tk-auth .auth-hero-copy p { margin-top: 6px; }
.tk-auth h1 { font-size: 24px; margin: 14px 0; }
.tk-auth .auth-intro { margin: -4px 0 14px; font-size: 14px; }
.tk-auth .auth-card { padding: 20px; border-radius: 20px; }
.tk-auth h2 { font-size: 21px; margin-bottom: 18px; }
.tk-auth .auth-field { margin-bottom: 12px; }
.tk-auth .auth-field label { margin-bottom: 6px; font-size: 13px; }
.tk-auth .auth-input-wrap { min-height: 46px; padding: 0 12px; gap: 8px; }
.tk-auth .auth-input-wrap input { padding: 11px 0; font-size: 16px; }
.tk-auth .auth-eye { min-height: 44px; min-width: 44px; }
.tk-auth .auth-forgot { min-height: 44px; margin: -6px 0 6px auto; }
.tk-auth .auth-action { min-height: 44px; padding: 10px 14px; font-size: 14px; }
.tk-auth .auth-secondary { margin-top: 10px; }
.tk-auth .auth-hint { margin: -6px 0 14px; }
.tk-auth .auth-footer { padding: 18px 12px calc(16px + env(safe-area-inset-bottom, 0px)); }
.tk-auth .auth-language-menu { top: 62px; inset-inline-end: 16px; }
.tk-auth .auth-language-option { min-height: 44px; padding: 10px 14px; }
@media (max-width: 350px) {
  .tk-auth .auth-header { padding-inline: 12px; }
  .tk-auth .auth-brand { font-size: 17px; }
  .tk-auth .auth-card { padding: 16px; }
  :root uni-app .shop-stat { padding: 10px; }
  :root uni-app .shop-stat-value { font-size: 18px; }
}

/* Template A: hide the profile header membership badge. */
:root uni-app .shop-profile .shop-member-level { display: none !important; }

/* The home footer must wrap long translated copyright/company text. */
:root uni-app uni-page[data-page="pages/index/index"] .index-foot {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  box-sizing: border-box;
}

/* Resolve the invitation background on the current template's own host. */
:root uni-app uni-page[data-page="pages/my/invite"] .i-bg {
  background-image: url('/show/static/invite_bg.png') !important;
}

/* Keep the member icon on this storefront host rather than the old root path. */
:root uni-app uni-page[data-page="pages/my/member"] .vip-wrap > uni-view {
  background-image: url('/show/static/index_img/vip_icon.png');
}
