/* ============================================================
 * MyInfo.css — MyInfo.html 独立样式
 * ============================================================ */

/* body 弹性布局：tab-bar + scroll-root 自然撑满视口 */
html, body { height: 100%; }
/* 覆盖 tab-bar.css 的 fixed 悬浮，改为正常流；宽度 100%，与 Messages 一致 */
.tab-bar { position: relative; top: auto; left: auto; right: auto; width: 100%; margin-left: auto; margin-right: auto; }

/* 汉堡菜单按钮（位于用户卡片编辑图标上方） */
.tab-menu-btn {
    position: relative;
    border: 0; background: transparent; color: #b0b0b0;
    padding: 0.08rem 0 0.06rem 0; cursor: pointer; line-height: 1;
    display: flex; align-items: center;
    -webkit-tap-highlight-color: transparent;
}
.tab-menu-btn svg { width: 0.46rem; height: 0.46rem; }

/* 下拉菜单（相对汉堡按钮定位，向下展开） */
.tab-menu-dropdown {
    position: absolute; right: 0; top: 100%; margin-top: 0.10rem;
    background: #fff; border-radius: 0.21rem;
    box-shadow: 0 0.08rem 0.32rem rgba(0,0,0,0.12);
    min-width: 2.60rem;
    display: none; z-index: 100;
    overflow: hidden;
}
.tab-menu-dropdown.show { display: block; }

.tab-menu-item {
    display: flex; align-items: center;
    width: 100%; padding: 0.26rem 0.32rem;
    border: none; background: transparent;
    font-size: 0.32rem; color: #e53935; cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}
.tab-menu-item:active { background: #f5f5f5; }
body {
            display: flex;
            flex-direction: column;
            background: #f5f5f5;
            padding-bottom: calc(1.67rem + env(safe-area-inset-bottom, 0px)); /* 避开底部固定导航栏 */
            box-sizing: border-box;
        }
/* 内容区：弹性占满剩余空间 */
#scroll-root {
            display: block; /* 覆盖 common.css 的 flex */
            flex: 1;
            min-height: 0;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior-y: contain;
            scrollbar-width: none;
            -ms-overflow-style: none;
            background: #f5f5f5; /* 覆盖 common.css 的渐变 */
            padding-bottom: 0.9rem; /* 底部额外留白，避免底部卡片紧贴导航栏/被遮挡 */
            height: auto; /* 覆盖 common.css 的 height:100% */
        }
#scroll-root::-webkit-scrollbar { display: none; }
.title {
            font-size: 0.42rem;
            font-weight: bold;
            color: #1976d2;
        }
.container {
            flex: 1;
            display: flex;
            flex-direction: column;
            min-height: 0;
            max-width: none;
            width: 100%;
            margin: 0.05rem auto 0 auto;
            padding: 0 0.31rem;
            box-sizing: border-box;
        }
.card {
            background: #fff;
            border-radius: 0.47rem;
            box-shadow: none;
            padding: 0.21rem 0.04rem;
            padding-top: 0;
            margin-bottom: 0.5rem;
        }
.profile-header {display: flex;
            align-items: center; 
        }
.profile-header > * + * { margin-left: 0.47rem; }
.profile-header > * + * { margin-left: 0.47rem; }
.avatar {
            width: 2.09rem;
            height: 2.09rem;
            border-radius: 50%;
            border: 0.02rem solid #ddd;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.05rem;
            background: #fff;
            box-shadow: none;
            user-select: none;
            flex: 0 0 2.09rem;
        }
#users { flex: 1 1 auto; min-width: 0; }
.tabs {display: grid;
            grid-template-columns: repeat(5, 1fr); 
            margin: 0 0.04rem 0.21rem 0.04rem;
        }
.tabs > * { margin: 0 0.08rem; }
.tab-btn {
            position: relative;
            border: none;
            color: #bbb;
            background: transparent;
            border-radius: 0;
            padding: 0.21rem 0 0.16rem 0;
            font-size: 0.34rem;
            font-weight: 380;
            margin-bottom: 0.1rem;
            cursor: pointer;
            outline: none;
            -webkit-tap-highlight-color: transparent;
            transition: transform 0.18s ease, color 0.18s ease, font-weight 0.18s ease;
        }
.tab-btn:focus,
        .tab-btn:focus-visible,
        .tab-btn:active {
            outline: none;
            background: transparent;
            color: inherit;
        }
.tab-btn.active {
            background: transparent;
            color: #555;
            border: none;
            font-weight: 400;
            transform: translateY(-0.04rem);
        }
.tab-btn.active::after {
            content: '';
            position: absolute;
            left: 50%;
            top: 100%;
            margin-top: 0;
            width: 0.13rem;
            height: 0.13rem;
            border-radius: 50%;
            background: #2196f3;
            transform: translateX(-50%);
            opacity: 0.5;
        }
.order-list { min-height: 1.88rem; }
.order-empty {
            color: #b0b0b0;
            text-align: center;
            font-size: 0.31rem;
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 50vh;
            width: 100%;
        }
.order-item {
            padding: 0.21rem 0;
            margin-top: -0.1rem;
            margin-bottom: 0.16rem;
            font-size: 0.31rem;
            border: none;
            background: transparent;
            -webkit-tap-highlight-color: transparent;
            outline: none;
        }
.order-item:active,
        .order-item:focus,
        .order-item:focus-visible,
        .order-item:hover {
            background: transparent !important;
            outline: none !important;
            box-shadow: none !important;
        }
/* 列表最后一个订单不显示底部分割线 */
        .order-list > .order-divider:last-child,
        .order-item:last-child .order-divider,
        .order-swipe-wrapper:last-child .order-divider {
            display: none;
        }
.muted { color: #9e9e9e; font-size: 0.29rem; }
/* 缩略图：模糊->清晰过渡（更短：0.2s） */
        .product-thumb {
            border: 0.02rem solid #eee;
            box-sizing: border-box;
        }
.product-thumb img {
            transition: filter 0.18s ease, opacity 0.18s ease, transform 0.18s ease;
            will-change: filter, opacity;
        }
/* 默认：若 src 是快照(dataUrl)则轻微模糊；一旦 JS 标记为 sharp 就立刻清晰 */
        .product-thumb img[data-snap="1"] {
            filter: blur(0.02rem);
            opacity: 0.92;
            transform: scale(1.02);
        }
.product-thumb img[data-sharp="1"] {
            filter: none !important;
            opacity: 1 !important;
            transform: none !important;
        }
.copy-btn {
            appearance: none;
            background: none;
            border: none;
            color: #aaa;
            cursor: pointer;
            font-size: 0.29rem;
            text-align: left;
            text-decoration: none;
        }
.copy-btn:hover { text-decoration: none; }
.user-card {
            background: #fff;
            border: none;
            box-shadow: none;
            border-radius: 0.47rem;
            padding: 0.26rem 0.21rem;
            margin: 0 0 0.5rem;
            flex: 0 0 auto;
        }
.profile-link {
            flex: 0 0 auto;
            width: 0.73rem;
            height: 0.73rem;
            border: none;
            background: transparent;
            color: #b0b0b0;
            cursor: pointer;
            font-size: 0.47rem;
            line-height: 0.73rem;
            text-align: center;
            padding: 0;
        }
.profile-link:hover { color: #1976d2; }
/* ✅ pointsLink：始终浅灰 + 禁用点击蓝色高亮/焦点样式 */
        #pointsLink,
        #pointsLink:hover,
        #pointsLink:active,
        #pointsLink:focus,
        #pointsLink:visited {
            color: #c7c7c7;
            outline: none;
            box-shadow: none;
            text-decoration: none;
        }
/* iOS/移动端点击高亮（蓝底） */
        #pointsLink {
            -webkit-tap-highlight-color: transparent;
        }
/* 键盘聚焦也不显示描边（如需无障碍可改成保留 focus-visible） */
        #pointsLink:focus-visible {
            outline: none;
        }
