/* Persönliches Profil · ergänzende, auf /settings begrenzte Gestaltung.
   Keine neuen Freigabewerte, keine JavaScript-Abhängigkeit, keine Änderung an Formularaktionen. */
.profile-settings-page .task-header--illustrated {
  max-width: 990px;
  grid-template-columns: minmax(110px, 144px) minmax(0, 1fr);
  gap: clamp(19px, 3.1vw, 39px);
  margin-bottom: clamp(24px, 3.6vw, 42px);
}
.profile-settings-page .task-header--illustrated .editorial-heading__art {
  width: 132px;
  height: 120px;
}
.profile-settings-page .task-header--illustrated .rfu-motif {
  width: 120px;
  height: 105px;
}
.profile-settings-page .task-header--illustrated h1 {
  font-size: clamp(36px, 4vw, 51px);
  line-height: 1.13;
}
.profile-settings-page .task-header--illustrated .task-intro {
  max-width: 63ch;
  color: var(--muted);
}
.profile-settings-page .settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(315px, .75fr);
  align-items: start;
  gap: clamp(16px, 2.5vw, 28px);
}
.profile-settings-page .settings-layout > *,
.profile-settings-page .settings-side,
.profile-settings-page .settings-side > * {
  min-width: 0;
}
.profile-settings-page .settings-panel {
  background: var(--paper);
  border-color: var(--line);
}
.profile-settings-page .profile-form-heading {
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 24px;
}
.profile-settings-page .profile-form-heading h2 {
  margin: 0 0 8px;
  font: 400 clamp(27px, 2.6vw, 33px)/1.17 var(--serif);
  letter-spacing: -.035em;
}
.profile-settings-page .profile-form-heading p {
  margin: 0;
  max-width: 61ch;
  font: 400 14px/1.65 var(--sans);
}
.profile-settings-page .settings-side {
  display: grid;
  align-content: start;
  gap: 15px;
}
.profile-settings-page .account-control {
  background: rgba(255, 250, 243, .74);
  border: 1px solid var(--line);
  padding: clamp(19px, 2.5vw, 27px);
}
.profile-settings-page .account-control > h2 {
  margin: 0 0 9px;
  font: 400 clamp(24px, 2.2vw, 29px)/1.2 var(--serif) !important;
  letter-spacing: -.03em;
}
.profile-settings-page .account-control > .muted-copy {
  color: var(--muted);
  font: 400 14px/1.65 var(--sans);
  margin: 0 0 19px;
  max-width: 46ch;
}
/* Eine Reihe zeigt eindeutigen Aktionsnamen und Zusatzinformation.
   Keine langen rot unterstrichenen Textzeilen. */
