/* ========== 全站统一：下拉 / 按钮 / 表单 / 卡片 ========== */
html, body {
    max-width: 100vw;
    overflow-x: hidden;
}

/* 原生 select 兜底（未增强时） */
select,
.not-arrow,
.hall-filters select,
.publish-form select,
.login-inp select,
#select_div select,
#select_cate,
#select_level,
#select_sort {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1f2430 !important;
    font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
    border-radius: 12px !important;
}
select::-ms-expand { display: none !important; }

/* 自定义液态玻璃下拉 */
.glass-select {
    position: relative;
    width: 100%;
    z-index: 5;
}
.glass-select.open { z-index: 120; }
.glass-select-btn {
    width: 100% !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 12px !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #1f2430 !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    text-align: left !important;
    cursor: pointer;
}
.glass-select-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    color: #1f2430 !important;
}
.glass-select-caret {
    width: 10px;
    height: 10px;
    margin-left: 8px;
    border-right: 2px solid #9aa1b2;
    border-bottom: 2px solid #9aa1b2;
    transform: rotate(45deg) translate(-2px, -2px);
    flex: 0 0 auto;
    transition: transform .2s ease;
}
.glass-select.open .glass-select-caret {
    transform: rotate(225deg) translate(-2px, -2px);
}
.glass-select-panel {
    position: fixed !important;
    left: 0;
    top: 0;
    max-height: 200px;
    overflow: hidden !important; /* 外层裁切圆角，滚动条不冒出 */
    z-index: 10050 !important;
    padding: 6px;
    border-radius: 14px;
    background: #ffffff !important;
    border: 0.5px solid rgba(255,255,255,.95);
    box-shadow: 0 16px 36px rgba(31,36,48,.2);
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: none !important; /* 不用缩放，避免开合瞬间滚动条穿出 */
    transition: opacity .2s ease, visibility .2s;
}
.glass-select-scroll {
    max-height: 188px;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border-radius: 10px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(31,36,48,.22) transparent;
}
.glass-select-scroll::-webkit-scrollbar {
    width: 3px;
}
.glass-select-scroll::-webkit-scrollbar-track {
    background: transparent;
    margin: 6px 0;
    border-radius: 99px;
}
.glass-select-scroll::-webkit-scrollbar-thumb {
    background: rgba(31,36,48,.2);
    border-radius: 99px;
}
.glass-select-scroll::-webkit-scrollbar-thumb:hover {
    background: rgba(31,36,48,.34);
}
.glass-select-panel.is-open {
    display: block !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
.glass-select-panel.is-open.is-visible {
    opacity: 1 !important;
}
#glass-select-mask {
    position: fixed !important;
    inset: 0 !important;
    z-index: 10040 !important;
    background: rgba(17,21,29,.22) !important;
    display: none !important;
    opacity: 0 !important;
    transition: opacity .22s ease;
}
#glass-select-mask.is-show { display: block !important; }
#glass-select-mask.is-show.is-visible { opacity: 1 !important; }
.glass-select-item {
    padding: 9px 14px !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1f2430 !important;
    background: transparent !important;
    cursor: pointer;
    white-space: nowrap;
    width: max-content;
    min-width: 100%;
    box-sizing: border-box;
    transition: background .18s ease, color .18s ease;
}
.glass-select-item:active,
.glass-select-item.active {
    background: linear-gradient(145deg, #2a3140, #11151d) !important;
    color: #ffffff !important;
}

.hall-filters,
#select_div {
    display: flex !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: relative;
    z-index: 6;
}
.hall-filters > span,
#select_div > span {
    flex: 0 1 auto !important;
    min-width: 0;
    max-width: 38%;
    display: block !important;
    background: rgba(255,255,255,.94) !important;
    border-radius: 14px !important;
    border: 0.5px solid rgba(255,255,255,.95) !important;
    box-shadow: 0 8px 18px rgba(31,36,48,.05) !important;
    padding: 2px 4px !important;
    overflow: visible !important;
    position: relative;
}
.hall-filters .glass-select,
#select_div .glass-select {
    width: auto !important;
    min-width: 84px;
}
.hall-filters .glass-select-btn,
#select_div .glass-select-btn {
    width: auto !important;
    min-width: 84px;
    max-width: 140px;
    padding: 0 10px !important;
    justify-content: flex-start !important;
}
.publish-form .login-inp .glass-select {
    flex: 1;
}
.publish-form .login-inp .glass-select-btn {
    justify-content: flex-end;
    height: 36px !important;
    padding-right: 4px !important;
}

