/* Generated from assets/frontend.css for strict wcab-app-root isolation. */
/* =========================================================
   WebCarry Enterprise Booking — Premium UI Theme
   All original class names preserved for full compatibility.
========================================================= */

.wcab-app-root{
  --wcab-primary: #4f46e5;
  --wcab-primary-dark: #3730a3;
  --wcab-primary-light: #eef0ff;
  --wcab-accent: #06b6d4;
  --wcab-body-text-color: #10162f;
  --wcab-ink: var(--wcab-body-text-color);
  --wcab-muted: #64748b;
  --wcab-border: #e6e9f4;
  --wcab-surface: #ffffff;
  --wcab-surface-soft: #f7f8fd;
  --wcab-success-bg: #ecfdf5;
  --wcab-success-fg: #067647;
  --wcab-error-bg: #fef2f2;
  --wcab-error-fg: #b42318;
  --wcab-shadow-sm: 0 1px 2px rgba(16, 22, 47, 0.06);
  --wcab-shadow-md: 0 8px 24px rgba(16, 22, 47, 0.08);
  --wcab-shadow-lg: 0 24px 60px rgba(16, 22, 47, 0.14);
  --wcab-radius-sm: 10px;
  --wcab-radius-md: 16px;
  --wcab-radius-lg: 24px;

  /* Admin-customizable (overridden inline from Settings > Appearance). */
  --wcab-button-text: #ffffff;
  --wcab-heading-color: #10162f;
  --wcab-heading-weight: 800;
  --wcab-slot-available: #4ade80;
  --wcab-slot-selected: #f5a623;
  --wcab-slot-booked: #f15757;
  --wcab-slot-lunch: #9aa2b1;
  --wcab-staff-btn: #4f46e5;
  --wcab-staff-btn-hover: #3730a3;
  --wcab-staff-heading-weight: 800;
  --wcab-cal-available: #eef0f3;
  --wcab-cal-available-text: #334155;
  --wcab-cal-selected: #12b886;
  --wcab-cal-today: #4f46e5;
  --wcab-cal-today-text: #ffffff;

  /* Item 1/2: full per-button customization (color, border, size, hover,
     shadow) for every reusable button style used across the plugin —
     admin-customizable from Settings > Booking Form / Dashboard. */
  --wcab-btn-primary-border-color: transparent;
  --wcab-btn-primary-border-width: 0px;
  --wcab-btn-primary-radius: var(--wcab-radius-sm);
  --wcab-btn-primary-pad-y: 12px;
  --wcab-btn-primary-pad-x: 26px;
  --wcab-btn-primary-shadow-color: rgba(79, 70, 229, 0.25);
  --wcab-btn-primary-shadow-x: 0px;
  --wcab-btn-primary-shadow-y: 8px;
  --wcab-btn-primary-shadow-blur: 18px;
  --wcab-btn-primary-hover-shadow-color: rgba(79, 70, 229, 0.35);
  --wcab-btn-primary-hover-shadow-y: 16px;
  --wcab-btn-primary-hover-shadow-blur: 30px;

  --wcab-btn-secondary-bg: var(--wcab-surface-soft);
  --wcab-btn-secondary-hover-bg: #eef0ff;
  --wcab-btn-secondary-text: var(--wcab-ink);
  --wcab-btn-secondary-border-color: var(--wcab-border);
  --wcab-btn-secondary-border-width: 1.5px;
  --wcab-btn-secondary-radius: var(--wcab-radius-sm);
  --wcab-btn-secondary-pad-y: 12px;
  --wcab-btn-secondary-pad-x: 18px;
  --wcab-btn-secondary-shadow-color: transparent;
  --wcab-btn-secondary-shadow-x: 0px;
  --wcab-btn-secondary-shadow-y: 0px;
  --wcab-btn-secondary-shadow-blur: 0px;

  --wcab-btn-whatsapp-bg-start: #25d366;
  --wcab-btn-whatsapp-bg-end: #12b76a;
  --wcab-btn-whatsapp-text: #ffffff;
  --wcab-btn-whatsapp-border-color: transparent;
  --wcab-btn-whatsapp-border-width: 0px;
  --wcab-btn-whatsapp-radius: var(--wcab-radius-sm);
  --wcab-btn-whatsapp-pad-y: 11px;
  --wcab-btn-whatsapp-pad-x: 16px;
  --wcab-btn-whatsapp-shadow-color: rgba(18, 183, 106, 0.3);
  --wcab-btn-whatsapp-shadow-x: 0px;
  --wcab-btn-whatsapp-shadow-y: 10px;
  --wcab-btn-whatsapp-shadow-blur: 20px;

  --wcab-btn-print-bg: var(--wcab-surface-soft);
  --wcab-btn-print-hover-bg: var(--wcab-primary-light);
  --wcab-btn-print-text: var(--wcab-ink);
  --wcab-btn-print-border-color: var(--wcab-border);
  --wcab-btn-print-hover-border-color: var(--wcab-primary);
  --wcab-btn-print-border-width: 1.5px;
  --wcab-btn-print-radius: var(--wcab-radius-sm);
  --wcab-btn-print-pad-y: 11px;
  --wcab-btn-print-pad-x: 16px;

  --wcab-staff-btn-border-color: transparent;
  --wcab-staff-btn-border-width: 0px;
  --wcab-staff-btn-radius: var(--wcab-radius-sm);
  --wcab-staff-btn-shadow-color: rgba(79, 70, 229, 0.2);
  --wcab-staff-btn-shadow-x: 0px;
  --wcab-staff-btn-shadow-y: 4px;
  --wcab-staff-btn-shadow-blur: 12px;

  /* Item 2: general text styling, used wherever body copy is shown. */
  --wcab-body-font-size: 14px;
}

.wcab-app-root.wcab-wrapper, .wcab-app-root .wcab-wrapper,
.wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel,
.wcab-app-root.wcab-staff-login, .wcab-app-root .wcab-staff-login{
  font-family: var(--wcab-font-family, inherit);
  font-size: var(--wcab-body-font-size);
  color: var(--wcab-ink);
}

/* ---------- Main booking wrapper ---------- */
.wcab-app-root.wcab-wrapper, .wcab-app-root .wcab-wrapper{
  max-width: 1180px;
  margin: 30px auto;
  padding: 30px;
  border-radius: var(--wcab-radius-lg);
  background: linear-gradient(180deg, #ffffff 0%, #fbfbff 100%);
  border: 1px solid var(--wcab-border);
  box-shadow: var(--wcab-shadow-lg);
  position: relative;
}

.wcab-app-root.wcab-wrapper::before, .wcab-app-root .wcab-wrapper::before{
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  border-top-left-radius: var(--wcab-radius-lg);
  border-top-right-radius: var(--wcab-radius-lg);
  background: linear-gradient(90deg, var(--wcab-primary), var(--wcab-accent));
}

.wcab-app-root.wcab-header, .wcab-app-root .wcab-header{
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  border-bottom: 1px solid var(--wcab-border);
  padding-bottom: 22px;
  margin-bottom: 26px;
}

.wcab-app-root.wcab-kicker, .wcab-app-root .wcab-kicker{
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--wcab-primary);
  font-weight: 700;
}

