/* Digitalizar Church UI 4.3.8
 * Design system do aplicativo. Seletores permanecem isolados ao Church para
 * que qualquer tema ou page builder possa coexistir sem controlar o painel. */

:where(.pdcm-portal,.pdcm-suite-shell,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal){
  box-sizing:border-box;
  color:var(--pdcm-brand-text,#26282a);
  font-family:var(--pdcm-font-body,system-ui,sans-serif);
}
:where(.pdcm-portal,.pdcm-suite-shell,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal) *,
:where(.pdcm-portal,.pdcm-suite-shell,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal) *::before,
:where(.pdcm-portal,.pdcm-suite-shell,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal) *::after{box-sizing:border-box}

:where(.pdcm-portal,.pdcm-suite-shell,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal) :is(h1,h2,h3,h4,h5,h6){
  font-family:var(--pdcm-font-heading,var(--pdcm-font-body,system-ui,sans-serif));
}

/* Superfícies: todos os módulos obedecem ao mesmo formato escolhido. */
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal)
:is(.pdcm-portal-panel,.pdcm-panel,.pdcm-card,.pdcm-login>div,.pdcf-family-card,.pdck-panel,.dc-calendar-event-card,.dc-calendar-hero,.dc-calendar-editor,.dc-private-gateway,.dc-request-card){
  border-radius:var(--pdcm-card-radius,14px)!important;
  box-shadow:var(--pdcm-ui-shadow,0 8px 24px rgba(23,61,91,.10));
}
.pdcm-suite-shell :is(.pdcm-suite-card,.pdcm-suite-section,.pdcm-suite-metric,.pdcm-suite-module-grid>a,.pdcm-suite-leader-card){
  border-radius:var(--pdcm-card-radius,14px)!important;
  box-shadow:var(--pdcm-ui-shadow,0 8px 24px rgba(23,61,91,.10))!important;
}

