/*
Theme Name: Eventelling27
Theme URI: https://eventelling.com
Author: Eventelling
Description: Portal de gestión y acceso web para Eventelling27.
Version: 0.1.91
Requires PHP: 7.3
Text Domain: eventelling27-theme
*/

:root {
  --e27-primary: #274b63;
  --e27-primary-dark: #173244;
  --e27-primary-rgb: 39,75,99;
  --e27-menu-active-rgb: 39,75,99;
  --e27-accent: #f2a541;
  --e27-bg: #f6f8fb;
  --e27-surface: #ffffff;
  --e27-soft: #eef4f8;
  --e27-text: #111827;
  --e27-muted: #667085;
  --e27-line: #d9e2ec;
  --e27-danger: #b42318;
  --e27-success: #23865f;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html, html.wp-toolbar, body { margin: 0 !important; min-height: 100%; padding-top: 0 !important; }
#wpadminbar { display: none !important; }
body { background: var(--e27-bg); color: var(--e27-text); font-size: 15px; }
a { color: var(--e27-primary); }
button, input, select, textarea { font: inherit; }

/* Reglas base reforzadas: deben ganar a estilos heredados de WordPress o plugins. */
.e27-admin-content .enviaaviso,
.e27-admin-content .button.enviaaviso,
.e27-admin-content .eventelling27-send-notice-button.enviaaviso,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}
.e27-admin-content .enviaaviso:disabled,
.e27-admin-content .enviaaviso.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}
.e27-admin-content .e27-popup-positive,
.e27-admin-content .button.e27-popup-positive,
.e27-admin-content button.e27-popup-positive {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.e27-admin-content .e27-popup-cancel,
.e27-admin-content .button.e27-popup-cancel,
.e27-admin-content button.e27-popup-cancel {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}
.e27-admin-content .e27-popup-link,
.e27-admin-content .button.e27-popup-link,
.e27-admin-content button.e27-popup-link {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}

.enviaaviso,
.button.enviaaviso,
button.enviaaviso,
.eventelling27-send-notice-button.enviaaviso,
.eventelling27-send-groups-button.enviaaviso {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}
.enviaaviso:disabled,
.enviaaviso.is-disabled,
.button.enviaaviso:disabled,
button.enviaaviso:disabled,
.eventelling27-send-notice-button.enviaaviso:disabled,
.eventelling27-send-groups-button.enviaaviso.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}
.e27-popup-positive,
.button.e27-popup-positive,
button.e27-popup-positive {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.e27-popup-cancel,
.button.e27-popup-cancel,
button.e27-popup-cancel {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}
.e27-popup-link,
.button.e27-popup-link,
button.e27-popup-link {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}

.e27-login-page {
  align-items: center;
  display: flex;
  min-height: 100vh;
  padding: 28px;
}

.e27-login-shell {
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(320px, 1fr);
  margin: 0 auto;
  max-width: 980px;
  min-height: 610px;
  overflow: hidden;
  width: 100%;
}

.e27-login-brand {
  background: #274b63;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 48px;
}

.e27-login-brand .e27-login-developer-logo { height: 54px; max-width: 210px; object-fit: contain; object-position: left; width: auto; }
.e27-login-client-logo {
  align-items: center;
  display: flex;
  height: 220px;
  justify-content: center;
  margin: 18px auto 8px;
  max-width: 240px;
  width: 100%;
}
.e27-login-client-logo img {
  height: auto;
  max-height: 190px;
  max-width: 100%;
  object-fit: contain;
  width: auto;
}
.e27-login-brand h1 { font-size: 36px; line-height: 1.15; margin: 36px 0 12px; }
.e27-login-client-logo + h1 { margin-top: 18px; }
.e27-login-brand p { color: rgba(255,255,255,.82); line-height: 1.6; }
.e27-login-brand .e27-login-creator { font-size: 13px; margin: 14px 0 0; text-align: right; width: 100%; }
.e27-login-creator a { color: #fff; font-weight: 700; text-decoration: none; }
.e27-login-panel a { color: #274b63; }
.e27-login-panel { align-items: center; background: var(--e27-surface); display: flex; padding: 48px; }
.e27-login-form { max-width: 390px; width: 100%; }
.e27-login-form h2 { font-size: 28px; margin: 0 0 8px; }
.e27-login-form > p { color: var(--e27-muted); line-height: 1.5; margin: 0 0 28px; }
.e27-field { display: block; margin-bottom: 18px; }
.e27-field span { display: block; font-weight: 650; margin-bottom: 7px; }
.e27-field input {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  min-height: 46px;
  padding: 10px 12px;
  width: 100%;
}
.e27-field input:focus { border-color: var(--e27-primary); box-shadow: 0 0 0 3px rgba(var(--e27-primary-rgb),.12); outline: 0; }
.e27-password-field { display: block; margin: 0; position: relative; }
.e27-password-field input { padding-right: 48px; }
.e27-password-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--e27-muted);
  cursor: pointer;
  display: flex;
  height: 42px;
  justify-content: center;
  position: absolute;
  right: 2px;
  top: 2px;
  width: 44px;
}
.e27-password-toggle:hover,
.e27-password-toggle:focus { color: var(--e27-primary); outline: 0; }
.e27-button {
  background: #274b63;
  border: 0;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  font-weight: 700;
  min-height: 46px;
  padding: 10px 18px;
}
.e27-button:hover { background: #0b2a4a; }
.e27-login-error { border-left: 3px solid var(--e27-danger); color: var(--e27-danger); margin-bottom: 20px; padding: 10px 12px; }
.e27-login-message { border-left: 3px solid var(--e27-success); color: #166534; margin-bottom: 20px; padding: 10px 12px; }
.e27-honeypot { left: -10000px; position: absolute; }

.e27-admin-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); min-height: 100vh; transition: grid-template-columns .2s ease; }
.e27-sidebar { background: #0b2239; color: #fff; padding: 22px 18px; position: relative; }
.e27-sidebar-collapse {
  align-items: center;
  background: rgba(255,255,255,.08);
  border: 0;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  display: flex;
  height: 30px;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 10px;
  top: 10px;
  width: 30px;
}
.e27-sidebar-collapse:hover { background: rgba(255,255,255,.16); }
.e27-sidebar-brand { align-items: center; display: flex; justify-content: center; min-height: 84px; padding: 10px 28px 6px; text-align: center; }
.e27-sidebar-brand img { height: 76px; max-width: 150px; object-fit: contain; object-position: center; width: 76px; }
.e27-sidebar-user { border-bottom: 1px solid rgba(255,255,255,.12); margin: 0 10px 14px; padding: 0 0 12px; text-align: center; }
.e27-sidebar-user strong { display: block; line-height: 1.25; margin: 0; }
.e27-sidebar-user .e27-sidebar-logout,
.e27-sidebar-user .e27-sidebar-logout:hover,
.e27-sidebar-user .e27-sidebar-logout:focus {
  color: rgba(255,255,255,.72);
  display: inline-block;
  font-size: 13px;
  line-height: 1.2;
  min-height: 0;
  padding: 2px 0 0;
  text-decoration: none;
}
.e27-sidebar nav { margin-top: 12px; }
.e27-sidebar nav a {
  align-items: center;
  border-radius: 6px;
  color: rgba(255,255,255,.78);
  display: flex;
  gap: 11px;
  margin-bottom: 5px;
  min-height: 44px;
  padding: 10px 12px;
  text-decoration: none;
}
.e27-sidebar button { font: inherit; }
.e27-sidebar a:hover { background: rgba(255,255,255,.1); color: #fff; }
.e27-sidebar a,
.e27-sidebar-parent,
.e27-sidebar a .dashicons,
.e27-sidebar-parent .dashicons,
.e27-sidebar a .e27-menu-text,
.e27-sidebar-parent .e27-menu-text {
  color: rgba(255,255,255,.78);
}
.e27-sidebar a:hover,
.e27-sidebar-parent:hover,
.e27-sidebar a:hover .dashicons,
.e27-sidebar-parent:hover .dashicons,
.e27-sidebar a:hover .e27-menu-text,
.e27-sidebar-parent:hover .e27-menu-text {
  color: #fff;
}
.e27-sidebar .dashicons { height: 20px; width: 20px; }
.e27-sidebar .e27-generic-circle::before {
  background: currentColor;
  border-radius: 50%;
  content: "";
  display: block;
  height: 9px;
  margin: 6px auto 0;
  width: 9px;
}
.e27-sidebar-group { margin-bottom: 14px; }
.e27-sidebar-parent {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: rgba(255,255,255,.78);
  cursor: pointer;
  display: flex;
  gap: 11px;
  min-height: 44px;
  padding: 10px 12px;
  text-align: left;
  width: 100%;
}
.e27-sidebar-parent:hover { background: rgba(255,255,255,.1); color: #fff; }
.e27-sidebar-group.is-open > .e27-sidebar-parent {
  background: rgba(var(--e27-menu-active-rgb),.5);
}
.e27-sidebar-group.is-open > .e27-sidebar-parent.is-active {
  background: rgba(var(--e27-primary-rgb),.5);
}
.e27-sidebar a.e27-sidebar-main-item.is-active {
  background: rgba(var(--e27-primary-rgb),.5);
}
.e27-submenu-arrow {
  margin-left: auto;
  transition: transform .28s cubic-bezier(.2,.8,.2,1);
}
.e27-sidebar-group.is-open .e27-submenu-arrow { transform: rotate(180deg); }
.e27-sidebar-submenu {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding-top: 0;
  transform: translateY(-8px);
  transition:
    max-height .38s cubic-bezier(.2,.8,.2,1),
    opacity .2s ease,
    padding-top .28s ease,
    transform .28s ease;
}
.e27-sidebar-group.is-open .e27-sidebar-submenu {
  max-height: 420px;
  opacity: 1;
  padding-top: 5px;
  transform: translateY(0);
}
.e27-sidebar a.e27-sidebar-subitem {
  min-height: 40px;
  opacity: 0;
  padding-left: 24px;
  transform: translateY(-7px);
  transition:
    background-color .18s ease,
    color .18s ease,
    opacity .2s ease,
    transform .24s cubic-bezier(.2,.8,.2,1);
}
.e27-sidebar-group.is-open .e27-sidebar-subitem {
  opacity: 1;
  transform: translateY(0);
}
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(1) { transition-delay: .04s; }
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(2) { transition-delay: .07s; }
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(3) { transition-delay: .1s; }
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(4) { transition-delay: .13s; }
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(5) { transition-delay: .16s; }
.e27-sidebar-group.is-open .e27-sidebar-subitem:nth-child(6) { transition-delay: .19s; }
.e27-sidebar a.e27-sidebar-subitem.is-active {
  background: rgba(var(--e27-menu-active-rgb),.5);
}
.e27-reset-color {
  align-items: center;
  display: flex;
  gap: 7px;
  margin-top: 10px;
}
.e27-admin-layout.is-sidebar-collapsed { grid-template-columns: 76px minmax(0, 1fr); }
.is-sidebar-collapsed .e27-sidebar { padding: 48px 10px 18px; }
.is-sidebar-collapsed .e27-sidebar-collapse { right: 23px; }
.is-sidebar-collapsed .e27-sidebar-brand { min-height: 62px; padding: 0 0 12px; }
.is-sidebar-collapsed .e27-sidebar-brand img { height: 48px; width: 48px; }
.is-sidebar-collapsed .e27-sidebar-user,
.is-sidebar-collapsed .e27-menu-text,
.is-sidebar-collapsed .e27-submenu-arrow,
.is-sidebar-collapsed .e27-sidebar-submenu { display: none !important; }
.is-sidebar-collapsed .e27-sidebar-parent,
.is-sidebar-collapsed .e27-sidebar-main-item { justify-content: center; padding-left: 10px; padding-right: 10px; }
.is-sidebar-collapsed .e27-sidebar-group { margin-bottom: 5px; }
.e27-admin-main { display: flex; flex-direction: column; min-width: 0; }
.e27-admin-header {
  align-items: center;
  background: var(--e27-surface);
  border-bottom: 1px solid var(--e27-line);
  display: flex;
  justify-content: space-between;
  min-height: 72px;
  padding: 12px 34px;
}
.e27-admin-header-start { align-items: center; display: flex; gap: 12px; min-width: 0; }
.e27-admin-header strong { display: block; }
.e27-admin-header span { color: var(--e27-muted); font-size: 13px; }
.e27-mobile-menu-toggle,
.e27-mobile-menu-backdrop { display: none; }
.e27-admin-header-actions { align-items: center; display: flex; gap: 6px; }
.e27-top-settings { position: relative; }
.e27-top-settings-menu {
  background: #fff;
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  box-shadow: 0 16px 42px rgba(11, 34, 57, .16);
  min-width: 140px;
  padding: 6px;
  position: absolute;
  right: -15px;
  top: calc(100% + -5px);
  z-index: 20;
}
.e27-top-settings-menu[hidden] { display: none; }
.e27-top-settings:hover .e27-top-settings-menu {
  display: block !important;
}
.e27-top-settings-menu a {
  align-items: center;
  border-radius: 5px;
  color: var(--e27-text);
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  text-decoration: none;
}
.e27-top-settings-menu a .dashicons {
  color: var(--e27-primary);
  font-size: 18px;
  height: 18px;
  width: 18px;
}
.e27-top-settings-menu a:hover,
.e27-top-settings-menu a:focus {
  background: var(--e27-soft);
  color: var(--e27-primary);
  outline: 0;
}
.e27-request-bell,
.e27-client-settings {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: var(--e27-text);
  cursor: pointer;
  display: flex;
  height: 44px;
  justify-content: center;
  max-width: 180px;
  min-width: 44px;
  position: relative;
  text-decoration: none;
}
.e27-request-bell:hover,
.e27-request-bell.is-active,
.e27-top-settings.is-active .e27-client-settings,
.e27-top-settings.is-open .e27-client-settings,
.e27-client-settings:hover,
.e27-client-settings.is-active { background: var(--e27-soft); color: var(--e27-primary); }
.e27-request-bell .dashicons,
.e27-client-settings .dashicons { font-size: 25px; height: 25px; width: 25px; }
.e27-client-settings img {
  display: block;
  max-height: 34px;
  max-width: 100px;
  object-fit: contain;
  width: auto;
}
.e27-request-count {
  align-items: center;
  background: #d92d20;
  border: 2px solid #fff;
  border-radius: 999px;
  color: #fff !important;
  display: flex;
  font-size: 10px !important;
  font-weight: 700;
  height: 20px;
  justify-content: center;
  min-width: 20px;
  padding: 0 4px;
  position: absolute;
  right: 0;
  top: 0;
}
.e27-client-required {
  background: #d92d20;
  border: 2px solid #fff;
  border-radius: 50%;
  height: 12px;
  position: absolute;
  right: 2px;
  top: 2px;
  width: 12px;
}
.e27-admin-content { padding: 30px 34px 60px; }
.e27-portal-footer {
  align-items: center;
  border-top: 1px solid rgba(102,112,133,.22);
  color: var(--e27-muted);
  display: flex;
  font-size: 13px;
  justify-content: space-between;
  margin-top: auto;
  min-height: 54px;
  padding: 12px 34px;
}
.e27-portal-footer-creator { margin-left: auto; text-align: right; }
.e27-portal-footer-creator a { font-weight: 650; text-decoration: none; }
.e27-admin-content .wrap { margin: 0; }
.e27-admin-content h1 { display: none; }
.e27-admin-content .form-table { background: var(--e27-surface); border-collapse: collapse; width: 100%; }
.e27-admin-content .form-table th,
.e27-admin-content .form-table td { border-bottom: 1px solid var(--e27-line); padding: 10px; text-align: left; vertical-align: top; }
.e27-admin-content .widefat { background: var(--e27-surface); border: 1px solid var(--e27-line); border-collapse: collapse; width: 100%; }
.e27-admin-content .widefat th,
.e27-admin-content .widefat td { border-bottom: 1px solid var(--e27-line); padding: 12px; text-align: left; }
.e27-admin-content input[type="text"],
.e27-admin-content input[type="email"],
.e27-admin-content input[type="password"],
.e27-admin-content input[type="url"],
.e27-admin-content input[type="number"],
.e27-admin-content select,
.e27-admin-content textarea { border: 1px solid var(--e27-line); border-radius: 5px; max-width: 100%; padding: 8px 10px; }
.e27-admin-content .button,
.e27-admin-content .button-primary,
.e27-admin-content input[type="submit"] {
  background: var(--e27-primary);
  border: 0;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  padding: 9px 15px;
  text-decoration: none;
}
.e27-admin-content .e27-field-wide { min-width: 250px; width: 250px; }
.e27-admin-content .e27-field-compact { max-width: 150px; width: 150px; }
.e27-client-password-field { display: block; margin: 0; max-width: 320px; position: relative; }
.e27-client-password-field input { padding-right: 48px; width: 100%; }
.e27-client-password-field .e27-password-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--e27-muted);
  cursor: pointer;
  display: flex;
  height: 40px;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 2px;
  top: 2px;
  width: 44px;
}
.e27-client-password-field .e27-password-toggle:hover,
.e27-client-password-field .e27-password-toggle:focus { color: var(--e27-primary); outline: 0; }
.e27-admin-content .subsubsub { list-style: none; margin: 0 0 20px; padding: 0; }
.e27-admin-content .subsubsub li { display: inline; }
.e27-admin-content .notice { background: #fff; border-left: 4px solid var(--e27-success); margin: 0 0 20px; padding: 12px; }
.e27-admin-content .e27-request-status.is-accepted { color: #16803c !important; }
.e27-admin-content .e27-request-status.is-rejected { color: #b42318 !important; }
.e27-admin-content .e27-request-status.is-pending { color: #d97706 !important; }
.e27-admin-content .eventelling27-registration-requests-page .subsubsub a,
.e27-admin-content .eventelling27-registration-requests-page .widefat a,
.e27-admin-content .eventelling27-registration-requests-page .eventelling27-requests-table th a {
  color: #274b63 !important;
  text-decoration: none !important;
}
.e27-admin-content .eventelling27-registration-requests-page .eventelling27-requests-table th a:hover,
.e27-admin-content .eventelling27-registration-requests-page .eventelling27-requests-table th a:focus,
.e27-admin-content .eventelling27-registration-requests-page .subsubsub a:hover,
.e27-admin-content .eventelling27-registration-requests-page .subsubsub a:focus,
.e27-admin-content .eventelling27-registration-requests-page .widefat a:hover,
.e27-admin-content .eventelling27-registration-requests-page .widefat a:focus {
  color: #274b63 !important;
  text-decoration: none !important;
}
.e27-admin-content .eventelling27-registration-requests-page .subsubsub .current {
  color: #274b63 !important;
  font-weight: 700;
}
.eventelling27-dashboard-heading { margin-bottom: 24px; }
.eventelling27-dashboard-heading h1 { margin-bottom: 8px; }
.eventelling27-dashboard-heading p { color: var(--e27-muted); margin: 0; }
.eventelling27-dashboard-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eventelling27-dashboard-widget {
  align-items: flex-start;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: flex;
  gap: 18px;
  min-height: 220px;
  padding: 24px;
}
.eventelling27-dashboard-widget-icon {
  align-items: center;
  background: var(--e27-soft);
  border-radius: 6px;
  color: var(--e27-primary);
  display: flex;
  flex: 0 0 52px;
  height: 52px;
  justify-content: center;
}
.eventelling27-dashboard-widget-icon .dashicons { font-size: 28px; height: 28px; width: 28px; }
.eventelling27-dashboard-widget-content { display: flex; flex: 1; flex-direction: column; min-height: 170px; }
.eventelling27-dashboard-widget-count { color: var(--e27-primary); font-size: 34px; font-weight: 750; line-height: 1; }
.eventelling27-dashboard-widget h2 { font-size: 20px; margin: 8px 0; }
.eventelling27-dashboard-widget p { color: var(--e27-muted); margin: 0 0 20px; }
.eventelling27-dashboard-widget .button { align-self: flex-start; margin-top: auto; }
.eventelling27-forms-widget { display: block; }
.eventelling27-dashboard-widget-heading {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}
.eventelling27-dashboard-widget-heading .dashicons {
  color: var(--e27-primary);
  font-size: 24px;
  height: 24px;
  width: 24px;
}
.eventelling27-dashboard-widget-heading h2 { margin: 0; }
.eventelling27-forms-table-wrap { overflow-x: auto; }
.eventelling27-forms-table {
  border-collapse: collapse;
  width: 100%;
}
.eventelling27-forms-table th,
.eventelling27-forms-table td {
  border-bottom: 1px solid var(--e27-line);
  padding: 10px 12px;
  text-align: center;
}
.eventelling27-forms-table th:first-child,
.eventelling27-forms-table td:first-child { text-align: left; }
.eventelling27-forms-table a { text-decoration: none; }
.eventelling27-forms-table a.is-unread { font-weight: 750; }
.eventelling27-widget-action { margin: 18px 0 0 !important; text-align: right; }
.e27-future-page {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 100vh;
  padding: 28px;
  text-align: center;
}
.e27-future-page p { font-size: 20px; font-weight: 650; }
.e27-settings-block { background: var(--e27-surface); margin: 0 0 24px; }
.e27-settings-block > h2 { border-bottom: 1px solid var(--e27-line); margin: 0; padding: 20px 18px; }
.e27-client-settings-grid {
  align-items: start;
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.e27-client-settings-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
.e27-client-settings-grid .e27-settings-block {
  border: 1px solid var(--e27-line);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(11,42,74,.04);
  margin: 0;
  min-width: 0;
  overflow: hidden;
}
.e27-settings-page-client .e27-client-settings-column:first-child .e27-settings-block:nth-child(2),
.e27-settings-page-client .e27-client-settings-column:nth-child(2) .e27-settings-block:first-child,
.e27-settings-page-client .e27-client-settings-column:nth-child(2) .e27-settings-block:nth-child(3) {
  display: none;
}
.e27-client-settings-grid .form-table th { width: 38%; }
.e27-mail-sender-warning {
  background: #fff8e6;
  border-left: 4px solid #d98c00;
  color: var(--e27-text);
  margin: 12px 0 18px;
  padding: 10px 14px;
}
.e27-mail-sender-warning p { margin: 0; }
.e27-color-field { align-items: center; display: flex; gap: 12px; }
.e27-color-field input[type="color"] { height: 42px; padding: 3px; width: 58px; }
.eventelling27-inline-check { display: inline-flex; gap: 6px; margin-left: 16px; }
.e27-consent-field { align-items: flex-start; display: flex; gap: 9px; }
.e27-consent-field input { margin-top: 3px; }
.e27-consent-field a { font-weight: 650; }
.e27-legal-modal,
.e27-setup-modal,
.e27-session-modal,
.e27-message-modal {
  align-items: center;
  background: rgba(11,18,32,.62);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  padding: 28px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100000;
}
.e27-legal-modal[hidden],
.e27-setup-modal[hidden],
.e27-session-modal[hidden],
.e27-message-modal[hidden] { display: none; }
.e27-message-dialog {
  background: var(--e27-surface);
  border-radius: 6px;
  max-width: 480px;
  padding: 34px;
  position: relative;
  width: 100%;
}
.e27-message-dialog > .dashicons {
  color: #274b63;
  font-size: 38px;
  height: 38px;
  width: 38px;
}
.e27-message-dialog h2 { margin: 18px 0 10px; }
.e27-message-dialog p {
  color: var(--e27-muted);
  line-height: 1.55;
  margin-bottom: 24px;
  white-space: pre-line;
}
.e27-message-close {
  background: transparent;
  border: 0;
  color: var(--e27-muted);
  cursor: pointer;
  font-size: 28px;
  position: absolute;
  right: 12px;
  top: 10px;
}
.e27-message-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.e27-legal-dialog {
  background: var(--e27-surface);
  border-radius: 6px;
  height: 85vh;
  max-width: 960px;
  overflow: hidden;
  position: relative;
  width: 85vw;
}
.e27-legal-dialog iframe { border: 0; height: 100%; width: 100%; }
.e27-legal-page {
  background: #fff;
  color: var(--e27-text);
  min-height: 100vh;
  padding: 48px 54px 70px;
}
.e27-legal-content { margin: 0 auto; max-width: 820px; width: 100%; }
.e27-legal-content h1 { font-size: 30px; line-height: 1.25; margin: 0 0 24px; }
.e27-legal-body { font-size: 16px; line-height: 1.7; overflow-wrap: anywhere; }
.e27-legal-body > :first-child { margin-top: 0; }
.e27-legal-body img { height: auto; max-width: 100%; }
.e27-legal-close {
  align-items: center;
  background: var(--e27-text);
  border: 0;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-size: 24px;
  height: 36px;
  justify-content: center;
  position: absolute;
  right: 12px;
  top: 12px;
  width: 36px;
  z-index: 2;
}
.e27-setup-dialog {
  background: var(--e27-surface);
  border-radius: 6px;
  max-width: 540px;
  padding: 34px;
  text-align: center;
  width: 100%;
}
.e27-session-dialog {
  background: var(--e27-surface);
  border-radius: 6px;
  max-width: 460px;
  padding: 34px;
  position: relative;
  width: 100%;
}
.e27-session-dialog > .dashicons {
  color: var(--e27-primary);
  font-size: 38px;
  height: 38px;
  width: 38px;
}
.e27-session-dialog h2 { margin: 18px 0 10px; }
.e27-session-dialog > p { color: var(--e27-muted); line-height: 1.55; }
.e27-session-close {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--e27-muted);
  cursor: pointer;
  display: flex;
  font-size: 28px;
  height: 40px;
  justify-content: center;
  position: absolute;
  right: 12px;
  top: 10px;
  width: 40px;
}
.e27-session-close:hover { color: var(--e27-text); }
.e27-session-field {
  display: block;
  margin: 18px 0;
  text-align: left;
}
.e27-session-field > span:first-child {
  display: block;
  font-weight: 650;
  margin-bottom: 7px;
}
.e27-session-field input {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  min-height: 46px;
  padding: 10px 12px;
  width: 100%;
}
.e27-session-field input[readonly] {
  background: var(--e27-soft);
  color: var(--e27-muted);
}
.e27-session-error {
  color: var(--e27-danger);
  margin: 0 0 16px;
  text-align: left;
}
.e27-session-dialog .e27-button { width: 100%; }
.e27-setup-dialog > .dashicons { color: var(--e27-accent); font-size: 38px; height: 38px; width: 38px; }
.e27-setup-dialog h2 { margin: 18px 0 10px; }
.e27-setup-dialog p { color: var(--e27-muted); line-height: 1.55; }
.e27-setup-missing { font-size: 13px; }
body.e27-modal-open { overflow: hidden; }
body.e27-mobile-menu-open { overflow: hidden; }
.is-setup-required .e27-sidebar nav,
.is-setup-required .e27-request-bell { pointer-events: none; }
.is-setup-required .e27-sidebar nav { opacity: .55; }
.eventelling27-admin-frame {
  background: var(--e27-surface);
  border: 0;
  display: block;
  height: calc(100dvh + 50px);
  overflow: hidden;
  width: 100%;
}
.eventelling27-directory { min-width: 0; }
.eventelling27-directory-heading {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 24px;
}
.eventelling27-directory-heading h1 { margin-bottom: 8px; }
.eventelling27-directory-heading p { color: var(--e27-muted); margin: 0; }
.eventelling27-directory-counters {
  align-items: center;
  color: #274b63;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 13px;
  font-weight: 400;
  gap: 7px;
  justify-content: flex-end;
  white-space: nowrap;
}
.eventelling27-directory-counters .dashicons {
  color: #274b63;
  font-size: 19px;
  height: 19px;
  width: 19px;
}
.eventelling27-directory-counter {
  color: #274b63;
  font-weight: 400;
}
.eventelling27-directory-counter.is-total {
  color: var(--e27-primary);
}
.eventelling27-directory-counter-separator {
  color: #8a98a8;
}
.eventelling27-total-badge,
.eventelling27-system-label {
  background: var(--e27-soft);
  border-radius: 4px;
  color: var(--e27-primary);
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  padding: 6px 9px;
}
.eventelling27-directory-notice {
  background: #fff;
  border-left: 4px solid var(--e27-success);
  margin-bottom: 20px;
  padding: 13px 16px;
}
.eventelling27-directory-notice.is-error { border-left-color: var(--e27-danger); }
.eventelling27-directory-steps {
  display: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 8px;
}
.eventelling27-directory-steps button {
  align-items: center;
  background: #fff;
  border: 1px solid var(--e27-line);
  color: var(--e27-text);
  display: flex;
  gap: 8px;
  min-height: 40px;
  padding: 7px 14px;
  text-align: left;
}
.eventelling27-directory-steps button + button { border-left: 0; }
.eventelling27-directory-steps button:disabled { cursor: default; opacity: .55; }
.eventelling27-directory-steps button span {
  align-items: center;
  background: #e8edf3;
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 24px;
  font-size: 12px;
  font-weight: 800;
  height: 24px;
  justify-content: center;
}
.eventelling27-directory-steps button.is-active {
  background: #28a6d7;
  border-color: #28a6d7;
  color: #fff;
}
.eventelling27-directory-steps button.is-active span {
  background: rgba(255,255,255,.22);
}
.eventelling27-directory-steps button.is-active.is-available {
  background: #28a6d7;
  border-color: #28a6d7;
  color: #fff;
}
.eventelling27-directory-steps button.is-active.is-available:hover {
  background: #28a6d7;
}
.eventelling27-directory-steps button.is-available {
  border-color: #274b63;
  color: #274b63;
  cursor: pointer;
  font-weight: 700;
  opacity: 1;
}
.eventelling27-directory-steps button.is-available:hover {
  background: rgba(var(--e27-primary-rgb), .08);
}
.eventelling27-recipients-panel,
.eventelling27-compose-panel {
  background: #fff;
  border: 1px solid var(--e27-line);
  padding: 18px;
}
.eventelling27-recipients-heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 14px;
}
.eventelling27-recipients-heading strong { font-size: 18px; }
.eventelling27-recipients-heading p {
  color: var(--e27-muted);
  margin: 4px 0 0;
}
.eventelling27-recipients-heading > span {
  background: var(--e27-primary);
  border-radius: 5px;
  color: #fff;
  font-weight: 700;
  min-width: 38px;
  padding: 8px 10px;
  text-align: center;
}
.eventelling27-recipients-table-wrap { overflow-x: auto; }
.eventelling27-recipients-table th,
.eventelling27-recipients-table td {
  border-bottom: 1px solid var(--e27-line);
  padding: 10px 12px;
}
.eventelling27-recipient-remove-column { width: 42px; }
.eventelling27-recipient-remove {
  background: transparent;
  border: 0;
  color: #df1717;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  padding: 0 6px;
}
.eventelling27-recipients-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 16px;
}
.eventelling27-directory-filters,
.eventelling27-directory-operations,
.eventelling27-new-group {
  align-items: flex-end;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 20px;
  padding: 18px;
}
.eventelling27-directory-search-panel {
  background: #d7d7d7;
  border: 1px solid var(--e27-line);
  margin-bottom: 18px;
  padding: 0 10px 12px;
}
.eventelling27-panel-title {
  align-items: center;
  background: #274b63;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: flex;
  gap: 7px;
  justify-content: flex-start;
  margin: 0 -10px 10px;
  min-height: 38px;
  padding: 4px 9px;
  text-align: left;
  width: calc(100% + 20px);
}
.eventelling27-panel-title .dashicons:last-child { margin-left: auto; }
.eventelling27-directory-search-panel:not(.is-open) {
  padding-bottom: 0;
}
.eventelling27-directory-search-panel:not(.is-open) [data-e27-search-content] {
  display: none;
}
.eventelling27-operation-section:not(.is-open) [data-e27-operation-content] {
  display: none;
}
.eventelling27-directory-search-panel:not(.is-open) .eventelling27-panel-title {
  margin-bottom: 0;
}
.eventelling27-directory-search-panel:not(.is-open) .eventelling27-panel-title .dashicons:last-child,
.eventelling27-operation-section:not(.is-open) .eventelling27-panel-title .dashicons:last-child {
  transform: rotate(180deg);
}
.eventelling27-quick-search {
  align-items: stretch;
  background: #fff;
  border: 1px solid var(--e27-line);
  display: flex;
  gap: 0;
  margin-bottom: 8px;
  min-height: 44px;
  overflow: hidden;
  width: 100%;
}
.eventelling27-quick-search > .dashicons {
  flex: 0 0 54px;
  align-items: center;
  background: #eef2f6;
  display: flex;
  font-size: 25px;
  min-height: 42px;
  justify-content: center;
  width: 54px;
}
.eventelling27-quick-search > input {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  flex: 1 1 260px;
  min-height: 42px !important;
  min-width: 140px;
  padding: 7px 12px !important;
  width: 100%;
}
.eventelling27-top-group-filter {
  align-items: center;
  display: grid;
  flex: 0 1 260px;
  grid-template-columns: 54px minmax(165px, 1fr);
  min-width: 0;
  min-height: 42px;
}
.eventelling27-top-group-filter > .dashicons {
  align-items: center;
  background: #eef2f6;
  display: flex;
  font-size: 25px;
  height: 42px;
  justify-content: center;
  width: 54px;
}
.eventelling27-top-group-filter input {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  min-height: 42px !important;
  padding: 7px 12px !important;
  width: 100%;
}
.eventelling27-app-filter-wrap {
  align-items: center;
  display: flex;
  flex: 0 1 auto;
  gap: 12px;
  padding: 0 4px;
  min-width: 0;
}
.eventelling27-access-filter-wrap {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  padding: 0 4px;
}
.eventelling27-access-filter {
  align-items: center;
  display: inline-flex;
  font-size: 14px;
  font-weight: 700;
  gap: 6px;
  min-height: 34px;
  white-space: nowrap;
}
.eventelling27-access-filter input {
  margin: 0;
}
.eventelling27-app-filter-wrap .eventelling27-app-filter-status {
  margin: 0;
}
.eventelling27-quick-search-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 7px;
  padding: 0 4px;
}
.eventelling27-operation-section .eventelling27-panel-title small {
  font-size: 11px;
  font-weight: 400;
}
.eventelling27-directory-toolbar {
  justify-content: flex-end;
}
.eventelling27-directory-actions-bar {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
  min-height: 58px;
  padding: 8px 12px;
}
.eventelling27-directory-toolbar-start {
  align-items: center;
  display: flex;
  gap: 8px;
  margin-right: auto;
}
.eventelling27-directory-general-search {
  align-items: center;
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(170px, 4fr) minmax(210px, 250px) auto;
  margin-bottom: 5px;
  width: 100%;
}
.eventelling27-directory-general-search input {
  background: #fff;
  border: none;
  border-radius: 5px;
  min-height: 38px;
  padding: 5px;
  width: 100%;
}
.e27-admin-content input[type="search"] {
  border: none;
  border-radius: 5px;
  min-height: 38px;
  padding: 5px;
}
.eventelling27-directory-filter-label {
  color: var(--e27-muted);
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin: -12px 0 4px;
}
.eventelling27-directory-field-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  padding-top: 10px;
}
.eventelling27-directory-field-break {
  flex-basis: 100%;
  height: 0;
}
.eventelling27-directory-field-filters input,
.eventelling27-directory-field-filters select {
  background: #fff;
  border: 0;
  border-radius: 5px;
  max-width: 145px;
  min-height: 38px;
  min-width: 125px;
  padding: 5px;
  width: auto;
}
.eventelling27-directory-field-filters input[name="directory_group_query"] {
  min-width: 165px;
}
.eventelling27-app-filter {
  align-items: center;
  background: #fff;
  border-radius: 5px;
  display: inline-flex;
  font-weight: 600;
  gap: 7px;
  min-height: 38px;
  padding: 5px 12px;
  white-space: nowrap;
}
.eventelling27-app-filter input[type="checkbox"] {
  min-height: 0;
  min-width: 0;
}
.eventelling27-app-filter-status {
  color: #c96a73;
  display: block;
  font-size: 12px;
  margin: 5px 0 0 auto;
  text-align: right;
  width: fit-content;
}
.eventelling27-send-notice-button,
.eventelling27-send-groups-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45;
}
.eventelling27-send-notice-button .dashicons::before {
  content: "\f242";
}
.eventelling27-send-notice-button.is-ready,
.eventelling27-send-notice-button:not(:disabled),
.eventelling27-send-groups-button.is-ready,
.eventelling27-send-groups-button:not(.is-disabled) {
  opacity: 1;
}
.eventelling27-directory-toolbar .button.is-secondary,
.eventelling27-directory-operations .button,
.eventelling27-student-toolbar .button.is-secondary,
.eventelling27-student-operations .button {
  background: #274b63;
  border-color: #274b63;
  color: #fff;
}
.e27-admin-content .button,
.e27-admin-content .button-primary,
.e27-admin-content input[type="submit"],
.e27-admin-content button.button {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}
.e27-admin-content .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-groups-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}
.eventelling27-directory-toolbar .button.is-secondary.is-disabled,
.eventelling27-directory-toolbar .button.is-secondary:disabled,
.eventelling27-student-toolbar .button.is-secondary.is-disabled,
.eventelling27-student-toolbar .button.is-secondary:disabled {
  opacity: .42;
}
.eventelling27-clear-search,
.eventelling27-clear-filters,
.eventelling27-clear-selection,
.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.eventelling27-clear-search.is-disabled,
.eventelling27-clear-filters.is-disabled,
.eventelling27-clear-selection:disabled,
.eventelling27-clear-selection.is-disabled {
  opacity: .45;
}
.e27-admin-content .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-groups-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}
.e27-admin-content .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.is-disabled {
  opacity: .45 !important;
}
.e27-admin-content .eventelling27-send-notice-button.is-ready,
.e27-admin-content .eventelling27-send-notice-button:not(:disabled),
.e27-admin-content .eventelling27-send-groups-button.is-ready,
.e27-admin-content .eventelling27-send-groups-button:not(.is-disabled) {
  opacity: 1 !important;
}
.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection,
.eventelling27-directory-toolbar-start .eventelling27-clear-search,
.eventelling27-directory-toolbar-start .eventelling27-clear-selection {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.e27-admin-content .button:not(:disabled):not(.is-disabled),
.e27-admin-content button:not(:disabled):not(.is-disabled),
.e27-admin-content a.button:not(.is-disabled),
.e27-admin-content .button-link:not(:disabled):not(.is-disabled) {
  cursor: pointer;
}
.eventelling27-directory-operations,
.eventelling27-student-operations {
  align-items: flex-end;
}
.eventelling27-directory-operations [data-e27-go-confirm],
.eventelling27-student-operations [data-e27-student-go-confirm] {
  margin-right: auto;
}
.eventelling27-directory-operations [data-e27-operation-fields],
.eventelling27-student-operations [data-e27-student-target] {
  margin-left: auto;
}
.eventelling27-directory-operations input[name="destination_group_query"],
.eventelling27-student-operations input[name="destination_group_query"] {
  min-width: 300px;
}
.eventelling27-inline-edit-form input[readonly] {
  background: #eef2f6;
  color: var(--e27-muted);
  cursor: default;
}
.e27-settings-page-profile input[readonly] {
  background: #eef2f6;
  color: #667085;
  cursor: default;
  opacity: .72;
}
.eventelling27-directory-search-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 9px;
}
.eventelling27-directory-search-actions .button:disabled {
  opacity: .45;
  pointer-events: none;
}
.eventelling27-directory-operations.is-disabled {
  opacity: 1;
}
.eventelling27-directory-operations.is-disabled select,
.eventelling27-directory-operations.is-disabled input,
.eventelling27-directory-operations.is-disabled button {
  opacity: .45;
}
.eventelling27-directory-toolbar-start .button:not(.eventelling27-clear-search):not(.eventelling27-clear-filters):not(.eventelling27-clear-selection) {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}
.eventelling27-directory-toolbar-start .eventelling27-clear-search:not(.is-disabled),
.eventelling27-directory-toolbar-start .eventelling27-clear-selection:not(:disabled),
.eventelling27-student-toolbar .eventelling27-clear-search:not(.is-disabled),
.eventelling27-student-toolbar .eventelling27-clear-selection:not(:disabled) {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
}
.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.eventelling27-directory-toolbar-start .button:disabled,
.eventelling27-directory-toolbar-start .button.is-disabled {
  opacity: .42;
}
.eventelling27-operation-help {
  color: #111827;
  flex: 1 1 300px;
  margin: 0;
  text-align: center;
}
.eventelling27-directory-search-actions .dashicons {
  font-size: 16px;
  height: 16px;
  width: 16px;
}
.eventelling27-directory-filters label,
.eventelling27-directory-operations label,
.eventelling27-new-group label {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.eventelling27-directory-filters label > span,
.eventelling27-directory-operations label > span,
.eventelling27-new-group label > span {
  color: var(--e27-muted);
  font-size: 12px;
  font-weight: 700;
}
.eventelling27-directory-filters .is-search { flex: 1 1 280px; }
.eventelling27-directory-filters .is-search input { width: 100%; }
.eventelling27-directory-filters input[list] { min-width: 230px; }
.eventelling27-new-group .is-description { flex: 1 1 320px; }
.eventelling27-directory-table-wrap {
  background: var(--e27-surface);
  overflow-x: auto;
}
.eventelling27-directory-empty-results {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  color: var(--e27-muted);
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-content: center;
  min-height: 150px;
  padding: 24px;
  text-align: center;
}
.eventelling27-directory-empty-results .dashicons {
  color: #274b63;
  font-size: 28px;
  height: 28px;
  width: 28px;
}
.eventelling27-directory-empty-results strong {
  color: var(--e27-text);
  font-size: 16px;
}
.eventelling27-directory-empty-results p { margin: 0; }
.eventelling27-directory-table { min-width: 840px; }
.eventelling27-directory-table col.e27-col-select { width: 34px; }
.eventelling27-directory-table col.e27-col-action { width: 32px; }
.eventelling27-directory-table col.e27-col-person-first { width: 145px; }
.eventelling27-directory-table col.e27-col-person-last { width: 175px; }
.eventelling27-directory-table col.e27-col-email { width: 230px; }
.eventelling27-directory-table col.e27-col-reference { width: 105px; }
.eventelling27-directory-table col.e27-col-access { width: 58px; }
.eventelling27-directory-table col.e27-col-registration { width: 105px; }
.eventelling27-directory-table th,
.eventelling27-directory-table td {
  line-height: 1.2;
  padding-bottom: 6px !important;
  padding-top: 6px !important;
}
.eventelling27-directory-table .e27-person-first-cell {
  min-width: 145px;
  width: 145px;
}
.eventelling27-directory-table .e27-person-last-cell {
  min-width: 175px;
  width: 175px;
}
.eventelling27-directory-table small {
  color: var(--e27-muted);
  display: block;
  margin-top: 4px;
}
.eventelling27-directory-table .check-column {
  padding-left: 14px !important;
  width: 34px;
}
.eventelling27-action-column {
  padding-left: 5px !important;
  padding-right: 5px !important;
  text-align: center;
  width: 32px;
}
.eventelling27-action-column form { margin: 0; }
.eventelling27-action-column .button-link,
.eventelling27-directory-group-actions .button-link {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #2fa542;
  line-height: 1;
  padding: 0;
  text-decoration: none;
}
.eventelling27-action-column .button-link.is-danger,
.eventelling27-directory-group-actions .button-link.is-danger {
  color: #df1717;
}
.eventelling27-action-column .button-link.eventelling27-user-view-button {
  color: var(--e27-primary);
}
.eventelling27-directory-user-row {
  border-bottom: 1px solid #cfd8e2;
  transition: background-color .16s ease, color .16s ease;
}
.eventelling27-directory-user-row:hover { background: #eceff3; }
.eventelling27-directory-user-row.is-selected,
.eventelling27-directory-user-row.is-editing {
  background: #274b63;
  color: #fff;
}
.eventelling27-directory-user-row.is-selected a,
.eventelling27-directory-user-row.is-editing a,
.eventelling27-directory-user-row.is-selected .button-link,
.eventelling27-directory-user-row.is-editing .button-link {
  color: #fff;
}
.eventelling27-directory-user-row.is-selected .eventelling27-user-view-button,
.eventelling27-directory-user-row.is-editing .eventelling27-user-view-button {
  color: var(--e27-primary);
}
.eventelling27-directory-user-row.is-selected .eventelling27-device-icon,
.eventelling27-directory-user-row.is-editing .eventelling27-device-icon {
  color: #fff;
}
.eventelling27-directory-user-row [data-e27-inline-field] {
  cursor: text;
  min-width: 88px;
}
.eventelling27-access-cell {
  min-width: 42px;
  text-align: center;
}
.eventelling27-device-icon {
  align-items: center;
  color: #274b63;
  display: inline-flex;
  justify-content: center;
  min-height: 24px;
  min-width: 26px;
  position: relative;
}
.eventelling27-device-icon .dashicons {
  font-size: 20px;
  height: 20px;
  width: 20px;
}
.eventelling27-device-icon.is-android::after,
.eventelling27-device-icon.is-iphone::after {
  background: #fff;
  border: 1px solid currentColor;
  border-radius: 50%;
  bottom: -1px;
  content: "A";
  font-size: 8px;
  font-weight: 800;
  height: 11px;
  line-height: 9px;
  position: absolute;
  right: 0;
  text-align: center;
  width: 11px;
}
.eventelling27-device-icon.is-iphone::after { content: "i"; }
.eventelling27-inline-cell-input {
  background: #fff;
  border: 1px solid #9aa9b8;
  border-radius: 3px;
  color: #111827;
  min-height: 30px;
  padding: 4px 6px;
  width: 100%;
}
.eventelling27-sort-link {
  color: inherit;
  display: inline-flex;
  font-weight: 700;
  text-decoration: none !important;
  white-space: nowrap;
}
.eventelling27-sort-link:hover {
  color: var(--e27-primary);
  text-decoration: none !important;
}
.eventelling27-group-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.eventelling27-group-chips span {
  background: rgba(var(--e27-primary-rgb), .1);
  border-radius: 4px;
  color: var(--e27-primary);
  font-size: 12px;
  padding: 4px 7px;
}
.eventelling27-group-chips span.is-empty {
  background: var(--e27-soft);
  color: var(--e27-muted);
}
.eventelling27-directory-operations {
  align-items: flex-end;
  background: rgb(215 215 215);
  border: 0;
  display: flex;
  flex-direction: row;
  gap: 14px;
  margin: 10px 0 0;
  padding: 10px 0 0;
}
.eventelling27-directory-operations:not(.is-disabled) .button:not(.eventelling27-send-notice-button) {
  background: #274b63 !important;
  color: #fff !important;
}
.eventelling27-directory-operations[hidden],
.eventelling27-new-group[hidden],
[data-e27-edit-panel][hidden] {
  display: none !important;
}
.eventelling27-directory-operations > [data-e27-operation-fields] {
  align-items: flex-end;
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: flex-end;
  margin-left: auto;
  width: auto;
}
.eventelling27-directory-operations > [data-e27-operation-fields][hidden] {
  display: none;
}
.eventelling27-directory .e27-muted { color: var(--e27-muted); }
.eventelling27-inline-edit-form {
  background: var(--e27-soft);
  display: block;
  padding: 16px;
}
.eventelling27-inline-edit-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.eventelling27-inline-edit-row.is-secondary {
  border-top: 1px solid var(--e27-line);
  margin-top: 10px;
  padding-top: 10px;
}
.eventelling27-inline-edit-form label {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.eventelling27-inline-edit-form label > span {
  /*color: var(--e27-muted);*/
  /*font-size: 12px;*/
  font-weight: 700;
}
.eventelling27-inline-edit-actions {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: flex-start;
  margin-top: 12px;
}
.eventelling27-group-search .is-search { flex: 1 1 360px; }
.eventelling27-directory-toolbar {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  gap: 18px;
  justify-content: flex-end;
  margin-bottom: 8px;
  min-height: 48px;
  padding: 8px 12px;
}
.eventelling27-directory-toolbar.is-table-tools,
.eventelling27-groups-pagination.is-table-tools {
  justify-content: space-between;
}
.eventelling27-table-tools-left,
.eventelling27-table-tools-right {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 18px;
}
.eventelling27-table-tools-right {
  margin-left: auto;
}
.eventelling27-directory-toolbar label,
.eventelling27-directory-global-pagination label {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}
.eventelling27-directory-toolbar select,
.eventelling27-directory-global-pagination select {
  min-height: 34px;
}
.eventelling27-directory-toolbar .button-link {
  align-items: center;
  color: var(--e27-text);
  display: inline-flex;
  gap: 5px;
  text-decoration: none;
}
.eventelling27-directory-toolbar > .button-link,
.eventelling27-table-tools-right .button-link {
  border: 1px solid #d9e2ec;
  border-radius: 5px;
  min-height: 38px;
  padding: 7px 10px;
}
.eventelling27-directory-group {
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  margin-bottom: 7px;
}
.eventelling27-directory-group-header {
  align-items: center;
  background: #f1f3f5;
  display: grid;
  grid-template-columns: 34px 34px minmax(0, 1fr) auto;
  min-height: 44px;
}
.eventelling27-directory-groups-header {
  align-items: center;
  background: #fff;
  border: 1px solid var(--e27-line);
  display: grid;
  grid-template-columns: 34px 34px minmax(145px, .55fr) minmax(220px, 1fr) 74px;
  min-height: 40px;
  padding: 0 10px;
}
.eventelling27-directory-groups-header strong {
  font-weight: 600;
  padding: 0 10px;
}
.eventelling27-directory-groups-header .eventelling27-sort-link {
  align-items: center;
  min-height: 40px;
  width: 100%;
}
.eventelling27-directory-group-arrow {
  align-items: center;
  background: transparent;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  height: 100%;
  justify-content: center;
  padding: 0;
}
.eventelling27-directory-group-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--e27-text);
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(145px, .55fr) minmax(220px, 1fr) 48px;
  min-height: 44px;
  padding: 7px 12px;
  text-align: left;
  width: 100%;
}
.eventelling27-directory-group-toggle small {
  align-items: center;
  color: var(--e27-muted);
  display: inline-flex;
  gap: 4px;
  font-weight: 700;
  justify-content: flex-end;
  text-align: right;
}
.eventelling27-directory-group-toggle small .dashicons {
  font-size: 17px;
  height: 17px;
  width: 17px;
}
.eventelling27-directory-group-arrow .dashicons {
  transition: transform .16s ease;
}
.eventelling27-directory-group.is-open .eventelling27-directory-group-arrow .dashicons {
  transform: rotate(90deg);
}
.eventelling27-directory-group-actions {
  align-items: center;
  display: flex;
  gap: 8px;
  padding-right: 12px;
}
.eventelling27-directory-group-actions form { margin: 0; }
.eventelling27-directory-group-content { display: none; }
.eventelling27-directory-group.is-open .eventelling27-directory-group-content {
  display: block;
}
.eventelling27-directory-group.is-total .eventelling27-directory-group-toggle strong {
  color: var(--e27-primary) !important;
  font-weight: 800;
}
.eventelling27-groups-table .is-total-group-name a {
  color: var(--e27-primary);
  text-decoration: none;
}
.eventelling27-groups-table .is-total-group-name {
  color: var(--e27-primary);
  font-weight: 800;
}
.eventelling27-groups-table .is-standard-group-name a {
  color: #274b63;
  text-decoration: none;
}
.eventelling27-groups-table .is-standard-group-name {
  color: #274b63;
  font-weight: 700;
}
.eventelling27-groups-table .eventelling27-group-name-link {
  align-items: center;
  display: inline-flex;
  font-weight: 700;
  gap: 4px;
}
.eventelling27-groups-table .eventelling27-group-name-link .dashicons {
  font-size: 15px;
  height: 15px;
  text-decoration: none;
  width: 15px;
}
.eventelling27-groups-table .eventelling27-group-name-link:hover,
.eventelling27-groups-table .eventelling27-group-name-link:focus {
  color: var(--e27-primary);
  text-decoration: none;
}
.eventelling27-group-search {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.eventelling27-directory-search-input,
.eventelling27-student-search input,
.eventelling27-student-search select,
.eventelling27-student-create input,
.eventelling27-student-create select,
.eventelling27-student-operations input,
.eventelling27-student-operations select {
  border: 0;
  border-radius: 5px;
  min-height: 38px;
  padding: 5px 10px;
}
.eventelling27-group-search .eventelling27-directory-search-input {
  appearance: none;
  background: #fff;
  box-shadow: none;
  flex: 1 1 420px;
  font: inherit;
  padding: 5px;
}
.eventelling27-groups-table thead .eventelling27-sort-link {
  color: #111827;
  font-weight: 700;
  text-decoration: none !important;
}
.eventelling27-groups-table thead .eventelling27-sort-link:hover,
.eventelling27-groups-table thead .eventelling27-sort-link:focus {
  color: var(--e27-primary);
  text-decoration: none !important;
}
.button.is-disabled,
.button[aria-disabled="true"] {
  cursor: default;
  opacity: .42;
  pointer-events: none;
}
.eventelling27-groups-actions-bar {
  align-items: center;
  display: flex;
  gap: 10px;
  margin: 12px 0 16px;
}
.eventelling27-send-groups-button {
  align-items: center;
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  display: inline-flex !important;
  gap: 6px;
  opacity: .45;
}
.eventelling27-send-groups-button.is-ready {
  opacity: 1;
}
.eventelling27-send-groups-button.is-ready .dashicons {
  color: #fff;
}
input[name="destination_group_query"] {
  min-width: 300px;
}
.eventelling27-groups-pagination {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: flex-end;
  margin-top: 8px;
  min-height: 52px;
  padding: 8px 12px;
}
.eventelling27-groups-pagination form,
.eventelling27-groups-pagination label {
  align-items: center;
  display: flex;
  gap: 8px;
  margin: 0;
}
.eventelling27-student-search {
  background: #d7d7d7;
  display: grid;
  gap: 7px;
  grid-template-columns: minmax(170px, 1fr) minmax(320px, 4fr) minmax(170px, 1fr) minmax(210px, 1.2fr);
  padding: 10px;
}
.eventelling27-student-search .button {
  justify-self: start;
}
.eventelling27-student-quick-search {
  grid-template-columns: 46px minmax(260px, 1fr) auto;
}
.eventelling27-student-quick-search .eventelling27-app-filter-wrap {
  align-self: stretch;
  justify-content: flex-end;
  min-width: 275px;
  padding: 0 4px;
}
.eventelling27-create-group-toggle {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  margin: 10px 0 14px;
}
.eventelling27-student-toolbar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.eventelling27-student-toolbar .eventelling27-directory-toolbar-start {
  margin-right: auto;
}
.eventelling27-student-toolbar > label {
  align-items: center;
  display: flex;
  gap: 8px;
}
.eventelling27-student-toolbar .button-link {
  align-items: center;
  border: 1px solid #d9e2ec;
  border-radius: 5px;
  display: inline-flex;
  gap: 5px;
  min-height: 38px;
  padding: 5px 10px;
  text-decoration: none;
}
.eventelling27-student-toolbar [data-e27-new-student-toggle],
.eventelling27-directory-group-footer [data-e27-new-student-toggle] {
  align-items: center;
  display: inline-flex;
  gap: 5px;
}
.eventelling27-student-row-pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: flex-start;
  padding: 8px 12px;
}
.eventelling27-student-row-pagination:empty {
  display: none;
}
.eventelling27-student-groups + .eventelling27-groups-pagination {
  justify-content: flex-start;
}
.eventelling27-student-create {
  align-items: end;
  background: #eef4f8;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(160px, 1fr)) auto auto;
  margin: 0 10px 10px;
  padding: 12px;
}
.eventelling27-student-modal .eventelling27-student-create {
  background: transparent;
  margin: 0;
  padding: 0;
}
.eventelling27-student-modal .eventelling27-student-import {
  background: transparent;
  border: 0;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  margin: 0;
  padding: 0;
}
.eventelling27-student-import label {
  display: grid;
  gap: 5px;
}
.eventelling27-student-import input[type="file"],
.eventelling27-student-import select {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  min-height: 38px;
  padding: 7px 10px;
  width: 100%;
}
.eventelling27-student-import-help {
  color: var(--e27-muted);
  grid-column: 1 / -1;
  margin: 0;
}
.eventelling27-student-modal-actions {
  display: flex;
  gap: 10px;
  grid-column: 1 / -1;
  justify-content: flex-end;
}
.eventelling27-student-preview {
  background: #fff;
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  max-height: 320px;
  overflow: auto;
  padding: 10px;
}
.eventelling27-student-preview[hidden] {
  display: none;
}
.eventelling27-student-preview small {
  color: var(--e27-muted);
}
.eventelling27-student-preview table {
  border-collapse: collapse;
  width: 100%;
}
.eventelling27-student-preview td {
  border-bottom: 1px solid var(--e27-line);
  padding: 6px 8px;
}
.eventelling27-student-name-fields {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  position: relative;
}
.eventelling27-inline-edit-row .eventelling27-student-name-fields {
  grid-column: span 2;
}
.eventelling27-student-suggestions {
  background: #fff;
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  box-shadow: 0 12px 28px rgba(11, 42, 74, .16);
  left: 0;
  max-height: 240px;
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  z-index: 100;
}
.eventelling27-student-suggestions[hidden] { display: none; }
.eventelling27-student-suggestions button {
  align-items: center;
  background: #fff;
  border: 0;
  border-bottom: 1px solid var(--e27-line);
  color: var(--e27-text);
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-height: 42px;
  padding: 8px 12px;
  text-align: left;
  width: 100%;
}
.eventelling27-student-suggestions button:last-child { border-bottom: 0; }
.eventelling27-student-suggestions button:hover,
.eventelling27-student-suggestions button:focus {
  background: var(--e27-soft);
  outline: 0;
}
.eventelling27-student-suggestions small {
  color: var(--e27-muted);
  flex: 0 0 auto;
}
.eventelling27-student-identity-help {
  color: var(--e27-muted);
  grid-column: 1 / -1;
}
.eventelling27-student-operations {
  align-items: center;
  background: rgb(215 215 215);
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 0 10px 10px;
  padding: 10px;
}
.eventelling27-student-operations label,
.eventelling27-student-operations [data-e27-student-target] label {
  display: block;
}
.eventelling27-student-operations [data-e27-student-target] {
  display: block;
  margin-left: auto;
}
.eventelling27-student-operations [data-e27-student-target][hidden] {
  display: none;
}
.eventelling27-student-operations.is-disabled {
  opacity: 1;
}
.eventelling27-student-operations.is-disabled select,
.eventelling27-student-operations.is-disabled input,
.eventelling27-student-operations.is-disabled button {
  opacity: .45;
}
.eventelling27-student-toolbar {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  gap: 8px;
  margin-bottom: 10px;
  padding: 9px 10px;
}
.eventelling27-student-toolbar form {
  margin: 0;
}
.eventelling27-students-table th:first-child,
.eventelling27-students-table td:first-child {
  text-align: center;
  width: 42px;
}
.eventelling27-students-table th:nth-child(2),
.eventelling27-students-table td:nth-child(2) {
  text-align: center;
  min-width: 94px;
  width: 94px;
}
.eventelling27-student-view {
  border: 0;
  color: var(--e27-primary);
}
.eventelling27-students-table td:nth-child(2) form {
  display: inline;
  margin: 0;
}
.eventelling27-students-table td:nth-child(2) .is-danger {
  border: 0;
  color: #d92d20;
}
.eventelling27-student-modal {
  align-items: center;
  background: rgba(11,18,32,.68);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 100050;
}
.eventelling27-student-modal[hidden] { display: none; }
.eventelling27-student-dialog {
  background: #fff;
  border-radius: 6px;
  max-height: 86vh;
  max-width: 600px;
  overflow: auto;
  padding: 24px;
  position: relative;
  width: min(600px, 92vw);
}
.eventelling27-student-modal-close {
  background: transparent;
  border: 0;
  cursor: pointer;
  font-size: 28px;
  position: absolute;
  right: 16px;
  top: 12px;
}
.eventelling27-student-edit-form {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eventelling27-student-edit-form label,
.eventelling27-student-link-form label {
  display: grid;
  gap: 5px;
}
.eventelling27-student-edit-form input,
.eventelling27-student-link-form input {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  min-height: 40px;
  padding: 7px 10px;
  width: 100%;
}
.eventelling27-student-edit-form .is-wide,
.eventelling27-student-edit-form .button {
  grid-column: 1 / -1;
}
.eventelling27-student-links {
  border-top: 1px solid var(--e27-line);
  margin-top: 20px;
  padding-top: 16px;
}
.eventelling27-student-links ul {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
}
.eventelling27-student-links li {
  align-items: center;
  border-bottom: 1px solid var(--e27-line);
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
}
.eventelling27-student-links li span {
  display: grid;
  gap: 2px;
}
.eventelling27-student-link-form {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(240px, 1fr) auto;
}
.eventelling27-teacher-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 14px;
}
.eventelling27-teacher-actions form { margin: 0; }
.eventelling27-teacher-search {
  display: grid;
  gap: 8px;
  margin: 18px 0 10px;
}
#eventelling27-teacher-export-form {
  display: none;
}
.eventelling27-teacher-search-row {
  display: grid;
  gap: 6px;
  grid-template-columns: minmax(220px, 1fr) minmax(210px, 250px) minmax(210px, 250px);
}
.eventelling27-search-control {
  align-items: stretch;
  background: #fff;
  border: 1px solid var(--e27-line);
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) 34px;
  min-height: 42px;
}
.eventelling27-search-control.is-wide {
  grid-template-columns: 54px minmax(0, 1fr);
}
.eventelling27-search-control .dashicons {
  align-items: center;
  background: var(--e27-soft);
  color: var(--e27-text);
  display: flex;
  font-size: 26px;
  height: 100%;
  justify-content: center;
  width: 54px;
}
.eventelling27-search-control input {
  border: 0 !important;
  border-radius: 0 !important;
  min-height: 40px;
  padding: 8px 12px !important;
  width: 100%;
}
.eventelling27-search-control input:focus {
  box-shadow: none;
  outline: 0;
}
.eventelling27-search-arrow {
  align-items: center;
  display: flex;
  justify-content: center;
}
.eventelling27-teacher-toolbar {
  align-items: center;
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-bottom: 10px;
  padding: 9px 10px;
}
.eventelling27-teacher-toolbar-top {
  border-top: 0;
  margin: 0;
}
.eventelling27-teacher-toolbar-bottom {
  border-top: 0;
  margin: 0;
}
.eventelling27-teacher-toolbar > span {
  flex: 1 1 auto;
}
.eventelling27-teacher-toolbar-spacer {
  flex: 1 1 auto;
}
.eventelling27-teacher-toolbar label {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}
.eventelling27-teacher-toolbar form {
  margin: 0;
}
.eventelling27-teacher-toolbar .button-link {
  align-items: center;
  border: 1px solid #d9e2ec;
  border-radius: 5px;
  color: var(--e27-text);
  display: inline-flex;
  gap: 5px;
  min-height: 38px;
  padding: 7px 10px;
  text-decoration: none;
}
.eventelling27-teacher-toolbar .button {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  min-height: 38px;
}
.eventelling27-teacher-toolbar .button.is-secondary {
  background: #f49a00 !important;
  color: #fff !important;
}
.eventelling27-teacher-toolbar .button.is-secondary.is-disabled {
  cursor: default;
  opacity: .45;
  pointer-events: none;
}
.eventelling27-teachers-table th a {
  color: #274b63 !important;
  text-decoration: none !important;
}
.eventelling27-teacher-form,
.eventelling27-teacher-import {
  align-items: end;
  background: #eef4f8;
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  margin: 10px 0 14px;
  padding: 12px;
}
.eventelling27-teacher-modal .eventelling27-teacher-form {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
}
.eventelling27-teacher-modal .eventelling27-teacher-import {
  margin: 0;
}
.eventelling27-teacher-form label,
.eventelling27-teacher-import label {
  display: grid;
  gap: 5px;
}
.eventelling27-teacher-form input[type="text"],
.eventelling27-teacher-import input[type="file"],
.eventelling27-teacher-import select {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  min-height: 38px;
  padding: 7px 10px;
  width: 100%;
}
.eventelling27-teacher-group-checks {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  margin: 0;
  padding: 12px;
}
.eventelling27-teacher-group-checks legend {
  font-weight: 700;
  padding: 0 6px;
}
.eventelling27-teacher-modal {
  align-items: center;
  background: rgba(11,18,32,.68);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 100050;
}
.eventelling27-teacher-modal[hidden] { display: none; }
.eventelling27-teacher-dialog {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(11,18,32,.28);
  max-height: 82vh;
  max-width: 820px;
  overflow: auto;
  padding: 24px;
  position: relative;
  width: min(820px, 92vw);
}
.eventelling27-teacher-modal-close {
  background: transparent;
  border: 0;
  cursor: pointer;
  font-size: 28px;
  line-height: 1;
  position: absolute;
  right: 14px;
  top: 10px;
}
.eventelling27-teacher-fields {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  margin-bottom: 14px;
}
.eventelling27-teacher-group-picker {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  margin-bottom: 12px;
  padding: 12px;
}
.eventelling27-teacher-group-picker-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
}
.eventelling27-teacher-group-options,
.eventelling27-teacher-group-selected {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  max-height: 220px;
  overflow: auto;
  padding: 8px;
}
.eventelling27-teacher-group-options button,
.eventelling27-teacher-group-selected label {
  align-items: center;
  border: 0 !important;
  color: var(--e27-text);
  display: flex;
  gap: 8px;
  min-height: 34px;
  padding: 4px 2px;
  text-decoration: none;
  width: 100%;
}
.eventelling27-teacher-group-options button.is-selected {
  color: var(--e27-primary);
  font-weight: 700;
}
.eventelling27-teacher-group-selected input {
  display: none;
}
.eventelling27-teacher-modal-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 12px;
}
.eventelling27-teacher-preview {
  background: #fff;
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  max-height: 320px;
  overflow: auto;
  padding: 10px;
}
.eventelling27-teacher-preview[hidden] {
  display: none;
}
.eventelling27-teacher-preview small {
  color: var(--e27-muted);
}
.eventelling27-teacher-preview table {
  border-collapse: collapse;
  width: 100%;
}
.eventelling27-teacher-preview td {
  border-bottom: 1px solid var(--e27-line);
  padding: 6px 8px;
}
.eventelling27-teacher-actions-cell {
  align-items: center;
  display: flex;
  gap: 8px;
}
.eventelling27-teacher-actions-cell form { margin: 0; }
.eventelling27-teacher-actions-cell button {
  border: 0 !important;
  color: var(--e27-primary);
}
.eventelling27-teacher-actions-cell button[data-e27-confirm] {
  color: #d92d20;
}
.eventelling27-recipient-row {
  align-items: center;
  border-bottom: 1px solid var(--e27-line);
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr) 36px;
  padding: 10px 0;
}
.eventelling27-recipient-row > span:first-child {
  display: grid;
  gap: 2px;
}
.eventelling27-recipient-confirmation,
.eventelling27-directory-placeholder {
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  padding: 20px;
}
@media (max-width: 900px) {
  .eventelling27-quick-search {
    flex-wrap: wrap;
    overflow: visible;
  }
  .eventelling27-quick-search > .dashicons {
    flex-basis: 46px;
    width: 46px;
  }
  .eventelling27-quick-search > input {
    flex: 1 1 calc(100% - 46px);
  }
  .eventelling27-top-group-filter {
    flex: 1 1 220px;
  }
  .eventelling27-app-filter-wrap,
  .eventelling27-access-filter-wrap,
  .eventelling27-quick-search-actions {
    justify-content: flex-end;
  }
  .eventelling27-student-search,
  .eventelling27-student-create,
  .eventelling27-student-operations {
    grid-template-columns: 1fr 1fr;
  }
  .eventelling27-student-search .is-general,
  .eventelling27-student-operations [data-e27-student-target] {
    grid-column: 1 / -1;
  }
}
@media (max-width: 620px) {
  .eventelling27-student-search,
  .eventelling27-student-create,
  .eventelling27-student-operations,
  .eventelling27-student-edit-form,
  .eventelling27-student-link-form,
  .eventelling27-recipient-row {
    grid-template-columns: 1fr;
  }
  .eventelling27-recipient-row {
    gap: 5px;
  }
}
.eventelling27-directory-group-footer {
  align-items: center;
  border-top: 1px solid var(--e27-line);
  display: flex;
  justify-content: flex-start;
  padding: 10px 12px;
}
.eventelling27-create-user-button {
  align-items: center;
  display: inline-flex !important;
  gap: 5px;
}
.eventelling27-create-user-modal {
  align-items: center;
  background: rgba(11,18,32,.58);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 12000;
}
.eventelling27-create-user-modal[hidden] { display: none; }
.eventelling27-user-edit-modal {
  align-items: center;
  background: rgba(11,18,32,.62);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 12000;
}
.eventelling27-user-edit-modal[hidden] { display: none; }
.eventelling27-user-edit-dialog {
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 22px 60px rgba(11,18,32,.24);
  max-height: 58vh;
  max-width: 560px;
  overflow: hidden;
  width: min(92vw, 560px);
}
.eventelling27-user-edit-header {
  align-items: center;
  border-bottom: 1px solid var(--e27-line);
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 42px 42px;
  min-height: 62px;
  padding: 0 12px;
}
.eventelling27-user-edit-header h2 {
  font-size: 17px;
  margin: 0;
  text-align: center;
}
.eventelling27-user-edit-header .button-link,
.eventelling27-user-edit-close {
  align-items: center;
  background: transparent;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  font-size: 28px;
  justify-content: center;
  min-height: 38px;
}
.eventelling27-user-edit-header button:disabled {
  cursor: default;
  opacity: .3;
}
.eventelling27-user-edit-body {
  max-height: calc(58vh - 62px);
  overflow: auto;
  padding: 18px;
}
.eventelling27-user-edit-body .eventelling27-inline-edit-form {
  background: transparent;
  padding: 0;
}
.eventelling27-user-edit-body .eventelling27-inline-edit-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eventelling27-user-edit-body .eventelling27-inline-edit-form input {
  min-width: 0;
  width: 100%;
}
.eventelling27-create-user-dialog {
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 24px 70px rgba(11,18,32,.28);
  max-height: calc(100vh - 48px);
  max-width: 720px;
  overflow: auto;
  padding: 28px;
  position: relative;
  width: 100%;
}
.eventelling27-create-user-dialog h2 { margin: 0 44px 6px 0; }
.eventelling27-create-user-dialog > p { color: var(--e27-muted); margin: 0 0 20px; }
.eventelling27-create-user-close {
  background: transparent;
  border: 0;
  color: var(--e27-text);
  cursor: pointer;
  font-size: 30px;
  line-height: 1;
  padding: 6px;
  position: absolute;
  right: 14px;
  top: 10px;
}
.eventelling27-create-user-fields {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eventelling27-create-user-fields label {
  display: grid;
  font-weight: 650;
  gap: 6px;
}
.eventelling27-create-user-password { grid-column: 1 / -1; }
.eventelling27-create-user-fields > label:has(input[name="first_name"]) { order: 1; }
.eventelling27-create-user-fields > label:has(input[name="last_name"]) { order: 2; }
.eventelling27-create-user-fields > label:has(input[name="email"]) { order: 3; }
.eventelling27-create-user-fields > label:has(input[name="phone"]) { order: 4; }
.eventelling27-create-user-password { order: 5; }
.eventelling27-create-user-password-tools {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  grid-column: 1 / -1;
  order: 6;
}
.eventelling27-create-user-password-tools label {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}
.eventelling27-password-field {
  align-items: center;
  display: flex;
  position: relative;
}
.eventelling27-password-field input { padding-right: 46px !important; width: 100%; }
.eventelling27-password-field .button-link {
  background: transparent !important;
  border: 0 !important;
  color: var(--e27-muted) !important;
  min-height: 38px;
  padding: 0 10px !important;
  position: absolute;
  right: 0;
}
.eventelling27-create-user-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 22px;
}
.eventelling27-directory-group-edit {
  align-items: center;
  background: #e8edf3;
  display: flex;
  gap: 8px;
  padding: 10px 44px;
}
.eventelling27-directory-group-edit[hidden] { display: none; }
.eventelling27-directory-group-edit input {
  min-height: 36px;
  min-width: 210px;
}

