.color-theme-toggle { background: var(--surface-soft); color: var(--primary-text); }
.color-theme-toggle:hover { background: var(--sage); color: var(--primary-text); }
.color-theme-menu-toggle { display: none; align-items: center; gap: 12px; width: 100%; min-height: 44px; padding: 9px 8px; border: 0; border-radius: 8px; background: transparent; color: var(--green); font: inherit; font-size: var(--text-small); text-align: left; cursor: pointer; }
.color-theme-menu-toggle > i { flex: 0 0 22px; width: 22px; font-size: 18px; text-align: center; }
.color-theme-menu-toggle > small { margin-left: auto; color: var(--muted); font-size: var(--text-caption); }
.color-theme-menu-toggle:hover, .color-theme-menu-toggle:focus-visible { background: var(--sage); }
.auth-header-tools { display: flex; align-items: center; gap: 20px; }
.home-header .color-theme-toggle { margin-left: 0; }
.home-header .home-login { margin-left: 0; }
.home-editor-demo .document-page-content { background-color: var(--surface); color: var(--ink); }
.home-editor-demo .document-tools { --atelier-background: var(--surface); }
.manuscript-enhanced .manuscript-surface { background: var(--atelier-background, var(--surface)); color: var(--atelier-color, var(--ink)); }
.home-backdrop { opacity: .08; }
[data-color-theme="dark"] .home-backdrop { opacity: .025; }

/* Les teintes de ces objets illustrés appartiennent au décor de la bibliothèque. */
.room-nameplate, .room-book--0, .room-book--5 { color: #271d19; }

@media (max-width: 760px) {
    .home-header .home-public-navigation { margin-left: 0; }
    .auth-header-tools { gap: 10px; }
    .auth-header { flex-wrap: wrap; gap: 16px; }
    .reader-toolbar .actions:has(.color-theme-toggle) { flex-wrap: wrap; flex-shrink: 1; min-width: 0; max-width: 100%; gap: 12px; }
}

@media (max-width: 400px) {
    .site-header:has(.app-menu) .header-tools > .color-theme-toggle { display: none; }
    .site-header .color-theme-menu-toggle { display: flex; }
}
