/* Einstellungen (settings-page.js) – Muster Figma 171:11820: Seitenkopf, Karten mit Einstellungszeilen. Nur Layout + Tokens. */
.settings-page{display:flex;flex-direction:column;gap:var(--space-20);min-width:0}
.settings-page > .sw-tabs{align-self:flex-start}
.settings-page > .sw-pagehead{margin:0}

/* Aufbau: Sprungnavigation + Abschnitte; ab 1100 px links eine feste Spalte */
.settings-layout{display:flex;flex-direction:column;gap:var(--space-16);min-width:0}
.settings-sections,.settings-sections > [data-admin-profile-settings],.settings-admin-form{display:flex;flex-direction:column;gap:var(--space-16);min-width:0}
#settings-form.settings-admin-form{margin:0;padding:0;border:0}
.settings-sections [hidden]{display:none}
.settings-index{min-width:0;margin:0;padding:0;border:0;background:none;box-shadow:none;height:auto;min-height:0}
.settings-index__list{display:flex;gap:var(--space-8);margin:0 calc(var(--space-4) * -1);padding:var(--space-4);overflow-x:auto;list-style:none;scrollbar-width:none;overscroll-behavior-x:contain}
.settings-index__list::-webkit-scrollbar{display:none}
.settings-index__list > li{flex:none}
.settings-index__link{display:inline-flex;align-items:center;gap:var(--space-8);min-height:36px;padding:0 var(--space-12);border-radius:var(--radius-pill);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default);font:var(--font-small-medium);color:var(--text-secondary);text-decoration:none;white-space:nowrap}
.settings-index__link:hover{color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border-strong)}
.settings-index__link:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
@media (min-width:1100px){
  .settings-layout{display:grid;grid-template-columns:232px minmax(0,1fr);align-items:start;gap:var(--space-24)}
  .settings-index{position:sticky;top:var(--shell-sticky-top)}
  .settings-index__list{flex-direction:column;gap:var(--space-4);margin:0;padding:var(--space-8);overflow:visible;border-radius:var(--radius-2xl);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default)}
  .settings-index__link{display:flex;min-height:40px;padding:0 var(--space-12);border-radius:var(--radius-lg);background:none;box-shadow:none;white-space:normal}
  .settings-index__link:hover{background:var(--bg-surface-2);box-shadow:none}
}
@media (pointer:coarse),(max-width:834px){.settings-index__link{min-height:44px}}

/* Felder: Raster, das auf dem iPhone einspaltig wird */
.settings-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-16);min-width:0}
.settings-fields__wide,.settings-fields__note{grid-column:1 / -1}
.settings-fields__note{margin:0}
/* Schalterzeile mit zugehörigen Feldern: keine Trennlinie dazwischen */
.sw-setting-group > .sw-setting:has(+ .settings-fields){padding-bottom:0;box-shadow:none}
@media (min-width:640px){.settings-fields--indent{padding-left:calc(32px + var(--space-12))}}
.settings-hint{margin:0;font:var(--font-small);color:var(--text-secondary);overflow-wrap:break-word}
.settings-status{margin:0;font:var(--font-small);color:var(--text-secondary)}
.settings-status:empty{display:none}
.settings-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-8) var(--space-12)}
.settings-actions > .settings-hint{flex:1 1 220px}
.settings-actions--start{justify-content:flex-start}
.settings-form{display:flex;flex-direction:column;gap:var(--space-16);padding:var(--space-16) 0;box-shadow:inset 0 -1px 0 var(--border-default)}
.settings-form:first-child{padding-top:0}
.settings-form:last-child{padding-bottom:0;box-shadow:none}
.settings-form > .sw-setting-group{padding:0;box-shadow:none}