.profile-settings-page .profile-action-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 68px;
  margin: 0;
  padding: 14px 2px;
  border-top: 1px solid var(--line);
  color: var(--ink);
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: background-color .15s ease;
}
.profile-settings-page .profile-action-row:last-of-type {
  border-bottom: 1px solid var(--line);
}
.profile-settings-page .profile-action-row:hover {
  background-color: rgba(213, 221, 212, .24);
}
.profile-settings-page .profile-action-row:focus-visible {
  outline: 3px solid var(--rust-dark);
  outline-offset: 3px;
}
.profile-settings-page .profile-action-row__icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  color: var(--green);
  border: 1px solid rgba(36, 74, 66, .18);
  background: rgba(213, 221, 212, .3);
  border-radius: 5px;
}
.profile-settings-page .profile-action-row__icon svg {
  width: 19px;
  height: 19px;
}
.profile-settings-page .profile-action-row__copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.profile-settings-page .profile-action-row__copy strong {
  color: var(--ink);
  font: 650 14px/1.45 var(--sans);
}
.profile-settings-page .profile-action-row__copy small {
  color: var(--muted);
  font: 400 12px/1.5 var(--sans);
}
.profile-settings-page .profile-action-row__arrow {
  color: var(--green);
  font-size: 19px;
  line-height: 1;
  align-self: center;
}
/* Passwortänderung als sekundäre Offenlegung, ohne eigene rot unterstrichene Linkzeile. */
.profile-settings-page .profile-inline-disclosure {
  padding: 0 14px;
  margin: 15px 0 0;
  background: rgba(255,255,255,.38);
  border-color: var(--line);
}
.profile-settings-page .profile-inline-disclosure > summary {
  color: var(--green);
  font: 600 14px/1.45 var(--sans);
  line-height: 1.45;
  min-height: 48px;
  padding: 13px 0;
  overflow-wrap: break-word;
}
.profile-settings-page .profile-inline-disclosure > .form-grid { padding-bottom: 18px; }
.profile-settings-page .profile-inline-disclosure > summary:focus-visible {
  outline: 3px solid var(--rust-dark);
  outline-offset: 4px;
}
.profile-settings-page .account-inline-action {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.profile-settings-page .account-inline-action .form-grid { margin: 0; }
.profile-settings-page .account-inline-action .button {
  width: 100%;
  max-width: 100%;
  justify-content: center;
  text-align: center;
  white-space: normal;
  background: transparent;
  color: var(--green);
  border: 1px solid var(--line);
  min-height: 46px;
  line-height: 1.4;
}
.profile-settings-page .account-inline-action .button:hover {
  background: rgba(213, 221, 212, .35);
}
/* Irreversible Vorgänge sind optisch abgegrenzt, bleiben aber unaufgeregt. */
.profile-settings-page .profile-danger {
  border-top: 2px solid var(--rust-dark);
}
.profile-settings-page .profile-danger > h2 { color: var(--ink); }
.profile-settings-page .profile-danger .danger-disclosure > summary {
  color: var(--rust-dark);
}
.profile-settings-page .profile-danger .form-grid { min-width: 0; }
.profile-settings-page .profile-consent {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  min-width: 0;
  margin: 13px 0 12px;
  padding: 16px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.52);
  border-radius: 4px;
  cursor: pointer;
}
.profile-settings-page .profile-consent:focus-within {
  outline: 2px solid var(--green);
  outline-offset: 3px;
}
.profile-settings-page .profile-consent input[type="checkbox"] {
  width: 21px;
  height: 21px;
  flex: 0 0 21px;
  margin: 1px 0 0;
  accent-color: var(--green);
}
.profile-settings-page .profile-consent span {
  min-width: 0;
  display: grid;
  gap: 4px;
}
.profile-settings-page .profile-consent strong {
  font: 600 14px/1.5 var(--sans);
  color: var(--ink);
}
.profile-settings-page .profile-consent small {
  font: 400 12px/1.6 var(--sans);
  color: var(--muted);
}
.profile-settings-page .profile-delete-review {
  border-top: 1px solid var(--line);
  padding-top: 19px;
  margin-top: 21px;
  min-width: 0;
}
.profile-settings-page .profile-delete-review h3 {
  margin: 0 0 8px;
  color: var(--ink);
  font: 600 16px/1.4 var(--sans);
  letter-spacing: 0;
}
.profile-settings-page .profile-delete-review > p {
  font: 400 13px/1.65 var(--sans);
  margin: 0 0 13px;
  color: var(--muted);
}
.profile-settings-page .profile-delete-review > .form-grid { margin: 0; }
.profile-settings-page .profile-delete-review .notice-message { margin-top: 14px; }
.profile-settings-page .profile-delete-review .button,
.profile-settings-page .profile-danger .button { max-width: 100%; white-space: normal; line-height: 1.4; }
.profile-settings-page .settings-side .subline {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  overflow-wrap: anywhere;
}
.profile-settings-page .settings-side .subline .form-grid { margin: 0; }

