.settings-stack { display: flex; flex-direction: column; gap: 14px; }
.settings-section { background: #fff; border: 1px solid var(--c-border); border-radius: 16px; padding: 22px; box-shadow: 0 2px 12px rgba(107,66,38,.06); }
.settings-section.muted { background: var(--c-bg2); }
.settings-section-title { font-size: 9px; letter-spacing: 2.5px; text-transform: uppercase; color: var(--c-his-mid); margin-bottom: 16px; font-weight: 700; }
.settings-input { width: 100%; padding: 9px 12px; background: var(--c-bg2); border: 1.5px solid var(--c-border); border-radius: 8px; color: var(--c-text); font-family: 'Lato', sans-serif; font-size: 13px; outline: none; }
.settings-input:focus { border-color: var(--c-her); }
.settings-input[readonly] { background: #E8E8E8; color: #888; border-color: var(--c-border); }
.settings-input-label { font-size: 10px; color: var(--c-text2); margin-bottom: 5px; font-weight: 700; }
.settings-field { margin-bottom: 12px; }
.settings-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.settings-preview { font-size: 11px; color: var(--c-his-mid); text-align: center; padding: 8px; background: var(--c-bg2); border-radius: 8px; }

.settings-theme-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.settings-lang-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lang-btn { display: block; padding: 12px 6px; border-radius: 12px; border: 2px solid var(--c-border); background: var(--c-bg2); font-size: 13px; font-weight: 700; color: var(--c-text2); cursor: pointer; text-align: center; text-decoration: none; transition: all .15s; }
.lang-btn.active { border-color: var(--c-his); background: var(--c-his); color: #fff; }
.lang-btn:hover:not(.active) { border-color: var(--c-his); color: var(--c-his); }
.theme-btn-pink { padding: 10px 6px; border-radius: 12px; border: 2px solid #D4688A; background: linear-gradient(135deg, #FDF6F0, #FCE4EC); font-size: 11px; font-weight: 700; color: #6B4226; cursor: pointer; }
.theme-btn-blue { padding: 10px 6px; border-radius: 12px; border: 2px solid #C5D8F0; background: linear-gradient(135deg, #F0F6FF, #DDEEFF); font-size: 11px; font-weight: 700; color: #1A2E4A; cursor: pointer; }
.theme-btn-brown { padding: 10px 6px; border-radius: 12px; border: 2px solid #D9C4A8; background: linear-gradient(135deg, #FAF6F2, #EEE0D0); font-size: 11px; font-weight: 700; color: #2E1A0A; cursor: pointer; }

.settings-select { width: 100%; padding: 9px 8px; background: var(--c-bg2); border: 1.5px solid var(--c-border); border-radius: 8px; color: var(--c-text); font-family: 'Lato', sans-serif; font-size: 12px; outline: none; }
.settings-select-small { padding: 9px 8px; background: var(--c-bg2); border: 1.5px solid var(--c-border); border-radius: 8px; color: var(--c-text); font-family: 'Lato', sans-serif; font-size: 12px; outline: none; width: 75px; }
.settings-date-row { display: flex; gap: 5px; }
.settings-range { width: 100%; accent-color: var(--c-border2); margin-bottom: 8px; }
.settings-range-labels { display: flex; justify-content: space-between; font-size: 10px; color: var(--c-text3); }

.settings-save-btn { width: 100%; padding: 14px; background: linear-gradient(135deg, var(--c-his), var(--c-his-mid)); border: none; border-radius: 12px; color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: 0 4px 16px rgba(107,66,38,.3); }
.settings-signout-btn { width: 100%; padding: 12px; background: linear-gradient(135deg, var(--c-his), var(--c-his-mid)); color: #fff; border: none; border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer; }
.settings-reset-btn { width: 100%; padding: 12px; background: #fff; border: 1.5px solid var(--c-her-mid); border-radius: 10px; color: #C94040; font-size: 13px; font-weight: 700; cursor: pointer; }
.settings-backup-row { display: flex; gap: 8px; }
.settings-backup-hint { font-size: 10px; color: var(--c-text3); font-style: italic; text-align: center; margin-top: 10px; }

@media (max-width: 480px) {
  .settings-two-col { grid-template-columns: 1fr; }
  .settings-theme-grid { grid-template-columns: 1fr 1fr 1fr; }
}
