/* One field and sheet language for onboarding and account settings. */
.profile-field { width:100%; min-width:0; min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid transparent; border-radius:var(--radius-control); background:var(--surface-2); color:var(--text); font:inherit; font-size: var(--type-action); line-height:1.45; text-align:left; }
.profile-field span { min-width:0; overflow-wrap:anywhere; }
.profile-field .i { flex:none; color:var(--text-3); }
.profile-field.empty { color:var(--text-3); }
.profile-field:disabled { opacity:.5; }
input[data-enhanced][hidden], select[data-enhanced][hidden], .auth-date-field:has([data-enhanced]) .auth-date-placeholder, .auth-date-field:has([data-enhanced]) .auth-date-icon, .setup-date-field:has([data-enhanced]) .setup-date-placeholder { display:none!important; }
.profile-choice { width:min(440px,calc(100% - 24px)); max-height:calc(100dvh - max(24px,var(--sat)) - max(24px,var(--sab))); padding:20px; border:1px solid var(--line); border-radius:var(--radius-sheet); background:var(--surface-1,#10171f); color:var(--text); overflow:auto; box-sizing:border-box; }
.profile-choice::backdrop { background:var(--scrim); }
.profile-choice[open] { display:flex; flex-direction:column; gap:12px; }
.profile-choice [hidden] { display:none!important; }
.profile-choice h2 { font-size:var(--type-title); line-height:1.25; margin:0; }
.profile-choice h2:focus { outline:none; }
.profile-choice p { margin:0; font-size: var(--type-secondary); line-height:1.5; color:var(--text-3); }
.profile-choice .field-error { color:var(--danger,#ff686d); margin-top:8px; }
.profile-choice input, .profile-choice select { font:inherit; font-size: var(--type-action); color:var(--text); background:var(--surface-2); border:1px solid var(--line); min-height:48px; width:100%; min-width:0; border-radius:12px; padding:10px 12px; box-sizing:border-box; color-scheme:inherit; }
#choice-country { min-height:0; display:flex; flex-direction:column; gap:12px; }
#choice-results { overflow:auto; max-height:38dvh; min-height:96px; overscroll-behavior:contain; }
.country-option { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:48px; padding:12px; text-align:left; color:var(--text); font:inherit; font-size: var(--type-action); border-radius:12px; }
.country-option[aria-pressed=true] { background:var(--surface-2); color: var(--link); }
.country-code { flex:none; min-width:24px; font-size: var(--type-small); color:var(--text-3); text-align:center; }
.choice-date-grid { display:grid; grid-template-columns:.8fr 1.5fr 1fr; gap:8px; }
.choice-date-grid label { min-width:0; font-size: var(--type-caption); color:var(--text-3); }
.choice-date-grid select { margin-top:6px; padding-inline:6px; }
.choice-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.choice-actions .btn { font-size: var(--type-action); min-height:48px; padding:12px; }
.field-error { margin:0; font-size: var(--type-caption); line-height:1.4; color:var(--danger,#ff686d); }
[aria-invalid=true]:not(form) { border-color:var(--danger,#ff686d)!important; }
#auth-consent-field { font-size: var(--type-secondary); line-height:1.5; }
#auth-consent-field input { flex:none; margin-top:3px; }
.auth-legal-button { min-height:44px; text-align:left; text-decoration:underline; text-underline-offset:3px; color: var(--link); font-size: var(--type-secondary); }
.auth-legal-copy { white-space:pre-wrap; overflow-wrap:anywhere; font-size: var(--type-secondary); line-height:1.65; }
.auth-progress { font-size: var(--type-caption); color:var(--text-3); margin:0; }
#auth-email-code { scroll-margin-block:24px; }
.method-note { font-size: var(--type-caption); color:var(--text-3); line-height:1.5; margin:0; }
#methods-list p { overflow-wrap:anywhere; }
#methods-cancel { width:100%; }
@media(max-width:360px) { .profile-choice { padding:20px 16px; } .choice-date-grid { gap:6px; } }

.safety-content { display:flex; flex-direction:column; gap:14px; min-width:0; }
.safety-content p { overflow-wrap:anywhere; }
.safety-block-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.safety-block-row span { min-width:0; overflow-wrap:anywhere; }
.st-cm:has(button) { flex-wrap:wrap; }
.st-cm > button { margin-left:auto; min-height:44px; }

#safety-dialog .choice-header { display:flex; align-items:flex-start; gap:12px; }
#safety-dialog .choice-header h2 { flex:1; min-width:0; margin:0; }
#safety-dialog .choice-header .icon-btn { flex:none; width:44px; height:44px; }

.profile-choice > .error:empty, .profile-choice > p:empty { display:none; }
.choice-actions { position: sticky; bottom: -20px; padding-block: 12px; margin-bottom: -12px; background: var(--surface); flex-shrink: 0; }
.safety-content > .btn { justify-content: flex-start; text-align: left; min-height: 48px; font-size: var(--type-body); font-weight: 400; }

.safety-content:has(> .danger) { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.safety-content:has(> .danger) > p { grid-column: 1 / -1; }
.safety-content:has(> .danger) > .btn { justify-content: center; text-align: center; }

#safety-dialog .choice-header { position: sticky; top: -20px; background: var(--surface); z-index: 2; }