/* Erscheinungsbild: drei Auswahlkarten */
.settings-theme{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-12);min-width:0;margin:0;padding:0;border:0}
.settings-theme__option{position:relative;display:flex;align-items:center;gap:var(--space-12);min-width:0;padding:var(--space-14) var(--space-16);border-radius:var(--radius-xl);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default);cursor:pointer}
.settings-theme__option input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.settings-theme__option:has(input:checked){background:var(--brand-soft);box-shadow:inset 0 0 0 1.5px var(--brand-primary)}
.settings-theme__option:has(input:focus-visible){box-shadow:var(--shadow-focus)}
.settings-theme__icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border-radius:var(--radius-md);background:var(--bg-surface-2);color:var(--text-secondary)}
.settings-theme__option:has(input:checked) .settings-theme__icon{background:var(--bg-surface);color:var(--brand-soft-text)}
.settings-theme__text{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.settings-theme__text strong{font:var(--font-body-semibold);color:var(--text-primary)}
.settings-theme__text small{font:var(--font-small);color:var(--text-secondary)}

/* Aufklappbare Auswahl (Navigation, CapCut-Link) */
.settings-picker{border-radius:var(--radius-xl);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default)}
.settings-picker__summary{display:flex;align-items:center;gap:var(--space-12);min-height:44px;padding:var(--space-10) var(--space-16);font:var(--font-body-medium);color:var(--text-primary);cursor:pointer;list-style:none}
.settings-picker__summary::-webkit-details-marker{display:none}
.settings-picker__summary > span{flex:1;min-width:0}
.settings-picker__count{font:var(--font-small);color:var(--text-secondary)}
.settings-picker__chevron{flex:none;color:var(--text-tertiary);transition:transform .15s}
.settings-picker[open] .settings-picker__chevron{transform:rotate(180deg)}
.settings-picker__summary:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-xl)}
.settings-picker > :not(summary){margin:0 var(--space-16) var(--space-16)}
.settings-picker__options{display:flex;flex-direction:column}
.settings-picker__options .sw-setting{padding:var(--space-10) 0}

/* Status-Chips (Text und Zustand setzt app.js: is-ready / is-error) */
.settings-chip{display:inline-flex;align-items:center;min-height:24px;padding:var(--space-3) var(--space-10);border-radius:var(--radius-pill);background:var(--bg-surface-2);font:var(--font-small-medium);color:var(--text-secondary);white-space:nowrap}
.settings-chip.is-ready{background:var(--status-success-soft);color:var(--status-success)}
.settings-chip.is-error{background:var(--status-danger-soft);color:var(--status-danger)}

/* Google-Drive-Verbindung */
.settings-readiness{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-12);padding:var(--space-14) var(--space-16);border-radius:var(--radius-xl);background:var(--bg-surface-2)}
.settings-readiness .connection-dot{flex:none;width:10px;height:10px;border-radius:var(--radius-pill);background:var(--status-warning)}
.settings-readiness .connection-dot.is-connected{background:var(--status-success)}
.settings-readiness .connection-dot.is-error{background:var(--status-danger)}
.settings-readiness .connection-dot.is-unconfigured{background:var(--border-strong)}
.settings-readiness__text{display:flex;flex:1 1 240px;flex-direction:column;gap:var(--space-3);min-width:0}
.settings-readiness__text strong{font:var(--font-body-semibold);color:var(--text-primary)}
.settings-readiness__text small{font:var(--font-small);color:var(--text-secondary)}
.settings-readiness > .settings-actions{flex:1 1 100%}

/* Ordnerplan-Vorschau (Einträge rendert app.js) */
.settings-folder-plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-10)}
.settings-folder-plan > article{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;padding:var(--space-12) var(--space-14);border-radius:var(--radius-lg);background:var(--bg-surface-2);font:var(--font-small);color:var(--text-secondary);overflow-wrap:break-word}
.settings-folder-plan > article strong{font:var(--font-small-semibold);color:var(--text-primary)}
.settings-folder-plan a{color:var(--text-brand)}

/* Speichern: rechts in der Titelzeile des offenen Bereichs (showSettingsSection hängt die Leiste dort ein) */
.settings-savebar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-8) var(--space-12);margin-left:auto;min-width:0}
.settings-savebar > .settings-status{flex:0 1 320px;text-align:right}
.settings-savebar > .settings-status:empty{display:none}
@media (max-width:640px){.settings-savebar{width:100%;justify-content:flex-start}.settings-savebar > .settings-status{text-align:left}}

