.home-sections-admin-only[hidden], .home-sections-admin-only [hidden] { display: none !important; }
.home-sections-settings { margin: 0 0 24px; padding: 24px; border: 1px solid rgba(163, 136, 205, .24); border-radius: 16px; background: radial-gradient(ellipse at top right, rgba(102, 61, 157, .13), transparent 65%), rgba(12, 15, 29, .86); }
.home-sections-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.home-sections-heading .eyebrow { margin: 0 0 8px; font-size: .58rem; }
.home-sections-heading h3 { margin: 0; color: #e9e0f8; font-size: 1.2rem; line-height: 1.4; letter-spacing: .02em; }
.home-sections-summary { margin: 4px 0 0; flex-shrink: 0; color: #bdb0d0; font-size: .7rem; line-height: 1.6; }
.home-sections-help { max-width: 800px; margin: 12px 0 20px; color: #afa5c1; font-size: .76rem; line-height: 1.7; }
.home-sections-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.home-section-card { min-width: 0; padding: 16px; border: 1px solid rgba(153, 133, 194, .16); border-radius: 11px; background: rgba(13, 14, 29, .64); }
.home-section-card h4 { min-height: 2.8em; margin: 0 0 10px; color: #dfd7ed; font-size: .82rem; line-height: 1.4; font-weight: 600; }
.home-section-toggle { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 48px; width: 100%; padding: 8px 10px; border: 1px solid rgba(151, 134, 188, .2); border-radius: 9px; background: rgba(110, 84, 149, .035); color: #ccc1df; font: inherit; text-align: left; cursor: pointer; transition: background .18s, border-color .18s; }
.home-section-toggle:hover:not(:disabled) { border-color: rgba(179, 151, 222, .55); background: rgba(135, 104, 177, .1); }
.home-section-toggle:focus-visible { outline: 2px solid #bc9ee8; outline-offset: 3px; }
.home-section-toggle:disabled { cursor: wait; }
.home-section-toggle[aria-busy="false"]:disabled { cursor: not-allowed; opacity: .65; }
.home-section-toggle-copy { min-width: 0; font-size: .7rem; line-height: 1.4; }
.home-section-toggle-copy small { display: block; margin-top: 3px; color: #9b91ae; font-size: .61rem; }
.home-section-toggle[aria-checked="true"] .home-section-toggle-copy small { color: #98d3bd; }
.home-section-toggle[data-state="pending"] .home-section-toggle-copy small { color: #bcb0d2; }
.home-section-toggle[data-state="error"] .home-section-toggle-copy small { color: #e7b99e; }
.home-section-switch { position: relative; flex: 0 0 38px; width: 38px; height: 22px; border: 1px solid rgba(181, 157, 217, .28); border-radius: 99px; background: #292338; transition: background .18s, border-color .18s; }
.home-section-switch::after { content: ""; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #a49aac; transition: transform .18s, background .18s; }
.home-section-toggle[aria-checked="true"] .home-section-switch { border-color: #9374bb; background: #775797; }
.home-section-toggle[aria-checked="true"] .home-section-switch::after { transform: translateX(16px); background: #f0e8fb; }
.home-section-quick-toggle { flex: 0 0 auto; width: auto; min-width: 168px; }
.admin-section-head:has(.home-section-quick-toggle) { flex-wrap: wrap; }
.admin-section-head:has(.home-section-quick-toggle) > div { min-width: 0; }
.home-sections-error { margin: 15px 0 10px; color: #e7b99e; font-size: .75rem; line-height: 1.6; }
.home-sections-retry { margin-top: 4px; }
@media (max-width: 1100px) {
  .home-sections-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-sections-heading { flex-direction: column; gap: 8px; }
}
@media (max-width: 540px) {
  .home-sections-settings { padding: 18px 14px; }
  .home-sections-grid { grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .home-section-card { padding: 12px; }
  .home-section-card h4 { min-height: 0; margin-bottom: 10px; }
  .home-section-quick-toggle { min-width: 156px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-section-toggle, .home-section-switch, .home-section-switch::after { transition: none; }
}
