/* Themes now live in 01-themes.css and component rules below. */
@layer themes {
/* Perfis independentes do modo de cor. Referências Stack 14, 15 e 16. */
/* Pares de superfície/texto para componentes existentes. */
body { color:var(--text); }
input { color-scheme:inherit; color:var(--text); }
select { color-scheme:inherit; color:var(--text); }
textarea { color-scheme:inherit; color:var(--text); }
input::placeholder { color:var(--muted); opacity:1; }
textarea::placeholder { color:var(--muted); opacity:1; }
option { color:var(--text); background:var(--control-bg); }
.modal-card { color:var(--text); background:var(--surface); border-color:var(--border); }
.modal-content { color:var(--text); background:var(--surface); border-color:var(--border); }
.app-dialog { color:var(--text); background:var(--surface); border-color:var(--border); }
.ui-settings-dialog :is(label,.ui-settings-group) { color:var(--text-2); }
.app-account__menu { color:var(--text-2); }
.theme-chip.is-active { background:var(--success); color:var(--text-on-accent); border-color:var(--success); }
.font-chip.is-active { background:var(--success); color:var(--text-on-accent); border-color:var(--success); }
.ui-settings-dialog { color:var(--text); background:var(--surface); border-color:var(--border); max-height:calc(100dvh - 32px); overflow:auto; }
.ui-settings-header { position:sticky; top:0; background:var(--surface); z-index:var(--z-local-1); }
.ui-settings-group .theme-switcher { display:flex; flex-wrap:wrap; gap:8px; }
/* stylelint-disable declaration-no-important -- Preserve hidden state, keyboard focus, reduced motion or print against inline styles. */
.ui-settings-modal[hidden] { display:none!important; }
/* stylelint-enable declaration-no-important */
html.design-notion .app-sidebar { background:var(--surface-2); }
html.design-brutalist .app-sidebar { border-width:2px; }
html.design-brutalist .app-topbar { border-width:2px; }
html.design-brutalist .app-sidebar .nav-link[aria-current="page"] { background:var(--neo-accent); color:var(--palette-191713); box-shadow:inset 3px 0 0 var(--palette-191713); }
html.design-brutalist .app-sidebar .nav-hub.is-active>.nav-link { background:var(--neo-accent); color:var(--palette-191713); box-shadow:inset 3px 0 0 var(--palette-191713); }
html.design-notion .ds-btn { font-weight:500; }
html.design-notion :is(h1,h2,h3,.panel-title) { letter-spacing:-.025em; }
html.theme-dark :is(.modal-field,.form-field) :is(input,select,textarea) { background:var(--control-bg); color:var(--text); border-color:var(--border-hi); }

/* Login conserva a composição própria e acompanha o perfil selecionado. */
body.auth-body { color:var(--text); background-color:var(--bg); height:auto; min-height:100dvh; padding:0; overflow-x:clip; overflow-y:auto; }
.auth-body .auth-shell { min-height:100dvh; height:auto; }
.auth-body .auth-page { min-height:100dvh; height:auto; }
.auth-body .auth-panel { background:var(--surface); color:var(--text); border:var(--border-w) solid var(--border); border-radius:var(--radius-md); box-shadow:var(--shadow-lg); backdrop-filter:none; }
.auth-panel .panel-title { color:var(--text); }
.auth-panel .form-label { color:var(--text); }
.auth-panel .panel-title em { color:var(--text-2); }
.auth-panel [data-captcha-status] { color:var(--text-2); }
.auth-panel .form-stack { display:grid; grid-template-columns:minmax(0,1fr); width:100%; }
.auth-panel .form-field { display:grid; width:100%; min-width:0; gap:8px; }
.auth-panel .form-control { width:100%; max-width:none; box-sizing:border-box; background:var(--control-bg); color:var(--text); border-color:var(--border-hi); }
.auth-panel .form-action { width:100%; background:var(--success); color:var(--text-on-accent); border-color:var(--success); }
.auth-panel .flash-card { color:var(--text); background:var(--surface-2); }
.auth-body .auth-copy { color:var(--auth-copy); }
.auth-body .auth-parallax::after { content:""; position:absolute; inset:0; background:rgb(0 0 0 / .48); }

/* Paleta coordenada de navegação: pinheiro e cinza mineral. */
.app-sidebar { background:var(--shell-sidebar); color:var(--shell-ink); border-color:var(--shell-line); }
.design-notion .app-sidebar { background:var(--shell-sidebar); color:var(--shell-ink); border-color:var(--shell-line); }
.app-topbar { background:var(--shell-topbar); color:var(--shell-ink); border-color:var(--shell-line); }
.app-sidebar .app-sidebar__brand a { color:var(--shell-ink); }
.app-sidebar .nav-link { color:var(--shell-ink); }
.app-sidebar .app-account summary { color:var(--shell-ink); }
.app-sidebar .nav-submenu a { color:var(--shell-muted); }
.app-sidebar .app-admin-links a { color:var(--shell-muted); }
.app-sidebar .app-sidebar__footer { color:var(--shell-muted); }
.app-sidebar .nav-link:hover { background:var(--shell-hover); color:var(--shell-ink); }
.app-sidebar .nav-submenu a:hover { background:var(--shell-hover); color:var(--shell-ink); }
.app-sidebar .nav-link--active { background:var(--shell-active); color:var(--shell-on-active); box-shadow:none; }
.app-sidebar .nav-link[aria-current=page] { background:var(--shell-active); color:var(--shell-on-active); box-shadow:none; }
.app-sidebar .nav-hub.is-active>.nav-link { background:var(--shell-active); color:var(--shell-on-active); box-shadow:none; }
.app-sidebar .nav-submenu { border-color:var(--shell-line); }
.app-sidebar .app-sidebar__admin { border-color:var(--shell-line); }
.app-sidebar .settings-trigger { color:var(--shell-ink); background:var(--shell-hover); border-color:var(--shell-line); }
.app-topbar .app-breadcrumb a { color:var(--shell-muted); }

}