/* Wochenziel je Account */
.settings-account-goals{display:flex;flex-direction:column;gap:var(--space-12)}
.settings-account{display:flex;flex-direction:column;gap:var(--space-14);min-width:0;padding:var(--space-16);border-radius:var(--radius-xl);box-shadow:inset 0 0 0 1px var(--border-default)}
.settings-account__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-12)}
.settings-account__name{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.settings-account__name strong{font:var(--font-body-semibold);color:var(--text-primary);overflow-wrap:break-word}
.settings-account__name small{font:var(--font-small);color:var(--text-secondary);overflow-wrap:break-word}
.settings-account__goal{display:flex;align-items:center;gap:var(--space-8)}
.settings-account__goal .sw-input{width:88px}
.settings-account__goal small{font:var(--font-small);color:var(--text-secondary);white-space:nowrap}
.settings-account__goal--ziele{flex-wrap:wrap;justify-content:flex-end}
.settings-account__goal--ziele small{white-space:normal}
.settings-account__link{font:var(--font-small-medium);color:var(--text-brand)}
.settings-account > .sw-setting{padding:0;box-shadow:none}
.settings-fields--compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}

/* Verknüpfte Social-Profile */
.settings-social-list{display:flex;flex-direction:column;gap:var(--space-8)}
.settings-social{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-8) var(--space-16);padding:var(--space-12) var(--space-14);border-radius:var(--radius-lg);background:var(--bg-surface-2)}
.settings-social__name{font:var(--font-small-semibold);color:var(--text-primary)}
.settings-social__profiles{display:flex;flex-wrap:wrap;gap:var(--space-6)}
.settings-social__profile{display:inline-flex;align-items:center;gap:var(--space-6);min-height:28px;padding:var(--space-3) var(--space-10);border-radius:var(--radius-pill);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default);font:var(--font-small-medium);color:var(--text-primary);text-decoration:none}
.settings-social__profile:hover{box-shadow:inset 0 0 0 1px var(--border-strong)}
@media (pointer:coarse),(max-width:834px){.settings-social__profile{min-height:44px}}

/* Zugangskarten (Team & Zugänge) */
.settings-employees{display:flex;flex-direction:column;gap:var(--space-12)}
.settings-employee{min-width:0;border-radius:var(--radius-xl);background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border-default)}
.settings-employee[open]{box-shadow:inset 0 0 0 1.5px var(--brand-primary)}
.settings-employee__summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4) var(--space-12);padding:var(--space-14) var(--space-16);cursor:pointer;list-style:none;border-radius:var(--radius-xl)}
.settings-employee__summary::-webkit-details-marker{display:none}
.settings-employee__summary:hover{background:var(--bg-surface-2)}
.settings-employee__summary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
.settings-employee__text{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.settings-employee__text strong{font:var(--font-body-semibold);color:var(--text-primary);overflow-wrap:break-word}
.settings-employee__text small{font:var(--font-small);color:var(--text-secondary);overflow-wrap:break-word}
.settings-employee__meta:empty{display:none}
.settings-employee[open] .settings-picker__chevron{transform:rotate(180deg)}
.settings-employee__body{display:flex;flex-direction:column;gap:var(--space-16);min-width:0;padding:var(--space-4) var(--space-16) var(--space-16);box-shadow:inset 0 1px 0 var(--border-default)}
.settings-employee__tools{padding-top:var(--space-12)}
.settings-employee__body > .sw-setting{padding:0;box-shadow:none}
@media (max-width:520px){.settings-employee__summary{grid-template-columns:auto minmax(0,1fr) auto}.settings-employee__status{grid-column:2;grid-row:2}}
.settings-checks{display:flex;flex-direction:column;gap:var(--space-8);min-width:0;margin:0;padding:0;border:0}
.settings-checks[hidden]{display:none}
.settings-checks__legend{margin-bottom:var(--space-8);padding:0;font:var(--font-small-medium);color:var(--text-primary)}
.settings-checks__list{display:flex;flex-wrap:wrap;gap:var(--space-8) var(--space-16)}
.settings-checks__list--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.settings-check{display:inline-flex;align-items:center;gap:var(--space-8);min-width:0;font:var(--font-small);color:var(--text-primary);cursor:pointer}
.settings-check:has(input:disabled){color:var(--text-tertiary);cursor:default}
@media (pointer:coarse),(max-width:834px){.settings-check{min-height:44px}}

/* Mein Profil (profile-page.js): zwei Spalten ab 1100 px */
.profile-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-16);min-width:0}
@media (min-width:1100px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
.profile-identity{display:flex;align-items:center;gap:var(--space-14);min-width:0}
.profile-identity__text{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.profile-identity__name{margin:0;font:var(--font-h3);color:var(--text-primary);overflow-wrap:break-word}
.profile-identity__email{margin:0;font:var(--font-small);color:var(--text-secondary);overflow-wrap:break-word}
.profile-details{display:flex;flex-direction:column;margin:var(--space-16) 0 0;padding:0}
.profile-details__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4) var(--space-16);padding:var(--space-12) 0;box-shadow:inset 0 1px 0 var(--border-default)}
.profile-details__row[hidden]{display:none}
.profile-details dt{font:var(--font-small);color:var(--text-secondary)}
.profile-details dd{margin:0;font:var(--font-body-medium);color:var(--text-primary);overflow-wrap:break-word}
.profile-permissions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-8) var(--space-16);margin:0;padding:0;list-style:none}
.profile-permissions__item{display:flex;align-items:flex-start;gap:var(--space-8);font:var(--font-small);color:var(--text-primary);overflow-wrap:break-word}
.profile-permissions__item > .sw-icon{flex:none;color:var(--status-success)}
.profile-permissions__item.is-empty{color:var(--text-secondary)}
/* Letzte Zeile vor leerem Status: keine Trennlinie */
.sw-card .sw-setting:has(+ .settings-status:empty:last-child){box-shadow:none}

