/*
 * Sirius Cainita 1.8.3-rc.9.3 — Integridade de Superfícies.
 *
 * Regra de produto: a Plataforma Sirius não utiliza branco puro como
 * superfície de interface. Em áreas claras, o piso canônico é pergaminho.
 * A folha é carregada depois das integrações para neutralizar somente
 * regressões visuais de legado, sem substituir backgrounds autorais escuros.
 */

:root {
  --sirius-canvas-dark: var(--sirius-ink-1000, #0a0909);
  --sirius-canvas-dark-raised: var(--sirius-ink-900, #171414);
  --sirius-canvas-light: var(--sirius-parchment-50, #f4efe5);
  --sirius-canvas-sand: #e5dac8;
  --sirius-scrollbar-thumb: color-mix(in srgb, var(--sirius-gold-400, #b8975c) 58%, var(--sirius-ink-700, #352d29));
  --sirius-scrollbar-track: var(--sirius-ink-950, #100e0e);
}

/* O canvas estrutural jamais revela branco, inclusive durante overscroll. */
html,
body,
#page.sirius-site,
body > .wp-site-blocks,
.wp-site-blocks {
  background-color: var(--sirius-canvas-dark);
}

/* Páginas públicas podem ser claras, mas sempre em pergaminho — nunca branco. */
body.sirius-public-surface {
  background-color: var(--sirius-canvas-light) !important;
}

body.sirius-public-surface :where(
  .sirius-page-shell,
  .sirius-article-shell,
  .sirius-surface--light,
  .sirius-form--light,
  [data-sirius-surface="light"]
) {
  background-color: var(--sirius-canvas-light);
}

/* Superfícies claras deliberadas dentro da área autenticada continuam claras,
 * porém usam pergaminho frio em vez de branco ou floral-white. */
body.sirius-private-surface :where(
  .sirius-page-shell:not(.sirius-page-shell--wide),
  .sirius-article-shell,
  .sirius-surface--light,
  .sirius-form--light,
  [data-sirius-surface="light"]
) {
  background-color: var(--sirius-canvas-light);
}

/* Elementor legado: quando o classificador identifica superfície clara, troca
 * apenas a cor de fundo. Imagens e gradients existentes permanecem intactos. */
body.sirius-elementor-surface .sirius-legacy-light {
  background-color: var(--sirius-canvas-light) !important;
}

body.sirius-elementor-surface .sirius-legacy-light :where(
  .elementor-accordion-item,
  .elementor-toggle-item,
  .elementor-widget-tabs .elementor-tab-content
) {
  background-color: color-mix(in srgb, var(--sirius-canvas-light) 94%, var(--sirius-canvas-sand)) !important;
}

/* Ordem dos Cainitas: a Central de Sinais histórica possuía CSS próprio branco.
 * Enquanto esse legado existir, o tema mantém a mesma função em superfície
 * Sirius escura; nenhuma regra de dados ou interação é tocada. */
body.sirius-private-surface .odc-member-notifications {
  color: var(--sirius-parchment-100) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(136, 78, 81, .10), transparent 24rem),
    linear-gradient(145deg, rgba(29, 25, 24, .96), rgba(10, 9, 9, .985)) !important;
  border-color: var(--sirius-line) !important;
}

body.sirius-private-surface .odc-member-notifications :where(
  .odc-member-notifications__category-label select,
  input,
  textarea,
  select
) {
  color: var(--sirius-parchment-100) !important;
  background-color: var(--sirius-ink-850) !important;
  border-color: var(--sirius-line-gold) !important;
}

body.sirius-private-surface .odc-member-notifications :where(
  .odc-member-notifications__filter,
  .odc-member-notifications__more,
  .odc-member-notifications__bulk-read,
  .odc-member-notifications__read-button,
  .odc-member-notifications__context-button,
  .odc-member-notifications__refresh
) {
  color: var(--sirius-gold-300) !important;
  background-color: var(--sirius-action-ghost-bg) !important;
  border-color: var(--sirius-line-gold) !important;
}

/* BuddyBoss/BuddyPress transitório: somente superfícies estruturais conhecidas.
 * O conteúdo nativo da Ordem continua prevalecendo quando presente. */
body.sirius-private-surface :where(
  .bp-feedback,
  .bp-messages-wrap,
  .bb-modal,
  .bb-modal-box,
  .activity-update-form,
  #whats-new-form
) {
  background-color: var(--sirius-canvas-dark-raised) !important;
  color: var(--sirius-parchment-100) !important;
}

/* LearnDash transitório: preservar a semântica de superfície clara, mas em
 * pergaminho. Não altera grids, progresso, notas ou comportamento. */
body.sirius-private-surface .learndash-wrapper :where(
  .ld-item-list-item,
  .ld-table-list,
  .ld-alert,
  .ld-modal,
  .ld-focus-content .ld-content-actions
) {
  background-color: var(--sirius-canvas-light) !important;
}

/* Controles nativos de páginas públicas usam pergaminho. Na área privada, a
 * folha form-surfaces continua definindo os campos escuros. */
body.sirius-public-surface .sirius-site :where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]),
  select,
  textarea
) {
  background-color: var(--sirius-canvas-light);
}

/* Autofill não deve reintroduzir azul/branco em campos autenticados. */
body.sirius-private-surface input:-webkit-autofill,
body.sirius-private-surface input:-webkit-autofill:hover,
body.sirius-private-surface input:-webkit-autofill:focus,
body.sirius-private-surface textarea:-webkit-autofill,
body.sirius-private-surface select:-webkit-autofill {
  -webkit-text-fill-color: var(--sirius-parchment-100) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--sirius-ink-850) inset !important;
  caret-color: var(--sirius-gold-300);
}

body.sirius-public-surface input:-webkit-autofill,
body.sirius-public-surface input:-webkit-autofill:hover,
body.sirius-public-surface input:-webkit-autofill:focus,
body.sirius-public-surface textarea:-webkit-autofill,
body.sirius-public-surface select:-webkit-autofill {
  -webkit-text-fill-color: var(--sirius-ink-900) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--sirius-canvas-light) inset !important;
}

