#screen-profile { padding-top: var(--app-guest-height, 0px); padding-bottom: calc(var(--app-nav-height, 6rem) + 1.5rem); }
#screen-profile .profile-container { width: 100%; max-width: 40rem; padding: 0 1.25rem 1rem; }
#screen-profile .profile-top-bar { position: static; padding: .75rem 0; gap: 1rem; }
#screen-profile .profile-top-bar .shemtov-logo { width: 64px; height: 63px; }
#screen-profile .profile-back { display: inline-flex; align-items: center; gap: .35rem; min-height: 44px; padding: .5rem .75rem; border: 0; border-radius: .75rem; color: var(--on-surface); background: var(--surface-container-lowest); font: inherit; font-size: .875rem; cursor: pointer; }
#screen-profile .profile-heading { font-family: inherit; font-size: 1.5rem; font-weight: 700; margin: .25rem 0 1.25rem; }
#screen-profile .profile-hero { display: flex; align-items: center; text-align: start; gap: 1.25rem; padding: 1.25rem; border-radius: 1.5rem; background: color-mix(in srgb, #b94970 10%, var(--surface-container-lowest)); }
#screen-profile .profile-avatar { width: 4.5rem; height: 4.5rem; margin: 0; border-radius: 50%; background: var(--surface-container-lowest); box-shadow: none; font-size: 2.25rem; font-weight: 400; flex: none; }
#screen-profile .profile-identity { min-width: 0; }
#screen-profile .profile-name { font-family: inherit; font-size: 1.375rem; font-weight: 650; overflow-wrap: anywhere; margin: 0 0 .35rem; }
#screen-profile .profile-caption { font-size: .875rem; line-height: 1.6; color: var(--on-surface-variant); }
#screen-profile .profile-partner-badge { margin-top: .625rem; background: var(--surface-container-lowest); color: var(--on-surface); font-size: .875rem; }
#screen-profile .avatar-picker { margin: .625rem 0 1.25rem; }
#screen-profile .avatar-picker > summary { width: fit-content; padding: .5rem .25rem; min-height: 44px; cursor: pointer; font-size: .875rem; color: var(--on-surface-variant); }
#screen-profile .avatar-options { display: flex; flex-wrap: wrap; gap: .625rem; padding: .5rem 0; }
#screen-profile .avatar-options button { width: 48px; height: 48px; background: var(--surface-container-lowest); border: 2px solid transparent; border-radius: 50%; font-size: 1.5rem; cursor: pointer; }
#screen-profile .avatar-options button[aria-pressed="true"] { border-color: #b94970; background: color-mix(in srgb, #b94970 12%, var(--surface-container-lowest)); }
#screen-profile .avatar-note { font-size: .875rem; line-height: 1.5; color: var(--on-surface-variant); margin-top: .25rem; }
#screen-profile .profile-stats-grid { gap: .75rem; margin-bottom: 1.5rem; }
#screen-profile .profile-stat-card { flex-direction: row; text-align: start; gap: .75rem; padding: 1rem; box-shadow: none; border: 1px solid var(--surface-container); }
#screen-profile .profile-stat-value { font-family: inherit; font-size: 1.5rem; line-height: 1.3; font-weight: 700; color: var(--on-surface); flex: none; }
#screen-profile .profile-stat-label { font-size: .875rem; line-height: 1.5; }
#screen-profile .settings-title { font-family: inherit; font-size: 1rem; margin-bottom: .625rem; }
#screen-profile .settings-card { box-shadow: none; border: 1px solid var(--surface-container); }
#screen-profile .settings-row { font-family: inherit; text-decoration: none; gap: .75rem; padding: .875rem 1rem; min-height: 64px; }
#screen-profile .settings-row-label { font-size: 1rem; line-height: 1.5; font-weight: 550; min-width: 0; }
#screen-profile .settings-row-label small { display: block; font-size: .875rem; color: var(--on-surface-variant); font-weight: 400; margin-top: .125rem; }
#screen-profile .settings-row-icon { background: color-mix(in srgb, #b94970 10%, var(--surface-container-lowest)); color: var(--on-surface); border-radius: .75rem; }
#screen-profile .settings-row:hover .settings-row-icon { transform: none; }
#screen-profile .pref-summary-card { width: 100%; border: 1px solid var(--surface-container); background: var(--surface-container-lowest); color: var(--on-surface); font: inherit; text-align: start; cursor: pointer; padding: 1rem; margin-bottom: 1.5rem; border-radius: 1rem; }
#screen-profile .pref-summary-header { font-size: .875rem; }
#screen-profile .pref-summary-tags { margin-top: .5rem; }
#screen-profile .pref-tag { font-size: .875rem; }
#screen-profile .profile-switch { width: 42px; height: 26px; border-radius: 99px; background: var(--outline); padding: 3px; flex: none; display: flex; justify-content: flex-end; }
#screen-profile .profile-switch::after { content: ''; width: 20px; height: 20px; border-radius: 50%; background: white; }
#screen-profile [aria-checked="true"] .profile-switch { background: #a9294b; justify-content: flex-start; }
#screen-profile .profile-request { display: flex; align-items: center; gap: 1rem; padding: 1.25rem; margin-bottom: 1.75rem; border-radius: 1.25rem; background: #953047; color: #fff; text-decoration: none; }
#screen-profile .profile-request > div:first-child { flex: 1; }
#screen-profile .profile-request strong { display: block; font-size: 1.125rem; margin-bottom: .375rem; }
#screen-profile .profile-request p { font-size: .875rem; line-height: 1.6; color: #fff0f3; }
#screen-profile .profile-request .request-action { display: inline-flex; align-items: center; gap: .375rem; font-size: .875rem; margin-top: .75rem; font-weight: 600; }
#screen-profile .profile-help { margin-bottom: 1.5rem; }
#screen-profile .profile-help details { background: var(--surface-container-lowest); padding: 0 1rem; border-bottom: 1px solid var(--surface-container); }
#screen-profile .profile-help details:last-child { border: 0; }
#screen-profile .profile-help summary { cursor: pointer; padding: 1rem 0; font-size: 1rem; line-height: 1.5; }
#screen-profile .profile-help p { color: var(--on-surface-variant); font-size: 1rem; line-height: 1.75; padding-bottom: 1rem; }
#screen-profile .profile-help a { color: inherit; text-underline-offset: .2em; }
#screen-profile .profile-logout { font: inherit; font-size: .875rem; min-height: 44px; padding: .5rem .75rem; display: flex; align-items: center; gap: .5rem; border: 0; background: none; color: var(--on-surface-variant); cursor: pointer; }
#screen-profile .profile-footer { opacity: 1; letter-spacing: 0; font-size: .875rem; margin: 1rem 0 0; }
#screen-profile :is(button, a, summary):focus-visible { outline: 2px solid #b94970; outline-offset: 3px; }
@media (max-width: 360px) {
  #screen-profile .profile-container { padding-inline: .875rem; }
  #screen-profile .profile-hero { gap: .875rem; padding: 1rem; }
  #screen-profile .profile-stat-card { flex-direction: column; align-items: flex-start; gap: .25rem; }
}
body.dark-mode #screen-profile .profile-hero { background: #463542; }
body.dark-mode #screen-profile .profile-request { background: #763449; }
body.dark-mode #screen-profile .pref-tag { background: var(--surface-container-low); color: var(--on-surface); }