@media (max-width: 950px) {
  .profile-settings-page .settings-layout { grid-template-columns: minmax(0, 1fr); }
  .profile-settings-page .settings-side { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .profile-settings-page .profile-danger { grid-column: auto; }
}
@media (max-width: 640px) {
  .profile-settings-page .task-header--illustrated {
    grid-template-columns: minmax(0,1fr);
    gap: 12px;
    margin-bottom: 22px;
  }
  .profile-settings-page .task-header--illustrated .editorial-heading__art {
    width: 80px;
    height: 73px;
  }
  .profile-settings-page .task-header--illustrated .rfu-motif {
    width: 72px;
    height: 64px;
  }
  .profile-settings-page .settings-side { grid-template-columns: minmax(0,1fr); }
  .profile-settings-page .profile-form-heading { padding-bottom: 17px; margin-bottom: 19px; }
  .profile-settings-page .account-control { padding: 18px; }
  .profile-settings-page .profile-consent { padding: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .profile-settings-page .profile-action-row { transition: none; }
}

/* Profil-Rhythmus: dezenter Abgleich mit den bestehenden Formularseiten.
   Kein separates Navigationssystem, keine neuen Farbflaechen oder Karten. */
.profile-settings-page .settings-panel .form-section {
  padding-top: clamp(26px, 2.4vw, 30px);
  padding-bottom: clamp(27px, 2.5vw, 32px);
}
.profile-settings-page .settings-panel .form-section:first-of-type { padding-top: 6px; }
.profile-settings-page .settings-panel .form-section-header { margin-bottom: 18px; }
.profile-settings-page .settings-panel .form-section-header h3 {
  font-size: clamp(26px, 2.3vw, 31px);
}
.profile-settings-page .settings-panel .form-field textarea { max-width: 100%; }
.profile-settings-page .profile-action-row { min-height: 64px; }
@media (max-width: 640px) {
  .profile-settings-page .settings-panel .form-section {
    padding-top: 25px;
    padding-bottom: 27px;
  }
}

/* Freiwillige Länderangaben: native Auswahl als Fallback, gestaltete Auswahl bei JavaScript. */
.profile-settings-page .profile-country-groups { display: grid; gap: 20px; }
.profile-settings-page .profile-country-group {
  padding: clamp(15px, 2vw, 21px);
  border: 1px solid var(--line);
  border-radius: 5px;
  background: rgba(255, 255, 255, .36);
  min-width: 0;
}
.profile-settings-page .profile-country-field { margin: 0 0 12px; }
.profile-settings-page .profile-country-field > label { display: block; margin-bottom: 10px; }
.profile-settings-page .profile-country-select-wrap { position: relative; }
.profile-settings-page .profile-country-select-wrap select {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 50px;
  padding: 10px 42px 10px 47px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--paper);
  color: var(--ink);
  font: 500 15px/1.45 var(--sans);
  cursor: pointer;
}
.profile-settings-page .profile-country-select-wrap select:focus-visible {
  outline: 3px solid var(--green);
  outline-offset: 2px;
}
.profile-settings-page .profile-country-select-wrap select[aria-invalid="true"] {
  border-color: var(--rust-dark);
}
.profile-settings-page .profile-country-select-icon {
  display: flex;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--green);
}
.profile-settings-page .profile-country-select-icon .ui-icon { width: 21px; height: 21px; }
.profile-settings-page .profile-country-group .preference-row { margin: 0; }
.profile-country-value { display: inline-flex !important; align-items: center; gap: 9px; }
.profile-country-flag { font: 400 23px/1 sans-serif !important; letter-spacing: 0; }
@media (max-width: 640px) {
  .profile-settings-page .profile-country-groups { gap: 14px; }
  .profile-settings-page .profile-country-group { padding: 14px; }
  .profile-settings-page .profile-country-select-wrap select { font-size: 16px; }
}


/* Länderauswahl als ruhiges, kompaktes Menü statt des großen System-Popups.
   Farbwerte und Typografie folgen dem bestehenden Surrobonds-Designsystem. */
