/* TaskDay Настройки — Figma 17–22 (desktop), M15, M36–M40 (mobile). */
#tdSettingsPage { font-family: var(--td-font-sans); }
#tdSettingsPage .td-sp-head { display: flex; align-items: flex-start; gap: 16px; margin: 0 0 18px !important; padding: 0 !important; }
.tdsp-eyebrow { margin: 0 0 8px !important; font: var(--td-fw-semibold) 11px/14px var(--td-font-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--td-color-text-secondary); }
#tdSettingsPage .td-sp-head h1 { margin: 0 0 12px !important; font: var(--td-fw-semibold) 26px/34px var(--td-font-sans) !important; color: var(--td-color-text-heading) !important; }
#tdSettingsPage .td-sp-sub { margin: 0 !important; font: var(--td-fw-regular) 13px/18px var(--td-font-sans) !important; color: var(--td-color-text-secondary) !important; }
#tdSettingsPage .td-sp-badge { display: none !important; }
#tdSettingsPage .td-sp-tabs { display: flex !important; gap: 4px; padding: 4px !important; margin: 0 0 18px !important; border: 0 !important; border-radius: 10px !important; background: var(--td-color-bg-surface) !important; box-shadow: 0 0 0 1px var(--td-color-border-default) inset; overflow-x: auto; }
#tdSettingsPage .td-sp-tab { flex: 1 0 auto; height: 32px !important; padding: 0 14px !important; border: 0 !important; border-radius: 8px !important; background: transparent !important; color: var(--td-color-text-primary) !important; font: var(--td-fw-medium) 12px/16px var(--td-font-sans) !important; box-shadow: none !important; cursor: pointer; }
#tdSettingsPage .td-sp-tab.is-on, #tdSettingsPage .td-sp-tab[aria-selected="true"] { background: var(--td-color-daily-subtle) !important; color: var(--td-color-text-heading) !important; }
#tdSettingsPage .td-sp-layout { gap: 18px !important; }
#tdSettingsPage .td-sp-card { padding: 20px 18px !important; border: 0 !important; box-shadow: none !important; background: var(--td-color-bg-surface) !important; border-radius: var(--td-corner-card-main-left) !important; }
#tdSettingsPage .td-sp-card h2 { font: var(--td-fw-semibold) 18px/24px var(--td-font-sans) !important; color: var(--td-color-text-heading) !important; }
#tdSettingsPage .td-sp-hint, #tdSettingsPage .td-sp-muted { color: var(--td-color-text-secondary) !important; }
#tdSettingsPage .td-sp-side-card { padding: 18px 16px !important; border: 0 !important; box-shadow: none !important; background: var(--td-color-bg-surface) !important; border-radius: var(--td-corner-card-side-right) !important; }
#tdSettingsPage .td-sp-side-card.is-accent { background: var(--td-color-success-subtle) !important; }
#tdSettingsPage .td-sp-side-card.is-accent-blue { background: var(--td-color-daily-subtle) !important; }
#tdSettingsPage .td-sp-side-link { color: var(--td-color-accent) !important; font-weight: var(--td-fw-medium) !important; }
#tdSettingsPage .td-sp-primary { height: 36px !important; padding: 0 16px !important; border: 0 !important; border-radius: var(--td-corner-button-left) !important; background: var(--td-color-accent) !important; color: #fff !important; font: var(--td-fw-semibold) 12px/16px var(--td-font-sans) !important; box-shadow: none !important; }
#tdSettingsPage .td-sp-secondary { height: 36px !important; border: 0 !important; background: transparent !important; color: var(--td-color-text-secondary) !important; font: var(--td-fw-medium) 12px/16px var(--td-font-sans) !important; box-shadow: none !important; }
#tdSettingsPage .td-sp-switch-row input[type="checkbox"] { appearance: none; -webkit-appearance: none; position: relative; flex: none; width: 30px; height: 16px; margin: 0; border-radius: 8px; background: var(--td-color-border-toggle-off, #c9cfdc); cursor: pointer; transition: background .15s; }
#tdSettingsPage .td-sp-switch-row input[type="checkbox"]::after { content: ""; position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; border-radius: 50%; background: #fff; transition: transform .15s; }
#tdSettingsPage .td-sp-switch-row input[type="checkbox"]:checked { background: var(--td-color-accent); }
#tdSettingsPage .td-sp-switch-row input[type="checkbox"]:checked::after { transform: translateX(14px); }
#tdSettingsPage .td-sp-segmented button[aria-pressed="true"] { background: var(--td-color-accent-subtle) !important; color: var(--td-color-accent) !important; }
.tdsp-me { display: none; }
.tdsp-admin-row { display: none !important; }
body[data-admin="true"] .tdsp-admin-row { display: flex !important; }
.tdsp-logout { display: none; }
/* account modal */
#accountModal .modal, .account-modal, #accountModal [role="dialog"] { border-radius: var(--td-corner-sheet, 20px) !important; }
@media (max-width: 1024px) {
  html body.td-settings-page-open #appTopbar { display: none !important; }
  html body #tdSettingsPage:not([hidden]) { padding: calc(env(safe-area-inset-top, 0px) + 8px) 16px calc(110px + env(safe-area-inset-bottom, 0px)) !important; background: transparent !important; }
  #tdSettingsPage .td-sp-head { position: relative; align-items: center; justify-content: center; min-height: 44px; margin: 0 0 14px !important; }
  #tdSettingsPage .td-sp-back { position: absolute; left: -6px; top: 0; display: inline-flex !important; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0 !important; background: transparent !important; color: var(--td-color-accent) !important; }
  #tdSettingsPage .td-sp-back svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; }
  #tdSettingsPage .td-sp-head-copy { text-align: center; }
  #tdSettingsPage .td-sp-head h1 { margin: 0 !important; font: var(--td-fw-semibold) 17px/22px var(--td-font-sans) !important; }
  .tdsp-eyebrow, #tdSettingsPage .td-sp-sub, #tdSettingsPage .td-sp-tabs, #tdSettingsPage .td-sp-side { display: none !important; }
  #tdSettingsPage .td-sp-layout { display: block !important; }
  #tdSettingsPage .td-sp-card { border-radius: 16px !important; padding: 16px !important; margin-bottom: 14px; }
  #tdSettingsPage .td-sp-card h2 { font-size: 13px !important; line-height: 16px !important; text-transform: uppercase; letter-spacing: .04em; color: var(--td-color-text-secondary) !important; font-weight: var(--td-fw-semibold) !important; }
  #tdSettingsPage .td-sp-switch-row input[type="checkbox"] { width: 44px; height: 26px; border-radius: 13px; }
  #tdSettingsPage .td-sp-switch-row input[type="checkbox"]::after { width: 20px; height: 20px; top: 3px; left: 3px; }
  #tdSettingsPage .td-sp-switch-row input[type="checkbox"]:checked::after { transform: translateX(18px); }
  #tdSettingsPage .td-sp-primary { height: 46px !important; border-radius: 12px !important; font-size: 15px !important; }
  /* M15 hub */
  #tdSettingsPage[data-tab="hub"] .td-sp-back { display: inline-flex !important; }
  .tdsp-me { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; padding: 16px; margin: 0 0 12px; border-radius: 16px 16px 24px 16px; background: var(--td-color-accent-subtle); }
  .tdsp-me-ava { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid var(--td-color-accent); color: var(--td-color-accent); font: var(--td-fw-semibold) 14px/1 var(--td-font-sans); background: var(--td-color-bg-surface); }
  .tdsp-me-copy { display: flex; flex-direction: column; min-width: 0; }
  .tdsp-me-copy strong { font: var(--td-fw-semibold) 17px/22px var(--td-font-sans); color: var(--td-color-text-heading); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .tdsp-me-copy small { font: var(--td-fw-regular) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); }
  .tdsp-me-plan { padding: 3px 8px; border-radius: 8px; background: var(--td-color-daily-subtle); color: var(--td-color-daily); font: var(--td-fw-medium) 12px/16px var(--td-font-sans); }
  .tdsp-me-edit { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 8px; height: 40px; margin-top: 10px; border: 0; border-radius: 10px; background: var(--td-color-bg-surface); color: var(--td-color-text-heading); font: var(--td-fw-medium) 15px/20px var(--td-font-sans); cursor: pointer; }
  .tdsp-me-edit svg { width: 18px; height: 18px; color: var(--td-color-accent); }
  #tdSettingsPage .td-sp-hub { display: flex !important; flex-direction: column; gap: 0 !important; padding: 6px 0 !important; border-radius: 16px; background: var(--td-color-bg-surface); }
  #tdSettingsPage .td-sp-hub-item { display: flex; align-items: center; gap: 14px; min-height: 56px; padding: 6px 16px !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; text-align: left; }
  #tdSettingsPage .td-sp-hub-ico { width: 24px !important; height: 24px !important; background: transparent !important; color: var(--td-color-accent) !important; flex: none; }
  #tdSettingsPage .td-sp-hub-ico svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; }
  #tdSettingsPage .td-sp-hub-title { font: var(--td-fw-medium) 16px/21px var(--td-font-sans) !important; color: var(--td-color-text-heading) !important; }
  #tdSettingsPage .td-sp-hub-sub { font: var(--td-fw-regular) 13px/18px var(--td-font-sans) !important; color: var(--td-color-text-secondary) !important; }
  #tdSettingsPage .td-sp-hub-chev { width: 20px; height: 20px; margin-left: auto; fill: none; stroke: var(--td-color-text-heading); stroke-width: 2; }
  .tdsp-logout { display: flex; align-items: center; justify-content: center; width: 100%; height: 44px; margin-top: 14px; border: 1px solid var(--td-color-border-default); border-radius: 10px; background: var(--td-color-bg-surface); color: var(--td-color-text-heading); font: var(--td-fw-medium) 15px/20px var(--td-font-sans); cursor: pointer; }
}
#tdSettingsPage .td-sp-tabs { width: 100%; box-sizing: border-box; }
.tdsp-sec-row { display: flex; align-items: center; gap: 16px; padding: 14px 0; border-top: 1px solid var(--td-color-border-default); }
.tdsp-sec-row:first-of-type { margin-top: 12px; }
.tdsp-sec-row > span { flex: 1; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.tdsp-sec-row strong { font: var(--td-fw-medium) 13px/18px var(--td-font-sans); color: var(--td-color-text-heading); }
.tdsp-sec-row small { font: var(--td-fw-regular) 11px/15px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdsp-sec-btn { flex: none; height: 34px; padding: 0 14px; border: 1px solid var(--td-color-border-default); border-radius: 8px; background: var(--td-color-bg-surface); color: var(--td-color-text-heading); font: var(--td-fw-medium) 12px/16px var(--td-font-sans); cursor: pointer; }
.tdsp-sec-btn.is-danger { color: var(--td-color-danger); border-color: var(--td-color-danger-subtle); }
@media (max-width: 1024px) { .tdsp-sec-row { flex-direction: column; align-items: stretch; gap: 10px; } .tdsp-sec-btn { height: 42px; font-size: 15px; border-radius: 10px; } .tdsp-sec-row strong { font-size: 16px; } .tdsp-sec-row small { font-size: 13px; line-height: 18px; } }

/* Профиль: шапка (аватар + имя + email) — одна на весь профиль; карточка «Аккаунт и вход» — строки-действия */
.tdsp-acc-me { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; padding: 14px 16px; border-radius: 6px 20px 20px 20px; background: var(--td-color-accent-subtle); }
.tdsp-acc-ava { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--td-color-accent); color: var(--td-color-accent); font: var(--td-fw-semibold) 15px/1 var(--td-font-sans); }
.tdsp-acc-copy { display: flex; flex-direction: column; min-width: 0; }
.tdsp-acc-copy strong { font: var(--td-fw-semibold) 16px/22px var(--td-font-sans); color: var(--td-color-text-heading); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tdsp-acc-copy small { font: var(--td-fw-regular) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tdsp-acc-list { display: flex; flex-direction: column; margin-top: 8px; }
.tdsp-acc-row { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 56px; padding: 8px 0; border: 0; border-top: 1px solid var(--td-color-border-default); background: transparent; color: var(--td-color-text-heading); text-align: left; font: inherit; cursor: pointer; }
.tdsp-acc-list > .tdsp-acc-row:first-child { border-top: 0; }
.tdsp-acc-ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 4px 12px 12px 12px; background: var(--td-color-bg-subtle); color: var(--td-color-accent); }
.tdsp-acc-txt { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; white-space: normal !important; overflow-wrap: anywhere; }
#tdSettingsPage .tdsp-acc-row { white-space: normal !important; box-sizing: border-box; max-width: 100%; height: auto !important; }
.tdsp-acc-txt strong { font: var(--td-fw-medium) 14px/20px var(--td-font-sans); }
.tdsp-acc-txt small { font: var(--td-fw-regular) 12px/16px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdsp-acc-chev { flex: none; display: inline-flex; color: var(--td-color-text-secondary); transition: transform .18s ease; }
.tdsp-acc-row.is-open .tdsp-acc-chev { transform: rotate(180deg); }
.tdsp-acc-row:focus-visible { outline: 2px solid var(--td-color-accent); outline-offset: 2px; border-radius: 8px; }
.tdsp-acc-row.is-danger, .tdsp-acc-row.is-danger .tdsp-acc-txt strong { color: var(--td-color-danger); }
.tdsp-acc-row.is-danger .tdsp-acc-ico { background: var(--td-color-danger-subtle); color: var(--td-color-danger); }
.tdsp-acc-form, .tdsp-acc-confirm { display: flex; flex-direction: column; gap: 12px; margin: 0 0 12px; padding: 14px; border-radius: 4px 16px 16px 16px; background: var(--td-color-bg-subtle); }
.tdsp-acc-form[hidden], .tdsp-acc-confirm[hidden] { display: none !important; }
.tdsp-acc-form .td-sp-field { margin: 0; }
.tdsp-acc-form .td-sp-field input { width: 100%; box-sizing: border-box; min-height: 44px; }
.tdsp-acc-form .td-sp-field small.is-warn { color: var(--td-color-warning, #b86e00); }
.tdsp-acc-confirm { background: var(--td-color-danger-subtle); }
.tdsp-acc-confirm p { margin: 0; font: var(--td-fw-medium) 13px/18px var(--td-font-sans); color: var(--td-color-text-heading); }
.tdsp-acc-error { margin: 0; font: var(--td-fw-medium) 13px/18px var(--td-font-sans); color: var(--td-color-danger); }
.tdsp-acc-error:empty { display: none; }
.tdsp-acc-form-foot { display: flex; justify-content: flex-end; gap: 8px; }
.tdsp-acc-btn { min-height: 44px; padding: 0 18px; border: 1px solid var(--td-color-border-default); border-radius: 4px 12px 12px 12px; background: var(--td-color-bg-surface); color: var(--td-color-text-heading); font: var(--td-fw-semibold) 14px/1 var(--td-font-sans); cursor: pointer; }
.tdsp-acc-btn.is-primary { border-color: transparent; background: var(--td-color-accent); color: var(--td-color-text-on-accent, #fff); }
.tdsp-acc-btn.is-danger { border-color: transparent; background: var(--td-color-danger); color: #fff; }
.tdsp-acc-btn:disabled { opacity: .45; cursor: not-allowed; }
@media (max-width: 1024px) {
  .tdsp-acc-txt strong { font-size: 16px; line-height: 22px; }
  .tdsp-acc-txt small { font-size: 13px; line-height: 18px; }
  .tdsp-acc-form-foot .tdsp-acc-btn { flex: 1 1 0; min-width: 0; font-size: 15px; }
  /* Настройки: поля 16px даёт .workspace — свои 16px у #tdSettingsPage давали 32 */
  html body.td-settings-page-open #tdSettingsPage { padding-left: 0 !important; padding-right: 0 !important; max-width: 100%; box-sizing: border-box; overflow-x: clip; }
  #tdSettingsPage .td-sp-layout, #tdSettingsPage .td-sp-main, #tdSettingsPage .td-sp-panel, #tdSettingsPage .td-sp-card { min-width: 0; max-width: 100%; box-sizing: border-box; }
}
html[data-theme="dark"] .tdsp-acc-me { background: #1b2846; }
html[data-theme="dark"] .tdsp-acc-ico { background: #242c3d; }
html[data-theme="dark"] .tdsp-acc-form { background: #171c26; }
html[data-theme="dark"] .tdsp-acc-confirm { background: #3a1d22; }
html[data-theme="dark"] .tdsp-acc-row.is-danger .tdsp-acc-ico { background: #3a1d22; }

/* Профиль → Устройства */
.tdsp-dev-list { display: flex; flex-direction: column; margin: 0 0 12px; padding: 4px 14px; border-radius: 4px 16px 16px 16px; background: var(--td-color-bg-subtle); }
.tdsp-dev-list[hidden] { display: none !important; }
.tdsp-dev { display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 8px 0; border-top: 1px solid var(--td-color-border-default); }
.tdsp-dev:first-child { border-top: 0; }
.tdsp-dev .tdsp-acc-ico { background: var(--td-color-bg-surface); }
.tdsp-dev.is-current .tdsp-acc-ico { background: var(--td-color-accent-subtle); }
.tdsp-dev-me { flex: none; padding: 4px 10px; border-radius: 4px 10px 10px 10px; background: var(--td-color-success-subtle); color: var(--td-color-success); font: var(--td-fw-semibold) 12px/16px var(--td-font-sans); white-space: nowrap; }
.tdsp-dev-out { flex: none; color: var(--td-color-danger) !important; }
.tdsp-dev-ask { flex: none; display: flex; gap: 6px; }
.tdsp-dev.is-asking { flex-wrap: wrap; }
.tdsp-dev-warn { color: var(--td-color-danger) !important; }
.tdsp-dev-empty { margin: 0; padding: 14px 0; font: var(--td-fw-regular) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); }
@media (max-width: 1024px) {
  .tdsp-dev.is-asking .tdsp-dev-ask { width: 100%; }
  .tdsp-dev.is-asking .tdsp-dev-ask .tdsp-acc-btn { flex: 1 1 0; }
  .tdsp-dev-out { padding: 0 14px !important; }
}
html[data-theme="dark"] .tdsp-dev-list { background: #171c26; }
html[data-theme="dark"] .tdsp-dev .tdsp-acc-ico { background: #242c3d; }
html[data-theme="dark"] .tdsp-dev.is-current .tdsp-acc-ico { background: #1b2846; }
html[data-theme="dark"] .tdsp-dev-me { background: #1b4637; color: #0fd2b7; }

/* Раскрывающиеся строки: шапка + панель — один контейнер (один фон, общий скруглённый контур, без шва) */
.tdsp-acc-row.is-open { background: var(--td-color-bg-subtle); border-top-color: transparent; border-radius: 4px 16px 0 0; padding-left: 14px; padding-right: 14px; margin-top: 4px; }
.tdsp-acc-row.is-open + .tdsp-acc-form,
.tdsp-acc-row.is-open + .tdsp-dev-list { margin-top: 0; border-radius: 0 0 16px 16px; border-top: 1px solid var(--td-color-border-default); padding-top: 12px; }
.tdsp-acc-row.is-open + .tdsp-acc-form + .tdsp-acc-row,
.tdsp-acc-row.is-open + .tdsp-dev-list + .tdsp-acc-row { border-top-color: transparent; }
.tdsp-acc-row.is-open .tdsp-acc-ico { background: var(--td-color-bg-surface); }
html[data-theme="dark"] .tdsp-acc-row.is-open { background: #171c26; }
html[data-theme="dark"] .tdsp-acc-row.is-open .tdsp-acc-ico { background: #242c3d; }
html[data-theme="dark"] .tdsp-acc-row.is-open + .tdsp-acc-form,
html[data-theme="dark"] .tdsp-acc-row.is-open + .tdsp-dev-list { border-top-color: #2d3643; }

/* Фокус полей в настройках: мягкое акцентное кольцо вместо чёрной обводки */
#tdSettingsPage input:focus, #tdSettingsPage input:focus-visible,
#tdSettingsPage select:focus, #tdSettingsPage select:focus-visible,
#tdSettingsPage textarea:focus, #tdSettingsPage textarea:focus-visible {
  outline: none !important; border-color: var(--td-color-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--td-color-accent) 18%, transparent) !important;
}

/* Подтверждения выхода: строка + панель подтверждения — один контейнер, как у раскрывающихся строк */
.tdsp-acc-row[aria-expanded="true"]:not(#tdSpPwToggle):not(#tdSpDevicesToggle) { background: var(--td-color-danger-subtle); border-top-color: transparent; border-radius: 4px 16px 0 0; padding-left: 14px; padding-right: 14px; margin-top: 4px; }
.tdsp-acc-row[aria-expanded="true"] + .tdsp-acc-confirm { margin-top: 0; border-radius: 0 0 16px 16px; }
.tdsp-acc-row[aria-expanded="true"] + .tdsp-acc-confirm + .tdsp-acc-row { border-top-color: transparent; }
html[data-theme="dark"] .tdsp-acc-row[aria-expanded="true"]:not(#tdSpPwToggle):not(#tdSpDevicesToggle) { background: #3a1d22; }
/* Общий диалог подтверждения */
.td-confirm-overlay { z-index: 3000 !important; }
.td-confirm { max-width: 400px; }
.td-confirm .td-dialog-actions { display: flex; gap: 8px; justify-content: flex-end; }
.td-confirm .td-dialog-actions button { min-height: 44px; padding: 0 18px; border-radius: 4px 12px 12px 12px !important; font-family: var(--td-font-sans); font-weight: 600; }
.td-confirm .td-dialog-ok.is-danger { background: var(--td-color-danger) !important; border-color: transparent !important; color: #fff !important; }
@media (max-width: 1024px) { .td-confirm .td-dialog-actions button { flex: 1 1 0; } }

/* Строки аккаунта: глобальный legacy `button:hover` (layout.css) красил фон и верхнюю границу — после
   сворачивания под курсором/после тапа строка выглядела «открытой». Наведение не меняет вид строки. */
#tdSettingsPage .tdsp-acc-row:not(.is-open):not([aria-expanded="true"]):hover,
#tdSettingsPage .tdsp-acc-row:not(.is-open):not([aria-expanded="true"]):active,
#tdSettingsPage .tdsp-acc-row:not(.is-open):not([aria-expanded="true"]):focus:not(:focus-visible) {
  background: transparent; border-top-color: var(--td-color-border-default); outline: none; box-shadow: none;
}
#tdSettingsPage .tdsp-acc-list > .tdsp-acc-row:first-child:hover { border-top-color: transparent; }
#tdSettingsPage .tdsp-acc-row.is-open:hover, #tdSettingsPage .tdsp-acc-row.is-open:focus:not(:focus-visible) { border-top-color: transparent; outline: none; }
#tdSettingsPage .tdsp-acc-row:focus:not(:focus-visible) { outline: none; }
@media (hover: hover) { #tdSettingsPage .tdsp-acc-row:hover .tdsp-acc-chev { color: var(--td-color-accent); } }
#tdSettingsPage .tdsp-acc-btn:hover { border-color: var(--td-color-border-default); }
#tdSettingsPage .tdsp-acc-btn.is-primary:hover, #tdSettingsPage .tdsp-acc-btn.is-danger:hover { border-color: transparent; filter: brightness(.96); }
html[data-theme="dark"] #tdSettingsPage .tdsp-acc-row:not(.is-open):not([aria-expanded="true"]):hover { background: transparent; border-top-color: var(--td-color-border-default); }
#tdSettingsPage .tdsp-acc-list > .tdsp-acc-row:first-child { border-top-width: 0 !important; border-top-color: transparent !important; }

/* «Выйти из аккаунта» — на главном экране настроек (мобайл) и в конце вкладок (десктоп) */
.tdsp-signout { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 0 18px; border: 1px solid var(--td-color-border-default); border-radius: 4px 16px 16px 16px; background: var(--td-color-bg-surface); color: var(--td-color-danger); font: var(--td-fw-semibold) 15px/20px var(--td-font-sans); cursor: pointer; }
#tdSettingsPage .tdsp-signout:hover { background: var(--td-color-danger-subtle); border-color: var(--td-color-border-default); color: var(--td-color-danger); }
.tdsp-signout:focus:not(:focus-visible) { outline: none; }
.tdsp-signout:focus-visible { outline: 2px solid var(--td-color-danger); outline-offset: 2px; }
.tdsp-signout--hub { width: 100%; margin-top: 14px; box-sizing: border-box; }
.tdsp-signout--nav { margin-left: auto; min-height: 36px; padding: 0 14px; border-color: transparent; background: transparent; font-size: 13px; border-radius: 4px 10px 10px 10px; }
@media (max-width: 1024px) { .tdsp-signout--nav { display: none !important; } }
@media (min-width: 1025px) { .tdsp-signout--hub { display: none !important; } }
html[data-theme="dark"] .tdsp-signout--hub { background: #1d1d1d; border-color: #2d3643; }
html[data-theme="dark"] #tdSettingsPage .tdsp-signout:hover { background: #3a1d22; }
/* Заголовок общего диалога подтверждения — аккуратнее: 18/600, lh 1.3 */
#tdConfirmOverlay .td-confirm { padding: 20px 20px 18px !important; }
#tdConfirmOverlay #tdConfirmTitle { margin: 0 !important; font-family: var(--td-font-sans) !important; font-size: 18px !important; font-weight: 600 !important; line-height: 1.3 !important; letter-spacing: -0.01em; text-wrap: balance; color: var(--td-color-text-primary); }
#tdConfirmOverlay #tdConfirmText { margin: 6px 0 0 !important; font-size: 14px !important; line-height: 20px !important; color: var(--td-color-text-secondary) !important; }
#tdConfirmOverlay #tdConfirmText:empty { display: none; }
#tdConfirmOverlay .td-confirm .td-dialog-actions { margin-top: 16px !important; }