/* Sprungziel aus der Kunden-Detailseite kurz hervorheben */
.is-focus-target{box-shadow:var(--shadow-focus);border-radius:var(--radius-xl);transition:box-shadow .3s}

/* Jeder Bereich ist eine eigene Seite: aktiver Link markiert, Speichern nur bei Abschnitten im gemeinsamen Formular */
.settings-index__link.is-active{background:var(--brand-soft);color:var(--brand-soft-text);box-shadow:inset 0 0 0 1px var(--brand-primary)}
@media (min-width:1100px){.settings-index__link.is-active{box-shadow:none}}
.settings-admin-form:not(:has(> .settings-section:not([hidden]))){display:none}
.settings-sections > [data-staff-profile-settings]:not(:has(> .settings-section:not([hidden]))){display:none}
.settings-sections > [data-admin-profile-settings]:not(:has(.settings-section:not([hidden]))){display:none}

/* Kunden-Accounts: aufklappbare Liste, letzter Punkt „Kunde hinzufügen“ */
.settings-customers,.settings-customers__list{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
.settings-customer__profiles{padding-top:var(--space-12)}
.settings-customer__link{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin:0;padding:0;border:0;min-width:0}
.settings-customer__link > .sw-select{flex:0 1 180px}
.settings-customer__link > .sw-input{flex:1 1 220px}
.settings-customer-add__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-soft-text)}
.settings-customer-add .account-add-form{padding-top:var(--space-12)}

/* Rollen & Rechte (renderRoleMatrix): Rollen-Legende, Matrix mit fester erster Spalte beim Querscrollen */
.settings-roles__legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:var(--space-8);margin:0 0 var(--space-16);padding:0;list-style:none}
.settings-roles__legend li{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-6);padding:var(--space-12);border-radius:var(--radius-xl);box-shadow:inset 0 0 0 1px var(--border-default)}
.settings-roles__legend small{font:var(--font-small);color:var(--text-secondary)}
.settings-roles__table{margin-bottom:var(--space-12)}
.settings-roles__table .sw-table__th:not(:first-child),.settings-roles__table .sw-table__td:not(:first-child){text-align:center}
.settings-roles__table .sw-table__rowhead{position:sticky;left:0;z-index:1;background:var(--bg-surface)}
.settings-roles__table .sw-table__row:last-child .sw-table__rowhead{border-bottom-left-radius:var(--radius-2xl)}
.settings-roles__permission{display:flex;flex-direction:column;gap:var(--space-3);min-width:12rem}
.settings-roles__permission code{font:var(--font-tiny);color:var(--text-secondary)}
.settings-roles__mark{display:inline-flex;align-items:center;justify-content:center;width:var(--space-24);height:var(--space-24);border-radius:var(--radius-pill);color:var(--text-secondary)}
.settings-roles__mark.is-on{background:var(--status-success-soft);color:var(--status-success)}

@media (max-width:767px){.settings-roles__permission{min-width:8rem}}
