#profilePage,#profilePage *{box-sizing:border-box;margin:0;padding:0}.profile-hero{display:flex;flex-direction:column;background:linear-gradient(135deg,var(--primary, #1a3a6e) 0%,#2563eb 100%);color:#fff}.profile-hero-bg{padding:22px 18px 18px}.profile-hero-content{display:flex;align-items:center;gap:14px;width:100%}.profile-hero-avatar{flex:0 0 auto;width:56px;height:56px;border-radius:50%;background:#ffffff38;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;color:#fff;overflow:hidden;position:relative}.profile-hero-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-letter-fallback{line-height:1;color:#fff}.profile-hero-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}.profile-hero-name-row{display:flex;align-items:center;min-width:0}.profile-hero-name{font-size:17px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:0}.profile-hero-phone{font-size:13px;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.profile-hero-msg-btn{flex:0 0 auto;position:relative;width:40px;height:40px;border:none;border-radius:50%;background:#ffffff2e;color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer}.profile-hero-msg-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ef4444;color:#fff;font-size:10px;line-height:16px;text-align:center;box-sizing:border-box}.profile-hero-wave{color:#fff;line-height:0}.profile-hero-wave svg{display:block;width:100%;height:22px}.profile-hero-name.skeleton,.profile-hero-phone.skeleton{background:#ffffff47!important;border-radius:4px;color:transparent!important}.profile-hero-avatar.skeleton{background:#ffffff47!important}.profile-hero-verify{display:inline-block;margin-top:8px;padding:2px 10px;font-size:11px;line-height:18px;border-radius:10px;white-space:nowrap;letter-spacing:.5px}.profile-hero-verify.is-verified{background:#22c55e38;color:#d6ffe5;border:1px solid rgba(34,197,94,.5)}.profile-hero-verify.not-verified{background:#ffffff29;color:#ffffffb3;border:1px solid rgba(255,255,255,.3)}.profile-header{background:#f8fafc;padding:24px 20px 20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #E2E8F0}.profile-header .avatar{width:56px;height:56px;background:#e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#64748b;flex-shrink:0;overflow:hidden;position:relative}.profile-header .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:absolute;top:0;left:0}.profile-header .profile-info{flex:1;min-width:0}.profile-header .name{font-size:17px;font-weight:600;color:var(--c-text, #1E293B)}.profile-header .phone{font-size:13px;color:var(--c-text-muted, #94A3B8);margin-top:2px}.profile-header .verify-tag{display:inline-block;margin-top:4px;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:500}.profile-header .verify-tag.verified{background:#d1fae5;color:#065f46}.profile-header .verify-tag.unverified{background:#fef3c7;color:#92400e}.profile-login-btn{display:inline-block;margin-top:8px;padding:7px 20px;background:var(--color-brand);border:none;color:#fff;border-radius:18px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.profile-login-btn:active{opacity:.85}.profile-guest-illustration{text-align:center;padding:28px 20px 20px;background:#fff;margin:12px 16px;border-radius:var(--radius-card, 12px);box-shadow:var(--shadow-card, 0 1px 3px rgba(0,0,0,.06))}.profile-guest-illustration .guest-icon{width:64px;height:64px;margin:0 auto 12px;background:#eef2ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#3b82f6}.profile-guest-illustration .guest-title{font-size:16px;font-weight:600;color:var(--c-text, #1E293B);margin-bottom:4px}.profile-guest-illustration .guest-desc{font-size:13px;color:var(--c-text-muted, #94A3B8);line-height:1.5}.section{margin:16px}.section-title{font-size:13px;color:var(--c-text-muted, #94A3B8);padding:0 4px 8px;font-weight:500}.menu-list{background:#fff;border-radius:var(--radius-card, 12px);box-shadow:var(--shadow-card, 0 1px 3px rgba(0,0,0,.06));overflow:hidden}.menu-item{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;border-bottom:1px solid var(--c-border, #E2E8F0);transition:background .15s;font-size:15px;color:var(--c-text, #1E293B);text-decoration:none;min-height:56px}.menu-item:last-child{border-bottom:none}.menu-item:active{background:#f8fafc}.menu-item .menu-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.menu-item .menu-text{flex:1}.menu-item .menu-arrow{color:var(--c-text-muted, #94A3B8);font-size:16px;flex-shrink:0}.menu-item .menu-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--color-danger);color:#fff;font-weight:500}.menu-item.logout-item{color:var(--color-danger)}.notification-toggle{position:relative;width:44px;height:26px;flex-shrink:0}.notification-toggle input{opacity:0;width:0;height:0}.notification-toggle .toggle-slider{position:absolute;cursor:pointer;inset:0;background:#cbd5e1;border-radius:26px;transition:background .2s}.notification-toggle .toggle-slider:before{content:"";position:absolute;height:22px;width:22px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.notification-toggle input:checked+.toggle-slider{background:var(--color-brand)}.notification-toggle input:checked+.toggle-slider:before{transform:translate(18px)}.profile-footer{text-align:center;padding:20px 16px 24px}.profile-footer .footer-org{font-size:12px;color:var(--c-text-muted, #94A3B8);margin-bottom:2px}.profile-footer .footer-version{font-size:11px;color:#cbd5e1}.logout-sheet-overlay{position:fixed;inset:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s cubic-bezier(.32,.72,0,1)}.logout-sheet-overlay.show{opacity:1;pointer-events:auto}.logout-sheet{background:#fff;width:100%;max-width:480px;border-radius:20px 20px 0 0;padding:24px 20px calc(20px + env(safe-area-inset-bottom,0px));transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);text-align:center}.logout-sheet-overlay.show .logout-sheet{transform:translateY(0)}.logout-sheet .sheet-handle{width:36px;height:5px;background:#d1d5db;border-radius:3px;margin:0 auto 16px}.logout-sheet .sheet-title{font-size:17px;font-weight:600;color:var(--c-text, #1E293B);margin-bottom:8px}.logout-sheet .sheet-desc{font-size:13px;color:var(--c-text-muted, #94A3B8);margin-bottom:20px;line-height:1.5}.logout-sheet .sheet-btn{display:block;width:100%;padding:14px;border:none;border-radius:14px;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s}.logout-sheet .sheet-btn.confirm{background:var(--color-danger);color:#fff;margin-bottom:8px}.logout-sheet .sheet-btn.confirm:active{background:var(--color-danger)}.logout-sheet .sheet-btn.cancel{background:#f1f5f9;color:var(--c-text, #1E293B)}.logout-sheet .sheet-btn.cancel:active{background:#e2e8f0}.verify-guide-overlay{position:fixed;inset:0;background:#00000080;z-index:101;align-items:center;justify-content:center}.verify-guide-dialog{background:#fff;width:85%;max-width:340px;border-radius:16px;padding:28px 24px 20px;text-align:center;box-shadow:0 8px 32px #00000026}.verify-guide-dialog h3{font-size:18px;font-weight:700;color:var(--c-text, #1E293B);margin-bottom:8px}.verify-guide-dialog p{font-size:14px;color:#64748b;line-height:1.6;margin-bottom:20px}.verify-guide-dialog .guide-btn-primary{display:block;width:100%;padding:12px;background:var(--color-brand);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;margin-bottom:8px}.verify-guide-dialog .guide-btn-secondary{display:block;width:100%;padding:10px;background:transparent;color:var(--c-text-muted, #94A3B8);border:none;font-size:14px;cursor:pointer}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:#e2e8f0!important;border-radius:6px;animation:skeleton-pulse 1.5s ease-in-out infinite;color:transparent!important;pointer-events:none}.profile-header.skeleton .avatar{background:#e2e8f0!important}.profile-header.skeleton .name,.profile-header.skeleton .phone,.profile-header.skeleton .verify-tag{color:transparent!important;background:#e2e8f0!important;border-radius:6px}
