.account-page-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:8px 0 32px; }
.account-page-heading h1 { font-size:30px; letter-spacing:-.04em; }
.account-page-heading p { color:#8d9ab0; font-size:14px; margin-top:10px; }
.account-page-heading .btn { flex-shrink:0; }
.account-workspace { display:grid; grid-template-columns:180px minmax(0,1fr); gap:32px; max-width:1160px; margin:auto; }
.account-tabs { position:sticky; top:96px; align-self:start; display:flex; flex-direction:column; gap:8px; }
.account-tabs button { display:flex; justify-content:space-between; align-items:center; min-height:46px; border:1px solid transparent; padding:12px 14px; border-radius:10px; background:transparent; color:#919eb5; font:inherit; font-size:14px; cursor:pointer; text-align:left; }
.account-tabs button.active { background:#8872e915; border-color:#8872e930; color:#c7baff; }
.account-tabs button span { opacity:.6; }
.account-content { min-width:0; }
.account-card { padding:26px; border:1px solid #ffffff0b; border-radius:16px; background:#111827; margin-bottom:20px; min-width:0; }
.account-person { display:flex; align-items:center; gap:20px; background:linear-gradient(115deg,#1b2039,#111827 70%); }
.account-person-avatar { flex-shrink:0; display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:20px; background:#8872e922; color:#c6b9ff; border:1px solid #8872e93a; object-fit:cover; font-size:26px; font-weight:650; }
.account-avatar-editor { margin-bottom:24px; padding-bottom:24px; border-bottom:1px solid #ffffff0c; }
.account-avatar-controls { display:flex; gap:20px; align-items:flex-start; }
.account-avatar-options { min-width:0; flex:1; }
.account-avatar-options label { display:block; margin-bottom:10px; color:#c9d2e4; font-size:14px; }
.account-avatar-options input { display:block; width:100%; min-width:0; max-width:100%; color:#9ca9c0; font-size:12px; }
.account-avatar-options input::file-selector-button { margin-right:10px; padding:8px 12px; color:#d2daeb; background:#202737; border:1px solid #ffffff12; border-radius:8px; cursor:pointer; }
.account-avatar-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
@media(max-width:480px) { .account-avatar-controls { flex-direction:column; gap:14px; } .account-avatar-options { width:100%; } }
.account-person > div { min-width:0; }
.account-person h2 { font-size:22px; overflow-wrap:anywhere; }
.account-person p { color:#8996ae; font-size:13px; margin-top:7px; overflow-wrap:anywhere; }
.account-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.account-stats > div { padding:20px; border:1px solid #ffffff0b; border-radius:13px; background:#111827; }
.account-stats span { display:block; font-size:12px; color:#8996ae; }
.account-stats strong { display:block; font-size:26px; font-weight:650; margin-top:9px; }
.account-card-title { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; flex-wrap:wrap; }
.account-card-title h2 { font-size:17px; font-weight:650; }
.account-card p { color:#939fb5; font-size:13px; line-height:1.85; }
.account-card .account-small,.account-small { font-size:12px; color:#77869e; overflow-wrap:anywhere; }
.account-access-badge { padding:5px 10px; border:1px solid #ffffff13; background:#ffffff05; border-radius:30px; color:#98a5ba; font-size:12px; }
.account-access-badge.is-verified { color:#80d8b2; border-color:#48bb882e; background:#48bb8810; }
.account-access-permissions { display:flex; flex-wrap:wrap; gap:12px 24px; color:#bec9db; font-size:13px; margin:16px 0; }
#account-verify-button { margin-top:14px; }
.account-record { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 0; border-bottom:1px solid #ffffff08; }
.account-record:first-child { padding-top:0; }
.account-record:last-child { border-bottom:0; padding-bottom:0; }
.account-record > div { min-width:0; }
.account-record h3 { font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.account-record p { margin-top:5px; font-size:12px; }
.account-record .cms-status,.account-record button { flex-shrink:0; }
.account-inline-link { border:0; padding:4px 0; color:#b5a2ff; background:none; font:inherit; font-size:12px; cursor:pointer; text-align:left; }
.account-card-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.account-empty { padding:12px 0; }
.account-verification-note { margin:20px 0; padding:16px; border:1px solid #293449; border-radius:12px; background:#0c1321; }
.account-verification-note strong { font-size:13px; color:#b4c3da; }
.account-verification-note p { margin:8px 0 0; font-size:13px; line-height:1.8; }
.account-content > .account-empty { padding:26px; }
.account-empty .btn { display:block; margin-top:16px; }
.account-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:24px; }
.account-details span { display:block; margin-bottom:7px; color:#7f8ca3; font-size:12px; }
.account-details strong { font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.account-content .form-control { background:#0c1220; border-color:#2c3549; color:#dce4f3; min-height:46px; }
.account-content .form-group { margin-top:20px; }
.account-content .form-group label { font-size:13px; color:#a8b4c9; }
.account-form-feedback { margin:12px 0; min-height:0; overflow-wrap:anywhere; }
.mail-code-row { display:flex; gap:8px; align-items:stretch; }
.mail-code-row input { min-width:0; flex:1; }
.mail-code-row button { flex-shrink:0; font-size:12px; padding:10px; }
.mail-forgot { display:block; margin:16px auto 0; text-align:center; }
#form-auth-reset .form-control,#register-email-verification .form-control { background:#0c1220; border-color:#2c3549; color:#dce4f3; min-height:46px; }
#form-auth-reset { max-width:100%; }
.mail-config-details { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:12px 20px; margin:24px 0; }
.mail-config-details dt { color:var(--text-muted); }
.mail-config-details dd { margin:0; overflow-wrap:anywhere; }
#admin-mail-status p { margin:14px 0; overflow-wrap:anywhere; }
#account-email-confirm-form { margin-top:24px; }
.account-tabs button:focus-visible,.account-inline-link:focus-visible { outline:2px solid #b7a5ff; outline-offset:3px; }
@media (max-width:768px) { .account-page-heading { margin:8px 0 22px; align-items:flex-start; } .account-page-heading h1 { font-size:25px; } .account-page-heading p { font-size:12px; } .account-page-heading > .btn { padding:9px 12px; font-size:12px; } .account-workspace { grid-template-columns:minmax(0,1fr); gap:16px; } .account-tabs { position:static; flex-direction:row; } .account-tabs button { flex:1; } .account-card { padding:20px; } .account-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } .account-stats > div { padding:16px; } .account-details { grid-template-columns:minmax(0,1fr); gap:16px; } }
@media (max-width:380px) { .account-card { padding:16px; } .account-person { gap:14px; } .account-person-avatar { width:48px; height:48px; border-radius:15px; font-size:20px; } .account-person h2 { font-size:18px; } .account-record { align-items:flex-start; } }