/* Dialogs/popovers próprios do browser não devem abrir uma ilha branca. */
body.sirius-cainita-theme :where(dialog, [popover]) {
  color: var(--sirius-parchment-100);
  background-color: var(--sirius-ink-900);
  border-color: var(--sirius-line-gold);
}

body.sirius-cainita-theme :where(dialog, [popover])::backdrop {
  background: rgba(10, 9, 9, .72);
}

/* Scrollbars pertencem ao shell visual. Isso também evita trilhos claros que
 * podem ser percebidos como uma faixa branca em desktop Windows. */
html {
  scrollbar-color: var(--sirius-scrollbar-thumb) var(--sirius-scrollbar-track);
}

body.sirius-private-surface :where(
  .sirius-site,
  .sirius-site-main,
  .odc-social-app,
  .odc-social-app__frame,
  .odc-atrium-rail,
  .sirius-app-drawer,
  .sirius-context-bar__track
) {
  scrollbar-color: var(--sirius-scrollbar-thumb) var(--sirius-scrollbar-track);
}

@supports selector(::-webkit-scrollbar) {
  body.sirius-private-surface ::-webkit-scrollbar {
    width: 11px;
    height: 11px;
  }

  body.sirius-private-surface ::-webkit-scrollbar-track {
    background: var(--sirius-scrollbar-track);
  }

  body.sirius-private-surface ::-webkit-scrollbar-thumb {
    border: 2px solid var(--sirius-scrollbar-track);
    border-radius: 999px;
    background: var(--sirius-scrollbar-thumb);
  }
}

/* -------------------------------------------------------------------------
 * Resiliência vertical desktop/tablet — Ordem dos Cainitas
 * ------------------------------------------------------------------------- */

/* Garante respiro final mesmo quando o shell social é full-width e o tema
 * remove o padding do main para entregar a aplicação nativa. */
body.odc-native-social .odc-social-app__frame {
  padding-bottom: max(clamp(72px, 8vw, 132px), calc(44px + env(safe-area-inset-bottom, 0px)));
}

/* A rail lateral nativa é sticky. Em janelas desktop de pouca altura, dois ou
 * mais painéis podem ultrapassar a viewport e dar a impressão de card cortado.
 * Nessa situação, o sticky é desativado; o conteúdo volta ao fluxo normal e
 * permanece integralmente alcançável pelo scroll da página. */
@media (min-width: 981px) and (max-height: 900px) {
  body.odc-native-social .odc-atrium-rail {
    position: static !important;
    top: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Em viewports altos, sticky permanece como originalmente aprovado, com uma
 * margem inferior segura para sombras e último painel. */
@media (min-width: 981px) and (min-height: 901px) {
  body.odc-native-social .odc-atrium-rail {
    padding-bottom: 20px;
    scroll-margin-bottom: 28px;
  }
}

/* Tablet e janelas estreitas não devem criar largura fantasma. */
@media (max-width: 1180px) {
  body.sirius-cainita-theme :where(
    .sirius-site,
    .sirius-site-main,
    .sirius-page-shell,
    .sirius-article-shell,
    .odc-social-app,
    .odc-social-app__frame,
    .odc-atrium-layout,
    .odc-atrium-stream,
    .odc-messages-shell
  ) {
    min-width: 0;
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