/* 通用主按钮 */
button:not(.glass-select-btn),
input[type="submit"],
input[type="button"],
.btn,
.btn-sm,
.btn-primary,
.btn-success,
a.btn {
    border-radius: 14px !important;
    font-weight: 700 !important;
    letter-spacing: .3px;
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif !important;
}
input[type="submit"],
.btn-primary,
.btn-success,
.publish-submit input[type="submit"],
.login-inp .submit {
    background: linear-gradient(145deg, #2a3140 0%, #11151d 100%) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(17,21,29,.22) !important;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="email"],
textarea {
    font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
    border-radius: 12px !important;
}

body.home-premium,
body.gray_bg,
body.sytemNotice,
body.mine-premium,
body.publish-premium {
    background: #f3f4f8 !important;
    font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.ui-card {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(31,36,48,.05);
    box-sizing: border-box;
}

.footer, .old-footer, .weui-tabbar, footer.footer { display: none !important; }

.home-wrap,
#body,
.body_main {
    box-sizing: border-box;
    max-width: 100%;
}

/* 分类图标统一尺寸 */
.home-cat .cat-ico,
.home-cat .cat-ico img.ui-app-ico {
    width: 48px !important;
    height: 48px !important;
    border-radius: 14px !important;
    object-fit: cover !important;
}

/* ========== 充值 / 提现 / 表单页统一 ========== */
.tixian_box,
.rech_main,
.body_main .con,
.body_main .card {
    background: #fff !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 22px rgba(31,36,48,.05) !important;
    border: none !important;
}
.body_main {
    padding: 60px 16px 120px !important;
    background: transparent !important;
}
.tixian_box .con,
.tixian_box .card {
    margin: 0 0 12px !important;
    padding: 18px 16px !important;
}
.tixian_box .b .btn_type,
.tixian_box .btn_tx,
.btn_type,
.btn_tx {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    line-height: 48px !important;
    border: none !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, #2a3140, #11151d) !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    box-shadow: 0 12px 28px rgba(17,21,29,.24) !important;
}
.z-line-header {
    background: linear-gradient(145deg, #2a3140, #11151d) !important;
    border-radius: 0 0 24px 24px !important;
    height: auto !important;
    padding: 28px 16px 36px !important;
    font-size: 22px !important;
}
.rech_main {
    margin: -20px 16px 0 !important;
    padding: 18px !important;
    position: relative;
    z-index: 2;
}
a, button, .home-cat, .vip-level, .mine-grid a {
    -webkit-tap-highlight-color: transparent;
}
.home-cat, .vip-action, .vip-level, .mine-grid a, .hall-cat {
    transition: transform .18s ease, opacity .18s ease;
}
.home-cat:active, .vip-action:active, .vip-level:active, .mine-grid a:active, .hall-cat:active {
    transform: scale(.96);
    opacity: .92;
}

/* 任务详情 / 旧紫按钮统一 */
.show_djfzz,
.show_lllqqqe a,
.show_zpllj,
.task_need label.select,
[style*="#805ef4"],
[style*="#704eea"],
[style*="#7552e6"] {
    border-color: #1f2430 !important;
}
body.home-premium .show_djfzz,
body.home-premium .btn,
body .show_index_anniu a,
body .task_btns a,
body .task_btns button {
    background: linear-gradient(145deg, #2a3140, #11151d) !important;
    border: none !important;
    color: #fff !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 22px rgba(17,21,29,.2) !important;
}
body.home-premium .task_need label {
    border-radius: 999px !important;
    border-color: #d5dae3 !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    transform: none !important;
}
body.home-premium .task_need label.select {
    background: #11151d !important;
    color: #fff !important;
    border-color: transparent !important;
}

/* 大厅分类图标统一 */
.hall-cats .hall-ico,
.hall-cats .hall-ico img {
    width: 48px !important;
    height: 48px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
}
.hall-cats .hall-name {
    margin-top: 6px;
    font-size: 11px;
    font-weight: 600;
    color: #5b6472;
}

/* 页面内容进入由 smooth_load / page_transit 统一控制，避免双重动画 */
body.home-premium .home-wrap,
body.home-premium .ui-page,
body.mine-premium .mine-page,
body.sytemNotice #body {
    animation: none;
}