.wcab-app-root.wcab-header h2, .wcab-app-root .wcab-header h2{
  margin: 8px 0 6px;
  font-size: 30px;
  font-weight: var(--wcab-heading-weight);
  letter-spacing: -0.02em;
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-header p, .wcab-app-root .wcab-header p{
  margin: 0;
  color: var(--wcab-muted);
  font-size: 15px;
}

.wcab-app-root.wcab-badge, .wcab-app-root .wcab-badge{
  background: linear-gradient(135deg, var(--wcab-primary), #6d5bf7);
  color: #fff;
  border: none;
  padding: 11px 20px;
  border-radius: 999px;
  font-weight: 700;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(79, 70, 229, 0.3);
}

.wcab-app-root.wcab-grid, .wcab-app-root .wcab-grid{
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 24px;
}

.wcab-app-root.wcab-panel, .wcab-app-root .wcab-panel{
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 22px;
  box-shadow: var(--wcab-shadow-sm);
  transition: box-shadow 0.2s ease;
}

.wcab-app-root.wcab-panel:hover, .wcab-app-root .wcab-panel:hover{
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-panel h3, .wcab-app-root .wcab-panel h3{
  margin-top: 0;
  color: var(--wcab-heading-color);
  font-size: 18px;
  font-weight: var(--wcab-heading-weight);
}

.wcab-app-root.wcab-wrapper label, .wcab-app-root .wcab-wrapper label,
.wcab-app-root.wcab-dashboard-panel label, .wcab-app-root .wcab-dashboard-panel label{
  display: block;
  font-weight: 700;
  font-size: 13px;
  color: #364058;
  margin: 14px 0 7px;
}

.wcab-app-root.wcab-wrapper input, .wcab-app-root .wcab-wrapper input,
.wcab-app-root.wcab-wrapper select, .wcab-app-root .wcab-wrapper select,
.wcab-app-root.wcab-wrapper textarea, .wcab-app-root .wcab-wrapper textarea,
.wcab-app-root.wcab-dashboard-panel input, .wcab-app-root .wcab-dashboard-panel input,
.wcab-app-root.wcab-dashboard-panel select, .wcab-app-root .wcab-dashboard-panel select,
.wcab-app-root.wcab-dashboard-panel textarea, .wcab-app-root .wcab-dashboard-panel textarea{
  width: 100%;
  padding: 12px 14px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  background: var(--wcab-surface);
  font-size: 15px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  font-family: inherit;
}

.wcab-app-root.wcab-wrapper input:focus, .wcab-app-root .wcab-wrapper input:focus,
.wcab-app-root.wcab-wrapper select:focus, .wcab-app-root .wcab-wrapper select:focus,
.wcab-app-root.wcab-wrapper textarea:focus, .wcab-app-root .wcab-wrapper textarea:focus,
.wcab-app-root.wcab-dashboard-panel input:focus, .wcab-app-root .wcab-dashboard-panel input:focus,
.wcab-app-root.wcab-dashboard-panel select:focus, .wcab-app-root .wcab-dashboard-panel select:focus,
.wcab-app-root.wcab-dashboard-panel textarea:focus, .wcab-app-root .wcab-dashboard-panel textarea:focus{
  outline: none;
  border-color: var(--wcab-primary);
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12);
}

.wcab-app-root.wcab-info-box, .wcab-app-root .wcab-info-box{
  background: var(--wcab-surface-soft);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  padding: 14px 16px;
  margin: 16px 0;
  color: #475467;
  font-size: 14px;
}

/* ---------- Employee picker with circular photo ---------- */
.wcab-app-root.wcab-employee-picker, .wcab-app-root .wcab-employee-picker{
  position: relative;
}

.wcab-app-root.wcab-employee-input, .wcab-app-root .wcab-employee-input{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  background: var(--wcab-surface);
  cursor: pointer;
  font-size: 15px;
  color: var(--wcab-muted);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-employee-input-label.has-value, .wcab-app-root .wcab-employee-input-label.has-value{
  color: var(--wcab-ink);
  font-weight: 600;
}

.wcab-app-root.wcab-employee-input-arrow, .wcab-app-root .wcab-employee-input-arrow{
  color: var(--wcab-muted);
  transition: transform 0.15s ease;
}

.wcab-app-root.wcab-employee-picker.active .wcab-employee-input, .wcab-app-root .wcab-employee-picker.active .wcab-employee-input{
  border-color: var(--wcab-primary);
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12);
}

.wcab-app-root.wcab-employee-picker.active .wcab-employee-input-arrow, .wcab-app-root .wcab-employee-picker.active .wcab-employee-input-arrow{
  transform: rotate(180deg);
}

.wcab-app-root.wcab-employee-list, .wcab-app-root .wcab-employee-list{
  display: none;
  position: absolute;
  z-index: 20;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 280px;
  overflow-y: auto;
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  box-shadow: var(--wcab-shadow-lg);
  padding: 6px;
}

.wcab-app-root.wcab-employee-list.active, .wcab-app-root .wcab-employee-list.active{
  display: block;
}

.wcab-app-root.wcab-employee-item, .wcab-app-root .wcab-employee-item{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border-radius: var(--wcab-radius-sm);
  cursor: pointer;
  transition: background 0.15s ease;
}

.wcab-app-root.wcab-employee-item:hover, .wcab-app-root .wcab-employee-item:hover{
  background: var(--wcab-primary-light);
}

.wcab-app-root.wcab-employee-avatar, .wcab-app-root .wcab-employee-avatar{
  width: 42px;
  height: 42px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--wcab-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
}

.wcab-app-root.wcab-employee-avatar img, .wcab-app-root .wcab-employee-avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wcab-app-root.wcab-employee-meta, .wcab-app-root .wcab-employee-meta{
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.wcab-app-root.wcab-employee-name, .wcab-app-root .wcab-employee-name{
  font-weight: 700;
  font-size: 14px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-employee-designation, .wcab-app-root .wcab-employee-designation{
  font-size: 12px;
  font-weight: 400;
  color: var(--wcab-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wcab-app-root.wcab-employee-bio, .wcab-app-root .wcab-employee-bio{
  font-size: 12px;
  color: var(--wcab-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wcab-app-root.wcab-employee-empty, .wcab-app-root .wcab-employee-empty{
  padding: 14px;
  color: var(--wcab-muted);
  font-size: 13px;
  text-align: center;
}

/* ---------- Timezone row with auto-detect button ---------- */
.wcab-app-root.wcab-timezone-row, .wcab-app-root .wcab-timezone-row{
  display: flex;
  gap: 8px;
  align-items: center;
}

.wcab-app-root.wcab-timezone-row .wcab-timezone, .wcab-app-root .wcab-timezone-row .wcab-timezone{
  flex: 1 1 auto;
}

.wcab-app-root.wcab-tz-detect-btn, .wcab-app-root .wcab-tz-detect-btn{
  flex-shrink: 0;
  white-space: nowrap;
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-surface-soft);
  border-radius: var(--wcab-radius-sm);
  padding: 12px 14px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  color: var(--wcab-primary);
  transition: background 0.15s ease;
}

.wcab-app-root.wcab-tz-detect-btn:hover, .wcab-app-root .wcab-tz-detect-btn:hover{
  background: var(--wcab-primary-light);
}

.wcab-app-root.wcab-calendar, .wcab-app-root .wcab-calendar{
  overflow: hidden;
  border-radius: var(--wcab-radius-sm);
  border: 1px solid var(--wcab-border);
}

/* FullCalendar day-cell interactivity: hover, today, and selected states. */
.wcab-app-root.wcab-calendar .fc-daygrid-day, .wcab-app-root .wcab-calendar .fc-daygrid-day{
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day:hover, .wcab-app-root .wcab-calendar .fc-daygrid-day:hover{
  background-color: var(--wcab-primary-light);
}

.wcab-app-root.wcab-calendar .fc-day-today, .wcab-app-root .wcab-calendar .fc-day-today,
.wcab-app-root.wcab-calendar .wcab-fc-today, .wcab-app-root .wcab-calendar .wcab-fc-today{
  background-color: rgba(79, 70, 229, 0.1) !important;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day.wcab-fc-today .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-daygrid-day.wcab-fc-today .fc-daygrid-day-number{
  font-weight: 800;
  color: var(--wcab-primary);
}

.wcab-app-root.wcab-calendar .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-daygrid-day-number{
  padding: 6px 8px;
}

.wcab-app-root.wcab-calendar .fc-col-header-cell, .wcab-app-root .wcab-calendar .fc-col-header-cell{
  background: var(--wcab-surface-soft);
}

.wcab-app-root.wcab-selected-date, .wcab-app-root .wcab-selected-date{
  background: var(--wcab-primary-light);
  border: 1px solid #d9defd;
  border-radius: var(--wcab-radius-sm);
  padding: 12px 14px;
  margin-bottom: 12px;
  color: var(--wcab-primary-dark);
  font-weight: 600;
  font-size: 14px;
}

.wcab-app-root.wcab-slots, .wcab-app-root .wcab-slots{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  min-height: 70px;
  margin-bottom: 22px;
}

.wcab-app-root.wcab-slot, .wcab-app-root .wcab-slot{
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-surface);
  border-radius: var(--wcab-radius-sm);
  padding: 13px;
  cursor: pointer;
  font-weight: 700;
  font-size: 14px;
  color: var(--wcab-ink);
  transition: all 0.15s ease;
}

.wcab-app-root.wcab-slot:hover:not(:disabled):not(.active):not(.wcab-slot-booked), .wcab-app-root .wcab-slot:hover:not(:disabled):not(.active):not(.wcab-slot-booked){
  background: #111827 !important;
  border-color: #111827 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-slot.active, .wcab-app-root .wcab-slot.active{
  background: var(--wcab-slot-selected);
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}

.wcab-app-root.wcab-slot-available, .wcab-app-root .wcab-slot-available{
  border-color: var(--wcab-slot-available);
}

.wcab-app-root.wcab-slot-available::before, .wcab-app-root .wcab-slot-available::before{
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--wcab-slot-available);
  margin-right: 6px;
  vertical-align: middle;
}

.wcab-app-root.wcab-slot-booked, .wcab-app-root .wcab-slot-booked,
.wcab-app-root.wcab-slot-lunch, .wcab-app-root .wcab-slot-lunch,
.wcab-app-root.wcab-slot-dinner, .wcab-app-root .wcab-slot-dinner{
  cursor: not-allowed;
  opacity: 0.75;
}

.wcab-app-root.wcab-slot-booked, .wcab-app-root .wcab-slot-booked{
  background: color-mix(in srgb, var(--wcab-slot-booked) 14%, #fff);
  border-color: var(--wcab-slot-booked);
  color: var(--wcab-slot-booked);
}

.wcab-app-root.wcab-slot-lunch, .wcab-app-root .wcab-slot-lunch,
.wcab-app-root.wcab-slot-dinner, .wcab-app-root .wcab-slot-dinner{
  background: color-mix(in srgb, var(--wcab-slot-lunch) 16%, #fff);
  border-color: var(--wcab-slot-lunch);
  color: var(--wcab-slot-lunch);
}

.wcab-app-root.wcab-slot-lunch:hover, .wcab-app-root .wcab-slot-lunch:hover,
.wcab-app-root.wcab-slot-dinner:hover, .wcab-app-root .wcab-slot-dinner:hover,
.wcab-app-root.wcab-slot-booked:hover, .wcab-app-root .wcab-slot-booked:hover{
  transform: none;
}

.wcab-app-root.wcab-slot-legend, .wcab-app-root .wcab-slot-legend{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 14px;
  font-size: 13px;
  font-weight: 700;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-legend-item, .wcab-app-root .wcab-legend-item{
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.wcab-app-root.wcab-legend-dot, .wcab-app-root .wcab-legend-dot{
  width: 12px;
  height: 12px;
  border-radius: 4px;
  display: inline-block;
}

.wcab-app-root.wcab-legend-available, .wcab-app-root .wcab-legend-available{ background: var(--wcab-slot-available); }
.wcab-app-root.wcab-legend-selected, .wcab-app-root .wcab-legend-selected{ background: var(--wcab-slot-selected); }
.wcab-app-root.wcab-legend-booked, .wcab-app-root .wcab-legend-booked{ background: var(--wcab-slot-booked); }
.wcab-app-root.wcab-legend-lunch, .wcab-app-root .wcab-legend-lunch{ background: var(--wcab-slot-lunch); }

.wcab-app-root.wcab-booking-ref, .wcab-app-root .wcab-booking-ref{
  margin-top: 8px;
  font-size: 14px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-submit, .wcab-app-root .wcab-submit{
  background: linear-gradient(135deg, var(--wcab-primary), var(--wcab-primary-dark));
  color: var(--wcab-button-text);
  border: var(--wcab-btn-primary-border-width) solid var(--wcab-btn-primary-border-color);
  border-radius: var(--wcab-btn-primary-radius);
  padding: var(--wcab-btn-primary-pad-y) var(--wcab-btn-primary-pad-x);
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  letter-spacing: 0.01em;
  box-shadow: var(--wcab-btn-primary-shadow-x) var(--wcab-btn-primary-shadow-y) var(--wcab-btn-primary-shadow-blur) var(--wcab-btn-primary-shadow-color);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.wcab-app-root.wcab-btn-secondary, .wcab-app-root .wcab-btn-secondary{
  background: var(--wcab-btn-secondary-bg);
  color: var(--wcab-btn-secondary-text);
  border: var(--wcab-btn-secondary-border-width) solid var(--wcab-btn-secondary-border-color);
  border-radius: var(--wcab-btn-secondary-radius);
  padding: var(--wcab-btn-secondary-pad-y) var(--wcab-btn-secondary-pad-x);
  font-weight: 700;
  cursor: pointer;
  box-shadow: var(--wcab-btn-secondary-shadow-x) var(--wcab-btn-secondary-shadow-y) var(--wcab-btn-secondary-shadow-blur) var(--wcab-btn-secondary-shadow-color);
  transition: background 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-btn-secondary:hover, .wcab-app-root .wcab-btn-secondary:hover{
  background: var(--wcab-btn-secondary-hover-bg);
}

.wcab-app-root.wcab-submit:hover:not(:disabled), .wcab-app-root .wcab-submit:hover:not(:disabled){
  transform: translateY(-1px);
  box-shadow: var(--wcab-btn-primary-shadow-x) var(--wcab-btn-primary-hover-shadow-y) var(--wcab-btn-primary-hover-shadow-blur) var(--wcab-btn-primary-hover-shadow-color);
}

.wcab-app-root.wcab-submit:active:not(:disabled), .wcab-app-root .wcab-submit:active:not(:disabled){
  transform: translateY(0);
}

.wcab-app-root.wcab-submit:disabled, .wcab-app-root .wcab-submit:disabled{
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
}

.wcab-app-root.wcab-success, .wcab-app-root .wcab-success,
.wcab-app-root.wcab-error, .wcab-app-root .wcab-error,
.wcab-app-root.wcab-empty, .wcab-app-root .wcab-empty,
.wcab-app-root.wcab-loading, .wcab-app-root .wcab-loading{
  margin-top: 12px;
  padding: 13px 15px;
  border-radius: var(--wcab-radius-sm);
  font-size: 14px;
  font-weight: 600;
}

.wcab-app-root.wcab-success, .wcab-app-root .wcab-success{
  background: var(--wcab-success-bg);
  color: var(--wcab-success-fg);
  border: 1px solid #b7f0d3;
}

.wcab-app-root.wcab-error, .wcab-app-root .wcab-error{
  background: var(--wcab-error-bg);
  color: var(--wcab-error-fg);
  border: 1px solid #fecdca;
}

.wcab-app-root.wcab-empty, .wcab-app-root .wcab-empty,
.wcab-app-root.wcab-loading, .wcab-app-root .wcab-loading{
  background: var(--wcab-surface-soft);
  color: var(--wcab-muted);
  border: 1px solid var(--wcab-border);
}

.wcab-app-root.wcab-whatsapp, .wcab-app-root .wcab-whatsapp{
  display: inline-block;
  margin-top: 10px;
  background: linear-gradient(135deg, var(--wcab-btn-whatsapp-bg-start), var(--wcab-btn-whatsapp-bg-end));
  color: var(--wcab-btn-whatsapp-text) !important;
  text-decoration: none;
  border: var(--wcab-btn-whatsapp-border-width) solid var(--wcab-btn-whatsapp-border-color);
  padding: var(--wcab-btn-whatsapp-pad-y) var(--wcab-btn-whatsapp-pad-x);
  border-radius: var(--wcab-btn-whatsapp-radius);
  font-weight: 800;
  box-shadow: var(--wcab-btn-whatsapp-shadow-x) var(--wcab-btn-whatsapp-shadow-y) var(--wcab-btn-whatsapp-shadow-blur) var(--wcab-btn-whatsapp-shadow-color);
  transition: transform 0.15s ease;
}

.wcab-app-root.wcab-whatsapp:hover, .wcab-app-root .wcab-whatsapp:hover{
  transform: translateY(-1px);
}

.wcab-app-root.wcab-table, .wcab-app-root .wcab-table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--wcab-surface);
  border-radius: var(--wcab-radius-sm);
  overflow: hidden;
  border: 1px solid var(--wcab-border);
  table-layout: auto;
}

.wcab-app-root.wcab-table-wrap .wcab-table, .wcab-app-root .wcab-table-wrap .wcab-table{
  min-width: 1450px;
}

.wcab-app-root.wcab-table th, .wcab-app-root .wcab-table th,
.wcab-app-root.wcab-table td, .wcab-app-root .wcab-table td{
  border-bottom: 1px solid var(--wcab-border);
  padding: 12px 14px;
  text-align: left;
  font-size: var(--wcab-table-cell-size, 14px);
  color: var(--wcab-table-cell-color, var(--wcab-ink));
  vertical-align: top;
}

.wcab-app-root.wcab-table th, .wcab-app-root .wcab-table th{
  white-space: normal;
}

.wcab-app-root.wcab-table th, .wcab-app-root .wcab-table th{
  background: linear-gradient(180deg, #fbfbff, var(--wcab-surface-soft));
  font-weight: 700;
  color: var(--wcab-table-header-color, #364058);
  text-transform: uppercase;
  font-size: var(--wcab-table-header-size, 11px);
  letter-spacing: 0.04em;
  line-height: 1.35;
  border-bottom: 2px solid rgba(79, 70, 229, 0.14);
}

/* Item 3/4/5: per-column widths (including Select and Action) are now
   generated inline from Settings > Dashboard via [data-col="..."] rules,
   so no fixed nth-child sizing is needed here — it previously fell out of
   sync whenever a column was added/reordered and caused columns like
   Payment/Reason/Action to collapse under the table's fixed layout. */

.wcab-app-root.wcab-table tr:last-child td, .wcab-app-root .wcab-table tr:last-child td{
  border-bottom: none;
}

.wcab-app-root.wcab-table tbody tr, .wcab-app-root .wcab-table tbody tr{
  transition: background 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-table tbody tr:hover, .wcab-app-root .wcab-table tbody tr:hover{
  background: var(--wcab-surface-soft);
  box-shadow: inset 3px 0 0 var(--wcab-primary);
}

@media (max-width: 850px) {
  .wcab-app-root.wcab-grid, .wcab-app-root .wcab-grid{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-header, .wcab-app-root .wcab-header{ flex-direction: column; align-items: flex-start; }
  .wcab-app-root.wcab-slots, .wcab-app-root .wcab-slots{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-wrapper, .wcab-app-root .wcab-wrapper{ padding: 20px; }
}

/* ---------- Powered by ribbon ---------- */
/* ---------- Step wizard ---------- */
.wcab-app-root.wcab-wizard-steps, .wcab-app-root .wcab-wizard-steps{
  display: flex;
  justify-content: space-between;
  margin-bottom: 26px;
  position: relative;
}

.wcab-app-root.wcab-wizard-steps::before, .wcab-app-root .wcab-wizard-steps::before{
  content: "";
  position: absolute;
  top: 15px;
  left: 6%;
  right: 6%;
  height: 2px;
  background: var(--wcab-border);
  z-index: 0;
}

.wcab-app-root.wcab-wizard-step-dot, .wcab-app-root .wcab-wizard-step-dot{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  text-align: center;
}

.wcab-app-root.wcab-wizard-step-dot span, .wcab-app-root .wcab-wizard-step-dot span{
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--wcab-surface);
  border: 2px solid var(--wcab-border);
  color: var(--wcab-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 13px;
  transition: all 0.2s ease;
}

.wcab-app-root.wcab-wizard-step-dot label, .wcab-app-root .wcab-wizard-step-dot label{
  margin-top: 6px;
  font-size: 12px;
  color: var(--wcab-muted);
  font-weight: 600;
}

.wcab-app-root.wcab-wizard-step-dot.active span, .wcab-app-root .wcab-wizard-step-dot.active span{
  background: var(--wcab-primary);
  border-color: var(--wcab-primary);
  color: #fff;
}

.wcab-app-root.wcab-wizard-step-dot.active label, .wcab-app-root .wcab-wizard-step-dot.active label{
  color: var(--wcab-primary);
}

.wcab-app-root.wcab-wizard-step-dot.completed span, .wcab-app-root .wcab-wizard-step-dot.completed span{
  background: var(--wcab-success-fg);
  border-color: var(--wcab-success-fg);
  color: #fff;
}

.wcab-app-root.wcab-wizard-panel, .wcab-app-root .wcab-wizard-panel{
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 24px;
  box-shadow: 0 2px 8px rgba(16, 22, 47, 0.05);
  min-height: 520px;
}

.wcab-app-root.wcab-wrapper button:focus-visible, .wcab-app-root .wcab-wrapper button:focus-visible,
.wcab-app-root.wcab-wrapper input:focus-visible, .wcab-app-root .wcab-wrapper input:focus-visible,
.wcab-app-root.wcab-wrapper select:focus-visible, .wcab-app-root .wcab-wrapper select:focus-visible,
.wcab-app-root.wcab-wrapper textarea:focus-visible, .wcab-app-root .wcab-wrapper textarea:focus-visible,
.wcab-app-root.wcab-wrapper a:focus-visible, .wcab-app-root .wcab-wrapper a:focus-visible{
  outline: 2px solid var(--wcab-primary);
  outline-offset: 2px;
}

.wcab-app-root.wcab-wizard-step, .wcab-app-root .wcab-wizard-step{
  display: none;
  animation: wcab-step-fade 0.25s ease;
}

.wcab-app-root.wcab-wizard-step.active, .wcab-app-root .wcab-wizard-step.active{
  display: block;
}

@keyframes wcab-step-fade {
  from{ opacity: 0; transform: translateY(6px); }
  to{ opacity: 1; transform: translateY(0); }
}

.wcab-app-root.wcab-wizard-step h3, .wcab-app-root .wcab-wizard-step h3{
  margin-top: 0;
  font-size: 18px;
  font-weight: var(--wcab-heading-weight);
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-nav-row, .wcab-app-root .wcab-nav-row{
  display: flex;
  justify-content: space-between;
  margin-top: 22px;
}

.wcab-app-root.wcab-btn-primary, .wcab-app-root .wcab-btn-primary{
  background: linear-gradient(135deg, var(--wcab-primary), var(--wcab-primary-dark));
  color: var(--wcab-button-text);
  border: var(--wcab-btn-primary-border-width) solid var(--wcab-btn-primary-border-color);
  border-radius: var(--wcab-btn-primary-radius);
  padding: var(--wcab-btn-primary-pad-y) var(--wcab-btn-primary-pad-x);
  font-weight: 800;
  font-size: 15px;
  cursor: pointer;
  box-shadow: var(--wcab-btn-primary-shadow-x) var(--wcab-btn-primary-shadow-y) var(--wcab-btn-primary-shadow-blur) var(--wcab-btn-primary-shadow-color);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.wcab-app-root.wcab-btn-primary:hover:not(:disabled), .wcab-app-root .wcab-btn-primary:hover:not(:disabled){
  transform: translateY(-1px);
}

.wcab-app-root.wcab-btn-primary:disabled, .wcab-app-root .wcab-btn-primary:disabled{
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}

/* ---------- Location selector ---------- */
.wcab-app-root.wcab-location-options, .wcab-app-root .wcab-location-options{
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 6px;
}

.wcab-app-root.wcab-location-option, .wcab-app-root .wcab-location-option{
  display: flex;
  align-items: flex-start;
  gap: 12px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  padding: 14px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.wcab-app-root.wcab-location-option-custom, .wcab-app-root .wcab-location-option-custom{
  flex-direction: column;
  align-items: stretch;
  cursor: default;
}

.wcab-app-root.wcab-location-option-custom-row, .wcab-app-root .wcab-location-option-custom-row{
  display: flex;
  align-items: flex-start;
  gap: 12px;
  cursor: pointer;
}

.wcab-app-root.wcab-location-option:hover, .wcab-app-root .wcab-location-option:hover{
  border-color: var(--wcab-primary);
  background: var(--wcab-surface-soft);
}

.wcab-app-root.wcab-location-option:has(.wcab-location-radio:checked), .wcab-app-root .wcab-location-option:has(.wcab-location-radio:checked),
.wcab-app-root.wcab-location-option.wcab-location-selected, .wcab-app-root .wcab-location-option.wcab-location-selected{
  border-color: var(--wcab-primary);
  background: var(--wcab-primary-light);
}

.wcab-app-root.wcab-location-radio, .wcab-app-root .wcab-location-radio{
  margin-top: 3px;
  accent-color: var(--wcab-primary);
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.wcab-app-root.wcab-location-icon, .wcab-app-root .wcab-location-icon{
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--wcab-primary-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
}

.wcab-app-root.wcab-location-icon-zoom, .wcab-app-root .wcab-location-icon-zoom{
  background: #2563eb;
  color: #fff;
}

.wcab-app-root.wcab-location-icon-custom, .wcab-app-root .wcab-location-icon-custom{
  background: #1e3a5f;
  color: #fff;
}

.wcab-app-root.wcab-location-content, .wcab-app-root .wcab-location-content{
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.wcab-app-root.wcab-location-label, .wcab-app-root .wcab-location-label{
  font-weight: 700;
  font-size: 14px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-location-note, .wcab-app-root .wcab-location-note{
  font-size: 12px;
  color: var(--wcab-primary);
}

.wcab-app-root.wcab-location-custom-input, .wcab-app-root .wcab-location-custom-input{
  width: 100%;
  padding: 12px 14px;
  border: 1.5px solid var(--wcab-primary);
  border-radius: var(--wcab-radius-sm);
  font-size: 14px;
  margin-top: 10px;
  box-sizing: border-box;
}

/* ---------- Legal notice + modal ---------- */
.wcab-app-root.wcab-legal-notice, .wcab-app-root .wcab-legal-notice{
  font-size: 12px;
  color: var(--wcab-muted);
  line-height: 1.6;
  margin: 14px 0 4px;
}

.wcab-app-root.wcab-legal-link, .wcab-app-root .wcab-legal-link{
  color: var(--wcab-primary);
  font-weight: 700;
  text-decoration: underline;
}

.wcab-app-root.wcab-legal-modal-body, .wcab-app-root .wcab-legal-modal-body{
  text-align: left;
  max-height: 50vh;
  overflow-y: auto;
  font-size: 14px;
  color: var(--wcab-ink);
  line-height: 1.6;
  margin-top: 10px;
}

/* ---------- Calendly-style circular calendar ---------- */
.wcab-app-root.wcab-calendar .fc-theme-standard td, .wcab-app-root .wcab-calendar .fc-theme-standard td,
.wcab-app-root.wcab-calendar .fc-theme-standard th, .wcab-app-root .wcab-calendar .fc-theme-standard th{
  border: none;
}

.wcab-app-root.wcab-calendar .fc-scrollgrid, .wcab-app-root .wcab-calendar .fc-scrollgrid{
  border: none;
}

.wcab-app-root.wcab-calendar .fc-col-header-cell, .wcab-app-root .wcab-calendar .fc-col-header-cell{
  background: transparent;
  border: none;
  padding: 6px 0 14px;
}

.wcab-app-root.wcab-calendar .fc-col-header-cell-cushion, .wcab-app-root .wcab-calendar .fc-col-header-cell-cushion{
  color: var(--wcab-muted);
  font-weight: 700;
  font-size: 13px;
  text-decoration: none;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day, .wcab-app-root .wcab-calendar .fc-daygrid-day{
  border: none;
  text-align: center;
  padding: 4px 0;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day-frame, .wcab-app-root .wcab-calendar .fc-daygrid-day-frame{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day-top, .wcab-app-root .wcab-calendar .fc-daygrid-day-top{
  display: flex;
  justify-content: center;
  width: 100%;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-daygrid-day-number{
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--wcab-cal-available);
  color: var(--wcab-cal-available-text);
  font-weight: 700;
  font-size: 14px;
  transition: all 0.15s ease;
  float: none;
}

.wcab-app-root.wcab-calendar .fc-day-past .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-day-past .fc-daygrid-day-number,
.wcab-app-root.wcab-calendar .fc-day-disabled .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-day-disabled .fc-daygrid-day-number{
  background: transparent;
  color: #cbd5e1;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day:not(.fc-day-past):not(.fc-day-disabled) .fc-daygrid-day-number:hover, .wcab-app-root .wcab-calendar .fc-daygrid-day:not(.fc-day-past):not(.fc-day-disabled) .fc-daygrid-day-number:hover{
  background: var(--wcab-cal-selected);
  color: #fff;
  cursor: pointer;
  transform: scale(1.05);
  opacity: 0.75;
}

.wcab-app-root.wcab-calendar .fc-day-today .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-day-today .fc-daygrid-day-number{
  background: var(--wcab-cal-today);
  color: var(--wcab-cal-today-text);
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.18);
}

.wcab-app-root.wcab-calendar .wcab-fc-selected .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .wcab-fc-selected .fc-daygrid-day-number{
  background: var(--wcab-cal-selected) !important;
  color: #fff !important;
  box-shadow: none;
}

.wcab-app-root.wcab-calendar .fc-daygrid-day-events, .wcab-app-root .wcab-calendar .fc-daygrid-day-events{
  display: none;
}

.wcab-app-root.wcab-calendar .fc-daygrid-body, .wcab-app-root .wcab-calendar .fc-daygrid-body,
.wcab-app-root.wcab-calendar .fc-scrollgrid-sync-table, .wcab-app-root .wcab-calendar .fc-scrollgrid-sync-table{
  width: 100% !important;
}

.wcab-app-root.wcab-calendar .fc-toolbar.fc-header-toolbar, .wcab-app-root .wcab-calendar .fc-toolbar.fc-header-toolbar{
  margin-bottom: 14px;
}

.wcab-app-root.wcab-calendar .fc-toolbar-title, .wcab-app-root .wcab-calendar .fc-toolbar-title{
  font-size: 18px;
  font-weight: 800;
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-calendar .fc-button, .wcab-app-root .wcab-calendar .fc-button{
  background: var(--wcab-surface-soft) !important;
  border: 1px solid var(--wcab-border) !important;
  color: var(--wcab-ink) !important;
  box-shadow: none !important;
  border-radius: 8px !important;
}

.wcab-app-root.wcab-calendar .fc-button:hover, .wcab-app-root .wcab-calendar .fc-button:hover{
  background: var(--wcab-primary-light) !important;
}

.wcab-app-root.wcab-calendar .fc-button-primary:not(:disabled).fc-button-active, .wcab-app-root .wcab-calendar .fc-button-primary:not(:disabled).fc-button-active{
  background: var(--wcab-primary) !important;
  border-color: var(--wcab-primary) !important;
  color: #fff !important;
}

/* ---------- Modal ---------- */
.wcab-app-root.wcab-modal, .wcab-app-root .wcab-modal{
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(16, 22, 47, 0.6);
  backdrop-filter: blur(2px);
  z-index: 99999;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.wcab-app-root.wcab-modal.active, .wcab-app-root .wcab-modal.active{
  display: flex;
}

.wcab-app-root.wcab-modal-card, .wcab-app-root .wcab-modal-card{
  max-width: 480px;
  width: 100%;
  background: var(--wcab-surface);
  border-radius: var(--wcab-radius-lg);
  padding: 30px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.3);
  position: relative;
  text-align: center;
  border-top: 4px solid var(--wcab-primary);
}

.wcab-app-root.wcab-modal-card h3, .wcab-app-root .wcab-modal-card h3{
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 800;
}

.wcab-app-root.wcab-modal-card p, .wcab-app-root .wcab-modal-card p{
  color: #475467;
  font-size: 15px;
  line-height: 1.6;
}

.wcab-app-root.wcab-modal-close, .wcab-app-root .wcab-modal-close{
  position: absolute;
  top: 10px;
  right: 14px;
  border: 0;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: var(--wcab-muted);
  transition: color 0.15s ease;
}

.wcab-app-root.wcab-modal-close:hover, .wcab-app-root .wcab-modal-close:hover{
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-modal-summary, .wcab-app-root .wcab-modal-summary{
  margin-top: 14px;
  text-align: left;
}

.wcab-app-root.wcab-modal-summary-table, .wcab-app-root .wcab-modal-summary-table{
  width: 100%;
  border-collapse: collapse;
  background: var(--wcab-surface-soft);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  overflow: hidden;
}

.wcab-app-root.wcab-modal-summary-table td, .wcab-app-root .wcab-modal-summary-table td{
  padding: 9px 12px;
  font-size: 13px;
  border-bottom: 1px solid var(--wcab-border);
}

.wcab-app-root.wcab-modal-summary-table tr:last-child td, .wcab-app-root .wcab-modal-summary-table tr:last-child td{
  border-bottom: none;
}

.wcab-app-root.wcab-modal-summary-table td:first-child, .wcab-app-root .wcab-modal-summary-table td:first-child{
  color: var(--wcab-muted);
  font-weight: 700;
  width: 45%;
}

.wcab-app-root.wcab-modal-summary-table td:last-child, .wcab-app-root .wcab-modal-summary-table td:last-child{
  color: var(--wcab-ink);
  font-weight: 700;
  text-align: right;
}

.wcab-app-root.wcab-modal-actions, .wcab-app-root .wcab-modal-actions{
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 18px;
}

.wcab-app-root.wcab-modal-actions .wcab-submit, .wcab-app-root .wcab-modal-actions .wcab-submit,
.wcab-app-root.wcab-modal-actions .wcab-btn-secondary, .wcab-app-root .wcab-modal-actions .wcab-btn-secondary{
  margin-top: 0;
  width: 100%;
}

.wcab-app-root.wcab-modal-actions-row, .wcab-app-root .wcab-modal-actions-row{
  display: flex;
  gap: 10px;
}

.wcab-app-root.wcab-modal-actions-row .wcab-whatsapp, .wcab-app-root .wcab-modal-actions-row .wcab-whatsapp,
.wcab-app-root.wcab-modal-actions-row .wcab-print-btn, .wcab-app-root .wcab-modal-actions-row .wcab-print-btn{
  flex: 1 1 50%;
  width: auto;
  margin-top: 0;
  border: 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 14px;
}

.wcab-app-root.wcab-print-btn, .wcab-app-root .wcab-print-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--wcab-btn-print-bg);
  color: var(--wcab-btn-print-text) !important;
  border: var(--wcab-btn-print-border-width) solid var(--wcab-btn-print-border-color) !important;
  padding: var(--wcab-btn-print-pad-y) var(--wcab-btn-print-pad-x);
  border-radius: var(--wcab-btn-print-radius);
  font-weight: 800;
  transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.wcab-app-root.wcab-print-btn:hover, .wcab-app-root .wcab-print-btn:hover{
  transform: translateY(-1px);
  border-color: var(--wcab-btn-print-hover-border-color) !important;
  background: var(--wcab-btn-print-hover-bg);
}

/* ---------- Staff dashboard ---------- */
.wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel{
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-lg);
  padding: 26px;
  margin: 24px 0;
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-dashboard-brand, .wcab-app-root .wcab-dashboard-brand{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.wcab-app-root.wcab-dashboard-brand-logo, .wcab-app-root .wcab-dashboard-brand-logo{
  max-height: 42px;
  max-width: 160px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.wcab-app-root.wcab-dashboard-brand-name, .wcab-app-root .wcab-dashboard-brand-name{
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-dashboard-head, .wcab-app-root .wcab-dashboard-head{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--wcab-border);
}

.wcab-app-root.wcab-dashboard-head h3, .wcab-app-root .wcab-dashboard-head h3{
  margin: 0 0 6px;
  font-size: var(--wcab-dash-heading-size, 24px);
  font-weight: var(--wcab-staff-heading-weight);
  letter-spacing: -0.01em;
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-dashboard-head p, .wcab-app-root .wcab-dashboard-head p,
.wcab-app-root.wcab-dashboard-note, .wcab-app-root .wcab-dashboard-note{
  margin: 0;
  color: var(--wcab-muted);
  font-size: 14px;
}

.wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{
  display: grid;
  grid-template-columns: repeat(7, minmax(100px, 1fr));
  gap: 12px;
  margin: 18px 0 22px;
}

.wcab-app-root.wcab-stat-card, .wcab-app-root .wcab-stat-card{
  background: linear-gradient(160deg, #ffffff, var(--wcab-surface-soft));
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 16px 14px;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-decoration: none !important;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  min-width: 0;
}

.wcab-app-root.wcab-stat-card:hover, .wcab-app-root .wcab-stat-card:hover{
  transform: translateY(-3px);
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-stat-card.wcab-stat-active, .wcab-app-root .wcab-stat-card.wcab-stat-active{
  border-width: 2px;
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-stat-icon, .wcab-app-root .wcab-stat-icon{
  width: 38px;
  height: 38px;
  border-radius: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  background: rgba(16, 22, 47, 0.07);
  color: var(--wcab-ink);
  flex-shrink: 0;
}

.wcab-app-root.wcab-stat-icon svg, .wcab-app-root .wcab-stat-icon svg{
  width: 19px;
  height: 19px;
}

.wcab-app-root.wcab-stat-label, .wcab-app-root .wcab-stat-label{
  display: block;
  color: var(--wcab-muted);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 6px;
}

.wcab-app-root.wcab-stat-card strong, .wcab-app-root .wcab-stat-card strong{
  display: block;
  font-size: 30px;
  line-height: 1;
  font-weight: 800;
  color: var(--wcab-ink);
}

/* Distinct color per status so the dashboard is scannable at a glance. */
.wcab-app-root.wcab-stat-total strong, .wcab-app-root .wcab-stat-total strong{ color: var(--wcab-ink); }
.wcab-app-root.wcab-stat-total.wcab-stat-active, .wcab-app-root .wcab-stat-total.wcab-stat-active{ border-color: var(--wcab-ink); }
.wcab-app-root.wcab-stat-total .wcab-stat-icon, .wcab-app-root .wcab-stat-total .wcab-stat-icon{ background: rgba(16, 22, 47, 0.08); color: var(--wcab-ink); }

.wcab-app-root.wcab-stat-pending strong, .wcab-app-root .wcab-stat-pending strong{ color: #b45309; }
.wcab-app-root.wcab-stat-pending.wcab-stat-active, .wcab-app-root .wcab-stat-pending.wcab-stat-active{ border-color: #b45309; background: #fffbeb; }
.wcab-app-root.wcab-stat-pending .wcab-stat-icon, .wcab-app-root .wcab-stat-pending .wcab-stat-icon{ background: rgba(180, 83, 9, 0.12); color: #b45309; }

.wcab-app-root.wcab-stat-approved strong, .wcab-app-root .wcab-stat-approved strong{ color: #067647; }
.wcab-app-root.wcab-stat-approved.wcab-stat-active, .wcab-app-root .wcab-stat-approved.wcab-stat-active{ border-color: #067647; background: #ecfdf5; }
.wcab-app-root.wcab-stat-approved .wcab-stat-icon, .wcab-app-root .wcab-stat-approved .wcab-stat-icon{ background: rgba(6, 118, 71, 0.12); color: #067647; }

.wcab-app-root.wcab-stat-cancelled strong, .wcab-app-root .wcab-stat-cancelled strong{ color: #b42318; }
.wcab-app-root.wcab-stat-cancelled.wcab-stat-active, .wcab-app-root .wcab-stat-cancelled.wcab-stat-active{ border-color: #b42318; background: #fef2f2; }
.wcab-app-root.wcab-stat-cancelled .wcab-stat-icon, .wcab-app-root .wcab-stat-cancelled .wcab-stat-icon{ background: rgba(180, 35, 24, 0.12); color: #b42318; }

.wcab-app-root.wcab-stat-postponed strong, .wcab-app-root .wcab-stat-postponed strong{ color: #c2410c; }
.wcab-app-root.wcab-stat-postponed.wcab-stat-active, .wcab-app-root .wcab-stat-postponed.wcab-stat-active{ border-color: #c2410c; background: #fff7ed; }
.wcab-app-root.wcab-stat-postponed .wcab-stat-icon, .wcab-app-root .wcab-stat-postponed .wcab-stat-icon{ background: rgba(194, 65, 12, 0.12); color: #c2410c; }

.wcab-app-root.wcab-stat-pending_payment strong, .wcab-app-root .wcab-stat-pending_payment strong{ color: #7c3aed; }
.wcab-app-root.wcab-stat-pending_payment.wcab-stat-active, .wcab-app-root .wcab-stat-pending_payment.wcab-stat-active{ border-color: #7c3aed; background: #f5f3ff; }
.wcab-app-root.wcab-stat-pending_payment .wcab-stat-icon, .wcab-app-root .wcab-stat-pending_payment .wcab-stat-icon{ background: rgba(124, 58, 237, 0.12); color: #7c3aed; }

.wcab-app-root.wcab-stat-rescheduled strong, .wcab-app-root .wcab-stat-rescheduled strong{ color: #0e7490; }
.wcab-app-root.wcab-stat-rescheduled.wcab-stat-active, .wcab-app-root .wcab-stat-rescheduled.wcab-stat-active{ border-color: #0e7490; background: #ecfeff; }
.wcab-app-root.wcab-stat-rescheduled .wcab-stat-icon, .wcab-app-root .wcab-stat-rescheduled .wcab-stat-icon{ background: rgba(14, 116, 144, 0.12); color: #0e7490; }

.wcab-app-root.wcab-filter-form, .wcab-app-root .wcab-filter-form{
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 14px;
  background: linear-gradient(160deg, #ffffff, var(--wcab-surface-soft));
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 20px;
  margin-bottom: 22px;
  box-shadow: var(--wcab-shadow-sm);
}

.wcab-app-root.wcab-filter-field, .wcab-app-root .wcab-filter-field{
  display: flex;
  flex-direction: column;
  flex: 1 1 150px;
  min-width: 150px;
}

.wcab-app-root.wcab-filter-field-search, .wcab-app-root .wcab-filter-field-search{
  flex: 2 1 220px;
}

.wcab-app-root.wcab-filter-form label, .wcab-app-root .wcab-filter-form label{
  display: block;
  font-size: 11px;
  font-weight: 800;
  color: var(--wcab-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 0 0 6px;
}

.wcab-app-root.wcab-filter-form input, .wcab-app-root .wcab-filter-form input,
.wcab-app-root.wcab-filter-form select, .wcab-app-root .wcab-filter-form select{
  width: 100%;
  min-height: 44px;
  border: 1.5px solid var(--wcab-border);
  border-radius: 12px;
  padding: 8px 14px;
  box-sizing: border-box;
  background: var(--wcab-surface);
  font-size: 14px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-filter-form input:focus, .wcab-app-root .wcab-filter-form input:focus,
.wcab-app-root.wcab-filter-form select:focus, .wcab-app-root .wcab-filter-form select:focus{
  outline: none;
  border-color: var(--wcab-staff-btn);
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.12);
}

.wcab-app-root.wcab-filter-actions, .wcab-app-root .wcab-filter-actions{
  display: flex;
  gap: 16px;
  flex: 0 0 auto;
  margin-left: auto;
}

.wcab-app-root.wcab-filter-btn, .wcab-app-root .wcab-filter-btn,
.wcab-app-root.wcab-clear-btn, .wcab-app-root .wcab-clear-btn{
  min-height: 44px;
  border-radius: 12px;
  border: 0;
  padding: 10px 20px;
  font-weight: 800;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
  -webkit-tap-highlight-color: transparent;
}

.wcab-app-root.wcab-filter-btn svg, .wcab-app-root .wcab-filter-btn svg,
.wcab-app-root.wcab-clear-btn svg, .wcab-app-root .wcab-clear-btn svg{
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}

.wcab-app-root.wcab-filter-btn, .wcab-app-root .wcab-filter-btn{
  background: linear-gradient(135deg, var(--wcab-staff-btn), var(--wcab-staff-btn-hover));
  color: #fff;
  border: var(--wcab-staff-btn-border-width) solid var(--wcab-staff-btn-border-color);
  border-radius: var(--wcab-staff-btn-radius);
  box-shadow: var(--wcab-staff-btn-shadow-x) var(--wcab-staff-btn-shadow-y) var(--wcab-staff-btn-shadow-blur) var(--wcab-staff-btn-shadow-color);
}

.wcab-app-root.wcab-filter-btn:hover, .wcab-app-root .wcab-filter-btn:hover,
.wcab-app-root.wcab-filter-btn:focus-visible, .wcab-app-root .wcab-filter-btn:focus-visible{
  transform: translateY(-1px);
  filter: brightness(1.05);
  outline: none;
}

.wcab-app-root.wcab-filter-btn:active, .wcab-app-root .wcab-filter-btn:active{
  transform: translateY(0);
  filter: brightness(0.97);
}

/* ---------- Header action buttons (Calendar View / Refresh / Logout) ---------- */
/* Explicit hover / focus / active / visited states below so the buttons
   always return to their normal "premium outline" look and never stay
   stuck in the hover/tap-highlight color after a click or tap. */
.wcab-app-root.wcab-refresh-btn, .wcab-app-root .wcab-refresh-btn{
  min-height: 44px;
  border-radius: 12px;
  padding: 10px 18px;
  font-weight: 800;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--wcab-surface-soft);
  color: var(--wcab-staff-btn) !important;
  border: 1.5px solid var(--wcab-staff-btn);
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

.wcab-app-root.wcab-refresh-btn .wcab-btn-icon, .wcab-app-root .wcab-refresh-btn .wcab-btn-icon{
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.wcab-app-root.wcab-calendar-toggle-btn, .wcab-app-root .wcab-calendar-toggle-btn{
  min-width: 172px;
}

.wcab-app-root.wcab-refresh-btn:visited, .wcab-app-root .wcab-refresh-btn:visited{
  color: var(--wcab-staff-btn) !important;
}

.wcab-app-root.wcab-refresh-btn:hover, .wcab-app-root .wcab-refresh-btn:hover{
  background: var(--wcab-staff-btn);
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(79, 70, 229, 0.22);
}

.wcab-app-root.wcab-refresh-btn:focus-visible, .wcab-app-root .wcab-refresh-btn:focus-visible{
  background: var(--wcab-surface-soft);
  color: var(--wcab-staff-btn) !important;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.18);
}

.wcab-app-root.wcab-refresh-btn:active, .wcab-app-root .wcab-refresh-btn:active{
  transform: translateY(0) scale(0.98);
}

/* Once the mouse/finger leaves and the button is no longer focused, force it
   back to the default (non-hover) look, even if the browser/theme applies a
   lingering :focus or tap-highlight style. */
.wcab-app-root.wcab-refresh-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-refresh-btn:not(:hover):not(:focus-visible){
  background: var(--wcab-surface-soft);
  color: var(--wcab-staff-btn) !important;
  box-shadow: none;
}

.wcab-app-root.wcab-dashboard-actions, .wcab-app-root .wcab-dashboard-actions{
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.wcab-app-root.wcab-clear-btn, .wcab-app-root .wcab-clear-btn{
  background: #fef2f2;
  color: var(--wcab-error-fg) !important;
  border: 1px solid #fecdca;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

.wcab-app-root.wcab-clear-btn:visited, .wcab-app-root .wcab-clear-btn:visited{
  color: var(--wcab-error-fg) !important;
}

.wcab-app-root.wcab-clear-btn:hover, .wcab-app-root .wcab-clear-btn:hover{
  background: #fee4e2;
}

.wcab-app-root.wcab-clear-btn:focus-visible, .wcab-app-root .wcab-clear-btn:focus-visible{
  box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.15);
}

.wcab-app-root.wcab-clear-btn:active, .wcab-app-root .wcab-clear-btn:active{
  transform: translateY(0) scale(0.98);
}

.wcab-app-root.wcab-dashboard-actions .wcab-clear-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-dashboard-actions .wcab-clear-btn:not(:hover):not(:focus-visible){
  background: #fef2f2;
}

.wcab-app-root.wcab-table-wrap, .wcab-app-root .wcab-table-wrap{
  width: 100%;
  overflow-x: auto;
  border-radius: var(--wcab-radius-sm);
}

.wcab-app-root.wcab-status-badge, .wcab-app-root .wcab-status-badge{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 6px 12px 6px 10px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: var(--wcab-primary-light);
  color: var(--wcab-primary-dark);
  border: 1px solid rgba(16, 22, 47, 0.05);
  box-shadow: 0 1px 2px rgba(16, 22, 47, 0.04);
}

.wcab-app-root.wcab-status-badge::before, .wcab-app-root .wcab-status-badge::before{
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}

.wcab-app-root.wcab-status-pending, .wcab-app-root .wcab-status-pending{ background: var(--wcab-status-pending-bg, #eef0ff); color: var(--wcab-status-pending-fg, #4338ca); }
.wcab-app-root.wcab-status-approved, .wcab-app-root .wcab-status-approved{ background: var(--wcab-status-approved-bg, #ecfdf5); color: var(--wcab-status-approved-fg, #067647); }
.wcab-app-root.wcab-status-cancelled, .wcab-app-root .wcab-status-cancelled{ background: var(--wcab-status-cancelled-bg, #fef2f2); color: var(--wcab-status-cancelled-fg, #b42318); }
.wcab-app-root.wcab-status-postponed, .wcab-app-root .wcab-status-postponed{ background: var(--wcab-status-postponed-bg, #fff7ed); color: var(--wcab-status-postponed-fg, #c2410c); }
.wcab-app-root.wcab-status-pending_payment, .wcab-app-root .wcab-status-pending_payment{ background: var(--wcab-status-pending_payment-bg, #fffbeb); color: var(--wcab-status-pending_payment-fg, #b45309); }
.wcab-app-root.wcab-status-rescheduled, .wcab-app-root .wcab-status-rescheduled{ background: var(--wcab-status-rescheduled-bg, #ecfeff); color: var(--wcab-status-rescheduled-fg, #0e7490); }

/* Item 8: slightly larger stat-card icon badges on desktop only (mobile keeps the compact size). */
@media (min-width: 901px) {
  .wcab-app-root.wcab-stat-icon, .wcab-app-root .wcab-stat-icon{
    width: 46px;
    height: 46px;
    border-radius: 13px;
  }
  .wcab-app-root.wcab-stat-icon svg, .wcab-app-root .wcab-stat-icon svg{
    width: 23px;
    height: 23px;
  }
}

@media (max-width: 1300px) {
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{ grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 1100px) {
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{ grid-template-columns: repeat(3, 1fr); }
  .wcab-app-root.wcab-filter-field, .wcab-app-root .wcab-filter-field{ flex: 1 1 45%; min-width: 140px; }
}

@media (max-width: 650px) {
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-filter-field, .wcab-app-root .wcab-filter-field,
.wcab-app-root.wcab-filter-field-search, .wcab-app-root .wcab-filter-field-search{ flex: 1 1 100%; }
  .wcab-app-root.wcab-filter-actions, .wcab-app-root .wcab-filter-actions{ width: 100%; margin-left: 0; }
  .wcab-app-root.wcab-filter-actions .wcab-filter-btn, .wcab-app-root .wcab-filter-actions .wcab-filter-btn,
.wcab-app-root.wcab-filter-actions .wcab-clear-btn, .wcab-app-root .wcab-filter-actions .wcab-clear-btn{ flex: 1 1 50%; }
  .wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel{ padding: 18px; }
  .wcab-app-root.wcab-dashboard-head, .wcab-app-root .wcab-dashboard-head{ flex-direction: column; }
  .wcab-app-root.wcab-dashboard-brand, .wcab-app-root .wcab-dashboard-brand{ margin-bottom: 12px; }
}

/* ---------- Plugin-only staff login ---------- */
.wcab-app-root.wcab-staff-login, .wcab-app-root .wcab-staff-login{
  max-width: 460px;
  margin: 50px auto;
}

.wcab-app-root.wcab-staff-login.wcab-dashboard-panel, .wcab-app-root .wcab-staff-login.wcab-dashboard-panel{
  text-align: left;
  box-shadow: var(--wcab-shadow-lg);
  border: 1px solid var(--wcab-border);
  position: relative;
  overflow: hidden;
}

.wcab-app-root.wcab-staff-login.wcab-dashboard-panel::before, .wcab-app-root .wcab-staff-login.wcab-dashboard-panel::before{
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, var(--wcab-primary), var(--wcab-accent));
}

.wcab-app-root.wcab-staff-login .wcab-dashboard-head, .wcab-app-root .wcab-staff-login .wcab-dashboard-head{
  border-bottom: none;
  padding-bottom: 6px;
  margin-bottom: 6px;
}

.wcab-app-root.wcab-staff-login h3, .wcab-app-root .wcab-staff-login h3{
  font-size: 22px;
  font-weight: 800;
}

.wcab-app-root.wcab-login-form label, .wcab-app-root .wcab-login-form label{
  display: block;
  font-weight: 700;
  font-size: 13px;
  color: #364058;
  margin: 14px 0 7px;
}

.wcab-app-root.wcab-login-form input, .wcab-app-root .wcab-login-form input{
  width: 100%;
  padding: 13px 14px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  background: var(--wcab-surface);
  font-size: 15px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-login-form input:focus, .wcab-app-root .wcab-login-form input:focus{
  outline: none;
  border-color: var(--wcab-primary);
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12);
}

/* ---------- Password show/hide ---------- */
.wcab-app-root.wcab-password-field, .wcab-app-root .wcab-password-field{
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.wcab-app-root.wcab-password-field input, .wcab-app-root .wcab-password-field input{
  flex: 1 1 auto;
}

.wcab-app-root.wcab-password-toggle, .wcab-app-root .wcab-password-toggle{
  min-width: 46px;
  cursor: pointer;
  border-radius: var(--wcab-radius-sm);
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-surface-soft);
  transition: background 0.15s ease;
}

.wcab-app-root.wcab-password-toggle:hover, .wcab-app-root .wcab-password-toggle:hover{
  background: var(--wcab-primary-light);
}

.wcab-app-root.wcab-admin-password-field input.regular-text, .wcab-app-root .wcab-admin-password-field input.regular-text,
.wcab-app-root.wcab-list-password-field input.regular-text, .wcab-app-root .wcab-list-password-field input.regular-text{
  max-width: 11ch;
  width: 11ch;
  min-width: 11ch;
}

.wcab-app-root.wcab-list-password-field, .wcab-app-root .wcab-list-password-field{
  min-width: 0;
  width: fit-content;
}

/* ---------- Frontend staff update action form ---------- */
.wcab-app-root.wcab-inline-action-form, .wcab-app-root .wcab-inline-action-form{
  min-width: 260px;
  display: grid;
  gap: 8px;
}

.wcab-app-root.wcab-inline-action-form select, .wcab-app-root .wcab-inline-action-form select,
.wcab-app-root.wcab-inline-action-form textarea, .wcab-app-root .wcab-inline-action-form textarea,
.wcab-app-root.wcab-inline-action-form input, .wcab-app-root .wcab-inline-action-form input{
  width: 100%;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  padding: 9px 10px;
  box-sizing: border-box;
  background: var(--wcab-surface);
  font-size: 14px;
  transition: border-color 0.15s ease;
}

.wcab-app-root.wcab-inline-action-form select:focus, .wcab-app-root .wcab-inline-action-form select:focus,
.wcab-app-root.wcab-inline-action-form textarea:focus, .wcab-app-root .wcab-inline-action-form textarea:focus,
.wcab-app-root.wcab-inline-action-form input:focus, .wcab-app-root .wcab-inline-action-form input:focus{
  outline: none;
  border-color: var(--wcab-primary);
}

.wcab-app-root.wcab-inline-action-form textarea, .wcab-app-root .wcab-inline-action-form textarea{
  min-height: 58px;
  resize: vertical;
}

.wcab-app-root.wcab-zoom-field-group, .wcab-app-root .wcab-zoom-field-group{
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  padding: 0 10px;
  box-sizing: border-box;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-zoom-field-group:focus-within, .wcab-app-root .wcab-zoom-field-group:focus-within{
  border-color: var(--wcab-primary);
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12);
}

.wcab-app-root.wcab-zoom-field-group input, .wcab-app-root .wcab-zoom-field-group input{
  border: 0;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
  background: transparent;
}

.wcab-app-root.wcab-zoom-field-group input:focus, .wcab-app-root .wcab-zoom-field-group input:focus{
  border-color: transparent;
  box-shadow: none;
}

.wcab-app-root.wcab-inline-help, .wcab-app-root .wcab-inline-help{
  display: block;
  margin-top: -2px;
  color: var(--wcab-muted);
  font-size: 12px;
  line-height: 1.35;
}

.wcab-app-root.wcab-inline-date-time, .wcab-app-root .wcab-inline-date-time{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

@media (max-width: 650px) {
  .wcab-app-root.wcab-inline-date-time, .wcab-app-root .wcab-inline-date-time{ grid-template-columns: 1fr; }
}

.wcab-app-root.wcab-inline-label, .wcab-app-root .wcab-inline-label{
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--wcab-muted);
  margin: 6px 0 2px;
  display: block;
}

.wcab-app-root.wcab-delete-booking-form, .wcab-app-root .wcab-delete-booking-form{
  margin-top: 8px;
}

.wcab-app-root.wcab-delete-booking-form .wcab-clear-btn, .wcab-app-root .wcab-delete-booking-form .wcab-clear-btn{
  width: 100%;
  cursor: pointer;
}

/* ---------- Header actions + Check Booking Status toggle ---------- */
.wcab-app-root.wcab-header-actions, .wcab-app-root .wcab-header-actions{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}

.wcab-app-root.wcab-lookup-toggle-btn, .wcab-app-root .wcab-lookup-toggle-btn{
  background: none;
  border: none;
  color: var(--wcab-primary);
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
}

.wcab-app-root.wcab-lookup-panel, .wcab-app-root .wcab-lookup-panel{
  background: var(--wcab-surface-soft);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 20px;
  margin-bottom: 22px;
}

.wcab-app-root.wcab-lookup-panel h3, .wcab-app-root .wcab-lookup-panel h3{
  margin-top: 0;
}

.wcab-app-root.wcab-lookup-hint, .wcab-app-root .wcab-lookup-hint{
  color: var(--wcab-muted);
  font-size: 13px;
  margin-bottom: 14px;
}

.wcab-app-root.wcab-lookup-form-row, .wcab-app-root .wcab-lookup-form-row{
  display: grid;
  grid-template-columns: 1.2fr 1fr auto;
  gap: 10px;
}

@media (max-width: 700px) {
  .wcab-app-root.wcab-lookup-form-row, .wcab-app-root .wcab-lookup-form-row{ grid-template-columns: 1fr; }
}

.wcab-app-root.wcab-lookup-form-row input, .wcab-app-root .wcab-lookup-form-row input{
  padding: 11px 13px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  font-size: 14px;
}

.wcab-app-root.wcab-lookup-result, .wcab-app-root .wcab-lookup-result{
  margin-top: 16px;
}

.wcab-app-root.wcab-lookup-card, .wcab-app-root .wcab-lookup-card{
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  padding: 16px;
}

.wcab-app-root.wcab-lookup-status-row, .wcab-app-root .wcab-lookup-status-row{
  margin-bottom: 12px;
}

.wcab-app-root.wcab-lookup-reason, .wcab-app-root .wcab-lookup-reason{
  font-size: 13px;
  color: var(--wcab-ink);
  margin: 10px 0 0;
}

/* ---------- Sortable table headers ---------- */
.wcab-app-root.wcab-sort-link, .wcab-app-root .wcab-sort-link{
  color: inherit;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}

.wcab-app-root.wcab-sort-link:hover, .wcab-app-root .wcab-sort-link:hover{
  color: var(--wcab-primary);
}

/* ---------- Logged-in staff identity header ---------- */
.wcab-app-root.wcab-dashboard-head-identity, .wcab-app-root .wcab-dashboard-head-identity{
  display: flex;
  align-items: center;
  gap: 14px;
}

.wcab-app-root.wcab-current-staff-avatar, .wcab-app-root .wcab-current-staff-avatar{
  width: 54px;
  height: 54px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: linear-gradient(135deg, var(--wcab-primary), #6d5bf7);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 800;
  font-size: 18px;
}

.wcab-app-root.wcab-current-staff-avatar img, .wcab-app-root .wcab-current-staff-avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ---------- One-page mini calendar (staff dashboard) ---------- */
.wcab-app-root.wcab-mini-calendar-wrap, .wcab-app-root .wcab-mini-calendar-wrap{
  background: var(--wcab-surface);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 16px;
  margin-bottom: 20px;
}

.wcab-app-root.wcab-cal-day-badge, .wcab-app-root .wcab-cal-day-badge{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin: 2px auto;
  border-radius: 50%;
  background: var(--wcab-cal-badge-bg, #4f46e5);
  color: var(--wcab-cal-badge-text, #ffffff);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: transform 0.15s ease;
}

.wcab-app-root.wcab-cal-day-badge:hover, .wcab-app-root .wcab-cal-day-badge:hover{
  transform: scale(1.1);
}

/* ---------- Google Calendar quick-add link on approved rows ---------- */
.wcab-app-root.wcab-gcal-link, .wcab-app-root .wcab-gcal-link{
  display: inline-block;
  margin-top: 4px;
  font-size: 11px;
  font-weight: 700;
  color: #1a73e8;
  text-decoration: none;
}

.wcab-app-root.wcab-gcal-link:hover, .wcab-app-root .wcab-gcal-link:hover{
  text-decoration: underline;
}

/* ---------- Live service duration/price info ---------- */
.wcab-app-root.wcab-service-info, .wcab-app-root .wcab-service-info{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin: 8px 0 16px;
  font-size: 13px;
  font-weight: 700;
}

.wcab-app-root.wcab-service-info-duration, .wcab-app-root .wcab-service-info-duration{
  color: var(--wcab-muted);
}

.wcab-app-root.wcab-service-info-price, .wcab-app-root .wcab-service-info-price{
  color: var(--wcab-primary-dark);
  background: var(--wcab-primary-light);
  padding: 3px 10px;
  border-radius: 999px;
}

.wcab-app-root.wcab-service-info-price.wcab-service-info-free, .wcab-app-root .wcab-service-info-price.wcab-service-info-free{
  color: #067647;
  background: #ecfdf5;
}

.wcab-app-root.wcab-free-badge, .wcab-app-root .wcab-free-badge{
  color: #067647;
  background: #ecfdf5;
  padding: 2px 8px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
}

/* ---------- Booking v1.6.1: combined date/slot step + live summary ---------- */
.wcab-app-root{
  --wcab-cal-today-text: #ffffff;
}

.wcab-app-root.wcab-booking-layout, .wcab-app-root .wcab-booking-layout{
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 22px;
  align-items: start;
}

.wcab-app-root.wcab-booking-main, .wcab-app-root .wcab-booking-main{
  min-width: 0;
}

.wcab-app-root.wcab-selection-summary, .wcab-app-root .wcab-selection-summary{
  position: sticky;
  top: 24px;
}

.wcab-app-root.wcab-summary-card, .wcab-app-root .wcab-summary-card{
  background: linear-gradient(180deg, #ffffff 0%, #f8f9ff 100%);
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 18px;
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-summary-kicker, .wcab-app-root .wcab-summary-kicker{
  display: inline-block;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--wcab-primary);
  margin-bottom: 6px;
}

.wcab-app-root.wcab-summary-card h3, .wcab-app-root .wcab-summary-card h3{
  margin: 0 0 14px;
  font-size: 18px;
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-summary-list, .wcab-app-root .wcab-summary-list{
  display: grid;
  gap: 10px;
}

.wcab-app-root.wcab-summary-list div, .wcab-app-root .wcab-summary-list div{
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--wcab-surface);
  border: 1px solid rgba(230, 233, 244, 0.8);
}

.wcab-app-root.wcab-summary-list span, .wcab-app-root .wcab-summary-list span{
  font-size: 11px;
  color: var(--wcab-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 800;
}

.wcab-app-root.wcab-summary-list strong, .wcab-app-root .wcab-summary-list strong{
  font-size: 14px;
  color: var(--wcab-ink);
  word-break: break-word;
}

.wcab-app-root.wcab-calendar-slot-grid, .wcab-app-root .wcab-calendar-slot-grid{
  display: grid;
  grid-template-columns: minmax(280px, 1.05fr) minmax(260px, 0.95fr);
  gap: 18px;
  align-items: start;
}

.wcab-app-root.wcab-calendar-area, .wcab-app-root .wcab-calendar-area,
.wcab-app-root.wcab-slot-area, .wcab-app-root .wcab-slot-area,
.wcab-app-root.wcab-payment-card, .wcab-app-root .wcab-payment-card{
  background: #fff;
  border: 1px solid var(--wcab-border);
  border-radius: var(--wcab-radius-md);
  padding: 16px;
  box-shadow: var(--wcab-shadow-sm);
}

.wcab-app-root.wcab-working-info-box, .wcab-app-root .wcab-working-info-box{
  margin-bottom: 18px;
}

.wcab-app-root.wcab-calendar .fc-col-header, .wcab-app-root .wcab-calendar .fc-col-header,
.wcab-app-root.wcab-calendar .fc-scrollgrid-sync-table, .wcab-app-root .wcab-calendar .fc-scrollgrid-sync-table,
.wcab-app-root.wcab-calendar .fc-daygrid-body, .wcab-app-root .wcab-calendar .fc-daygrid-body,
.wcab-app-root.wcab-calendar .fc-daygrid-body table, .wcab-app-root .wcab-calendar .fc-daygrid-body table{
  width: 100% !important;
}

.wcab-app-root.wcab-calendar .fc-col-header, .wcab-app-root .wcab-calendar .fc-col-header{
  display: table !important;
  table-layout: fixed !important;
}

.wcab-app-root.wcab-calendar .fc-col-header-cell-cushion, .wcab-app-root .wcab-calendar .fc-col-header-cell-cushion{
  display: block;
  min-height: 18px;
}

.wcab-app-root.wcab-calendar .fc-day-today .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc-day-today .fc-daygrid-day-number,
.wcab-app-root.wcab-calendar .wcab-fc-today .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .wcab-fc-today .fc-daygrid-day-number{
  background: var(--wcab-cal-today) !important;
  color: var(--wcab-cal-today-text) !important;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.18);
}

.wcab-app-root.wcab-location-icon img, .wcab-app-root .wcab-location-icon img{
  width: 19px;
  height: 19px;
  display: block;
}

.wcab-app-root.wcab-location-option, .wcab-app-root .wcab-location-option{
  position: relative;
}

.wcab-app-root.wcab-location-radio-dot, .wcab-app-root .wcab-location-radio-dot{
  width: 18px;
  height: 18px;
  border: 2px solid var(--wcab-border);
  border-radius: 50%;
  flex: 0 0 auto;
  margin-top: 2px;
  box-shadow: inset 0 0 0 4px #fff;
}

.wcab-app-root.wcab-location-option .wcab-location-radio, .wcab-app-root .wcab-location-option .wcab-location-radio{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.wcab-app-root.wcab-location-option.wcab-location-selected .wcab-location-radio-dot, .wcab-app-root .wcab-location-option.wcab-location-selected .wcab-location-radio-dot,
.wcab-app-root.wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot, .wcab-app-root .wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot{
  border-color: var(--wcab-primary);
  background: var(--wcab-primary);
}

.wcab-app-root.wcab-payment-service-summary, .wcab-app-root .wcab-payment-service-summary{
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}

.wcab-app-root.wcab-payment-total-row, .wcab-app-root .wcab-payment-total-row{
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px;
  border: 1px solid var(--wcab-border);
  border-radius: 12px;
  background: var(--wcab-surface-soft);
  font-size: 14px;
}

.wcab-app-root.wcab-payment-total-row span, .wcab-app-root .wcab-payment-total-row span{
  color: var(--wcab-muted);
  font-weight: 700;
}

.wcab-app-root.wcab-payment-total-row strong, .wcab-app-root .wcab-payment-total-row strong{
  color: var(--wcab-ink);
  text-align: right;
}

.wcab-app-root.wcab-payment-discount strong, .wcab-app-root .wcab-payment-discount strong{
  color: var(--wcab-success-fg);
}

.wcab-app-root.wcab-payment-final, .wcab-app-root .wcab-payment-final{
  background: var(--wcab-primary-light);
  border-color: rgba(79, 70, 229, 0.22);
}

.wcab-app-root.wcab-payment-final strong, .wcab-app-root .wcab-payment-final strong{
  color: var(--wcab-primary-dark);
  font-size: 16px;
}

.wcab-app-root.wcab-coupon-row, .wcab-app-root .wcab-coupon-row{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
}

.wcab-app-root.wcab-coupon-message, .wcab-app-root .wcab-coupon-message{
  margin: 10px 0 14px;
}

.wcab-app-root.wcab-payment-methods, .wcab-app-root .wcab-payment-methods{
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

.wcab-app-root.wcab-payment-method, .wcab-app-root .wcab-payment-method{
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 13px 14px;
  border: 1.5px solid var(--wcab-border);
  border-radius: var(--wcab-radius-sm);
  background: #fff;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.wcab-app-root.wcab-payment-method:hover, .wcab-app-root .wcab-payment-method:hover{
  border-color: var(--wcab-primary);
  background: var(--wcab-surface-soft);
  transform: translateY(-1px);
}

.wcab-app-root.wcab-payment-method input, .wcab-app-root .wcab-payment-method input{
  width: auto;
  margin-top: 3px;
  accent-color: var(--wcab-primary);
}

.wcab-app-root.wcab-payment-method span, .wcab-app-root .wcab-payment-method span{
  display: grid;
  gap: 2px;
}

.wcab-app-root.wcab-payment-method strong, .wcab-app-root .wcab-payment-method strong{
  color: var(--wcab-ink);
  font-size: 14px;
}

.wcab-app-root.wcab-payment-method small, .wcab-app-root .wcab-payment-method small{
  color: var(--wcab-muted);
  font-size: 12px;
}

.wcab-app-root.wcab-payment-note, .wcab-app-root .wcab-payment-note,
.wcab-app-root.wcab-free-payment-box, .wcab-app-root .wcab-free-payment-box{
  margin-top: 14px;
  padding: 13px 14px;
  border-radius: var(--wcab-radius-sm);
  border: 1px solid #d9defd;
  background: var(--wcab-primary-light);
  color: var(--wcab-primary-dark);
  font-size: 14px;
  line-height: 1.55;
}

.wcab-app-root.wcab-free-payment-box, .wcab-app-root .wcab-free-payment-box{
  border-color: rgba(6, 118, 71, 0.18);
  background: var(--wcab-success-bg);
  color: var(--wcab-success-fg);
  font-weight: 800;
}

.wcab-app-root.wcab-login-form .wcab-submit, .wcab-app-root .wcab-login-form .wcab-submit{
  display: block;
  margin: 26px auto 0;
  min-width: 220px;
  text-align: center;
}

@media (max-width: 980px) {
  .wcab-app-root.wcab-booking-layout, .wcab-app-root .wcab-booking-layout,
.wcab-app-root.wcab-calendar-slot-grid, .wcab-app-root .wcab-calendar-slot-grid{
    grid-template-columns: 1fr;
  }
  .wcab-app-root.wcab-selection-summary, .wcab-app-root .wcab-selection-summary{
    position: static;
  }
}

@media (max-width: 560px) {
  .wcab-app-root.wcab-coupon-row, .wcab-app-root .wcab-coupon-row{
    grid-template-columns: 1fr;
  }
  .wcab-app-root.wcab-wizard-step-dot label, .wcab-app-root .wcab-wizard-step-dot label{
    font-size: 10px;
  }
}

/* ---------- Booking v1.6.2: compact location, Calendly-style summary, admin previews ---------- */
.wcab-app-root.wcab-location-compact, .wcab-app-root .wcab-location-compact{
  gap: 12px;
  margin-top: 8px;
}

.wcab-app-root.wcab-location-compact .wcab-location-option, .wcab-app-root .wcab-location-compact .wcab-location-option,
.wcab-app-root.wcab-location-compact .wcab-location-option-custom-row, .wcab-app-root .wcab-location-compact .wcab-location-option-custom-row{
  display: flex;
  align-items: center;
  gap: 12px;
}

.wcab-app-root.wcab-location-compact .wcab-location-option, .wcab-app-root .wcab-location-compact .wcab-location-option{
  border: 0 !important;
  background: transparent !important;
  padding: 0;
  box-shadow: none;
  border-radius: 0;
}

.wcab-app-root.wcab-location-compact .wcab-location-option:hover, .wcab-app-root .wcab-location-compact .wcab-location-option:hover,
.wcab-app-root.wcab-location-compact .wcab-location-option.wcab-location-selected, .wcab-app-root .wcab-location-compact .wcab-location-option.wcab-location-selected,
.wcab-app-root.wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked), .wcab-app-root .wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked){
  background: transparent !important;
  border-color: transparent !important;
}

.wcab-app-root.wcab-location-compact .wcab-location-content, .wcab-app-root .wcab-location-compact .wcab-location-content{
  display: block;
  min-width: 0;
}

.wcab-app-root.wcab-location-compact .wcab-location-label, .wcab-app-root .wcab-location-compact .wcab-location-label{
  color: var(--wcab-ink);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.35;
}

.wcab-app-root.wcab-location-compact .wcab-location-icon, .wcab-app-root .wcab-location-compact .wcab-location-icon{
  width: 28px;
  height: 28px;
  margin: 0;
}

.wcab-app-root.wcab-location-compact .wcab-location-icon-zoom, .wcab-app-root .wcab-location-compact .wcab-location-icon-zoom{
  border-radius: 50%;
  background: #5b8df8;
}

.wcab-app-root.wcab-location-compact .wcab-location-icon-custom, .wcab-app-root .wcab-location-compact .wcab-location-icon-custom{
  border-radius: 6px;
  background: #0b3a77;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
}

.wcab-app-root.wcab-location-compact .wcab-location-radio-dot, .wcab-app-root .wcab-location-compact .wcab-location-radio-dot{
  width: 22px;
  height: 22px;
  border: 1.5px solid #c8dcfb;
  border-radius: 999px;
  margin: 0;
  background: #fff;
  box-shadow: none;
  position: relative;
}

.wcab-app-root.wcab-location-compact .wcab-location-radio-dot::after, .wcab-app-root .wcab-location-compact .wcab-location-radio-dot::after{
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: inherit;
  background: var(--wcab-primary);
  transform: scale(0);
  transition: transform 0.15s ease;
}

.wcab-app-root.wcab-location-compact .wcab-location-option.wcab-location-selected .wcab-location-radio-dot, .wcab-app-root .wcab-location-compact .wcab-location-option.wcab-location-selected .wcab-location-radio-dot,
.wcab-app-root.wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot, .wcab-app-root .wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot{
  border-color: #b9d5ff;
  background: #fff;
  box-shadow: none;
}

.wcab-app-root.wcab-location-compact .wcab-location-option.wcab-location-selected .wcab-location-radio-dot::after, .wcab-app-root .wcab-location-compact .wcab-location-option.wcab-location-selected .wcab-location-radio-dot::after,
.wcab-app-root.wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot::after, .wcab-app-root .wcab-location-compact .wcab-location-option:has(.wcab-location-radio:checked) .wcab-location-radio-dot::after{
  transform: scale(1);
}

.wcab-app-root.wcab-location-compact .wcab-location-option-custom, .wcab-app-root .wcab-location-compact .wcab-location-option-custom{
  gap: 10px;
}

.wcab-app-root.wcab-location-compact .wcab-location-custom-input, .wcab-app-root .wcab-location-compact .wcab-location-custom-input{
  width: min(100%, 340px);
  margin-left: 74px;
  min-height: 50px;
  border: 1.5px solid #9db7df;
  border-radius: 9px;
  padding: 0 16px;
  font-size: 15px;
  color: var(--wcab-ink);
  background: #fff;
  box-shadow: none;
}

.wcab-app-root.wcab-rich-summary-card, .wcab-app-root .wcab-rich-summary-card{
  background: #fff;
  border: 0;
  box-shadow: none;
  padding: 0 4px;
}

.wcab-app-root.wcab-summary-profile, .wcab-app-root .wcab-summary-profile{
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 16px;
  align-items: end;
  margin-bottom: 10px;
}

.wcab-app-root.wcab-summary-avatar, .wcab-app-root .wcab-summary-avatar{
  width: 72px;
  height: 72px;
  border-radius: 50%;
  overflow: hidden;
  background: linear-gradient(135deg, var(--wcab-primary), var(--wcab-accent));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 20px;
}

.wcab-app-root.wcab-summary-avatar img, .wcab-app-root .wcab-summary-avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wcab-app-root.wcab-rich-summary-card .wcab-summary-kicker, .wcab-app-root .wcab-rich-summary-card .wcab-summary-kicker{
  margin: 0 0 4px;
  letter-spacing: normal;
  text-transform: none;
  color: #727272;
  font-size: 16px;
  font-weight: 800;
}

.wcab-app-root.wcab-rich-summary-card [data-summary="employee"], .wcab-app-root .wcab-rich-summary-card [data-summary="employee"]{
  display: block;
  color: #727272;
  font-size: 15px;
  font-weight: 800;
  text-transform: none;
  letter-spacing: 0;
}

.wcab-app-root.wcab-rich-summary-card h3, .wcab-app-root .wcab-rich-summary-card h3{
  margin: 12px 0 24px;
  color: #092343;
  font-size: clamp(28px, 3vw, 36px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  font-weight: 900;
}

.wcab-app-root.wcab-rich-summary-list, .wcab-app-root .wcab-rich-summary-list{
  display: grid;
  gap: 18px;
}

.wcab-app-root.wcab-rich-summary-item, .wcab-app-root .wcab-rich-summary-item{
  display: grid;
  grid-template-columns: 26px 1fr;
  gap: 8px;
  align-items: start;
  color: #092343;
  font-size: 15px;
  line-height: 1.35;
}

.wcab-app-root.wcab-rich-summary-item strong, .wcab-app-root .wcab-rich-summary-item strong{
  color: #092343;
  font-size: 15px;
  font-weight: 900;
}

.wcab-app-root.wcab-rich-icon, .wcab-app-root .wcab-rich-icon{
  width: 28px;
  height: 28px;
  border: 1.5px solid rgba(9, 35, 67, 0.16);
  color: #092343;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #ffffff 0%, #f4f8ff 100%);
  box-shadow: 0 8px 20px rgba(9, 35, 67, 0.08);
  line-height: 1;
}

.wcab-app-root.wcab-rich-icon svg, .wcab-app-root .wcab-rich-icon svg{
  width: 17px;
  height: 17px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.wcab-app-root.wcab-rich-icon-calendar, .wcab-app-root .wcab-rich-icon-calendar,
.wcab-app-root.wcab-rich-icon-payment, .wcab-app-root .wcab-rich-icon-payment{
  border-radius: 8px;
}

.wcab-app-root.wcab-step3-legal-notice, .wcab-app-root .wcab-step3-legal-notice{
  margin: 18px 0 0;
}

.wcab-app-root.wcab-settings-live-preview, .wcab-app-root .wcab-settings-live-preview{
  --wcab-primary: #4f46e5;
  --wcab-primary-dark: #3730a3;
  --wcab-button-text: #ffffff;
  --wcab-heading-color: #10162f;
  --wcab-heading-weight: 800;
  --wcab-cal-available: #eef0f3;
  --wcab-cal-available-text: #334155;
  --wcab-cal-selected: #12b886;
  --wcab-cal-today: #4f46e5;
  --wcab-cal-today-text: #ffffff;
  --wcab-slot-available: #4ade80;
  --wcab-slot-selected: #f5a623;
  --wcab-slot-booked: #f15757;
  --wcab-slot-lunch: #9aa2b1;
  --wcab-btn-primary-border-color: transparent;
  --wcab-btn-primary-border-width: 0px;
  --wcab-btn-primary-radius: 10px;
  --wcab-btn-primary-pad-y: 12px;
  --wcab-btn-primary-pad-x: 26px;
  --wcab-btn-primary-shadow-color: rgba(79, 70, 229, 0.25);
  --wcab-btn-primary-shadow-x: 0px;
  --wcab-btn-primary-shadow-y: 8px;
  --wcab-btn-primary-shadow-blur: 18px;
  --wcab-btn-primary-hover-shadow-color: rgba(79, 70, 229, 0.35);
  --wcab-btn-primary-hover-shadow-y: 16px;
  --wcab-btn-primary-hover-shadow-blur: 30px;
  --wcab-btn-secondary-bg: #f7f8fd;
  --wcab-btn-secondary-hover-bg: #eef0ff;
  --wcab-btn-secondary-text: #10162f;
  --wcab-btn-secondary-border-color: #e6e9f4;
  --wcab-btn-secondary-border-width: 1.5px;
  --wcab-btn-secondary-radius: 10px;
  --wcab-btn-secondary-pad-y: 12px;
  --wcab-btn-secondary-pad-x: 18px;
  --wcab-btn-secondary-shadow-color: transparent;
  --wcab-btn-secondary-shadow-x: 0px;
  --wcab-btn-secondary-shadow-y: 0px;
  --wcab-btn-secondary-shadow-blur: 0px;
  --wcab-btn-whatsapp-bg-start: #25d366;
  --wcab-btn-whatsapp-bg-end: #12b76a;
  --wcab-btn-whatsapp-text: #ffffff;
  --wcab-btn-whatsapp-border-color: transparent;
  --wcab-btn-whatsapp-border-width: 0px;
  --wcab-btn-whatsapp-radius: 10px;
  --wcab-btn-whatsapp-pad-y: 11px;
  --wcab-btn-whatsapp-pad-x: 16px;
  --wcab-btn-whatsapp-shadow-color: rgba(18, 183, 106, 0.3);
  --wcab-btn-whatsapp-shadow-x: 0px;
  --wcab-btn-whatsapp-shadow-y: 10px;
  --wcab-btn-whatsapp-shadow-blur: 20px;
  --wcab-btn-print-bg: #f7f8fd;
  --wcab-btn-print-hover-bg: #eef0ff;
  --wcab-btn-print-text: #10162f;
  --wcab-btn-print-border-color: #e6e9f4;
  --wcab-btn-print-hover-border-color: #4f46e5;
  --wcab-btn-print-border-width: 1.5px;
  --wcab-btn-print-radius: 10px;
  --wcab-btn-print-pad-y: 11px;
  --wcab-btn-print-pad-x: 16px;
  --wcab-body-font-size: 14px;
  max-width: 720px;
}

.wcab-app-root.wcab-preview-shell, .wcab-app-root .wcab-preview-shell{
  background: linear-gradient(180deg, #fff 0%, #f8f9ff 100%);
  border: 1px solid var(--wcab-border);
  border-radius: 18px;
  padding: 22px;
  box-shadow: var(--wcab-shadow-md);
}

.wcab-app-root.wcab-preview-shell h3, .wcab-app-root .wcab-preview-shell h3{
  color: var(--wcab-heading-color);
  font-weight: var(--wcab-heading-weight);
  margin: 6px 0 8px;
  font-size: 25px;
}

.wcab-app-root.wcab-preview-kicker, .wcab-app-root .wcab-preview-kicker{
  color: var(--wcab-primary);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 900;
}

.wcab-app-root.wcab-preview-muted, .wcab-app-root .wcab-preview-muted{
  color: var(--wcab-muted);
  margin: 0 0 16px;
}

.wcab-app-root.wcab-preview-actions, .wcab-app-root .wcab-preview-actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.wcab-app-root.wcab-preview-button, .wcab-app-root .wcab-preview-button{
  border: 0;
  border-radius: 10px;
  padding: 12px 22px;
  background: linear-gradient(135deg, var(--wcab-primary), var(--wcab-primary-dark));
  color: var(--wcab-button-text);
  font-weight: 900;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-preview-button:hover, .wcab-app-root .wcab-preview-button:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(79, 70, 229, 0.26);
}

.wcab-app-root.wcab-preview-button-secondary, .wcab-app-root .wcab-preview-button-secondary{
  background: #fff;
  color: var(--wcab-primary);
  border: 1px solid var(--wcab-primary);
}

.wcab-app-root.wcab-preview-calendar, .wcab-app-root .wcab-preview-calendar{
  display: inline-grid;
  grid-template-columns: repeat(7, 38px);
  gap: 8px;
  align-items: center;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--wcab-border);
  border-radius: 16px;
}

.wcab-app-root.wcab-preview-calendar span, .wcab-app-root .wcab-preview-calendar span{
  text-align: center;
  font-size: 11px;
  color: var(--wcab-muted);
  font-weight: 800;
}

.wcab-app-root.wcab-preview-day, .wcab-app-root .wcab-preview-day{
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--wcab-cal-available);
  color: var(--wcab-cal-available-text);
  font-weight: 900;
}

.wcab-app-root.wcab-preview-day-today, .wcab-app-root .wcab-preview-day-today{
  background: var(--wcab-cal-today);
  color: var(--wcab-cal-today-text);
}

.wcab-app-root.wcab-preview-day-selected, .wcab-app-root .wcab-preview-day-selected{
  background: var(--wcab-cal-selected);
  color: #fff;
}

.wcab-app-root.wcab-preview-slots, .wcab-app-root .wcab-preview-slots{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.wcab-app-root.wcab-preview-slot, .wcab-app-root .wcab-preview-slot{
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 900;
  background: #fff;
  border: 1.5px solid currentColor;
}

.wcab-app-root.wcab-preview-slot-available, .wcab-app-root .wcab-preview-slot-available{ color: var(--wcab-slot-available); }
.wcab-app-root.wcab-preview-slot-selected, .wcab-app-root .wcab-preview-slot-selected{ background: var(--wcab-slot-selected); border-color: var(--wcab-slot-selected); color: #fff; }
.wcab-app-root.wcab-preview-slot-booked, .wcab-app-root .wcab-preview-slot-booked{ color: var(--wcab-slot-booked); background: color-mix(in srgb, var(--wcab-slot-booked) 14%, #fff); }
.wcab-app-root.wcab-preview-slot-lunch, .wcab-app-root .wcab-preview-slot-lunch{ color: var(--wcab-slot-lunch); background: color-mix(in srgb, var(--wcab-slot-lunch) 16%, #fff); }

@media (max-width: 560px) {
  .wcab-app-root.wcab-location-compact .wcab-location-custom-input, .wcab-app-root .wcab-location-compact .wcab-location-custom-input{
    margin-left: 0;
    width: 100%;
  }
  .wcab-app-root.wcab-summary-profile, .wcab-app-root .wcab-summary-profile{
    grid-template-columns: 56px 1fr;
  }
  .wcab-app-root.wcab-summary-avatar, .wcab-app-root .wcab-summary-avatar{
    width: 56px;
    height: 56px;
  }
}

/* ---------- Booking v1.6.3 updates: progressive summary + modal WhatsApp + calendar counts ---------- */
.wcab-app-root.wcab-modal-actions > .wcab-whatsapp, .wcab-app-root .wcab-modal-actions > .wcab-whatsapp,
.wcab-app-root.wcab-modal-actions > .wcab-modal-whatsapp-btn, .wcab-app-root .wcab-modal-actions > .wcab-modal-whatsapp-btn{
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  margin-top: 0;
}

.wcab-app-root.wcab-rich-summary-card[data-summary-card], .wcab-app-root .wcab-rich-summary-card[data-summary-card]{
  min-height: 0;
}

.wcab-app-root.wcab-mini-calendar .fc-daygrid-event, .wcab-app-root .wcab-mini-calendar .fc-daygrid-event{
  border: 0 !important;
  background: transparent !important;
}

/* Item 1: day appointments popup, grouped by staff member */
.wcab-app-root.wcab-day-appts-modal, .wcab-app-root .wcab-day-appts-modal{
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(16, 22, 47, 0.5);
  z-index: 100000;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.wcab-app-root.wcab-day-appts-modal-inner, .wcab-app-root .wcab-day-appts-modal-inner{
  background: #fff;
  border-radius: var(--wcab-radius-md);
  max-width: 560px;
  width: 100%;
  max-height: 80vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: var(--wcab-shadow-lg);
}

.wcab-app-root.wcab-day-appts-modal-head, .wcab-app-root .wcab-day-appts-modal-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px;
  border-bottom: 1px solid var(--wcab-border);
}

.wcab-app-root.wcab-day-appts-modal-head h3, .wcab-app-root .wcab-day-appts-modal-head h3{
  margin: 0;
  font-size: 18px;
  color: var(--wcab-heading-color);
}

.wcab-app-root.wcab-day-appts-modal-close, .wcab-app-root .wcab-day-appts-modal-close{
  background: none;
  border: none;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  color: var(--wcab-muted);
}

.wcab-app-root.wcab-day-appts-modal-body, .wcab-app-root .wcab-day-appts-modal-body{
  padding: 18px 22px 22px;
  overflow-y: auto;
}

.wcab-app-root.wcab-day-appts-staff-group + .wcab-day-appts-staff-group, .wcab-app-root .wcab-day-appts-staff-group + .wcab-day-appts-staff-group{
  margin-top: 18px;
}

.wcab-app-root.wcab-day-appts-staff-group h4, .wcab-app-root .wcab-day-appts-staff-group h4{
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 900;
  color: var(--wcab-primary-dark);
  padding-bottom: 6px;
  border-bottom: 2px solid var(--wcab-primary-light);
}

.wcab-app-root.wcab-day-appts-staff-group ul, .wcab-app-root .wcab-day-appts-staff-group ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

.wcab-app-root.wcab-day-appts-staff-group li, .wcab-app-root .wcab-day-appts-staff-group li{
  padding: 8px 0;
  border-bottom: 1px dashed var(--wcab-border);
  font-size: 13.5px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-day-appts-staff-group li:last-child, .wcab-app-root .wcab-day-appts-staff-group li:last-child{
  border-bottom: none;
}

/* ---------- Item 5/1: unread-messages notification bell ---------- */
.wcab-app-root.wcab-notify-bell, .wcab-app-root .wcab-notify-bell{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(var(--wcab-notify-icon-size, 22px) + 22px);
  height: calc(var(--wcab-notify-icon-size, 22px) + 22px);
  border-radius: 50%;
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-notify-bg, var(--wcab-surface));
  color: var(--wcab-notify-icon-color, #4f46e5);
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wcab-app-root.wcab-notify-bell:hover, .wcab-app-root .wcab-notify-bell:hover{
  background: var(--wcab-notify-hover-bg, #fef2f2);
  border-color: var(--wcab-notify-hover-border, #fca5a5);
  color: var(--wcab-notify-hover-color, #ef4444);
}

.wcab-app-root.wcab-notify-bell svg, .wcab-app-root .wcab-notify-bell svg{
  width: var(--wcab-notify-icon-size, 22px);
  height: var(--wcab-notify-icon-size, 22px);
  flex-shrink: 0;
}

.wcab-app-root.wcab-notify-bell.wcab-notify-active, .wcab-app-root .wcab-notify-bell.wcab-notify-active{
  background: var(--wcab-notify-hover-bg, #fef2f2);
  border-color: var(--wcab-notify-hover-border, #fca5a5);
  color: var(--wcab-notify-hover-color, #ef4444);
}

.wcab-app-root.wcab-notify-bell.wcab-notify-pulse svg, .wcab-app-root .wcab-notify-bell.wcab-notify-pulse svg{
  animation: wcabBellRing 0.6s ease;
}

@keyframes wcabBellRing {
  0%, 100%{ transform: rotate(0); }
  20%{ transform: rotate(-14deg); }
  40%{ transform: rotate(12deg); }
  60%{ transform: rotate(-8deg); }
  80%{ transform: rotate(6deg); }
}

.wcab-app-root.wcab-notify-count, .wcab-app-root .wcab-notify-count{
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 999px;
  background: var(--wcab-notify-badge-bg, #ef4444);
  color: var(--wcab-notify-badge-text, #ffffff);
  font-size: 11px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* ---------- Item 6: unread appointment row/dot styling ---------- */
.wcab-app-root.wcab-row-unread td:nth-child(2), .wcab-app-root .wcab-row-unread td:nth-child(2){
  font-weight: 800;
}

.wcab-app-root.wcab-unread-dot, .wcab-app-root .wcab-unread-dot{
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--wcab-notify-badge-bg, #ef4444);
  margin-right: 4px;
}

/* ---------- Item 8: bulk selection, star, labels ---------- */
.wcab-app-root.wcab-select-col, .wcab-app-root .wcab-select-col{
  width: 34px;
  text-align: center;
}

.wcab-app-root.wcab-star-btn, .wcab-app-root .wcab-star-btn{
  background: none;
  border: none;
  cursor: pointer;
  font-size: 15px;
  color: #d4d7e3;
  padding: 0 4px 0 0;
  vertical-align: middle;
}

.wcab-app-root.wcab-star-btn.wcab-starred, .wcab-app-root .wcab-star-btn.wcab-starred{
  color: #f5a623;
}

.wcab-app-root.wcab-label-chips, .wcab-app-root .wcab-label-chips{
  margin-top: 4px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
}

.wcab-app-root.wcab-label-chip, .wcab-app-root .wcab-label-chip{
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 800;
  color: #fff;
  background: var(--chip-color, #4f46e5);
}

.wcab-app-root.wcab-label-add-btn, .wcab-app-root .wcab-label-add-btn{
  background: none;
  border: 1px dashed var(--wcab-border);
  border-radius: 999px;
  font-size: 10.5px;
  padding: 1px 8px;
  cursor: pointer;
  color: var(--wcab-muted);
}

.wcab-app-root.wcab-label-picker, .wcab-app-root .wcab-label-picker{
  position: absolute;
  z-index: 500;
  background: #fff;
  border: 1px solid var(--wcab-border);
  border-radius: 10px;
  box-shadow: var(--wcab-shadow-md);
  padding: 6px;
  display: none;
}

.wcab-app-root.wcab-label-picker.wcab-open, .wcab-app-root .wcab-label-picker.wcab-open{
  display: block;
}

.wcab-app-root.wcab-label-picker button, .wcab-app-root .wcab-label-picker button{
  display: block;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  padding: 6px 10px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 700;
}

.wcab-app-root.wcab-label-picker button:hover, .wcab-app-root .wcab-label-picker button:hover{
  background: var(--wcab-surface-soft);
  color: var(--wcab-ink) !important;
}

.wcab-app-root.wcab-label-picker button::before, .wcab-app-root .wcab-label-picker button::before{
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--chip-color, #4f46e5);
  margin-right: 8px;
}

.wcab-app-root.wcab-bulk-toolbar, .wcab-app-root .wcab-bulk-toolbar{
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--wcab-primary-light);
  border: 1px solid var(--wcab-primary);
  border-radius: var(--wcab-radius-sm);
  padding: 10px 14px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}

.wcab-app-root.wcab-bulk-count, .wcab-app-root .wcab-bulk-count{
  font-weight: 800;
  color: var(--wcab-primary-dark);
  margin-right: 6px;
}

.wcab-app-root.wcab-bulk-btn, .wcab-app-root .wcab-bulk-btn{
  background: #fff;
  border: 1.5px solid var(--wcab-border);
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
}

.wcab-app-root.wcab-bulk-btn:hover, .wcab-app-root .wcab-bulk-btn:hover{
  border-color: var(--wcab-primary);
}

.wcab-app-root.wcab-bulk-btn-danger, .wcab-app-root .wcab-bulk-btn-danger{
  color: #b42318;
  border-color: #fecaca;
}

.wcab-app-root.wcab-bulk-label-wrap, .wcab-app-root .wcab-bulk-label-wrap{
  position: relative;
}

.wcab-app-root.wcab-bulk-label-menu, .wcab-app-root .wcab-bulk-label-menu{
  display: none;
  position: absolute;
  top: 110%;
  left: 0;
  background: #fff;
  border: 1px solid var(--wcab-border);
  border-radius: 10px;
  box-shadow: var(--wcab-shadow-md);
  padding: 6px;
  min-width: 160px;
  z-index: 500;
}

.wcab-app-root.wcab-bulk-label-menu.wcab-open, .wcab-app-root .wcab-bulk-label-menu.wcab-open{
  display: block;
}

.wcab-app-root.wcab-bulk-label-option, .wcab-app-root .wcab-bulk-label-option{
  display: block;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  padding: 6px 10px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 700;
}

.wcab-app-root.wcab-bulk-label-option:hover, .wcab-app-root .wcab-bulk-label-option:hover{
  background: var(--wcab-surface-soft);
  color: var(--wcab-ink) !important;
}

.wcab-app-root.wcab-bulk-label-option::before, .wcab-app-root .wcab-bulk-label-option::before{
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--chip-color, #4f46e5);
  margin-right: 8px;
}

/* ---------- Item 1/9: staff filter dropdown — same box styling as the
   other filter fields (e.g. Label), full width of its field, with photo +
   name + designation rows in the menu (matching the booking-page employee
   picker) and a scrollbar once there are many staff. ---------- */
.wcab-app-root.wcab-staff-filter-field, .wcab-app-root .wcab-staff-filter-field{
  position: relative;
}

.wcab-app-root.wcab-staff-filter-dropdown, .wcab-app-root .wcab-staff-filter-dropdown{
  position: relative;
}

.wcab-app-root.wcab-staff-filter-toggle, .wcab-app-root .wcab-staff-filter-toggle{
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
  min-height: 44px;
  background: var(--wcab-surface);
  border: 1.5px solid var(--wcab-border);
  border-radius: 12px;
  padding: 8px 14px;
  font-weight: 400;
  font-size: 14px;
  color: var(--wcab-ink);
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wcab-app-root.wcab-staff-filter-toggle:hover, .wcab-app-root .wcab-staff-filter-toggle:hover,
.wcab-app-root.wcab-staff-filter-dropdown.wcab-open .wcab-staff-filter-toggle, .wcab-app-root .wcab-staff-filter-dropdown.wcab-open .wcab-staff-filter-toggle{
  border-color: var(--wcab-staff-btn);
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.12);
}

.wcab-app-root.wcab-staff-filter-toggle-label, .wcab-app-root .wcab-staff-filter-toggle-label{
  flex: 1;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wcab-app-root.wcab-staff-filter-toggle-arrow, .wcab-app-root .wcab-staff-filter-toggle-arrow{
  color: var(--wcab-muted);
  flex-shrink: 0;
  transition: transform 0.15s ease;
}

.wcab-app-root.wcab-staff-filter-dropdown.wcab-open .wcab-staff-filter-toggle-arrow, .wcab-app-root .wcab-staff-filter-dropdown.wcab-open .wcab-staff-filter-toggle-arrow{
  transform: rotate(180deg);
}

.wcab-app-root.wcab-staff-filter-avatar, .wcab-app-root .wcab-staff-filter-avatar{
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--wcab-primary-light);
  color: var(--wcab-primary-dark);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  flex-shrink: 0;
  overflow: hidden;
}

.wcab-app-root.wcab-staff-filter-avatar img, .wcab-app-root .wcab-staff-filter-avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.wcab-app-root.wcab-staff-filter-menu, .wcab-app-root .wcab-staff-filter-menu{
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid var(--wcab-border);
  border-radius: 10px;
  box-shadow: var(--wcab-shadow-md);
  padding: 6px;
  width: 100%;
  min-width: 240px;
  max-height: 280px;
  overflow-y: auto;
  z-index: 500;
}

.wcab-app-root.wcab-staff-filter-menu.wcab-open, .wcab-app-root .wcab-staff-filter-menu.wcab-open{
  display: block;
}

.wcab-app-root.wcab-staff-filter-option, .wcab-app-root .wcab-staff-filter-option{
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  padding: 8px;
  border-radius: 8px;
  cursor: pointer;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-staff-filter-option .wcab-staff-filter-avatar, .wcab-app-root .wcab-staff-filter-option .wcab-staff-filter-avatar{
  width: 38px;
  height: 38px;
  font-size: 13px;
}

.wcab-app-root.wcab-staff-filter-option-meta, .wcab-app-root .wcab-staff-filter-option-meta{
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.wcab-app-root.wcab-staff-filter-option-name, .wcab-app-root .wcab-staff-filter-option-name{
  font-weight: 700;
  font-size: 13.5px;
  color: var(--wcab-ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wcab-app-root.wcab-staff-filter-option-designation, .wcab-app-root .wcab-staff-filter-option-designation{
  font-size: 12px;
  color: var(--wcab-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wcab-app-root.wcab-staff-filter-option:hover, .wcab-app-root .wcab-staff-filter-option:hover{
  background: var(--wcab-surface-soft);
}

.wcab-app-root.wcab-dashboard-powered-by, .wcab-app-root .wcab-dashboard-powered-by{
  text-align: center;
  margin-top: 22px;
  padding-top: 14px;
  border-top: 1px solid var(--wcab-border);
  font-size: 12px;
}

.wcab-app-root.wcab-dashboard-powered-by a, .wcab-app-root .wcab-dashboard-powered-by a{
  color: var(--wcab-muted);
  text-decoration: none;
}

.wcab-app-root.wcab-dashboard-powered-by a:hover, .wcab-app-root .wcab-dashboard-powered-by a:hover{
  color: var(--wcab-primary);
  text-decoration: underline;
}

.wcab-app-root.wcab-label-repeater-row, .wcab-app-root .wcab-label-repeater-row{
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}


/* ---------- Booking v1.6.4: first/last name, alternate phone, modern icons ---------- */
.wcab-app-root.wcab-name-grid, .wcab-app-root .wcab-name-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}

.wcab-app-root.wcab-name-grid .wcab-field label, .wcab-app-root .wcab-name-grid .wcab-field label{
  margin-top: 14px;
}

.wcab-app-root.wcab-location-compact .wcab-location-option-custom, .wcab-app-root .wcab-location-compact .wcab-location-option-custom{
  align-items: flex-start;
  width: 100%;
}

.wcab-app-root.wcab-location-compact .wcab-location-option-custom-row, .wcab-app-root .wcab-location-compact .wcab-location-option-custom-row{
  width: 100%;
  justify-content: flex-start;
  text-align: left;
}

.wcab-app-root.wcab-location-compact .wcab-location-icon-custom, .wcab-app-root .wcab-location-compact .wcab-location-icon-custom{
  width: 32px;
  height: 32px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.wcab-app-root.wcab-location-compact .wcab-location-icon-custom img, .wcab-app-root .wcab-location-compact .wcab-location-icon-custom img{
  width: 32px;
  height: 32px;
  display: block;
}

@media (max-width: 650px) {
  .wcab-app-root.wcab-name-grid, .wcab-app-root .wcab-name-grid{
    grid-template-columns: 1fr;
    gap: 0;
  }
}

/* ---------- v1.6.5: staff dashboard compact actions + resizable columns ---------- */
.wcab-app-root.wcab-login-form, .wcab-app-root .wcab-login-form{
  display: grid;
  gap: 14px;
}

.wcab-app-root.wcab-login-form .wcab-submit, .wcab-app-root .wcab-login-form .wcab-submit{
  margin-top: 10px;
}

.wcab-app-root.wcab-powered-by, .wcab-app-root .wcab-powered-by{
  margin: 8px 0 0;
  text-align: center;
  font-size: 12px;
  color: var(--wcab-muted);
}

.wcab-app-root.wcab-powered-by a, .wcab-app-root .wcab-powered-by a{
  color: var(--wcab-primary);
  font-weight: 800;
  text-decoration: none;
}

.wcab-app-root.wcab-powered-by a:hover, .wcab-app-root .wcab-powered-by a:hover{
  text-decoration: underline;
}

.wcab-app-root.wcab-table.wcab-resizable-table, .wcab-app-root .wcab-table.wcab-resizable-table{
  table-layout: fixed;
}

.wcab-app-root.wcab-table.wcab-resizable-table td, .wcab-app-root .wcab-table.wcab-resizable-table td{
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.wcab-app-root.wcab-table.wcab-resizable-table th, .wcab-app-root .wcab-table.wcab-resizable-table th,
.wcab-app-root.wcab-table.wcab-resizable-table th a, .wcab-app-root .wcab-table.wcab-resizable-table th a,
.wcab-app-root.wcab-table.wcab-resizable-table .wcab-sort-link, .wcab-app-root .wcab-table.wcab-resizable-table .wcab-sort-link{
  white-space: normal;
  text-wrap: wrap;
  overflow-wrap: normal;
  word-break: keep-all;
  line-height: 1.3;
}

.wcab-app-root.wcab-table.wcab-resizable-table th, .wcab-app-root .wcab-table.wcab-resizable-table th{
  position: relative;
  min-width: 96px;
  vertical-align: middle;
}

.wcab-app-root.wcab-table.wcab-resizable-table .wcab-sort-link, .wcab-app-root .wcab-table.wcab-resizable-table .wcab-sort-link{
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  text-align: center;
  max-width: 100%;
  min-width: 0;
  gap: 4px;
}

.wcab-app-root.wcab-table.wcab-resizable-table th .wcab-col-resizer, .wcab-app-root .wcab-table.wcab-resizable-table th .wcab-col-resizer{
  position: absolute;
  top: 0;
  right: -4px;
  width: 8px;
  height: 100%;
  cursor: col-resize;
  user-select: none;
  z-index: 3;
}

.wcab-app-root.wcab-table.wcab-resizable-table th .wcab-col-resizer::after, .wcab-app-root .wcab-table.wcab-resizable-table th .wcab-col-resizer::after{
  content: "";
  position: absolute;
  top: 25%;
  bottom: 25%;
  left: 3px;
  width: 2px;
  border-radius: 99px;
  background: transparent;
  transition: background 0.15s ease;
}

.wcab-app-root.wcab-table.wcab-resizable-table th:hover .wcab-col-resizer::after, .wcab-app-root .wcab-table.wcab-resizable-table th:hover .wcab-col-resizer::after,
.wcab-app-root.wcab-resizing-columns .wcab-col-resizer::after{
  background: rgba(79, 70, 229, 0.35);
}

.wcab-app-root.wcab-resizing-columns{
  cursor: col-resize;
  user-select: none;
}

.wcab-app-root.wcab-table td.wcab-action-cell, .wcab-app-root .wcab-table td.wcab-action-cell,
.wcab-app-root.wcab-table th:last-child, .wcab-app-root .wcab-table th:last-child{
  min-width: 118px;
  width: 118px;
  text-align: center;
}

.wcab-app-root.wcab-action-icons, .wcab-app-root .wcab-action-icons{
  display: inline-flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
}

.wcab-app-root.wcab-action-icon-btn, .wcab-app-root .wcab-action-icon-btn{
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 0;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  position: relative;
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

.wcab-app-root.wcab-action-open-btn, .wcab-app-root .wcab-action-open-btn{
  background: var(--wcab-action-open-bg, #00c27a);
  color: var(--wcab-action-open-icon, #ffffff);
}

.wcab-app-root.wcab-action-share-btn, .wcab-app-root .wcab-action-share-btn{
  background: #2ea8ef;
}

.wcab-app-root.wcab-action-icon-btn:hover, .wcab-app-root .wcab-action-icon-btn:hover,
.wcab-app-root.wcab-action-icon-btn:focus-visible, .wcab-app-root .wcab-action-icon-btn:focus-visible{
  outline: none;
}

.wcab-app-root.wcab-action-open-btn:hover, .wcab-app-root .wcab-action-open-btn:hover,
.wcab-app-root.wcab-action-open-btn:focus-visible, .wcab-app-root .wcab-action-open-btn:focus-visible{
  background: var(--wcab-action-open-hover-bg, var(--wcab-action-open-bg, #00c27a));
  color: var(--wcab-action-open-hover-icon, var(--wcab-action-open-icon, #ffffff));
}

.wcab-app-root.wcab-action-share-btn:hover, .wcab-app-root .wcab-action-share-btn:hover,
.wcab-app-root.wcab-action-share-btn:focus-visible, .wcab-app-root .wcab-action-share-btn:focus-visible{
  box-shadow: 0 10px 20px rgba(46, 168, 239, 0.35);
  filter: brightness(1.05);
  transform: translateY(-2px);
}

/* Action button hover effects: which rule applies is chosen from
   Settings > Appearance > Action Column Button > Hover Effect. */
.wcab-app-root.wcab-action-open-btn[data-hover-effect="none"]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect="none"]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect="none"]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect="none"]:focus-visible{
  transform: none;
  box-shadow: none;
  filter: none;
}

.wcab-app-root.wcab-action-open-btn[data-hover-effect="lift"]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect="lift"]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect="lift"]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect="lift"]:focus-visible{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px var(--wcab-action-open-hover-glow, rgba(0, 194, 122, 0.35));
}

.wcab-app-root.wcab-action-open-btn[data-hover-effect="grow"]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect="grow"]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect="grow"]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect="grow"]:focus-visible{
  transform: scale(1.14);
  box-shadow: none;
}

.wcab-app-root.wcab-action-open-btn[data-hover-effect="glow"]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect="glow"]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect="glow"]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect="glow"]:focus-visible{
  transform: none;
  box-shadow: 0 0 0 6px var(--wcab-action-open-hover-glow, rgba(0, 194, 122, 0.35));
}

.wcab-app-root.wcab-action-open-btn[data-hover-effect="pulse"]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect="pulse"]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect="pulse"]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect="pulse"]:focus-visible{
  animation: wcabActionPulse 0.9s ease-in-out infinite;
  box-shadow: 0 10px 20px var(--wcab-action-open-hover-glow, rgba(0, 194, 122, 0.35));
}

@keyframes wcabActionPulse {
  0%, 100%{ transform: scale(1); }
  50%{ transform: scale(1.12); }
}

.wcab-app-root.wcab-action-icon-btn:active, .wcab-app-root .wcab-action-icon-btn:active{
  transform: translateY(0) scale(0.96);
}

.wcab-app-root.wcab-action-icon-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-action-icon-btn:not(:hover):not(:focus-visible){
  box-shadow: none;
  filter: none;
}

.wcab-app-root.wcab-action-icon-btn svg, .wcab-app-root .wcab-action-icon-btn svg{
  width: var(--wcab-action-icon-size, 28px);
  height: var(--wcab-action-icon-size, 28px);
  pointer-events: none;
}

.wcab-app-root.wcab-action-modal, .wcab-app-root .wcab-action-modal{
  display: none;
  position: fixed;
  inset: 0;
  z-index: 999999;
  align-items: center;
  justify-content: center;
  padding: 22px;
}

.wcab-app-root.wcab-action-modal.wcab-open, .wcab-app-root .wcab-action-modal.wcab-open{
  display: flex;
}

.wcab-app-root.wcab-action-modal-backdrop, .wcab-app-root .wcab-action-modal-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.58);
  backdrop-filter: blur(3px);
}

.wcab-app-root.wcab-action-modal-card, .wcab-app-root .wcab-action-modal-card{
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  max-height: 90vh;
  overflow-y: auto;
  background: var(--wcab-surface);
  border-radius: 22px;
  border: 1px solid rgba(230, 233, 244, 0.9);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
  padding: 24px;
  text-align: left;
}

.wcab-app-root.wcab-action-modal-close, .wcab-app-root .wcab-action-modal-close{
  position: absolute;
  top: 12px;
  right: 14px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: var(--wcab-surface-soft);
  color: var(--wcab-muted);
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wcab-app-root.wcab-action-modal-close:hover, .wcab-app-root .wcab-action-modal-close:hover{
  background: #eef0ff;
  color: var(--wcab-primary);
}

.wcab-app-root.wcab-action-modal-head, .wcab-app-root .wcab-action-modal-head{
  display: grid;
  gap: 4px;
  padding-right: 42px;
  margin-bottom: 16px;
}

.wcab-app-root.wcab-action-modal-head span, .wcab-app-root .wcab-action-modal-head span{
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wcab-primary);
}

.wcab-app-root.wcab-action-modal-head strong, .wcab-app-root .wcab-action-modal-head strong{
  font-size: 22px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-action-modal-head small, .wcab-app-root .wcab-action-modal-head small{
  color: var(--wcab-muted);
  font-weight: 700;
}

.wcab-app-root.wcab-action-modal .wcab-inline-action-form, .wcab-app-root .wcab-action-modal .wcab-inline-action-form{
  min-width: 0;
}

@media (max-width: 650px) {
  .wcab-app-root.wcab-action-modal, .wcab-app-root .wcab-action-modal{ padding: 12px; }
  .wcab-app-root.wcab-action-modal-card, .wcab-app-root .wcab-action-modal-card{ padding: 20px; border-radius: 18px; }
  .wcab-app-root.wcab-action-icon-btn, .wcab-app-root .wcab-action-icon-btn{ width: 40px; height: 40px; }
  .wcab-app-root.wcab-action-icon-btn svg, .wcab-app-root .wcab-action-icon-btn svg{ width: min(var(--wcab-action-icon-size, 28px), 24px); height: min(var(--wcab-action-icon-size, 28px), 24px); }
}

/* ---------- Item 13: Booking ID shown in the Appointment Action modal ---------- */
.wcab-app-root.wcab-action-modal-booking-id, .wcab-app-root .wcab-action-modal-booking-id{
  color: var(--wcab-staff-btn) !important;
  font-weight: 800 !important;
}

/* ---------- Item 14: reason textarea only shows for Cancelled / Postponed / Rescheduled ---------- */
.wcab-app-root.wcab-inline-reason-wrap, .wcab-app-root .wcab-inline-reason-wrap{
  overflow: hidden;
  max-height: 120px;
  transition: max-height 0.2s ease, opacity 0.2s ease, margin 0.2s ease;
  opacity: 1;
}

.wcab-app-root.wcab-inline-reason-wrap[data-shown="0"], .wcab-app-root .wcab-inline-reason-wrap[data-shown="0"]{
  max-height: 0;
  opacity: 0;
  margin: 0;
  pointer-events: none;
}

.wcab-app-root.wcab-inline-reason-wrap textarea, .wcab-app-root .wcab-inline-reason-wrap textarea{
  width: 100%;
  box-sizing: border-box;
}

/* ---------- Item 10: Reason / Reschedule History column ---------- */
.wcab-app-root.wcab-reason-col, .wcab-app-root .wcab-reason-col{
  width: 130px;
  max-width: 130px;
}

.wcab-app-root.wcab-reason-preview-btn, .wcab-app-root .wcab-reason-preview-btn{
  display: inline-block;
  max-width: 100%;
  background: var(--wcab-surface-soft);
  border: 1px solid var(--wcab-border);
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12.5px;
  color: var(--wcab-ink);
  cursor: pointer;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.wcab-app-root.wcab-reason-preview-btn:hover, .wcab-app-root .wcab-reason-preview-btn:hover,
.wcab-app-root.wcab-reason-preview-btn:focus-visible, .wcab-app-root .wcab-reason-preview-btn:focus-visible{
  border-color: var(--wcab-staff-btn);
  background: var(--wcab-primary-light);
  color: var(--wcab-ink) !important;
  outline: none;
}

.wcab-app-root.wcab-reason-empty, .wcab-app-root .wcab-reason-empty{
  color: var(--wcab-muted);
}

.wcab-app-root.wcab-reason-modal, .wcab-app-root .wcab-reason-modal{
  display: none;
  position: fixed;
  inset: 0;
  z-index: 999999;
  align-items: center;
  justify-content: center;
  padding: 22px;
}

.wcab-app-root.wcab-reason-modal.wcab-open, .wcab-app-root .wcab-reason-modal.wcab-open{
  display: flex;
}

.wcab-app-root.wcab-reason-modal-backdrop, .wcab-app-root .wcab-reason-modal-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.58);
  backdrop-filter: blur(3px);
}

.wcab-app-root.wcab-reason-modal-card, .wcab-app-root .wcab-reason-modal-card{
  position: relative;
  z-index: 1;
  width: min(440px, 100%);
  max-height: 80vh;
  overflow-y: auto;
  background: var(--wcab-surface);
  border-radius: 18px;
  border: 1px solid rgba(230, 233, 244, 0.9);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
  padding: 24px;
  text-align: left;
}

.wcab-app-root.wcab-reason-modal-card h4, .wcab-app-root .wcab-reason-modal-card h4{
  margin: 0 0 12px;
  padding-right: 34px;
  font-size: 15px;
  color: var(--wcab-ink);
}

.wcab-app-root.wcab-reason-modal-text, .wcab-app-root .wcab-reason-modal-text{
  margin: 0;
  white-space: pre-wrap;
  color: var(--wcab-ink);
  font-size: 14px;
  line-height: 1.6;
}

.wcab-app-root.wcab-reason-modal-close, .wcab-app-root .wcab-reason-modal-close{
  position: absolute;
  top: 12px;
  right: 14px;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: var(--wcab-surface-soft);
  color: var(--wcab-muted);
  cursor: pointer;
  font-size: 20px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wcab-app-root.wcab-reason-modal-close:hover, .wcab-app-root .wcab-reason-modal-close:hover{
  background: #eef0ff;
  color: var(--wcab-primary);
}

/* ---------- Item 17: Export to PDF / Excel buttons ---------- */
.wcab-app-root.wcab-export-actions, .wcab-app-root .wcab-export-actions{
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}

.wcab-app-root.wcab-export-btn, .wcab-app-root .wcab-export-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-surface);
  color: var(--wcab-ink);
  padding: 9px 16px;
  border-radius: var(--wcab-radius-sm);
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  transition: border-color 0.15s ease, transform 0.15s ease, background 0.15s ease;
}

.wcab-app-root.wcab-export-btn svg, .wcab-app-root .wcab-export-btn svg{
  width: 16px;
  height: 16px;
}

.wcab-app-root.wcab-export-pdf-btn:hover, .wcab-app-root .wcab-export-pdf-btn:hover{
  border-color: #b42318;
  background: #fef2f2;
  color: #b42318;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-export-excel-btn:hover, .wcab-app-root .wcab-export-excel-btn:hover{
  border-color: #067647;
  background: #ecfdf5;
  color: #067647;
  transform: translateY(-1px);
}

/* ---------- Item 16: pagination controls ---------- */
.wcab-app-root.wcab-pagination, .wcab-app-root .wcab-pagination{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.wcab-app-root.wcab-pagination-info, .wcab-app-root .wcab-pagination-info{
  color: var(--wcab-muted);
  font-size: 13px;
}

.wcab-app-root.wcab-pagination-controls, .wcab-app-root .wcab-pagination-controls{
  display: flex;
  align-items: center;
  gap: 12px;
}

.wcab-app-root.wcab-pagination-btn, .wcab-app-root .wcab-pagination-btn{
  display: inline-flex;
  align-items: center;
  border: 1.5px solid var(--wcab-border);
  background: var(--wcab-surface);
  color: var(--wcab-ink);
  padding: 8px 14px;
  border-radius: var(--wcab-radius-sm);
  font-weight: 800;
  font-size: 13px;
  text-decoration: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.wcab-app-root.wcab-pagination-btn:hover, .wcab-app-root .wcab-pagination-btn:hover{
  border-color: var(--wcab-staff-btn);
  background: var(--wcab-primary-light);
}

.wcab-app-root.wcab-pagination-btn-disabled, .wcab-app-root .wcab-pagination-btn-disabled{
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.wcab-app-root.wcab-pagination-page, .wcab-app-root .wcab-pagination-page{
  font-weight: 800;
  font-size: 13px;
  color: var(--wcab-ink);
}

@media (max-width: 650px) {
  .wcab-app-root.wcab-export-actions, .wcab-app-root .wcab-export-actions{ flex-wrap: wrap; }
  .wcab-app-root.wcab-pagination, .wcab-app-root .wcab-pagination{ flex-direction: column; align-items: flex-start; }
}

/* =========================================================
   Frontend HR Management (Staff Admin only) — v1.9.0
   Professional dashboard UI based on the supplied reference.
========================================================= */
.wcab-app-root.wcab-hr-management-btn, .wcab-app-root .wcab-hr-management-btn{
  background: linear-gradient(135deg, #4f46e5, #5b4ff2) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 8px 20px rgba(79, 70, 229, 0.25) !important;
}

.wcab-app-root.wcab-hr-panel, .wcab-app-root .wcab-hr-panel{
  width: min(100%, 1600px);
  max-width: 1600px;
  box-sizing: border-box;
  margin: 24px auto;
  padding: 30px;
  border: 1px solid #edf0f6;
  border-radius: 22px;
  background: #f8fafc;
  box-shadow: 0 16px 45px rgba(15, 23, 42, 0.08);
  color: #172033;
}

.wcab-app-root.wcab-hr-panel *, .wcab-app-root .wcab-hr-panel *{
  box-sizing: border-box;
}

.wcab-app-root.wcab-hr-head, .wcab-app-root .wcab-hr-head{
  align-items: center;
  margin-bottom: 22px;
  padding: 0;
  border-bottom: 0;
}

.wcab-app-root.wcab-hr-heading-copy, .wcab-app-root .wcab-hr-heading-copy{
  min-width: 0;
}

.wcab-app-root.wcab-hr-head .wcab-dashboard-main-heading, .wcab-app-root .wcab-hr-head .wcab-dashboard-main-heading{
  margin: 3px 0 6px;
  color: #1d2638;
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.wcab-app-root.wcab-hr-head p, .wcab-app-root .wcab-hr-head p{
  color: #738096;
  font-size: 14px;
  line-height: 1.6;
}

.wcab-app-root.wcab-hr-eyebrow, .wcab-app-root .wcab-hr-eyebrow{
  display: inline-block;
  margin-bottom: 4px;
  color: #4f46e5;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{
  justify-content: flex-end;
  gap: 12px;
}

.wcab-app-root.wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-btn,
.wcab-app-root.wcab-hr-top-btn:visited, .wcab-app-root .wcab-hr-top-btn:visited{
  min-height: 48px;
  padding: 11px 20px;
  border-radius: 10px;
  gap: 10px;
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
  text-decoration: none;
}

.wcab-app-root.wcab-hr-top-btn .wcab-btn-icon, .wcab-app-root .wcab-hr-top-btn .wcab-btn-icon{
  width: 18px;
  height: 18px;
}

.wcab-app-root.wcab-hr-primary-nav, .wcab-app-root .wcab-hr-primary-nav,
.wcab-app-root.wcab-hr-primary-nav:visited, .wcab-app-root .wcab-hr-primary-nav:visited,
.wcab-app-root.wcab-hr-primary-nav:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-primary-nav:not(:hover):not(:focus-visible){
  border: 1px solid #4f46e5 !important;
  background: linear-gradient(135deg, #4f46e5, #5548ed) !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(79, 70, 229, 0.24) !important;
}

.wcab-app-root.wcab-hr-primary-nav:hover, .wcab-app-root .wcab-hr-primary-nav:hover,
.wcab-app-root.wcab-hr-primary-nav:focus-visible, .wcab-app-root .wcab-hr-primary-nav:focus-visible{
  border-color: #4038c9 !important;
  background: linear-gradient(135deg, #4338ca, #4f46e5) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-secondary-nav, .wcab-app-root .wcab-hr-secondary-nav,
.wcab-app-root.wcab-hr-secondary-nav:visited, .wcab-app-root .wcab-hr-secondary-nav:visited,
.wcab-app-root.wcab-hr-secondary-nav:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-secondary-nav:not(:hover):not(:focus-visible){
  border: 1px solid #dfe4ec !important;
  background: #fff !important;
  color: #202b40 !important;
  box-shadow: 0 3px 10px rgba(15, 23, 42, 0.06) !important;
}

.wcab-app-root.wcab-hr-secondary-nav:hover, .wcab-app-root .wcab-hr-secondary-nav:hover,
.wcab-app-root.wcab-hr-secondary-nav:focus-visible, .wcab-app-root .wcab-hr-secondary-nav:focus-visible{
  border-color: #cbd3e0 !important;
  background: #f8fafc !important;
  color: #4f46e5 !important;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
  display: grid;
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap: 18px;
  margin: 18px 0 24px;
}

.wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{
  position: relative;
  min-width: 0;
  min-height: 112px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 14px;
  align-items: center;
  overflow: hidden;
  padding: 18px 16px 13px;
  border: 1px solid #e7ebf2;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 5px 15px rgba(15, 23, 42, 0.07);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.wcab-app-root.wcab-hr-summary-card:hover, .wcab-app-root .wcab-hr-summary-card:hover{
  transform: translateY(-2px);
  border-color: #d9dff0;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.1);
}

.wcab-app-root.wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-icon{
  grid-row: 1 / span 2;
  width: 50px;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: start;
  border-radius: 50%;
  background: #eef0ff;
  color: #4f46e5;
}

.wcab-app-root.wcab-hr-summary-icon svg, .wcab-app-root .wcab-hr-summary-icon svg{
  width: 27px;
  height: 27px;
}

.wcab-app-root.wcab-hr-summary-copy, .wcab-app-root .wcab-hr-summary-copy{
  min-width: 0;
  display: block;
  align-self: start;
}

.wcab-app-root.wcab-hr-summary-copy small, .wcab-app-root .wcab-hr-summary-copy small{
  display: block;
  overflow: hidden;
  color: #556176;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wcab-app-root.wcab-hr-summary-copy strong, .wcab-app-root .wcab-hr-summary-copy strong{
  display: block;
  margin-top: 5px;
  color: currentColor;
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1;
  font-weight: 900;
}

.wcab-app-root.wcab-hr-sparkline, .wcab-app-root .wcab-hr-sparkline{
  grid-column: 2;
  width: 88px;
  max-width: 100%;
  height: 24px;
  align-self: end;
  opacity: 0.95;
}

.wcab-app-root.wcab-hr-summary-purple, .wcab-app-root .wcab-hr-summary-purple{ color: #4f46e5; }
.wcab-app-root.wcab-hr-summary-purple .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-purple .wcab-hr-summary-icon{ background: #eeecff; color: #4f46e5; }
.wcab-app-root.wcab-hr-summary-green, .wcab-app-root .wcab-hr-summary-green{ color: #23ad61; }
.wcab-app-root.wcab-hr-summary-green .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-green .wcab-hr-summary-icon{ background: #e9f9ef; color: #27ae60; }
.wcab-app-root.wcab-hr-summary-indigo, .wcab-app-root .wcab-hr-summary-indigo{ color: #4338ca; }
.wcab-app-root.wcab-hr-summary-indigo .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-indigo .wcab-hr-summary-icon{ background: #efedff; color: #4f46e5; }
.wcab-app-root.wcab-hr-summary-cyan, .wcab-app-root .wcab-hr-summary-cyan{ color: #06a9d4; }
.wcab-app-root.wcab-hr-summary-cyan .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-cyan .wcab-hr-summary-icon{ background: #e5f8fc; color: #06a9d4; }
.wcab-app-root.wcab-hr-summary-blue, .wcab-app-root .wcab-hr-summary-blue{ color: #3578e5; }
.wcab-app-root.wcab-hr-summary-blue .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-blue .wcab-hr-summary-icon{ background: #eaf2ff; color: #3578e5; }
.wcab-app-root.wcab-hr-summary-teal, .wcab-app-root .wcab-hr-summary-teal{ color: #04a8c0; }
.wcab-app-root.wcab-hr-summary-teal .wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-teal .wcab-hr-summary-icon{ background: #e4f8fa; color: #04a8c0; }

.wcab-app-root.wcab-hr-layout, .wcab-app-root .wcab-hr-layout{
  display: grid;
  grid-template-columns: minmax(430px, 0.78fr) minmax(0, 1.55fr);
  gap: 22px;
  align-items: start;
}

.wcab-app-root.wcab-hr-card, .wcab-app-root .wcab-hr-card{
  min-width: 0;
  border: 1px solid #e3e8f0;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.07);
}

.wcab-app-root.wcab-hr-form-card, .wcab-app-root .wcab-hr-form-card,
.wcab-app-root.wcab-hr-performance-card, .wcab-app-root .wcab-hr-performance-card{
  padding: 18px;
}

.wcab-app-root.wcab-hr-form-card, .wcab-app-root .wcab-hr-form-card{
  position: sticky;
  top: 18px;
}

.wcab-app-root.wcab-hr-section-head, .wcab-app-root .wcab-hr-section-head{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.wcab-app-root.wcab-hr-section-head-clean, .wcab-app-root .wcab-hr-section-head-clean{
  padding: 0 0 13px;
  border-bottom: 0;
}

.wcab-app-root.wcab-hr-card-title, .wcab-app-root .wcab-hr-card-title{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  color: #4f46e5;
}

.wcab-app-root.wcab-hr-title-icon, .wcab-app-root .wcab-hr-title-icon{
  width: 21px;
  height: 21px;
  display: inline-flex;
  flex: 0 0 21px;
  align-items: center;
  justify-content: center;
}

.wcab-app-root.wcab-hr-title-icon svg, .wcab-app-root .wcab-hr-title-icon svg{
  width: 100%;
  height: 100%;
}

.wcab-app-root.wcab-hr-section-head h4, .wcab-app-root .wcab-hr-section-head h4{
  margin: 0;
  color: #4f46e5;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.01em;
}

.wcab-app-root.wcab-hr-text-link, .wcab-app-root .wcab-hr-text-link,
.wcab-app-root.wcab-hr-text-link:visited, .wcab-app-root .wcab-hr-text-link:visited{
  color: #4f46e5;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.wcab-app-root.wcab-hr-text-link:hover, .wcab-app-root .wcab-hr-text-link:hover{
  text-decoration: underline;
}

.wcab-app-root.wcab-hr-section-note, .wcab-app-root .wcab-hr-section-note{
  color: #7b8798;
  font-size: 11px;
  font-weight: 700;
  text-align: right;
}

.wcab-app-root.wcab-hr-form, .wcab-app-root .wcab-hr-form{
  display: block;
}

.wcab-app-root.wcab-hr-form-main, .wcab-app-root .wcab-hr-form-main{
  display: grid;
  grid-template-columns: 102px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.wcab-app-root.wcab-hr-avatar-column, .wcab-app-root .wcab-hr-avatar-column{
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 2px;
  text-align: center;
}

.wcab-app-root.wcab-hr-avatar-preview-wrap, .wcab-app-root .wcab-hr-avatar-preview-wrap{
  position: relative;
  width: 88px;
  height: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  border: 1px solid #d9deea;
  border-radius: 50%;
  background: linear-gradient(145deg, #f7f8fb, #e8ebf1);
  color: #8590a2;
  cursor: pointer;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

.wcab-app-root.wcab-hr-avatar-preview, .wcab-app-root .wcab-hr-avatar-preview{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 50%;
}

.wcab-app-root.wcab-hr-avatar-placeholder, .wcab-app-root .wcab-hr-avatar-placeholder{
  width: 68px;
  height: 68px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wcab-app-root.wcab-hr-avatar-placeholder svg, .wcab-app-root .wcab-hr-avatar-placeholder svg{
  width: 62px;
  height: 62px;
}

.wcab-app-root.wcab-hr-camera-badge, .wcab-app-root .wcab-hr-camera-badge{
  position: absolute;
  right: -1px;
  bottom: 2px;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #4f46e5;
  color: #fff;
  box-shadow: 0 3px 9px rgba(79, 70, 229, 0.3);
}

.wcab-app-root.wcab-hr-camera-badge svg, .wcab-app-root .wcab-hr-camera-badge svg{
  width: 13px;
  height: 13px;
}

.wcab-app-root.wcab-hr-upload-label, .wcab-app-root .wcab-hr-upload-label{
  margin: 12px 0 3px !important;
  color: #364052 !important;
  font-size: 11px !important;
  line-height: 1.2;
  font-weight: 900 !important;
  cursor: pointer;
}

.wcab-app-root.wcab-hr-upload-help, .wcab-app-root .wcab-hr-upload-help{
  color: #778397;
  font-size: 9px;
  line-height: 1.6;
}

.wcab-app-root.wcab-hr-file-input, .wcab-app-root .wcab-hr-file-input{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

.wcab-app-root.wcab-hr-remove-photo, .wcab-app-root .wcab-hr-remove-photo{
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin: 8px 0 0 !important;
  color: #b42318 !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}

.wcab-app-root.wcab-hr-remove-photo input, .wcab-app-root .wcab-hr-remove-photo input{
  width: auto !important;
  min-height: 0 !important;
}

.wcab-app-root.wcab-hr-form-grid, .wcab-app-root .wcab-hr-form-grid{
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px 12px;
}

.wcab-app-root.wcab-hr-field, .wcab-app-root .wcab-hr-field{
  min-width: 0;
}

.wcab-app-root.wcab-hr-field-wide, .wcab-app-root .wcab-hr-field-wide{
  grid-column: 1 / -1;
}

.wcab-app-root.wcab-hr-field > label, .wcab-app-root .wcab-hr-field > label{
  display: block;
  margin: 0 0 5px;
  color: #253148;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
}

.wcab-app-root.wcab-required, .wcab-app-root .wcab-required{
  color: #ef4444;
}

.wcab-app-root.wcab-hr-field input, .wcab-app-root .wcab-hr-field input,
.wcab-app-root.wcab-hr-field select, .wcab-app-root .wcab-hr-field select,
.wcab-app-root.wcab-hr-field textarea, .wcab-app-root .wcab-hr-field textarea{
  width: 100%;
  max-width: 100%;
  min-height: 36px;
  box-sizing: border-box;
  border: 1px solid #dce2ec;
  border-radius: 6px;
  background: #fff;
  color: #263248;
  padding: 8px 10px;
  font: inherit;
  font-size: 10px;
  line-height: 1.35;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.02);
}

.wcab-app-root.wcab-hr-field input::placeholder, .wcab-app-root .wcab-hr-field input::placeholder,
.wcab-app-root.wcab-hr-field textarea::placeholder, .wcab-app-root .wcab-hr-field textarea::placeholder{
  color: #9aa4b4;
}

.wcab-app-root.wcab-hr-field textarea, .wcab-app-root .wcab-hr-field textarea{
  min-height: 36px;
  max-height: 74px;
  resize: vertical;
}

.wcab-app-root.wcab-hr-field input:focus, .wcab-app-root .wcab-hr-field input:focus,
.wcab-app-root.wcab-hr-field select:focus, .wcab-app-root .wcab-hr-field select:focus,
.wcab-app-root.wcab-hr-field textarea:focus, .wcab-app-root .wcab-hr-field textarea:focus{
  outline: none;
  border-color: #4f46e5;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}

.wcab-app-root.wcab-hr-field small, .wcab-app-root .wcab-hr-field small{
  display: block;
  margin-top: 4px;
  color: #7c8798;
  font-size: 9px;
  line-height: 1.4;
}

.wcab-app-root.wcab-hr-field .wcab-password-field, .wcab-app-root .wcab-hr-field .wcab-password-field{
  width: 100%;
}

.wcab-app-root.wcab-hr-field .wcab-password-toggle, .wcab-app-root .wcab-hr-field .wcab-password-toggle{
  min-width: 34px;
  padding: 0 8px;
  border-left: 1px solid #dce2ec;
  color: #69758a;
}

.wcab-app-root.wcab-hr-field .wcab-password-toggle svg, .wcab-app-root .wcab-hr-field .wcab-password-toggle svg{
  width: 15px;
  height: 15px;
}

.wcab-app-root.wcab-hr-days, .wcab-app-root .wcab-hr-days{
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.wcab-app-root.wcab-hr-days label, .wcab-app-root .wcab-hr-days label{
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #5c687c;
  font-size: 9px;
  font-weight: 700;
  cursor: pointer;
}

.wcab-app-root.wcab-hr-days input, .wcab-app-root .wcab-hr-days input{
  width: 12px !important;
  height: 12px !important;
  min-height: 0 !important;
  margin: 0 !important;
  accent-color: #4f46e5;
}

.wcab-app-root.wcab-hr-account-note, .wcab-app-root .wcab-hr-account-note{
  margin: 14px 0 0;
  padding: 10px 12px;
  border: 1px solid #fedf89;
  border-radius: 8px;
  background: #fffaeb;
  color: #93370d;
  font-size: 11px;
  font-weight: 700;
}

.wcab-app-root.wcab-hr-save-btn, .wcab-app-root .wcab-hr-save-btn{
  width: 100%;
  min-height: 44px;
  margin-top: 16px;
  border-radius: 7px !important;
  background: linear-gradient(135deg, #4338ca, #5546ee) !important;
  box-shadow: 0 7px 16px rgba(79, 70, 229, 0.22) !important;
  font-size: 14px;
}

.wcab-app-root.wcab-hr-save-btn svg, .wcab-app-root .wcab-hr-save-btn svg{
  width: 18px;
  height: 18px;
}

.wcab-app-root.wcab-hr-table-wrap, .wcab-app-root .wcab-hr-table-wrap{
  width: 100%;
  overflow: auto;
  border: 1px solid #e2e7ef;
  border-radius: 10px;
  background: #fff;
}

.wcab-app-root.wcab-hr-table, .wcab-app-root .wcab-hr-table{
  width: 100%;
  min-width: 1080px;
  margin: 0;
  border-collapse: collapse;
  table-layout: auto;
}

.wcab-app-root.wcab-hr-table th, .wcab-app-root .wcab-hr-table th,
.wcab-app-root.wcab-hr-table td, .wcab-app-root .wcab-hr-table td{
  padding: 11px 9px;
  border-right: 1px solid #edf0f5;
  border-bottom: 1px solid #e7ebf1;
  white-space: nowrap;
  vertical-align: middle;
  text-align: center;
}

.wcab-app-root.wcab-hr-table th:last-child, .wcab-app-root .wcab-hr-table th:last-child,
.wcab-app-root.wcab-hr-table td:last-child, .wcab-app-root .wcab-hr-table td:last-child{
  border-right: 0;
}

.wcab-app-root.wcab-hr-table tbody tr:last-child td, .wcab-app-root .wcab-hr-table tbody tr:last-child td{
  border-bottom: 0;
}

.wcab-app-root.wcab-hr-table th, .wcab-app-root .wcab-hr-table th{
  background: #fafbfc;
  color: #202a3d;
  font-size: 9px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: none;
}

.wcab-app-root.wcab-hr-table td, .wcab-app-root .wcab-hr-table td{
  color: #202a3d;
  font-size: 10px;
  line-height: 1.25;
}

.wcab-app-root.wcab-hr-table th:first-child, .wcab-app-root .wcab-hr-table th:first-child,
.wcab-app-root.wcab-hr-table td:first-child, .wcab-app-root .wcab-hr-table td:first-child{
  min-width: 165px;
  text-align: left;
}

.wcab-app-root.wcab-hr-table tbody tr, .wcab-app-root .wcab-hr-table tbody tr{
  transition: background 0.15s ease;
}

.wcab-app-root.wcab-hr-table tbody tr:hover, .wcab-app-root .wcab-hr-table tbody tr:hover{
  background: #fbfcff;
}

.wcab-app-root.wcab-hr-person, .wcab-app-root .wcab-hr-person{
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 150px;
}

.wcab-app-root.wcab-hr-person > img, .wcab-app-root .wcab-hr-person > img,
.wcab-app-root.wcab-hr-person > span, .wcab-app-root .wcab-hr-person > span{
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
}

.wcab-app-root.wcab-hr-person > img, .wcab-app-root .wcab-hr-person > img{
  object-fit: cover;
}

.wcab-app-root.wcab-hr-person > span, .wcab-app-root .wcab-hr-person > span{
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #4f46e5, #6255f2);
  color: #fff;
  font-size: 9px;
  font-weight: 900;
}

.wcab-app-root.wcab-hr-person strong, .wcab-app-root .wcab-hr-person strong,
.wcab-app-root.wcab-hr-person small, .wcab-app-root .wcab-hr-person small{
  display: block;
  text-align: left;
}

.wcab-app-root.wcab-hr-person strong, .wcab-app-root .wcab-hr-person strong{
  overflow: hidden;
  max-width: 112px;
  color: #182236;
  font-size: 10px;
  line-height: 1.25;
  font-weight: 800;
  text-overflow: ellipsis;
}

.wcab-app-root.wcab-hr-person small, .wcab-app-root .wcab-hr-person small{
  margin-top: 2px;
  overflow: hidden;
  max-width: 112px;
  color: #788397;
  font-size: 8px;
  line-height: 1.2;
  text-overflow: ellipsis;
}

.wcab-app-root.wcab-hr-status, .wcab-app-root .wcab-hr-status{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 8px;
  line-height: 1;
  font-weight: 800;
  text-transform: none;
}

.wcab-app-root.wcab-hr-status-active, .wcab-app-root .wcab-hr-status-active{
  border: 1px solid #d0eccf;
  background: #effbea;
  color: #3eaa55;
}

.wcab-app-root.wcab-hr-status-inactive, .wcab-app-root .wcab-hr-status-inactive{
  border: 1px solid #e2e6ed;
  background: #f1f3f6;
  color: #778294;
}

.wcab-app-root.wcab-hr-status-on_leave, .wcab-app-root .wcab-hr-status-on_leave{
  border: 1px solid #ffe2a1;
  background: #fff4cf;
  color: #d49000;
}

.wcab-app-root.wcab-hr-status-not_available, .wcab-app-root .wcab-hr-status-not_available{
  border: 1px solid #fecdca;
  background: #fef2f2;
  color: #b42318;
}

.wcab-app-root.wcab-hr-number-approved, .wcab-app-root .wcab-hr-number-approved,
.wcab-app-root.wcab-hr-number-paid, .wcab-app-root .wcab-hr-number-paid{
  color: #16a34a !important;
  font-weight: 800;
}

.wcab-app-root.wcab-hr-number-pending, .wcab-app-root .wcab-hr-number-pending{
  color: #f59e0b !important;
  font-weight: 800;
}

.wcab-app-root.wcab-hr-number-cancelled, .wcab-app-root .wcab-hr-number-cancelled{
  color: #ef4444 !important;
  font-weight: 800;
}

.wcab-app-root.wcab-hr-number-rescheduled, .wcab-app-root .wcab-hr-number-rescheduled{
  color: #2563eb !important;
  font-weight: 800;
}

.wcab-app-root.wcab-hr-progress, .wcab-app-root .wcab-hr-progress{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 88px;
}

.wcab-app-root.wcab-hr-progress-track, .wcab-app-root .wcab-hr-progress-track{
  width: 56px;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8ebf2;
}

.wcab-app-root.wcab-hr-progress-track span, .wcab-app-root .wcab-hr-progress-track span{
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #4f46e5, #5c4ff3);
}

.wcab-app-root.wcab-hr-progress strong, .wcab-app-root .wcab-hr-progress strong{
  min-width: 27px;
  color: #263248;
  font-size: 9px;
  font-weight: 800;
}

.wcab-app-root.wcab-hr-last-booking, .wcab-app-root .wcab-hr-last-booking{
  display: block;
  color: #354158;
  text-align: left;
}

.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong,
.wcab-app-root.wcab-hr-last-booking small, .wcab-app-root .wcab-hr-last-booking small{
  display: block;
}

.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong{
  font-size: 9px;
  font-weight: 700;
}

.wcab-app-root.wcab-hr-last-booking small, .wcab-app-root .wcab-hr-last-booking small{
  margin-top: 3px;
  color: #6f7b90;
  font-size: 8px;
}

.wcab-app-root.wcab-hr-row-actions, .wcab-app-root .wcab-hr-row-actions{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.wcab-app-root.wcab-hr-row-actions form, .wcab-app-root .wcab-hr-row-actions form{
  margin: 0;
}

.wcab-app-root.wcab-hr-edit-btn, .wcab-app-root .wcab-hr-edit-btn,
.wcab-app-root.wcab-hr-delete-btn, .wcab-app-root .wcab-hr-delete-btn,
.wcab-app-root.wcab-hr-current-label, .wcab-app-root .wcab-hr-current-label{
  width: 27px;
  height: 27px;
  min-height: 27px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 0;
  border-radius: 6px;
  padding: 0;
  font-size: 8px;
  line-height: 1;
  font-weight: 900;
  text-decoration: none;
}

.wcab-app-root.wcab-hr-edit-btn, .wcab-app-root .wcab-hr-edit-btn,
.wcab-app-root.wcab-hr-edit-btn:visited, .wcab-app-root .wcab-hr-edit-btn:visited{
  background: linear-gradient(135deg, #4f46e5, #5b4ff0);
  color: #fff;
  box-shadow: 0 3px 7px rgba(79, 70, 229, 0.2);
}

.wcab-app-root.wcab-hr-edit-btn:hover, .wcab-app-root .wcab-hr-edit-btn:hover{
  background: #4338ca;
  color: #fff;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-delete-btn, .wcab-app-root .wcab-hr-delete-btn{
  background: #ef3340;
  color: #fff;
  cursor: pointer;
  box-shadow: 0 3px 7px rgba(239, 51, 64, 0.18);
}

.wcab-app-root.wcab-hr-delete-btn:hover, .wcab-app-root .wcab-hr-delete-btn:hover{
  background: #dc2634;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-edit-btn svg, .wcab-app-root .wcab-hr-edit-btn svg,
.wcab-app-root.wcab-hr-delete-btn svg, .wcab-app-root .wcab-hr-delete-btn svg{
  width: 13px;
  height: 13px;
}

.wcab-app-root.wcab-hr-current-label, .wcab-app-root .wcab-hr-current-label{
  width: auto;
  padding: 0 7px;
  background: #ecfdf3;
  color: #067647;
}

.wcab-app-root.wcab-hr-definition, .wcab-app-root .wcab-hr-definition{
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 12px 0 0;
  color: #7a8597;
  font-size: 10px;
  line-height: 1.5;
}

.wcab-app-root.wcab-hr-definition svg, .wcab-app-root .wcab-hr-definition svg{
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

@media (max-width: 1450px) {
  .wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
    gap: 12px;
  }

  .wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{
    grid-template-columns: 44px minmax(0, 1fr);
    column-gap: 10px;
    padding-left: 12px;
    padding-right: 12px;
  }

  .wcab-app-root.wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-icon{
    width: 42px;
    height: 42px;
  }

  .wcab-app-root.wcab-hr-summary-icon svg, .wcab-app-root .wcab-hr-summary-icon svg{
    width: 23px;
    height: 23px;
  }

  .wcab-app-root.wcab-hr-layout, .wcab-app-root .wcab-hr-layout{
    grid-template-columns: minmax(400px, 0.78fr) minmax(0, 1.42fr);
  }
}

@media (max-width: 1260px) {
  .wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
    grid-template-columns: repeat(3, minmax(170px, 1fr));
  }

  .wcab-app-root.wcab-hr-layout, .wcab-app-root .wcab-hr-layout{
    grid-template-columns: 1fr;
  }

  .wcab-app-root.wcab-hr-form-card, .wcab-app-root .wcab-hr-form-card{
    position: static;
  }

  .wcab-app-root.wcab-hr-form-main, .wcab-app-root .wcab-hr-form-main{
    grid-template-columns: 120px minmax(0, 1fr);
  }
}

@media (max-width: 820px) {
  .wcab-app-root.wcab-hr-panel, .wcab-app-root .wcab-hr-panel{
    padding: 20px;
    border-radius: 16px;
  }

  .wcab-app-root.wcab-hr-head, .wcab-app-root .wcab-hr-head{
    flex-direction: column;
    align-items: flex-start;
  }

  .wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{
    width: 100%;
    justify-content: flex-start;
  }

  .wcab-app-root.wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-btn{
    flex: 1 1 auto;
  }

  .wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wcab-app-root.wcab-hr-form-main, .wcab-app-root .wcab-hr-form-main{
    grid-template-columns: 1fr;
  }

  .wcab-app-root.wcab-hr-avatar-column, .wcab-app-root .wcab-hr-avatar-column{
    padding-bottom: 6px;
  }

  .wcab-app-root.wcab-hr-form-card, .wcab-app-root .wcab-hr-form-card,
.wcab-app-root.wcab-hr-performance-card, .wcab-app-root .wcab-hr-performance-card{
    padding: 16px;
  }
}

@media (max-width: 560px) {
  .wcab-app-root.wcab-hr-panel, .wcab-app-root .wcab-hr-panel{
    padding: 14px;
    margin: 12px auto;
  }

  .wcab-app-root.wcab-hr-head .wcab-dashboard-main-heading, .wcab-app-root .wcab-hr-head .wcab-dashboard-main-heading{
    font-size: 30px;
  }

  .wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .wcab-app-root.wcab-hr-primary-nav, .wcab-app-root .wcab-hr-primary-nav{
    grid-column: 1 / -1;
  }

  .wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
    grid-template-columns: 1fr;
  }

  .wcab-app-root.wcab-hr-form-grid, .wcab-app-root .wcab-hr-form-grid{
    grid-template-columns: 1fr;
  }

  .wcab-app-root.wcab-hr-field-wide, .wcab-app-root .wcab-hr-field-wide{
    grid-column: auto;
  }

  .wcab-app-root.wcab-hr-section-head, .wcab-app-root .wcab-hr-section-head{
    align-items: flex-start;
  }

  .wcab-app-root.wcab-hr-section-note, .wcab-app-root .wcab-hr-section-note{
    max-width: 120px;
  }
}

/* =========================================================
   WebCarry v1.9.0 — HR modal, career portal and UI refinements
========================================================= */

/* Workforce Dashboard action button: supplied rounded-square pencil style. */
.wcab-app-root.wcab-action-icon-btn, .wcab-app-root .wcab-action-icon-btn{
  width: 46px;
  height: 46px;
  border-radius: 11px;
}
.wcab-app-root.wcab-action-open-btn, .wcab-app-root .wcab-action-open-btn{
  background: var(--wcab-action-open-bg, #4f46e5);
  color: var(--wcab-action-open-icon, #fff);
}
.wcab-app-root.wcab-action-open-btn:hover, .wcab-app-root .wcab-action-open-btn:hover,
.wcab-app-root.wcab-action-open-btn:focus-visible, .wcab-app-root .wcab-action-open-btn:focus-visible{
  background: var(--wcab-action-open-hover-bg, #4338ca);
}

/* HR Management follows the same outlined theme as Calendar / Refresh. */
.wcab-app-root.wcab-hr-management-btn, .wcab-app-root .wcab-hr-management-btn,
.wcab-app-root.wcab-hr-management-btn:visited, .wcab-app-root .wcab-hr-management-btn:visited,
.wcab-app-root.wcab-hr-management-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-management-btn:not(:hover):not(:focus-visible){
  background: var(--wcab-surface-soft) !important;
  color: var(--wcab-staff-btn) !important;
  border: 1.5px solid var(--wcab-staff-btn) !important;
  box-shadow: none !important;
}
.wcab-app-root.wcab-hr-management-btn:hover, .wcab-app-root .wcab-hr-management-btn:hover,
.wcab-app-root.wcab-hr-management-btn:focus-visible, .wcab-app-root .wcab-hr-management-btn:focus-visible{
  background: var(--wcab-staff-btn) !important;
  color: #fff !important;
  border-color: var(--wcab-staff-btn) !important;
  box-shadow: 0 8px 18px rgba(79,70,229,.22) !important;
}

/* Summary cards no longer include decorative graph lines. */
.wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{
  min-height: 112px;
  grid-template-columns: 54px minmax(0,1fr);
  grid-template-rows: 1fr;
  padding: 20px 18px;
}
.wcab-app-root.wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-icon{
  grid-row: auto;
  align-self: center;
}
.wcab-app-root.wcab-hr-summary-copy, .wcab-app-root .wcab-hr-summary-copy{
  align-self: center;
}
.wcab-app-root.wcab-hr-sparkline, .wcab-app-root .wcab-hr-sparkline{ display: none !important; }

.wcab-app-root.wcab-hr-performance-card, .wcab-app-root .wcab-hr-performance-card,
.wcab-app-root.wcab-hr-applications-card, .wcab-app-root .wcab-hr-applications-card{
  width: 100%;
  margin-top: 22px;
  padding: 22px;
}
.wcab-app-root.wcab-hr-performance-card, .wcab-app-root .wcab-hr-performance-card{ margin-top: 0; }
.wcab-app-root.wcab-hr-table, .wcab-app-root .wcab-hr-table{ min-width: 1460px; }
.wcab-app-root.wcab-hr-table th, .wcab-app-root .wcab-hr-table th{ font-size: 11px; padding: 13px 10px; }
.wcab-app-root.wcab-hr-table td, .wcab-app-root .wcab-hr-table td{ font-size: 12px; padding: 13px 10px; }
.wcab-app-root.wcab-hr-person strong, .wcab-app-root .wcab-hr-person strong{ max-width: 150px; font-size: 12px; }
.wcab-app-root.wcab-hr-person small, .wcab-app-root .wcab-hr-person small{ max-width: 150px; font-size: 10px; }
.wcab-app-root.wcab-hr-status, .wcab-app-root .wcab-hr-status{ font-size: 10px; padding: 6px 10px; }
.wcab-app-root.wcab-hr-progress strong, .wcab-app-root .wcab-hr-progress strong,
.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong{ font-size: 11px; }
.wcab-app-root.wcab-hr-last-booking small, .wcab-app-root .wcab-hr-last-booking small{ font-size: 10px; }

.wcab-app-root.wcab-hr-report-actions, .wcab-app-root .wcab-hr-report-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}
.wcab-app-root.wcab-hr-report-btn, .wcab-app-root .wcab-hr-report-btn,
.wcab-app-root.wcab-hr-report-btn:visited, .wcab-app-root .wcab-hr-report-btn:visited{
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid #d9deea;
  border-radius: 9px;
  background: #fff;
  color: #4f46e5;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
.wcab-app-root.wcab-hr-report-btn:hover, .wcab-app-root .wcab-hr-report-btn:hover{
  border-color: #4f46e5;
  background: #eef0ff;
  color: #4338ca;
}
.wcab-app-root.wcab-hr-report-btn svg, .wcab-app-root .wcab-hr-report-btn svg{ width: 15px; height: 15px; }

/* Add/edit staff popup. */
body.wcab-modal-open{ overflow: hidden; }
.wcab-app-root.wcab-hr-staff-modal, .wcab-app-root .wcab-hr-staff-modal{
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
}
.wcab-app-root.wcab-hr-staff-modal.is-open, .wcab-app-root .wcab-hr-staff-modal.is-open{ display: flex; }
.wcab-app-root.wcab-hr-modal-backdrop, .wcab-app-root .wcab-hr-modal-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(15,23,42,.62);
  backdrop-filter: blur(4px);
}
.wcab-app-root.wcab-hr-modal-card, .wcab-app-root .wcab-hr-modal-card{
  position: relative;
  z-index: 1;
  width: min(920px, 100%);
  max-height: calc(100vh - 44px);
  overflow: auto;
  padding: 24px;
  border: 1px solid #e3e8f0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(15,23,42,.28);
}
.wcab-app-root.wcab-hr-modal-head, .wcab-app-root .wcab-hr-modal-head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #edf0f5;
}
.wcab-app-root.wcab-hr-modal-head h4, .wcab-app-root .wcab-hr-modal-head h4{
  margin: 4px 0 0;
  color: #172033;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 900;
}
.wcab-app-root.wcab-hr-modal-close, .wcab-app-root .wcab-hr-modal-close,
.wcab-app-root.wcab-hr-modal-close:visited, .wcab-app-root .wcab-hr-modal-close:visited{
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
  border-radius: 10px;
  background: #f4f6fa;
  color: #526074;
  font-size: 28px;
  line-height: 1;
  text-decoration: none;
}
.wcab-app-root.wcab-hr-modal-close:hover, .wcab-app-root .wcab-hr-modal-close:hover{ background: #feecee; color: #dc2634; }
.wcab-app-root.wcab-hr-avatar-field, .wcab-app-root .wcab-hr-avatar-field{
  display: grid;
  grid-template-columns: 104px minmax(0,1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 20px;
  padding: 16px;
  border: 1px solid #e5e9f0;
  border-radius: 14px;
  background: #f8fafc;
}
.wcab-app-root.wcab-hr-avatar-field .wcab-hr-avatar-preview-wrap, .wcab-app-root .wcab-hr-avatar-field .wcab-hr-avatar-preview-wrap{ width: 96px; height: 96px; }
.wcab-app-root.wcab-hr-avatar-field strong, .wcab-app-root .wcab-hr-avatar-field strong{ display: block; margin-bottom: 4px; color: #253148; font-size: 13px; }
.wcab-app-root.wcab-hr-avatar-field small, .wcab-app-root .wcab-hr-avatar-field small{ display: block; margin-bottom: 9px; color: #778397; font-size: 11px; line-height: 1.5; }
.wcab-app-root.wcab-hr-avatar-field input[type="file"], .wcab-app-root .wcab-hr-avatar-field input[type="file"]{ width: 100%; font-size: 11px; }
.wcab-app-root.wcab-hr-camera-btn, .wcab-app-root .wcab-hr-camera-btn{
  position: absolute;
  right: -2px;
  bottom: 2px;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #4f46e5;
  color: #fff;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(79,70,229,.32);
}
.wcab-app-root.wcab-hr-camera-btn svg, .wcab-app-root .wcab-hr-camera-btn svg{ width: 14px; height: 14px; }
.wcab-app-root.wcab-hr-check, .wcab-app-root .wcab-hr-check{ display: inline-flex !important; align-items: center; gap: 6px; margin-top: 8px !important; font-size: 11px !important; }
.wcab-app-root.wcab-hr-check input, .wcab-app-root .wcab-hr-check input{ width: auto !important; min-height: 0 !important; }
.wcab-app-root.wcab-hr-modal-card .wcab-hr-form-grid, .wcab-app-root .wcab-hr-modal-card .wcab-hr-form-grid{ gap: 14px; }
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field > label, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field > label{ font-size: 12px; margin-bottom: 6px; }
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field input, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field input,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field select, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field select,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field textarea, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field textarea{
  min-height: 42px;
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12px;
}
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field textarea, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field textarea{ min-height: 70px; }
.wcab-app-root.wcab-hr-modal-actions, .wcab-app-root .wcab-hr-modal-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #edf0f5;
}
.wcab-app-root.wcab-hr-modal-actions .wcab-hr-save-btn, .wcab-app-root .wcab-hr-modal-actions .wcab-hr-save-btn{ width: auto; min-width: 150px; margin: 0; padding: 11px 20px; }
.wcab-app-root.wcab-hr-cancel-btn, .wcab-app-root .wcab-hr-cancel-btn,
.wcab-app-root.wcab-hr-cancel-btn:visited, .wcab-app-root .wcab-hr-cancel-btn:visited{
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border: 1px solid #d9deea;
  border-radius: 9px;
  background: #fff;
  color: #526074;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.wcab-app-root.wcab-hr-cancel-btn:hover, .wcab-app-root .wcab-hr-cancel-btn:hover{ border-color: #c7cfdb; background: #f8fafc; color: #172033; }

/* Career applications inside HR. */
.wcab-app-root.wcab-hr-applications-table, .wcab-app-root .wcab-hr-applications-table{ min-width: 1320px; }
.wcab-app-root.wcab-hr-applications-table th, .wcab-app-root .wcab-hr-applications-table th{ font-size: 11px; }
.wcab-app-root.wcab-hr-applications-table td, .wcab-app-root .wcab-hr-applications-table td{ font-size: 11px; vertical-align: top; white-space: normal; }
.wcab-app-root.wcab-hr-applications-table td > strong, .wcab-app-root .wcab-hr-applications-table td > strong,
.wcab-app-root.wcab-hr-applications-table td > small, .wcab-app-root .wcab-hr-applications-table td > small,
.wcab-app-root.wcab-hr-applications-table td > span, .wcab-app-root .wcab-hr-applications-table td > span{ display: block; }
.wcab-app-root.wcab-hr-applications-table td > small, .wcab-app-root .wcab-hr-applications-table td > small{ margin-top: 4px; color: #7a8597; }
.wcab-app-root.wcab-hr-resume-btn, .wcab-app-root .wcab-hr-resume-btn,
.wcab-app-root.wcab-hr-resume-btn:visited, .wcab-app-root .wcab-hr-resume-btn:visited{
  display: inline-flex;
  padding: 7px 10px;
  border-radius: 8px;
  background: #eef0ff;
  color: #4f46e5;
  font-weight: 800;
  text-decoration: none;
}
.wcab-app-root.wcab-hr-resume-btn:hover, .wcab-app-root .wcab-hr-resume-btn:hover{ background: #4f46e5; color: #fff; }
.wcab-app-root.wcab-hr-application-details summary, .wcab-app-root .wcab-hr-application-details summary{ color: #4f46e5; font-weight: 800; cursor: pointer; }
.wcab-app-root.wcab-hr-application-details div, .wcab-app-root .wcab-hr-application-details div{ width: 260px; margin-top: 8px; padding: 10px; border: 1px solid #e5e9f0; border-radius: 8px; background: #f8fafc; }
.wcab-app-root.wcab-hr-application-details p, .wcab-app-root .wcab-hr-application-details p{ margin: 4px 0 10px; color: #526074; line-height: 1.5; }
.wcab-app-root.wcab-hr-app-status-form, .wcab-app-root .wcab-hr-app-status-form{ min-width: 180px; }
.wcab-app-root.wcab-hr-app-status-form select, .wcab-app-root .wcab-hr-app-status-form select,
.wcab-app-root.wcab-hr-app-status-form textarea, .wcab-app-root .wcab-hr-app-status-form textarea{ width: 100%; margin-bottom: 6px; border: 1px solid #d9deea; border-radius: 7px; padding: 7px; font-size: 11px; }
.wcab-app-root.wcab-hr-app-status-form button, .wcab-app-root .wcab-hr-app-status-form button{ padding: 7px 12px; border: 0; border-radius: 7px; background: #4f46e5; color: #fff; font-weight: 800; cursor: pointer; }

/* Public career shortcode. */
.wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap{
  width: min(100%, 920px);
  margin: 32px auto;
  padding: 30px;
  box-sizing: border-box;
  border: 1px solid var(--wcab-border);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--wcab-shadow-lg);
  color: var(--wcab-ink);
  font-family: var(--wcab-font-family, inherit);
}
.wcab-app-root.wcab-career-head, .wcab-app-root .wcab-career-head{ margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--wcab-border); }
.wcab-app-root.wcab-career-kicker, .wcab-app-root .wcab-career-kicker{ color: var(--wcab-primary); font-size: 12px; font-weight: 900; letter-spacing: .14em; }
.wcab-app-root.wcab-career-head h2, .wcab-app-root .wcab-career-head h2{ margin: 8px 0; color: var(--wcab-heading-color); font-size: 32px; line-height: 1.15; font-weight: var(--wcab-heading-weight); }
.wcab-app-root.wcab-career-head p, .wcab-app-root .wcab-career-head p{ margin: 0; color: var(--wcab-muted); font-size: 15px; }
.wcab-app-root.wcab-career-grid, .wcab-app-root .wcab-career-grid{ display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.wcab-app-root.wcab-career-wide, .wcab-app-root .wcab-career-wide{ grid-column: 1/-1; }
.wcab-app-root.wcab-career-field label, .wcab-app-root .wcab-career-field label{ display: block; margin-bottom: 7px; color: #364058; font-size: 13px; font-weight: 800; }
.wcab-app-root.wcab-career-field label span, .wcab-app-root .wcab-career-field label span{ color: #ef4444; }
.wcab-app-root.wcab-career-field input, .wcab-app-root .wcab-career-field input,
.wcab-app-root.wcab-career-field select, .wcab-app-root .wcab-career-field select,
.wcab-app-root.wcab-career-field textarea, .wcab-app-root .wcab-career-field textarea{
  width: 100%;
  box-sizing: border-box;
  border: 1.5px solid var(--wcab-border);
  border-radius: 10px;
  background: #fff;
  padding: 12px 14px;
  color: var(--wcab-ink);
  font: inherit;
  font-size: 14px;
}
.wcab-app-root.wcab-career-field input:focus, .wcab-app-root .wcab-career-field input:focus,
.wcab-app-root.wcab-career-field select:focus, .wcab-app-root .wcab-career-field select:focus,
.wcab-app-root.wcab-career-field textarea:focus, .wcab-app-root .wcab-career-field textarea:focus{ outline: none; border-color: var(--wcab-primary); box-shadow: 0 0 0 4px rgba(79,70,229,.12); }
.wcab-app-root.wcab-career-field small, .wcab-app-root .wcab-career-field small{ display: block; margin-top: 6px; color: var(--wcab-muted); font-size: 12px; }
.wcab-app-root.wcab-career-submit, .wcab-app-root .wcab-career-submit{
  min-height: 48px;
  margin-top: 22px;
  padding: 12px 24px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg,var(--wcab-primary),var(--wcab-primary-dark));
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(79,70,229,.25);
}
.wcab-app-root.wcab-career-submit:hover, .wcab-app-root .wcab-career-submit:hover{ transform: translateY(-1px); filter: brightness(1.05); }
.wcab-app-root.wcab-career-honeypot, .wcab-app-root .wcab-career-honeypot{ position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 900px) {
  .wcab-app-root.wcab-hr-report-actions, .wcab-app-root .wcab-hr-report-actions{ justify-content: flex-start; }
  .wcab-app-root.wcab-hr-section-head, .wcab-app-root .wcab-hr-section-head{ align-items: flex-start; flex-direction: column; }
  .wcab-app-root.wcab-career-grid, .wcab-app-root .wcab-career-grid{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-career-wide, .wcab-app-root .wcab-career-wide{ grid-column: auto; }
}
@media (max-width: 640px) {
  .wcab-app-root.wcab-hr-staff-modal, .wcab-app-root .wcab-hr-staff-modal{ padding: 8px; }
  .wcab-app-root.wcab-hr-modal-card, .wcab-app-root .wcab-hr-modal-card{ max-height: calc(100vh - 16px); padding: 16px; border-radius: 14px; }
  .wcab-app-root.wcab-hr-avatar-field, .wcab-app-root .wcab-hr-avatar-field{ grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .wcab-app-root.wcab-hr-modal-card .wcab-hr-form-grid, .wcab-app-root .wcab-hr-modal-card .wcab-hr-form-grid{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-hr-field-wide, .wcab-app-root .wcab-hr-field-wide{ grid-column: auto; }
  .wcab-app-root.wcab-hr-modal-actions, .wcab-app-root .wcab-hr-modal-actions{ align-items: stretch; flex-direction: column-reverse; }
  .wcab-app-root.wcab-hr-modal-actions .wcab-hr-save-btn, .wcab-app-root .wcab-hr-modal-actions .wcab-hr-save-btn,
.wcab-app-root.wcab-hr-cancel-btn, .wcab-app-root .wcab-hr-cancel-btn{ width: 100%; }
  .wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap{ margin: 16px auto; padding: 20px; border-radius: 16px; }
  .wcab-app-root.wcab-career-head h2, .wcab-app-root .wcab-career-head h2{ font-size: 27px; }
}

@media print {
  body.wcab-hr-printing *{ visibility: hidden !important; }
  body.wcab-hr-printing .wcab-hr-performance-card,
body.wcab-hr-printing .wcab-hr-performance-card *{ visibility: visible !important; }
  body.wcab-hr-printing .wcab-hr-performance-card{
    position: absolute;
    inset: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: none;
  }
  body.wcab-hr-printing .wcab-hr-report-actions,
body.wcab-hr-printing .wcab-hr-row-actions{ display: none !important; }
  body.wcab-hr-printing .wcab-hr-table-wrap{ overflow: visible; border: 0; }
  body.wcab-hr-printing .wcab-hr-table{ min-width: 0; width: 100%; font-size: 8px; }
  body.wcab-hr-printing .wcab-hr-table th,
body.wcab-hr-printing .wcab-hr-table td{ padding: 5px 3px; font-size: 8px; white-space: normal; }
}

/* =========================================================
   WebCarry v2.0.0 — Advanced Workforce UI System
   Segoe UI, softer typography, modern dashboard cards,
   responsive data surfaces, login persistence and careers.
========================================================= */

.wcab-app-root{
  --wcab-v2-ink: #1d2a44;
  --wcab-v2-copy: #52617a;
  --wcab-v2-muted: #7d8aa2;
  --wcab-v2-line: #e4e9f2;
  --wcab-v2-page: #f6f8fc;
  --wcab-v2-panel: #ffffff;
  --wcab-v2-primary: #5b45f5;
  --wcab-v2-primary-dark: #4532d8;
  --wcab-v2-primary-soft: #f0edff;
  --wcab-v2-green: #22a866;
  --wcab-v2-green-soft: #eaf8f0;
  --wcab-v2-orange: #f39a17;
  --wcab-v2-orange-soft: #fff4e4;
  --wcab-v2-red: #ef4b57;
  --wcab-v2-red-soft: #ffedef;
  --wcab-v2-cyan: #24a9c8;
  --wcab-v2-cyan-soft: #e8f8fc;
  --wcab-v2-blue: #4779ed;
  --wcab-v2-blue-soft: #edf3ff;
  --wcab-v2-shadow: 0 10px 30px rgba(39, 53, 83, .07);
  --wcab-v2-shadow-hover: 0 18px 42px rgba(39, 53, 83, .12);
}

/* Segoe UI is now the single visual language throughout plugin interfaces. */
.wcab-app-root.wcab-wrapper, .wcab-app-root .wcab-wrapper,
.wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel,
.wcab-app-root.wcab-staff-login, .wcab-app-root .wcab-staff-login,
.wcab-app-root.wcab-booking-lookup, .wcab-app-root .wcab-booking-lookup,
.wcab-app-root.wcab-customer-panel, .wcab-app-root .wcab-customer-panel,
.wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap,
.wcab-app-root.wcab-open-positions-wrap, .wcab-app-root .wcab-open-positions-wrap,
.wcab-app-root.wcab-reason-modal-card, .wcab-app-root .wcab-reason-modal-card,
.wcab-app-root.wcab-action-modal-card, .wcab-app-root .wcab-action-modal-card,
.wcab-app-root.wcab-hr-modal-card, .wcab-app-root .wcab-hr-modal-card,
.wcab-app-root.wcab-mini-calendar-wrap, .wcab-app-root .wcab-mini-calendar-wrap,
.wcab-app-root.wcab-day-appts-panel, .wcab-app-root .wcab-day-appts-panel,
.wcab-app-root.wcab-confirmation-modal-card, .wcab-app-root .wcab-confirmation-modal-card,
.wcab-app-root.wcab-success-modal-card, .wcab-app-root .wcab-success-modal-card{
  --wcab-font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
  color: var(--wcab-v2-copy);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.wcab-app-root.wcab-wrapper *, .wcab-app-root .wcab-wrapper *,
.wcab-app-root.wcab-dashboard-panel *, .wcab-app-root .wcab-dashboard-panel *,
.wcab-app-root.wcab-staff-login *, .wcab-app-root .wcab-staff-login *,
.wcab-app-root.wcab-booking-lookup *, .wcab-app-root .wcab-booking-lookup *,
.wcab-app-root.wcab-customer-panel *, .wcab-app-root .wcab-customer-panel *,
.wcab-app-root.wcab-career-wrap *, .wcab-app-root .wcab-career-wrap *,
.wcab-app-root.wcab-open-positions-wrap *, .wcab-app-root .wcab-open-positions-wrap *,
.wcab-app-root.wcab-reason-modal-card *, .wcab-app-root .wcab-reason-modal-card *,
.wcab-app-root.wcab-action-modal-card *, .wcab-app-root .wcab-action-modal-card *,
.wcab-app-root.wcab-hr-modal-card *, .wcab-app-root .wcab-hr-modal-card *{
  font-family: inherit;
}

.wcab-app-root.wcab-admin-app{
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}

/* Softer, more deliberate typography — no harsh full-black or ultra-heavy copy. */
.wcab-app-root.wcab-dashboard-panel h1, .wcab-app-root .wcab-dashboard-panel h1,
.wcab-app-root.wcab-dashboard-panel h2, .wcab-app-root .wcab-dashboard-panel h2,
.wcab-app-root.wcab-dashboard-panel h3, .wcab-app-root .wcab-dashboard-panel h3,
.wcab-app-root.wcab-dashboard-panel h4, .wcab-app-root .wcab-dashboard-panel h4,
.wcab-app-root.wcab-career-wrap h2, .wcab-app-root .wcab-career-wrap h2,
.wcab-app-root.wcab-career-wrap h3, .wcab-app-root .wcab-career-wrap h3,
.wcab-app-root.wcab-open-positions-wrap h2, .wcab-app-root .wcab-open-positions-wrap h2,
.wcab-app-root.wcab-open-positions-wrap h3, .wcab-app-root .wcab-open-positions-wrap h3,
.wcab-app-root.wcab-staff-login h3, .wcab-app-root .wcab-staff-login h3{
  color: var(--wcab-v2-ink) !important;
  font-weight: 600 !important;
  letter-spacing: -.018em;
}

.wcab-app-root.wcab-dashboard-panel strong, .wcab-app-root .wcab-dashboard-panel strong,
.wcab-app-root.wcab-career-wrap strong, .wcab-app-root .wcab-career-wrap strong,
.wcab-app-root.wcab-open-positions-wrap strong, .wcab-app-root .wcab-open-positions-wrap strong,
.wcab-app-root.wcab-hr-modal-card strong, .wcab-app-root .wcab-hr-modal-card strong{
  font-weight: 600;
}

.wcab-app-root.wcab-dashboard-panel p, .wcab-app-root .wcab-dashboard-panel p,
.wcab-app-root.wcab-dashboard-panel small, .wcab-app-root .wcab-dashboard-panel small,
.wcab-app-root.wcab-career-wrap p, .wcab-app-root .wcab-career-wrap p,
.wcab-app-root.wcab-career-wrap small, .wcab-app-root .wcab-career-wrap small,
.wcab-app-root.wcab-open-positions-wrap p, .wcab-app-root .wcab-open-positions-wrap p,
.wcab-app-root.wcab-open-positions-wrap small, .wcab-app-root .wcab-open-positions-wrap small{
  color: var(--wcab-v2-copy);
  font-weight: 400;
}

/* ---------- Shared dashboard shell ---------- */
.wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel{
  width: min(100%, 1600px);
  max-width: 1600px;
  box-sizing: border-box;
  margin: 24px auto;
  padding: 30px;
  border: 1px solid var(--wcab-v2-line);
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 0%, rgba(91,69,245,.055), transparent 25%),
    linear-gradient(180deg, #fff 0%, #fdfdff 100%);
  box-shadow: 0 16px 50px rgba(38, 52, 82, .08);
  overflow: visible;
}

.wcab-app-root.wcab-dashboard-brand, .wcab-app-root .wcab-dashboard-brand{
  min-height: 58px;
  gap: 13px;
  margin: 0 0 22px;
}

.wcab-app-root.wcab-dashboard-brand-logo, .wcab-app-root .wcab-dashboard-brand-logo{
  max-width: 220px;
  filter: drop-shadow(0 4px 10px rgba(31, 43, 68, .05));
}

.wcab-app-root.wcab-dashboard-brand-name, .wcab-app-root .wcab-dashboard-brand-name{
  color: var(--wcab-v2-ink);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .015em;
  text-transform: none;
}

.wcab-app-root.wcab-dashboard-head, .wcab-app-root .wcab-dashboard-head{
  align-items: center;
  gap: 24px;
  margin-bottom: 24px;
  padding-bottom: 22px;
  border-bottom-color: var(--wcab-v2-line);
}

.wcab-app-root.wcab-dashboard-head-identity, .wcab-app-root .wcab-dashboard-head-identity{
  gap: 16px;
  min-width: 280px;
}

.wcab-app-root.wcab-current-staff-avatar, .wcab-app-root .wcab-current-staff-avatar{
  width: 64px;
  height: 64px;
  border: 3px solid #fff;
  background: linear-gradient(135deg, #7762ff, #4b36df);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  box-shadow: 0 8px 22px rgba(73, 55, 218, .20), 0 0 0 1px var(--wcab-v2-line);
}

.wcab-app-root.wcab-dashboard-head h3, .wcab-app-root .wcab-dashboard-head h3,
.wcab-app-root.wcab-dashboard-head .wcab-dashboard-main-heading, .wcab-app-root .wcab-dashboard-head .wcab-dashboard-main-heading{
  margin: 0 0 5px;
  color: var(--wcab-v2-ink) !important;
  font-size: clamp(27px, 2vw, 34px);
  line-height: 1.15;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-dashboard-welcome, .wcab-app-root .wcab-dashboard-welcome{
  margin: 0 0 3px !important;
  color: var(--wcab-v2-copy) !important;
  font-size: 14px !important;
}

.wcab-app-root.wcab-dashboard-welcome > span, .wcab-app-root .wcab-dashboard-welcome > span{
  color: var(--wcab-v2-primary);
  font-weight: 600;
}

.wcab-app-root.wcab-dashboard-role, .wcab-app-root .wcab-dashboard-role{
  color: var(--wcab-v2-muted) !important;
  font-size: 13px !important;
}

.wcab-app-root.wcab-dashboard-role > span, .wcab-app-root .wcab-dashboard-role > span{
  color: var(--wcab-v2-copy);
  font-weight: 500;
}

/* ---------- Header controls ---------- */
.wcab-app-root.wcab-dashboard-actions, .wcab-app-root .wcab-dashboard-actions{
  justify-content: flex-end;
  gap: 10px;
}

.wcab-app-root.wcab-refresh-btn, .wcab-app-root .wcab-refresh-btn,
.wcab-app-root.wcab-clear-btn, .wcab-app-root .wcab-clear-btn,
.wcab-app-root.wcab-filter-btn, .wcab-app-root .wcab-filter-btn,
.wcab-app-root.wcab-hr-report-btn, .wcab-app-root .wcab-hr-report-btn,
.wcab-app-root.wcab-hr-cancel-btn, .wcab-app-root .wcab-hr-cancel-btn,
.wcab-app-root.wcab-career-submit, .wcab-app-root .wcab-career-submit,
.wcab-app-root.wcab-open-position-apply, .wcab-app-root .wcab-open-position-apply{
  font-weight: 600 !important;
  letter-spacing: 0;
}

.wcab-app-root.wcab-refresh-btn, .wcab-app-root .wcab-refresh-btn,
.wcab-app-root.wcab-refresh-btn:visited, .wcab-app-root .wcab-refresh-btn:visited,
.wcab-app-root.wcab-refresh-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-refresh-btn:not(:hover):not(:focus-visible){
  min-height: 46px;
  padding: 10px 18px;
  border: 1px solid #dfe4ef;
  border-radius: 12px;
  background: #fff !important;
  color: #5643e8 !important;
  box-shadow: 0 4px 12px rgba(42, 55, 84, .035);
}

.wcab-app-root.wcab-refresh-btn:hover, .wcab-app-root .wcab-refresh-btn:hover,
.wcab-app-root.wcab-refresh-btn:focus-visible, .wcab-app-root .wcab-refresh-btn:focus-visible{
  border-color: #cfc8ff;
  background: var(--wcab-v2-primary-soft) !important;
  color: var(--wcab-v2-primary-dark) !important;
  box-shadow: 0 8px 20px rgba(91,69,245,.10) !important;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-management-btn, .wcab-app-root .wcab-hr-management-btn,
.wcab-app-root.wcab-hr-management-btn:visited, .wcab-app-root .wcab-hr-management-btn:visited,
.wcab-app-root.wcab-hr-management-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-management-btn:not(:hover):not(:focus-visible){
  border-color: #cdebdc !important;
  background: #fbfffd !important;
  color: #178a52 !important;
}

.wcab-app-root.wcab-hr-management-btn:hover, .wcab-app-root .wcab-hr-management-btn:hover,
.wcab-app-root.wcab-hr-management-btn:focus-visible, .wcab-app-root .wcab-hr-management-btn:focus-visible{
  border-color: #a9dec4 !important;
  background: var(--wcab-v2-green-soft) !important;
  color: #117844 !important;
  box-shadow: 0 8px 20px rgba(34,168,102,.10) !important;
}

.wcab-app-root.wcab-clear-btn, .wcab-app-root .wcab-clear-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-clear-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-dashboard-actions .wcab-clear-btn:not(:hover):not(:focus-visible){
  min-height: 46px;
  padding: 10px 18px;
  border: 1px solid #ffd5da;
  border-radius: 12px;
  background: #fffafa;
  color: #e33a49 !important;
  box-shadow: none;
}

.wcab-app-root.wcab-clear-btn:hover, .wcab-app-root .wcab-clear-btn:hover,
.wcab-app-root.wcab-clear-btn:focus-visible, .wcab-app-root .wcab-clear-btn:focus-visible{
  background: var(--wcab-v2-red-soft);
  border-color: #ffc4cb;
  color: #d62e3f !important;
}

.wcab-app-root.wcab-notify-bell, .wcab-app-root .wcab-notify-bell{
  width: 48px;
  height: 48px;
  border: 1px solid var(--wcab-v2-line);
  background: #fff;
  color: #52617a;
  box-shadow: 0 4px 12px rgba(42, 55, 84, .035);
}

.wcab-app-root.wcab-notify-bell:hover, .wcab-app-root .wcab-notify-bell:hover{
  border-color: #d7d0ff;
  background: var(--wcab-v2-primary-soft);
  color: var(--wcab-v2-primary);
}

/* ---------- Modern workforce statistic cards ---------- */
.wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{
  grid-template-columns: repeat(7, minmax(145px, 1fr));
  gap: 16px;
  margin: 22px 0 24px;
}

.wcab-app-root.wcab-stat-card, .wcab-app-root .wcab-stat-card{
  --wcab-stat-accent: var(--wcab-v2-primary);
  --wcab-stat-soft: var(--wcab-v2-primary-soft);
  min-height: 188px;
  padding: 20px;
  border: 1px solid var(--wcab-v2-line);
  border-radius: 17px;
  background: #fff;
  box-shadow: var(--wcab-v2-shadow);
  isolation: isolate;
}

.wcab-app-root.wcab-stat-card::after, .wcab-app-root .wcab-stat-card::after{
  content: "";
  position: absolute;
  right: -28px;
  top: -30px;
  z-index: -1;
  width: 105px;
  height: 105px;
  border-radius: 50%;
  background: var(--wcab-stat-soft);
  opacity: .48;
}

.wcab-app-root.wcab-stat-card:hover, .wcab-app-root .wcab-stat-card:hover{
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--wcab-stat-accent) 25%, var(--wcab-v2-line));
  box-shadow: var(--wcab-v2-shadow-hover);
}

.wcab-app-root.wcab-stat-card.wcab-stat-active, .wcab-app-root .wcab-stat-card.wcab-stat-active{
  border: 1.5px solid var(--wcab-stat-accent);
  background: #fff;
  box-shadow: 0 13px 34px color-mix(in srgb, var(--wcab-stat-accent) 14%, transparent);
}

.wcab-app-root.wcab-stat-icon, .wcab-app-root .wcab-stat-icon{
  width: 46px;
  height: 46px;
  margin: 0 0 17px;
  border-radius: 13px;
  background: var(--wcab-stat-soft) !important;
  color: var(--wcab-stat-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
}

.wcab-app-root.wcab-stat-icon svg, .wcab-app-root .wcab-stat-icon svg{
  width: 23px;
  height: 23px;
  stroke-width: 2;
}

.wcab-app-root.wcab-stat-label, .wcab-app-root .wcab-stat-label{
  min-height: 30px;
  margin: 0 0 8px;
  color: var(--wcab-v2-copy);
  font-size: 11.5px;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.wcab-app-root.wcab-stat-card strong, .wcab-app-root .wcab-stat-card strong{
  margin: auto 0 7px;
  color: var(--wcab-v2-ink) !important;
  font-size: 34px;
  line-height: 1;
  font-weight: 600;
}

.wcab-app-root.wcab-stat-caption, .wcab-app-root .wcab-stat-caption{
  color: var(--wcab-v2-muted);
  font-size: 12px;
  line-height: 1.4;
  font-weight: 400;
}

.wcab-app-root.wcab-stat-total, .wcab-app-root .wcab-stat-total{ --wcab-stat-accent: #7a62f5; --wcab-stat-soft: #eeeaff; }
.wcab-app-root.wcab-stat-pending, .wcab-app-root .wcab-stat-pending{ --wcab-stat-accent: #eb8b12; --wcab-stat-soft: #fff2df; }
.wcab-app-root.wcab-stat-approved, .wcab-app-root .wcab-stat-approved{ --wcab-stat-accent: #23ae61; --wcab-stat-soft: #e8f8ee; }
.wcab-app-root.wcab-stat-cancelled, .wcab-app-root .wcab-stat-cancelled{ --wcab-stat-accent: #ef4b57; --wcab-stat-soft: #ffebed; }
.wcab-app-root.wcab-stat-postponed, .wcab-app-root .wcab-stat-postponed{ --wcab-stat-accent: #f2871c; --wcab-stat-soft: #fff0e5; }
.wcab-app-root.wcab-stat-pending_payment, .wcab-app-root .wcab-stat-pending_payment{ --wcab-stat-accent: #7549ec; --wcab-stat-soft: #f0e8ff; }
.wcab-app-root.wcab-stat-rescheduled, .wcab-app-root .wcab-stat-rescheduled{ --wcab-stat-accent: #31a9c7; --wcab-stat-soft: #e7f7fb; }

/* ---------- Filter workspace ---------- */
.wcab-app-root.wcab-filter-form, .wcab-app-root .wcab-filter-form{
  gap: 15px;
  margin: 0 0 20px;
  padding: 20px;
  border: 1px solid var(--wcab-v2-line);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(39,53,83,.045);
}

.wcab-app-root.wcab-filter-form label, .wcab-app-root .wcab-filter-form label{
  margin-bottom: 7px;
  color: #687791;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .045em;
}

.wcab-app-root.wcab-filter-form input, .wcab-app-root .wcab-filter-form input,
.wcab-app-root.wcab-filter-form select, .wcab-app-root .wcab-filter-form select,
.wcab-app-root.wcab-staff-filter-toggle, .wcab-app-root .wcab-staff-filter-toggle{
  min-height: 46px;
  border: 1px solid #dde4ee !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #35435c;
  font-size: 13px;
  font-weight: 400;
  box-shadow: none !important;
}

.wcab-app-root.wcab-filter-form input::placeholder, .wcab-app-root .wcab-filter-form input::placeholder{
  color: #98a4b7;
}

.wcab-app-root.wcab-filter-form input:focus, .wcab-app-root .wcab-filter-form input:focus,
.wcab-app-root.wcab-filter-form select:focus, .wcab-app-root .wcab-filter-form select:focus,
.wcab-app-root.wcab-staff-filter-toggle:focus, .wcab-app-root .wcab-staff-filter-toggle:focus{
  border-color: #a99cff !important;
  box-shadow: 0 0 0 4px rgba(91,69,245,.09) !important;
}

.wcab-app-root.wcab-filter-btn, .wcab-app-root .wcab-filter-btn{
  min-height: 46px;
  border-radius: 11px;
  background: linear-gradient(135deg, #654ff8, #4d37df);
  box-shadow: 0 9px 20px rgba(82,61,225,.20);
}

/* ---------- Professional dashboard tables ---------- */
.wcab-app-root.wcab-dashboard-panel > .wcab-table-wrap, .wcab-app-root .wcab-dashboard-panel > .wcab-table-wrap,
.wcab-app-root.wcab-dashboard-panel .wcab-table-container, .wcab-app-root .wcab-dashboard-panel .wcab-table-container,
.wcab-app-root.wcab-hr-card .wcab-table-wrap, .wcab-app-root .wcab-hr-card .wcab-table-wrap{
  border: 1px solid var(--wcab-v2-line);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(39,53,83,.04);
}

.wcab-app-root.wcab-dashboard-panel .wcab-table, .wcab-app-root .wcab-dashboard-panel .wcab-table,
.wcab-app-root.wcab-hr-panel .wcab-table, .wcab-app-root .wcab-hr-panel .wcab-table{
  border-collapse: separate;
  border-spacing: 0;
  color: #42516b;
  background: #fff;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table th, .wcab-app-root .wcab-dashboard-panel .wcab-table th,
.wcab-app-root.wcab-hr-panel .wcab-table th, .wcab-app-root .wcab-hr-panel .wcab-table th{
  padding-top: 14px;
  padding-bottom: 14px;
  border-color: var(--wcab-v2-line);
  background: #fbfcfe;
  color: #5d6c85;
  font-size: 10.5px;
  line-height: 1.35;
  font-weight: 600 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table th:first-child, .wcab-app-root .wcab-dashboard-panel .wcab-table th:first-child,
.wcab-app-root.wcab-hr-panel .wcab-table th:first-child, .wcab-app-root .wcab-hr-panel .wcab-table th:first-child{
  border-top-left-radius: 16px;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table th:last-child, .wcab-app-root .wcab-dashboard-panel .wcab-table th:last-child,
.wcab-app-root.wcab-hr-panel .wcab-table th:last-child, .wcab-app-root .wcab-hr-panel .wcab-table th:last-child{
  border-top-right-radius: 16px;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table td, .wcab-app-root .wcab-dashboard-panel .wcab-table td,
.wcab-app-root.wcab-hr-panel .wcab-table td, .wcab-app-root .wcab-hr-panel .wcab-table td{
  padding-top: 14px;
  padding-bottom: 14px;
  border-color: #e9edf4;
  color: #46546c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 400;
  vertical-align: middle;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table tbody tr, .wcab-app-root .wcab-dashboard-panel .wcab-table tbody tr,
.wcab-app-root.wcab-hr-panel .wcab-table tbody tr, .wcab-app-root .wcab-hr-panel .wcab-table tbody tr{
  background: #fff;
  transition: background .15s ease, box-shadow .15s ease;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table tbody tr:nth-child(even), .wcab-app-root .wcab-dashboard-panel .wcab-table tbody tr:nth-child(even),
.wcab-app-root.wcab-hr-panel .wcab-table tbody tr:nth-child(even), .wcab-app-root .wcab-hr-panel .wcab-table tbody tr:nth-child(even){
  background: #fcfdff;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table tbody tr:hover, .wcab-app-root .wcab-dashboard-panel .wcab-table tbody tr:hover,
.wcab-app-root.wcab-hr-panel .wcab-table tbody tr:hover, .wcab-app-root .wcab-hr-panel .wcab-table tbody tr:hover{
  background: #f8f7ff;
}

.wcab-app-root.wcab-sort-link, .wcab-app-root .wcab-sort-link{
  color: #5d6c85;
  font-weight: 600;
}

.wcab-app-root.wcab-sort-link:hover, .wcab-app-root .wcab-sort-link:hover{
  color: var(--wcab-v2-primary);
}

.wcab-app-root.wcab-status-badge, .wcab-app-root .wcab-status-badge{
  padding: 5px 9px;
  border: 0;
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .025em;
  box-shadow: none;
}

.wcab-app-root.wcab-action-icon-btn, .wcab-app-root .wcab-action-icon-btn{
  width: 42px;
  height: 42px;
  border-radius: 11px;
  box-shadow: 0 7px 18px rgba(77,55,223,.18);
}

.wcab-app-root.wcab-action-open-btn, .wcab-app-root .wcab-action-open-btn{
  background: linear-gradient(135deg, #6550f8, #4b36de);
}

.wcab-app-root.wcab-action-open-btn:hover, .wcab-app-root .wcab-action-open-btn:hover,
.wcab-app-root.wcab-action-open-btn:focus-visible, .wcab-app-root .wcab-action-open-btn:focus-visible{
  background: linear-gradient(135deg, #5741e8, #3e2bc8);
  box-shadow: 0 11px 25px rgba(77,55,223,.28);
}

.wcab-app-root.wcab-pagination-info, .wcab-app-root .wcab-pagination-info,
.wcab-app-root.wcab-dashboard-note, .wcab-app-root .wcab-dashboard-note,
.wcab-app-root.wcab-dashboard-powered-by, .wcab-app-root .wcab-dashboard-powered-by{
  color: var(--wcab-v2-muted) !important;
  font-size: 12px;
  font-weight: 400;
}

.wcab-app-root.wcab-pagination-btn, .wcab-app-root .wcab-pagination-btn,
.wcab-app-root.wcab-pagination-page, .wcab-app-root .wcab-pagination-page{
  border-color: var(--wcab-v2-line);
  border-radius: 10px;
  color: #596984;
  font-weight: 500;
}

/* ---------- HR dashboard ---------- */
.wcab-app-root.wcab-hr-panel, .wcab-app-root .wcab-hr-panel{
  background:
    radial-gradient(circle at 92% 0%, rgba(91,69,245,.055), transparent 25%),
    linear-gradient(180deg, #fff 0%, #fcfdff 100%);
}

.wcab-app-root.wcab-hr-brand, .wcab-app-root .wcab-hr-brand{
  margin-bottom: 20px;
}

.wcab-app-root.wcab-hr-head, .wcab-app-root .wcab-hr-head{
  align-items: center;
}

.wcab-app-root.wcab-hr-identity, .wcab-app-root .wcab-hr-identity{
  align-items: center;
}

.wcab-app-root.wcab-hr-eyebrow, .wcab-app-root .wcab-hr-eyebrow,
.wcab-app-root.wcab-career-kicker, .wcab-app-root .wcab-career-kicker,
.wcab-app-root.wcab-open-positions-kicker, .wcab-app-root .wcab-open-positions-kicker{
  color: var(--wcab-v2-primary);
  font-size: 11px;
  font-weight: 600 !important;
  letter-spacing: .12em;
}

.wcab-app-root.wcab-hr-heading-copy .wcab-dashboard-role, .wcab-app-root .wcab-hr-heading-copy .wcab-dashboard-role{
  margin-top: 2px !important;
}

.wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{
  max-width: none;
  justify-content: flex-end;
}

.wcab-app-root.wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-btn{
  min-height: 46px;
}

.wcab-app-root.wcab-hr-add-trigger, .wcab-app-root .wcab-hr-add-trigger,
.wcab-app-root.wcab-hr-add-trigger:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-add-trigger:not(:hover):not(:focus-visible){
  border-color: transparent !important;
  background: linear-gradient(135deg, #6550f8, #4b36df) !important;
  color: #fff !important;
  box-shadow: 0 9px 20px rgba(82,61,225,.20) !important;
}

.wcab-app-root.wcab-hr-add-trigger:hover, .wcab-app-root .wcab-hr-add-trigger:hover,
.wcab-app-root.wcab-hr-add-trigger:focus-visible, .wcab-app-root .wcab-hr-add-trigger:focus-visible{
  border-color: transparent !important;
  background: linear-gradient(135deg, #5842e7, #3f2cca) !important;
  color: #fff !important;
}

.wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap: 16px;
  margin: 22px 0 24px;
}

.wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{
  --wcab-hr-accent: var(--wcab-v2-primary);
  --wcab-hr-soft: var(--wcab-v2-primary-soft);
  position: relative;
  min-height: 174px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  padding: 20px;
  border: 1px solid var(--wcab-v2-line);
  border-radius: 17px;
  background: #fff;
  box-shadow: var(--wcab-v2-shadow);
  overflow: hidden;
}

.wcab-app-root.wcab-hr-summary-card::after, .wcab-app-root .wcab-hr-summary-card::after{
  content: "";
  position: absolute;
  right: -30px;
  top: -32px;
  width: 105px;
  height: 105px;
  border-radius: 50%;
  background: var(--wcab-hr-soft);
  opacity: .50;
}

.wcab-app-root.wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-icon{
  position: relative;
  z-index: 1;
  width: 46px;
  height: 46px;
  margin: 0 0 16px;
  border-radius: 13px;
  background: var(--wcab-hr-soft) !important;
  color: var(--wcab-hr-accent) !important;
}

.wcab-app-root.wcab-hr-summary-icon svg, .wcab-app-root .wcab-hr-summary-icon svg{
  width: 23px;
  height: 23px;
}

.wcab-app-root.wcab-hr-summary-copy, .wcab-app-root .wcab-hr-summary-copy{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.wcab-app-root.wcab-hr-summary-copy small, .wcab-app-root .wcab-hr-summary-copy small{
  min-height: 28px;
  color: var(--wcab-v2-copy);
  font-size: 11.5px;
  line-height: 1.3;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .035em;
}

.wcab-app-root.wcab-hr-summary-copy strong, .wcab-app-root .wcab-hr-summary-copy strong{
  margin: 5px 0 7px;
  color: var(--wcab-v2-ink) !important;
  font-size: 34px;
  line-height: 1;
  font-weight: 600;
}

.wcab-app-root.wcab-hr-summary-copy > span, .wcab-app-root .wcab-hr-summary-copy > span{
  color: var(--wcab-v2-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 400;
}

.wcab-app-root.wcab-hr-summary-purple, .wcab-app-root .wcab-hr-summary-purple{ --wcab-hr-accent: #745cf4; --wcab-hr-soft: #eeeaff; }
.wcab-app-root.wcab-hr-summary-green, .wcab-app-root .wcab-hr-summary-green{ --wcab-hr-accent: #22a866; --wcab-hr-soft: #e8f8ef; }
.wcab-app-root.wcab-hr-summary-indigo, .wcab-app-root .wcab-hr-summary-indigo{ --wcab-hr-accent: #5545dc; --wcab-hr-soft: #edeaff; }
.wcab-app-root.wcab-hr-summary-cyan, .wcab-app-root .wcab-hr-summary-cyan{ --wcab-hr-accent: #21a8c8; --wcab-hr-soft: #e6f7fb; }
.wcab-app-root.wcab-hr-summary-blue, .wcab-app-root .wcab-hr-summary-blue{ --wcab-hr-accent: #4779ed; --wcab-hr-soft: #edf3ff; }
.wcab-app-root.wcab-hr-summary-teal, .wcab-app-root .wcab-hr-summary-teal{ --wcab-hr-accent: #1c9fb0; --wcab-hr-soft: #e7f7f8; }

.wcab-app-root.wcab-hr-card, .wcab-app-root .wcab-hr-card{
  border: 1px solid var(--wcab-v2-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(39,53,83,.055);
}

.wcab-app-root.wcab-hr-performance-card, .wcab-app-root .wcab-hr-performance-card,
.wcab-app-root.wcab-hr-applications-card, .wcab-app-root .wcab-hr-applications-card{
  padding: 22px;
}

.wcab-app-root.wcab-hr-section-head, .wcab-app-root .wcab-hr-section-head{
  margin-bottom: 18px;
}

.wcab-app-root.wcab-hr-card-title h4, .wcab-app-root .wcab-hr-card-title h4{
  color: var(--wcab-v2-ink) !important;
  font-size: 20px;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-hr-title-icon, .wcab-app-root .wcab-hr-title-icon{
  color: var(--wcab-v2-primary);
}

.wcab-app-root.wcab-hr-section-note, .wcab-app-root .wcab-hr-section-note{
  color: var(--wcab-v2-muted);
  font-size: 11px;
  font-weight: 400;
}

.wcab-app-root.wcab-hr-report-btn, .wcab-app-root .wcab-hr-report-btn,
.wcab-app-root.wcab-hr-report-btn:visited, .wcab-app-root .wcab-hr-report-btn:visited{
  min-height: 40px;
  padding: 8px 13px;
  border-color: var(--wcab-v2-line);
  border-radius: 10px;
  color: #5643e8;
  font-size: 12px;
  font-weight: 600;
}

.wcab-app-root.wcab-hr-report-btn:hover, .wcab-app-root .wcab-hr-report-btn:hover{
  border-color: #cfc8ff;
  background: var(--wcab-v2-primary-soft);
  color: var(--wcab-v2-primary-dark);
}

.wcab-app-root.wcab-hr-table th, .wcab-app-root .wcab-hr-table th,
.wcab-app-root.wcab-hr-applications-table th, .wcab-app-root .wcab-hr-applications-table th{
  font-size: 10.5px;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-hr-table td, .wcab-app-root .wcab-hr-table td,
.wcab-app-root.wcab-hr-applications-table td, .wcab-app-root .wcab-hr-applications-table td{
  color: #4c5a72;
  font-size: 12px;
  font-weight: 400;
}

.wcab-app-root.wcab-hr-person strong, .wcab-app-root .wcab-hr-person strong{
  color: #26344d !important;
  font-size: 12.5px;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-hr-person small, .wcab-app-root .wcab-hr-person small{
  color: var(--wcab-v2-muted);
  font-size: 10.5px;
  font-weight: 400;
}

.wcab-app-root.wcab-hr-status, .wcab-app-root .wcab-hr-status{
  padding: 5px 10px;
  border-width: 1px;
  font-size: 10px;
  font-weight: 500;
}

.wcab-app-root.wcab-hr-number-approved, .wcab-app-root .wcab-hr-number-approved,
.wcab-app-root.wcab-hr-number-pending, .wcab-app-root .wcab-hr-number-pending,
.wcab-app-root.wcab-hr-number-cancelled, .wcab-app-root .wcab-hr-number-cancelled,
.wcab-app-root.wcab-hr-number-rescheduled, .wcab-app-root .wcab-hr-number-rescheduled,
.wcab-app-root.wcab-hr-number-paid, .wcab-app-root .wcab-hr-number-paid,
.wcab-app-root.wcab-hr-progress strong, .wcab-app-root .wcab-hr-progress strong,
.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong{
  font-weight: 600 !important;
}

.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong{
  color: #34425a !important;
}

.wcab-app-root.wcab-hr-last-booking small, .wcab-app-root .wcab-hr-last-booking small{
  color: var(--wcab-v2-muted);
  font-weight: 400;
}

.wcab-app-root.wcab-hr-progress-track, .wcab-app-root .wcab-hr-progress-track{
  height: 8px;
  border-radius: 999px;
  background: #e9edf5;
}

.wcab-app-root.wcab-hr-progress-track span, .wcab-app-root .wcab-hr-progress-track span{
  border-radius: 999px;
  background: linear-gradient(90deg, #7058f6, #5640e7);
}

.wcab-app-root.wcab-hr-edit-btn, .wcab-app-root .wcab-hr-edit-btn,
.wcab-app-root.wcab-hr-delete-btn, .wcab-app-root .wcab-hr-delete-btn{
  width: 38px;
  height: 38px;
  border-radius: 10px;
  box-shadow: none;
}

.wcab-app-root.wcab-hr-edit-btn, .wcab-app-root .wcab-hr-edit-btn{
  background: linear-gradient(135deg, #6550f8, #4b36df);
  box-shadow: 0 7px 16px rgba(77,55,223,.18);
}

.wcab-app-root.wcab-hr-delete-btn, .wcab-app-root .wcab-hr-delete-btn{
  background: #f04452;
  box-shadow: 0 7px 16px rgba(240,68,82,.16);
}

.wcab-app-root.wcab-hr-current-label, .wcab-app-root .wcab-hr-current-label{
  border-radius: 9px;
  font-weight: 500;
}

.wcab-app-root.wcab-hr-definition, .wcab-app-root .wcab-hr-definition{
  color: var(--wcab-v2-muted);
  font-size: 11px;
  font-weight: 400;
}

/* ---------- Staff modal ---------- */
.wcab-app-root.wcab-hr-modal-backdrop, .wcab-app-root .wcab-hr-modal-backdrop{
  background: rgba(26,35,55,.54);
  backdrop-filter: blur(7px);
}

.wcab-app-root.wcab-hr-modal-card, .wcab-app-root .wcab-hr-modal-card{
  border-color: var(--wcab-v2-line);
  border-radius: 20px;
  box-shadow: 0 34px 90px rgba(24,34,55,.26);
}

.wcab-app-root.wcab-hr-modal-head h4, .wcab-app-root .wcab-hr-modal-head h4{
  color: var(--wcab-v2-ink);
  font-size: 24px;
  font-weight: 600;
}

.wcab-app-root.wcab-hr-avatar-field, .wcab-app-root .wcab-hr-avatar-field{
  border-color: var(--wcab-v2-line);
  background: #fafbfe;
}

.wcab-app-root.wcab-hr-avatar-field strong, .wcab-app-root .wcab-hr-avatar-field strong{
  color: #324059;
  font-weight: 600;
}

.wcab-app-root.wcab-hr-modal-card .wcab-hr-field > label, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field > label,
.wcab-app-root.wcab-career-field label, .wcab-app-root .wcab-career-field label{
  color: #46556e;
  font-weight: 500;
}

.wcab-app-root.wcab-hr-modal-card .wcab-hr-field input, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field input,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field select, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field select,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field textarea, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field textarea,
.wcab-app-root.wcab-career-field input, .wcab-app-root .wcab-career-field input,
.wcab-app-root.wcab-career-field select, .wcab-app-root .wcab-career-field select,
.wcab-app-root.wcab-career-field textarea, .wcab-app-root .wcab-career-field textarea{
  border: 1px solid #dfe5ef;
  border-radius: 10px;
  color: #35435c;
  font-weight: 400;
  box-shadow: none;
}

.wcab-app-root.wcab-hr-modal-card .wcab-hr-field input:focus, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field input:focus,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field select:focus, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field select:focus,
.wcab-app-root.wcab-hr-modal-card .wcab-hr-field textarea:focus, .wcab-app-root .wcab-hr-modal-card .wcab-hr-field textarea:focus,
.wcab-app-root.wcab-career-field input:focus, .wcab-app-root .wcab-career-field input:focus,
.wcab-app-root.wcab-career-field select:focus, .wcab-app-root .wcab-career-field select:focus,
.wcab-app-root.wcab-career-field textarea:focus, .wcab-app-root .wcab-career-field textarea:focus{
  border-color: #aa9cff;
  box-shadow: 0 0 0 4px rgba(91,69,245,.09);
}

.wcab-app-root.wcab-hr-cancel-btn, .wcab-app-root .wcab-hr-cancel-btn,
.wcab-app-root.wcab-hr-cancel-btn:visited, .wcab-app-root .wcab-hr-cancel-btn:visited{
  color: #5e6d84;
  font-weight: 500;
}

/* ---------- Login interface + Remember me ---------- */
.wcab-app-root.wcab-staff-login.wcab-dashboard-panel, .wcab-app-root .wcab-staff-login.wcab-dashboard-panel{
  width: min(100% - 32px, 500px);
  margin: 54px auto;
  padding: 32px;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(91,69,245,.10), transparent 32%),
    #fff;
  box-shadow: 0 24px 70px rgba(38,52,82,.13);
}

.wcab-app-root.wcab-staff-login .wcab-dashboard-head, .wcab-app-root .wcab-staff-login .wcab-dashboard-head{
  margin-bottom: 23px;
  padding-bottom: 19px;
}

.wcab-app-root.wcab-staff-login h3, .wcab-app-root .wcab-staff-login h3{
  font-size: 29px;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-staff-login .wcab-dashboard-head p, .wcab-app-root .wcab-staff-login .wcab-dashboard-head p{
  line-height: 1.6;
}

.wcab-app-root.wcab-login-form, .wcab-app-root .wcab-login-form{
  gap: 14px;
}

.wcab-app-root.wcab-login-form input[type="text"], .wcab-app-root .wcab-login-form input[type="text"],
.wcab-app-root.wcab-login-form input[type="password"], .wcab-app-root .wcab-login-form input[type="password"]{
  min-height: 50px;
  border: 1px solid #dde4ee;
  border-radius: 12px;
  color: #35435c;
  font-size: 14px;
  font-weight: 400;
}

.wcab-app-root.wcab-login-form input:focus, .wcab-app-root .wcab-login-form input:focus{
  border-color: #aa9cff;
  box-shadow: 0 0 0 4px rgba(91,69,245,.09);
}

.wcab-app-root.wcab-login-remember, .wcab-app-root .wcab-login-remember{
  display: inline-flex !important;
  align-items: center;
  gap: 9px;
  margin: 1px 0 3px !important;
  color: #5d6b82 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  cursor: pointer;
}

.wcab-app-root.wcab-login-remember input, .wcab-app-root .wcab-login-remember input{
  width: 17px !important;
  height: 17px !important;
  min-height: 0 !important;
  margin: 0;
  accent-color: var(--wcab-v2-primary);
}

.wcab-app-root.wcab-login-form .wcab-submit, .wcab-app-root .wcab-login-form .wcab-submit{
  min-height: 50px;
  border-radius: 12px;
  background: linear-gradient(135deg, #6550f8, #4934d9);
  font-size: 14px;
  font-weight: 600;
  box-shadow: 0 12px 26px rgba(77,55,223,.22);
}

.wcab-app-root.wcab-powered-by, .wcab-app-root .wcab-powered-by{
  color: var(--wcab-v2-muted) !important;
  font-size: 11.5px;
  font-weight: 400;
}

/* ---------- Career application form ---------- */
.wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap{
  width: min(100% - 32px, 940px);
  padding: 32px;
  border-color: var(--wcab-v2-line);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(91,69,245,.075), transparent 27%),
    #fff;
  box-shadow: 0 18px 52px rgba(38,52,82,.09);
}

.wcab-app-root.wcab-career-head h2, .wcab-app-root .wcab-career-head h2{
  color: var(--wcab-v2-ink);
  font-weight: 600;
}

.wcab-app-root.wcab-career-field label, .wcab-app-root .wcab-career-field label{
  font-size: 12.5px;
}

.wcab-app-root.wcab-career-submit, .wcab-app-root .wcab-career-submit{
  min-height: 49px;
  border-radius: 11px;
  background: linear-gradient(135deg, #6550f8, #4a35db);
  font-weight: 600;
}

/* ---------- Public Open Positions shortcode ---------- */
.wcab-app-root.wcab-open-positions-wrap, .wcab-app-root .wcab-open-positions-wrap{
  width: min(100% - 32px, 1180px);
  margin: 34px auto;
  color: var(--wcab-v2-copy);
}

.wcab-app-root.wcab-open-positions-head, .wcab-app-root .wcab-open-positions-head{
  max-width: 760px;
  margin: 0 0 25px;
}

.wcab-app-root.wcab-open-positions-head h2, .wcab-app-root .wcab-open-positions-head h2{
  margin: 7px 0 9px;
  font-size: clamp(29px, 4vw, 42px);
  line-height: 1.13;
}

.wcab-app-root.wcab-open-positions-head p, .wcab-app-root .wcab-open-positions-head p{
  margin: 0;
  color: var(--wcab-v2-copy);
  font-size: 15px;
  line-height: 1.65;
}

.wcab-app-root.wcab-open-positions-grid, .wcab-app-root .wcab-open-positions-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.wcab-app-root.wcab-open-position-card, .wcab-app-root .wcab-open-position-card{
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0,1fr);
  gap: 17px;
  min-height: 250px;
  padding: 23px;
  border: 1px solid var(--wcab-v2-line);
  border-radius: 19px;
  background:
    radial-gradient(circle at 100% 0%, rgba(91,69,245,.07), transparent 28%),
    #fff;
  box-shadow: var(--wcab-v2-shadow);
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.wcab-app-root.wcab-open-position-card:hover, .wcab-app-root .wcab-open-position-card:hover{
  transform: translateY(-3px);
  border-color: #d4ceff;
  box-shadow: var(--wcab-v2-shadow-hover);
}

.wcab-app-root.wcab-open-position-icon, .wcab-app-root .wcab-open-position-icon{
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: var(--wcab-v2-primary-soft);
  color: var(--wcab-v2-primary);
}

.wcab-app-root.wcab-open-position-icon svg, .wcab-app-root .wcab-open-position-icon svg{
  width: 25px;
  height: 25px;
}

.wcab-app-root.wcab-open-position-copy, .wcab-app-root .wcab-open-position-copy{
  min-width: 0;
  padding-right: 5px;
}

.wcab-app-root.wcab-open-position-badge, .wcab-app-root .wcab-open-position-badge{
  display: inline-flex;
  margin-bottom: 9px;
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--wcab-v2-green-soft);
  color: #168850;
  font-size: 10px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.wcab-app-root.wcab-open-position-card h3, .wcab-app-root .wcab-open-position-card h3{
  margin: 0 0 10px;
  color: var(--wcab-v2-ink);
  font-size: 21px;
  line-height: 1.25;
  font-weight: 600;
}

.wcab-app-root.wcab-open-position-description p, .wcab-app-root .wcab-open-position-description p{
  margin: 0 0 10px;
  color: var(--wcab-v2-copy);
  font-size: 13.5px;
  line-height: 1.65;
}

.wcab-app-root.wcab-open-position-apply, .wcab-app-root .wcab-open-position-apply,
.wcab-app-root.wcab-open-position-apply:visited, .wcab-app-root .wcab-open-position-apply:visited{
  grid-column: 1 / -1;
  align-self: end;
  justify-self: start;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 17px;
  border-radius: 11px;
  background: linear-gradient(135deg, #6550f8, #4b36df);
  color: #fff !important;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  box-shadow: 0 9px 20px rgba(77,55,223,.18);
  transition: transform .15s ease, box-shadow .15s ease;
}

.wcab-app-root.wcab-open-position-apply svg, .wcab-app-root .wcab-open-position-apply svg{
  width: 17px;
  height: 17px;
  transition: transform .15s ease;
}

.wcab-app-root.wcab-open-position-apply:hover, .wcab-app-root .wcab-open-position-apply:hover{
  transform: translateY(-1px);
  box-shadow: 0 13px 25px rgba(77,55,223,.24);
}

.wcab-app-root.wcab-open-position-apply:hover svg, .wcab-app-root .wcab-open-position-apply:hover svg{
  transform: translateX(3px);
}

.wcab-app-root.wcab-open-positions-empty, .wcab-app-root .wcab-open-positions-empty{
  padding: 46px 24px;
  border: 1px dashed #d8deea;
  border-radius: 19px;
  background: #fbfcfe;
  text-align: center;
}

.wcab-app-root.wcab-open-positions-empty-icon, .wcab-app-root .wcab-open-positions-empty-icon{
  width: 62px;
  height: 62px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  border-radius: 17px;
  background: var(--wcab-v2-primary-soft);
  color: var(--wcab-v2-primary);
}

.wcab-app-root.wcab-open-positions-empty-icon svg, .wcab-app-root .wcab-open-positions-empty-icon svg{
  width: 28px;
  height: 28px;
}

.wcab-app-root.wcab-open-positions-empty h3, .wcab-app-root .wcab-open-positions-empty h3{
  margin: 0 0 7px;
  font-size: 21px;
}

.wcab-app-root.wcab-open-positions-empty p, .wcab-app-root .wcab-open-positions-empty p{
  margin: 0;
}

/* ---------- Responsive system ---------- */
@media (max-width: 1450px) {
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid{ grid-template-columns: repeat(4, minmax(150px, 1fr)); }
  .wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{ grid-template-columns: repeat(3, minmax(160px, 1fr)); }
}

@media (max-width: 1080px) {
  .wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel{ padding: 23px; border-radius: 20px; }
  .wcab-app-root.wcab-dashboard-head, .wcab-app-root .wcab-dashboard-head{ align-items: flex-start; flex-direction: column; }
  .wcab-app-root.wcab-dashboard-actions, .wcab-app-root .wcab-dashboard-actions,
.wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{ width: 100%; justify-content: flex-start; }
  .wcab-app-root.wcab-open-positions-grid, .wcab-app-root .wcab-open-positions-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel{ width: calc(100% - 20px); margin: 10px auto; padding: 17px; border-radius: 17px; }
  .wcab-app-root.wcab-dashboard-brand, .wcab-app-root .wcab-dashboard-brand{ min-height: 0; margin-bottom: 16px; }
  .wcab-app-root.wcab-dashboard-brand-logo, .wcab-app-root .wcab-dashboard-brand-logo{ max-width: 170px; }
  .wcab-app-root.wcab-dashboard-head-identity, .wcab-app-root .wcab-dashboard-head-identity{ align-items: flex-start; min-width: 0; }
  .wcab-app-root.wcab-current-staff-avatar, .wcab-app-root .wcab-current-staff-avatar{ width: 54px; height: 54px; }
  .wcab-app-root.wcab-dashboard-head h3, .wcab-app-root .wcab-dashboard-head h3,
.wcab-app-root.wcab-dashboard-head .wcab-dashboard-main-heading, .wcab-app-root .wcab-dashboard-head .wcab-dashboard-main-heading{ font-size: 26px; }
  .wcab-app-root.wcab-dashboard-actions .wcab-refresh-btn, .wcab-app-root .wcab-dashboard-actions .wcab-refresh-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-clear-btn, .wcab-app-root .wcab-dashboard-actions .wcab-clear-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-notify-bell, .wcab-app-root .wcab-dashboard-actions .wcab-notify-bell{ flex: 1 1 auto; }
  .wcab-app-root.wcab-notify-bell, .wcab-app-root .wcab-notify-bell{ flex: 0 0 48px !important; }
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid,
.wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .wcab-app-root.wcab-stat-card, .wcab-app-root .wcab-stat-card,
.wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{ min-height: 165px; padding: 16px; }
  .wcab-app-root.wcab-stat-card strong, .wcab-app-root .wcab-stat-card strong,
.wcab-app-root.wcab-hr-summary-copy strong, .wcab-app-root .wcab-hr-summary-copy strong{ font-size: 30px; }
  .wcab-app-root.wcab-filter-form, .wcab-app-root .wcab-filter-form{ padding: 15px; }
  .wcab-app-root.wcab-filter-actions, .wcab-app-root .wcab-filter-actions{ width: 100%; margin-left: 0; }
  .wcab-app-root.wcab-filter-actions > *, .wcab-app-root .wcab-filter-actions > *{ flex: 1; }
  .wcab-app-root.wcab-hr-report-actions, .wcab-app-root .wcab-hr-report-actions{ width: 100%; justify-content: flex-start; }
  .wcab-app-root.wcab-open-position-card, .wcab-app-root .wcab-open-position-card{ grid-template-columns: 48px minmax(0,1fr); padding: 18px; }
  .wcab-app-root.wcab-open-position-icon, .wcab-app-root .wcab-open-position-icon{ width: 46px; height: 46px; }
}

@media (max-width: 480px) {
  .wcab-app-root.wcab-stats-grid, .wcab-app-root .wcab-stats-grid,
.wcab-app-root.wcab-hr-summary-grid, .wcab-app-root .wcab-hr-summary-grid{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-stat-card, .wcab-app-root .wcab-stat-card,
.wcab-app-root.wcab-hr-summary-card, .wcab-app-root .wcab-hr-summary-card{ min-height: 150px; }
  .wcab-app-root.wcab-dashboard-actions, .wcab-app-root .wcab-dashboard-actions{ display: grid; grid-template-columns: 1fr 1fr; }
  .wcab-app-root.wcab-dashboard-actions .wcab-notify-bell, .wcab-app-root .wcab-dashboard-actions .wcab-notify-bell{ grid-column: auto; justify-self: start; }
  .wcab-app-root.wcab-dashboard-actions .wcab-calendar-toggle-btn, .wcab-app-root .wcab-dashboard-actions .wcab-calendar-toggle-btn{ min-width: 0; }
  .wcab-app-root.wcab-open-position-card, .wcab-app-root .wcab-open-position-card{ grid-template-columns: 1fr; }
  .wcab-app-root.wcab-open-position-apply, .wcab-app-root .wcab-open-position-apply{ grid-column: 1; width: 100%; justify-content: center; box-sizing: border-box; }
  .wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap{ width: calc(100% - 20px); padding: 18px; }
}

@media print {
  .wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel,
.wcab-app-root.wcab-hr-card, .wcab-app-root .wcab-hr-card{
    box-shadow: none !important;
    background: #fff !important;
  }
}

/* Final alignment safeguards for legacy HR grid declarations. */
.wcab-app-root.wcab-hr-summary-icon, .wcab-app-root .wcab-hr-summary-icon{ align-self: flex-start; }
.wcab-app-root.wcab-hr-summary-copy, .wcab-app-root .wcab-hr-summary-copy{ align-self: stretch; }

/* Lighter typography pass across the booking and customer-facing widgets. */
.wcab-app-root.wcab-wrapper h2, .wcab-app-root .wcab-wrapper h2,
.wcab-app-root.wcab-wrapper h3, .wcab-app-root .wcab-wrapper h3,
.wcab-app-root.wcab-wrapper h4, .wcab-app-root .wcab-wrapper h4,
.wcab-app-root.wcab-customer-panel h2, .wcab-app-root .wcab-customer-panel h2,
.wcab-app-root.wcab-customer-panel h3, .wcab-app-root .wcab-customer-panel h3,
.wcab-app-root.wcab-booking-lookup h2, .wcab-app-root .wcab-booking-lookup h2,
.wcab-app-root.wcab-booking-lookup h3, .wcab-app-root .wcab-booking-lookup h3{
  color: var(--wcab-v2-ink) !important;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-wrapper label, .wcab-app-root .wcab-wrapper label,
.wcab-app-root.wcab-customer-panel label, .wcab-app-root .wcab-customer-panel label,
.wcab-app-root.wcab-booking-lookup label, .wcab-app-root .wcab-booking-lookup label,
.wcab-app-root.wcab-panel label, .wcab-app-root .wcab-panel label{
  color: #46556e;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-wrapper strong, .wcab-app-root .wcab-wrapper strong,
.wcab-app-root.wcab-customer-panel strong, .wcab-app-root .wcab-customer-panel strong,
.wcab-app-root.wcab-booking-lookup strong, .wcab-app-root .wcab-booking-lookup strong{
  color: #2c3a53;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-wrapper button, .wcab-app-root .wcab-wrapper button,
.wcab-app-root.wcab-wrapper .wcab-submit, .wcab-app-root .wcab-wrapper .wcab-submit,
.wcab-app-root.wcab-wrapper .wcab-next, .wcab-app-root .wcab-wrapper .wcab-next,
.wcab-app-root.wcab-wrapper .wcab-prev, .wcab-app-root .wcab-wrapper .wcab-prev,
.wcab-app-root.wcab-customer-panel button, .wcab-app-root .wcab-customer-panel button,
.wcab-app-root.wcab-booking-lookup button, .wcab-app-root .wcab-booking-lookup button{
  font-weight: 600 !important;
}

/* =========================================================
   WebCarry v2.0.1 — Professional UI refinement pass
   Softer Segoe UI typography, semantic controls, calendar,
   HR, applications, responsive action menus and booking flow.
========================================================= */

/* One type system throughout every public/plugin-owned surface. */
.wcab-app-root.wcab-wrapper, .wcab-app-root .wcab-wrapper,
.wcab-app-root.wcab-wrapper *, .wcab-app-root .wcab-wrapper *,
.wcab-app-root.wcab-dashboard-panel, .wcab-app-root .wcab-dashboard-panel,
.wcab-app-root.wcab-dashboard-panel *, .wcab-app-root .wcab-dashboard-panel *,
.wcab-app-root.wcab-staff-login, .wcab-app-root .wcab-staff-login,
.wcab-app-root.wcab-staff-login *, .wcab-app-root .wcab-staff-login *,
.wcab-app-root.wcab-booking-lookup, .wcab-app-root .wcab-booking-lookup,
.wcab-app-root.wcab-booking-lookup *, .wcab-app-root .wcab-booking-lookup *,
.wcab-app-root.wcab-customer-panel, .wcab-app-root .wcab-customer-panel,
.wcab-app-root.wcab-customer-panel *, .wcab-app-root .wcab-customer-panel *,
.wcab-app-root.wcab-career-wrap, .wcab-app-root .wcab-career-wrap,
.wcab-app-root.wcab-career-wrap *, .wcab-app-root .wcab-career-wrap *,
.wcab-app-root.wcab-open-positions-wrap, .wcab-app-root .wcab-open-positions-wrap,
.wcab-app-root.wcab-open-positions-wrap *, .wcab-app-root .wcab-open-positions-wrap *,
.wcab-app-root.wcab-mini-calendar-wrap, .wcab-app-root .wcab-mini-calendar-wrap,
.wcab-app-root.wcab-mini-calendar-wrap *, .wcab-app-root .wcab-mini-calendar-wrap *,
.wcab-app-root.wcab-day-appts-modal, .wcab-app-root .wcab-day-appts-modal,
.wcab-app-root.wcab-day-appts-modal *, .wcab-app-root .wcab-day-appts-modal *,
.wcab-app-root.wcab-action-modal, .wcab-app-root .wcab-action-modal,
.wcab-app-root.wcab-action-modal *, .wcab-app-root .wcab-action-modal *,
.wcab-app-root.wcab-reason-modal, .wcab-app-root .wcab-reason-modal,
.wcab-app-root.wcab-reason-modal *, .wcab-app-root .wcab-reason-modal *,
.wcab-app-root.wcab-confirmation-modal, .wcab-app-root .wcab-confirmation-modal,
.wcab-app-root.wcab-confirmation-modal *, .wcab-app-root .wcab-confirmation-modal *,
.wcab-app-root.wcab-success-modal, .wcab-app-root .wcab-success-modal,
.wcab-app-root.wcab-success-modal *, .wcab-app-root .wcab-success-modal *,
.wcab-app-root.wcab-hr-staff-modal, .wcab-app-root .wcab-hr-staff-modal,
.wcab-app-root.wcab-hr-staff-modal *, .wcab-app-root .wcab-hr-staff-modal *{
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
}

.wcab-app-root.wcab-admin-app,
.wcab-app-root.wcab-admin-app input,
.wcab-app-root.wcab-admin-app select,
.wcab-app-root.wcab-admin-app textarea,
.wcab-app-root.wcab-admin-app button,
.wcab-app-root.wcab-admin-app table{
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
}

/* Accent values now visually belong to their cards instead of looking black/heavy. */
.wcab-app-root.wcab-stat-card strong, .wcab-app-root .wcab-stat-card strong{
  color: var(--wcab-stat-accent) !important;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-hr-summary-copy strong, .wcab-app-root .wcab-hr-summary-copy strong{
  color: var(--wcab-hr-accent) !important;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-stat-label, .wcab-app-root .wcab-stat-label,
.wcab-app-root.wcab-hr-summary-copy small, .wcab-app-root .wcab-hr-summary-copy small{
  font-weight: 500 !important;
}

/* Softer table/copy hierarchy across Workforce and HR. */
.wcab-app-root.wcab-dashboard-panel .wcab-table td strong, .wcab-app-root .wcab-dashboard-panel .wcab-table td strong,
.wcab-app-root.wcab-hr-panel .wcab-table td strong, .wcab-app-root .wcab-hr-panel .wcab-table td strong,
.wcab-app-root.wcab-hr-applications-table td > strong, .wcab-app-root .wcab-hr-applications-table td > strong,
.wcab-app-root.wcab-hr-person strong, .wcab-app-root .wcab-hr-person strong,
.wcab-app-root.wcab-hr-last-booking strong, .wcab-app-root .wcab-hr-last-booking strong,
.wcab-app-root.wcab-hr-progress strong, .wcab-app-root .wcab-hr-progress strong,
.wcab-app-root.wcab-hr-number-approved, .wcab-app-root .wcab-hr-number-approved,
.wcab-app-root.wcab-hr-number-pending, .wcab-app-root .wcab-hr-number-pending,
.wcab-app-root.wcab-hr-number-cancelled, .wcab-app-root .wcab-hr-number-cancelled,
.wcab-app-root.wcab-hr-number-rescheduled, .wcab-app-root .wcab-hr-number-rescheduled,
.wcab-app-root.wcab-hr-number-paid, .wcab-app-root .wcab-hr-number-paid{
  font-weight: 500 !important;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table td, .wcab-app-root .wcab-dashboard-panel .wcab-table td,
.wcab-app-root.wcab-hr-panel .wcab-table td, .wcab-app-root .wcab-hr-panel .wcab-table td,
.wcab-app-root.wcab-dashboard-panel .wcab-table th, .wcab-app-root .wcab-dashboard-panel .wcab-table th,
.wcab-app-root.wcab-hr-panel .wcab-table th, .wcab-app-root .wcab-hr-panel .wcab-table th{
  color: #52617a;
}

.wcab-app-root.wcab-dashboard-panel .wcab-table th, .wcab-app-root .wcab-dashboard-panel .wcab-table th,
.wcab-app-root.wcab-hr-panel .wcab-table th, .wcab-app-root .wcab-hr-panel .wcab-table th{
  font-weight: 500 !important;
}

.wcab-app-root.wcab-label-chip, .wcab-app-root .wcab-label-chip,
.wcab-app-root.wcab-status-badge, .wcab-app-root .wcab-status-badge,
.wcab-app-root.wcab-gcal-link, .wcab-app-root .wcab-gcal-link,
.wcab-app-root.wcab-sort-link, .wcab-app-root .wcab-sort-link{
  font-weight: 500 !important;
}

/* Modern export controls: text and icon share the semantic color. */
.wcab-app-root.wcab-export-actions, .wcab-app-root .wcab-export-actions{
  gap: 12px;
}

.wcab-app-root.wcab-export-btn, .wcab-app-root .wcab-export-btn{
  min-height: 42px;
  padding: 9px 15px;
  border-width: 1px;
  border-radius: 11px;
  background: #fff;
  font-size: 12.5px;
  font-weight: 500 !important;
  box-shadow: 0 5px 14px rgba(39,53,83,.045);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
}

.wcab-app-root.wcab-export-pdf-btn, .wcab-app-root .wcab-export-pdf-btn{
  border-color: #ffd2d7;
  background: #fffafb;
  color: #dc3b49;
}

.wcab-app-root.wcab-export-excel-btn, .wcab-app-root .wcab-export-excel-btn{
  border-color: #ccebdc;
  background: #fbfffd;
  color: #178a52;
}

.wcab-app-root.wcab-export-pdf-btn:hover, .wcab-app-root .wcab-export-pdf-btn:hover,
.wcab-app-root.wcab-export-pdf-btn:focus-visible, .wcab-app-root .wcab-export-pdf-btn:focus-visible{
  border-color: #ffb9c1;
  background: #ffedef;
  color: #c92f3e;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(220,59,73,.12);
}

.wcab-app-root.wcab-export-excel-btn:hover, .wcab-app-root .wcab-export-excel-btn:hover,
.wcab-app-root.wcab-export-excel-btn:focus-visible, .wcab-app-root .wcab-export-excel-btn:focus-visible{
  border-color: #a9dec4;
  background: #eaf8f0;
  color: #117844;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(23,138,82,.12);
}

/* Bulk selection toolbar and controls. */
.wcab-app-root.wcab-bulk-toolbar, .wcab-app-root .wcab-bulk-toolbar{
  gap: 9px;
  padding: 12px 14px;
  border: 1px solid #d9d3ff;
  border-radius: 14px;
  background: linear-gradient(135deg, #f7f5ff, #f2f5ff);
  box-shadow: 0 7px 20px rgba(73,55,218,.06);
}

.wcab-app-root.wcab-bulk-count, .wcab-app-root .wcab-bulk-count{
  color: #4f3fd2;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-bulk-btn, .wcab-app-root .wcab-bulk-btn{
  min-height: 38px;
  padding: 8px 14px;
  border-width: 1px;
  border-color: #e0e5ee;
  border-radius: 999px;
  background: #fff;
  color: #596780;
  font-size: 12px;
  font-weight: 500 !important;
  box-shadow: 0 4px 12px rgba(39,53,83,.04);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}

.wcab-app-root.wcab-bulk-btn:hover, .wcab-app-root .wcab-bulk-btn:hover,
.wcab-app-root.wcab-bulk-btn:focus-visible, .wcab-app-root .wcab-bulk-btn:focus-visible{
  transform: translateY(-1px);
  border-color: #cbc4ff;
  background: #f0edff;
  color: #4b38dd;
  box-shadow: 0 8px 18px rgba(75,56,221,.10);
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_read"], .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_read"]{
  border-color: #cae9d9;
  color: #178a52;
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_read"]:hover, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_read"]:hover,
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_read"]:focus-visible, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_read"]:focus-visible{
  border-color: #a9dec4;
  background: #eaf8f0;
  color: #117844;
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_unread"], .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_unread"],
.wcab-app-root.wcab-bulk-label-toggle, .wcab-app-root .wcab-bulk-label-toggle{
  border-color: #d7d1ff;
  color: #5542df;
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_unread"]:hover, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_unread"]:hover,
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_unread"]:focus-visible, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_unread"]:focus-visible,
.wcab-app-root.wcab-bulk-label-toggle:hover, .wcab-app-root .wcab-bulk-label-toggle:hover,
.wcab-app-root.wcab-bulk-label-toggle:focus-visible, .wcab-app-root .wcab-bulk-label-toggle:focus-visible{
  border-color: #bdb3ff;
  background: #f0edff;
  color: #4432cc;
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="download"], .wcab-app-root .wcab-bulk-btn[data-bulk-action="download"]{
  border-color: #cddcff;
  color: #3568d8;
}

.wcab-app-root.wcab-bulk-btn[data-bulk-action="download"]:hover, .wcab-app-root .wcab-bulk-btn[data-bulk-action="download"]:hover,
.wcab-app-root.wcab-bulk-btn[data-bulk-action="download"]:focus-visible, .wcab-app-root .wcab-bulk-btn[data-bulk-action="download"]:focus-visible{
  border-color: #adc5ff;
  background: #edf3ff;
  color: #2857bc;
}

.wcab-app-root.wcab-bulk-btn-danger, .wcab-app-root .wcab-bulk-btn-danger{
  border-color: #ffd1d6 !important;
  background: #fffafb !important;
  color: #dc3b49 !important;
}

.wcab-app-root.wcab-bulk-btn-danger:hover, .wcab-app-root .wcab-bulk-btn-danger:hover,
.wcab-app-root.wcab-bulk-btn-danger:focus-visible, .wcab-app-root .wcab-bulk-btn-danger:focus-visible{
  border-color: #ffb7bf !important;
  background: #ffedef !important;
  color: #c92f3e !important;
}

/* Workforce action control: neutral modern vertical dots, same popup behaviour. */
.wcab-app-root.wcab-action-icon-btn, .wcab-app-root .wcab-action-icon-btn,
.wcab-app-root.wcab-action-open-btn, .wcab-app-root .wcab-action-open-btn,
.wcab-app-root.wcab-action-open-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-action-open-btn:not(:hover):not(:focus-visible){
  width: 42px;
  height: 42px;
  border: 1px solid #dfe5ee;
  border-radius: 12px;
  background: #fff !important;
  color: #596984 !important;
  box-shadow: 0 5px 14px rgba(39,53,83,.055) !important;
}

.wcab-app-root.wcab-action-open-btn:hover, .wcab-app-root .wcab-action-open-btn:hover,
.wcab-app-root.wcab-action-open-btn:focus-visible, .wcab-app-root .wcab-action-open-btn:focus-visible,
.wcab-app-root.wcab-action-open-btn[data-hover-effect]:hover, .wcab-app-root .wcab-action-open-btn[data-hover-effect]:hover,
.wcab-app-root.wcab-action-open-btn[data-hover-effect]:focus-visible, .wcab-app-root .wcab-action-open-btn[data-hover-effect]:focus-visible{
  border-color: #c8c0ff;
  background: #f0edff !important;
  color: #4b38dd !important;
  transform: translateY(-2px) !important;
  filter: none !important;
  animation: none !important;
  box-shadow: 0 11px 24px rgba(75,56,221,.14) !important;
}

.wcab-app-root.wcab-action-open-btn:active, .wcab-app-root .wcab-action-open-btn:active{
  transform: translateY(0) scale(.97) !important;
}

.wcab-app-root.wcab-action-kebab, .wcab-app-root .wcab-action-kebab{
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  width: 14px;
  height: 22px;
  pointer-events: none;
}

.wcab-app-root.wcab-action-kebab > span, .wcab-app-root .wcab-action-kebab > span{
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: currentColor;
}

/* HR header actions use semantic accent colors and consistent dimensions. */
.wcab-app-root.wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-btn,
.wcab-app-root.wcab-hr-top-btn:visited, .wcab-app-root .wcab-hr-top-btn:visited,
.wcab-app-root.wcab-hr-top-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-top-btn:not(:hover):not(:focus-visible){
  min-height: 46px;
  padding: 10px 16px;
  border-width: 1px !important;
  border-radius: 12px;
  background: #fff !important;
  font-size: 12.5px;
  font-weight: 500 !important;
  box-shadow: 0 5px 14px rgba(39,53,83,.045) !important;
}

.wcab-app-root.wcab-hr-bookings-btn, .wcab-app-root .wcab-hr-bookings-btn,
.wcab-app-root.wcab-hr-bookings-btn:visited, .wcab-app-root .wcab-hr-bookings-btn:visited,
.wcab-app-root.wcab-hr-bookings-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-bookings-btn:not(:hover):not(:focus-visible){
  border-color: #cddcff !important;
  color: #3568d8 !important;
}
.wcab-app-root.wcab-hr-bookings-btn:hover, .wcab-app-root .wcab-hr-bookings-btn:hover,
.wcab-app-root.wcab-hr-bookings-btn:focus-visible, .wcab-app-root .wcab-hr-bookings-btn:focus-visible{
  border-color: #adc5ff !important;
  background: #edf3ff !important;
  color: #2857bc !important;
}

.wcab-app-root.wcab-hr-refresh-btn, .wcab-app-root .wcab-hr-refresh-btn,
.wcab-app-root.wcab-hr-refresh-btn:visited, .wcab-app-root .wcab-hr-refresh-btn:visited,
.wcab-app-root.wcab-hr-refresh-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-refresh-btn:not(:hover):not(:focus-visible){
  border-color: #d7d1ff !important;
  color: #5542df !important;
}
.wcab-app-root.wcab-hr-refresh-btn:hover, .wcab-app-root .wcab-hr-refresh-btn:hover,
.wcab-app-root.wcab-hr-refresh-btn:focus-visible, .wcab-app-root .wcab-hr-refresh-btn:focus-visible{
  border-color: #bdb3ff !important;
  background: #f0edff !important;
  color: #4432cc !important;
}

.wcab-app-root.wcab-hr-add-trigger, .wcab-app-root .wcab-hr-add-trigger,
.wcab-app-root.wcab-hr-add-trigger:visited, .wcab-app-root .wcab-hr-add-trigger:visited,
.wcab-app-root.wcab-hr-add-trigger:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-add-trigger:not(:hover):not(:focus-visible){
  border-color: #cae9d9 !important;
  background: #fbfffd !important;
  color: #178a52 !important;
  box-shadow: 0 5px 14px rgba(23,138,82,.055) !important;
}
.wcab-app-root.wcab-hr-add-trigger:hover, .wcab-app-root .wcab-hr-add-trigger:hover,
.wcab-app-root.wcab-hr-add-trigger:focus-visible, .wcab-app-root .wcab-hr-add-trigger:focus-visible{
  border-color: #a9dec4 !important;
  background: #eaf8f0 !important;
  color: #117844 !important;
  box-shadow: 0 10px 22px rgba(23,138,82,.12) !important;
}

.wcab-app-root.wcab-hr-applications-btn, .wcab-app-root .wcab-hr-applications-btn,
.wcab-app-root.wcab-hr-applications-btn:visited, .wcab-app-root .wcab-hr-applications-btn:visited,
.wcab-app-root.wcab-hr-applications-btn:not(:hover):not(:focus-visible), .wcab-app-root .wcab-hr-applications-btn:not(:hover):not(:focus-visible){
  border-color: #c8e8ef !important;
  color: #1789a2 !important;
}
.wcab-app-root.wcab-hr-applications-btn:hover, .wcab-app-root .wcab-hr-applications-btn:hover,
.wcab-app-root.wcab-hr-applications-btn:focus-visible, .wcab-app-root .wcab-hr-applications-btn:focus-visible{
  border-color: #9fd7e2 !important;
  background: #e8f8fc !important;
  color: #0f748c !important;
}

.wcab-app-root.wcab-hr-top-btn:hover, .wcab-app-root .wcab-hr-top-btn:hover,
.wcab-app-root.wcab-hr-top-btn:focus-visible, .wcab-app-root .wcab-hr-top-btn:focus-visible{
  transform: translateY(-2px);
}

/* HR report controls. */
.wcab-app-root.wcab-hr-report-btn, .wcab-app-root .wcab-hr-report-btn,
.wcab-app-root.wcab-hr-report-btn:visited, .wcab-app-root .wcab-hr-report-btn:visited{
  font-weight: 500 !important;
  background: #fff;
  box-shadow: 0 4px 12px rgba(39,53,83,.04);
}

.wcab-app-root.wcab-hr-report-pdf, .wcab-app-root .wcab-hr-report-pdf,
.wcab-app-root.wcab-hr-report-pdf:visited, .wcab-app-root .wcab-hr-report-pdf:visited{
  border-color: #ffd2d7;
  color: #dc3b49;
}
.wcab-app-root.wcab-hr-report-pdf:hover, .wcab-app-root .wcab-hr-report-pdf:hover,
.wcab-app-root.wcab-hr-report-pdf:focus-visible, .wcab-app-root .wcab-hr-report-pdf:focus-visible{
  border-color: #ffb9c1;
  background: #ffedef;
  color: #c92f3e;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-report-print, .wcab-app-root .wcab-hr-report-print,
.wcab-app-root.wcab-hr-report-print:visited, .wcab-app-root .wcab-hr-report-print:visited{
  border-color: #cddcff;
  color: #3568d8;
}
.wcab-app-root.wcab-hr-report-print:hover, .wcab-app-root .wcab-hr-report-print:hover,
.wcab-app-root.wcab-hr-report-print:focus-visible, .wcab-app-root .wcab-hr-report-print:focus-visible{
  border-color: #adc5ff;
  background: #edf3ff;
  color: #2857bc;
  transform: translateY(-1px);
}

/* HR row actions: tinted at rest, solid only on hover. */
.wcab-app-root.wcab-hr-edit-btn, .wcab-app-root .wcab-hr-edit-btn,
.wcab-app-root.wcab-hr-edit-btn:visited, .wcab-app-root .wcab-hr-edit-btn:visited{
  border: 1px solid #d8d1ff;
  background: #f0edff;
  color: #5542df;
  box-shadow: none;
}

.wcab-app-root.wcab-hr-edit-btn:hover, .wcab-app-root .wcab-hr-edit-btn:hover,
.wcab-app-root.wcab-hr-edit-btn:focus-visible, .wcab-app-root .wcab-hr-edit-btn:focus-visible{
  border-color: #5542df;
  background: #5542df;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 9px 18px rgba(85,66,223,.18);
}

.wcab-app-root.wcab-hr-delete-btn, .wcab-app-root .wcab-hr-delete-btn{
  border: 1px solid #ffd2d7;
  background: #ffedef;
  color: #dc3b49;
  box-shadow: none;
}

.wcab-app-root.wcab-hr-delete-btn:hover, .wcab-app-root .wcab-hr-delete-btn:hover,
.wcab-app-root.wcab-hr-delete-btn:focus-visible, .wcab-app-root .wcab-hr-delete-btn:focus-visible{
  border-color: #dc3b49;
  background: #dc3b49;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 9px 18px rgba(220,59,73,.17);
}

/* Job Applications: lighter copy and modern semantic controls. */
.wcab-app-root.wcab-hr-applications-table td > strong, .wcab-app-root .wcab-hr-applications-table td > strong{
  color: #34425a !important;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-hr-resume-btn, .wcab-app-root .wcab-hr-resume-btn,
.wcab-app-root.wcab-hr-resume-btn:visited, .wcab-app-root .wcab-hr-resume-btn:visited{
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  padding: 7px 11px;
  border: 1px solid #d7d1ff;
  border-radius: 9px;
  background: #f7f5ff;
  color: #5542df;
  font-size: 11.5px;
  font-weight: 500 !important;
  box-shadow: 0 4px 11px rgba(75,56,221,.055);
}

.wcab-app-root.wcab-hr-resume-btn:hover, .wcab-app-root .wcab-hr-resume-btn:hover,
.wcab-app-root.wcab-hr-resume-btn:focus-visible, .wcab-app-root .wcab-hr-resume-btn:focus-visible{
  border-color: #bdb3ff;
  background: #f0edff;
  color: #4432cc;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-application-details summary, .wcab-app-root .wcab-hr-application-details summary{
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 11px;
  border: 1px solid #cddcff;
  border-radius: 9px;
  background: #f8faff;
  color: #3568d8;
  font-size: 11.5px;
  font-weight: 500 !important;
  list-style: none;
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}

.wcab-app-root.wcab-hr-application-details summary::-webkit-details-marker, .wcab-app-root .wcab-hr-application-details summary::-webkit-details-marker{ display: none; }
.wcab-app-root.wcab-hr-application-details summary::before, .wcab-app-root .wcab-hr-application-details summary::before{
  content: "›";
  margin-right: 6px;
  font-size: 16px;
  line-height: 1;
  transform: rotate(0deg);
  transition: transform .15s ease;
}
.wcab-app-root.wcab-hr-application-details[open] summary::before, .wcab-app-root .wcab-hr-application-details[open] summary::before{ transform: rotate(90deg); }
.wcab-app-root.wcab-hr-application-details summary:hover, .wcab-app-root .wcab-hr-application-details summary:hover,
.wcab-app-root.wcab-hr-application-details summary:focus-visible, .wcab-app-root .wcab-hr-application-details summary:focus-visible{
  border-color: #adc5ff;
  background: #edf3ff;
  color: #2857bc;
  transform: translateY(-1px);
}

.wcab-app-root.wcab-hr-application-details div strong, .wcab-app-root .wcab-hr-application-details div strong{
  color: #46556e !important;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-hr-app-status-form select, .wcab-app-root .wcab-hr-app-status-form select,
.wcab-app-root.wcab-hr-app-status-form textarea, .wcab-app-root .wcab-hr-app-status-form textarea{
  border-color: #dfe5ee;
  border-radius: 9px;
  color: #4c5a72;
  font-weight: 400;
}

.wcab-app-root.wcab-hr-app-save-btn, .wcab-app-root .wcab-hr-app-save-btn{
  min-height: 38px;
  padding: 8px 15px !important;
  border: 1px solid #d7d1ff !important;
  border-radius: 9px !important;
  background: #f0edff !important;
  color: #5542df !important;
  font-size: 12px;
  font-weight: 500 !important;
  box-shadow: none;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.wcab-app-root.wcab-hr-app-save-btn:hover, .wcab-app-root .wcab-hr-app-save-btn:hover,
.wcab-app-root.wcab-hr-app-save-btn:focus-visible, .wcab-app-root .wcab-hr-app-save-btn:focus-visible{
  border-color: #5542df !important;
  background: #5542df !important;
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 9px 18px rgba(85,66,223,.17);
}

/* Calendar View, calendar dates, events and appointment popup. */
.wcab-app-root.wcab-mini-calendar-wrap, .wcab-app-root .wcab-mini-calendar-wrap,
.wcab-app-root.wcab-calendar-area, .wcab-app-root .wcab-calendar-area{
  color: #52617a;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc, .wcab-app-root .wcab-mini-calendar-wrap .fc,
.wcab-app-root.wcab-mini-calendar-wrap .fc *, .wcab-app-root .wcab-mini-calendar-wrap .fc *,
.wcab-app-root.wcab-calendar .fc, .wcab-app-root .wcab-calendar .fc,
.wcab-app-root.wcab-calendar .fc *, .wcab-app-root .wcab-calendar .fc *{
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-toolbar-title, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-toolbar-title,
.wcab-app-root.wcab-calendar .fc .fc-toolbar-title, .wcab-app-root .wcab-calendar .fc .fc-toolbar-title{
  color: #26344d;
  font-size: 20px;
  font-weight: 600 !important;
  letter-spacing: -.01em;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-button, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-button,
.wcab-app-root.wcab-calendar .fc .fc-button, .wcab-app-root .wcab-calendar .fc .fc-button{
  border-color: #dfe5ee;
  border-radius: 9px;
  background: #fff;
  color: #52617a;
  font-size: 12px;
  font-weight: 500 !important;
  box-shadow: none;
  text-transform: none;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-button:hover, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-button:hover,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-button:focus, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-button:focus,
.wcab-app-root.wcab-calendar .fc .fc-button:hover, .wcab-app-root .wcab-calendar .fc .fc-button:hover,
.wcab-app-root.wcab-calendar .fc .fc-button:focus, .wcab-app-root .wcab-calendar .fc .fc-button:focus{
  border-color: #c8c0ff;
  background: #f0edff;
  color: #4b38dd;
  box-shadow: none;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-col-header-cell-cushion, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-col-header-cell-cushion,
.wcab-app-root.wcab-calendar .fc .fc-col-header-cell-cushion, .wcab-app-root .wcab-calendar .fc .fc-col-header-cell-cushion{
  color: #64738c;
  font-size: 11.5px;
  font-weight: 500 !important;
  text-decoration: none;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-daygrid-day-number, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-daygrid-day-number,
.wcab-app-root.wcab-calendar .fc .fc-daygrid-day-number, .wcab-app-root .wcab-calendar .fc .fc-daygrid-day-number{
  color: #52617a;
  font-size: 12px;
  font-weight: 400 !important;
  text-decoration: none;
}

.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-event, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-event,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-event-title, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-event-title,
.wcab-app-root.wcab-calendar .fc .fc-event, .wcab-app-root .wcab-calendar .fc .fc-event,
.wcab-app-root.wcab-calendar .fc .fc-event-title, .wcab-app-root .wcab-calendar .fc .fc-event-title{
  font-size: 10.5px;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-cal-day-badge, .wcab-app-root .wcab-cal-day-badge{
  font-weight: 500 !important;
  box-shadow: 0 5px 12px rgba(75,56,221,.18);
}

.wcab-app-root.wcab-day-appts-modal, .wcab-app-root .wcab-day-appts-modal{
  backdrop-filter: blur(6px);
}

.wcab-app-root.wcab-day-appts-modal-inner, .wcab-app-root .wcab-day-appts-modal-inner{
  border: 1px solid #e2e7ef;
  border-radius: 18px;
  box-shadow: 0 30px 80px rgba(26,35,55,.24);
}

.wcab-app-root.wcab-day-appts-modal-head h3, .wcab-app-root .wcab-day-appts-modal-head h3{
  color: #26344d;
  font-size: 20px;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-day-appts-modal-close, .wcab-app-root .wcab-day-appts-modal-close{
  color: #738096;
  font-weight: 400 !important;
}

.wcab-app-root.wcab-day-appts-staff-group h4, .wcab-app-root .wcab-day-appts-staff-group h4{
  color: #3568d8;
  font-size: 14px;
  font-weight: 500 !important;
  border-bottom-color: #e6edff;
}

.wcab-app-root.wcab-day-appts-staff-group li, .wcab-app-root .wcab-day-appts-staff-group li,
.wcab-app-root.wcab-day-appts-staff-group li strong, .wcab-app-root .wcab-day-appts-staff-group li strong{
  color: #46546c;
  font-weight: 400 !important;
}

/* Booking wizard Back button, Your Selection and modern summary icons. */
.wcab-app-root.wcab-btn-secondary, .wcab-app-root .wcab-btn-secondary,
.wcab-app-root.wcab-btn-secondary:visited, .wcab-app-root .wcab-btn-secondary:visited,
.wcab-app-root.wcab-step-back, .wcab-app-root .wcab-step-back,
.wcab-app-root.wcab-step-back:visited, .wcab-app-root .wcab-step-back:visited{
  border-color: #dfe5ee !important;
  background: #f8f9fc !important;
  color: #5c6b83 !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

.wcab-app-root.wcab-btn-secondary:hover:not(:disabled), .wcab-app-root .wcab-btn-secondary:hover:not(:disabled),
.wcab-app-root.wcab-btn-secondary:focus-visible:not(:disabled), .wcab-app-root .wcab-btn-secondary:focus-visible:not(:disabled),
.wcab-app-root.wcab-step-back:hover:not(:disabled), .wcab-app-root .wcab-step-back:hover:not(:disabled),
.wcab-app-root.wcab-step-back:focus-visible:not(:disabled), .wcab-app-root .wcab-step-back:focus-visible:not(:disabled){
  border-color: #c8c0ff !important;
  background: #f0edff !important;
  color: #4b38dd !important;
  box-shadow: 0 8px 18px rgba(75,56,221,.10) !important;
}

.wcab-app-root.wcab-btn-secondary:disabled, .wcab-app-root .wcab-btn-secondary:disabled,
.wcab-app-root.wcab-step-back:disabled, .wcab-app-root .wcab-step-back:disabled{
  border-color: #e4e8ef !important;
  background: #f2f4f8 !important;
  color: #9aa5b6 !important;
  opacity: 1;
}

.wcab-app-root.wcab-rich-summary-card .wcab-summary-kicker, .wcab-app-root .wcab-rich-summary-card .wcab-summary-kicker{
  color: #52617a !important;
  font-size: 18px !important;
  line-height: 1.25;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-rich-summary-card [data-summary="employee"], .wcab-app-root .wcab-rich-summary-card [data-summary="employee"]{
  color: #6b7890 !important;
  font-size: 15px;
  font-weight: 400 !important;
}

.wcab-app-root.wcab-rich-summary-card h3, .wcab-app-root .wcab-rich-summary-card h3{
  color: #26344d !important;
  font-weight: 600 !important;
}

.wcab-app-root.wcab-rich-summary-item, .wcab-app-root .wcab-rich-summary-item{
  grid-template-columns: 36px minmax(0,1fr);
  gap: 10px;
  align-items: center;
}

.wcab-app-root.wcab-rich-summary-item strong, .wcab-app-root .wcab-rich-summary-item strong{
  color: #3f4d66 !important;
  font-weight: 500 !important;
}

.wcab-app-root.wcab-rich-icon, .wcab-app-root .wcab-rich-icon{
  width: 34px;
  height: 34px;
  border: 1px solid #ddd8ff;
  border-radius: 11px;
  background: #f0edff;
  color: #5542df;
  box-shadow: 0 7px 16px rgba(75,56,221,.09);
}

.wcab-app-root.wcab-rich-icon svg, .wcab-app-root .wcab-rich-icon svg{
  width: 17px;
  height: 17px;
  stroke-width: 1.8;
}

.wcab-app-root.wcab-rich-icon-calendar, .wcab-app-root .wcab-rich-icon-calendar{
  border-color: #cddcff;
  background: #edf3ff;
  color: #3568d8;
}

.wcab-app-root.wcab-rich-icon-target, .wcab-app-root .wcab-rich-icon-target{
  border-color: #c8e8ef;
  background: #e8f8fc;
  color: #1789a2;
}

.wcab-app-root.wcab-rich-icon-location, .wcab-app-root .wcab-rich-icon-location{
  border-color: #cae9d9;
  background: #eaf8f0;
  color: #178a52;
}

.wcab-app-root.wcab-rich-icon-payment, .wcab-app-root .wcab-rich-icon-payment{
  border-color: #ffe0b8;
  background: #fff4e4;
  color: #d87b0e;
}

/* Mobile controls: HR Management always matches its siblings. */
@media (max-width: 760px) {
  .wcab-app-root.wcab-dashboard-actions .wcab-refresh-btn, .wcab-app-root .wcab-dashboard-actions .wcab-refresh-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-clear-btn, .wcab-app-root .wcab-dashboard-actions .wcab-clear-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-hr-management-btn, .wcab-app-root .wcab-dashboard-actions .wcab-hr-management-btn,
.wcab-app-root.wcab-hr-top-actions .wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-actions .wcab-hr-top-btn{
    min-width: 0 !important;
    min-height: 44px !important;
    height: 44px;
    padding: 9px 11px !important;
    border-radius: 11px !important;
    font-size: 12px !important;
    line-height: 1.1;
    white-space: nowrap;
  }

  .wcab-app-root.wcab-dashboard-actions .wcab-btn-label, .wcab-app-root .wcab-dashboard-actions .wcab-btn-label,
.wcab-app-root.wcab-hr-top-actions .wcab-btn-label, .wcab-app-root .wcab-hr-top-actions .wcab-btn-label{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@media (max-width: 480px) {
  .wcab-app-root.wcab-dashboard-actions .wcab-refresh-btn, .wcab-app-root .wcab-dashboard-actions .wcab-refresh-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-clear-btn, .wcab-app-root .wcab-dashboard-actions .wcab-clear-btn,
.wcab-app-root.wcab-dashboard-actions .wcab-hr-management-btn, .wcab-app-root .wcab-dashboard-actions .wcab-hr-management-btn,
.wcab-app-root.wcab-hr-top-actions .wcab-hr-top-btn, .wcab-app-root .wcab-hr-top-actions .wcab-hr-top-btn{
    width: 100%;
    flex: none !important;
    font-size: 11.5px !important;
  }

  .wcab-app-root.wcab-hr-primary-nav, .wcab-app-root .wcab-hr-primary-nav,
.wcab-app-root.wcab-hr-management-btn, .wcab-app-root .wcab-hr-management-btn{
    grid-column: auto !important;
  }

  .wcab-app-root.wcab-bulk-toolbar, .wcab-app-root .wcab-bulk-toolbar{
    align-items: stretch;
  }

  .wcab-app-root.wcab-bulk-btn, .wcab-app-root .wcab-bulk-btn{
    flex: 1 1 calc(50% - 8px);
    text-align: center;
  }
}

/* =========================================================
   WebCarry v2.0.2 — interaction, calendar and reassignment pass
========================================================= */

/* Keep mouse/touch clicks from getting stuck in keyboard-focus styling. */
.wcab-app-root.wcab-wrapper button:focus:not(:focus-visible), .wcab-app-root .wcab-wrapper button:focus:not(:focus-visible),
.wcab-app-root.wcab-wrapper a:focus:not(:focus-visible), .wcab-app-root .wcab-wrapper a:focus:not(:focus-visible),
.wcab-app-root.wcab-dashboard-panel button:focus:not(:focus-visible), .wcab-app-root .wcab-dashboard-panel button:focus:not(:focus-visible),
.wcab-app-root.wcab-dashboard-panel a:focus:not(:focus-visible), .wcab-app-root .wcab-dashboard-panel a:focus:not(:focus-visible),
.wcab-app-root.wcab-staff-login button:focus:not(:focus-visible), .wcab-app-root .wcab-staff-login button:focus:not(:focus-visible),
.wcab-app-root.wcab-career-wrap button:focus:not(:focus-visible), .wcab-app-root .wcab-career-wrap button:focus:not(:focus-visible),
.wcab-app-root.wcab-career-wrap a:focus:not(:focus-visible), .wcab-app-root .wcab-career-wrap a:focus:not(:focus-visible),
.wcab-app-root.wcab-open-positions-wrap button:focus:not(:focus-visible), .wcab-app-root .wcab-open-positions-wrap button:focus:not(:focus-visible),
.wcab-app-root.wcab-open-positions-wrap a:focus:not(:focus-visible), .wcab-app-root .wcab-open-positions-wrap a:focus:not(:focus-visible),
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"]:focus:not(:focus-visible), .wcab-app-root .wcab-dashboard-panel input[type="checkbox"]:focus:not(:focus-visible),
.wcab-app-root.wcab-staff-login input[type="checkbox"]:focus:not(:focus-visible), .wcab-app-root .wcab-staff-login input[type="checkbox"]:focus:not(:focus-visible){
  outline: none !important;
  box-shadow: none;
}

/* Accessible custom dashboard checkboxes without the persistent outer rectangle. */
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-row-select, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-row-select,
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-select-all, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-select-all{
  width: 17px !important;
  height: 17px !important;
  margin: 0 !important;
  border: 1.5px solid #b9c4d5 !important;
  border-radius: 5px !important;
  background: #fff;
  accent-color: #5b45ed;
  box-shadow: none !important;
  vertical-align: middle;
  cursor: pointer;
}
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-row-select:checked, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-row-select:checked,
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-select-all:checked, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-select-all:checked{
  border-color: #5b45ed !important;
}
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-row-select:focus-visible, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-row-select:focus-visible,
.wcab-app-root.wcab-dashboard-panel input[type="checkbox"].wcab-select-all:focus-visible, .wcab-app-root .wcab-dashboard-panel input[type="checkbox"].wcab-select-all:focus-visible{
  outline: 2px solid rgba(91,69,237,.24) !important;
  outline-offset: 3px;
  box-shadow: none !important;
}

/* Buttons retain their semantic resting colors after a click. */
.wcab-app-root.wcab-export-pdf-btn:focus:not(:focus-visible), .wcab-app-root .wcab-export-pdf-btn:focus:not(:focus-visible),
.wcab-app-root.wcab-export-pdf-btn:active, .wcab-app-root .wcab-export-pdf-btn:active{
  border-color: #ffd2d7 !important;
  background: #fffafb !important;
  color: #dc3b49 !important;
  transform: none;
}
.wcab-app-root.wcab-export-excel-btn:focus:not(:focus-visible), .wcab-app-root .wcab-export-excel-btn:focus:not(:focus-visible),
.wcab-app-root.wcab-export-excel-btn:active, .wcab-app-root .wcab-export-excel-btn:active{
  border-color: #ccebdc !important;
  background: #fbfffd !important;
  color: #178a52 !important;
  transform: none;
}
.wcab-app-root.wcab-bulk-btn:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-btn:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-btn:active, .wcab-app-root .wcab-bulk-btn:active{
  border-color: #e0e5ee !important;
  background: #fff !important;
  color: #596780 !important;
  transform: none;
  box-shadow: 0 4px 12px rgba(39,53,83,.04) !important;
}
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_read"]:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_read"]:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_read"]:active, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_read"]:active{
  border-color: #ccebdc !important;
  background: #fbfffd !important;
  color: #178a52 !important;
}
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_unread"]:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_unread"]:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-btn[data-bulk-action="mark_unread"]:active, .wcab-app-root .wcab-bulk-btn[data-bulk-action="mark_unread"]:active,
.wcab-app-root.wcab-bulk-btn[data-bulk-action="download"]:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-btn[data-bulk-action="download"]:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-btn[data-bulk-action="download"]:active, .wcab-app-root .wcab-bulk-btn[data-bulk-action="download"]:active,
.wcab-app-root.wcab-bulk-label-toggle:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-label-toggle:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-label-toggle:active, .wcab-app-root .wcab-bulk-label-toggle:active{
  border-color: #d7d1ff !important;
  background: #f7f5ff !important;
  color: #5542df !important;
}
.wcab-app-root.wcab-bulk-btn-danger:focus:not(:focus-visible), .wcab-app-root .wcab-bulk-btn-danger:focus:not(:focus-visible),
.wcab-app-root.wcab-bulk-btn-danger:active, .wcab-app-root .wcab-bulk-btn-danger:active{
  border-color: #ffd2d7 !important;
  background: #fffafb !important;
  color: #dc3b49 !important;
}
.wcab-app-root.wcab-filter-btn:focus:not(:focus-visible), .wcab-app-root .wcab-filter-btn:focus:not(:focus-visible),
.wcab-app-root.wcab-filter-btn:active, .wcab-app-root .wcab-filter-btn:active{
  color: #fff !important;
  background: linear-gradient(135deg, #6550f8, #4b36df) !important;
  transform: none;
}

/* Appointment action dialog: larger readable type and softer ink. */
.wcab-app-root.wcab-action-modal-card, .wcab-app-root .wcab-action-modal-card{
  color: #46546c !important;
  font-size: 15px;
  line-height: 1.55;
}
.wcab-app-root.wcab-action-modal-head span, .wcab-app-root .wcab-action-modal-head span{
  color: #4e3be0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .06em;
}
.wcab-app-root.wcab-action-modal-head strong, .wcab-app-root .wcab-action-modal-head strong{
  color: #27344d !important;
  font-size: 27px !important;
  line-height: 1.18;
  font-weight: 600 !important;
}
.wcab-app-root.wcab-action-modal-head small, .wcab-app-root .wcab-action-modal-head small,
.wcab-app-root.wcab-action-modal-booking-id, .wcab-app-root .wcab-action-modal-booking-id,
.wcab-app-root.wcab-inline-help, .wcab-app-root .wcab-inline-help{
  color: #66758e !important;
  font-size: 13px !important;
  line-height: 1.5;
  font-weight: 400 !important;
}
.wcab-app-root.wcab-action-modal .wcab-inline-label, .wcab-app-root .wcab-action-modal .wcab-inline-label{
  color: #3f4d65 !important;
  font-size: 14.5px !important;
  line-height: 1.35;
  font-weight: 600 !important;
}
.wcab-app-root.wcab-action-modal select, .wcab-app-root .wcab-action-modal select,
.wcab-app-root.wcab-action-modal input, .wcab-app-root .wcab-action-modal input,
.wcab-app-root.wcab-action-modal textarea, .wcab-app-root .wcab-action-modal textarea{
  color: #35445c !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

/* Admin-only reassignment workflow. */
.wcab-app-root.wcab-reassign-section, .wcab-app-root .wcab-reassign-section{
  margin: 18px 0 16px;
  padding: 15px;
  border: 1px solid #dcd7ff;
  border-radius: 14px;
  background: linear-gradient(135deg, #faf9ff, #f5f7ff);
}
.wcab-app-root.wcab-reassign-heading, .wcab-app-root .wcab-reassign-heading{
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 13px;
}
.wcab-app-root.wcab-reassign-icon, .wcab-app-root .wcab-reassign-icon{
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d3ccff;
  border-radius: 12px;
  background: #eeeaff;
  color: #5944e9;
}
.wcab-app-root.wcab-reassign-icon svg, .wcab-app-root .wcab-reassign-icon svg{ width: 20px; height: 20px; }
.wcab-app-root.wcab-reassign-heading strong, .wcab-app-root .wcab-reassign-heading strong{
  display: block;
  color: #34425a !important;
  font-size: 14px;
  font-weight: 600 !important;
}
.wcab-app-root.wcab-reassign-heading small, .wcab-app-root .wcab-reassign-heading small{
  display: block;
  margin-top: 2px;
  color: #718098 !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
}
.wcab-app-root.wcab-reassign-staff-select, .wcab-app-root .wcab-reassign-staff-select{ margin-bottom: 10px; }
.wcab-app-root.wcab-reassign-staff-select option:disabled, .wcab-app-root .wcab-reassign-staff-select option:disabled{ color: #9aa5b5; }
.wcab-app-root.wcab-reassignment-note, .wcab-app-root .wcab-reassignment-note{ min-height: 68px; resize: vertical; }

/* Zoom helper: official scheduling shortcut plus a modern video icon. */
.wcab-app-root.wcab-zoom-label-row, .wcab-app-root .wcab-zoom-label-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 17px;
}
.wcab-app-root.wcab-zoom-label-row .wcab-inline-label, .wcab-app-root .wcab-zoom-label-row .wcab-inline-label{ margin: 0 !important; }
.wcab-app-root.wcab-zoom-create-btn, .wcab-app-root .wcab-zoom-create-btn,
.wcab-app-root.wcab-zoom-create-btn:visited, .wcab-app-root .wcab-zoom-create-btn:visited{
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 11px;
  border: 1px solid #bfd7ff;
  border-radius: 10px;
  background: #f2f7ff;
  color: #2d66d7 !important;
  font-size: 12px;
  font-weight: 500 !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 5px 13px rgba(45,102,215,.07);
  transition: transform .15s ease, background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.wcab-app-root.wcab-zoom-create-btn:hover, .wcab-app-root .wcab-zoom-create-btn:hover,
.wcab-app-root.wcab-zoom-create-btn:focus-visible, .wcab-app-root .wcab-zoom-create-btn:focus-visible{
  border-color: #8eb8ff;
  background: #e7f0ff;
  color: #2458be !important;
  transform: translateY(-1px);
  box-shadow: 0 9px 18px rgba(45,102,215,.13);
}
.wcab-app-root.wcab-zoom-logo, .wcab-app-root .wcab-zoom-logo{ width: 20px; height: 20px; display: inline-flex; color: #2d66d7; }
.wcab-app-root.wcab-zoom-logo svg, .wcab-app-root .wcab-zoom-logo svg{ width: 20px; height: 20px; }
.wcab-app-root.wcab-zoom-field-group, .wcab-app-root .wcab-zoom-field-group{
  margin-top: 8px;
  border-color: #dbe4f2 !important;
  background: #fbfcff !important;
}
.wcab-app-root.wcab-zoom-input-icon, .wcab-app-root .wcab-zoom-input-icon{
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #2d66d7;
}
.wcab-app-root.wcab-zoom-input-icon svg, .wcab-app-root .wcab-zoom-input-icon svg{ width: 19px; height: 19px; }

/* Professional bell matching the purple dashboard system. */
.wcab-app-root.wcab-notify-bell, .wcab-app-root .wcab-notify-bell{
  width: 50px !important;
  height: 50px !important;
  flex: 0 0 50px !important;
  border: 1px solid #d9d3ff !important;
  border-radius: 15px !important;
  background: linear-gradient(145deg, #fbfaff, #f0edff) !important;
  color: #5542df !important;
  box-shadow: 0 8px 20px rgba(75,56,221,.09) !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
}
.wcab-app-root.wcab-notify-bell:hover, .wcab-app-root .wcab-notify-bell:hover,
.wcab-app-root.wcab-notify-bell:focus-visible, .wcab-app-root .wcab-notify-bell:focus-visible{
  border-color: #bdb3ff !important;
  background: linear-gradient(145deg, #f5f2ff, #e9e4ff) !important;
  color: #4633cf !important;
  transform: translateY(-2px);
  box-shadow: 0 13px 26px rgba(75,56,221,.15) !important;
}
.wcab-app-root.wcab-notify-bell:focus:not(:focus-visible), .wcab-app-root .wcab-notify-bell:focus:not(:focus-visible),
.wcab-app-root.wcab-notify-bell:active, .wcab-app-root .wcab-notify-bell:active{
  border-color: #d9d3ff !important;
  background: linear-gradient(145deg, #fbfaff, #f0edff) !important;
  color: #5542df !important;
  transform: none;
}
.wcab-app-root.wcab-bell-icon, .wcab-app-root .wcab-bell-icon{
  width: 27px;
  height: 27px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.wcab-app-root.wcab-bell-icon svg, .wcab-app-root .wcab-bell-icon svg{ width: 25px !important; height: 25px !important; }
.wcab-app-root.wcab-notify-count, .wcab-app-root .wcab-notify-count{
  top: -5px !important;
  right: -5px !important;
  min-width: 20px !important;
  height: 20px !important;
  border: 2px solid #fff;
  background: #f04458 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

/* FullCalendar navigation: modern round arrow controls. */
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-prev-button, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-prev-button,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-next-button, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-next-button,
.wcab-app-root.wcab-calendar .fc .fc-prev-button, .wcab-app-root .wcab-calendar .fc .fc-prev-button,
.wcab-app-root.wcab-calendar .fc .fc-next-button, .wcab-app-root .wcab-calendar .fc .fc-next-button{
  width: 38px;
  min-width: 38px;
  height: 36px;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-color: #d8d3ff !important;
  border-radius: 10px !important;
  background: #f7f5ff !important;
  color: #5542df !important;
}
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-prev-button .fc-icon, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-prev-button .fc-icon,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-next-button .fc-icon, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-next-button .fc-icon,
.wcab-app-root.wcab-calendar .fc .fc-prev-button .fc-icon, .wcab-app-root .wcab-calendar .fc .fc-prev-button .fc-icon,
.wcab-app-root.wcab-calendar .fc .fc-next-button .fc-icon, .wcab-app-root .wcab-calendar .fc .fc-next-button .fc-icon{
  display: none !important;
}
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-prev-button::before, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-prev-button::before,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-next-button::before, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-next-button::before,
.wcab-app-root.wcab-calendar .fc .fc-prev-button::before, .wcab-app-root .wcab-calendar .fc .fc-prev-button::before,
.wcab-app-root.wcab-calendar .fc .fc-next-button::before, .wcab-app-root .wcab-calendar .fc .fc-next-button::before{
  content: "";
  width: 17px;
  height: 17px;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px 17px;
}
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-prev-button::before, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-prev-button::before,
.wcab-app-root.wcab-calendar .fc .fc-prev-button::before, .wcab-app-root .wcab-calendar .fc .fc-prev-button::before{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235542df' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E");
}
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-next-button::before, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-next-button::before,
.wcab-app-root.wcab-calendar .fc .fc-next-button::before, .wcab-app-root .wcab-calendar .fc .fc-next-button::before{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235542df' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
}
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-prev-button:hover, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-prev-button:hover,
.wcab-app-root.wcab-mini-calendar-wrap .fc .fc-next-button:hover, .wcab-app-root .wcab-mini-calendar-wrap .fc .fc-next-button:hover,
.wcab-app-root.wcab-calendar .fc .fc-prev-button:hover, .wcab-app-root .wcab-calendar .fc .fc-prev-button:hover,
.wcab-app-root.wcab-calendar .fc .fc-next-button:hover, .wcab-app-root .wcab-calendar .fc .fc-next-button:hover{
  border-color: #bcb2ff !important;
  background: #ece8ff !important;
  transform: translateY(-1px);
}

/* Labels use the same calm semantic palette rather than red text. */
.wcab-app-root.wcab-label-picker, .wcab-app-root .wcab-label-picker,
.wcab-app-root.wcab-bulk-label-menu, .wcab-app-root .wcab-bulk-label-menu{
  padding: 7px !important;
  border: 1px solid #e0e4ed !important;
  border-radius: 13px !important;
  background: #fff !important;
  box-shadow: 0 18px 40px rgba(31,43,68,.16) !important;
}
.wcab-app-root.wcab-label-picker button, .wcab-app-root .wcab-label-picker button,
.wcab-app-root.wcab-bulk-label-option, .wcab-app-root .wcab-bulk-label-option{
  min-height: 36px;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: #52617a !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  text-align: left;
}
.wcab-app-root.wcab-label-picker button::before, .wcab-app-root .wcab-label-picker button::before,
.wcab-app-root.wcab-bulk-label-option::before, .wcab-app-root .wcab-bulk-label-option::before{
  box-shadow: 0 0 0 3px rgba(85,66,223,.10);
}
.wcab-app-root.wcab-label-picker button:hover, .wcab-app-root .wcab-label-picker button:hover,
.wcab-app-root.wcab-label-picker button:focus-visible, .wcab-app-root .wcab-label-picker button:focus-visible,
.wcab-app-root.wcab-bulk-label-option:hover, .wcab-app-root .wcab-bulk-label-option:hover,
.wcab-app-root.wcab-bulk-label-option:focus-visible, .wcab-app-root .wcab-bulk-label-option:focus-visible{
  background: #f5f3ff !important;
  color: #4633cf !important;
}

/* Staff filter names use softer charcoal instead of full black. */
.wcab-app-root.wcab-staff-filter-option-name, .wcab-app-root .wcab-staff-filter-option-name,
.wcab-app-root.wcab-staff-filter-toggle-label, .wcab-app-root .wcab-staff-filter-toggle-label{
  color: #34425a !important;
  font-weight: 500 !important;
}
.wcab-app-root.wcab-staff-filter-option-designation, .wcab-app-root .wcab-staff-filter-option-designation{
  color: #78869b !important;
  font-weight: 400 !important;
}
.wcab-app-root.wcab-staff-filter-option:hover .wcab-staff-filter-option-name, .wcab-app-root .wcab-staff-filter-option:hover .wcab-staff-filter-option-name,
.wcab-app-root.wcab-staff-filter-option:focus-visible .wcab-staff-filter-option-name, .wcab-app-root .wcab-staff-filter-option:focus-visible .wcab-staff-filter-option-name{
  color: #4b38dd !important;
}

/* Selected rows stay clear without a harsh focus rectangle. */
.wcab-app-root.wcab-dashboard-panel .wcab-table tr:has(.wcab-row-select:checked) td, .wcab-app-root .wcab-dashboard-panel .wcab-table tr:has(.wcab-row-select:checked) td{
  background: rgba(91,69,237,.045);
}

@media (max-width: 640px) {
  .wcab-app-root.wcab-zoom-label-row, .wcab-app-root .wcab-zoom-label-row{ align-items: flex-start; flex-direction: column; }
  .wcab-app-root.wcab-zoom-create-btn, .wcab-app-root .wcab-zoom-create-btn{ width: 100%; justify-content: center; box-sizing: border-box; }
  .wcab-app-root.wcab-action-modal-head strong, .wcab-app-root .wcab-action-modal-head strong{ font-size: 23px !important; }
  .wcab-app-root.wcab-action-modal-card, .wcab-app-root .wcab-action-modal-card{ font-size: 14.5px; }
}

.wcab-app-root.wcab-notify-bell.wcab-notify-active, .wcab-app-root .wcab-notify-bell.wcab-notify-active{
  border-color: #5542df !important;
  background: linear-gradient(145deg, #6651f3, #4b37dc) !important;
  color: #fff !important;
  box-shadow: 0 12px 25px rgba(75,56,221,.20) !important;
}
.wcab-app-root.wcab-notify-bell.wcab-notify-active:hover, .wcab-app-root .wcab-notify-bell.wcab-notify-active:hover,
.wcab-app-root.wcab-notify-bell.wcab-notify-active:focus-visible, .wcab-app-root .wcab-notify-bell.wcab-notify-active:focus-visible{
  border-color: #4935d2 !important;
  background: linear-gradient(145deg, #5d48ec, #4430cf) !important;
  color: #fff !important;
}

/* WordPress-admin Calendar View uses the same navigation language. */
.wcab-app-root.wcab-admin-calendar-wrap .fc, .wcab-app-root .wcab-admin-calendar-wrap .fc,
.wcab-app-root.wcab-admin-calendar-wrap .fc *, .wcab-app-root .wcab-admin-calendar-wrap .fc *{
  font-family: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
}
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-prev-button, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-prev-button,
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-next-button, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-next-button{
  width: 38px;
  min-width: 38px;
  height: 36px;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8d3ff !important;
  border-radius: 10px !important;
  background: #f7f5ff !important;
  color: #5542df !important;
  box-shadow: none !important;
}
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-prev-button .fc-icon, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-prev-button .fc-icon,
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-next-button .fc-icon, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-next-button .fc-icon{ display: none !important; }
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-prev-button::before, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-prev-button::before,
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-next-button::before, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-next-button::before{
  content: "";
  width: 17px;
  height: 17px;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px 17px;
}
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-prev-button::before, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-prev-button::before{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235542df' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E");
}
.wcab-app-root.wcab-admin-calendar-wrap .fc .fc-next-button::before, .wcab-app-root .wcab-admin-calendar-wrap .fc .fc-next-button::before{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235542df' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
}

/* =========================================================
   WebCarry v2.0.3 — HR, careers, recruitment and performance
========================================================= */

/* Staff photo editor: true circular preview with adjustable focal point. */
.wcab-app-root.wcab-hr-avatar-field .wcab-hr-avatar-preview-wrap, .wcab-app-root .wcab-hr-avatar-field .wcab-hr-avatar-preview-wrap{
  width: 112px !important;
  height: 112px !important;
  flex: 0 0 112px;
  border-radius: 50% !important;
  overflow: visible !important;
  background: #f1f4f9;
  border: 1px solid #d9e0eb;
}
.wcab-app-root.wcab-hr-avatar-field .wcab-hr-avatar-preview, .wcab-app-root .wcab-hr-avatar-field .wcab-hr-avatar-preview,
.wcab-app-root.wcab-hr-avatar-field .wcab-hr-avatar-placeholder, .wcab-app-root .wcab-hr-avatar-field .wcab-hr-avatar-placeholder{
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  overflow: hidden;
}
.wcab-app-root.wcab-hr-avatar-field .wcab-hr-avatar-preview, .wcab-app-root .wcab-hr-avatar-field .wcab-hr-avatar-preview{
  object-fit: cover !important;
  object-position: 50% 50%;
}
.wcab-app-root.wcab-hr-camera-btn, .wcab-app-root .wcab-hr-camera-btn{
  right: -2px !important;
  bottom: 7px !important;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 3px solid #fff !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #6550f8, #4b36df) !important;
  color: #fff !important;
  line-height: 1 !important;
  box-shadow: 0 7px 18px rgba(79,70,229,.28) !important;
}
.wcab-app-root.wcab-hr-camera-btn svg, .wcab-app-root .wcab-hr-camera-btn svg{
  width: 16px !important;
  height: 16px !important;
  display: block;
  stroke: #fff !important;
  margin: 0 !important;
}
.wcab-app-root.wcab-hr-avatar-adjust, .wcab-app-root .wcab-hr-avatar-adjust{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.wcab-app-root.wcab-hr-avatar-adjust label, .wcab-app-root .wcab-hr-avatar-adjust label{
  margin: 0 !important;
  color: #5d6b81 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}
.wcab-app-root.wcab-hr-avatar-adjust input[type="range"], .wcab-app-root .wcab-hr-avatar-adjust input[type="range"]{
  width: 100% !important;
  min-height: 22px !important;
  padding: 0 !important;
  margin-top: 5px;
  accent-color: #5b45f5;
  box-shadow: none !important;
}

/* Performance period filters. */
.wcab-app-root.wcab-hr-performance-filter, .wcab-app-root .wcab-hr-performance-filter{
  display: grid;
  grid-template-columns: minmax(190px, 1.2fr) repeat(2, minmax(150px, .8fr)) auto auto;
  gap: 12px;
  align-items: end;
  margin: 0 0 16px;
  padding: 14px;
  border: 1px solid #e2e7f0;
  border-radius: 14px;
  background: #fafbfe;
}
.wcab-app-root.wcab-hr-performance-filter label, .wcab-app-root .wcab-hr-performance-filter label{
  margin: 0 !important;
}
.wcab-app-root.wcab-hr-performance-filter label > span, .wcab-app-root .wcab-hr-performance-filter label > span{
  display: block;
  margin-bottom: 6px;
  color: #64728a;
  font-size: 11px;
  font-weight: 500;
}
.wcab-app-root.wcab-hr-performance-filter select, .wcab-app-root .wcab-hr-performance-filter select,
.wcab-app-root.wcab-hr-performance-filter input, .wcab-app-root .wcab-hr-performance-filter input{
  min-height: 42px;
  width: 100%;
  padding: 9px 11px;
  border: 1px solid #dce3ee;
  border-radius: 10px;
  background: #fff;
  color: #34425a;
  font-family: "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  box-shadow: none;
}
.wcab-app-root.wcab-hr-filter-apply, .wcab-app-root .wcab-hr-filter-apply,
.wcab-app-root.wcab-hr-filter-reset, .wcab-app-root .wcab-hr-filter-reset{
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 15px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none !important;
  cursor: pointer;
}
.wcab-app-root.wcab-hr-filter-apply, .wcab-app-root .wcab-hr-filter-apply{
  border: 1px solid #5b45f5;
  background: #5b45f5;
  color: #fff;
}
.wcab-app-root.wcab-hr-filter-apply:hover, .wcab-app-root .wcab-hr-filter-apply:hover,
.wcab-app-root.wcab-hr-filter-apply:focus-visible, .wcab-app-root .wcab-hr-filter-apply:focus-visible{
  background: #4934d8;
  border-color: #4934d8;
  color: #fff;
  box-shadow: 0 8px 18px rgba(75,52,216,.16);
}
.wcab-app-root.wcab-hr-filter-reset, .wcab-app-root .wcab-hr-filter-reset,
.wcab-app-root.wcab-hr-filter-reset:visited, .wcab-app-root .wcab-hr-filter-reset:visited{
  border: 1px solid #d9dfeb;
  background: #fff;
  color: #5d6b81;
}
.wcab-app-root.wcab-hr-filter-reset:hover, .wcab-app-root .wcab-hr-filter-reset:hover,
.wcab-app-root.wcab-hr-filter-reset:focus-visible, .wcab-app-root .wcab-hr-filter-reset:focus-visible{
  border-color: #c9d0dd;
  background: #f3f5f9;
  color: #39475e;
}
.wcab-app-root.wcab-hr-definition, .wcab-app-root .wcab-hr-definition{
  flex-wrap: wrap;
}
.wcab-app-root.wcab-hr-definition > strong, .wcab-app-root .wcab-hr-definition > strong{
  margin-left: auto;
  color: #4f5f78;
  font-weight: 500;
}

/* Current-user action badge must match the adjacent square edit control. */
.wcab-app-root.wcab-hr-current-label, .wcab-app-root .wcab-hr-current-label{
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 1px solid #ccefdc;
  border-radius: 10px !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

/* Keep HR header controls perfectly stable: hover affects only the hovered control. */
.wcab-app-root.wcab-hr-top-actions, .wcab-app-root .wcab-hr-top-actions{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap;
  gap: 10px !important;
}
.wcab-app-root.wcab-hr-top-actions > *, .wcab-app-root .wcab-hr-top-actions > *{
  flex: 0 0 auto !important;
  transform: none !important;
  margin: 0 !important;
}
.wcab-app-root.wcab-hr-top-actions .wcab-hr-top-btn:hover, .wcab-app-root .wcab-hr-top-actions .wcab-hr-top-btn:hover,
.wcab-app-root.wcab-hr-top-actions .wcab-hr-top-btn:focus-visible, .wcab-app-root .wcab-hr-top-actions .wcab-hr-top-btn:focus-visible{
  transform: none !important;
}

/* Open position nature appears as structured responsibilities/requirements. */
.wcab-app-root.wcab-open-position-description .wcab-open-position-nature, .wcab-app-root .wcab-open-position-description .wcab-open-position-nature{
  margin: 8px 0 0;
  padding-left: 21px;
  color: #46556e;
  font-size: 13.5px;
  line-height: 1.65;
}
.wcab-app-root.wcab-open-position-description .wcab-open-position-nature li, .wcab-app-root .wcab-open-position-description .wcab-open-position-nature li{
  margin: 5px 0;
  padding-left: 3px;
}
.wcab-app-root.wcab-open-position-description ul.wcab-open-position-nature li::marker, .wcab-app-root .wcab-open-position-description ul.wcab-open-position-nature li::marker{
  color: #5b45f5;
}
.wcab-app-root.wcab-open-position-description ol.wcab-open-position-nature li::marker, .wcab-app-root .wcab-open-position-description ol.wcab-open-position-nature li::marker{
  color: #5b45f5;
  font-weight: 600;
}
.wcab-app-root.wcab-career-job-fields select, .wcab-app-root .wcab-career-job-fields select{
  width: 100%;
  margin: 7px 0;
}

/* Career form helper copy, terms and brief confirmation. */
.wcab-app-root.wcab-career-character-count, .wcab-app-root .wcab-career-character-count{
  text-align: right;
  color: #7a879b !important;
  font-variant-numeric: tabular-nums;
}
.wcab-app-root.wcab-career-terms, .wcab-app-root .wcab-career-terms{
  padding: 14px 16px;
  border: 1px solid #dfe5ef;
  border-radius: 12px;
  background: #fafbfe;
}
.wcab-app-root.wcab-career-terms > label, .wcab-app-root .wcab-career-terms > label{
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  margin: 0 !important;
  cursor: pointer;
}
.wcab-app-root.wcab-career-terms input[type="checkbox"], .wcab-app-root .wcab-career-terms input[type="checkbox"]{
  width: 18px !important;
  min-width: 18px;
  height: 18px;
  min-height: 18px !important;
  margin-top: 1px;
  accent-color: #5b45f5;
}
.wcab-app-root.wcab-career-terms-copy, .wcab-app-root .wcab-career-terms-copy{
  color: #58677e !important;
  font-size: 12.5px;
  line-height: 1.55;
  font-weight: 400 !important;
}
.wcab-app-root.wcab-career-terms-copy a, .wcab-app-root .wcab-career-terms-copy a{
  color: #5542df;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.wcab-app-root.wcab-career-terms-copy em, .wcab-app-root .wcab-career-terms-copy em{
  color: #e23b4b;
  font-style: normal;
}
.wcab-app-root.wcab-career-flash, .wcab-app-root .wcab-career-flash{
  transition: opacity .3s ease, transform .3s ease, max-height .3s ease, margin .3s ease, padding .3s ease;
  overflow: hidden;
}
.wcab-app-root.wcab-career-flash.is-hiding, .wcab-app-root .wcab-career-flash.is-hiding{
  opacity: 0;
  transform: translateY(-6px);
  max-height: 0;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Job application details open in a dedicated modal, never inside the row. */
.wcab-app-root.wcab-hr-application-view-btn, .wcab-app-root .wcab-hr-application-view-btn{
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 11px;
  border: 1px solid #cddcff;
  border-radius: 9px;
  background: #f8faff;
  color: #3568d8;
  font-family: "Segoe UI", Arial, sans-serif;
  font-size: 11.5px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.wcab-app-root.wcab-hr-application-view-btn > span, .wcab-app-root .wcab-hr-application-view-btn > span{
  font-size: 17px;
  line-height: 1;
}
.wcab-app-root.wcab-hr-application-view-btn:hover, .wcab-app-root .wcab-hr-application-view-btn:hover,
.wcab-app-root.wcab-hr-application-view-btn:focus-visible, .wcab-app-root .wcab-hr-application-view-btn:focus-visible{
  border-color: #adc5ff;
  background: #edf3ff;
  color: #2857bc;
  box-shadow: 0 7px 15px rgba(53,104,216,.09);
}
.wcab-app-root.wcab-hr-application-action-cell, .wcab-app-root .wcab-hr-application-action-cell,
.wcab-app-root.wcab-hr-applications-table th:last-child, .wcab-app-root .wcab-hr-applications-table th:last-child{
  text-align: center !important;
}
.wcab-app-root.wcab-hr-application-action-cell form, .wcab-app-root .wcab-hr-application-action-cell form{
  display: flex;
  justify-content: center;
  margin: 0;
}
.wcab-app-root.wcab-application-detail-modal, .wcab-app-root .wcab-application-detail-modal{
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  box-sizing: border-box;
}
.wcab-app-root.wcab-application-detail-modal.is-open, .wcab-app-root .wcab-application-detail-modal.is-open{
  display: flex;
}
.wcab-app-root.wcab-application-detail-backdrop, .wcab-app-root .wcab-application-detail-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(24,34,55,.58);
  backdrop-filter: blur(7px);
}
.wcab-app-root.wcab-application-detail-dialog, .wcab-app-root .wcab-application-detail-dialog{
  position: relative;
  z-index: 1;
  width: min(720px, 100%);
  max-height: min(82vh, 760px);
  overflow: auto;
  border: 1px solid #dfe5ef;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 34px 90px rgba(24,34,55,.28);
  font-family: "Segoe UI", Arial, sans-serif;
}
.wcab-app-root.wcab-application-detail-head, .wcab-app-root .wcab-application-detail-head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid #e7ebf2;
}
.wcab-app-root.wcab-application-detail-head span, .wcab-app-root .wcab-application-detail-head span{
  display: block;
  margin-bottom: 5px;
  color: #5b45f5;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .08em;
}
.wcab-app-root.wcab-application-detail-head h3, .wcab-app-root .wcab-application-detail-head h3{
  margin: 0;
  color: #26344d;
  font-size: 22px;
  font-weight: 600;
}
.wcab-app-root.wcab-application-detail-head button, .wcab-app-root .wcab-application-detail-head button{
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px;
  background: #f3f5f9;
  color: #637087;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}
.wcab-app-root.wcab-application-detail-grid, .wcab-app-root .wcab-application-detail-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  padding: 22px 24px 26px;
}
.wcab-app-root.wcab-application-detail-grid > div, .wcab-app-root .wcab-application-detail-grid > div{
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid #e3e8f0;
  border-radius: 12px;
  background: #fafbfe;
}
.wcab-app-root.wcab-application-detail-grid small, .wcab-app-root .wcab-application-detail-grid small{
  display: block;
  margin-bottom: 5px;
  color: #7a879a;
  font-size: 10.5px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .045em;
}
.wcab-app-root.wcab-application-detail-grid strong, .wcab-app-root .wcab-application-detail-grid strong,
.wcab-app-root.wcab-application-detail-grid span, .wcab-app-root .wcab-application-detail-grid span,
.wcab-app-root.wcab-application-detail-grid p, .wcab-app-root .wcab-application-detail-grid p{
  color: #3e4d65;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.wcab-app-root.wcab-application-detail-grid strong, .wcab-app-root .wcab-application-detail-grid strong{
  font-weight: 600;
}
.wcab-app-root.wcab-application-detail-grid p, .wcab-app-root .wcab-application-detail-grid p{
  margin: 0;
  white-space: pre-wrap;
}
.wcab-app-root.wcab-application-detail-wide, .wcab-app-root .wcab-application-detail-wide{
  grid-column: 1 / -1;
}

@media (max-width: 980px) {
  .wcab-app-root.wcab-hr-performance-filter, .wcab-app-root .wcab-hr-performance-filter{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 680px) {
  .wcab-app-root.wcab-hr-avatar-field, .wcab-app-root .wcab-hr-avatar-field{
    grid-template-columns: 1fr !important;
    justify-items: center;
    text-align: center;
  }
  .wcab-app-root.wcab-hr-avatar-adjust, .wcab-app-root .wcab-hr-avatar-adjust,
.wcab-app-root.wcab-hr-performance-filter, .wcab-app-root .wcab-hr-performance-filter,
.wcab-app-root.wcab-application-detail-grid, .wcab-app-root .wcab-application-detail-grid{
    grid-template-columns: 1fr;
  }
  .wcab-app-root.wcab-application-detail-wide, .wcab-app-root .wcab-application-detail-wide{
    grid-column: auto;
  }
  .wcab-app-root.wcab-hr-filter-apply, .wcab-app-root .wcab-hr-filter-apply,
.wcab-app-root.wcab-hr-filter-reset, .wcab-app-root .wcab-hr-filter-reset{
    width: 100%;
  }
}

/* =========================================================
   WebCarry v2.1.3 — recruitment workflow and visual polish
   ========================================================= */
.wcab-app-root[data-wcab-app] input[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;display:inline-grid!important;place-content:center!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;border:1.5px solid #b7c1d2!important;border-radius:5px!important;background:#fff!important;background-image:none!important;box-shadow:none!important;vertical-align:middle!important;cursor:pointer!important}
.wcab-app-root[data-wcab-app] input[type="checkbox"]:checked{border-color:#5b45f5!important;background-color:#5b45f5!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M3 8.3l3 3L13 4.8'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:12px 12px!important}
.wcab-app-root[data-wcab-app] input[type="checkbox"]:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}.wcab-app-root[data-wcab-app] input[type="checkbox"]:focus-visible{outline:2px solid rgba(91,69,245,.28)!important;outline-offset:2px!important}
.wcab-app-root[data-wcab-app] .wcab-export-btn,.wcab-app-root[data-wcab-app] .wcab-hr-report-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;line-height:1.2!important}
.wcab-app-root[data-wcab-app] .wcab-export-icon,.wcab-app-root[data-wcab-app] .wcab-export-btn svg,.wcab-app-root[data-wcab-app] .wcab-hr-report-icon,.wcab-app-root[data-wcab-app] .wcab-hr-report-btn svg{display:block!important;width:18px!important;height:18px!important;min-width:18px!important;flex:0 0 18px!important;margin:0!important;overflow:visible!important;stroke:currentColor!important;fill:none!important}
.wcab-app-root[data-wcab-app] .wcab-table thead th,.wcab-app-root[data-wcab-app] .wcab-table thead th a,.wcab-app-root[data-wcab-app] .wcab-table thead .wcab-sort-link,.wcab-app-root[data-wcab-app].wcab-admin-app table.widefat thead th{color:#4e5e77!important;font-family:"Segoe UI",SegoeUI,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif!important;font-size:12px!important;font-weight:500!important;letter-spacing:.025em!important;line-height:1.35!important;text-transform:uppercase!important}
.wcab-app-root[data-wcab-app] .wcab-table tbody td,.wcab-app-root[data-wcab-app] .wcab-table tbody td a,.wcab-app-root[data-wcab-app] .wcab-table tbody td span,.wcab-app-root[data-wcab-app].wcab-admin-app table.widefat tbody td{color:#52617a!important;font-family:"Segoe UI",SegoeUI,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif!important;font-size:13px!important;font-weight:400!important;line-height:1.5!important}.wcab-app-root[data-wcab-app] .wcab-table tbody td strong{color:#2f3e57!important;font-weight:500!important}.wcab-app-root[data-wcab-app] .wcab-table tbody td small{color:#7b8799!important;font-weight:400!important}
.wcab-app-root[data-wcab-app] .wcab-hr-applications-btn{position:relative!important;overflow:visible!important}.wcab-app-root[data-wcab-app] .wcab-application-notification-bubble{position:absolute!important;top:-8px!important;right:-8px!important;z-index:2!important;min-width:20px!important;height:20px!important;padding:0 5px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:2px solid #fff!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:10px!important;font-weight:600!important;line-height:1!important;box-shadow:0 5px 13px rgba(239,68,68,.28)!important}
.wcab-app-root[data-wcab-app] .wcab-hr-title-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;min-width:28px!important;color:#5b45f5!important}.wcab-app-root[data-wcab-app] .wcab-hr-title-icon svg{display:block!important;width:24px!important;height:24px!important;min-width:24px!important;margin:0!important;stroke:currentColor!important;fill:none!important;overflow:visible!important}.wcab-app-root[data-wcab-app] .wcab-hr-report-print{color:#3568d8!important}
.wcab-app-root[data-wcab-app] .wcab-hr-staff-filter-label{position:relative!important;min-width:220px!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker{position:relative!important;width:100%!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-toggle{width:100%!important;min-height:46px!important;padding:7px 12px!important;display:flex!important;align-items:center!important;gap:10px!important;border:1px solid #dce3ee!important;border-radius:11px!important;background:#fff!important;color:#3d4b63!important;text-align:left!important;box-shadow:none!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-toggle:hover,.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker.is-open .wcab-hr-staff-picker-toggle{border-color:#bdb3ff!important;box-shadow:0 0 0 3px rgba(91,69,245,.08)!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-toggle>svg{width:16px!important;height:16px!important;margin-left:auto!important;flex:0 0 16px!important;color:#6f7c91!important;transition:transform .16s ease!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker.is-open .wcab-hr-staff-picker-toggle>svg{transform:rotate(180deg)!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-avatar{width:32px!important;height:32px!important;min-width:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-radius:50%!important;background:#eeecff!important;color:#5040d7!important;font-size:12px!important;font-weight:600!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-copy{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-copy strong{color:#34425a!important;font-size:12.5px!important;font-weight:500!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-copy small{color:#7c8798!important;font-size:10.5px!important;font-weight:400!important;line-height:1.2!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-menu{position:absolute!important;top:calc(100% + 7px)!important;left:0!important;z-index:1000!important;width:max(100%,260px)!important;max-height:280px!important;padding:7px!important;display:none!important;overflow:auto!important;border:1px solid #dfe5ef!important;border-radius:13px!important;background:#fff!important;box-shadow:0 18px 42px rgba(34,45,70,.16)!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker.is-open .wcab-hr-staff-picker-menu{display:block!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-option{width:100%!important;padding:8px 9px!important;display:flex!important;align-items:center!important;gap:10px!important;border:0!important;border-radius:9px!important;background:transparent!important;text-align:left!important;box-shadow:none!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-option:hover,.wcab-app-root[data-wcab-app] .wcab-hr-staff-picker-option:focus-visible{background:#f4f2ff!important}
.wcab-app-root[data-wcab-app] .wcab-hr-application-filters{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto!important}.wcab-app-root[data-wcab-app] .wcab-hr-applications-table{min-width:1250px!important}.wcab-app-root[data-wcab-app] .wcab-app-select-column{width:54px!important;min-width:54px!important;text-align:center!important;vertical-align:middle!important}.wcab-app-root[data-wcab-app] .wcab-application-bulk-toolbar{margin:0 0 14px!important}.wcab-app-root[data-wcab-app] .wcab-application-candidate-head{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}.wcab-app-root[data-wcab-app] .wcab-application-read-badge{display:inline-flex!important;align-items:center!important;min-height:21px!important;padding:3px 8px!important;border-radius:999px!important;background:#ecfdf3!important;color:#178a52!important;font-size:9.5px!important;font-weight:500!important}.wcab-app-root[data-wcab-app] .wcab-application-unread .wcab-application-read-badge{background:#fff1f2!important;color:#dc3b49!important}.wcab-app-root[data-wcab-app] .wcab-application-status{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:25px!important;padding:4px 10px!important;border-radius:999px!important;font-size:10px!important;font-weight:500!important;white-space:nowrap!important}.wcab-app-root[data-wcab-app] .wcab-application-status-new{background:#eef2ff!important;color:#5145cd!important}.wcab-app-root[data-wcab-app] .wcab-application-status-reviewing{background:#eaf4ff!important;color:#2772c8!important}.wcab-app-root[data-wcab-app] .wcab-application-status-shortlisted{background:#fff7df!important;color:#b66a08!important}.wcab-app-root[data-wcab-app] .wcab-application-status-interview{background:#f1ecff!important;color:#6d3fd1!important}.wcab-app-root[data-wcab-app] .wcab-application-status-hired{background:#e8f8ef!important;color:#138249!important}.wcab-app-root[data-wcab-app] .wcab-application-status-rejected{background:#fff0f1!important;color:#ce3745!important}.wcab-app-root[data-wcab-app] .wcab-application-action-btn{width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;display:inline-flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;border:1px solid #dfe5ee!important;border-radius:12px!important;background:#fff!important;color:#596984!important;box-shadow:0 5px 14px rgba(39,53,83,.055)!important}.wcab-app-root[data-wcab-app] .wcab-application-action-btn span{width:3px!important;height:3px!important;display:block!important;border-radius:50%!important;background:currentColor!important}.wcab-app-root[data-wcab-app] .wcab-application-action-btn:hover,.wcab-app-root[data-wcab-app] .wcab-application-action-btn:focus-visible{border-color:#c8c0ff!important;background:#f0edff!important;color:#4b38dd!important;transform:translateY(-1px)!important;box-shadow:0 10px 22px rgba(75,56,221,.13)!important}
.wcab-app-root[data-wcab-app].wcab-application-detail-modal,.wcab-app-root[data-wcab-app].wcab-application-action-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100vh!important;margin:0!important;padding:24px!important;display:none!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;box-sizing:border-box!important}.wcab-app-root[data-wcab-app].wcab-application-detail-modal.is-open,.wcab-app-root[data-wcab-app].wcab-application-action-modal.is-open{display:flex!important}.wcab-app-root[data-wcab-app] .wcab-application-detail-backdrop{position:absolute!important;inset:0!important;background:rgba(26,35,53,.62)!important;backdrop-filter:blur(6px)!important}.wcab-app-root[data-wcab-app] .wcab-application-detail-dialog,.wcab-app-root[data-wcab-app] .wcab-application-action-dialog{position:relative!important;z-index:1!important;width:min(720px,100%)!important;max-height:calc(100vh - 48px)!important;overflow:auto!important;border:1px solid #dfe5ef!important;border-radius:20px!important;background:#fff!important;box-shadow:0 34px 90px rgba(24,34,55,.30)!important}.wcab-app-root[data-wcab-app] .wcab-application-action-dialog{width:min(580px,100%)!important}.wcab-app-root[data-wcab-app] .wcab-application-detail-head p{margin:7px 0 0!important;color:#748096!important;font-size:12px!important;font-weight:400!important}.wcab-app-root[data-wcab-app] .wcab-application-action-form{padding:22px 24px 24px!important;display:grid!important;gap:16px!important}.wcab-app-root[data-wcab-app] .wcab-application-action-form label{margin:0!important}.wcab-app-root[data-wcab-app] .wcab-application-action-form label>span{display:block!important;margin:0 0 7px!important;color:#46556d!important;font-size:12px!important;font-weight:500!important}.wcab-app-root[data-wcab-app] .wcab-application-action-form select,.wcab-app-root[data-wcab-app] .wcab-application-action-form textarea{width:100%!important;margin:0!important;padding:11px 13px!important;border:1px solid #dce3ee!important;border-radius:11px!important;background:#fff!important;color:#34425a!important;font-size:13px!important;font-weight:400!important;box-shadow:none!important}.wcab-app-root[data-wcab-app] .wcab-application-email-state,.wcab-app-root[data-wcab-app] .wcab-application-last-email{margin:-4px 0 0!important;color:#178a52!important;font-size:11.5px!important;font-weight:400!important}.wcab-app-root[data-wcab-app] .wcab-application-email-state.is-disabled{color:#b66a08!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary,.wcab-app-root[data-wcab-app] .wcab-application-action-secondary{display:flex!important;gap:10px!important;flex-wrap:wrap!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary button,.wcab-app-root[data-wcab-app] .wcab-application-action-secondary button{min-height:42px!important;padding:9px 15px!important;border-radius:10px!important;font-size:12px!important;font-weight:500!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary .wcab-hr-app-save-btn{border:1px solid #5b45f5!important;background:#5b45f5!important;color:#fff!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary .wcab-hr-app-email-btn{border:1px solid #cae9d9!important;background:#f6fffa!important;color:#178a52!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary .wcab-hr-app-email-btn:disabled{border-color:#e2e6ed!important;background:#f5f6f8!important;color:#9aa4b3!important;cursor:not-allowed!important}.wcab-app-root[data-wcab-app] .wcab-application-action-secondary .wcab-hr-read-toggle{border:1px solid #cddcff!important;background:#f8faff!important;color:#3568d8!important}.wcab-app-root[data-wcab-app] .wcab-application-action-secondary .wcab-hr-delete-text-btn{margin-left:auto!important;border:1px solid #ffd1d6!important;background:#fffafb!important;color:#dc3b49!important}
@media(max-width:820px){.wcab-app-root[data-wcab-app] .wcab-hr-performance-filter{grid-template-columns:1fr!important}.wcab-app-root[data-wcab-app] .wcab-hr-staff-filter-label{min-width:0!important}.wcab-app-root[data-wcab-app] .wcab-hr-application-filters{grid-template-columns:1fr!important}.wcab-app-root[data-wcab-app] .wcab-application-action-primary,.wcab-app-root[data-wcab-app] .wcab-application-action-secondary{flex-direction:column!important}.wcab-app-root[data-wcab-app] .wcab-application-action-secondary .wcab-hr-delete-text-btn{margin-left:0!important}}
