.profile-page{max-width:800px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.profile-page__header{margin-bottom:var(--spacing-xl)}.profile-page__header h1{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0}.profile-page__subtitle{color:var(--color-text-secondary);font-size:.95rem;margin:var(--spacing-xs) 0 0}.profile-page__section{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.profile-page__section-title{font-size:1rem;font-weight:700;color:var(--color-text);margin:0 0 var(--spacing-lg) 0}.profile-page__avatar-row{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.profile-page__avatar{width:72px;height:72px;border-radius:var(--radius-full);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0;-webkit-user-select:none;user-select:none;text-transform:uppercase}.profile-page__avatar-info{display:flex;flex-direction:column;gap:.25rem}.profile-page__avatar-name{font-size:1.1rem;font-weight:600;color:var(--color-text)}.profile-page__avatar-email{font-size:.85rem;color:var(--color-text-secondary)}.profile-page__avatar-btn{margin-left:auto;padding:.4rem .9rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.8rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.profile-page__avatar-btn:hover{border-color:var(--color-text-secondary);color:var(--color-text)}.profile-page__info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.profile-page__info-item{display:flex;flex-direction:column;gap:.2rem}.profile-page__info-label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em}.profile-page__info-value{font-size:.95rem;font-weight:500;color:var(--color-text)}.profile-page__info-value--mono{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-secondary)}.profile-page__badge{display:inline-flex;align-items:center;padding:.1rem .55rem;border-radius:var(--radius-full);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;width:fit-content}.profile-page__badge--admin{background:var(--color-primary-light);color:var(--color-primary)}.profile-page__badge--user{background:var(--color-surface);color:var(--color-text-secondary)}.profile-page__form-row{display:flex;align-items:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.profile-page__form-field{flex:1;display:flex;flex-direction:column;gap:.3rem}.profile-page__form-field label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em}.profile-page__input{padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.profile-page__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.profile-page__btn{padding:.5rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none}.profile-page__btn:disabled{opacity:.5;cursor:not-allowed}.profile-page__btn--primary{background:var(--color-primary);color:var(--color-on-primary)}.profile-page__btn--primary:hover:not(:disabled){background:var(--color-primary-dark)}.profile-page__btn--secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.profile-page__btn--secondary:hover:not(:disabled){border-color:var(--color-text-secondary)}.profile-page__btn--danger{background:var(--color-danger-subtle-bg);color:var(--color-danger)}.profile-page__btn--danger:hover:not(:disabled){background:var(--color-danger-subtle-bg)}.profile-page__btn--sm{padding:.35rem .8rem;font-size:.8rem}.profile-page__security-list{display:flex;flex-direction:column;gap:0}.profile-page__security-row{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border)}.profile-page__security-row:last-child{border-bottom:none;padding-bottom:0}.profile-page__security-row:first-child{padding-top:0}.profile-page__security-left{display:flex;flex-direction:column;gap:.15rem}.profile-page__security-label{font-size:.9rem;font-weight:600;color:var(--color-text)}.profile-page__security-desc{font-size:.8rem;color:var(--color-text-secondary)}.profile-page__security-right{display:flex;align-items:center;gap:var(--spacing-sm)}.profile-page__badge--enabled{background:#05966914;color:var(--color-success)}.profile-page__badge--disabled{background:var(--color-surface);color:var(--color-text-secondary)}.profile-page__login-history{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.profile-page__login-history-loading,.profile-page__login-history-empty{padding:var(--spacing-lg) 0;text-align:center;color:var(--color-text-secondary);font-size:.85rem}.profile-page__history-table{width:100%;border-collapse:collapse;font-size:.82rem}.profile-page__history-table thead th{text-align:left;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border)}.profile-page__history-table tbody td{padding:var(--spacing-sm);color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:top}.profile-page__history-table tbody tr:last-child td{border-bottom:none}.profile-page__history-row--failed td{background:var(--color-danger-subtle-bg)}.profile-page__history-event{display:inline-block;padding:.1rem .45rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.profile-page__history-event--success{background:#05966914;color:var(--color-success)}.profile-page__history-event--failed{background:var(--color-danger-subtle-bg);color:var(--color-danger)}.profile-page__history-reason{display:block;font-size:.72rem;color:var(--color-danger);margin-top:.15rem}.profile-page__history-mono{font-family:var(--font-mono);font-size:.78rem;color:var(--color-text-secondary)}.profile-page__history-device{font-size:.78rem;color:var(--color-text-secondary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-page__section--danger{border-color:var(--color-danger-subtle-border)}.profile-page__section--danger .profile-page__section-title{color:var(--color-danger)}.profile-page__danger-content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.profile-page__danger-text{font-size:.85rem;color:var(--color-text-secondary);line-height:1.5}.profile-page__message{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:.85rem;font-weight:500;margin-bottom:var(--spacing-md)}.profile-page__message--success{background:#05966914;color:var(--color-success)}.profile-page__message--error{background:var(--color-danger-subtle-bg);color:var(--color-danger)}.profile-page__modal-overlay{position:fixed;inset:0;background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.profile-page__modal{background:var(--color-card-bg);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:440px;width:90%;box-shadow:var(--shadow-xl)}.profile-page__modal h2{font-size:1.15rem;font-weight:700;color:var(--color-text);margin:0 0 var(--spacing-lg) 0}.profile-page__modal-field{margin-bottom:var(--spacing-md)}.profile-page__modal-field label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-xs)}.profile-page__modal-field input{width:100%;padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-sans);font-size:.875rem;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box}.profile-page__modal-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.profile-page__modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.profile-page__loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--color-text-secondary);font-size:.95rem}@media(max-width:768px){.profile-page{padding:var(--spacing-lg) var(--spacing-md)}.profile-page__info-grid{grid-template-columns:1fr}.profile-page__avatar-row{flex-direction:column;text-align:center}.profile-page__avatar-btn{margin-left:0}.profile-page__form-row{flex-direction:column;align-items:stretch}.profile-page__danger-content{flex-direction:column;align-items:flex-start}.profile-page__security-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.profile-page__history-table thead{display:none}.profile-page__history-table tbody td{display:block;padding:var(--spacing-xs) 0;border-bottom:none}.profile-page__history-table tbody tr{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border);display:block}.profile-page__history-table tbody tr:last-child{border-bottom:none}}.profile-page{max-width:800px;margin:0 auto;padding:var(--spacing-xl)}.profile-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-section{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:var(--shadow-xs)}.profile-section h2{font-size:1.15rem;margin-bottom:var(--spacing-lg)}.profile-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.profile-info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.profile-info-label{font-size:.75rem;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.profile-info-value{font-size:.95rem;font-weight:600}.profile-id{font-family:var(--font-mono);font-size:.82rem;color:var(--color-secondary)}.profile-form{max-width:400px}