.eventelling27-group-modal-backdrop {
  background: rgba(11, 34, 57, .58);
  border: 0;
  cursor: default;
  inset: 0;
  padding: 0;
  position: fixed;
  z-index: 9990;
}

.eventelling27-group-modal-backdrop[hidden] {
  display: none;
}

.eventelling27-new-group.is-e27-group-modal-open,
[data-e27-group-edit-panel].is-e27-group-modal-open,
[data-e27-group-duplicate-panel].is-e27-group-modal-open {
  background: transparent !important;
  border: 0 !important;
  display: block !important;
  inset: auto !important;
  left: 50% !important;
  margin: 0 !important;
  max-width: min(620px, calc(100vw - 32px)) !important;
  padding: 0 !important;
  position: fixed !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 100% !important;
  z-index: 9991 !important;
}

[data-e27-group-edit-panel].is-e27-group-modal-open,
[data-e27-group-duplicate-panel].is-e27-group-modal-open {
  height: 0 !important;
  min-height: 0 !important;
}

[data-e27-group-edit-panel].is-e27-group-modal-open > td,
[data-e27-group-duplicate-panel].is-e27-group-modal-open > td {
  background: transparent !important;
  border: 0 !important;
  display: block !important;
  padding: 0 !important;
}

.eventelling27-new-group.is-e27-group-modal-open,
[data-e27-group-edit-panel].is-e27-group-modal-open .eventelling27-directory-group-edit,
[data-e27-group-duplicate-panel].is-e27-group-modal-open .eventelling27-directory-group-edit {
  align-items: stretch !important;
  background: #fff !important;
  border: 1px solid var(--e27-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 24px 70px rgba(11, 34, 57, .28) !important;
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: 1fr !important;
  padding: 26px !important;
  position: relative !important;
}

.eventelling27-new-group.is-e27-group-modal-open,
[data-e27-group-edit-panel].is-e27-group-modal-open .eventelling27-directory-group-edit,
[data-e27-group-duplicate-panel].is-e27-group-modal-open .eventelling27-directory-group-edit {
  grid-template-columns: 1fr auto auto !important;
}

.eventelling27-new-group.is-e27-group-modal-open h2,
.eventelling27-new-group.is-e27-group-modal-open label,
[data-e27-group-edit-panel].is-e27-group-modal-open h2,
[data-e27-group-edit-panel].is-e27-group-modal-open input,
[data-e27-group-duplicate-panel].is-e27-group-modal-open h2,
[data-e27-group-duplicate-panel].is-e27-group-modal-open strong,
[data-e27-group-duplicate-panel].is-e27-group-modal-open input {
  grid-column: 1 / -1 !important;
}

.eventelling27-new-group.is-e27-group-modal-open .e27-popup-cancel,
[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-cancel,
[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-cancel {
  grid-column: 2 !important;
  justify-self: end !important;
}

.eventelling27-new-group.is-e27-group-modal-open .e27-popup-positive,
[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-positive,
[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-positive {
  grid-column: 3 !important;
  justify-self: end !important;
}

.eventelling27-new-group.is-e27-group-modal-open h2,
[data-e27-group-edit-panel].is-e27-group-modal-open h2,
[data-e27-group-duplicate-panel].is-e27-group-modal-open h2 {
  color: var(--e27-text);
  font-size: 22px;
  margin: 0 36px 4px 0;
}

.eventelling27-new-group.is-e27-group-modal-open label,
[data-e27-group-edit-panel].is-e27-group-modal-open label,
[data-e27-group-duplicate-panel].is-e27-group-modal-open label {
  display: grid;
  gap: 6px;
}

.eventelling27-new-group.is-e27-group-modal-open input,
[data-e27-group-edit-panel].is-e27-group-modal-open input,
[data-e27-group-duplicate-panel].is-e27-group-modal-open input {
  min-width: 0 !important;
  width: 100% !important;
}

.eventelling27-group-modal-actions {
  align-items: center !important;
  display: flex !important;
  gap: 10px !important;
  justify-content: flex-end !important;
  margin-top: 8px !important;
}

.eventelling27-group-modal-actions .button {
  flex: 0 0 auto !important;
  min-width: 126px !important;
  width: auto !important;
}

.eventelling27-group-modal-close {
  color: var(--e27-text) !important;
  position: absolute !important;
  right: 18px !important;
  top: 16px !important;
}

.eventelling27-group-modal-close .dashicons {
  font-size: 22px;
  height: 22px;
  width: 22px;
}
.eventelling27-directory-row-pagination,
.eventelling27-directory-global-pagination {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 10px 12px;
}
.eventelling27-directory-global-pagination {
  background: var(--e27-surface);
  border: 1px solid var(--e27-line);
  margin-top: 12px;
}
.eventelling27-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.eventelling27-pagination a {
  align-items: center;
  border: 1px solid var(--e27-line);
  color: var(--e27-text);
  display: inline-flex;
  height: 32px;
  justify-content: center;
  min-width: 32px;
  padding: 0 7px;
  text-decoration: none;
}
.eventelling27-pagination a.is-current {
  background: #274b63;
  border-color: #274b63;
  color: #fff;
}

@media (max-width: 760px) {
  .e27-client-settings-grid { grid-template-columns: 1fr; }
  .e27-login-shell { grid-template-columns: 1fr; }
  .e27-login-brand { min-height: 220px; padding: 30px; }
  .e27-login-brand .e27-login-developer-logo { height: 38px; max-width: 165px; }
  .e27-login-client-logo { height: 118px; margin: 12px auto 4px; max-width: 180px; }
  .e27-login-client-logo img { max-height: 105px; }
  .e27-login-brand h1 { font-size: 28px; margin-top: 22px; }
  .e27-login-client-logo + h1 { margin-top: 12px; }
  .e27-legal-page { padding: 30px 22px 50px; }
  .e27-legal-content h1 { font-size: 25px; }
  .e27-login-panel { padding: 30px; }
  .e27-admin-layout,
  .e27-admin-layout.is-sidebar-collapsed { display: block; min-height: 100vh; }
  .e27-sidebar,
  .is-sidebar-collapsed .e27-sidebar {
    bottom: 0;
    box-shadow: 12px 0 28px rgba(11, 34, 57, .2);
    left: 0;
    overflow-y: auto;
    padding: 22px 18px;
    position: fixed;
    top: 0;
    transform: translateX(-105%);
    transition: transform .22s ease;
    width: min(82vw, 290px);
    z-index: 1002;
  }
  .e27-admin-layout.is-mobile-menu-open .e27-sidebar { transform: translateX(0); }
  .e27-sidebar-collapse { display: none; }
  .is-sidebar-collapsed .e27-sidebar-brand { min-height: 84px; padding: 10px 28px 6px; }
  .e27-sidebar-brand img,
  .is-sidebar-collapsed .e27-sidebar-brand img { height: 76px; max-width: 150px; width: 76px; }
  .is-sidebar-collapsed .e27-sidebar-user { display: block !important; }
  .is-sidebar-collapsed .e27-menu-text,
  .is-sidebar-collapsed .e27-submenu-arrow { display: inline-block !important; }
  .is-sidebar-collapsed .e27-sidebar-submenu {
    display: block !important;
    max-height: 0;
  }
  .is-sidebar-collapsed .e27-sidebar-group.is-open .e27-sidebar-submenu {
    max-height: 420px;
  }
  .is-sidebar-collapsed .e27-sidebar-parent,
  .is-sidebar-collapsed .e27-sidebar-main-item { justify-content: flex-start; padding-left: 12px; padding-right: 12px; }
  .is-sidebar-collapsed .e27-sidebar-group { margin-bottom: 14px; }
  .e27-mobile-menu-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 5px;
    color: var(--e27-text);
    cursor: pointer;
    display: flex;
    flex: 0 0 42px;
    height: 42px;
    justify-content: center;
    padding: 0;
    width: 42px;
  }
  .e27-mobile-menu-toggle:hover,
  .e27-mobile-menu-toggle:focus { background: var(--e27-soft); color: var(--e27-primary); outline: 0; }
  .e27-mobile-menu-toggle .dashicons { font-size: 26px; height: 26px; width: 26px; }
  .e27-mobile-menu-backdrop {
    background: rgba(11, 18, 32, .5);
    border: 0;
    bottom: 0;
    cursor: pointer;
    left: 0;
    padding: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 1001;
  }
  .e27-admin-layout.is-mobile-menu-open .e27-mobile-menu-backdrop { display: block; }
  .e27-admin-header, .e27-admin-content { padding-left: 20px; padding-right: 20px; }
  .e27-admin-header { min-height: 68px; }
  .e27-admin-content { overflow-x: auto; }
  .eventelling27-dashboard-grid { grid-template-columns: 1fr; }
  .eventelling27-dashboard-widget { min-height: 0; padding: 20px; }
  .e27-admin-content .e27-field-wide { min-width: 0; width: 100%; }
  .e27-admin-content .e27-field-compact { max-width: 150px; width: 100%; }
  .eventelling27-directory-heading { display: block; }
  .eventelling27-total-badge { margin-top: 14px; }
  .eventelling27-directory-filters,
  .eventelling27-directory-operations,
  .eventelling27-new-group { align-items: stretch; display: grid; grid-template-columns: 1fr; }
  .eventelling27-directory-operations { position: static; }
  .eventelling27-directory-operations > [data-e27-operation-fields] {
    justify-content: stretch;
    margin-left: 0;
    width: 100%;
  }
  .eventelling27-directory-steps { grid-template-columns: 1fr; }
  .eventelling27-directory-steps button + button { border-left: 1px solid var(--e27-line); border-top: 0; }
  .eventelling27-directory-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .eventelling27-directory-general-search {
    grid-template-columns: 1fr;
  }
  .eventelling27-directory-general-search .eventelling27-app-filter {
    justify-self: start;
  }
  .eventelling27-directory-group-toggle {
    grid-template-columns: 1fr 36px;
  }
  .eventelling27-directory-group-toggle span { display: none; }
  .eventelling27-directory-groups-header {
    grid-template-columns: 34px 34px 1fr 54px;
  }
  .eventelling27-directory-groups-header strong:nth-of-type(2) { display: none; }
  .eventelling27-directory-group-header {
    grid-template-columns: 34px 34px minmax(0, 1fr) 54px;
  }
  .eventelling27-directory-group-edit {
    align-items: stretch;
    flex-direction: column;
    padding: 12px;
  }
  .eventelling27-create-user-fields { grid-template-columns: 1fr; }
  .eventelling27-create-user-dialog { padding: 22px 18px; }
  .eventelling27-user-edit-dialog {
    max-height: 82vh;
    width: min(94vw, 560px);
  }
  .eventelling27-user-edit-body {
    max-height: calc(82vh - 62px);
    padding: 16px;
  }
  .eventelling27-user-edit-body .eventelling27-inline-edit-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .eventelling27-student-quick-search {
    grid-template-columns: 46px 1fr;
  }
  .eventelling27-student-quick-search .eventelling27-app-filter-wrap,
  .eventelling27-student-quick-search .eventelling27-quick-search-actions {
    grid-column: 1 / -1;
  }
}
/* Eventelling27 portal refinements */
.eventelling27-directory-group-actions,
.eventelling27-action-column,
.eventelling27-teachers-table .eventelling27-directory-group-actions,
.eventelling27-students-table td:nth-child(2) {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  white-space: nowrap;
}

.eventelling27-directory-group-actions form,
.eventelling27-action-column form,
.eventelling27-students-table td:nth-child(2) form {
  display: inline-flex;
  margin: 0;
}

.eventelling27-teacher-group-select-label {
  display: grid;
  gap: 8px;
}

.eventelling27-teacher-group-select-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-teacher-group-selected label {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-teacher-group-selected input {
  display: none;
}

.eventelling27-student-create-lines {
  display: grid;
  gap: 10px;
  width: 100%;
}

.eventelling27-student-name-fields[data-e27-student-create-line] {
  align-items: start;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(130px, 1fr) minmax(150px, 1fr) minmax(170px, 1fr) auto;
}

.eventelling27-teacher-group-selected label[hidden] {
  display: none !important;
}

.eventelling27-create-user-total-help {
  color: #178a4b;
  display: block;
  font-size: 12px;
  margin-top: 6px;
}

.eventelling27-create-user-total-help[hidden] {
  display: none !important;
}

.eventelling27-create-user-actions .button-primary,
.eventelling27-student-modal-actions .button-primary {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}

.eventelling27-directory-table th.eventelling27-action-column {
  display: table-cell;
  text-align: center;
  width: 72px;
}

.eventelling27-sort-link,
.eventelling27-sort-link:hover,
.eventelling27-sort-link:focus,
.eventelling27-directory-table th a,
.eventelling27-directory-table th a:hover,
.eventelling27-directory-table th a:focus,
.eventelling27-groups-table th a,
.eventelling27-groups-table th a:hover,
.eventelling27-groups-table th a:focus {
  color: #274b63 !important;
  text-decoration: none !important;
}

.eventelling27-directory-table th,
.eventelling27-groups-table th {
  color: #274b63;
}

.eventelling27-row-actions {
  display: table-cell !important;
  text-align: center;
}

.eventelling27-row-actions-inner {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  justify-content: center;
  white-space: nowrap;
}

.eventelling27-row-actions-inner form {
  display: inline-flex;
  margin: 0;
}

.eventelling27-create-user-group-picker {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid !important;
  gap: 10px;
  grid-column: 1 / -1;
  order: 7;
  padding: 12px;
}

.eventelling27-create-user-group-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-create-user-group-selected {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  display: grid;
  gap: 5px;
  padding: 8px;
}

.eventelling27-create-user-group-selected label {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-create-user-group-selected label[hidden] {
  display: none !important;
}

.eventelling27-create-user-group-selected input {
  display: none;
}

.eventelling27-create-user-students {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  order: 8;
  padding: 12px;
}

.eventelling27-create-user-student-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-create-user-student-selected {
  display: grid;
  gap: 6px;
}

.eventelling27-create-user-student-selected label {
  align-items: center;
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 7px 9px;
}

.eventelling27-student-create-line {
  border-bottom: 1px solid var(--e27-line);
  display: grid;
  gap: 10px;
  padding: 0 0 14px;
}

.eventelling27-student-create-line + .eventelling27-student-create-line {
  padding-top: 14px;
}

.eventelling27-student-line-groups {
  border: 1px solid var(--e27-line);
  border-radius: 6px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.eventelling27-student-line-group-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr);
}

.eventelling27-student-line-group-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-student-line-group-selected {
  border: 1px solid var(--e27-line);
  border-radius: 5px;
  display: grid;
  gap: 5px;
  min-height: 42px;
  padding: 8px;
}

.eventelling27-student-line-group-selected label {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-student-line-group-selected label[hidden] {
  display: none !important;
}

.eventelling27-student-line-group-selected input {
  display: none;
}

.eventelling27-student-line-users {
  display: grid;
  gap: 10px;
}

.eventelling27-student-line-user-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.eventelling27-student-line-user-selected {
  display: grid;
  gap: 6px;
}

.eventelling27-student-line-user-selected label {
  align-items: center;
  border-bottom: 1px solid var(--e27-line);
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 7px 0;
}

/* Reglas finales de coherencia visual de la plataforma. */
.e27-admin-content .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-groups-button,
.eventelling27-directory-operations .eventelling27-send-notice-button,
.eventelling27-student-operations .eventelling27-send-notice-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}
.e27-admin-content .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.is-disabled {
  opacity: .45 !important;
}
.e27-admin-content .eventelling27-send-notice-button.is-ready,
.e27-admin-content .eventelling27-send-notice-button:not(:disabled),
.e27-admin-content .eventelling27-send-groups-button.is-ready,
.e27-admin-content .eventelling27-send-groups-button:not(.is-disabled) {
  opacity: 1 !important;
}
.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection,
.eventelling27-directory-toolbar-start .eventelling27-clear-search,
.eventelling27-directory-toolbar-start .eventelling27-clear-selection {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}
.e27-admin-content .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-clear-filters.is-disabled,
.e27-admin-content .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-clear-selection.is-disabled {
  opacity: .45 !important;
}
.e27-admin-content .button:not(.eventelling27-send-notice-button):not(.eventelling27-send-groups-button):not(.eventelling27-clear-search):not(.eventelling27-clear-filters):not(.eventelling27-clear-selection):not(.e27-popup-cancel):not(.e27-popup-positive), .e27-admin-content .button-primary {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}
.e27-admin-content .button:not(:disabled):not(.is-disabled),
.e27-admin-content .button-link:not(:disabled):not(.is-disabled),
.e27-admin-content button:not(:disabled):not(.is-disabled),
.e27-admin-content a.button:not(.is-disabled) {
  cursor: pointer;
}
.eventelling27-action-column .button-link,
.eventelling27-row-actions-inner .button-link,
.eventelling27-directory-group-actions .button-link {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  display: inline-flex;
  height: 20px;
  justify-content: center;
  min-width: 20px;
  padding: 0 !important;
  text-decoration: none !important;
}
.eventelling27-action-column .button-link.eventelling27-user-view-button,
.eventelling27-action-column .button-link.eventelling27-student-view {
  color: #f49a00 !important;
}
.eventelling27-action-column .button-link.eventelling27-user-duplicate-button,
.eventelling27-action-column .button-link.eventelling27-student-duplicate,
.eventelling27-directory-group-actions .eventelling27-group-duplicate-button {
  color: #274b63 !important;
}
.eventelling27-action-column .button-link.is-danger,
.eventelling27-directory-group-actions .button-link.is-danger {
  color: #df1717 !important;
}

.e27-admin-content .eventelling27-action-column .button-link,
.e27-admin-content .eventelling27-row-actions-inner .button-link,
.e27-admin-content .eventelling27-directory-group-actions .button-link,
.e27-admin-content .eventelling27-students-table td:nth-child(2) .button-link {
  opacity: .8;
}

.e27-admin-content .eventelling27-action-column .button-link:hover,
.e27-admin-content .eventelling27-row-actions-inner .button-link:hover,
.e27-admin-content .eventelling27-directory-group-actions .button-link:hover,
.e27-admin-content .eventelling27-students-table td:nth-child(2) .button-link:hover {
  opacity: 1;
}

/* Blindaje final de botones de acción compartidos. */
.e27-admin-content .eventelling27-directory-operations .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-student-operations .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-groups-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-directory-operations .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-directory-operations .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-student-operations .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-student-operations .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-search,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-selection,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-filters,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-search,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-selection,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-filters {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-clear-search::before,
.e27-admin-content .eventelling27-clear-filters::before {
  content: "\f158";
  display: inline-block;
  font-family: dashicons;
  font-size: 16px;
  line-height: 1;
  margin-right: 5px;
  vertical-align: -2px;
}

.e27-admin-content .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-clear-filters.is-disabled,
.e27-admin-content .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-clear-selection.is-disabled,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-clear-selection.is-disabled,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-student-actions-bar .eventelling27-clear-selection.is-disabled {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .eventelling27-action-column .eventelling27-user-duplicate-button,
.e27-admin-content .eventelling27-action-column .eventelling27-student-duplicate,
.e27-admin-content .eventelling27-action-column .eventelling27-user-duplicate-button .dashicons,
.e27-admin-content .eventelling27-action-column .eventelling27-student-duplicate .dashicons,
.e27-admin-content .eventelling27-students-table .eventelling27-student-duplicate,
.e27-admin-content .eventelling27-students-table .eventelling27-student-duplicate .dashicons,
.e27-admin-content .eventelling27-teachers-table .eventelling27-teacher-duplicate-button,
.e27-admin-content .eventelling27-teachers-table .eventelling27-teacher-duplicate-button .dashicons,
.e27-admin-content .eventelling27-directory-group-actions .eventelling27-group-duplicate-button,
.e27-admin-content .eventelling27-directory-group-actions .eventelling27-group-duplicate-button .dashicons {
  color: #274b63 !important;
}

.e27-admin-content .eventelling27-students-table td:nth-child(2) .button-link {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  display: inline-flex;
  height: 20px;
  justify-content: center;
  min-width: 20px;
  padding: 0 !important;
  text-decoration: none !important;
  vertical-align: middle;
}

.e27-admin-content .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-clear-filters.is-disabled,
.e27-admin-content .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-clear-selection.is-disabled {
  display: none !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button-primary,
.e27-admin-content .eventelling27-create-user-dialog button[type="submit"],
.e27-admin-content .eventelling27-user-edit-dialog .button-primary,
.e27-admin-content .eventelling27-user-edit-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-dialog .button-primary,
.e27-admin-content .eventelling27-student-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-modal-dialog .button-primary,
.e27-admin-content .eventelling27-student-modal-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-dialog .button-primary,
.e27-admin-content .eventelling27-teacher-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-modal-dialog .button-primary,
.e27-admin-content .eventelling27-teacher-modal-dialog button[type="submit"],
.e27-admin-content .e27-legal-dialog .button-primary,
.e27-admin-content .e27-legal-dialog button[type="submit"],
.e27-admin-content .e27-setup-dialog .button-primary,
.e27-admin-content .e27-setup-dialog button[type="submit"],
.e27-admin-content .e27-session-dialog .button-primary,
.e27-admin-content .e27-session-dialog button[type="submit"],
.e27-admin-content .e27-message-box .button-primary,
.e27-admin-content .e27-message-box button[type="submit"],
.e27-admin-content [data-e27-local-accept] {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-user-edit-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-modal-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-modal-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .e27-legal-dialog .button.is-secondary,
.e27-admin-content .e27-setup-dialog .button.is-secondary,
.e27-admin-content .e27-session-dialog .button.is-secondary,
.e27-admin-content .e27-message-box .button.is-secondary {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8;
}

.e27-admin-content .eventelling27-student-modal.is-duplicate-student [data-e27-add-student-line] {
  display: none !important;
}

/* Ajustes finales UX/UI: paneles, acciones y pop-ups. */
#e27-users-search-form {
  display: contents;
}

@media (min-width: 900px) {
  .eventelling27-directory-search-panel {
    display: inline-block;
    max-width: calc(50% - 5px);
    vertical-align: top;
    width: calc(50% - 5px);
  }

  .eventelling27-operation-section {
    margin-left: 6px;
  }
}

@media (max-width: 899px) {
  .eventelling27-directory-search-panel {
    max-width: none;
    width: 100%;
  }
}

.eventelling27-directory-search-panel {
    background: #d7d7d7 !important;
    border: 1px solid var(--e27-line) !important;
    margin-bottom: 8px !important;
    /* padding: 0 10px 12px !important; */
}

.eventelling27-panel-title {
    background: #eef2f6 !important;
    border: 0 !important;
    color: #274b63 !important;
    margin: 0 -10px 0px !important;
    min-height: 38px !important;
    width: calc(100% + 20px) !important;
}

.eventelling27-panel-title .dashicons,
.eventelling27-panel-title strong {
  color: #274b63 !important;
}

.eventelling27-operation-section .eventelling27-panel-title small {
  display: none !important;
}

.eventelling27-directory-actions-bar .eventelling27-send-notice-button,
.eventelling27-directory-actions-bar .eventelling27-send-groups-button,
.eventelling27-directory-toolbar-start .eventelling27-send-notice-button,
.eventelling27-groups-actions-bar .eventelling27-send-groups-button {
  margin-left: auto !important;
  order: 99 !important;
}

.e27-admin-content .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-send-groups-button,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-send-notice-button,
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-send-groups-button,
.e27-admin-content .eventelling27-groups-actions-bar .eventelling27-send-groups-button {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-send-notice-button:disabled,
.e27-admin-content .eventelling27-send-notice-button.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .eventelling27-clear-search,
.e27-admin-content .eventelling27-clear-filters,
.e27-admin-content .eventelling27-clear-selection {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-clear-filters.is-disabled,
.e27-admin-content .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-clear-selection.is-disabled {
  display: none !important;
}

.e27-admin-content [data-e27-create-user-student-add],
.e27-admin-content [data-e27-student-line-user-add],
.e27-admin-content [data-e27-add-student-line] {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}

/* Ajuste final consistente de botones, paneles y modales. */
.e27-admin-content .enviaaviso,
.e27-admin-content .button.enviaaviso,
.e27-admin-content .eventelling27-send-notice-button.enviaaviso,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  margin-left: auto !important;
  opacity: 1 !important;
  order: 99 !important;
}

.e27-admin-content .enviaaviso:disabled,
.e27-admin-content .enviaaviso.is-disabled,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .e27-popup-positive,
.e27-admin-content .button.e27-popup-positive,
.e27-admin-content button.e27-popup-positive {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .e27-popup-cancel,
.e27-admin-content .button.e27-popup-cancel,
.e27-admin-content button.e27-popup-cancel {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}

.e27-admin-content .e27-popup-link,
.e27-admin-content .button.e27-popup-link,
.e27-admin-content button.e27-popup-link,
.e27-admin-content [data-e27-create-user-student-add].e27-popup-link,
.e27-admin-content [data-e27-student-line-user-add].e27-popup-link,
.e27-admin-content [data-e27-add-student-line].e27-popup-link {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
  opacity: 1 !important;
}

.e27-admin-content .eventelling27-create-user-actions,
.e27-admin-content .eventelling27-inline-edit-actions,
.e27-admin-content .eventelling27-student-modal-actions,
.e27-admin-content .eventelling27-teacher-modal-actions,
.e27-admin-content .eventelling27-local-dialog-actions {
  align-items: center !important;
  display: flex !important;
  gap: 10px !important;
  justify-content: flex-end !important;
}

.e27-admin-content .eventelling27-teacher-modal-actions {
  width: 750px;
}

.e27-admin-content .eventelling27-inline-edit-form {
  padding: 20px 28px 24px !important;
}

.e27-admin-content .eventelling27-inline-edit-row {
  display: grid !important;
  gap: 14px 16px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: none !important;
  width: 100% !important;
}

.e27-admin-content .eventelling27-inline-edit-row label,
.e27-admin-content .eventelling27-inline-edit-password label {
  display: grid !important;
  gap: 6px !important;
}

.e27-admin-content .eventelling27-inline-edit-row input,
.e27-admin-content .eventelling27-inline-edit-password input,
.e27-admin-content .eventelling27-inline-edit-linked-groups select,
.e27-admin-content .eventelling27-inline-edit-linked-students input {
  width: 100% !important;
}

.e27-admin-content .eventelling27-inline-edit-row input.is-readonly,
.e27-admin-content .eventelling27-inline-edit-linked-groups .is-readonly,
.e27-admin-content .eventelling27-inline-edit-linked-groups select:disabled,
.e27-admin-content .eventelling27-inline-edit-linked-students input:disabled {
  background: #eef3f7 !important;
  color: rgba(11, 34, 57, .58) !important;
}

.e27-admin-content .eventelling27-inline-edit-password,
.e27-admin-content .eventelling27-inline-edit-linked-groups,
.e27-admin-content .eventelling27-inline-edit-linked-students {
  border: 1px solid var(--e27-line) !important;
  border-radius: 6px !important;
  margin-top: 14px !important;
  padding: 12px !important;
}

.e27-admin-content .eventelling27-create-user-group-chip {
  align-items: center !important;
  border: 1px solid var(--e27-line) !important;
  border-radius: 5px !important;
  display: flex !important;
  justify-content: space-between !important;
  margin-top: 8px !important;
  padding: 8px 10px !important;
}

@media (min-width: 900px) {
  #e27-users-search-form {
    display: contents !important;
  }

  .e27-admin-content .eventelling27-directory-search-panel {
    float: left !important;
    max-width: calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
  }

  .e27-admin-content .eventelling27-operation-section {
    margin-left: 8px !important;
  }

  .e27-admin-content .eventelling27-operation-section form,
  .e27-admin-content .eventelling27-directory-operations,
  .e27-admin-content .eventelling27-student-operations {
    align-items: center !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }

  .e27-admin-content .eventelling27-directory-operations label,
  .e27-admin-content .eventelling27-student-operations label {
    flex: 0 1 auto !important;
    margin: 0 !important;
  }

  .e27-admin-content .eventelling27-directory-operations select,
  .e27-admin-content .eventelling27-student-operations select {
    max-width: 210px !important;
    width: 210px !important;
  }

  .e27-admin-content .eventelling27-directory-operations input[name="destination_group_query"],
  .e27-admin-content .eventelling27-student-operations input[name="destination_group_query"] {
    min-width: 220px !important;
    width: 260px !important;
  }

  .e27-admin-content .eventelling27-directory-actions-bar,
  .e27-admin-content .eventelling27-directory-toolbar,
  .e27-admin-content .eventelling27-directory-groups,
  .e27-admin-content .eventelling27-student-groups,
  .e27-admin-content .eventelling27-groups-table-wrap {
    clear: both !important;
  }
}

.e27-admin-content .eventelling27-create-user-dialog .button-primary,
.e27-admin-content .eventelling27-create-user-dialog button[type="submit"],
.e27-admin-content .eventelling27-user-edit-dialog .button-primary,
.e27-admin-content .eventelling27-user-edit-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-dialog .button-primary,
.e27-admin-content .eventelling27-student-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-modal-dialog .button-primary,
.e27-admin-content .eventelling27-student-modal-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-dialog .button-primary,
.e27-admin-content .eventelling27-teacher-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-modal-dialog .button-primary,
.e27-admin-content .eventelling27-teacher-modal-dialog button[type="submit"],
.e27-admin-content .e27-legal-dialog .button-primary,
.e27-admin-content .e27-legal-dialog button[type="submit"],
.e27-admin-content .e27-setup-dialog .button-primary,
.e27-admin-content .e27-setup-dialog button[type="submit"],
.e27-admin-content .e27-session-dialog .button-primary,
.e27-admin-content .e27-session-dialog button[type="submit"],
.e27-admin-content .e27-message-box .button-primary,
.e27-admin-content .e27-message-box button[type="submit"],
.e27-admin-content [data-e27-local-accept] {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.is-secondary,
.e27-admin-content .eventelling27-user-edit-dialog .button.is-secondary,
.e27-admin-content .eventelling27-student-dialog .button.is-secondary,
.e27-admin-content .eventelling27-student-modal-dialog .button.is-secondary,
.e27-admin-content .eventelling27-teacher-dialog .button.is-secondary,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.is-secondary,
.e27-admin-content .e27-legal-dialog .button.is-secondary,
.e27-admin-content .e27-setup-dialog .button.is-secondary,
.e27-admin-content .e27-session-dialog .button.is-secondary,
.e27-admin-content .e27-message-box .button.is-secondary {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}

/* Ajuste final pedido: paneles a ancho completo y operaciones solo con seleccion multiple. */
#e27-users-search-form {
  display: block !important;
}

.e27-admin-content .eventelling27-directory-search-panel {
  display: block !important;
  float: none !important;
  max-width: none !important;
  width: 100% !important;
}

.e27-admin-content .eventelling27-operation-section {
  display: none !important;
  margin-left: 0 !important;
}

.e27-admin-content .eventelling27-operation-section.is-visible {
  display: block !important;
}

.e27-admin-content .eventelling27-operation-section form,
.e27-admin-content .eventelling27-directory-operations,
.e27-admin-content .eventelling27-student-operations {
  align-items: center !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  width: 100% !important;
}

.e27-admin-content .eventelling27-directory-operations [data-e27-operation-fields],
.e27-admin-content .eventelling27-student-operations [data-e27-student-target] {
  align-items: center !important;
  display: flex !important;
  gap: 12px !important;
  margin-left: auto !important;
}

.e27-admin-content .eventelling27-directory-operations input[name="destination_group_query"],
.e27-admin-content .eventelling27-student-operations input[name="destination_group_query"] {
  min-width: 300px !important;
  width: 300px !important;
}

.e27-admin-content .eventelling27-directory-search-actions,
.e27-admin-content .eventelling27-student-search .button,
.e27-admin-content .eventelling27-student-search .eventelling27-clear-filters {
  display: none !important;
}

.e27-admin-content .eventelling27-clear-search.is-disabled,
.e27-admin-content .eventelling27-clear-selection:disabled,
.e27-admin-content .eventelling27-clear-filters.is-disabled,
.e27-admin-content .eventelling27-clear-filters:disabled {
  display: none !important;
}

.e27-admin-content .eventelling27-user-edit-dialog {
  max-height: calc(100vh - 48px) !important;
  max-width: 720px !important;
  overflow: auto !important;
  padding: 0 !important;
  width: min(720px, calc(100vw - 32px)) !important;
}

.e27-admin-content .eventelling27-user-edit-body {
  max-height: none !important;
  overflow: visible !important;
  padding: 20px 28px 24px !important;
}

.e27-admin-content .eventelling27-user-edit-header {
  grid-template-columns: 42px minmax(0, 1fr) 42px 42px !important;
}

.e27-admin-content .eventelling27-user-edit-header h2 {
  font-size: 20px !important;
  text-align: center !important;
}

.eventelling27-quick-search {
  overflow: visible !important;
}

.eventelling27-quick-search > input,
.eventelling27-directory-search-input {
  min-width: 0 !important;
}

.eventelling27-app-filter-wrap {
  flex: 0 0 auto !important;
  padding: 0 4px !important;
}

.eventelling27-access-filter-wrap {
  padding: 0 4px !important;
}

/* Reglas finales de prioridad: colores y estados globales de la plataforma. */
.e27-admin-content .enviaaviso,
.e27-admin-content .button.enviaaviso,
.e27-admin-content button.enviaaviso,
.e27-admin-content .eventelling27-directory-toolbar-start .enviaaviso,
.e27-admin-content .eventelling27-directory-toolbar-start .button.enviaaviso,
.e27-admin-content .eventelling27-send-notice-button.enviaaviso,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}

.e27-admin-content .enviaaviso:disabled,
.e27-admin-content .enviaaviso.is-disabled,
.e27-admin-content .button.enviaaviso:disabled,
.e27-admin-content button.enviaaviso:disabled,
.e27-admin-content .eventelling27-send-notice-button.enviaaviso:disabled,
.e27-admin-content .eventelling27-send-groups-button.enviaaviso.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .e27-popup-positive,
.e27-admin-content .button.e27-popup-positive,
.e27-admin-content button.e27-popup-positive,
.e27-admin-content .eventelling27-create-user-dialog button[type="submit"],
.e27-admin-content .eventelling27-user-edit-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-dialog button[type="submit"],
.e27-admin-content .eventelling27-student-modal-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-dialog button[type="submit"],
.e27-admin-content .eventelling27-teacher-modal-dialog button[type="submit"] {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
}

.e27-admin-content .e27-popup-cancel,
.e27-admin-content .button.e27-popup-cancel,
.e27-admin-content button.e27-popup-cancel,
.e27-admin-content .eventelling27-create-user-dialog .button.is-secondary,
.e27-admin-content .eventelling27-user-edit-dialog .button.is-secondary,
.e27-admin-content .eventelling27-student-dialog .button.is-secondary,
.e27-admin-content .eventelling27-student-modal-dialog .button.is-secondary,
.e27-admin-content .eventelling27-teacher-dialog .button.is-secondary,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.is-secondary {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}

.e27-admin-content .e27-popup-link,
.e27-admin-content .button.e27-popup-link,
.e27-admin-content button.e27-popup-link,
.e27-admin-content [data-e27-add-student-link],
.e27-admin-content [data-e27-add-user-student-link],
.e27-admin-content [data-e27-student-row-add] {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
}

/* Capa definitiva para botones especiales: evita que las reglas genericas de .button/.button-primary ganen. */
.e27-admin-content #e27-send-notice-users.enviaaviso,
.e27-admin-content #e27-send-notice-students.enviaaviso,
.e27-admin-content #e27-send-notice-groups.enviaaviso,
.e27-admin-content .button#e27-send-notice-users,
.e27-admin-content .button#e27-send-notice-students,
.e27-admin-content .button#e27-send-notice-groups {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}

.e27-admin-content #e27-send-notice-users.enviaaviso:disabled,
.e27-admin-content #e27-send-notice-students.enviaaviso:disabled,
.e27-admin-content #e27-send-notice-groups.enviaaviso.is-disabled,
.e27-admin-content .button#e27-send-notice-users:disabled,
.e27-admin-content .button#e27-send-notice-students:disabled,
.e27-admin-content .button#e27-send-notice-groups.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-create-user-dialog [data-e27-create-user-student-add],
.e27-admin-content .eventelling27-student-dialog [data-e27-student-line-user-add],
.e27-admin-content .eventelling27-student-modal-dialog [data-e27-student-line-user-add],
.e27-admin-content [data-e27-create-user-student-add],
.e27-admin-content [data-e27-student-line-user-add],
.e27-admin-content [data-e27-add-student-link],
.e27-admin-content [data-e27-add-user-student-link],
.e27-admin-content [data-e27-student-row-add] {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
  opacity: 1 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-create-user-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-user-edit-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-modal-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-modal-dialog button[type="submit"]:not(.e27-popup-link) {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
  opacity: 1 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-create-user-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-user-edit-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-modal-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-modal-dialog .button.is-secondary:not(.e27-popup-link) {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}

/* Ajuste final de modales de grupos: flotan sin dejar hueco y alinean acciones. */
.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open {
  bottom: auto !important;
  display: block !important;
  height: auto !important;
  left: 50% !important;
  margin: 0 !important;
  max-height: calc(100vh - 44px) !important;
  max-width: min(620px, calc(100vw - 32px)) !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 0 !important;
  position: fixed !important;
  right: auto !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 100% !important;
  z-index: 9991 !important;
}

.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open > td,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open > td {
  background: transparent !important;
  border: 0 !important;
  display: block !important;
  height: auto !important;
  padding: 0 !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open .eventelling27-directory-group-edit,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open .eventelling27-directory-group-edit {
  align-items: stretch !important;
  background: #fff !important;
  border: 1px solid var(--e27-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 24px 70px rgba(11, 34, 57, .28) !important;
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: 1fr !important;
  max-height: calc(100vh - 44px) !important;
  overflow-y: auto !important;
  padding: 26px 26px 84px !important;
  position: relative !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open .e27-popup-positive,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-positive,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-positive,
.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open .e27-popup-cancel,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-cancel,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-cancel {
  bottom: 26px !important;
  grid-column: auto !important;
  grid-row: auto !important;
  justify-self: auto !important;
  position: absolute !important;
  width: auto !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open .e27-popup-positive,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-positive,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-positive {
  min-width: 150px !important;
  right: 26px !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open .e27-popup-cancel,
.e27-admin-content tr[data-e27-group-edit-panel].is-e27-group-modal-open .e27-popup-cancel,
.e27-admin-content tr[data-e27-group-duplicate-panel].is-e27-group-modal-open .e27-popup-cancel {
  min-width: 90px !important;
  right: 190px !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open {
  position: absolute !important;
}

.e27-admin-content form.eventelling27-new-group.is-e27-group-modal-open .e27-popup-cancel {
  right: 200px !important;
}

/* Los paneles de grupos nunca deben ocupar espacio si no estan abiertos como modal. */
.e27-admin-content [data-e27-new-group-panel]:not(.is-e27-group-modal-open),
.e27-admin-content [data-e27-group-edit-panel]:not(.is-e27-group-modal-open),
.e27-admin-content [data-e27-group-duplicate-panel]:not(.is-e27-group-modal-open) {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
}

/* Overrides finales de estabilidad para barras de accion y pop-ups. */
.e27-admin-content .eventelling27-directory-actions-bar .eventelling27-directory-toolbar-start {
  width: 100% !important;
}

.e27-admin-content .eventelling27-directory-actions-bar #e27-send-notice-users,
.e27-admin-content .eventelling27-directory-actions-bar #e27-send-notice-students {
  margin-left: auto !important;
}

.e27-admin-content #e27-send-notice-users.enviaaviso,
.e27-admin-content #e27-send-notice-students.enviaaviso,
.e27-admin-content #e27-send-notice-groups.enviaaviso,
.e27-admin-content button#e27-send-notice-users,
.e27-admin-content button#e27-send-notice-students,
.e27-admin-content a#e27-send-notice-groups {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
}

.e27-admin-content #e27-send-notice-users.enviaaviso:disabled,
.e27-admin-content #e27-send-notice-students.enviaaviso:disabled,
.e27-admin-content #e27-send-notice-groups.enviaaviso.is-disabled,
.e27-admin-content button#e27-send-notice-users:disabled,
.e27-admin-content button#e27-send-notice-students:disabled,
.e27-admin-content a#e27-send-notice-groups.is-disabled {
  background: #27a844 !important;
  border-color: #27a844 !important;
  color: #fff !important;
  opacity: .45 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-link,
.e27-admin-content .eventelling27-create-user-dialog [data-e27-create-user-student-add],
.e27-admin-content .eventelling27-student-dialog [data-e27-student-line-user-add],
.e27-admin-content .eventelling27-student-modal-dialog [data-e27-student-line-user-add],
.e27-admin-content [data-e27-create-user-student-add],
.e27-admin-content [data-e27-student-line-user-add],
.e27-admin-content [data-e27-add-student-line],
.e27-admin-content [data-e27-add-student-link],
.e27-admin-content [data-e27-add-user-student-link],
.e27-admin-content [data-e27-student-row-add] {
  background: #274b63 !important;
  border-color: #274b63 !important;
  color: #fff !important;
  opacity: 1 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-positive,
.e27-admin-content .eventelling27-create-user-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-user-edit-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-modal-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-dialog button[type="submit"]:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-modal-dialog button[type="submit"]:not(.e27-popup-link) {
  background: #f49a00 !important;
  border-color: #f49a00 !important;
  color: #fff !important;
  opacity: 1 !important;
}

.e27-admin-content .eventelling27-create-user-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-user-edit-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-student-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-student-modal-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-teacher-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-teacher-modal-dialog .button.e27-popup-cancel,
.e27-admin-content .eventelling27-create-user-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-user-edit-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-student-modal-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-dialog .button.is-secondary:not(.e27-popup-link),
.e27-admin-content .eventelling27-teacher-modal-dialog .button.is-secondary:not(.e27-popup-link) {
  background: #df1717 !important;
  border-color: #df1717 !important;
  color: #fff !important;
  opacity: .8 !important;
}
