/* 我的 */ .page-shell.mine-page { min-height: auto; padding-bottom: calc(56px + env(safe-area-inset-bottom, 0px)); } .mine-page { background: var(--color-background); } .mine-header { position: relative; padding: 16px var(--space-page) 44px; background: linear-gradient(135deg, #820012 0%, var(--color-heritage-red) 40%, #d4a373 100%); overflow: hidden; } .mine-header-texture { position: absolute; inset: 0; opacity: 0.08; background: repeating-linear-gradient( 45deg, transparent, transparent 8px, rgba(255, 255, 255, 0.04) 8px, rgba(255, 255, 255, 0.04) 16px ); pointer-events: none; } .mine-profile { position: relative; display: flex; align-items: center; z-index: 1; } .mine-avatar-wrap { position: relative; flex-shrink: 0; margin-right: 12px; } .mine-avatar-wrap--action { cursor: pointer; } .mine-profile-meta { min-width: 0; flex: 1; } .mine-avatar-status { position: absolute; left: 50%; bottom: -4px; transform: translateX(-50%); padding: 2px 8px; border-radius: 999px; font-size: 9px; font-weight: 600; line-height: 1.3; white-space: nowrap; border: 1px solid rgba(255, 255, 255, 0.85); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12); } .mine-avatar-status--ok { background: #07c160; color: #fff; } .mine-avatar-status--pending { background: #fff; color: var(--color-heritage-red); } .mine-avatar-badge { position: absolute; right: -4px; bottom: -2px; background: var(--color-heritage-red); color: #fff; font-size: 9px; padding: 2px 6px; border-radius: 999px; } .mine-member-tag--wechat { background: rgba(255, 255, 255, 0.25); } .mine-avatar { width: 64px; height: 64px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, 0.35); background: #fff; overflow: hidden; flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: var(--color-heritage-red); font-size: 24px; font-weight: 700; box-sizing: border-box; } .mine-avatar--wx-ok { border-color: #07c160; box-shadow: 0 0 0 2px rgba(7, 193, 96, 0.25); } .mine-avatar--wx-pending { border-color: rgba(255, 255, 255, 0.9); box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.35); } .mine-avatar-wrap .mine-avatar { margin-right: 0; } .mine-profile > .mine-avatar { margin-right: 12px; } .mine-avatar-img { width: 100%; height: 100%; } .mine-profile-name { display: block; font-family: var(--font-headline); font-size: 18px; font-weight: 600; color: #fff; margin-bottom: 2px; } .mine-member-tag { display: inline-block; padding: 2px 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.15); font-size: 10px; color: rgba(255, 255, 255, 0.9); } .mine-profile-retry { display: block; margin-top: 6px; font-size: 11px; color: #fff; text-decoration: underline; } .mine-main { margin-top: -28px; position: relative; z-index: 2; padding: 0 var(--space-page) 0; } .mine-card { background: var(--color-card); border-radius: var(--radius-lg); padding: 12px; box-shadow: var(--shadow-card); margin-bottom: 8px; } .mine-card:last-of-type { margin-bottom: 0; } .mine-card-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; } .mine-card-title { font-family: var(--font-headline); font-size: 15px; font-weight: 700; color: var(--color-on-surface); } .mine-card-link { font-size: 12px; color: var(--color-subtle-gray); } .mine-asset-panel { display: flex; align-items: center; justify-content: space-between; padding: 12px; border-radius: var(--radius-md); background: linear-gradient(135deg, #fff9e6 0%, #fff0c2 100%); } .mine-asset-label { display: block; font-size: 12px; color: rgba(87, 69, 0, 0.8); margin-bottom: 4px; } .mine-asset-amount { display: flex; align-items: baseline; color: var(--color-heritage-red); } .mine-asset-currency { font-size: 16px; font-weight: 700; margin-right: 2px; } .mine-asset-value { font-family: var(--font-headline); font-size: 24px; font-weight: 700; } .mine-asset-cta { padding: 6px 14px; border-radius: 999px; background: var(--color-heritage-red); color: #fff; font-size: 12px; font-weight: 600; } .mine-order-grid { display: flex; justify-content: space-around; } .mine-order-item { display: flex; flex-direction: column; align-items: center; padding: 4px; position: relative; width: 33%; } .mine-order-icon { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; margin-bottom: 4px; } .mine-order-icon-img { width: 28px; height: 28px; display: block; } .mine-order-badge { position: absolute; top: 2px; right: 18%; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 999px; background: var(--color-heritage-red); color: #fff; font-size: 10px; line-height: 16px; text-align: center; } .mine-order-label { font-size: 12px; color: var(--color-on-surface); } .mine-service-grid { display: flex; flex-wrap: wrap; } .mine-service-item { width: 25%; display: flex; flex-direction: column; align-items: center; padding: 6px 4px; box-sizing: border-box; } .mine-service-icon { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; margin-bottom: 4px; } .mine-service-icon-img { width: 28px; height: 28px; display: block; } .mine-service-label { font-size: 11px; color: var(--color-on-surface); text-align: center; } .mine-footer { display: flex; align-items: center; justify-content: space-between; padding: 10px 0 0; margin-top: 8px; } .mine-version { font-size: 12px; color: var(--color-subtle-gray); } .mine-logout { display: inline-flex; padding: 6px 18px; border-radius: var(--radius-full); border: 1px solid rgba(166, 29, 36, 0.3); color: var(--color-heritage-red); font-size: 13px; font-weight: 600; } .mine-login-gate { margin-top: -24px; margin-left: var(--space-page); margin-right: var(--space-page); margin-bottom: 8px; padding: 16px; position: relative; z-index: 2; background: var(--color-card); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); box-sizing: border-box; } .mine-login-gate-hint { text-align: center; padding: 24px 0 16px; color: var(--color-subtle-gray); font-size: 14px; } .mine-login-btn { display: flex; align-items: center; justify-content: center; width: 100%; box-sizing: border-box; padding: 12px 18px; border-radius: var(--radius-md); background: var(--color-heritage-red); color: #fff; font-size: 15px; font-weight: 600; } .mine-profile-sheet-mask { position: fixed; inset: 0; z-index: 1000; background: rgba(20, 16, 14, 0.45); display: flex; align-items: flex-end; justify-content: center; } .mine-profile-sheet { width: 100%; max-width: 480px; box-sizing: border-box; background: #fff; border-radius: 20px 20px 0 0; padding: 20px 20px calc(20px + env(safe-area-inset-bottom, 0px)); } .mine-profile-sheet-title { display: block; font-size: 17px; font-weight: 700; color: #1f1a17; text-align: center; } .mine-profile-sheet-hint { display: block; margin-top: 8px; font-size: 12px; line-height: 1.5; color: #8d706e; text-align: center; } .mine-profile-avatar-btn { margin: 20px auto 0; padding: 0; width: auto; background: transparent; border: none; line-height: 1.2; display: flex; flex-direction: column; align-items: center; } .mine-profile-avatar-btn::after { border: none; } .mine-profile-avatar-preview { width: 88px; height: 88px; border-radius: 50%; overflow: hidden; border: 2px solid rgba(166, 29, 36, 0.25); background: #f7f4ef; } .mine-profile-avatar-tip { margin-top: 8px; font-size: 12px; color: var(--color-heritage-red); font-weight: 600; } .mine-profile-nickname-wrap { margin-top: 18px; } .mine-profile-nickname-label { display: block; font-size: 13px; color: #5c504c; margin-bottom: 8px; } .mine-profile-nickname-input { width: 100%; box-sizing: border-box; height: 44px; padding: 0 14px; border-radius: 12px; background: #f7f4ef; font-size: 15px; color: #1f1a17; } .mine-profile-sheet-actions { margin-top: 22px; display: flex; gap: 12px; } .mine-profile-sheet-cancel, .mine-profile-sheet-save { flex: 1; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 600; } .mine-profile-sheet-cancel { background: #f0ebe4; color: #5c504c; } .mine-profile-sheet-save { background: var(--color-heritage-red); color: #fff; } .mine-profile-sheet-save.is-disabled { opacity: 0.65; pointer-events: none; } .mine-qualification-mask { position: fixed; inset: 0; z-index: 1200; display: flex; flex-direction: column; width: 100%; height: 100%; padding: 0; margin: 0; background: rgba(0, 0, 0, 0.55); box-sizing: border-box; } .mine-qualification-scroll { flex: 1; width: 100%; height: 100%; max-width: none; max-height: none; border-radius: 0; overflow: hidden; background: transparent; } .mine-qualification-body { display: flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 100%; width: 100%; padding: 24px 16px 56px; } .mine-qualification-img { display: block; width: 100%; height: auto; pointer-events: none; } .mine-qualification-hint { position: absolute; left: 0; right: 0; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); z-index: 1; text-align: center; font-size: 12px; color: rgba(255, 255, 255, 0.9); text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45); pointer-events: none; }