/*
 * Elementor authority layer.
 * It contains no independent brand palette and does not rebuild page layout.
 * Values come from Elementor global settings or the SP functional widget.
 */

.elementor-widget-sp_portal_block .sp-elementor-portal-widget{
  --spw-text:var(--e-global-color-text,inherit);
  --spw-heading:var(--e-global-color-primary,inherit);
  --spw-accent:var(--e-global-color-accent,currentColor);
  color:var(--spw-text);
  font-family:var(--e-global-typography-text-font-family,inherit);
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(p,label,li,td,th,small,span){color:var(--spw-text)}
.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(h1,h2,h3,h4,h5,h6,strong){color:var(--spw-heading)!important}
.elementor-widget-sp_portal_block .sp-elementor-portal-widget a:not(.button):not(.sp-btn):not(.sp-button){color:var(--spw-accent)}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea){
  background:var(--spw-field-bg)!important;
  color:var(--spw-field-text)!important;
  border-color:var(--spw-field-border)!important;
  border-radius:var(--spw-field-radius)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(button,.button,input[type=submit],a.sp-button,.sp-btn,.sp-neutral-action,.sp-auth-submit,.sp-registration-submit){
  background:var(--spw-button-bg)!important;
  color:var(--spw-button-text)!important;
  border-color:var(--spw-button-border)!important;
  border-radius:var(--spw-button-radius)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(button,.button,input[type=submit],a.sp-button,.sp-btn,.sp-neutral-action,.sp-auth-submit,.sp-registration-submit):hover{
  background:var(--spw-button-hover-bg)!important;
  color:var(--spw-button-hover-text)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(.sp-auth-card,.sp-registration-card,.student-dashboard-card,.sp-dashboard-overview,.sp-dashboard-details,.sp-dashboard-lesson,.sp-dashboard-subscription,.sp-dashboard-freeze,.sp-profile-card,.sp-trial-checkout,.sp-teacher-tools,.sp-panel,.sp-card){
  background:var(--spw-card-bg)!important;
  border-color:var(--spw-card-border)!important;
  border-radius:var(--spw-card-radius)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(.student-calendar,.student-calendar-grid-view,.student-calendar-grid-day-header,.sp-teacher-dashboard>section,.sp-teacher-dashboard>article,.sp-book-card-wrap,.sp-material-book-grid>*,.sp-class-panel,.sp-class-call-card,.sp-class-placeholder,.sp-class-overlay-dialog,.sp-exercise-modal-dialog,.sp-book-modal>div,[id^=sp-][id$=-modal]>div){
  border-color:var(--spw-card-border)!important;
  border-radius:var(--spw-card-radius)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(.sp-class-overlay-dialog,.sp-exercise-modal-dialog,.sp-book-modal>div,[id^=sp-][id$=-modal]>div){
  background:var(--spw-dialog-bg)!important;
  color:var(--spw-dialog-text)!important;
  border-color:var(--spw-dialog-border)!important;
  border-radius:var(--spw-dialog-radius)!important;
}

.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(.student-calendar-nav a,.sp-material-tabs button,.sp-class-top-actions button,.sp-class-layer-switcher a,.sp-pair-layer-switcher a).is-active,
.elementor-widget-sp_portal_block .sp-elementor-portal-widget :is(.student-calendar-nav a,.sp-material-tabs button,.sp-class-top-actions button,.sp-class-layer-switcher a,.sp-pair-layer-switcher a):hover{
  border-color:var(--spw-accent)!important;
  color:var(--spw-accent)!important;
}

/* The footer widget controls win over old plugin defaults. */
body .elementor-widget-sp_site_footer .sp-elementor-site-footer,
body .sp-global-elementor-footer .sp-elementor-site-footer{
  font-family:var(--e-global-typography-text-font-family,inherit);
}

body .elementor-widget-sp_site_footer .sp-elementor-site-footer :is(a,button,strong,span,small){
  font-family:inherit;
}
