/* Central de Aparência — camada visual posterior aos estilos homologados.
 * A camada usa somente variáveis já sanitizadas pelo PHP. As regras por escopo
 * são geradas apenas quando existe override e esta folha faz a ponte com os
 * componentes reais da plataforma que já consomem os tokens legados.
 */
[data-aa-appearance-scope],
[data-aa-appearance-module],
.aad,
.aa-admin,
.aa-admin-page {
    accent-color: var(--aa-module-accent, var(--athera-accent-primary, #CD9C20));
}

/* Dashboard / Cursos — consumidores reais do shortcode principal. */
.aad .aad-sb {
    background-color: var(--aa-scope-sidebar-bg, var(--athera-sidebar-bg, var(--s))) !important;
}

.aad .aad-topbar {
    background-color: var(--aa-scope-header-bg, var(--bg)) !important;
}

.aad .aad-section,
.aad .aad-inner-body,
.aad .aad-panel-view.active {
    color: var(--aa-scope-text, var(--athera-text-primary, var(--t1)));
}

.aad .aad-card {
    background-color: var(--aa-scope-card-bg, var(--athera-card-bg, var(--s))) !important;
    border-color: var(--aa-scope-border, var(--athera-border-color, var(--bd))) !important;
    border-radius: var(--aa-scope-card-radius, var(--aa-radius-global, 8px)) !important;
    box-shadow: var(--aa-scope-card-shadow, var(--aa-card-shadow, 0 12px 40px rgba(0,0,0,.55))) !important;
}

.aad .aad-card-body {
    padding: calc(var(--aa-scope-card-padding, var(--aa-card-padding, 16px)) + var(--aad-density-card-offset, 0px));
}

.aad .aad-card-titulo,
.aad .aad-section-titulo {
    color: var(--aa-scope-text, var(--athera-text-primary, var(--t1))) !important;
}

.aad .aad-card-desc,
.aad .aad-card-meta span,
.aad .aad-section-count {
    color: var(--aa-scope-muted, var(--athera-text-secondary, var(--t3))) !important;
}

.aad .aad-search-input,
.aad .aad-form-field input,
.aad .aad-form-field select,
.aad .aad-form-field textarea {
    background-color: var(--aa-scope-input-bg, var(--athera-input-bg, var(--p))) !important;
    color: var(--aa-scope-input-text, var(--athera-input-text, var(--t1))) !important;
    border-color: var(--aa-scope-input-border, var(--athera-border-color, var(--bd))) !important;
    border-radius: var(--aa-scope-input-radius, var(--aa-input-radius, 8px)) !important;
    min-height: var(--aa-scope-input-height, var(--aa-input-height, 42px));
}

.aad .aad-search-input::placeholder,
.aad .aad-form-field input::placeholder,
.aad .aad-form-field textarea::placeholder {
    color: var(--aa-scope-placeholder, var(--athera-text-secondary, var(--t3))) !important;
}

.aad .aad-card-cta,
.aad .aad-btn-gold {
    min-height: var(--aa-scope-button-height, var(--aa-button-height, 42px));
    border-radius: var(--aa-scope-button-radius, var(--aa-button-radius, 8px));
}

.aad .aad-btn-gold {
    background-color: var(--aa-scope-button-bg, var(--athera-button-bg, var(--g))) !important;
    color: var(--aa-scope-button-text, var(--athera-button-text, #000)) !important;
}

/* Espaçamento por escopo. Só altera quando o Registry publica o token local. */
.aad [style*="--aa-scope-gap"],
.aad [style*="--aa-scope-padding"] {
    box-sizing: border-box;
}

/* A Central nunca pode perder seus controles críticos por CSS personalizado. */
.aa-appearance [data-aa-save],
.aa-appearance [data-aa-discard],
.aa-appearance [data-aa-reset-all],
.aa-appearance [data-aa-audit],
.aa-appearance [data-aa-tab] {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    min-width: 32px !important;
    min-height: 32px !important;
}

.aa-appearance .aa-appearance-actionbar {
    display: flex !important;
}

@media (max-width: 600px) {
    [data-aa-appearance-scope],
    [data-aa-appearance-module] {
        max-width: 100%;
    }
}