/* 左滑取消订单 */
        .order-swipe-wrapper {
            position: relative;
            overflow: hidden;
        }
.order-swipe-inner {
            display: flex;
            align-items: stretch;
            transition: transform 0.22s cubic-bezier(.4, 0, .2, 1);
            will-change: transform;
        }
.order-swipe-inner > .order-item {
            flex: 0 0 100%;
            width: 100%;
            min-width: 0;
            box-sizing: border-box;
        }
.order-delete-btn {flex: 0 0 1.57rem;
            width: 1.57rem;
            margin-left: 0.26rem;
            background: #f44336;
            color: #fff;
            border: none;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            user-select: none;
            font-size: 0.29rem; 
            padding: 0;
            -webkit-tap-highlight-color: transparent;
        }
.order-delete-btn > * + * { margin-left: 0.1rem; }
.order-delete-btn > * + * { margin-top: 0.1rem; }
.order-delete-btn .del-icon {
            font-size: 0.52rem;
            line-height: 1;
        }

/* PC 宽屏：bottom-nav 隐藏，清除为底部导航栏预留的 padding；
   为底部备案栏 #home-filing-bar（约 0.735rem 高）预留空间，避免下滑显示时遮挡底部卡片 */
@media (min-width: 1070px) {
    body {
        padding-bottom: 0 !important;
    }
    #scroll-root {
        padding-bottom: 1.2rem !important;
    }
    /* 内容容器自适应屏幕宽度，与首页一致（96vw） */
    .container {
        max-width: 96vw;
    }
}