*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent-primary);opacity:.3;border-radius:4px}::-webkit-scrollbar-thumb:hover{opacity:1}.profile-page{min-height:100vh;width:100%;padding:100px 50px 50px 120px;background:transparent;overflow-x:hidden;overflow-y:auto;transition:background .3s ease;position:relative;z-index:2}.profile-container{max-width:1400px;margin:0 auto;gap:16px;position:relative;overflow:visible}.loading-state,.profile-container{display:flex;flex-direction:column}.loading-state{align-items:center;justify-content:center;min-height:60vh;gap:20px}.loading-state p{color:var(--text-secondary);font-size:13px}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:20px;text-align:center;padding:40px}.error-icon{width:64px;height:64px;color:#ef4444;opacity:.7}.error-state h2{font-size:24px;font-weight:700;color:var(--text-primary);margin:0}.error-state p{font-size:15px;color:var(--text-secondary);margin:0}.not-found-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:65vh;gap:16px;text-align:center;padding:40px 24px}.not-found-ghost{color:var(--text-tertiary);animation:ghost-float 3s ease-in-out infinite;margin-bottom:8px}.not-found-ghost-body{opacity:.15}.not-found-ghost-eye{fill:var(--text-tertiary);opacity:.6;animation:ghost-blink 4s ease-in-out infinite}.not-found-ghost-eye:last-child{animation-delay:.15s}.not-found-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.3px}.not-found-desc{font-size:14px;color:var(--text-tertiary);margin:0;max-width:280px;line-height:1.5}.not-found-btn{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 24px;font-size:14px;font-weight:600;color:#fff;background:var(--accent-primary);border:none;border-radius:10px;cursor:pointer;transition:background .2s ease,transform .15s ease,box-shadow .2s ease}.not-found-btn:hover{background:var(--accent-secondary);box-shadow:0 4px 16px rgba(139,92,246,.3);transform:translateY(-1px)}.not-found-btn:active{transform:translateY(0) scale(.97)}.not-found-btn svg{transition:transform .2s ease}.not-found-btn:hover svg{transform:translateX(-3px)}@keyframes ghost-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes ghost-blink{0%,42%,46%,to{opacity:.6}44%{opacity:0}}.profile-hero{position:relative;background:var(--glass-bg);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;overflow:hidden}.profile-hero-background{position:relative;height:180px;background-color:#1a1a2e;background-image:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);overflow:hidden}.profile-hero-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}[data-theme=light] .profile-hero-background{background-color:#e0e7ff;background-image:linear-gradient(135deg,#e0e7ff,#c7d2fe 50%,#ddd6fe)}.profile-banner-edit-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);opacity:0;transition:opacity .3s ease;z-index:3}.profile-hero-background:hover .profile-banner-edit-overlay{opacity:1}.banner-overlay-content{max-width:700px;width:90vw}.banner-overlay-preview{width:100%;aspect-ratio:16/5;border-radius:12px;overflow:hidden;background:var(--bg-tertiary);margin-bottom:16px}.banner-overlay-preview img{width:100%;height:100%;object-fit:cover}.banner-overlay-placeholder{width:100%;height:100%;justify-content:center;gap:12px;color:var(--text-tertiary);font-size:14px}.banner-overlay-placeholder,.profile-hero-content{display:flex;flex-direction:column;align-items:center}.profile-hero-content{text-align:center;padding:0 32px 32px;margin-top:-60px;position:relative;z-index:3}.profile-hero-avatar-container{position:relative;margin-bottom:16px;width:120px;height:120px;border-radius:24px;overflow:visible;transition:transform .3s ease}.profile-hero-avatar{object-fit:cover;background:var(--bg-secondary)}.profile-hero-avatar,.profile-hero-avatar-placeholder{width:120px;height:120px;border-radius:24px;border:4px solid var(--bg-primary);box-shadow:0 8px 32px rgba(0,0,0,.3)}.profile-hero-avatar-placeholder{background:var(--accent-primary);opacity:.35;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;color:var(--text-primary)}.profile-hero-avatar-loading{top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5)}.profile-hero-avatar-edit,.profile-hero-avatar-loading{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:24px}.profile-hero-avatar-edit{inset:0;background:rgba(0,0,0,.45);opacity:0;transition:opacity .25s ease;pointer-events:none}.profile-hero-avatar-container:hover .profile-hero-avatar-edit{opacity:1}.photo-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);z-index:999999;display:flex;align-items:center;justify-content:center;cursor:pointer}.photo-overlay-content{display:flex;flex-direction:column;align-items:center;gap:24px;cursor:default}.photo-overlay-image{max-width:90vw;max-height:70vh;border-radius:20px;overflow:hidden;box-shadow:0 25px 60px rgba(0,0,0,.5);border:2px solid rgba(139,92,246,.3)}.photo-overlay-image img{max-width:90vw;max-height:70vh;width:auto;height:auto;display:block;object-fit:contain}.photo-overlay-placeholder{width:280px;height:280px;background:var(--accent-primary);opacity:.35;display:flex;align-items:center;justify-content:center;font-size:100px;font-weight:700;color:#fff}.photo-overlay-actions{display:flex;gap:12px}.photo-overlay-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:14px;font-size:14px;font-weight:600;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease;font-family:inherit}.photo-overlay-btn.edit{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.photo-overlay-btn.edit:hover{box-shadow:0 8px 25px rgba(139,92,246,.4)}.photo-overlay-btn.delete{background:rgba(239,68,68,.15);color:#ef4444;border:1px solid rgba(239,68,68,.3)}.photo-overlay-btn.delete:hover{background:rgba(239,68,68,.25)}.photo-overlay-btn.close{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2)}.photo-overlay-btn.close:hover{background:rgba(255,255,255,.2)}@media (max-width:480px){.photo-overlay-actions{flex-direction:column;width:100%;padding:0 20px}.photo-overlay-btn{justify-content:center;width:100%}}.profile-hero-esg{position:absolute;bottom:-8px;right:-8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:4px;box-shadow:0 4px 12px rgba(16,185,129,.4)}.profile-hero-name{font-size:32px;font-weight:800;color:var(--text-primary);margin:0 0 4px;letter-spacing:-.02em}.profile-hero-username{display:block;font-size:15px;font-weight:500;color:#8b5cf6;margin:0 0 8px;letter-spacing:.01em}.profile-hero-company{font-size:14px;color:var(--text-tertiary);margin:0 0 8px}.profile-hero-sector{display:inline-block;padding:6px 16px;background:rgba(139,92,246,.15);color:var(--accent-primary);border-radius:20px;font-size:13px;font-weight:600;margin-bottom:20px}[data-theme=light] .profile-hero-sector{background:rgba(109,40,217,.12);color:#6d28d9;border:1px solid rgba(109,40,217,.2)}.profile-hero-bio{width:100%;max-width:480px;margin-bottom:16px}.profile-bio-display{position:relative;cursor:pointer;padding:8px 12px;border-radius:10px;transition:background .15s;text-align:center}.profile-bio-display:hover{background:rgba(255,255,255,.05)}[data-theme=light] .profile-bio-display:hover{background:rgba(0,0,0,.04)}.profile-bio-text{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.profile-bio-placeholder{margin:0;font-size:14px;color:var(--text-tertiary);font-style:italic}.profile-bio-edit-icon{position:absolute;right:-20px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);opacity:0;transition:opacity .15s}.profile-bio-display:hover .profile-bio-edit-icon{opacity:1}.profile-bio-edit{display:flex;flex-direction:column;gap:8px}.profile-bio-textarea{width:100%;padding:10px 12px;font-size:14px;line-height:1.5;color:var(--text-primary);background:rgba(255,255,255,.06);border:1px solid rgba(139,92,246,.3);border-radius:10px;resize:vertical;min-height:70px;max-height:160px;font-family:inherit;outline:none;transition:border-color .15s}.profile-bio-textarea:focus{border-color:#8b5cf6}[data-theme=light] .profile-bio-textarea{background:rgba(0,0,0,.03);border-color:rgba(109,40,217,.25)}[data-theme=light] .profile-bio-textarea:focus{border-color:#6d28d9}.profile-bio-edit-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.profile-bio-char-count{font-size:12px;color:var(--text-tertiary);margin-right:auto}.profile-bio-cancel-btn{padding:6px 14px;font-size:13px;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:8px;cursor:pointer;transition:background .15s}.profile-bio-cancel-btn:hover{background:rgba(255,255,255,.06)}[data-theme=light] .profile-bio-cancel-btn{border-color:rgba(0,0,0,.12)}[data-theme=light] .profile-bio-cancel-btn:hover{background:rgba(0,0,0,.04)}.profile-bio-save-btn{padding:6px 16px;font-size:13px;font-weight:600;color:#fff;background:#8b5cf6;border:none;border-radius:8px;cursor:pointer;transition:background .15s}.profile-bio-save-btn:hover{background:#7c3aed}.profile-bio-save-btn:disabled{opacity:.6;cursor:not-allowed}.profile-hero-stats{gap:24px}.profile-hero-stats,.profile-hero-stats-row{display:flex;align-items:center;margin-bottom:20px}.profile-hero-stats-row{gap:32px}.profile-hero-stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.profile-hero-stat-value{font-size:24px;font-weight:700;color:var(--text-primary)}.profile-hero-stat-label{font-size:12px;color:var(--text-tertiary);letter-spacing:.3px}.profile-hero-share{position:absolute;bottom:16px;right:16px;z-index:5}.profile-hero-share .share-ext-btn{width:34px;height:34px;border-radius:50%;background:rgba(139,92,246,.08);border:1px solid rgba(139,92,246,.15);backdrop-filter:blur(8px);transition:color .25s ease,background-color .25s ease,border-color .25s ease,opacity .25s ease}.profile-hero-share .share-ext-btn:hover{background:rgba(139,92,246,.18);border-color:rgba(139,92,246,.3)}[data-theme=light] .profile-hero-share .share-ext-btn{background:rgba(139,92,246,.06);border-color:rgba(139,92,246,.12)}.profile-hero-stat-divider{width:1px;height:40px;background:var(--border-color)}.profile-stat-action-btn{display:flex;align-items:center;gap:4px;padding:5px 14px;border:none;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease;margin-top:6px;white-space:nowrap}.profile-stat-action-btn.primary{background:var(--accent-primary);color:#fff}.profile-stat-action-btn.primary svg{color:#fff;stroke:#fff}.profile-stat-action-btn.primary:hover{opacity:.9}.profile-stat-action-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.profile-stat-action-btn.secondary:hover{background:var(--bg-tertiary)}.profile-stat-action-btn:disabled{opacity:.6;cursor:not-allowed}[data-theme=light] .profile-stat-action-btn.primary{background:#8b5cf6;color:#fff}[data-theme=light] .profile-stat-action-btn.primary svg{color:#fff!important;stroke:#fff!important}[data-theme=light] .profile-stat-action-btn.secondary{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12)}.profile-contact-btn{display:flex;align-items:center;gap:4px;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;margin-top:6px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.profile-contact-btn:hover{background:var(--bg-tertiary)}.profile-contact-btn:disabled{opacity:.6;cursor:not-allowed}.profile-contact-btn svg{width:14px;height:14px}[data-theme=light] .profile-contact-btn{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12)}.profile-contact-accordion{width:100%;max-width:500px;background:var(--bg-secondary);border-radius:14px;margin-bottom:24px;overflow:hidden;transition:color .3s ease,background-color .3s ease,border-color .3s ease,opacity .3s ease}.profile-contact-trigger{width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.profile-contact-trigger:hover{color:var(--text-primary);background:var(--bg-tertiary)}.profile-contact-trigger span{flex:1;text-align:left}.profile-contact-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.profile-contact-accordion.expanded .profile-contact-content{max-height:500px}.profile-contact-accordion.expanded .accordion-arrow{transform:rotate(180deg)}.profile-hero .contact-items-grid{display:flex;flex-direction:column;gap:8px;padding:0 18px 16px}.profile-hero .contact-item-inline{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-tertiary);border-radius:10px;font-size:14px;color:var(--text-secondary);text-decoration:none;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.profile-hero .contact-item-inline.contact-link:hover{background:rgba(139,92,246,.1);color:var(--accent-primary)}.profile-hero .contact-item-inline svg{flex-shrink:0;color:var(--accent-primary)}[data-theme=light] .profile-hero .contact-item-inline{background:rgba(0,0,0,.03)}.profile-hero .accordion-arrow{transition:transform .3s ease}.profile-hero-active-company{position:absolute;bottom:16px;left:16px;display:flex;align-items:center;gap:6px;padding:6px 12px;background:rgba(0,0,0,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:20px;border:1px solid rgba(139,92,246,.3)}.active-company-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.active-company-name{font-size:12px;font-weight:600;color:#ffffff;white-space:nowrap}[data-theme=light] .profile-hero-active-company{background:rgba(255,255,255,.8);border-color:rgba(124,58,237,.3)}[data-theme=light] .active-company-name{color:#1e1e2e}.active-company-dot--personal{background:#8b5cf6}.active-company-switch-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:none;background:rgba(139,92,246,.2);color:#fff;cursor:pointer;margin-left:4px;transition:background .2s,transform .15s;flex-shrink:0}.active-company-switch-btn:hover{background:rgba(139,92,246,.4)}[data-theme=light] .active-company-switch-btn{background:rgba(139,92,246,.15);color:#7c3aed}[data-theme=light] .active-company-switch-btn:hover{background:rgba(139,92,246,.3)}.profile-action-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.profile-action-btn.primary{background:var(--accent-primary);color:#fff}.profile-action-btn.primary:hover{opacity:.9}.profile-action-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.profile-action-btn.secondary:hover{background:var(--bg-tertiary)}[data-theme=light] .profile-hero{background:rgba(255,255,255,.9);border-color:rgba(0,0,0,.08)}[data-theme=light] .profile-hero-avatar{border-color:#fff;box-shadow:none}[data-theme=light] .profile-contact-accordion{background:rgba(0,0,0,.03)}[data-theme=light] .profile-contact-trigger:hover{background:rgba(0,0,0,.05)}[data-theme=light] .profile-action-btn.secondary{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.1)}