/* Inputs ficam protegidos de estilos agressivos do tema. */
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal)
:is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea){
  border-radius:var(--pdcm-input-radius,9px)!important;
  border-color:var(--pdcm-brand-input-border,#cbd7df)!important;
  color:var(--pdcm-brand-text,#26282a)!important;
  background-color:var(--pdcm-brand-surface,#fff)!important;
  font-family:var(--pdcm-font-body,inherit)!important;
}

/* Contrato de botão global, incluindo WordPress buttons dentro do Church. */
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal,.pdcm-suite-shell)
:is(.pdcm-button,.pdcm-small-button,.pdca-connect-submit,.pdck-big-action,.pdck-child-submit,.pdcm-suite-primary-action,.pdcm-suite-mobile-toggle,.dc-prayer-submit,.dc-private-primary,.button-primary,.button.button-primary){
  min-height:var(--pdcm-button-height,40px)!important;
  border-radius:var(--pdcm-button-radius,9px)!important;
  background:var(--pdcm-button-bg,var(--pdcm-brand-primary,#173d5b))!important;
  border-color:var(--pdcm-button-bg,var(--pdcm-brand-primary,#173d5b))!important;
  color:var(--pdcm-button-text,var(--pdcm-brand-on-primary,#fff))!important;
  font-family:var(--pdcm-font-body,inherit)!important;
}
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal,.pdcm-suite-shell)
:is(.pdcm-button,.pdcm-small-button,.pdca-connect-submit,.pdck-big-action,.pdck-child-submit,.pdcm-suite-primary-action,.pdcm-suite-mobile-toggle,.dc-prayer-submit,.dc-private-primary,.button-primary,.button.button-primary):is(:hover,:focus){
  background:var(--pdcm-button-bg-hover,var(--pdcm-brand-primary-dark,#0f2c42))!important;
  border-color:var(--pdcm-button-bg-hover,var(--pdcm-brand-primary-dark,#0f2c42))!important;
  color:var(--pdcm-button-text,var(--pdcm-brand-on-primary-dark,#fff))!important;
}
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdck-unified,.pdch-portal-management,.dc-calendar-page,.dc-prayer-public,.dc-intercession-internal,.pdcm-suite-shell)
:is(.button,.pdcm-suite-secondary-action,.dc-calendar-secondary){border-radius:var(--pdcm-button-radius,9px)!important}

/* Densidade global sem sacrificar a responsividade dos módulos. */
.pdcm-portal .pdcm-portal-panel,.pdcm-admin .pdcm-panel,.pdcm-suite-main .pdcm-suite-section{
  --pdcm-space:calc(18px * var(--pdcm-density-factor,1));
}

/* Logo configurável no painel principal e login. */
.pdcm-suite-brand-mark.has-logo{padding:5px!important;overflow:hidden;background:var(--pdcm-brand-surface,#fff)!important}
.pdcm-suite-brand-mark.has-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:calc(var(--pdcm-button-radius,9px) * .6)}
.pdcm-login-brand{display:flex;justify-content:center;margin:0 0 16px}
.pdcm-login-brand img{display:block;max-width:min(190px,70%);max-height:82px;width:auto;height:auto;object-fit:contain}

@media (prefers-reduced-motion:reduce){
  :where(.pdcm-portal,.pdcm-admin,.pdcm-suite-shell) *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* Adaptação dos módulos legados ao mesmo contrato visual. */
:where(.pdcm-portal,.pdcm-admin,.pdcf-admin,.pdcf-portal-family,.pdck-unified,.pdcpv-dashboard)
:is(.pdca-connect-card,.pdca-connect-stage-card,.pdcf-family-card,.pdcf-summary-grid>div,.pdcf-child-list>article,.pdcf-security-box,.pdck-family-pin-card,.pdck-lesson-card,.pdck-present-card,.pdck-qr-card,.pdcm-leadership-card,.pdcm-module-card,.pdcm-org-person-card,.pdcpv-ministry-card){
  border-color:var(--pdcm-brand-border,#dbe3e8)!important;
  border-radius:var(--pdcm-card-radius,14px)!important;
  background:var(--pdcm-brand-surface,#fff)!important;
  color:var(--pdcm-brand-text,#26282a)!important;
  box-shadow:var(--pdcm-ui-shadow,0 8px 24px rgba(23,61,91,.10));
}
.pdcf-admin .pdcf-workspace-tabs,.pdcf-portal-family .pdcf-workspace-tabs,.pdcf-family-tabs{background:var(--pdcm-brand-primary-soft,#e9eef2)!important;border-color:var(--pdcm-brand-border,#dbe3e8)!important;border-radius:var(--pdcm-card-radius,14px)!important}
.pdcf-admin :is(.pdcf-workspace-tab,.pdcf-family-tab),.pdcf-portal-family :is(.pdcf-workspace-tab,.pdcf-family-tab){color:var(--pdcm-brand-primary,#173d5b)!important;border-radius:var(--pdcm-button-radius,9px)!important}
.pdcf-admin :is(.pdcf-workspace-tab,.pdcf-family-tab).is-active,.pdcf-portal-family :is(.pdcf-workspace-tab,.pdcf-family-tab).is-active{background:var(--pdcm-brand-primary,#173d5b)!important;color:var(--pdcm-brand-on-primary,#fff)!important;border-color:var(--pdcm-brand-primary,#173d5b)!important}
.pdcf-family-card__head,.pdcf-family-tabs{border-color:var(--pdcm-brand-border,#dbe3e8)!important}.pdcf-family-card__head{background:var(--pdcm-brand-surface,#fff)!important}.pdcf-family-card__head :is(h2,strong),.pdcf-summary-grid strong,.pdcf-child-list strong{color:var(--pdcm-brand-primary,#173d5b)!important}.pdcf-family-card__head p,.pdcf-summary-grid span,.pdcf-child-list span{color:var(--pdcm-brand-muted,#687986)!important}
.dc-prayer-form,.dc-intercession-panel,.dc-private-gateway,.dc-prayer-wall__card,.dc-request-card{border-radius:var(--pdcm-card-radius,14px)!important;box-shadow:var(--pdcm-ui-shadow,0 8px 24px rgba(23,61,91,.10))!important}
.pdcpv-hero{border-radius:var(--pdcm-card-radius,14px)!important}.pdcpv-ministry-card{box-shadow:var(--pdcm-ui-shadow,0 8px 24px rgba(23,61,91,.10))!important}
.pdck-operation .pdck-checkout-form,.pdck-camera-box{border-radius:var(--pdcm-card-radius,14px)!important;background:var(--pdcm-brand-background,#f5f7f9)!important;border-color:var(--pdcm-brand-border,#dbe3e8)!important}