.profile-settings-page .profile-country-select-wrap.is-enhanced > select,
.profile-settings-page .profile-country-select-wrap.is-enhanced > .profile-country-select-icon {
  display: none !important;
}
.profile-settings-page .profile-country-select-wrap.is-enhanced { isolation: isolate; }
.profile-settings-page .profile-country-select-wrap.is-open { z-index: 30; }
.profile-settings-page .profile-country-trigger {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 26px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 60px;
  padding: 8px 14px 8px 10px;
  border: 1px solid rgba(35, 58, 50, .26);
  border-radius: 8px;
  background: #fffdfa;
  color: var(--ink);
  font: 550 15px/1.4 var(--sans);
  text-align: left;
  cursor: pointer;
  transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
  appearance: none;
}
.profile-settings-page .profile-country-trigger:hover { border-color: var(--green); background: #fbfaf5; }
.profile-settings-page .profile-country-trigger:focus-visible {
  outline: 3px solid var(--rust-dark);
  outline-offset: 3px;
}
.profile-settings-page .profile-country-select-wrap.is-open > .profile-country-trigger {
  border-color: var(--green);
  box-shadow: 0 0 0 2px rgba(41, 69, 59, .10);
}
.profile-settings-page .profile-country-trigger[aria-invalid="true"] { border-color: var(--rust-dark); }
.profile-settings-page .profile-country-trigger__leading {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(35,58,50,.12);
  border-radius: 7px;
  background: #edf1e9;
  color: var(--green);
  font: 400 25px/1 sans-serif;
}
.profile-settings-page .profile-country-trigger__leading .ui-icon { width: 21px; height: 21px; }
.profile-settings-page .profile-country-trigger__text { min-width: 0; overflow-wrap: anywhere; }
.profile-settings-page .profile-country-trigger__chevron {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  color: var(--green);
  transition: transform .16s ease;
}
.profile-settings-page .profile-country-trigger__chevron svg { width: 20px; height: 20px; }
.profile-settings-page .profile-country-select-wrap.is-open .profile-country-trigger__chevron { transform: rotate(180deg); }
.profile-settings-page .profile-country-menu {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  left: 0;
  z-index: 31;
  box-sizing: border-box;
  overflow-y: auto;
  overscroll-behavior: contain;
  max-height: 324px;
  padding: 6px;
  border: 1px solid rgba(35, 58, 50, .22);
  border-radius: 9px;
  background: #fffdfa;
  box-shadow: 0 17px 36px rgba(25, 41, 34, .15), 0 2px 8px rgba(25, 41, 34, .06);
  scrollbar-width: thin;
  scrollbar-color: rgba(41,69,59,.35) transparent;
}
.profile-settings-page .profile-country-menu[hidden] { display: none !important; }
.profile-settings-page .profile-country-select-wrap.is-upward .profile-country-menu {
  top: auto;
  bottom: calc(100% + 7px);
}
.profile-settings-page .profile-country-menu__heading {
  position: sticky;
  top: -6px;
  z-index: 1;
  padding: 10px 13px 11px;
  border-bottom: 1px solid var(--line);
  background: #fffdfa;
  color: var(--muted);
  font: 600 12px/1.35 var(--sans);
}
.profile-settings-page .profile-country-option {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr) 24px;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 5px 10px;
  border-radius: 5px;
  color: var(--ink);
  font: 500 14px/1.35 var(--sans);
  cursor: pointer;
}
.profile-settings-page .profile-country-option--empty {
  margin-bottom: 7px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
}
.profile-settings-page .profile-country-option.is-active,
.profile-settings-page .profile-country-option:hover { background: #f2f3ed; }
.profile-settings-page .profile-country-option.is-selected {
  background: #e8eee6;
  color: var(--green);
  font-weight: 650;
}
.profile-settings-page .profile-country-option.is-selected.is-active { background: #dfe9dc; }
.profile-settings-page .profile-country-option__flag {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 5px;
  background: rgba(41,69,59,.05);
  font: 400 23px/1 sans-serif;
}
.profile-settings-page .profile-country-option__flag .ui-icon { width: 19px; height: 19px; color: var(--green); }
.profile-settings-page .profile-country-option__name { min-width: 0; overflow-wrap: anywhere; }
.profile-settings-page .profile-country-option__check {
  display: grid;
  place-items: center;
  opacity: 0;
  color: var(--green);
}
.profile-settings-page .profile-country-option.is-selected .profile-country-option__check { opacity: 1; }
.profile-settings-page .profile-country-option__check svg { width: 18px; height: 18px; }
@media (max-width: 640px) {
  .profile-settings-page .profile-country-trigger { min-height: 58px; font-size: 16px; }
  .profile-settings-page .profile-country-option { min-height: 49px; font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .profile-settings-page .profile-country-trigger,
  .profile-settings-page .profile-country-trigger__chevron { transition: none; }
}
