.loading-overlay{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:9998;flex-direction:column;gap:16px;transition:opacity .4s ease}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:.6rem;color:var(--text-muted);font-weight:500;letter-spacing:.3px}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:0 12px;height:44px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0;z-index:50}.header-left{display:flex;align-items:center;gap:8px}.header-badge{font-size:.4rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:2px;background:var(--accent);color:#fff}.header-center{display:flex;align-items:center;gap:6px;flex:1;justify-content:center;max-width:280px;margin:0 8px}.tier-label{font-size:.5rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;padding:2px 10px;border-radius:2px;background:var(--surface);border:1px solid var(--border)}.tier-label .highlight{color:var(--accent)}.header-right{display:flex;align-items:center;gap:4px}.user-profile{display:flex;align-items:center;gap:6px;padding:2px 10px 2px 6px;border-radius:2px;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all .2s;position:relative}.user-profile:hover{background:var(--surface-hover)}.user-name{font-size:.5rem;font-weight:500;color:var(--text-light);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-avatar-sm{width:22px;height:22px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.5rem;font-weight:700;overflow:hidden}.user-avatar-sm img{width:100%;height:100%;object-fit:cover}.user-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:2px;min-width:180px;padding:4px 0;display:none;z-index:60}.user-dropdown.open{display:block}.dropdown-item{padding:6px 14px;font-size:.55rem;color:var(--text-light);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;border:none;background:0 0;width:100%;text-align:left;font-family:Inter,sans-serif}.dropdown-item:hover{background:var(--surface-hover);color:var(--text)}.dropdown-item i{width:14px;color:var(--accent);font-size:.55rem}.dropdown-divider{height:1px;background:var(--border);margin:2px 10px}.auth-buttons{display:flex;gap:8px;align-items:center}.profile-container{min-height:calc(100vh - 44px);padding:40px 24px;max-width:800px;margin:0 auto}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:48px}.profile-header{display:flex;align-items:center;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--border);margin-bottom:24px;flex-wrap:wrap}.profile-avatar{width:80px;height:80px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;flex-shrink:0}.profile-info h1{font-size:1.4rem;font-weight:700;color:var(--text);margin-bottom:4px}.profile-info .profile-email{font-size:.8rem;color:var(--text-light)}.profile-info .profile-tier{display:inline-block;margin-top:4px;padding:2px 12px;background:var(--accent-light);border:1px solid var(--accent);border-radius:2px;color:var(--accent);font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.profile-section{margin-bottom:24px}.profile-section h3{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.profile-section .field-group{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.profile-section .field-group label{font-size:.6rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.profile-section .field-group .field-value,.profile-section .field-group input{padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:2px;font-size:.8rem;color:var(--text);font-family:Inter,sans-serif}.profile-section .field-group input:focus{outline:0;border-color:var(--accent)}.profile-section .field-group input:disabled{opacity:.7;cursor:not-allowed}.profile-section .field-group .field-value{background:var(--surface-hover);color:var(--text-light)}.profile-section .field-group .field-help{font-size:.55rem;color:var(--text-muted)}.profile-actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--border)}.profile-actions button{padding:8px 20px;border:1px solid var(--border);border-radius:2px;background:var(--bg);color:var(--text);cursor:pointer;font-size:.65rem;font-weight:500;font-family:Inter,sans-serif;transition:all .2s;position:relative}.profile-actions button:hover{border-color:var(--accent);color:var(--accent)}.profile-actions button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.profile-actions button.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.profile-actions button:disabled{opacity:.6;cursor:not-allowed}.profile-actions button .btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:6px}.profile-actions button .btn-spinner.dark{border-color:rgba(0,0,0,.2);border-top-color:#000}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.profile-stats .stat-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:16px;text-align:center}.profile-stats .stat-item .stat-number{font-size:1.4rem;font-weight:700;color:var(--accent)}.profile-stats .stat-item .stat-label{font-size:.5rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.status-badge{display:inline-block;padding:2px 10px;border-radius:2px;font-size:.55rem;font-weight:600;text-transform:uppercase}.status-badge.active{background:rgba(16,185,129,.1);color:var(--success)}.status-badge.inactive{background:rgba(239,68,68,.1);color:var(--error)}.status-badge.expired{background:rgba(239,68,68,.1);color:var(--error)}.status-badge.free{background:rgba(107,114,128,.1);color:var(--text-muted)}.toast-container{position:fixed;bottom:24px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:340px;width:100%;pointer-events:none}.toast-container .toast{pointer-events:auto;padding:10px 14px 10px 12px;border-radius:6px;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 24px rgba(0,0,0,.12);display:flex;align-items:center;gap:10px;font-size:.55rem;font-weight:500;color:var(--text);animation:slideIn .3s cubic-bezier(.4,0,.2,1);min-width:0;width:100%;backdrop-filter:blur(8px);background:var(--surface)}.toast-container .toast .toast-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700;color:#fff}.toast-container .toast .toast-icon.success{background:#22c55e}.toast-container .toast .toast-icon.error{background:#ef4444}.toast-container .toast .toast-icon.info{background:#3b82f6}.toast-container .toast .toast-icon.warning{background:#eab308}.toast-container .toast .toast-msg{flex:1;word-break:break-word;line-height:1.4}.toast-container .toast .toast-close{flex-shrink:0;background:0 0;border:none;color:var(--text-muted);cursor:pointer;font-size:.5rem;padding:2px 4px;transition:color .2s}.toast-container .toast .toast-close:hover{color:var(--text)}@keyframes slideIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.password-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .25s ease}.password-modal{background:var(--bg);border:1px solid var(--border);border-radius:4px;max-width:480px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.password-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);flex-shrink:0}.password-modal-header h3{font-size:.9rem;font-weight:700;color:var(--text);display:flex;align-items:center}.password-modal-close{background:0 0;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:4px 8px;transition:color .2s}.password-modal-close:hover{color:var(--text)}.password-modal-body{padding:24px;overflow-y:auto;flex:1}.password-form .field-group{margin-bottom:16px}.password-form .field-group label{display:block;font-size:.6rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.password-form .password-input-wrapper{display:flex;align-items:center;position:relative}.password-form .password-input-wrapper input{width:100%;padding:8px 40px 8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:2px;font-size:.85rem;color:var(--text);font-family:Inter,sans-serif;outline:0;transition:border-color .2s}.password-form .password-input-wrapper input:focus{border-color:var(--accent)}.password-form .password-input-wrapper input::placeholder{color:var(--text-muted);font-size:.75rem}.password-toggle-btn{position:absolute;right:8px;background:0 0;border:none;color:var(--text-muted);cursor:pointer;padding:4px 8px;font-size:.75rem;transition:color .2s}.password-toggle-btn:hover{color:var(--text)}.password-form .field-help{font-size:.5rem;color:var(--text-muted);margin-top:4px}.password-form-error{padding:8px 12px;background:rgba(239,68,68,.08);border:1px solid var(--error);color:var(--error);font-size:.7rem;border-radius:2px;margin-bottom:16px}.password-modal-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid var(--border)}.password-modal-actions button{padding:8px 24px;border:1px solid var(--border);border-radius:2px;cursor:pointer;font-size:.7rem;font-weight:500;font-family:Inter,sans-serif;transition:all .2s}.password-modal-actions .cancel-btn{background:var(--bg);color:var(--text-light)}.password-modal-actions .cancel-btn:hover{border-color:var(--accent);color:var(--accent)}.password-modal-actions .primary-btn{background:var(--accent);border-color:var(--accent);color:#fff}.password-modal-actions .primary-btn:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.password-modal-actions .primary-btn:disabled{opacity:.6;cursor:not-allowed}.password-modal-actions .primary-btn .btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:6px}@keyframes fadeIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (max-width:1024px){.profile-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.profile-container{padding:24px 16px}.profile-card{padding:32px 24px}.profile-header{flex-direction:column;text-align:center;gap:12px}.profile-avatar{width:60px;height:60px;font-size:1.5rem}.profile-info h1{font-size:1.2rem}.profile-stats{grid-template-columns:repeat(2,1fr);gap:10px}.profile-stats .stat-item .stat-number{font-size:1.1rem}.profile-actions{flex-direction:column}.profile-actions button{width:100%;text-align:center}.toast-container{bottom:16px;right:12px;max-width:280px}.user-name{display:none}.header-center .tier-label{font-size:.4rem;padding:1px 6px}.header-badge{font-size:.35rem;padding:1px 6px}.logo{font-size:.7rem}}@media (max-width:480px){.profile-card{padding:20px 16px}.profile-stats{grid-template-columns:1fr 1fr;gap:8px}.profile-stats .stat-item{padding:12px}.profile-stats .stat-item .stat-number{font-size:1rem}.password-modal{max-width:100%;margin:16px}.password-modal-actions{flex-direction:column}.password-modal-actions button{width:100%;text-align:center}.header-center{max-width:120px}}