/* Profile controls share one clear layout on desktop and phone. */
html[data-academy-design="cuban"] .profile-modal{width:min(540px,calc(100vw - 28px));padding:34px 30px 28px;border-radius:22px;overflow:auto}
.profile-modal .profile-form{gap:18px;min-width:0}
.profile-modal .profile-form .profile-avatar{display:flex;flex-direction:column;align-items:center;gap:10px;margin:0}
.profile-modal .profile-photo-preview{display:grid;place-items:center;width:96px;height:96px;flex:none}
.profile-modal .profile-photo-preview :is(.presence-avatar,.avatar){width:96px;height:96px;min-width:96px;flex-basis:96px}
.profile-modal .profile-photo-preview .avatar{object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #d9e3f3;background:#edf3ff;font-size:32px}
.profile-modal .profile-photo-preview .owner-last-connection{display:none}
.profile-modal .profile-name{max-width:100%;margin:0;font-size:24px;line-height:1.2;font-weight:750;letter-spacing:-.5px;text-align:center;overflow-wrap:anywhere;color:#15325a}
.profile-modal .profile-photo-upload{position:relative;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:-5px;min-width:0}
.profile-modal .profile-photo-pick{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;border:1px solid #d0ddf2;border-radius:999px;background:#edf3ff;color:#003da5;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.profile-modal .profile-photo-pick:hover{background:#dfeaff;border-color:#a4bdec}
.profile-modal .profile-photo-pick:focus-visible,.profile-modal .profile-photo-upload:has(.profile-native-file:focus-visible) .profile-photo-pick{outline:3px solid #003da5;outline-offset:3px}
.profile-modal .profile-native-file{position:absolute!important;left:50%;top:20px;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;border:0!important;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.profile-modal #profile-photo-hint{font-size:12px;line-height:1.4;color:#516380;text-align:center}
.profile-modal #profile-photo-status{flex-basis:100%;font-size:12px;line-height:1.5;color:#003da5;text-align:center;max-width:100%;overflow-wrap:anywhere}
.profile-modal #profile-photo-status:empty{display:none}
.profile-modal #profile-photo-status.is-error{color:#bb102b}
.profile-modal .profile-form label{gap:8px;color:#17325c}
.profile-modal .profile-form :is(input:not([type=file]),textarea){box-sizing:border-box;min-width:0;width:100%;padding:12px 14px;font-size:16px;line-height:1.5;border:1px solid #cad7eb;border-radius:12px;background:#fff;color:#172b50}
.profile-modal .profile-form :is(input:not([type=file]),textarea):focus{outline:2px solid #003da5;outline-offset:1px;border-color:#003da5}
.profile-modal .profile-form textarea{min-height:116px;resize:vertical}
.profile-modal .profile-bio-help{font-size:12px;line-height:1.5;font-weight:400;color:#516380}
.profile-modal .city-help{display:inline-flex;width:18px;height:18px;vertical-align:middle;color:#003da5}
.profile-modal #city-results{border-radius:12px;max-height:200px}
.profile-modal #city-results button{min-height:48px;padding:11px 14px;line-height:1.5}
.profile-modal #city-expand{justify-self:start;min-height:40px;padding:8px 12px;border:0;background:#edf3ff;color:#003da5;border-radius:9px;margin-top:-7px;font-size:13px}
.profile-modal .profile-location-help{margin:-7px 0 0;font-size:12px;line-height:1.65;color:#516380}
.profile-modal .profile-settings.icon-settings{display:grid;grid-template-columns:repeat(5,54px);justify-content:center;gap:12px;padding-top:19px;border-top:1px solid #e0e7f2;margin-top:0}
html[data-academy-design="cuban"] .profile-modal .profile-settings.icon-settings .setting-card{display:grid;place-items:center;width:54px;height:54px;min-height:54px;padding:10px;position:relative;border:1px solid #d4dff0!important;border-radius:15px;background:#f3f6fc!important;color:#003da5!important;font-size:22px;box-shadow:none;text-decoration:none}
.profile-modal .setting-card :is(svg,.icon){display:block;width:22px;height:22px}
.profile-modal .setting-card small{position:absolute;right:-3px;bottom:-4px;min-width:25px;padding:3px 4px;border-radius:999px;background:#dce5f3;color:#314d76;font-size:9px;line-height:1;text-align:center}
html[data-academy-design="cuban"] .profile-modal .profile-settings .setting-card[aria-pressed=true]{border-color:#003da5!important;background:#edf3ff!important}
.profile-modal .setting-card[aria-pressed=true] small{background:#003da5;color:#fff}
html[data-academy-design="cuban"] .profile-modal .profile-settings [data-action=logout]{color:#cf142b!important}
.profile-modal .setting-card:focus-visible{outline:3px solid #003da5;outline-offset:3px}
.profile-modal .profile-save{min-height:48px;width:100%;border-radius:12px;font-size:15px;font-weight:700;justify-content:center;margin-top:1px}
.profile-modal .profile-form :disabled{cursor:wait;opacity:.65}
@media(max-width:700px){
  html[data-academy-design="cuban"] .profile-modal{box-sizing:border-box;width:100vw;max-width:100vw;max-height:calc(100dvh - env(safe-area-inset-top));margin:auto 0 0;padding:54px 18px calc(22px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}
  .profile-modal .profile-form{gap:16px}
  .profile-modal .profile-photo-preview,.profile-modal .profile-photo-preview :is(.presence-avatar,.avatar){width:90px;height:90px;min-width:90px;flex-basis:90px}
  .profile-modal .profile-name{font-size:23px}
  .profile-modal .profile-photo-pick{min-height:44px}
  .profile-modal .profile-form textarea{min-height:120px}
  .profile-modal .profile-settings.icon-settings{grid-template-columns:repeat(5,minmax(0,54px));gap:10px;width:100%;min-width:0}
  .profile-modal .profile-settings.icon-settings .setting-card{box-sizing:border-box;width:100%;max-width:54px}
  .profile-modal .profile-save{min-height:50px}
}
@media(max-width:360px){
  html[data-academy-design="cuban"] .profile-modal{padding-inline:15px}
  .profile-modal .profile-settings.icon-settings{gap:6px}
  html[data-academy-design="cuban"] .profile-modal .profile-settings.icon-settings .setting-card{height:50px;min-height:50px;border-radius:13px}
}
/* Shared photo choices: compact on desktop and four generous columns on phones. */
.profile-modal .profile-presets{border:1px solid #d8e2f2;border-radius:18px;background:#f8fbff;padding:14px;margin:0;min-width:0}
.profile-modal .profile-presets[hidden]{display:none}
.profile-modal .profile-presets legend{color:#153b70;font-size:13px;font-weight:700;padding:0 6px}
.profile-modal .profile-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.profile-modal .profile-preset-grid button{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;border:2px solid transparent;border-radius:14px;background:transparent;padding:6px 3px;color:#193759;font:inherit;font-size:11px;line-height:1.3;cursor:pointer}
.profile-modal .profile-preset-grid img{display:block;width:64px;height:auto;max-width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid #cbd7e7}
.profile-modal .profile-preset-grid button:hover{background:#e9f1ff}
.profile-modal .profile-preset-grid button[aria-pressed=true]{border-color:#da1638;background:#fff1f3;color:#a90926}
.profile-modal .profile-preset-grid button:focus-visible{outline:3px solid #003da5;outline-offset:2px}
.profile-modal .profile-preset-pick{background:#fff5f6;color:#bd1030;border-color:#edbac5}
.profile-modal .profile-preset-pick:hover{background:#ffe5eb;border-color:#d81a3a}
@media(max-width:380px){.profile-modal .profile-preset-grid{gap:5px}.profile-modal .profile-preset-grid img{width:54px}.profile-modal .profile-photo-pick{font-size:12px;padding:8px 10px}}
