/**
 * EventStaff Marketplace - Frontend styles
 * Mobile-first, RTL by default.
 */

.esm-wrap {
	--esm-color-primary: #1d4ed8;
	--esm-color-primary-dark: #1e3a8a;
	--esm-color-success: #15803d;
	--esm-color-success-bg: #dcfce7;
	--esm-color-error: #b91c1c;
	--esm-color-error-bg: #fee2e2;
	--esm-color-warning: #b45309;
	--esm-color-warning-bg: #fef3c7;
	--esm-color-info: #1d4ed8;
	--esm-color-info-bg: #dbeafe;
	--esm-color-border: #e2e8f0;
	--esm-color-text: #1e293b;
	--esm-color-muted: #475569;
	--esm-radius: 10px;

	direction: rtl;
	text-align: right;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	color: var(--esm-color-text);
	max-width: 720px;
	margin: 0 auto;
	padding: 16px;
	box-sizing: border-box;
}

.esm-wrap * {
	box-sizing: border-box;
}

.esm-card,
.esm-admin-card {
	background: #fff;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	padding: 16px;
	margin-bottom: 16px;
}

.esm-card h3 {
	margin-top: 0;
}

.esm-card-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

@media (min-width: 640px) {
	.esm-card-grid {
		grid-template-columns: 1fr 1fr;
	}
}

.esm-notice {
	padding: 12px 14px;
	border-radius: var(--esm-radius);
	margin-bottom: 16px;
}

.esm-notice p:last-child {
	margin-bottom: 0;
}

.esm-notice-info {
	background: var(--esm-color-info-bg);
	color: var(--esm-color-primary-dark);
}

.esm-notice-success {
	background: var(--esm-color-success-bg);
	color: var(--esm-color-success);
}

.esm-notice-error {
	background: var(--esm-color-error-bg);
	color: var(--esm-color-error);
}

.esm-btn {
	display: inline-block;
	padding: 10px 18px;
	border-radius: var(--esm-radius);
	border: 1px solid transparent;
	font-size: 15px;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
}

.esm-btn-primary {
	background: var(--esm-color-primary);
	color: #fff;
}

.esm-btn-primary:hover {
	background: var(--esm-color-primary-dark);
}

.esm-btn-secondary {
	background: #fff;
	color: var(--esm-color-text);
	border-color: var(--esm-color-border);
}

.esm-form-row {
	margin-bottom: 14px;
}

.esm-form-row label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
	font-size: 14px;
}

.esm-field-note {
	font-weight: 400;
	font-size: 12px;
	color: #767676;
}

/* v1.45.0: the explicit "current selection" recap on the region/city
   picker - a plain-language summary of what's checked, so it never
   depends on visually spotting a checked box inside a long list. */
.esm-current-selection {
	background: var(--esm-color-bg-subtle, #f5f5f5);
	border-radius: 6px;
	padding: 8px 12px;
	font-size: 14px;
	margin: 6px 0 12px;
}

.esm-work-cities-details summary .esm-badge {
	display: inline-block;
	margin-inline-start: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	background: var(--esm-color-success-bg);
	color: var(--esm-color-success);
}

/* v1.45.0: the report-a-user card is now a collapsed <details> toggle
   (see templates/shared/report-form.php) instead of an always-open
   form, so it doesn't take up space for the many users who never need
   it. The <summary> is styled to read as a button rather than a bare
   disclosure triangle. */
.esm-report-card {
	padding: 0;
}

.esm-report-toggle-summary {
	cursor: pointer;
	list-style: none;
	padding: 16px;
	font-weight: 700;
	font-size: 16px;
	color: var(--esm-color-text);
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.esm-report-toggle-summary::-webkit-details-marker {
	display: none;
}

.esm-report-toggle-summary::after {
	content: "\002B"; /* plus sign - collapsed state */
	font-size: 20px;
	line-height: 1;
	color: var(--esm-color-text-muted, #777);
}

.esm-report-toggle[open] > .esm-report-toggle-summary::after {
	content: "\2212"; /* minus sign - expanded state */
}

.esm-report-toggle-body {
	padding: 0 16px 16px;
}

.esm-form-row input[type="text"],
.esm-form-row input[type="email"],
.esm-form-row input[type="tel"],
.esm-form-row input[type="password"],
.esm-form-row input[type="number"],
.esm-form-row select,
.esm-form-row textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	font-size: 15px;
	background: #fff;
	color: var(--esm-color-text);
}

.esm-checkbox-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.esm-checkbox-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 400;
	background: #f8fafc;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	padding: 6px 10px;
	font-size: 14px;
}

/* v1.40.0: worker/employer "select specific cities" checklist - a
   scrollable, one-per-row list (unlike the wrapping .esm-checkbox-group
   used for the short region list above it), since the settlements list
   can run into the hundreds. Paired with a type-to-filter search input
   (esm-settlement-search) right above it. */
.esm-settlement-search {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	font-size: 15px;
	margin-bottom: 8px;
}

.esm-settlement-checklist {
	flex-wrap: nowrap;
	flex-direction: column;
	max-height: 260px;
	overflow-y: auto;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	padding: 6px;
	background: #fff;
	gap: 2px;
}

.esm-settlement-checklist .esm-checkbox-item {
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 8px 6px;
	justify-content: flex-start;
}

.esm-settlement-checklist .esm-checkbox-item:not(:last-child) {
	border-bottom: 1px solid #f1f5f9;
}

/* Larger tap target on touch/mobile - the whole real-feedback reason
   for this change (a native <select multiple> needed a modifier key on
   desktop and couldn't multi-select at all on a phone). */
.esm-settlement-checklist .esm-checkbox-item input[type="checkbox"] {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.esm-image-preview {
	display: block;
	max-width: 120px;
	max-height: 120px;
	border-radius: var(--esm-radius);
	margin-top: 8px;
	object-fit: cover;
}

.esm-status-badge {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
}

.esm-status-pending {
	background: var(--esm-color-warning-bg);
	color: var(--esm-color-warning);
}

.esm-status-approved {
	background: var(--esm-color-success-bg);
	color: var(--esm-color-success);
}

.esm-status-suspended {
	background: var(--esm-color-error-bg);
	color: var(--esm-color-error);
}

/* v1.44.0: loyalty points - "featured worker" badge + a slightly
   emphasized card variant for the free-for-workers / points notices. */
.esm-badge {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 8px;
}

.esm-badge-featured {
	background: var(--esm-color-warning-bg);
	color: var(--esm-color-warning);
}

.esm-card-highlight {
	background: var(--esm-color-success-bg);
	border-radius: 8px;
	padding: 14px 16px;
	margin-bottom: 16px;
}

.esm-dashboard-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 16px;
}

.esm-avatar {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	object-fit: cover;
}

.esm-form-footer {
	text-align: center;
	font-size: 14px;
	color: var(--esm-color-muted);
}

.esm-bottom-nav {
	position: sticky;
	bottom: 0;
	display: flex;
	background: #fff;
	border-top: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius) var(--esm-radius) 0 0;
	overflow: hidden;
	margin-top: 16px;
}

.esm-bottom-nav-item {
	flex: 1;
	text-align: center;
	padding: 12px 0;
	text-decoration: none;
	color: var(--esm-color-muted);
	font-size: 13px;
}

.esm-bottom-nav-active {
	color: var(--esm-color-primary);
	font-weight: 600;
}

.esm-job-filter-form {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 12px;
}

.esm-job-filter-form input[type="text"],
.esm-job-filter-form input[type="date"] {
	flex: 1;
	min-width: 140px;
	padding: 10px 12px;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
}

.esm-job-filter-form select {
	padding: 10px 12px;
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
}

/* v1.8.0: a native <input type="date"> shows no placeholder text of
   its own (browsers ignore the placeholder attribute for date inputs),
   so the field looked blank/unlabeled until clicked. This small inline
   label ("תאריך:") sits right before the field, inside the same filter
   bar, without breaking its flex-wrap layout. */
.esm-filter-date-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: var(--esm-color-muted);
	flex: 1;
	min-width: 160px;
}

.esm-filter-date-label input[type="date"] {
	flex: 1;
	min-width: 0;
}

/* v1.29.0: the terms-of-service agreement, embedded inline in the
   registration form (see ESM_Legal + ?esm_embed=1) so a person can
   read it without leaving the form - a small scrollable window, not a
   full page takeover, with a link to open it in full separately. */
.esm-terms-embed-frame {
	border: 1px solid var(--esm-color-border);
	border-radius: var(--esm-radius);
	overflow: hidden;
	margin-top: 6px;
}

.esm-terms-embed-frame iframe {
	width: 100%;
	height: 220px;
	border: 0;
	display: block;
}

/* v1.8.0: visually distinguish the two invite paths on the worker-
   directory card - inviting into an existing job posting (blue accent)
   vs a direct one-off invite with no job posting behind it (orange
   accent) - previously both looked identical apart from their button
   text. */
.esm-invite-block {
	margin-top: 12px;
	padding: 12px;
	border-radius: var(--esm-radius);
	border-right: 3px solid transparent;
	background: var(--esm-app-bg);
}

.esm-invite-block-title {
	margin: 0 0 8px;
	font-size: 13px;
	font-weight: 700;
}

.esm-invite-block-existing {
	border-right-color: var(--esm-color-primary);
}

.esm-invite-block-existing .esm-invite-block-title {
	color: var(--esm-color-primary);
}

.esm-invite-block-direct {
	border-right-color: #f97316;
}

.esm-invite-block-direct > summary.esm-invite-block-title {
	color: #c2410c; /* v1.279.0: AA contrast */
	cursor: pointer;
}

.esm-booking-response-form {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 8px;
}

.esm-shortcodes-table {
	width: 100%;
	border-collapse: collapse;
}

.esm-shortcodes-table th,
.esm-shortcodes-table td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--esm-color-border);
	text-align: right;
}

/* v1.44.0: loyalty points ledger breakdown (employer + worker dashboards). */
.esm-simple-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 10px;
}

.esm-simple-table th,
.esm-simple-table td {
	padding: 8px 10px;
	border-bottom: 1px solid var(--esm-color-border);
	text-align: right;
	font-size: 14px;
}

.esm-job-card,
.esm-applicant-card {
	border-right: 4px solid var(--esm-color-primary);
}

/* v1.20.0: compact public job listing cards - a click-through
   summary instead of the full job body inline, so the public jobs
   page doesn't turn into one long, heavy scroll. Reuses .esm-card /
   .esm-card-grid rather than introducing a parallel card system. */
.esm-jobs-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

@media (min-width: 640px) {
	.esm-jobs-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 1024px) {
	.esm-jobs-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

.esm-job-card-compact {
	display: block;
	text-decoration: none;
	color: inherit;
	padding: 14px 16px;
	margin-bottom: 0;
}

.esm-job-card-compact:hover {
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
}

.esm-job-card-compact h3 {
	margin: 6px 0 4px;
	font-size: 17px;
}

.esm-job-card-compact .esm-job-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	font-size: 13px;
	color: var(--esm-color-muted, #666);
	margin: 0 0 6px;
}

.esm-job-card-compact .esm-job-card-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 4px;
}

/* v1.22.0: public marketplace board "role headcount" cards - a big
   count badge + role name, deliberately never a person's name. Used
   for both the homepage-embedded board and the standalone board page. */
.esm-board-count-grid {
	margin-top: 12px;
}

.esm-board-count-card {
	position: relative;
	text-align: center;
	padding-top: 18px;
}

.esm-board-count-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 10px;
	border-radius: 999px;
	background: var(--esm-color-primary, #1d4ed8);
	color: #fff;
	font-size: 20px;
	font-weight: 800;
	margin-bottom: 8px;
}

.esm-board-count-card h3 {
	margin: 0 0 6px;
	font-size: 17px;
}

.esm-board-count-breakdown {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	margin: 6px 0;
}

/* v1.24.0: board cards became clickable (both the aggregate role-count
   cards and the individual shift cards) - reuses the same "card as
   plain link" treatment as .esm-job-card-compact above (no underline,
   inherit text color, a subtle hover lift) rather than inventing a
   second link-card style. */
.esm-board-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.esm-board-card-link:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.10);
}

/* The role-count card and its "הזמנה ישירה" button (employer-only)
   are two separate links (never one nested inside the other - invalid
   HTML), so they're wrapped together here to stay visually as one
   grid cell. */
.esm-board-count-card-wrap {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.esm-board-invite-btn {
	width: 100%;
	text-align: center;
}

/* =====================================================================
   v1.25.0: board visual pass - pill tabs, live count badge, role icon
   circles, count pills, "day chip" shift badges. Same aggregate-only
   data as before (see class-esm-shortcodes.php docblocks) - only the
   presentation changed. Kept alongside (not replacing) the v1.22-1.24
   classes above, which may still be referenced elsewhere.
   ===================================================================== */

.esm-board-head-card {
	padding-bottom: 12px;
}

.esm-board-head-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
}

.esm-board-head-row h2 {
	margin: 0;
}

.esm-board-live-count {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--esm-color-success-bg, #dcfce7);
	color: var(--esm-color-success, #15803d);
	border-radius: 999px;
	padding: 5px 12px;
	font-size: 14px;
	white-space: nowrap;
}

.esm-board-live-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--esm-color-success, #15803d);
	box-shadow: 0 0 0 3px rgba(21, 128, 61, 0.18);
}

.esm-board-pill-tabs {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin: 14px 0 0;
}

.esm-pill-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 18px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	border: 2px solid transparent;
	transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.esm-pill-btn:hover {
	transform: translateY(-1px);
}

.esm-pill-btn-orange {
	background: #fff7ed;
	color: #c2410c;
	border-color: #fdba74;
}

.esm-pill-btn-orange.is-active {
	background: #c2410c;
	color: #fff;
	border-color: #c2410c;
	box-shadow: 0 4px 12px rgba(249, 115, 22, 0.3);
}

.esm-pill-btn-blue {
	background: #eff6ff;
	color: var(--esm-color-primary-dark, #1e3a8a);
	border-color: #93c5fd;
}

.esm-pill-btn-blue.is-active {
	background: var(--esm-color-primary, #1d4ed8);
	color: #fff;
	border-color: var(--esm-color-primary, #1d4ed8);
	box-shadow: 0 4px 12px rgba(29, 78, 216, 0.3);
}

.esm-board-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
}

.esm-role-icon-circle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: linear-gradient(135deg, #eff6ff, #fff7ed);
	font-size: 22px;
}

.esm-count-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: var(--esm-color-primary, #1d4ed8);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
}

.esm-day-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 6px 0;
}

.esm-day-chip {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: var(--esm-color-success-bg, #dcfce7);
	color: var(--esm-color-success, #15803d);
	border-radius: 999px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 600;
}

.esm-day-chip-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--esm-color-success, #15803d);
}

.esm-board-details-link {
	display: inline-block;
	margin-top: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--esm-color-primary, #1d4ed8);
}

/* Tab/filter swap in progress (see esm-frontend.js) - a brief, subtle
   dimming rather than a spinner, since the swap is normally fast and
   a spinner would flash distractingly on a fast connection. */
.esm-marketplace-board-loading {
	opacity: 0.55;
	pointer-events: none;
	transition: opacity 0.15s ease;
}

.esm-job-row {
	padding: 10px 0;
	border-bottom: 1px solid var(--esm-color-border);
}

.esm-job-row:last-child {
	border-bottom: none;
}

@media (min-width: 640px) {
	.esm-bottom-nav {
		position: static;
		border-radius: var(--esm-radius);
	}
}

/* v1.11.0: in-app notifications bell */
.esm-notifications-bell {
	background: var(--esm-color-surface, #fff);
	border: 1px solid var(--esm-color-border, #e2e2e2);
	border-radius: var(--esm-radius, 8px);
	padding: 12px 16px;
	margin-bottom: 16px;
}

.esm-notifications-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
}

.esm-btn-small {
	padding: 4px 10px;
	font-size: 0.85em;
}

.esm-notifications-list {
	list-style: none;
	margin: 10px 0 0;
	padding: 0;
}

.esm-notifications-list li {
	padding: 8px 0;
	border-bottom: 1px solid var(--esm-color-border, #eee);
	display: flex;
	justify-content: space-between;
	gap: 10px;
	align-items: baseline;
	flex-wrap: wrap;
}

.esm-notifications-list li:last-child {
	border-bottom: none;
}

.esm-notification-unread {
	font-weight: 600;
}

.esm-notification-time {
	font-size: 0.8em;
	color: var(--esm-color-muted, #888);
	white-space: nowrap;
}

/* v1.18.0: Worker Monthly Availability Calendar (Phase C) - mobile-first */
.esm-availability-section {
	margin: 24px 0;
	padding-top: 16px;
	border-top: 1px solid var(--esm-color-border, #e2e2e2);
}

.esm-avail-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}

.esm-avail-badge {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
}

.esm-avail-morning,
.esm-avail-cell.esm-avail-morning { background: #fef3c7; color: #92400e; }
.esm-avail-evening,
.esm-avail-cell.esm-avail-evening { background: #dbeafe; color: #1e40af; }
.esm-avail-both,
.esm-avail-cell.esm-avail-both { background: #dcfce7; color: #166534; }
.esm-avail-unavailable,
.esm-avail-cell.esm-avail-unavailable { background: #f1f5f9; color: #475569; }

.esm-avail-month-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	gap: 8px;
}

.esm-avail-month-label {
	font-size: 16px;
}

.esm-avail-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 3px;
	margin-bottom: 12px;
}

.esm-avail-grid-header {
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: var(--esm-color-muted, #666);
	padding-bottom: 4px;
}

.esm-avail-cell {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 48px; /* touch-friendly */
	border-radius: 6px;
	cursor: pointer;
	padding: 4px 2px;
	text-align: center;
}

.esm-avail-cell-empty {
	min-height: 48px;
}

.esm-avail-cell-checkbox {
	position: absolute;
	top: 3px;
	left: 3px;
	margin: 0;
	width: 14px;
	height: 14px;
}

.esm-avail-cell-day {
	font-size: 13px;
	font-weight: 700;
}

.esm-avail-cell-status {
	font-size: 9px;
	line-height: 1.2;
}

.esm-avail-cell-custom {
	position: absolute;
	top: 1px;
	right: 3px;
	font-weight: 900;
	font-size: 12px;
}

.esm-avail-cell:has(.esm-avail-cell-checkbox:checked) {
	outline: 2px solid var(--esm-color-primary, #1d4ed8);
	outline-offset: 1px;
}

.esm-avail-bulk-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
}

.esm-avail-copy-form {
	margin-bottom: 20px;
}

.esm-avail-recurring-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

@media (min-width: 640px) {
	.esm-avail-cell-status {
		font-size: 10px;
	}
}

/* v1.51.0: dashboard time-of-day greeting - the greeting text itself
 * ("בוקר טוב" / "צהריים טובים" / "ערב טוב") larger and bold.
 * v1.56.0: the person's own name is now ALSO bold, but in the site's
 * brand color (the same token the theme's Customizer brand-color
 * setting feeds - --esm-color-primary-dark - so it always matches
 * whatever primary color is active) rather than plain/normal weight,
 * so it reads as a distinct, personalized highlight next to the
 * greeting phrase instead of blending into it. */
.esm-dashboard-greeting {
	margin: 0 0 4px;
}

.esm-dashboard-greeting .esm-greeting-text {
	font-size: 1.15em;
	font-weight: 700;
}

.esm-dashboard-greeting .esm-greeting-name {
	font-size: 1.15em;
	font-weight: 700;
	color: var(--esm-color-primary-dark);
}

/* v1.51.0: a past-date calendar cell - disabled checkbox, muted so it
 * reads as "not selectable" rather than looking like a normal day. */
.esm-avail-cell-past {
	opacity: 0.45;
	cursor: not-allowed;
}

/* v1.57.0: direct user request - the worker-facing "estimated daily
 * pay" line (jobs-list.php + job-single.php) and its small "?" tips
 * hint. Styled as a clearly-secondary/estimate note (softer color,
 * smaller size) - never as if it were a confirmed amount - with a
 * lightweight, JS-free CSS-only tooltip: the bubble is hidden by
 * default and revealed on hover OR keyboard focus (:focus-within),
 * so it works for touch (tap to focus) and keyboard users too, not
 * just mouse hover. */
.esm-pay-estimate {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--esm-color-primary-dark, #333);
	font-size: 0.92em;
}

.esm-tip-hint {
	position: relative;
	display: inline-flex;
	outline: none;
}

.esm-tip-hint-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #e0e0e0;
	color: #444;
	font-size: 0.75em;
	font-weight: 700;
	cursor: help;
	user-select: none;
}

.esm-tip-hint-bubble {
	display: none;
	position: absolute;
	bottom: calc(100% + 6px);
	right: 0;
	z-index: 5;
	width: 220px;
	padding: 8px 10px;
	border-radius: 6px;
	background: #333;
	color: #fff;
	font-size: 0.85em;
	line-height: 1.4;
	text-align: right;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.esm-tip-hint:hover .esm-tip-hint-bubble,
.esm-tip-hint:focus .esm-tip-hint-bubble,
.esm-tip-hint:focus-within .esm-tip-hint-bubble {
	display: block;
}

/* v1.57.2: the general "מספר עובדים נדרש" field on the post-job forms,
 * while it's auto-computed (and disabled) from the per-role counts
 * above it - see post-job.php/post-job-multi-date.php's own JS. */
.esm-field-auto-computed {
	background: #f0f0f0;
	color: #555;
	cursor: not-allowed;
}

/* v1.57.4: visual calendar for multi-date job posting - direct user
 * request for a friendlier alternative to typing/adding date rows one
 * by one ("יומן ויזואלי וכל תאריך שלוחצים עליו לשיבוץ יפתח אפשריות").
 * Purely presentational - the calendar only calls the existing
 * addRow()/removal JS, so the field-name contract submitted to the
 * server is completely unchanged. RTL-friendly (day letters/months in
 * Hebrew, mobile-first grid). */
.esm-mdcal-card {
	margin-bottom: 16px;
}

.esm-mdcal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 8px;
}

.esm-mdcal-months {
	flex: 1;
}

.esm-mdcal-nav {
	flex: 0 0 auto;
	min-width: 40px;
	padding: 6px 10px;
}

.esm-mdcal-grid-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.esm-mdcal-month {
	flex: 1 1 260px;
	min-width: 220px;
}

.esm-mdcal-month-title {
	font-weight: 700;
	text-align: center;
	margin-bottom: 6px;
}

.esm-mdcal-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 4px;
}

.esm-mdcal-day-head {
	text-align: center;
	font-size: 0.8em;
	color: #777;
	padding: 4px 0;
}

.esm-mdcal-cell {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.9em;
}

.esm-mdcal-cell-blank {
	visibility: hidden;
}

.esm-mdcal-day {
	border: 1px solid #ddd;
	border-radius: 6px;
	background: #fff;
	color: #222;
	cursor: pointer;
	padding: 0;
}

.esm-mdcal-day:hover:not(:disabled) {
	border-color: #999;
	background: #f5f5f5;
}

.esm-mdcal-today {
	border-color: #666;
	font-weight: 700;
}

.esm-mdcal-selected {
	background: #2c7a4b;
	border-color: #2c7a4b;
	color: #fff;
	font-weight: 700;
}

.esm-mdcal-past {
	background: #f5f5f5;
	color: #ccc;
	cursor: not-allowed;
	border-color: #eee;
}


/* v1.58.0 — role-scoped shift cards/details polish */
.esm-business-type-badge {
	font-size: .78rem;
	font-weight: 600;
	opacity: .9;
}
.esm-job-card-compact h3, .esm-board-card-link h3 {
	margin-top: .45rem;
}
.esm-job-card .esm-pay-estimate {
	font-weight: 700;
}
@media (max-width: 640px) {
	.esm-jobs-grid { grid-template-columns: 1fr; }
	.esm-job-card, .esm-board-card-link { width: 100%; }
}
\n\n/* v1.59.0: Extrally marketplace board - denser, app-like information hierarchy. */\n.esm-board-v2 { max-width: 1120px; margin-inline: auto; }\n.esm-board-v2 .esm-board-head-card { padding: 22px; border: 1px solid var(--esm-color-border); box-shadow: 0 8px 28px rgba(15,23,42,.05); }\n.esm-board-title-block { min-width: 0; }\n.esm-board-eyebrow { display:block; margin-bottom:4px; font-size:12px; font-weight:800; color:var(--esm-color-primary,#1d4ed8); letter-spacing:.02em; }\n.esm-board-title-block h2 { font-size: clamp(22px,3vw,30px); line-height:1.15; }\n.esm-board-title-block p { margin:6px 0 0; color:#475569; font-size:14px; }\n.esm-board-filter-bar { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)) auto; gap:10px; align-items:end; margin-top:18px; }\n.esm-board-filter-bar select,.esm-board-filter-bar input,.esm-board-filter-bar button { min-height:46px; width:100%; }\n.esm-board-v2 .esm-jobs-grid { gap:16px; margin-top:16px; }\n.esm-board-v2 .esm-board-card-link { position:relative; min-height:330px; padding:18px; border:1px solid #e2e8f0; border-right:1px solid #e2e8f0; border-radius:18px; box-shadow:0 5px 18px rgba(15,23,42,.045); transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease; }\n.esm-board-v2 .esm-board-card-link:hover { transform:translateY(-2px); border-color:#bfdbfe; box-shadow:0 12px 30px rgba(15,23,42,.09); }\n.esm-board-v2 .esm-board-card-link h3 { font-size:22px; line-height:1.2; margin:10px 0 12px; }\n.esm-board-v2 .esm-job-card-meta { display:flex; flex-wrap:wrap; gap:8px 14px; margin:8px 0; color:#475569; }\n.esm-board-v2 .esm-pay-estimate { margin:12px 0 0; padding:10px 12px; background:#f8fafc; border-radius:12px; font-weight:800; }\n.esm-board-openings { margin:12px 0 4px; color:#0f172a; }\n.esm-board-v2 .esm-board-details-link { margin-top:14px; font-size:14px; }\n.esm-board-v2 .esm-board-count-card { min-height:240px; }\n.esm-board-v2 .esm-board-count-card .esm-form-footer { color:#475569; line-height:1.6; }\n@media (max-width:900px){ .esm-board-filter-bar{grid-template-columns:1fr 1fr;} .esm-board-filter-bar button{grid-column:1/-1;} }\n@media (max-width:639px){ .esm-board-v2{padding-inline:10px;} .esm-board-v2 .esm-board-head-card{padding:16px;} .esm-board-head-row{align-items:flex-start;} .esm-board-live-count{margin-top:4px;} .esm-board-pill-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;} .esm-pill-btn{justify-content:center;padding:10px 8px;} .esm-board-filter-bar{grid-template-columns:1fr;} .esm-board-filter-bar button{grid-column:auto;} .esm-board-v2 .esm-board-card-link{min-height:0;padding:16px;} }\n
/* v1.59.1 - make worker headcount semantics explicit. */
.esm-worker-count-label {
	margin: .25rem 0 .5rem;
	font-size: .88rem;
	font-weight: 700;
}
\n\n/* v1.60.0: focused single-shift detail experience. */
.esm-job-detail-v2 { max-width: 820px; margin-inline:auto; padding:24px; border-radius:20px; box-shadow:0 10px 30px rgba(15,23,42,.06); }
.esm-job-detail-top { padding-bottom:16px; border-bottom:1px solid #e2e8f0; }
.esm-job-detail-top h2 { margin:10px 0 0; font-size:clamp(26px,4vw,34px); line-height:1.15; }
.esm-job-detail-facts { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; padding:18px 0 8px; }
.esm-job-detail-facts p { margin:0; padding:12px 14px; background:#f8fafc; border-radius:12px; }
.esm-job-detail-v2 .esm-pay-estimate { padding:14px 16px; background:#eff6ff; border-radius:14px; }
.esm-job-staffing-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:18px 0; }
.esm-job-staffing-summary > div { text-align:center; padding:14px 8px; border:1px solid #e2e8f0; border-radius:14px; background:#fff; }
.esm-job-staffing-summary span { display:block; color:#475569; font-size:12px; margin-bottom:3px; }
.esm-job-staffing-summary strong { display:block; font-size:22px; color:#0f172a; }
.esm-job-detail-v2 form .esm-btn-primary { min-height:50px; padding-inline:24px; font-size:16px; font-weight:800; }
@media(max-width:639px){ .esm-job-detail-v2{padding:16px;border-radius:16px;} .esm-job-detail-facts{grid-template-columns:1fr;} .esm-job-staffing-summary{gap:7px;} }


/* v1.61.0: employer workflow - denser, app-like management surfaces. */
.esm-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin:0 0 18px; }
.esm-section-heading h2 { margin:2px 0 4px; }
.esm-section-heading p { margin:0; color:var(--esm-color-muted,#475569); }
.esm-eyebrow { display:block; font-size:12px; font-weight:700; color:var(--esm-color-muted,#475569); margin-bottom:4px; }
.esm-employer-jobs-grid { display:grid; grid-template-columns:1fr; gap:14px; }
.esm-employer-job-card { margin:0; padding:18px; border-right:4px solid var(--esm-color-primary,#1d4ed8); }
.esm-employer-job-card h3 { margin:8px 0 10px; font-size:20px; }
.esm-job-card-top,.esm-applicant-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.esm-applicant-card { padding:18px; }
.esm-applicant-card-head { padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid var(--esm-color-border,#e2e8f0); }
.esm-applicant-card-head h3 { margin:2px 0 0; font-size:20px; }
.esm-applicant-statuses { display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-start; }
@media (min-width:760px){ .esm-employer-jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (min-width:1100px){ .esm-employer-jobs-grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:639px){ .esm-section-heading{align-items:stretch;flex-direction:column;} .esm-section-heading .esm-btn{width:100%;text-align:center;} .esm-applicant-card-head{flex-direction:column;} }

/* v1.62.0 - operational dashboard overview */
.esm-dashboard-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 12px}.esm-overview-stat{background:#fff;border:1px solid #dbe3ef;border-radius:14px;padding:16px;text-align:center;box-shadow:0 4px 16px rgba(25,45,80,.04)}.esm-overview-stat strong{display:block;font-size:1.65rem;line-height:1;color:#2055db;margin-bottom:8px}.esm-overview-stat span{font-size:.9rem;color:#59677d}.esm-dashboard-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.esm-dashboard-actions .esm-btn{min-width:140px;text-align:center}.esm-dashboard-focus-card{border-inline-start:4px solid #2055db}.esm-dashboard-task{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #edf1f6}.esm-dashboard-task:last-child{border-bottom:0}.esm-dashboard-task div{display:flex;flex-direction:column;gap:4px}.esm-dashboard-task span:not(.esm-status-badge){color:#66758a;font-size:.9rem}
@media(max-width:640px){.esm-dashboard-overview{grid-template-columns:1fr 1fr}.esm-overview-stat:last-child{grid-column:auto}.esm-dashboard-actions{display:grid;grid-template-columns:1fr 1fr}.esm-dashboard-actions .esm-btn:first-child{grid-column:1/-1}.esm-dashboard-actions .esm-btn{min-width:0}.esm-dashboard-task{align-items:flex-start;flex-direction:column}}

/* v1.63.0: dashboard summary cards are actionable navigation. */
.esm-overview-stat{text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.esm-overview-stat:hover,.esm-overview-stat:focus-visible{transform:translateY(-2px);box-shadow:0 8px 24px rgba(25,45,80,.10);border-color:#b8c9ee;outline:none}.esm-overview-stat:focus-visible{box-shadow:0 0 0 3px rgba(32,85,219,.18),0 8px 24px rgba(25,45,80,.10)}
html{scroll-behavior:smooth}#esm-availability-calendar{scroll-margin-top:96px}

/* v1.64.0: contextual dashboard destinations and clearer filtered views. */
.esm-active-filter{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px;padding:12px 14px;border:1px solid #cfe0ff;background:#f5f9ff;border-radius:12px}.esm-active-filter strong{color:#183f9f}.esm-active-filter a,.esm-inline-link{color:#2055db;font-weight:700;text-decoration:none}.esm-active-filter a:hover,.esm-inline-link:hover{text-decoration:underline}.esm-application-shift-summary{background:#f8faff;border:1px solid #e4eaf3;border-radius:12px;padding:12px 14px;margin:10px 0 14px}.esm-application-shift-summary p{margin:6px 0}
@media(max-width:640px){.esm-active-filter{align-items:flex-start;flex-direction:column}.esm-application-shift-summary{padding:11px 12px}}


/* v1.65.0 — employer staffing command center */
.esm-staffing-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.esm-staffing-stat{background:#fff;border:1px solid var(--esm-color-border,#dbe3ef);border-radius:14px;padding:14px;text-align:center}.esm-staffing-stat strong{display:block;font-size:1.55rem;color:#2055db;line-height:1.1;margin-bottom:6px}.esm-staffing-stat span{font-size:.84rem;color:#475569}.esm-role-management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 22px}.esm-role-management-card{background:#fff;border:1px solid #dbe3ef;border-inline-start:4px solid #2055db;border-radius:14px;padding:16px}.esm-role-management-card.is-covered{border-inline-start-color:#22a45d}.esm-role-management-card h3{margin:3px 0 12px;font-size:1.08rem}.esm-role-management-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.esm-role-management-numbers span{background:#f7f9fc;border-radius:9px;padding:8px 4px;text-align:center;font-size:.72rem;color:#475569}.esm-role-management-numbers strong{display:block;font-size:1rem;color:#111827;margin-bottom:2px}.esm-role-wage{font-weight:700;margin:8px 0 12px}.esm-btn-small{padding:8px 11px;font-size:.86rem}
@media(max-width:760px){.esm-staffing-overview{grid-template-columns:1fr 1fr}.esm-role-management-grid{grid-template-columns:1fr}.esm-role-management-numbers{gap:8px}}

.esm-applicant-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0}.esm-filter-chip{appearance:none;border:1px solid #cfd9e8;background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer;font:inherit;color:#334155}.esm-filter-chip span{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:#eef3ff;color:#2055db;margin-inline-start:4px;font-size:.75rem}.esm-filter-chip.is-active{background:#2055db;color:#fff;border-color:#2055db}.esm-filter-chip.is-active span{background:rgba(255,255,255,.18);color:#fff}.esm-applicant-card[hidden]{display:none!important}


/* v1.66.0 — shift lifecycle + fast post-shift feedback */
.esm-shift-context{display:inline-flex;align-items:center;gap:6px;margin:8px 0 0!important;padding:7px 10px;border-radius:999px;background:#eef5ff;color:#1746a2;font-weight:700;font-size:.92rem}
.esm-rating-form{margin-top:14px;padding:14px;border:1px solid #e3e9f3;border-radius:14px;background:#fafcff}.esm-rating-form textarea{width:100%;margin:10px 0;min-height:78px}.esm-star-rating{display:inline-flex;flex-direction:row-reverse;gap:4px;margin:8px 0}.esm-star-rating input{position:absolute;opacity:0;pointer-events:none}.esm-star-rating label{font-size:30px;line-height:1;color:#c9d1df;cursor:pointer;transition:transform .15s ease,color .15s ease}.esm-star-rating label:hover,.esm-star-rating label:hover~label,.esm-star-rating input:checked~label{color:#f4b400}.esm-star-rating label:hover{transform:scale(1.08)}.esm-star-rating input:focus-visible+label{outline:2px solid #2457db;outline-offset:3px;border-radius:4px}
@media(max-width:640px){.esm-star-rating label{font-size:34px}.esm-rating-form{padding:12px}}

/* v1.67.0 — employer onboarding wizard + safe cancellation confirmation. */
.esm-registration-wizard{max-width:760px;margin-inline:auto;scroll-margin-top:90px}.esm-wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 24px}.esm-wizard-progress span{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 6px;border-radius:12px;background:#f3f6fb;color:#748198;font-size:.78rem;font-weight:700}.esm-wizard-progress b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#e1e8f3;color:#607089}.esm-wizard-progress span.is-active{background:#eaf2ff;color:#1749b5}.esm-wizard-progress span.is-active b{background:#2457db;color:#fff}.esm-wizard-progress span.is-complete{color:#18794e;background:#ecfbf3}.esm-wizard-progress span.is-complete b{background:#25a866;color:#fff}.esm-wizard-heading{margin:0 0 22px;padding:18px 20px;border:1px solid #e0e8f4;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.esm-wizard-heading span{font-size:.78rem;font-weight:800;color:#2457db}.esm-wizard-heading h3{font-size:1.45rem;margin:5px 0 5px}.esm-wizard-heading p{margin:0;color:#65748a}.esm-wizard-step{animation:esmWizardIn .18s ease}.esm-wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1f6}.esm-wizard-actions .esm-btn-primary{margin-inline-start:auto}.esm-wizard-actions-final .esm-btn-primary{min-width:190px}.esm-help-tip{display:inline-grid;place-items:center;width:20px;height:20px;margin-inline-start:5px;border:0;border-radius:50%;background:#e8eef8;color:#52647e;font-weight:900;font-size:12px;cursor:pointer;vertical-align:middle}.esm-form-row label{position:relative}.esm-help-tip__bubble{display:block;margin-top:7px;padding:9px 11px;border-radius:10px;background:#172033;color:#fff;font-size:.78rem;font-weight:400;line-height:1.5;max-width:420px;box-shadow:0 8px 22px rgba(15,23,42,.18)}@keyframes esmWizardIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.esm-confirm-modal[hidden]{display:none!important}.esm-confirm-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px}.esm-confirm-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(2px)}.esm-confirm-modal__dialog{position:relative;z-index:1;width:min(460px,100%);background:#fff;border-radius:20px;padding:24px;box-shadow:0 28px 80px rgba(15,23,42,.28);text-align:center}.esm-confirm-modal__x{position:absolute;inset-inline-end:14px;top:12px;border:0;background:transparent;font-size:26px;color:#475569;cursor:pointer}.esm-confirm-modal__icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#fff1e8;color:#c2410c;font-size:24px;font-weight:900}.esm-confirm-modal__dialog h3{font-size:1.35rem;margin:0 0 9px}.esm-confirm-modal__dialog p{color:#475569;line-height:1.65;margin:0}.esm-confirm-modal__warning{margin:15px 0;padding:11px 12px;border-radius:12px;background:#fff8e6;color:#8a5a00;font-size:.86rem;line-height:1.55}.esm-confirm-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.esm-btn-danger{background:#c9362b!important;border-color:#c9362b!important;color:#fff!important}.esm-modal-open{overflow:hidden}
@media(max-width:640px){.esm-wizard-progress{gap:4px}.esm-wizard-progress span{font-size:0;padding:8px 4px}.esm-wizard-progress b{font-size:.78rem}.esm-wizard-heading{padding:15px}.esm-wizard-heading h3{font-size:1.25rem}.esm-wizard-actions{display:grid;grid-template-columns:1fr 1fr}.esm-wizard-actions .esm-btn{width:100%;margin:0}.esm-confirm-modal{align-items:end;padding:10px}.esm-confirm-modal__dialog{border-radius:20px 20px 12px 12px;padding:22px 16px 16px}.esm-confirm-modal__actions{grid-template-columns:1fr}.esm-confirm-modal__actions .esm-btn-danger{order:-1}}

/* v1.68.0 — unified progressive forms. */
.esm-progressive-form>.esm-registration-wizard{margin-top:8px}.esm-auto-wizard .esm-wizard-progress em{font-style:normal}.esm-auto-wizard .esm-wizard-step>.esm-wizard-actions:last-child{margin-bottom:0}.esm-auto-wizard .esm-notice{margin-block:14px}.esm-auto-wizard .esm-form-row{margin-bottom:18px}.esm-auto-wizard input,.esm-auto-wizard select,.esm-auto-wizard textarea{transition:border-color .15s ease,box-shadow .15s ease}.esm-auto-wizard input:focus,.esm-auto-wizard select:focus,.esm-auto-wizard textarea:focus{border-color:#2457db;box-shadow:0 0 0 3px rgba(36,87,219,.1);outline:0}
@media(max-width:640px){.esm-auto-wizard{width:100%}.esm-auto-wizard .esm-wizard-progress{position:sticky;top:0;z-index:4;background:#fff;padding:7px 0}.esm-auto-wizard .esm-wizard-progress em{display:none}.esm-auto-wizard .esm-wizard-heading{margin-bottom:16px}.esm-auto-wizard .esm-form-row{margin-bottom:15px}.esm-auto-wizard input:not([type=checkbox]):not([type=radio]),.esm-auto-wizard select,.esm-auto-wizard textarea{min-height:48px;font-size:16px}.esm-auto-wizard .esm-checkbox-group{gap:8px}.esm-auto-wizard .esm-wizard-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);padding:12px 0 calc(12px + env(safe-area-inset-bottom));z-index:3}}

/* v1.69.0 — post-shift hours verification and transparent earnings summary. */
.esm-hours-verification{margin:16px 0;padding:16px;border:1px solid #dce5f2;border-radius:15px;background:#f9fbff}.esm-hours-verification h4{margin:0 0 10px;font-size:1.05rem}.esm-hours-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.esm-hours-summary span{display:block;padding:11px;border-radius:11px;background:#fff;border:1px solid #e6ebf3}.esm-hours-summary small{display:block;color:#6b778c;margin-bottom:4px}.esm-hours-summary strong{display:block;color:#15213a;font-size:1.05rem}.esm-hours-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.esm-hours-form label{display:flex;flex-direction:column;gap:5px;font-weight:700}.esm-hours-form input{width:150px;min-height:44px}.esm-worker-hours-summary{background:#f7fbf8;border-color:#d9eadf}
@media(max-width:640px){.esm-hours-summary{grid-template-columns:1fr}.esm-hours-form{display:grid;grid-template-columns:1fr}.esm-hours-form input,.esm-hours-form .esm-btn{width:100%}}
/* v1.70.0 — safer cancellation context + lifecycle presentation */
.esm-confirm-modal__reason-label{display:block;margin:16px 0 4px;font-weight:700;text-align:right}.esm-confirm-modal__reason-label span{display:block;font-size:12px;font-weight:400;color:#4b5565;margin-top:3px}.esm-confirm-modal__reason-label select{width:100%;margin-top:8px;min-height:46px;border:1px solid #d7deea;border-radius:10px;background:#fff;padding:8px 12px}.esm-lifecycle-strip{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.esm-lifecycle-step{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:#f3f6fb;color:#4b5565;font-size:13px}.esm-lifecycle-step.is-done{background:#edf7f0;color:#166534}.esm-lifecycle-step.is-current{background:#e9f0ff;color:#1d4ed8;font-weight:700}.esm-lifecycle-dot{width:8px;height:8px;border-radius:50%;background:currentColor}@media(max-width:640px){.esm-lifecycle-strip{display:grid;grid-template-columns:1fr 1fr}.esm-lifecycle-step{border-radius:12px;justify-content:center;text-align:center}}

/* v1.72.0 — action-oriented notification center */
.esm-notification-center{margin:18px 0;border:1px solid #e4eaf4;border-radius:18px;background:#fff;padding:18px;box-shadow:0 8px 28px rgba(31,53,93,.06)}
.esm-notifications-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.esm-notifications-header>div{display:flex;align-items:center;gap:8px}.esm-inline-form{display:inline;margin:0}
.esm-notification-tabs{display:flex;gap:8px;margin:14px 0}.esm-notification-tabs a{padding:8px 14px;border-radius:999px;background:#f4f7fb;text-decoration:none;font-weight:700;color:#44516a}.esm-notification-tabs a.is-active{background:#e8efff;color:#2055db}.esm-notification-tabs span{font-size:12px}
.esm-notifications-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.esm-notifications-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #edf0f5;border-radius:14px}.esm-notification-unread{background:#f7faff;border-color:#dce7ff!important}.esm-notification-copy{display:grid;gap:4px;min-width:0}.esm-notification-copy a,.esm-notification-copy span{font-weight:650;text-decoration:none}.esm-notification-copy small{color:#5b6578}.esm-notification-read-btn{width:30px;height:30px;border-radius:50%;border:1px solid #d7dfeb;background:#fff;cursor:pointer;color:#2055db;font-weight:800}.esm-notification-empty{text-align:center;padding:22px 10px;color:#69758b}.esm-notification-empty p{margin:6px 0 0}
@media(max-width:640px){.esm-notification-center{padding:14px;border-radius:16px}.esm-notifications-header{align-items:flex-start}.esm-notifications-header .esm-btn-small{padding:7px 9px;font-size:12px}.esm-notifications-list li{align-items:flex-start}.esm-notification-tabs{overflow-x:auto}}
.esm-trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 18px}.esm-trust-strip>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-radius:13px;background:#f7f9fc;border:1px solid #e8edf5}.esm-trust-strip span{color:#5b6578;font-size:13px}.esm-trust-strip strong{font-size:16px}.esm-dashboard-task-actions{display:flex;align-items:center;gap:10px}.esm-dashboard-task-actions a{font-weight:700;text-decoration:none;color:#2055db}
@media(max-width:640px){.esm-trust-strip{grid-template-columns:1fr}.esm-dashboard-task-actions{flex-direction:column;align-items:flex-end}}

/* v1.73.0 — history + reliability center */
.esm-history-filters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;margin:0 0 8px;scrollbar-width:thin}.esm-history-filters .esm-filter-chip{white-space:nowrap;text-decoration:none}.esm-history-filters .esm-filter-chip.is-active{background:#2055db;color:#fff;border-color:#2055db}.esm-reliability-center{padding:0!important;overflow:hidden}.esm-reliability-center summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;list-style:none}.esm-reliability-center summary::-webkit-details-marker{display:none}.esm-reliability-center summary span:first-child{display:flex;flex-direction:column;gap:3px}.esm-reliability-center summary small{font-weight:400;opacity:.72}.esm-reliability-center[open] summary{border-bottom:1px solid rgba(20,36,60,.08)}.esm-reliability-center>div,.esm-reliability-center>p,.esm-reliability-center>a{margin-left:20px;margin-right:20px}.esm-reliability-center>a{display:inline-block;margin-bottom:18px}.esm-reliability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:16px}.esm-reliability-grid>div{padding:12px;border:1px solid rgba(20,36,60,.09);border-radius:12px;text-align:center;background:#fff}.esm-reliability-grid strong{display:block;font-size:22px}.esm-reliability-grid span{font-size:12px;opacity:.75}@media(max-width:640px){.esm-reliability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.esm-history-filters{margin-inline:-4px;padding-inline:4px}}
.esm-job-mini-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.esm-job-mini-stats span,.esm-job-mini-stats .esm-job-mini-stat{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:10px;background:rgba(32,85,219,.045);font-size:11px;text-decoration:none;color:inherit}.esm-job-mini-stats .esm-job-mini-stat:hover{background:rgba(32,85,219,.09)}.esm-job-mini-stats strong{font-size:18px}@media(max-width:640px){.esm-job-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.74.0: equal mobile dashboard KPI cards; no 3+1 stretched layout. */
@media(max-width:640px){.esm-dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.esm-dashboard-overview .esm-overview-stat{min-height:138px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 10px}.esm-dashboard-overview .esm-overview-stat strong{font-size:2rem}.esm-dashboard-overview .esm-overview-stat span{line-height:1.55}}

/* v1.75.0 - next shift + Event Operations */
.esm-next-shift-card{background:linear-gradient(180deg,#fff,#f7faff);border:1px solid #cfdcf7;border-radius:20px;padding:20px;margin:18px 0;box-shadow:0 10px 28px rgba(32,85,219,.08)}
.esm-next-shift-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.esm-next-shift-head h3{font-size:1.35rem;margin:4px 0}.esm-next-shift-head p{margin:0;color:#475569}.esm-next-shift-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.esm-next-shift-facts span{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:11px}.esm-next-shift-facts small{display:block;color:#475569;margin-bottom:4px}.esm-next-shift-facts strong{display:block}.esm-next-shift-address{background:#eef4ff;border-radius:12px;padding:10px 12px}.esm-event-ops{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:18px;margin:20px 0}.esm-event-ops-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.esm-event-ops-head h3{margin:4px 0}.esm-event-ops-head p{margin:0;color:#475569}.esm-event-ops-list{display:grid;gap:8px}.esm-event-ops-row{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(100px,1fr));gap:10px;align-items:center;background:#f8fafc;border:1px solid #edf1f6;border-radius:13px;padding:12px}.esm-event-ops-person strong,.esm-event-ops-person span,.esm-event-ops-cell small,.esm-event-ops-cell strong{display:block}.esm-event-ops-person span,.esm-event-ops-cell small{color:#475569;font-size:.8rem}.esm-event-ops-person a{font-size:.85rem}.esm-event-ops-cell strong{font-size:.9rem;margin-top:3px}
@media(max-width:760px){.esm-next-shift-card{padding:16px}.esm-next-shift-facts{grid-template-columns:1fr 1fr}.esm-next-shift-head{align-items:center}.esm-event-ops{padding:14px}.esm-event-ops-head{display:block}.esm-event-ops-head>.esm-status-badge{display:inline-block;margin-top:10px}.esm-event-ops-row{grid-template-columns:1fr 1fr}.esm-event-ops-person{grid-column:1/-1;border-bottom:1px solid #e5eaf1;padding-bottom:8px}.esm-event-ops-cell:last-child{grid-column:1/-1}}

/* v1.76.0 - notification paging, read hierarchy, desktop job-card resilience, arrival details */
.esm-notification-read{background:#fafbfc;opacity:.72}.esm-notification-read .esm-notification-copy>a,.esm-notification-read .esm-notification-copy>span{color:#475569;font-weight:500}.esm-notification-unread{background:#f8fbff;border-inline-start:3px solid var(--esm-color-primary,#1d4ed8)}
.esm-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0 4px}.esm-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #dbe3ef;border-radius:10px;background:#fff;text-decoration:none;color:#334155;font-weight:700}.esm-pagination a.is-active{background:var(--esm-color-primary,#1d4ed8);border-color:var(--esm-color-primary,#1d4ed8);color:#fff}
.esm-arrival-card{margin:14px 0;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:#f8fbff}.esm-arrival-card h4{margin:0 0 10px}.esm-arrival-card p{margin:7px 0}.esm-arrival-card a{font-weight:800}
.esm-employer-job-card{min-width:0;overflow:hidden}.esm-employer-job-card p{overflow-wrap:anywhere}.esm-job-mini-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.esm-job-mini-stats>span,.esm-job-mini-stats>.esm-job-mini-stat{min-width:0!important;padding:10px 6px!important;text-align:center!important}.esm-job-mini-stats strong{display:block!important}.esm-employer-job-card .esm-btn{max-width:100%;white-space:normal}
@media(min-width:1100px){.esm-employer-jobs-grid{grid-template-columns:repeat(3,minmax(260px,1fr));}.esm-employer-job-card h3{font-size:19px;overflow-wrap:anywhere}}
@media(max-width:639px){.esm-notification-center{scroll-margin-top:90px}.esm-pagination a{min-width:42px;height:42px}.esm-arrival-card{padding:14px}}


/* v1.77.0 - mobile account exit + bounded marketplace pagination */
.esm-dashboard-header{position:relative;}
.esm-mobile-logout{display:none;text-decoration:none;color:#475569;font-size:13px;font-weight:700;align-items:center;gap:5px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;}
.esm-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:24px 0 10px;padding:4px;}
.esm-page-link{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;color:#334155;text-decoration:none;font-weight:800;}
.esm-page-link:hover,.esm-page-link:focus{border-color:#93b4ff;color:var(--esm-color-primary,#2455dc);}
.esm-page-link.is-current{background:var(--esm-color-primary,#2455dc);border-color:var(--esm-color-primary,#2455dc);color:#fff;pointer-events:none;}
@media(max-width:639px){.esm-mobile-logout{display:inline-flex;position:absolute;left:0;top:0}.esm-dashboard-header{padding-left:76px}.esm-pagination{gap:6px;margin-bottom:80px}.esm-page-link{min-width:38px;height:38px;border-radius:10px}}

/* v1.78.0 operational UX */
.esm-next-shift-arrival{display:grid;gap:4px;background:#eef6ff;border:1px solid #d8e8ff;border-radius:14px;padding:12px 14px;margin:12px 0}.esm-next-shift-arrival>strong{color:#173d9f}.esm-next-shift-actions{display:flex;gap:10px;flex-wrap:wrap}.esm-event-ops-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 16px}.esm-event-ops-summary>div{background:#f3f7fd;border-radius:12px;padding:10px;text-align:center}.esm-event-ops-summary strong,.esm-event-ops-summary span{display:block}.esm-event-ops-summary strong{font-size:1.2rem;color:#2055db}.esm-event-ops-summary span{font-size:.78rem;color:#475569}.esm-event-ops-row{grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(100px,1fr)) auto}.esm-event-ops-action a{font-weight:700;white-space:nowrap}.esm-applicant-card{scroll-margin-top:90px}
@media(max-width:760px){.esm-event-ops-summary{grid-template-columns:1fr 1fr}.esm-event-ops-row{grid-template-columns:1fr 1fr}.esm-event-ops-action{grid-column:1/-1}.esm-event-ops-action a{display:block;text-align:center;padding:8px;background:#fff;border-radius:9px}.esm-next-shift-actions>.esm-btn{flex:1 1 180px}}

/* v1.79.0: day-of-shift and Event Operations navigation */
.esm-shift-day-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#eaf8ef;border:1px solid #c9ecd5;border-radius:14px;padding:12px 14px;margin:12px 0}.esm-shift-day-banner strong{color:#147a43}.esm-shift-day-banner span{color:#4b6355;font-size:.9rem}.esm-event-ops-quicknav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;position:sticky;top:8px;z-index:4;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);padding:8px;border:1px solid #e5eaf1;border-radius:12px}.esm-event-ops-quicknav a{padding:8px 11px;border-radius:9px;background:#f3f7fd;font-weight:700;text-decoration:none}.esm-event-ops-quicknav a.is-alert{background:#fff2d2;color:#8a5a00}.esm-section-anchor{scroll-margin-top:110px}
@media(max-width:760px){.esm-shift-day-banner{display:grid}.esm-event-ops-quicknav{top:4px;overflow-x:auto;flex-wrap:nowrap}.esm-event-ops-quicknav a{white-space:nowrap}.esm-next-shift-actions{display:grid;grid-template-columns:1fr 1fr}.esm-next-shift-actions>.esm-btn:first-child{grid-column:1/-1}}

/* v1.80.0 - post-event action center */
.esm-post-event-center{margin:20px 0;padding:18px;border:1px solid #dbe3ef;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.esm-post-event-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.esm-post-event-head h3{margin:4px 0}.esm-post-event-head p{margin:0;color:#475569}.esm-post-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.esm-post-event-grid>a,.esm-post-event-grid>div{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #e4eaf2;border-radius:13px;padding:12px}.esm-post-event-grid strong,.esm-post-event-grid span,.esm-post-event-grid small{display:block}.esm-post-event-grid strong{font-size:1.35rem;color:#2055db}.esm-post-event-grid span{font-weight:700;margin-top:3px}.esm-post-event-grid small{color:#475569;margin-top:5px}.esm-post-event-grid .needs-action{border-color:#bfd2ff;background:#f1f6ff}.esm-post-event-grid .is-done{opacity:.72}.esm-post-event-grid .has-warning{border-color:#f1cf9b;background:#fff9ef}.esm-post-event-total{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;margin-top:12px;padding:12px 14px;border-radius:13px;background:#eef7f1}.esm-post-event-total strong{font-size:1.2rem}.esm-post-event-total small{grid-column:1/-1;color:#475569}
@media(max-width:760px){.esm-post-event-center{padding:14px}.esm-post-event-head{display:block}.esm-post-event-head>.esm-status-badge{display:inline-block;margin-top:10px}.esm-post-event-grid{grid-template-columns:1fr 1fr}.esm-post-event-total{grid-template-columns:1fr}.esm-post-event-total small{grid-column:auto}}
/* v1.82.0 — historical value summaries */
.esm-history-value-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:18px;align-items:center;padding:20px;margin:16px 0;border:1px solid #dce5f7;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f7faff 100%)}
.esm-history-value-card h3{margin:4px 0 6px}.esm-history-value-card p{margin:0;color:#4b5565;max-width:680px}.esm-history-value-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.esm-history-value-metrics span{padding:13px;border:1px solid #e4e9f2;border-radius:14px;background:#fff}.esm-history-value-metrics small{display:block;color:#4b5565;margin-bottom:4px}.esm-history-value-metrics strong{font-size:1.3rem}.esm-history-value-card>.esm-inline-link{grid-column:1/-1;justify-self:start}
@media(max-width:640px){.esm-history-value-card{grid-template-columns:1fr;padding:16px}.esm-history-value-metrics{grid-template-columns:1fr 1fr}.esm-history-value-card>.esm-inline-link{grid-column:auto}.esm-history-value-metrics strong{font-size:1.08rem}}

/* v1.84.0 — job-aware matching context */
.esm-match-reason{margin:8px 0 10px}
.esm-match-reason .esm-status-badge{white-space:normal;line-height:1.45}
/* v1.85.0 — Smart staffing / replacement / factual reliability */
.esm-replacement-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin:16px 0;border:1px solid #f0c36a;border-radius:16px;background:#fffaf0}.esm-replacement-alert strong{display:block;font-size:18px;margin:3px 0 5px}.esm-replacement-alert p{margin:0;color:#475569}.esm-reliability-facts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.esm-reliability-facts span{padding:6px 9px;border-radius:10px;background:#f4f7fb;color:#475569;font-size:13px}.esm-reliability-facts .has-warning{background:#fff5f2;color:#a33a2b}@media(max-width:640px){.esm-replacement-alert{align-items:stretch;flex-direction:column}.esm-replacement-alert .esm-btn{width:100%;text-align:center}}

/* v1.86.0 — Smart Staffing mission across all missing roles in one event. */
.esm-staffing-mission{margin:18px 0;padding:18px;border:1px solid #d8e2ff;border-radius:18px;background:#f7f9ff}
.esm-staffing-mission-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.esm-staffing-mission-head h3{margin:3px 0 5px}
.esm-staffing-mission-head p{margin:0;color:#4b5565}
.esm-staffing-mission-head>strong{white-space:nowrap;background:#fff;border:1px solid #d8e2ff;border-radius:999px;padding:8px 12px}
.esm-staffing-mission-roles{display:flex;gap:10px;overflow-x:auto;padding-top:14px;padding-bottom:2px}
.esm-staffing-role-pill{display:flex;align-items:center;gap:10px;min-width:max-content;padding:10px 13px;border:1px solid #d7ddea;border-radius:12px;background:#fff;text-decoration:none;color:inherit}
.esm-staffing-role-pill.is-current{border-color:#2055db;box-shadow:0 0 0 2px rgba(32,85,219,.08)}
.esm-staffing-role-pill strong{font-size:12px;color:#2055db}
@media(max-width:640px){.esm-staffing-mission{padding:14px}.esm-staffing-mission-head{display:block}.esm-staffing-mission-head>strong{display:inline-block;margin-top:10px}.esm-staffing-mission-roles{margin-inline:-4px;padding-inline:4px}}

/* v1.87.0 Smart Staffing progress — status, not extra notifications */
.esm-staffing-progress{margin-top:14px;padding:12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
.esm-staffing-progress-bar{height:8px;border-radius:999px;background:#eef2f7;overflow:hidden}
.esm-staffing-progress-bar span{display:block;height:100%;background:#2055db;border-radius:inherit}
.esm-staffing-progress-facts{display:flex;gap:16px;flex-wrap:wrap;margin-top:9px;color:#4b5565;font-size:13px}
.esm-staffing-progress-facts strong{color:#101828}
.esm-staffing-role-pill{display:flex;flex-direction:column;align-items:flex-start;min-width:150px}
.esm-staffing-role-pill small{margin-top:3px;color:#4b5565;font-size:11px}
@media(max-width:640px){.esm-staffing-progress-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:12px}.esm-staffing-role-pill{min-width:145px}}
/* v1.92.0 — post-event actions and replacement flow */
.esm-post-event-worker-action,.esm-replacement-action{margin-top:14px;padding:14px;border:1px solid #dbe4f0;border-radius:14px;background:#f8fafc}
.esm-inline-rating-form{display:grid;grid-template-columns:minmax(100px,140px) minmax(180px,1fr) auto;gap:10px;align-items:end;margin-top:10px}
.esm-inline-rating-form label{display:grid;gap:5px}.esm-inline-rating-form textarea{min-height:44px}
.esm-no-show-action{margin-top:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px}.esm-no-show-action summary{cursor:pointer;font-weight:600}.esm-no-show-action form{margin-top:10px}
.esm-replacement-action{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:640px){.esm-inline-rating-form{grid-template-columns:1fr}.esm-inline-rating-form .esm-btn{width:100%}.esm-replacement-action .esm-btn{width:100%}}

/* v1.93.0: make reliability sample size contextual, not a competing warning. */
.esm-reliability-sample{opacity:.72;font-size:.9em}

/* v1.94.0 — multi-date shift builder: each date is its own explicit staffing plan. */
.esm-multi-staffing-intro{border-color:#bfd4ff;background:#f4f8ff}.esm-shift-builder-card{border:1px solid #dbe4f2;border-radius:18px;padding:18px;margin:18px 0;background:#fff;box-shadow:0 8px 24px rgba(31,63,120,.06)}.esm-shift-builder-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;font-size:1.05rem}.esm-shift-builder-title span{color:#2457db;font-weight:700}.esm-occurrence-row-main{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:10px;align-items:end}.esm-shift-builder-field{display:flex;flex-direction:column;gap:6px;font-weight:700}.esm-shift-builder-field>span{font-size:.82rem;color:#4b5565}.esm-shift-builder-field input{width:100%;min-width:0}.esm-occurrence-role-wrap-always{display:block!important;margin-top:16px;padding-top:16px;border-top:1px solid #edf0f5}.esm-occurrence-staff-heading{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}.esm-occurrence-staff-heading span{font-size:.86rem;color:#4b5565}.esm-occurrence-role-line{display:grid;grid-template-columns:minmax(110px,1fr) minmax(90px,.7fr) minmax(110px,.9fr);gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f7}.esm-occurrence-role-line:last-child{border-bottom:0}.esm-occurrence-role-line input{width:100%;min-width:0}.esm-occurrence-copy-staff{margin-top:14px;width:100%}
@media(max-width:640px){.esm-shift-builder-card{padding:14px;margin:14px 0}.esm-occurrence-row-main{grid-template-columns:1fr 1fr}.esm-occurrence-row-main .esm-shift-builder-field:first-child{grid-column:1/-1}.esm-occurrence-remove{width:100%}.esm-occurrence-role-line{grid-template-columns:1fr 82px 105px;gap:7px}.esm-occurrence-role-line strong{font-size:.9rem}.esm-occurrence-role-line input{padding-inline:7px;font-size:.9rem}.esm-shift-builder-title{align-items:flex-start;flex-direction:column;gap:3px}}
/* v1.95.0 - clearer evidence and event readiness */
.esm-rating-summary small{display:inline-block;margin-inline-start:6px;color:#475569;font-weight:500}.esm-event-readiness{display:flex;align-items:center;gap:14px;margin:12px 0 16px;padding:14px 16px;border:1px solid #dbe4f0;border-radius:16px;background:#f8fafc}.esm-event-readiness>div{min-width:90px;text-align:center}.esm-event-readiness strong{display:block;font-size:1.35rem;color:#2055db}.esm-event-readiness span{font-size:.82rem;color:#475569}.esm-event-readiness p{margin:0}.esm-event-readiness.is-ready{background:#f0fdf4;border-color:#bbf7d0}.esm-event-readiness.is-ready strong{color:#15803d}@media(max-width:640px){.esm-event-readiness{align-items:flex-start}.esm-event-readiness>div{min-width:72px}}

/* v1.105.0: mobile-first multi-shift publisher: dates -> base shift -> exceptions. */
.esm-multi-builder-v2{display:flex;flex-direction:column;gap:18px}.esm-multi-section-head{display:flex;flex-direction:column;gap:4px}.esm-multi-section-head strong{font-size:1.12rem;color:#182230}.esm-multi-section-head span{font-size:.9rem;color:#4b5565;line-height:1.55}.esm-base-shift-card{background:#f4f8ff;border:1px solid #d6e4ff}.esm-base-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.esm-base-time-grid label,.esm-base-role-line label{display:flex;flex-direction:column;gap:5px}.esm-base-time-grid span,.esm-base-role-line label span{font-size:.78rem;color:#4b5565;font-weight:700}.esm-base-role-list{display:flex;flex-direction:column;gap:8px}.esm-base-role-line{display:grid;grid-template-columns:minmax(130px,1.2fr) minmax(90px,.65fr) minmax(110px,.8fr);gap:10px;align-items:end;padding:10px 0;border-bottom:1px solid #e7edf6}.esm-base-role-line:last-child{border-bottom:0}.esm-base-role-line>strong{align-self:center;overflow-wrap:normal;word-break:normal}.esm-selected-dates{display:flex;gap:8px;flex-wrap:wrap;min-height:8px}.esm-date-chip{border:0;border-radius:999px;background:#eaf1ff;color:#2457db;font-weight:800;padding:8px 12px;cursor:pointer}.esm-selected-shifts-head{margin-top:4px}.esm-shift-builder-card-v2{padding:14px 16px}.esm-shift-compact-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.esm-shift-compact-head>div:first-child{min-width:0}.esm-shift-compact-head strong{font-size:1.05rem}.esm-shift-summary{margin-top:4px;color:#4b5565;font-size:.86rem;line-height:1.4}.esm-shift-actions{display:flex;gap:8px;align-items:center}.esm-icon-remove{width:38px;height:38px;border:1px solid #e1e6ef;background:#fff;border-radius:10px;font-size:1.4rem;line-height:1;color:#4b5565}.esm-shift-custom-panel{margin-top:14px;padding-top:14px;border-top:1px solid #e8edf5}.esm-shift-builder-card-v2.is-custom{border-color:#9bb9ff;background:#fbfdff}.esm-shift-builder-card-v2.is-custom .esm-shift-summary:after{content:' · מותאם';color:#2457db;font-weight:800}.esm-mdcal-grid-wrap{grid-template-columns:1fr;max-width:520px;margin-inline:auto}.esm-mdcal-month{min-width:0}
@media(max-width:640px){.esm-base-time-grid{grid-template-columns:1fr 1fr}.esm-base-role-line{grid-template-columns:1fr 88px 104px;gap:7px}.esm-base-role-line>strong{font-size:.92rem;white-space:normal}.esm-base-role-line input{width:100%;min-width:0;padding-inline:7px}.esm-shift-compact-head{align-items:flex-start;flex-direction:column}.esm-shift-actions{width:100%}.esm-customize-shift{flex:1}.esm-icon-remove{flex:0 0 38px}.esm-mdcal-card{padding:12px}.esm-mdcal-grid{gap:4px}.esm-mdcal-cell{min-width:0;height:42px}.esm-multi-builder-v2 .esm-card{margin:0}}
/* v1.123.0 Dispute center */
.esm-disputes{max-width:820px;margin:0 auto}.esm-disputes select,.esm-disputes input[type=text],.esm-disputes textarea{width:100%;max-width:100%;box-sizing:border-box}.esm-disputes label{display:block;font-weight:700;margin-bottom:6px}.esm-feedback{padding:12px 14px;border-radius:10px;margin:10px 0}.esm-feedback-success{background:#eefbf2}.esm-feedback-error{background:#fff1f1}

/* v1.134.0 action confirmation: prominent but non-blocking, auto page remains usable. */
.esm-action-confirmation{position:fixed;top:88px;left:50%;transform:translateX(-50%);z-index:99999;width:min(92vw,560px);box-shadow:0 12px 36px rgba(0,0,0,.18);font-weight:700}
@media(max-width:782px){.esm-action-confirmation{top:82px;width:calc(100vw - 28px)}}

/* v1.136.0 — actionable After Event roster */
.esm-after-event-workers{margin-top:18px;border-top:1px solid #e3e9f5;padding-top:16px}
.esm-after-event-workers-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.esm-after-event-workers-head span{font-size:13px;color:#65728a}
.esm-after-event-worker-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #edf1f8}
.esm-after-event-worker-person{display:flex;flex-direction:column;gap:3px}
.esm-after-event-worker-person span{font-size:13px;color:#65728a}
.esm-after-event-worker-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media(max-width:640px){.esm-after-event-workers-head,.esm-after-event-worker-row{align-items:stretch;flex-direction:column}.esm-after-event-worker-actions .esm-btn{flex:1;text-align:center}}

/* v1.137.0 — employer roster hierarchy */
.esm-roster-section-title{grid-column:1/-1;display:flex;justify-content:space-between;align-items:end;gap:12px;padding:12px 4px 7px;font-weight:800;color:#17223b}
.esm-roster-section-title small{font-weight:500;color:#5b6578}
.esm-roster-section-title.is-history{margin-top:8px;border-top:1px solid #e7ebf3;color:#7b8496}
.esm-event-ops-row.is-relevant{border:1px solid #dce5f7;box-shadow:0 2px 8px rgba(24,54,110,.05)}
.esm-event-ops-row.is-history{opacity:.58;background:#f7f8fa;border-color:#edf0f4;box-shadow:none}
.esm-event-ops-row.is-history:hover{opacity:.78}
@media(max-width:640px){.esm-roster-section-title{align-items:flex-start;flex-direction:column;gap:3px}.esm-event-ops-row.is-history{opacity:.62}}

/* ==========================================================================
   v1.138.0 — Extrally Mobile UX pass
   Touch-first layout polish only; no lifecycle/payment authority lives here.
   ========================================================================== */
@media (max-width: 720px) {
  .esm-wrap{padding:12px 12px 92px!important;max-width:100%!important;overflow-x:hidden}
  .esm-card{border-radius:16px!important;padding:16px!important}
  .esm-section-heading{margin:18px 0 10px!important}
  .esm-section-heading h2,.esm-section-heading h3{line-height:1.25}
  .esm-dashboard-header{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
  .esm-dashboard-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .esm-dashboard-actions .esm-btn{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center}
  .esm-dashboard-overview{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .esm-overview-stat{min-width:0!important;padding:12px!important}
  .esm-overview-stat strong{font-size:22px}
  .esm-next-shift-facts,.esm-history-value-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .esm-next-shift-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .esm-next-shift-actions .esm-btn{width:100%}
  .esm-history-filters{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;gap:7px!important;padding:2px 1px 9px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .esm-history-filters::-webkit-scrollbar{display:none}
  .esm-filter-chip{flex:0 0 auto!important;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center}
  .esm-employer-jobs-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .esm-employer-job-card{padding:14px!important}
  .esm-event-ops-head,.esm-post-event-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  .esm-event-ops-quicknav{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;gap:7px!important;padding-bottom:7px!important;scrollbar-width:none}
  .esm-event-ops-quicknav a{flex:0 0 auto;white-space:nowrap;min-height:40px;display:flex;align-items:center}
  .esm-event-ops-summary,.esm-post-event-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .esm-event-ops-summary>div,.esm-post-event-grid>div,.esm-post-event-grid>a{min-width:0!important;padding:12px 9px!important}
  .esm-event-ops-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:13px!important}
  .esm-event-ops-person{grid-column:1/-1}
  .esm-event-ops-action{grid-column:1/-1}
  .esm-event-ops-action a{display:block;width:100%;min-height:42px;text-align:center;padding:10px}
  .esm-applicant-toolbar,.esm-applicant-card-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  .esm-applicant-statuses{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
  .esm-application-shift-summary,.esm-shift-context{overflow-wrap:anywhere}
  .esm-rating-form .esm-btn,.esm-no-show-action .esm-btn{width:100%;min-height:46px}
  .esm-no-show-action summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
  .esm-checkbox-row{align-items:flex-start!important}
  .esm-checkbox-row input{width:20px!important;height:20px!important;min-width:20px;margin-top:2px}
  .esm-form-row{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .esm-form input:not([type=checkbox]):not([type=radio]),.esm-form select,.esm-form textarea{width:100%!important;min-height:46px;font-size:16px!important}
  .esm-simple-table{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .esm-pagination{display:flex!important;overflow-x:auto!important;gap:6px!important;padding-bottom:5px}
  .esm-pagination .esm-btn,.esm-pagination .esm-filter-chip{flex:0 0 auto}
  .esm-bottom-nav{position:fixed!important;z-index:9998!important;left:0!important;right:0!important;bottom:0!important;padding-bottom:max(6px,env(safe-area-inset-bottom))!important}
  .esm-bottom-nav-item{min-width:0!important;min-height:54px!important}
  .esm-mobile-logout{margin-bottom:14px}
}
@media (max-width: 390px) {
  .esm-wrap{padding-left:9px!important;padding-right:9px!important}
  .esm-dashboard-actions,.esm-dashboard-overview,.esm-event-ops-summary,.esm-post-event-grid{grid-template-columns:1fr!important}
  .esm-next-shift-facts{grid-template-columns:1fr!important}
  .esm-event-ops-row{grid-template-columns:1fr!important}
  .esm-event-ops-person,.esm-event-ops-action{grid-column:auto}
}

/* v1.140.0 — worker app navigation: authenticated workers live inside the app,
   while Profile remains a settings destination rather than a duplicate home. */
.esm-worker-profile-editor{scroll-margin-top:88px}
#esm-worker-home{scroll-margin-top:88px}
@media(max-width:720px){
 .esm-bottom-nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
 .esm-bottom-nav-item{font-size:12px!important;text-align:center!important;padding:8px 3px!important}
}

/* v1.141.0 — ratings as a visual trust signal + anonymous public worker teasers */
.esm-rating-visual{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.esm-stars{direction:ltr;display:inline-flex;letter-spacing:1px;font-size:20px;line-height:1}
.esm-stars-filled{color:#f5ad18}.esm-stars-empty{color:#cbd3df}
.esm-rating-number{font-size:18px}
.esm-public-worker-samples{display:grid;gap:7px;margin:12px 0;padding-top:10px;border-top:1px solid #edf1f7;text-align:right}
.esm-public-worker-sample{display:flex;align-items:center;gap:9px;padding:8px;border-radius:11px;background:#f8faff}
.esm-public-worker-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e9effd}
.esm-public-worker-sample>span:last-child{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.esm-public-worker-sample .esm-stars{font-size:15px}
.esm-public-worker-sample small{color:#6e7890}
@media(max-width:720px){.esm-rating-visual{gap:5px}.esm-public-worker-samples{margin-top:10px}}


/* v1.143.0 — mobile width regression fix.
   Keep app screens edge-to-edge inside narrow theme containers and let the
   bottom navigation support 4 OR 5 destinations without wrapping. */
@media (max-width:720px){
  .esm-wrap{
    width:calc(100vw - 16px)!important;
    max-width:none!important;
    margin-inline:calc(50% - 50vw + 8px)!important;
    padding-inline:8px!important;
  }
  .esm-bottom-nav{
    display:flex!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:100vw!important;
    overflow:visible!important;
  }
  .esm-bottom-nav-item{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    padding:8px 2px!important;
    font-size:11px!important;
    line-height:1.2!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}
@media (max-width:390px){
  .esm-wrap{width:calc(100vw - 10px)!important;margin-inline:calc(50% - 50vw + 5px)!important;padding-inline:5px!important}
  .esm-card{padding:13px!important}
  .esm-bottom-nav-item{font-size:10.5px!important;padding-inline:1px!important}
}

/* v1.144.0 — employer shift cards: one obvious state-aware entry point. */
.esm-job-card-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.esm-job-card-actions .esm-btn-primary{flex:1 1 210px}
.esm-job-card-actions .esm-btn-secondary{flex:0 1 auto}
@media(max-width:720px){
 .esm-job-card-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
 .esm-job-card-actions .esm-btn{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center}
 .esm-job-card-actions .esm-btn-primary{grid-column:1/-1}
}

/* v1.145.0 — scalable public worker discovery */
.esm-role-rating-summary{display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 4px;padding-top:10px;border-top:1px solid #edf1f7}
.esm-worker-result-layer{margin:22px 0;padding:20px;border:1px solid #dce5f5;border-radius:18px;background:#fff}
.esm-worker-result-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}
.esm-worker-result-head h2{margin:6px 0 3px}.esm-worker-result-head p{margin:0;color:#69758c}
.esm-worker-result-back{font-weight:700;text-decoration:none}
.esm-public-worker-results{display:grid;gap:10px}
.esm-public-worker-result{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px;border:1px solid #e1e7f1;border-radius:14px;background:#fff}
.esm-public-worker-result-avatar{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#edf3ff;font-size:25px}
.esm-public-worker-result-main>strong{font-size:17px}.esm-public-worker-facts{display:flex;gap:12px;flex-wrap:wrap;margin-top:7px;color:#59667d;font-size:13px}
.esm-availability-good{color:#14834f;font-weight:700}.esm-private-cta{display:inline-block;max-width:190px;padding:9px 11px;border-radius:10px;background:#f3f6fb;color:#5e6a80;font-size:12px;text-align:center}
.esm-worker-results-pagination{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin:16px 0 8px}
.esm-worker-results-pagination a{min-width:36px;height:36px;display:grid;place-items:center;border:1px solid #dce4f1;border-radius:9px;text-decoration:none}
.esm-worker-results-pagination a.is-active{background:#2055db;color:#fff;border-color:#2055db}.esm-worker-results-count{text-align:center;color:#69758c;font-size:13px}
@media(max-width:720px){.esm-worker-result-layer{padding:12px;margin:14px 0}.esm-worker-result-head{align-items:stretch;flex-direction:column}.esm-public-worker-result{grid-template-columns:auto 1fr}.esm-public-worker-result-action{grid-column:1/-1}.esm-public-worker-result-action .esm-btn,.esm-private-cta{width:100%;max-width:none}.esm-public-worker-facts{gap:6px;flex-direction:column}}
/* ========================================================================
   v1.146.0 — Worker app split + premium anonymous worker discovery
   ======================================================================== */
.esm-worker-profile-hero,.esm-dashboard-profile-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin:0 0 18px;border:1px solid #dbe5f6;border-radius:20px;background:linear-gradient(135deg,#f7faff 0%,#fff 58%,#eef4ff 100%)}
.esm-worker-profile-hero h1,.esm-dashboard-profile-cta h3{margin:4px 0 7px}.esm-worker-profile-hero p,.esm-dashboard-profile-cta p{margin:0;color:#66738a;max-width:720px}
.esm-worker-profile-page .esm-card{margin-bottom:14px}.esm-worker-profile-page #esm-availability-calendar{scroll-margin-top:90px}
.esm-worker-result-layer{position:relative;overflow:hidden;padding:26px!important;border:1px solid #d9e4f5!important;border-radius:24px!important;background:linear-gradient(145deg,#f6f9ff 0%,#ffffff 45%,#eef4ff 100%)!important;box-shadow:0 18px 50px rgba(32,85,219,.08)}
.esm-worker-result-layer:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(32,85,219,.07);top:-150px;left:-100px;pointer-events:none}
.esm-worker-result-head{position:relative;z-index:1;padding:4px 4px 14px!important}.esm-worker-result-head h2{font-size:28px!important}.esm-worker-result-head p{font-size:15px}
.esm-public-worker-results{position:relative;z-index:1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}
.esm-public-worker-result{position:relative;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;overflow:hidden;min-width:0;padding:0!important;border:1px solid #dfe7f4!important;border-radius:20px!important;background:#fff!important;box-shadow:0 8px 24px rgba(30,55,100,.07);transition:transform .18s ease,box-shadow .18s ease}
.esm-public-worker-result:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(30,55,100,.12)}
.esm-public-worker-cover{height:76px;background:linear-gradient(135deg,#2055db,#5b7ff0);position:relative}
.esm-public-worker-cover:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.25),transparent 32%)}
.esm-public-worker-result-avatar{position:relative!important;margin:-35px auto 8px!important;width:72px!important;height:72px!important;border:5px solid #fff;border-radius:50%!important;background:linear-gradient(145deg,#eef3ff,#dfe9ff)!important;font-size:31px!important;box-shadow:0 5px 16px rgba(30,55,100,.16);z-index:2}
.esm-public-worker-result-main{padding:0 16px 14px;text-align:center}.esm-public-worker-result-main>strong{display:block;font-size:19px!important;margin-bottom:7px;color:#18243b}
.esm-public-worker-result .esm-rating-visual{justify-content:center}.esm-public-worker-result .esm-stars{font-size:18px}
.esm-public-worker-facts{display:flex!important;justify-content:center;gap:7px!important;flex-direction:row!important;margin-top:12px!important}
.esm-public-worker-facts span{display:inline-flex;align-items:center;padding:6px 8px;border-radius:999px;background:#f4f7fc;color:#59667d;font-size:12px}
.esm-public-worker-facts .esm-availability-good{background:#eaf8f0;color:#147a4b}
.esm-public-worker-result-action{margin-top:auto;padding:12px 14px 14px;border-top:1px solid #edf1f7;text-align:center}.esm-public-worker-result-action .esm-btn{width:100%}
.esm-private-cta{display:block!important;max-width:none!important;background:#f4f7fc!important;border:1px solid #e4eaf4;font-weight:600}
.esm-worker-results-count{position:relative;z-index:1}
@media(max-width:900px){.esm-public-worker-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.esm-worker-profile-hero,.esm-dashboard-profile-cta{flex-direction:column;align-items:stretch;padding:16px}.esm-worker-result-layer{padding:14px!important;border-radius:18px!important}.esm-worker-result-head h2{font-size:23px!important}.esm-public-worker-results{grid-template-columns:1fr!important;gap:12px!important}.esm-public-worker-result{max-width:none;width:100%}.esm-public-worker-cover{height:66px}.esm-public-worker-facts{flex-direction:row!important;flex-wrap:wrap!important}.esm-worker-profile-page .esm-form-row{margin-bottom:12px}}

/* v1.147.0 — public worker discovery: premium cards, desktop parity and useful CTAs */
.esm-board-v2{max-width:1240px!important;padding-inline:20px}
.esm-board-v2 .esm-board-head-card{max-width:1180px;margin-inline:auto}
.esm-board-live-count{white-space:nowrap}
.esm-count-pill-availability{background:#dcfce7!important;color:#16834d!important}
.esm-worker-result-layer{max-width:1180px;margin:28px auto;padding:26px;background:linear-gradient(145deg,#f8fbff 0%,#fff 52%,#f5f8ff 100%);box-shadow:0 18px 55px rgba(28,55,105,.08)}
.esm-public-worker-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.esm-public-worker-result{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;overflow:hidden;min-width:0;padding:0 0 16px;border:1px solid #dce5f5;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(31,64,126,.08);transition:transform .18s ease,box-shadow .18s ease}
.esm-public-worker-result:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(31,64,126,.13)}
.esm-public-worker-cover{display:block;width:100%;height:96px;background:linear-gradient(135deg,#2055db,#5d82ef)}
.esm-public-worker-result-avatar{position:relative;width:76px;height:76px;margin:-38px auto 10px;border:7px solid #fff;box-shadow:0 7px 18px rgba(35,67,126,.14);font-size:31px;z-index:2}
.esm-public-worker-result-main{padding:0 18px;text-align:center;width:100%}
.esm-public-worker-result-main>strong{display:block;font-size:22px;margin:2px 0 9px;color:#17223b}
.esm-public-worker-result-main .esm-rating-visual{justify-content:center;margin-bottom:12px}
.esm-public-worker-facts{justify-content:center;gap:7px!important;margin-top:8px!important}
.esm-public-worker-facts>span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f3f6fb;color:#59667d;font-size:12px}
.esm-public-worker-facts>.esm-availability-good{background:#eafaf1;color:#16834d}
.esm-public-worker-result-action{width:100%;margin-top:auto;padding:16px 16px 0}
.esm-public-worker-result-action .esm-btn,.esm-public-worker-result-action .esm-private-cta{display:flex;align-items:center;justify-content:center;width:100%;max-width:none;min-height:46px;text-decoration:none;font-weight:800}
.esm-private-cta{border:1px solid #dce4f1;background:#f5f7fb!important;color:#4e5b73!important}
.esm-worker-result-head{padding:0 4px 8px}.esm-worker-result-head h2{font-size:clamp(25px,3vw,34px)}
@media(max-width:980px){.esm-public-worker-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.esm-board-v2{padding-inline:8px!important}.esm-board-v2 .esm-board-head-card{padding:18px!important}.esm-worker-result-layer{padding:12px!important;border-radius:18px}.esm-public-worker-results{grid-template-columns:1fr;gap:14px}.esm-public-worker-result{border-radius:20px}.esm-public-worker-cover{height:90px}.esm-public-worker-result-avatar{width:72px;height:72px;margin-top:-36px}.esm-public-worker-result-action{grid-column:auto}.esm-worker-result-head .esm-btn{width:100%}}

/* v1.149.0 — worker home is a true operational dashboard, not a profile alias. */
.esm-worker-home-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:14px 0 18px;padding:22px;border:1px solid #dce5f5;border-radius:18px;background:linear-gradient(135deg,#f8fbff 0%,#eef4ff 100%)}
.esm-worker-home-hero h1{margin:4px 0 6px;font-size:28px}.esm-worker-home-hero p{margin:0;max-width:650px;color:#66748b}
.esm-worker-home-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}.esm-worker-home-actions .esm-btn{white-space:nowrap}
@media(max-width:720px){.esm-worker-home-hero{align-items:stretch;flex-direction:column;padding:16px}.esm-worker-home-hero h1{font-size:24px}.esm-worker-home-actions{display:grid;grid-template-columns:1fr 1fr}.esm-worker-home-actions .esm-btn:first-child{grid-column:1/-1}.esm-worker-home-actions .esm-btn{width:100%;display:flex;align-items:center;justify-content:center;min-height:46px}}

/* v1.151.0 — premium marketplace search console, desktop + mobile */
.esm-board-v2 .esm-board-head-card{position:relative;overflow:hidden;padding:30px!important;background:linear-gradient(145deg,#fff 0%,#f7faff 55%,#eef4ff 100%);border:1px solid #dce6f7!important;border-radius:24px!important;box-shadow:0 18px 55px rgba(31,67,135,.10)!important}
.esm-board-v2 .esm-board-head-card:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(32,85,219,.06);left:-100px;top:-130px;pointer-events:none}
.esm-board-head-row{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.esm-board-title-block{max-width:660px}.esm-board-eyebrow{font-size:13px!important}.esm-board-title-block h2{margin:4px 0 8px!important;font-size:clamp(30px,3.5vw,44px)!important;letter-spacing:-.02em}.esm-board-title-block p{font-size:16px!important;line-height:1.7!important}
.esm-board-live-count{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #ccefdc;border-radius:999px;background:#eafbf1;color:#177a49;font-size:14px;font-weight:800;box-shadow:0 5px 15px rgba(22,128,76,.06)}
.esm-marketplace-search-console{position:relative;margin-top:24px;padding:18px;border:1px solid #e0e7f2;border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 10px 30px rgba(30,55,100,.06);backdrop-filter:blur(8px)}
.esm-board-mode-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.esm-board-mode-heading strong{font-size:16px;color:#182238}.esm-board-mode-heading span{font-size:13px;color:#7a869a}
.esm-board-mode-switch{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 16px!important}.esm-board-mode-card{display:flex;align-items:center;gap:12px;min-height:76px;padding:13px 16px;border:1px solid #dce4f0;border-radius:16px;background:#fff;text-decoration:none!important;color:#26344e!important;transition:.18s ease;box-shadow:0 4px 14px rgba(30,55,100,.04)}.esm-board-mode-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,55,100,.09)}.esm-board-mode-card.is-active{border-color:#2055db;background:linear-gradient(135deg,#2055db,#3d6dec);color:#fff!important;box-shadow:0 12px 28px rgba(32,85,219,.22)}.esm-board-mode-jobs.is-active{background:linear-gradient(135deg,#d86b19,#f08b36);border-color:#e27829;box-shadow:0 12px 28px rgba(226,120,41,.20)}
.esm-board-mode-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:13px;background:#f3f6fb;font-size:21px}.esm-board-mode-card.is-active .esm-board-mode-icon{background:rgba(255,255,255,.16)}.esm-board-mode-card strong,.esm-board-mode-card small{display:block}.esm-board-mode-card strong{font-size:16px}.esm-board-mode-card small{margin-top:3px;color:#758197;font-size:12px}.esm-board-mode-card.is-active small{color:rgba(255,255,255,.82)}
.esm-board-filter-console{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr)) auto!important;gap:10px!important;margin:0!important;align-items:end!important}.esm-board-filter-field{display:flex!important;flex-direction:column;gap:6px;min-width:0}.esm-board-filter-field>span{padding-inline:3px;font-size:12px;font-weight:800;color:#65728a}.esm-board-filter-field select,.esm-board-filter-field input{height:50px!important;min-height:50px!important;padding:0 13px!important;border:1px solid #dbe3ef!important;border-radius:13px!important;background:#fff!important;font-size:14px!important;box-shadow:none!important}.esm-board-filter-field select:focus,.esm-board-filter-field input:focus{border-color:#7da1f4!important;box-shadow:0 0 0 3px rgba(32,85,219,.08)!important;outline:0}.esm-board-search-btn{height:50px!important;min-height:50px!important;padding:0 22px!important;border:0!important;border-radius:13px!important;background:#162f70!important;color:#fff!important;font-weight:900!important;white-space:nowrap;box-shadow:0 8px 20px rgba(22,47,112,.16)}
@media(min-width:901px){.esm-board-v2 .esm-board-head-card{max-width:1180px!important}.esm-marketplace-search-console{margin-inline:auto}.esm-board-filter-console:has(.esm-board-filter-field:nth-of-type(3):last-of-type){grid-template-columns:repeat(3,minmax(0,1fr)) auto!important}}
@media(max-width:900px){.esm-board-filter-console{grid-template-columns:1fr 1fr!important}.esm-board-search-btn{grid-column:1/-1;width:100%!important}}
@media(max-width:639px){.esm-board-v2{padding-inline:10px!important}.esm-board-v2 .esm-board-head-card{padding:20px 14px!important;border-radius:22px!important}.esm-board-head-row{flex-direction:column;gap:13px}.esm-board-title-block h2{font-size:34px!important}.esm-board-title-block p{font-size:16px!important}.esm-board-live-count{align-self:flex-start}.esm-marketplace-search-console{margin-top:18px;padding:11px;border-radius:18px}.esm-board-mode-heading{display:block;margin:2px 3px 10px}.esm-board-mode-heading span{display:block;margin-top:2px}.esm-board-mode-switch{gap:8px!important}.esm-board-mode-card{min-height:70px;padding:10px!important;gap:8px;border-radius:14px}.esm-board-mode-icon{width:38px;height:38px;flex-basis:38px;font-size:18px}.esm-board-mode-card strong{font-size:13px;line-height:1.25}.esm-board-mode-card small{font-size:10px}.esm-board-filter-console{grid-template-columns:1fr 1fr!important;gap:9px!important}.esm-board-filter-field>span{font-size:11px}.esm-board-filter-field select,.esm-board-filter-field input{height:48px!important;min-height:48px!important;padding:0 9px!important;font-size:13px!important}.esm-board-search-btn{grid-column:1/-1!important;height:50px!important;margin-top:2px}.esm-board-head-card+.esm-jobs-grid{margin-top:14px!important}}
@media(max-width:390px){.esm-board-mode-switch{grid-template-columns:1fr!important}.esm-board-filter-console{grid-template-columns:1fr!important}.esm-board-search-btn{grid-column:auto!important}}
\n/* v1.152.0 — Hebrew shift chronology + compact employer mobile overview */
.esm-job-date-line{display:flex!important;align-items:center;gap:7px;flex-wrap:wrap}
.esm-time-range{display:inline-block;unicode-bidi:isolate;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:720px){
 .esm-dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 .esm-dashboard-overview .esm-overview-stat{min-height:104px!important;padding:12px 8px!important;border-radius:14px!important}
 .esm-dashboard-overview .esm-overview-stat strong{font-size:28px!important;margin-bottom:7px!important}
 .esm-dashboard-overview .esm-overview-stat span{font-size:13px!important;line-height:1.3!important}
}
@media(max-width:390px){
 .esm-dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .esm-dashboard-overview .esm-overview-stat{min-height:98px!important;padding:10px 6px!important}
 .esm-dashboard-overview .esm-overview-stat strong{font-size:26px!important}
 .esm-dashboard-overview .esm-overview-stat span{font-size:12px!important}
}


/* v1.153.0 — shift-detail polish + consistent Hebrew schedule language */
.esm-job-detail-v2{border:1px solid #dbe4f1!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 18px 46px rgba(20,43,88,.08)!important}
.esm-job-detail-v2 .esm-job-detail-top{padding-bottom:14px;border-bottom:1px solid #e8edf5}.esm-job-detail-v2 .esm-job-detail-top h2{font-size:clamp(26px,3vw,38px);margin:10px 0 2px;color:#111b30}
.esm-job-detail-facts p{background:#f7f9fd!important;border:1px solid #edf1f7;line-height:1.8}.esm-job-detail-v2>p{line-height:1.75}.esm-job-detail-v2 .esm-job-staffing-summary{margin-top:18px}.esm-job-detail-v2 .esm-notice-info{border:0;background:#eaf3ff;padding:16px 18px;border-radius:14px}
.esm-job-detail-v2 bdi[dir="ltr"],.esm-job-schedule bdi[dir="ltr"],.esm-application-shift-summary bdi[dir="ltr"]{unicode-bidi:isolate;font-variant-numeric:tabular-nums;white-space:nowrap}
.esm-after-application-panel{margin:18px 0;padding:16px;border:1px solid #bfe5cf;background:#f0fbf5;border-radius:16px;display:grid;gap:7px}.esm-after-application-panel>strong{font-size:18px;color:#137343}.esm-after-application-panel>span{color:#526078}.esm-after-application-panel>div{display:flex;gap:9px;flex-wrap:wrap;margin-top:5px}
@media(min-width:901px){.esm-board-search-btn{font-family:Arial,"Noto Sans Hebrew",sans-serif!important;font-size:16px!important;font-weight:700!important;letter-spacing:0!important;line-height:1!important;padding-inline:28px!important}.esm-job-detail-v2{padding:30px!important}}
@media(max-width:639px){.esm-job-detail-v2{padding:15px!important}.esm-job-detail-facts{gap:9px!important}.esm-job-detail-facts p{padding:14px!important}.esm-after-application-panel>div{display:grid;grid-template-columns:1fr}.esm-after-application-panel .esm-btn{width:100%}}
/* v1.154.0 — pilot onboarding/checklist */
.esm-pilot-checklist{margin:18px 0;padding:18px;border:1px solid #dbe5f5;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fff);box-shadow:0 8px 28px rgba(26,58,115,.06)}
.esm-pilot-checklist.is-complete{background:linear-gradient(135deg,#f2fff7,#fff);border-color:#cdeed9}
.esm-pilot-checklist-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.esm-pilot-checklist-head h3{margin:3px 0 0}.esm-pilot-checklist-head>strong{font-size:20px;color:#2055db;background:#edf3ff;padding:8px 12px;border-radius:12px;direction:ltr}
.esm-pilot-progress{height:7px;background:#e9eef7;border-radius:999px;overflow:hidden;margin:14px 0}.esm-pilot-progress span{display:block;height:100%;background:#2055db;border-radius:inherit}.esm-pilot-checklist.is-complete .esm-pilot-progress span{background:#17945c}
.esm-pilot-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.esm-pilot-steps a{display:flex;align-items:center;gap:8px;padding:11px 12px;border:1px solid #e1e7f1;border-radius:12px;background:#fff;text-decoration:none;color:#273247;font-weight:700}.esm-pilot-steps a i{font-style:normal;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#edf3ff;color:#2055db;flex:0 0 auto}.esm-pilot-steps a.is-done{color:#647086;background:#fafbfc}.esm-pilot-steps a.is-done i{background:#dcf8e8;color:#15834f}
@media(max-width:720px){.esm-pilot-checklist{padding:14px;margin:14px 0}.esm-pilot-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.esm-pilot-steps a{font-size:13px;padding:10px}.esm-pilot-checklist-head h3{font-size:18px}}

/* v1.155.0 — pilot Action Center */
.esm-action-center{margin:18px 0;padding:18px;border:1px solid #dce5f5;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)}
.esm-action-center-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:10px}.esm-action-center-head h3{margin:3px 0 0}.esm-action-center-head small{color:#5b6578}
.esm-action-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e8edf6}.esm-action-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eaf1ff;font-size:19px}.esm-action-copy{display:flex;flex-direction:column;gap:3px}.esm-action-copy span{font-size:13px;color:#65728a}
@media(max-width:720px){.esm-action-center{padding:13px}.esm-action-center-head{align-items:flex-start;flex-direction:column;gap:3px}.esm-action-item{grid-template-columns:auto 1fr}.esm-action-item>.esm-btn{grid-column:1/-1;width:100%;min-height:44px;display:flex;justify-content:center;align-items:center}}

/* v1.156.0 — Action Center follow-up states */
.esm-action-item.is-rating .esm-action-icon{font-size:20px;font-weight:800}
.esm-action-center .esm-action-copy bdi{font-variant-numeric:tabular-nums;unicode-bidi:isolate}
@media (max-width:700px){.esm-action-center .esm-action-item{align-items:flex-start}.esm-action-center .esm-action-item>.esm-btn{width:100%;text-align:center;justify-content:center}.esm-action-center .esm-action-copy{min-width:0}}


/* v1.157.0 — event-level team rating center; ratings remain booking-specific. */
.esm-team-rating-center{margin-top:18px;border:1px solid #dce5f5;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(31,55,92,.06)}
.esm-team-rating-center>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:linear-gradient(135deg,#f7f9ff,#fff)}
.esm-team-rating-center>summary::-webkit-details-marker{display:none}.esm-team-rating-center>summary span{display:flex;flex-direction:column;gap:4px}.esm-team-rating-center>summary strong{font-size:18px}.esm-team-rating-center>summary small{color:#68758d}.esm-team-rating-center>summary b{font-size:13px;color:#2055db}
.esm-team-rating-list{padding:4px 20px 20px}.esm-rating-role-group{margin-top:16px}.esm-rating-role-group h4{display:flex;gap:8px;align-items:center;margin:0 0 8px}.esm-rating-role-group h4 span{display:inline-flex;min-width:24px;height:24px;border-radius:12px;align-items:center;justify-content:center;background:#eef3ff;color:#2055db;font-size:12px}
.esm-team-rating-worker{border-top:1px solid #edf1f8;padding:14px 0}.esm-team-rating-person{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.esm-team-rating-form{display:grid;grid-template-columns:minmax(120px,170px) 1fr auto;gap:12px;align-items:end}.esm-team-rating-form label{display:flex;flex-direction:column;gap:5px}.esm-team-rating-form label span{font-size:12px;font-weight:700;color:#56647d}.esm-team-rating-form select,.esm-team-rating-form textarea{width:100%}.esm-team-rating-worker.is-rated{opacity:.8}
@media(max-width:700px){.esm-team-rating-center>summary{align-items:flex-start;padding:16px}.esm-team-rating-list{padding:2px 16px 16px}.esm-team-rating-form{grid-template-columns:1fr}.esm-team-rating-form .esm-btn{width:100%}.esm-team-rating-person{align-items:flex-start;flex-direction:column}.esm-team-rating-center>summary b{white-space:nowrap}}
\n\n/* v1.158.0 — Multi-Shift Coverage foundation */\n.esm-coverage-center{margin:18px 0;padding:20px;border:1px solid #dbe5f5;border-radius:20px;background:linear-gradient(145deg,#fff,#f7faff);box-shadow:0 10px 28px rgba(28,61,118,.07)}\n.esm-coverage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.esm-coverage-head h3{margin:4px 0 5px}.esm-coverage-head p{margin:0;max-width:680px;color:#475569}\n.esm-coverage-score{min-width:118px;text-align:center;padding:13px 16px;border-radius:16px;background:#edf4ff}.esm-coverage-score strong{display:block;font-size:28px;line-height:1;color:#2055db}.esm-coverage-score span{display:block;margin-top:5px;font-size:12px;color:#475569}\n.esm-coverage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.esm-coverage-summary span{padding:12px;border:1px solid #e5ebf5;border-radius:14px;background:#fff}.esm-coverage-summary strong,.esm-coverage-summary small{display:block}.esm-coverage-summary strong{font-size:20px}.esm-coverage-summary small{margin-top:2px;color:#475569}\n.esm-coverage-events{display:grid;gap:9px}.esm-coverage-event{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(120px,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #e4eaf3;border-radius:14px;background:#fff}.esm-coverage-event-main strong,.esm-coverage-event-main span{display:block}.esm-coverage-event-main span{margin-top:3px;font-size:13px;color:#475569}.esm-coverage-event-meter{height:8px;overflow:hidden;border-radius:999px;background:#e9eef6}.esm-coverage-event-meter span{display:block;height:100%;border-radius:inherit;background:#2055db}.esm-coverage-event.needs-staff .esm-coverage-event-meter span{background:#f59e0b}.esm-coverage-complete{font-weight:700;color:#16845b;white-space:nowrap}\n@media(max-width:720px){.esm-coverage-center{padding:15px;border-radius:17px}.esm-coverage-head{align-items:center}.esm-coverage-head p{font-size:13px}.esm-coverage-score{min-width:86px;padding:10px}.esm-coverage-score strong{font-size:23px}.esm-coverage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.esm-coverage-event{grid-template-columns:1fr;gap:9px}.esm-coverage-event .esm-btn{width:100%;text-align:center}.esm-coverage-complete{text-align:center;padding:6px}}\n
/* v1.159.0 — focused UX + contextual help audit */
.esm-help-tip{position:relative;isolation:isolate;display:inline-grid;place-items:center;width:30px;height:30px;margin-inline:8px 2px;padding:0;border:0;background:transparent;color:#52647e;font-weight:900;font-size:0;line-height:1;cursor:pointer;vertical-align:middle;touch-action:manipulation}
.esm-help-tip::before{content:'?';display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#e8eef8;color:#52647e;font-size:12px;box-shadow:inset 0 0 0 1px rgba(82,100,126,.08)}
.esm-help-tip:hover::before,.esm-help-tip:focus-visible::before{background:#dce7f8;color:#2055db}.esm-help-tip:focus-visible{outline:2px solid #8eb1ff;outline-offset:2px;border-radius:8px}
.esm-help-tip--compact{width:28px;height:28px;margin-inline:7px 1px}.esm-help-tip--compact::before{width:18px;height:18px;font-size:11px}
.esm-help-tip__bubble{position:absolute;z-index:30;inset-inline-start:0;top:calc(100% + 5px);display:block;width:min(310px,calc(100vw - 42px));margin:0;padding:10px 12px;border-radius:11px;background:#172033;color:#fff;font-size:12.5px;font-weight:400;line-height:1.55;text-align:start;box-shadow:0 10px 28px rgba(15,23,42,.22);white-space:normal}
.esm-coverage-key-facts{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 10px}.esm-coverage-key-facts>span{display:flex;align-items:center;gap:4px;padding:8px 11px;border-radius:12px;background:#fff;border:1px solid #e5ebf5;color:#52647e}.esm-coverage-key-facts strong{color:#172033;font-size:17px}.esm-coverage-key-facts .has-missing strong{color:#b45309}
.esm-secondary-details{margin:8px 0 14px}.esm-secondary-details>summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:#31558f;font-weight:700;font-size:13px;list-style:none;padding:6px 2px}.esm-secondary-details>summary::-webkit-details-marker{display:none}.esm-secondary-details>summary::after{content:'⌄';font-size:14px;transition:transform .15s}.esm-secondary-details[open]>summary::after{transform:rotate(180deg)}
.esm-dashboard-actions-focused{align-items:center}.esm-more-actions{position:relative}.esm-more-actions>summary{cursor:pointer;list-style:none;padding:10px 13px;border:1px solid #dbe4f0;border-radius:11px;background:#fff;color:#3f526d;font-weight:700}.esm-more-actions>summary::-webkit-details-marker{display:none}.esm-more-actions>div{position:absolute;z-index:20;top:calc(100% + 6px);inset-inline-start:0;min-width:190px;padding:7px;border:1px solid #dbe4f0;border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.13)}.esm-more-actions a{display:block;padding:9px 10px;border-radius:8px;color:#273b58;text-decoration:none;font-weight:650}.esm-more-actions a:hover{background:#f2f6fc}
.esm-directory-filters{padding:0}.esm-directory-filters[open]{padding:10px 12px 12px;border:1px solid #e5ebf5;border-radius:13px;background:#fafcff}.esm-directory-filters .esm-job-filter-form{margin-top:8px}.esm-match-context{margin-top:12px}
@media(max-width:720px){.esm-help-tip{margin-inline:9px 3px}.esm-help-tip__bubble{position:fixed;z-index:9999;inset-inline:20px;top:auto;bottom:78px;width:auto;max-width:none}.esm-dashboard-actions-focused{display:flex;gap:8px}.esm-dashboard-actions-focused>.esm-btn{flex:1}.esm-more-actions{flex:0 0 auto}.esm-more-actions>summary{white-space:nowrap}.esm-more-actions>div{inset-inline-start:auto;inset-inline-end:0}.esm-coverage-key-facts{gap:7px}.esm-coverage-key-facts>span{flex:1 1 145px}}

/* v1.160.0 Potential Coverage: one clear signal, details stay progressive. */
.esm-potential-coverage{margin:12px 0 4px;padding:13px 15px;border:1px solid #dbe7ff;border-radius:14px;background:#f7faff}
.esm-potential-coverage>div{display:grid;grid-template-columns:1fr auto;gap:2px 14px;align-items:center}
.esm-potential-coverage span{font-weight:700;color:#263650;display:flex;align-items:center;gap:8px}
.esm-potential-coverage strong{font-size:1.2rem;color:#2055db;font-variant-numeric:tabular-nums}
.esm-potential-coverage small{grid-column:1/-1;color:#475569;line-height:1.45}
@media(max-width:600px){.esm-potential-coverage{padding:12px 13px}.esm-potential-coverage strong{font-size:1.1rem}}

/* v1.161.0 — Smart Staffing priority guidance */
.esm-staffing-priority{display:flex;align-items:center;gap:10px;margin:14px 0 10px;padding:10px 12px;border-radius:12px;background:#f5f8ff;color:#173b86;font-size:14px}.esm-priority-tag{display:inline-flex;align-items:center;margin-inline-start:7px;padding:3px 7px;border-radius:999px;background:#e9f7ef;color:#176b3a;font-size:11px;font-style:normal;font-weight:800;white-space:nowrap}.esm-staffing-role-pill.is-current{outline:2px solid rgba(32,85,219,.16);outline-offset:2px}@media(max-width:640px){.esm-staffing-priority{align-items:flex-start}.esm-priority-tag{display:block;width:max-content;margin:4px 0 0}.esm-staffing-mission-roles{gap:9px}}

/* v1.162.0 — keep Smart Staffing choices progressive, not competing CTAs. */
.esm-staffing-role-filter{margin-top:12px}.esm-staffing-role-filter>summary{cursor:pointer;font-weight:700}.esm-staffing-role-filter .esm-staffing-mission-roles{margin-top:10px}
/* v1.163.0 — Pilot-ready focus: one primary post-event action, secondary details on demand. */
.esm-post-event-primary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:15px 16px;border:1px solid #cbd9fb;border-radius:15px;background:#f4f7ff}.esm-post-event-primary>div{display:flex;flex-direction:column;gap:4px}.esm-post-event-primary>div>strong{font-size:16px;color:#17366f}.esm-post-event-primary>div>span{font-size:13px;color:#475569}.esm-post-event-details{margin-top:10px}.esm-post-event-details .esm-post-event-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.esm-post-event-details .esm-post-event-grid>div{min-width:0}.esm-post-event-details .esm-help-tip{margin-inline-start:7px;vertical-align:middle}
@media(max-width:700px){.esm-post-event-primary{align-items:stretch;flex-direction:column}.esm-post-event-primary .esm-btn{width:100%;text-align:center}.esm-post-event-details .esm-post-event-grid{grid-template-columns:1fr 1fr}.esm-post-event-details .esm-post-event-grid>div:last-child{grid-column:1/-1}}

/* v1.164.0 — Pilot flow focus: application → offer → worker confirmation. */
.esm-applicant-next-action,.esm-applicant-waiting-state,.esm-applicant-confirmed-state{margin-top:14px;padding:13px 14px;border-radius:14px;border:1px solid #dbe5f5;background:#f8fbff}.esm-applicant-next-action{display:flex;align-items:center;justify-content:space-between;gap:14px}.esm-applicant-next-action>div,.esm-applicant-waiting-state,.esm-applicant-confirmed-state{display:flex;flex-direction:column;gap:4px}.esm-applicant-next-action span,.esm-applicant-waiting-state span,.esm-applicant-confirmed-state span{font-size:13px;color:#475569}.esm-applicant-waiting-state{border-color:#f1dfb3;background:#fffaf0}.esm-applicant-confirmed-state{border-color:#ccebd9;background:#f3fbf6}.esm-applicant-confirmed-state strong{color:#13764b}.esm-applicant-more-actions{margin-top:10px}.esm-applicant-more-actions .esm-text-action{display:inline-block;padding:8px 0;color:#405775;text-decoration:none}.esm-booking-response-focused>.esm-btn-primary{width:100%;min-height:48px}.esm-decline-offer{margin-top:9px}.esm-decline-offer>summary{font-weight:650;color:#607087}.esm-job-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.esm-job-card-more>summary{min-height:42px;display:flex;align-items:center}.esm-no-show-action>summary{color:#7a4b32!important}
@media(max-width:700px){.esm-applicant-next-action{align-items:stretch;flex-direction:column}.esm-applicant-next-action .esm-btn{width:100%}.esm-job-card-actions>.esm-btn-primary{flex:1 1 100%;width:100%}.esm-job-card-more{width:100%}.esm-job-card-more>summary{justify-content:center}.esm-job-card-more>div{inset-inline:0;min-width:0}}

/* v1.165.0 — pilot lifecycle focus: destructive actions stay available without competing with the primary flow. */
.esm-cancel-booking-details,.esm-danger-details{margin-top:14px;border-top:1px solid #e8edf5;padding-top:10px}
.esm-cancel-booking-details>summary,.esm-danger-details>summary{cursor:pointer;font-weight:700;color:#5d6878;list-style:none;display:inline-flex;align-items:center;min-height:40px;padding:4px 8px;border-radius:9px}
.esm-cancel-booking-details>summary::-webkit-details-marker,.esm-danger-details>summary::-webkit-details-marker{display:none}
.esm-cancel-booking-details>summary:after,.esm-danger-details>summary:after{content:'⌄';margin-inline-start:8px}
.esm-cancel-booking-details[open]>summary:after,.esm-danger-details[open]>summary:after{content:'⌃'}
.esm-cancel-booking-details form,.esm-danger-details form{margin-top:8px;padding:12px;border-radius:12px;background:#f8fafc}
.esm-arrival-card h4{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* v1.168.0 — focused help popovers + unclipped secondary actions. */
.esm-help-tip{color:transparent!important;overflow:visible!important;flex:0 0 auto}
.esm-help-tip::before{color:#52647e!important}
.esm-help-tip__bubble.esm-help-tip__bubble--portal{position:fixed!important;z-index:100000!important;display:block!important;width:min(330px,calc(100vw - 32px))!important;margin:0!important;padding:11px 13px!important;border-radius:12px!important;background:#172033!important;color:#fff!important;font-size:13px!important;font-weight:400!important;line-height:1.55!important;text-align:start!important;box-shadow:0 12px 32px rgba(15,23,42,.28)!important;white-space:normal!important;opacity:1!important;pointer-events:auto!important;direction:rtl!important}
.esm-help-tip__bubble--portal::after{content:'';position:absolute;width:0;height:0;border:7px solid transparent}
.esm-help-tip__bubble--portal.is-above::after{top:100%;border-top-color:#172033;border-bottom:0;inset-inline-start:var(--esm-tip-arrow,50%);transform:translateX(50%)}
.esm-help-tip__bubble--portal.is-below::after{bottom:100%;border-bottom-color:#172033;border-top:0;inset-inline-start:var(--esm-tip-arrow,50%);transform:translateX(50%)}
.esm-job-card-more>div{position:static!important;inset:auto!important;min-width:0!important;margin-top:8px!important;box-shadow:none!important;background:#f8fafc!important}
.esm-job-card-more[open]{width:100%}.esm-job-card-more[open]>summary{background:#f5f8fd}
.esm-employer-job-card{overflow:visible!important}
@media(max-width:720px){
 .esm-help-tip__bubble.esm-help-tip__bubble--portal{inset-inline:16px!important;left:16px!important;right:16px!important;top:auto!important;bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;width:auto!important;max-width:none!important;max-height:min(42vh,320px)!important;overflow-y:auto!important;padding:14px 16px!important;border-radius:14px!important;font-size:14px!important;line-height:1.6!important;text-align:start!important;box-sizing:border-box!important}
 .esm-help-tip__bubble--portal::after{display:none!important}
 .esm-job-card-actions{align-items:stretch!important}.esm-job-card-more{width:100%}.esm-job-card-more>summary{text-align:center}
}
\n\n/* v1.169.2 — completed onboarding yields dashboard space; coverage CTA is mobile-safe. */
@media(max-width:720px){
  .esm-coverage-events,.esm-coverage-event,.esm-coverage-event-main,.esm-coverage-event-meter{min-width:0;max-width:100%;box-sizing:border-box}
  .esm-coverage-event{display:flex!important;flex-direction:column;align-items:stretch!important;width:100%;overflow:hidden;padding:14px!important}
  .esm-coverage-event-main{width:100%;overflow-wrap:anywhere}
  .esm-coverage-event-meter{width:100%}
  .esm-coverage-event>a.esm-btn,.esm-coverage-event .esm-btn-primary{position:static!important;inset:auto!important;transform:none!important;float:none!important;display:flex!important;align-items:center;justify-content:center;width:100%!important;max-width:100%!important;min-width:0!important;margin:4px 0 0!important;box-sizing:border-box!important;white-space:normal!important}
}

/* v1.170.0 — dashboard hierarchy: status → needs attention → staffing/upcoming work. */
.esm-action-center--focused{border-color:#e5e9f2;background:#fff;box-shadow:none}
.esm-action-center--focused .esm-action-center-head{margin-bottom:6px}
.esm-coverage-center .esm-coverage-events{margin-top:12px}
@media(max-width:720px){
 .esm-dashboard-overview{margin-bottom:12px}
 .esm-action-center{margin:12px 0}
 .esm-coverage-center{margin:12px 0}
 .esm-history-value-card{margin-top:16px}
}

/* v1.171.0 — Coverage mobile containment + readable counts. */
.esm-coverage-count{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
@media(max-width:720px){
 .esm-coverage-center,.esm-coverage-events,.esm-coverage-event{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
 .esm-coverage-center{overflow:hidden!important}
 .esm-coverage-key-facts{display:grid!important;grid-template-columns:1fr 1fr!important;align-items:stretch!important}
 .esm-coverage-key-facts>span{min-width:0!important;width:100%!important;justify-content:center!important;flex-wrap:wrap!important;text-align:center!important}
 .esm-coverage-count{font-size:16px!important}
 .esm-coverage-event{display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow:hidden!important}
 .esm-coverage-event-main,.esm-coverage-event-meter{grid-column:1!important;width:100%!important;min-width:0!important;max-width:100%!important}
 .esm-coverage-event>a.esm-btn.esm-btn-primary{grid-column:1!important;position:relative!important;left:auto!important;right:auto!important;inset-inline:auto!important;transform:none!important;float:none!important;display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:4px 0 0!important;padding:11px 14px!important;box-sizing:border-box!important;overflow:hidden!important}
}
\n\n/* v1.172.2 — Coverage details rebuilt as a clear, mobile-safe disclosure panel. */
.esm-coverage-details{margin:14px 0 16px!important;width:100%;min-width:0;box-sizing:border-box}
.esm-coverage-details>summary{display:flex!important;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:11px 16px!important;border:1px solid #cbd9f7;border-radius:13px;background:#eef4ff;color:#1749b5!important;font-size:14px!important;font-weight:800!important;line-height:1.3;box-sizing:border-box;cursor:pointer;transition:background .15s,border-color .15s}
.esm-coverage-details>summary:hover{background:#e6efff;border-color:#b6c9f3}
.esm-coverage-details>summary::after{content:'⌄'!important;font-size:16px;line-height:1;transition:transform .15s}
.esm-coverage-details[open]>summary::after{transform:rotate(180deg)}
.esm-coverage-details .esm-details-hide{display:none}
.esm-coverage-details[open] .esm-details-show{display:none}
.esm-coverage-details[open] .esm-details-hide{display:inline}
.esm-coverage-details>.esm-coverage-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;width:100%;min-width:0;margin:10px 0 0!important;padding:0!important;box-sizing:border-box}
.esm-coverage-details>.esm-coverage-summary>span{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-width:0!important;width:auto!important;min-height:88px;padding:12px 9px!important;border:1px solid #e0e7f2!important;border-radius:14px!important;background:#fff!important;text-align:center!important;box-sizing:border-box!important;overflow:hidden}
.esm-coverage-details>.esm-coverage-summary strong{display:block!important;margin:0 0 5px;font-size:22px!important;line-height:1.1;color:#172033}
.esm-coverage-details>.esm-coverage-summary small{display:block!important;max-width:100%;margin:0!important;color:#475569;line-height:1.35;overflow-wrap:anywhere}
@media(max-width:720px){
 .esm-coverage-center{overflow:visible!important}
 .esm-coverage-details>summary{min-height:48px;font-size:15px!important}
 .esm-coverage-details>.esm-coverage-summary{grid-template-columns:1fr!important;gap:8px!important}
 .esm-coverage-details>.esm-coverage-summary>span{min-height:72px!important;padding:11px 12px!important}
 .esm-coverage-events{width:100%!important;overflow:visible!important}
 .esm-coverage-event{width:100%!important;max-width:100%!important;overflow:hidden!important}
}


/* v1.175.0: employer shift summary cards are navigational shortcuts. */
.esm-staffing-stat-link { color: inherit; text-decoration: none; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.esm-staffing-stat-link:hover, .esm-staffing-stat-link:focus-visible { color: inherit; border-color: #b9c9f5; box-shadow: 0 5px 16px rgba(32,85,219,.10); transform: translateY(-1px); outline: none; }

/* v1.177.0 transient action confirmation */
.esm-flash-notice{transition:opacity .3s ease,transform .3s ease}.esm-flash-notice.is-dismissing{opacity:0;transform:translateY(-6px)}

/* v1.178.0: make the potential-worker action unmistakably actionable. */
.esm-potential-coverage>.esm-potential-coverage-cta{min-width:132px;justify-content:center;font-weight:800;box-shadow:0 6px 16px rgba(32,85,219,.16)}
@media(max-width:600px){.esm-potential-coverage>.esm-potential-coverage-cta{width:100%;margin-top:10px}}

/* v1.179.0 dispute conversation */
.esm-dispute-message.is-platform{border-color:#b9cff7;background:#f4f8ff}.esm-dispute-context{background:#f7f9fc;border-radius:10px;padding:12px 14px;line-height:1.65}.esm-worker-management-links{margin:18px 0}.esm-worker-management-links>div{display:flex;gap:14px;flex-wrap:wrap;padding:12px 0}.esm-worker-management-links a{font-weight:600}

/* v1.179.1 worker secondary management */
.esm-worker-management-panel{margin-top:18px;padding:18px;border:1px solid var(--esm-border,#e6e9ef);border-radius:16px;background:#fff}
.esm-worker-management-heading h3{margin:3px 0 12px}
.esm-worker-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.esm-worker-management-grid>a{position:relative;display:flex;flex-direction:column;gap:4px;padding:13px 14px;border:1px solid var(--esm-border,#e6e9ef);border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.esm-worker-management-grid>a:hover{border-color:currentColor}
.esm-worker-management-grid small{opacity:.72}
.esm-management-badge{position:absolute;top:10px;left:10px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#fff;font-size:12px;font-weight:700}
@media(max-width:600px){.esm-worker-management-grid{grid-template-columns:1fr}}

/* v1.180.0 — unified service/trust hub */
.esm-service-hub-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}.esm-service-hub-head h2{margin:3px 0 6px}.esm-service-hub-head p{margin:0;max-width:650px;color:#475569}.esm-service-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.esm-service-tool{display:flex!important;flex-direction:column;gap:5px;text-decoration:none!important;color:inherit;position:relative}.esm-service-tool strong{font-size:16px}.esm-service-tool small{color:#475569}.esm-new-case-picker,.esm-new-case-form{margin:16px 0}.esm-case-booking-list{display:grid;gap:8px}.esm-case-booking-list a,.esm-dispute-list-item a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border:1px solid #e3e9f3;border-radius:12px;text-decoration:none!important;color:inherit;background:#fff}.esm-case-booking-list a:hover,.esm-dispute-list-item a:hover{border-color:#b9c9ef;background:#f8faff}.esm-case-booking-list b{color:#2055db;white-space:nowrap}.esm-dispute-list{margin-top:16px}.esm-dispute-list-item{margin-top:8px}.esm-dispute-list-item a{align-items:flex-start;flex-direction:column}.esm-dispute-list-item small{color:#475569}.esm-empty-state{padding:14px 0}.esm-empty-state p{color:#475569}.esm-section-heading{display:flex;justify-content:space-between;align-items:center}.esm-section-heading h3{margin-bottom:3px}.esm-section-heading small{color:#475569}@media(max-width:640px){.esm-service-hub-head{flex-direction:column}.esm-service-hub-head .esm-btn{width:100%}.esm-service-tools{grid-template-columns:1fr}.esm-case-booking-list a{align-items:flex-start;flex-direction:column}.esm-case-booking-list b{align-self:flex-end}}

/* v1.181.0: compact mobile notification history without hiding the 20-item page. */
.esm-service-tool-action{display:block;margin-top:10px;color:#2055db;font-weight:750;font-size:.92rem}
@media(max-width:640px){
  .esm-notification-center .esm-notifications-list{max-height:430px;overflow-y:auto;overscroll-behavior:contain;padding-inline-end:3px;scrollbar-gutter:stable}
  .esm-notification-center .esm-notifications-list:has(li:nth-child(6)){border-block:1px solid #edf0f5;padding-block:4px}
  .esm-notification-center .esm-pagination{position:sticky;bottom:0;background:#fff;padding-top:10px;z-index:1}
}

/* v1.183.0: mobile notifications use progressive disclosure; never nested vertical scrolling. */
.esm-notification-mobile-actions{display:none}
@media(max-width:639px){
  .esm-notification-center .esm-notifications-list{max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important}
  .esm-notification-center .esm-notifications-list>li:nth-child(n+6){display:none}
  .esm-notification-center .esm-notifications-list>li.esm-mobile-notification-visible{display:flex}
  .esm-notification-mobile-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}
  .esm-notifications-show-more{flex:1 1 180px}
  .esm-notifications-all-link{flex:0 0 auto;font-weight:700;text-decoration:none;color:var(--esm-color-primary,#1d4ed8)}
  .esm-notification-center .esm-pagination{position:static;background:transparent;padding-top:10px}
}
/* v1.185.0 smart help center */
.esm-help-center{max-width:980px;margin:0 auto;padding:24px 16px}.esm-help-search{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:20px;margin:20px 0}.esm-help-search input{width:100%;font-size:18px;padding:14px 16px;border:1px solid #cfd9e8;border-radius:12px;margin:8px 0}.esm-help-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.esm-help-cat{background:#fff;border:1px solid #dbe3ef;border-radius:14px;padding:16px;text-align:right;cursor:pointer}.esm-help-cat small{display:block;color:#4b5565;margin-top:5px}.esm-help-card{background:#fff;border:1px solid #dbe3ef;border-radius:16px;padding:18px;margin:12px 0}.esm-help-card>span{font-size:12px;color:#4b5565}.esm-help-card h3{margin:6px 0}.esm-help-card p{line-height:1.7}.esm-help-empty{text-align:center;padding:28px;background:#fff;border-radius:16px}@media(max-width:700px){.esm-help-cats{grid-template-columns:1fr 1fr}.esm-help-center{padding:16px 12px}}

/* v1.186.0 support hub */
.esm-support{max-width:920px;margin:0 auto;padding:24px 16px}.esm-support .esm-section-heading{align-items:flex-start;gap:16px}.esm-support-new,.esm-support-history,.esm-support-ticket{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:20px;margin:18px 0}.esm-support-step{display:none}.esm-support-step.is-active{display:grid;gap:14px}.esm-support-step label{display:grid;gap:6px;font-weight:650}.esm-support-step input,.esm-support-step select,.esm-support-step textarea,.esm-support-reply textarea{width:100%;box-sizing:border-box;border:1px solid #ccd7e7;border-radius:11px;padding:11px 12px;font:inherit}.esm-step-label{font-size:12px;color:#4b5565}.esm-wizard-actions{display:flex;gap:10px;justify-content:space-between}.esm-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.esm-support-list{display:grid;gap:8px}.esm-support-list a{display:flex;justify-content:space-between;gap:12px;padding:13px;border:1px solid #e3e9f3;border-radius:12px;text-decoration:none;color:inherit}.esm-support-list small{color:#4b5565}.esm-support-thread{display:grid;gap:10px;margin:18px 0}.esm-support-thread article{padding:14px;border-radius:14px;border:1px solid #e2e8f0;background:#f8fafc}.esm-support-thread article.is-team{background:#f1f6ff;border-color:#cbdafa}.esm-support-thread p{white-space:normal;line-height:1.65}.esm-support-thread small{color:#4b5565}.esm-support-reply{display:grid;gap:10px}.esm-human-check{padding:12px;border-radius:12px;background:#f8fafc}@media(max-width:640px){.esm-support{padding:14px 10px}.esm-support .esm-section-heading{flex-direction:column}.esm-support .esm-section-heading>a{width:100%;text-align:center}.esm-support-list a{flex-direction:column}.esm-wizard-actions .esm-button{flex:1}}

/* v1.187.0 Support UI consistency */
.esm-support .esm-button,.esm-support button.esm-button{appearance:none;-webkit-appearance:none;border:0;border-radius:12px;min-height:46px;padding:11px 18px;font:inherit;font-weight:750;line-height:1.2;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box}
.esm-support .esm-button-primary{background:#1d4ed8;color:#fff!important;box-shadow:0 5px 14px rgba(29,78,216,.16)}
.esm-support .esm-button-primary:hover{background:#1e40af}.esm-support .esm-button-secondary{background:#fff;color:#1d4ed8!important;border:1px solid #cbd5e1}
.esm-support-reply .esm-button{width:auto;min-width:140px;justify-self:start}
@media(max-width:640px){.esm-support-reply .esm-button{width:100%;justify-self:stretch}}

/* v1.192.0 dedicated ratings/service hubs */
.esm-service-tools-single{grid-template-columns:minmax(0,680px)}.esm-rating-guide,.esm-rating-note{margin-top:16px}.esm-rating-guide h3{margin-top:0}.esm-rating-guide ol{margin:12px 20px 18px 0;padding:0;display:grid;gap:10px}.esm-rating-guide li{padding-right:4px;color:#334155}.esm-rating-note p{margin-bottom:0;color:#475569}@media(max-width:640px){.esm-rating-guide .esm-btn{width:100%;text-align:center}}

/* v1.194.0 — dispute booking picker: keep every eligible shift visible in the normal page flow on mobile; never trap the user in an inner scroller. */
@media(max-width:640px){.esm-new-case-picker{overflow:visible!important}.esm-case-booking-list{display:grid!important;gap:10px!important;max-height:none!important;overflow:visible!important}.esm-case-booking-list a{display:flex!important;width:100%;box-sizing:border-box}.esm-case-booking-list a span{width:100%;overflow-wrap:anywhere}}

/* v1.259.0 DOB + age-range search */
.esm-age-filter{display:flex;flex-direction:column;gap:5px;min-width:92px}.esm-age-filter>span{font-size:12px;font-weight:800;color:#65728a}.esm-age-filter input{width:100%;min-height:44px}.esm-directory-filters .esm-job-filter-form{align-items:end;flex-wrap:wrap}.esm-board-filter-console{grid-template-columns:repeat(auto-fit,minmax(135px,1fr)) auto!important}@media(max-width:639px){.esm-age-filter{min-width:0;flex:1 1 120px}.esm-directory-filters .esm-job-filter-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.esm-directory-filters .esm-job-filter-form>input[type=text],.esm-directory-filters .esm-job-filter-form>select,.esm-directory-filters .esm-filter-date-label,.esm-directory-filters .esm-job-filter-form>button{grid-column:1/-1}.esm-directory-filters .esm-job-filter-form>button{width:100%}}


/* v1.262.0 — employer mobile KPI balance + action-oriented waiting labels. */
@media (max-width:720px){
  .esm-employer-dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .esm-employer-dashboard-overview .esm-overview-stat--primary{grid-column:1/-1!important;min-height:72px!important;padding:9px 12px!important;display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;justify-content:center!important;column-gap:12px!important}
  .esm-employer-dashboard-overview .esm-overview-stat--primary strong{font-size:27px!important;margin:0!important}
  .esm-employer-dashboard-overview .esm-overview-stat--primary span{font-size:13px!important;line-height:1.25!important}
}
@media (max-width:390px){
  .esm-employer-dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .esm-employer-dashboard-overview .esm-overview-stat--primary{grid-column:1/-1!important;min-height:68px!important}
}
.esm-time-range{direction:ltr!important;unicode-bidi:isolate!important;font-variant-numeric:tabular-nums;white-space:nowrap}


/* v1.264.0: exact worker-journey focus after accepting/opening a booking. */
.esm-card-focus-target {
  scroll-margin-top: 88px;
  animation: esm-focus-booking 1.6s ease-out 1;
}
@keyframes esm-focus-booking {
  0%, 35% { box-shadow: 0 0 0 3px rgba(255, 153, 51, .32), var(--esm-shadow, 0 8px 24px rgba(0,0,0,.08)); }
  100% { box-shadow: var(--esm-shadow, 0 8px 24px rgba(0,0,0,.08)); }
}
@media (prefers-reduced-motion: reduce) { .esm-card-focus-target { animation: none; } }


/* v1.267.0 — employer actionable queue + visually distinct worker application state. */
.esm-status-badge.esm-status-application-sent{background:#e8f2ff!important;color:#174ea6!important;border-color:#bfd7ff!important}
@media (max-width:720px){
  .esm-employer-dashboard-overview .esm-overview-stat--primary{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:3px!important}
  .esm-employer-dashboard-overview .esm-overview-stat--primary strong,.esm-employer-dashboard-overview .esm-overview-stat--primary span{width:100%!important;text-align:center!important}
}

/* v1.268.0 Notification Action Center: distinguish action, information and resolved history. */
.esm-notification-meta{display:flex;align-items:center;gap:6px;margin-bottom:2px}
.esm-notification-kind{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.35}
.esm-notification-kind-action{background:#fff1c7;color:#8a5700}
.esm-notification-kind-info{background:#eaf2ff;color:#1746a2}
.esm-notification-kind-done{background:#eef1f5;color:#4b5565}
.esm-notification-state-done .esm-notification-copy>a,.esm-notification-state-done .esm-notification-copy>span{font-weight:550;color:#4b5565}
.esm-notification-state-action{border-inline-start:3px solid #e3a008!important}
@media(max-width:640px){.esm-notification-tabs{display:flex;gap:6px}.esm-notification-tabs a{white-space:nowrap}}
/* v1.271.0: modal always fits the viewport (long copy / small phones / on-screen keyboard); visible focus; KPI reconciliation + rating count */
.esm-confirm-modal__dialog{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);overflow-y:auto;overscroll-behavior:contain}
.esm-confirm-modal__dialog :focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.esm-confirm-modal__actions .esm-btn,.esm-confirm-modal__x{min-height:44px;min-width:44px}
.esm-active-filter .esm-filter-count{margin-inline-start:10px;font-size:.86rem;color:#475569;white-space:nowrap}
.esm-rating-count{margin-inline-start:4px;font-size:.85em;color:#475569}
.esm-release-worker summary{min-height:44px;display:flex;align-items:center}
/* ===== v1.272.0: pay terms (tips + payment method) ===== */
.esm-pay-rate{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}
.esm-pay-rate strong{font-weight:800;color:#0f172a}
.esm-pay-tips{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;background:#ecfdf3;color:#067647;font-weight:700;font-size:.86em;white-space:nowrap}
.esm-pay-tips.is-included{background:#eef4ff;color:#1d4ed8}
.esm-pay-estimate-line{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}
.esm-paymethod{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:#f1f5f9;color:#334155;font-size:.86rem;font-weight:600;white-space:nowrap}
.esm-paymethod--cash{background:#fff7e6;color:#9a5b00;border:1px solid #f6c768;font-weight:800}
.esm-job-card .esm-paymethod{margin-top:6px}
.esm-paymethod-row{margin:.35rem 0}
.esm-paymethod-field{border:0;padding:0;margin:0 0 1rem}
.esm-paymethod-field legend{font-weight:700;margin-bottom:6px}
.esm-paymethod-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.esm-paymethod-choice{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 12px;border:1px solid #d0d5dd;border-radius:12px;cursor:pointer;background:#fff}
.esm-paymethod-choice:has(input:checked){border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.15)}
.esm-paymethod-choice.is-cash:has(input:checked){border-color:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.18)}
.esm-tips-row[hidden]{display:none!important}
.esm-help-tip[role="button"]{cursor:pointer}
/* ===== v1.272.0: visual calendar ===== */
.esm-calendar{background:#fff;border:1px solid #e4e7ec;border-radius:18px;padding:14px;margin:0 0 18px}
.esm-calendar__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.esm-calendar__title{flex:1;margin:0;text-align:center;font-size:1.05rem}
.esm-calendar__title small{display:block;font-size:.78rem;font-weight:500;color:#4b5565}
.esm-calendar__nav,.esm-calendar__today{display:inline-grid;place-items:center;min-width:44px;min-height:44px;border-radius:12px;border:1px solid #e4e7ec;text-decoration:none;color:#1d2939;font-size:1.3rem;background:#f9fafb}
.esm-calendar__today{font-size:.85rem;padding:0 10px}
.esm-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.esm-calendar__wd{text-align:center;font-size:.75rem;color:#4b5565;padding:4px 0;font-weight:700}
.esm-calendar__day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;min-height:46px;padding:6px 2px;border-radius:10px;text-decoration:none;color:#1d2939;background:#f9fafb;border:1px solid transparent}
.esm-calendar__day.is-outside{opacity:1;color:#6b7280;background:#f8fafc}
.esm-calendar__day.is-today .esm-calendar__num{background:#1d4ed8;color:#fff;border-radius:999px;min-width:24px;line-height:24px}
.esm-calendar__day.is-selected{border-color:#2563eb;background:#eef4ff}
.esm-calendar__day.has-items{font-weight:700}
.esm-calendar__num{font-size:.9rem;text-align:center;min-width:24px;line-height:24px}
.esm-calendar__dots{display:flex;gap:3px}
.esm-calendar__dots i,.esm-calendar__legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#98a2b3}
.esm-calendar .is-confirmed{--c:#12b76a}.esm-calendar .is-waiting_you{--c:#f79009}.esm-calendar .is-waiting_other{--c:#2e90fa}.esm-calendar .is-done{--c:#98a2b3}.esm-calendar .is-open{--c:#f79009}
.esm-calendar__dots i,.esm-calendar__legend i{background:var(--c,#98a2b3)}
.esm-calendar__agenda h4{margin:14px 0 8px;font-size:1rem}
.esm-calendar__agenda ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.esm-calendar__item{display:grid;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid #e4e7ec;border-inline-start:4px solid var(--c,#98a2b3);text-decoration:none;color:#1d2939;background:#fff}
.esm-calendar__item strong{font-size:.95rem;overflow-wrap:anywhere}
.esm-calendar__meta{font-size:.8rem;color:#4b5565}
.esm-calendar__empty{color:#4b5565;font-size:.9rem}
.esm-calendar__legend{display:flex;flex-wrap:wrap;gap:10px;font-size:.78rem;color:#475467;margin:12px 0 0}
.esm-calendar__legend span{display:inline-flex;align-items:center;gap:5px}
.esm-calendar-sync{margin-top:12px;padding:10px 12px;border:1px dashed #d0d5dd;border-radius:12px;background:#fcfcfd}
.esm-calendar-sync summary{cursor:pointer;font-weight:700;min-height:32px}
.esm-calendar-sync__actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.esm-calendar-sync__link{display:grid;gap:4px;font-size:.8rem;color:#475467}
.esm-calendar-sync__link input{width:100%;font-size:.78rem}
.esm-add-to-calendar{margin-top:10px}
@media (min-width:600px){.esm-calendar__day{min-height:58px}.esm-calendar{padding:18px}}
@media (min-width:1024px){.esm-calendar__body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:22px;align-items:start}.esm-calendar__day{min-height:72px}.esm-calendar__agenda h4{margin-top:0}}
@media (max-width:380px){.esm-calendar{padding:10px}.esm-calendar__day{min-height:40px;padding:4px 1px}.esm-calendar__num{font-size:.82rem}}
/* v1.273.0: live-source notice under the calendar (worker + employer) */
.esm-calendar-live-notice{margin:12px 0 0;padding:8px 10px;border-radius:10px;background:#f8fafc;color:#475467;font-size:.8rem;line-height:1.5}

/* v1.274.4 — consistent wizard navigation, field-level validation and concise help. */
.esm-wizard-progress [role="button"].is-available{cursor:pointer}.esm-wizard-progress [role="button"].is-available:hover{box-shadow:inset 0 0 0 1px #b8c9eb}.esm-wizard-progress [role="button"]:focus-visible{outline:2px solid #2457db;outline-offset:2px}.esm-field-invalid{border-color:#d92d20!important;background:#fff6f5!important;box-shadow:0 0 0 3px rgba(217,45,32,.08)!important}.esm-wizard-validation-summary{margin:0 0 18px}.esm-wizard-validation-summary strong{display:block;margin-bottom:5px}.esm-wizard-validation-summary ul{margin:0;padding-inline-start:20px}.esm-wizard-validation-summary li{margin:2px 0}

/* v1.274.7 — compact discovery + employer date parity */
.esm-search-basic{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(150px,.8fr) auto;gap:10px;align-items:end}.esm-search-basic>.esm-secondary-details{grid-column:1/-1}.esm-board-advanced{grid-column:1/-1;width:100%;margin-top:4px}.esm-board-advanced>summary,.esm-directory-filters>summary{cursor:pointer;font-weight:800;color:#243b68}.esm-advanced-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 0 4px}.esm-advanced-filter-grid label,.esm-language-filter{display:flex;flex-direction:column;gap:6px;font-weight:700}.esm-advanced-filter-grid input,.esm-advanced-filter-grid select{width:100%}.esm-check-filter{flex-direction:row!important;align-items:center;gap:8px!important;align-self:end;min-height:44px}.esm-check-filter input{width:auto!important}.esm-language-filter{border:0;padding:0;margin:0}.esm-language-filter legend{font-weight:800;margin-bottom:6px}.esm-language-filter label{display:inline-flex;flex-direction:row;align-items:center;margin-inline-end:10px;font-weight:500}.esm-language-filter input{width:auto}.esm-save-search-form{display:flex;gap:8px;align-items:center;margin-top:10px}.esm-save-search-form input{min-width:0;max-width:320px}.esm-favorite-form{margin:0}.esm-favorite-toggle{border:1px solid #d9e1ef;background:#fff;border-radius:999px;width:38px;height:38px;display:inline-grid;place-items:center;cursor:pointer;font-size:18px}.esm-favorite-toggle.is-favorite{box-shadow:0 2px 10px rgba(24,54,100,.12)}.esm-job-card>.esm-favorite-form{float:left;margin:0 0 8px 0}.esm-board-job-wrap{position:relative}.esm-board-job-wrap>.esm-favorite-form{position:absolute;z-index:3;top:10px;left:10px}.esm-board-job-wrap>.esm-job-card{height:calc(100% - 0px)}
@media(max-width:720px){.esm-search-basic{grid-template-columns:1fr 1fr}.esm-search-basic>.esm-btn{grid-column:1/-1}.esm-advanced-filter-grid{grid-template-columns:1fr 1fr}.esm-save-search-form{flex-direction:column;align-items:stretch}.esm-save-search-form input{max-width:none}}
@media(max-width:480px){.esm-advanced-filter-grid{grid-template-columns:1fr}}
.esm-saved-searches{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:10px;font-size:13px}.esm-filter-chip{display:inline-flex;padding:6px 10px;border-radius:999px;background:#f2f6ff;border:1px solid #dce6f8;text-decoration:none;font-weight:700;color:#29456f}

/* v1.274.8 — quick discovery controls mirror canonical GET filters. */
.esm-discovery-quick-filters{display:flex;gap:8px;overflow-x:auto;align-items:center;padding:10px 1px 2px;scrollbar-width:none}.esm-discovery-quick-filters::-webkit-scrollbar{display:none}.esm-discovery-quick-filters .esm-filter-chip{flex:0 0 auto;min-height:38px;cursor:pointer;background:#fff}.esm-discovery-quick-filters .esm-filter-chip.is-active{background:#fff3e8;border-color:#f0a15e;color:#a94b00;box-shadow:inset 0 0 0 1px rgba(240,161,94,.15)}

/* v1.274.9 — language multi-select + anonymous discovery preference bridge. */
.esm-language-multiselect{border:1px solid #d9e1ef;border-radius:10px;padding:0;margin:0;align-self:start}.esm-language-multiselect>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 12px;font-weight:700}.esm-language-multiselect>summary::-webkit-details-marker{display:none}.esm-language-multiselect>summary strong{font-size:12px;color:#60708b}.esm-language-options{display:flex;flex-wrap:wrap;gap:8px 12px;padding:0 12px 12px}.esm-language-options label{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px;font-weight:500!important}.esm-language-options input{width:auto!important}.esm-guest-save-message{margin:8px 0 0;font-size:13px}.esm-guest-save-message a{font-weight:800}.esm-guest-favorite-toggle.is-favorite{background:#fff6dd;border-color:#efc764}
.esm-board-job-wrap>.esm-guest-favorite-toggle{position:absolute;z-index:3;top:10px;left:10px}

/* v1.274.11 — discovery UX coherence: 4-field basic search, compact advanced controls, job-level favorites. */
.esm-board-filter-console{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:end}
.esm-board-filter-console>.esm-board-advanced{grid-column:1/-1}
.esm-board-bottom-submit{grid-column:1/-1;display:flex;justify-content:flex-start;padding-top:12px;border-top:1px solid #edf1f7;margin-top:10px}
.esm-board-search-btn-bottom{min-width:190px}
.esm-advanced-filter-grid .esm-check-filter{background:#f8faff;border:1px solid #e1e8f4;border-radius:12px;padding:10px 12px;min-height:46px}
.esm-language-multiselect{min-height:46px;background:#fff;overflow:visible}
.esm-language-multiselect>summary{min-height:46px;padding:9px 12px}
.esm-language-multiselect:not([open]){height:46px;overflow:hidden}
.esm-language-multiselect[open]{grid-column:span 2}
.esm-save-search-form{display:grid;grid-template-columns:minmax(220px,340px) auto;gap:0;align-items:stretch;margin-top:14px;max-width:590px;border:1px solid #d7e0ee;border-radius:14px;background:#fff;padding:4px;box-shadow:0 5px 18px rgba(30,60,110,.06)}
.esm-save-search-form input[type=text]{max-width:none!important;border:0!important;background:transparent!important;min-height:44px;padding:10px 13px;box-shadow:none!important;outline:none}
.esm-save-search-form:focus-within{border-color:#7d9ee3;box-shadow:0 0 0 3px rgba(36,87,219,.08)}
.esm-save-search-form .esm-btn{border-radius:10px;white-space:nowrap}
.esm-board-job-wrap>.esm-favorite-form,.esm-board-job-wrap>.esm-guest-favorite-toggle{top:12px;left:58px}
.esm-board-job-wrap .esm-favorite-toggle.is-favorite{background:#fff3d7;border-color:#f0b44b;color:#b66a00}
@media(max-width:900px){.esm-board-filter-console{grid-template-columns:repeat(2,minmax(0,1fr))}.esm-board-filter-console>.esm-board-search-btn{grid-column:1/-1}.esm-board-bottom-submit{justify-content:stretch}.esm-board-search-btn-bottom{width:100%}}
@media(max-width:720px){.esm-advanced-filter-grid{grid-template-columns:1fr 1fr}.esm-language-multiselect[open]{grid-column:1/-1}.esm-save-search-form{grid-template-columns:1fr;gap:5px;max-width:none}.esm-save-search-form .esm-btn{width:100%}.esm-board-bottom-submit{position:sticky;bottom:72px;z-index:4;background:#fff;padding:10px 0 2px;margin-top:12px}}
@media(max-width:480px){.esm-board-filter-console{grid-template-columns:1fr 1fr}.esm-advanced-filter-grid{grid-template-columns:1fr 1fr;gap:9px}.esm-advanced-filter-grid .esm-check-filter{font-size:13px}.esm-language-multiselect{grid-column:1/-1}.esm-board-job-wrap>.esm-favorite-form,.esm-board-job-wrap>.esm-guest-favorite-toggle{left:52px}}
.esm-check-filter:has(input:checked){background:#eef5ff;border-color:#8ca9e8;color:#173b7a;box-shadow:inset 0 0 0 1px rgba(36,87,219,.08)}

/* v1.274.12 — mobile discovery polish after live-device review. */
.esm-board-filter-console{grid-template-columns:repeat(3,minmax(0,1fr)) auto}
.esm-board-filter-bar .esm-help-tip{width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important;padding:0!important;display:inline-grid!important;vertical-align:middle}
.esm-advanced-filter-grid>label>span{display:flex;align-items:center;gap:4px;min-height:24px}
.esm-board-bottom-submit{display:none}
.esm-favorite-toggle[aria-pressed="true"],.esm-favorite-toggle.is-favorite{background:#fff3d7!important;border-color:#f0b44b!important;color:#b66a00!important}
@media(max-width:900px){
 .esm-board-filter-console{grid-template-columns:repeat(2,minmax(0,1fr))}
 .esm-board-filter-console>.esm-board-search-btn{grid-column:1/-1}
}
@media(max-width:720px){
 .esm-board-filter-console>.esm-board-search-btn{display:none}
 .esm-board-bottom-submit{display:flex;grid-column:1/-1;position:static;justify-content:stretch;background:transparent;padding:12px 0 2px;margin-top:10px;border-top:1px solid #edf1f7}
 .esm-board-search-btn-bottom{width:100%}
 .esm-advanced-filter-grid{grid-template-columns:1fr 1fr;align-items:start}
 .esm-advanced-filter-grid .esm-language-multiselect,.esm-advanced-filter-grid .esm-language-multiselect[open]{grid-column:1/-1;width:100%;min-width:0}
 .esm-language-multiselect>summary{width:100%;min-width:0;overflow:hidden}
 .esm-language-multiselect>summary>span{min-width:0;display:flex;align-items:center;gap:4px}
 .esm-language-multiselect>summary strong{white-space:nowrap;flex:0 0 auto}
 .esm-advanced-filter-grid .esm-check-filter:has(input[name="esm_board_tips"]){grid-column:1/-1;width:100%;flex-direction:row!important;justify-content:flex-start;white-space:normal}
}
@media(max-width:480px){
 .esm-board-filter-console{grid-template-columns:1fr 1fr}
 .esm-board-filter-field:has(input[name="esm_board_date"]){grid-column:1/-1}
 .esm-advanced-filter-grid{grid-template-columns:1fr 1fr;gap:9px}
 .esm-advanced-filter-grid .esm-check-filter{min-width:0}
}


/* v1.274.13 — role-first cards + favorite state parity on phone/tablet/desktop. */
.esm-board-job-wrap>.esm-favorite-form,.esm-board-job-wrap>.esm-guest-favorite-toggle{z-index:12;pointer-events:auto}
.esm-board-job-wrap .esm-favorite-toggle{position:relative;z-index:13;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:Arial,"Noto Sans",sans-serif;font-weight:800}
.esm-board-job-wrap .esm-favorite-toggle[aria-pressed="true"],.esm-board-job-wrap .esm-favorite-toggle.is-favorite{background:#fff3d7!important;border-color:#f0b44b!important;color:#b66a00!important;box-shadow:0 2px 10px rgba(182,106,0,.16)!important}
.esm-board-job-wrap .esm-favorite-toggle.is-pending{opacity:.65}
@media(max-width:900px){.esm-board-job-wrap .esm-favorite-toggle[aria-pressed="true"],.esm-board-job-wrap .esm-favorite-toggle.is-favorite{background:#fff3d7!important;border-color:#f0b44b!important;color:#b66a00!important}}
@media(max-width:480px){.esm-board-job-wrap .esm-favorite-toggle{width:42px;height:42px;font-size:21px}}

/* v1.275.0 — in-card favorite star beside the remaining-positions pill (all breakpoints). */
.esm-board-card-top-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}
.esm-board-job-wrap .esm-favorite-inline{position:static;width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid #d9e1ef;border-radius:999px;background:#fff;color:#243b68;font-size:18px;line-height:1;cursor:pointer;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:Arial,"Noto Sans",sans-serif;font-weight:800;box-shadow:0 1px 3px rgba(15,23,42,.08);visibility:visible;opacity:1}
.esm-board-job-wrap .esm-favorite-inline:hover{border-color:#f0b44b;color:#b66a00}
.esm-board-job-wrap .esm-favorite-inline:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}
.esm-board-job-wrap .esm-favorite-inline.is-favorite,.esm-board-job-wrap .esm-favorite-inline[aria-pressed="true"]{background:#fff3d7!important;border-color:#f0b44b!important;color:#b66a00!important}
.esm-board-job-wrap .esm-favorite-inline.is-pending{opacity:.6;pointer-events:none}
.esm-board-job-wrap .esm-favorite-inline.is-error{border-color:#dc2626!important}
.esm-board-job-wrap .esm-favorite-fallback{position:static!important;margin:0 0 6px}
@media(max-width:480px){.esm-board-job-wrap .esm-favorite-inline{width:40px;height:40px;font-size:20px}.esm-board-card-top-actions{gap:10px}}

/* v1.275.0 — discovery load-more control. */
.esm-load-more{display:flex;flex-direction:column;align-items:center;gap:10px;margin:18px 0 8px;text-align:center}
.esm-load-more-count{margin:0;color:#475569;font-size:14px}
.esm-load-more-btn{min-width:200px;min-height:44px}
.esm-load-more-btn.is-loading{opacity:.65;pointer-events:none}
.esm-worker-directory-results{display:block}


/* v1.275.4 — invite-to-shift block: clear, airy, no accidental taps on mobile. */
.esm-invite-block-existing .esm-invite-block-hint{margin:2px 0 12px;color:#475569;font-size:13px}
.esm-invite-existing-form{display:flex;flex-direction:column;gap:14px}
.esm-invite-field{display:flex;flex-direction:column;gap:6px;margin:0}
.esm-invite-field-label{font-weight:700;font-size:14px;color:#243b68}
.esm-invite-existing-form select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;font-size:15px}
.esm-invite-existing-form .esm-invite-submit{width:100%;min-height:48px;margin-top:6px}
@media(max-width:600px){.esm-invite-existing-form{gap:18px}.esm-invite-existing-form .esm-invite-submit{margin-top:10px}}

.esm-staffing-stat-muted{opacity:.85;background:#f8fafc}
.esm-status-badge.esm-status-muted{background:#f1f5f9;color:#475569;border-color:#e2e8f0}


/* v1.275.4 — Google-style rating stars (proportional fill) + picker spacing. */
.esm-rstars-wrap{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;vertical-align:middle}
.esm-rstars{position:relative;display:inline-block;direction:ltr;line-height:1;letter-spacing:2px;white-space:nowrap}
.esm-rstars-bg{color:#d6dbe4}
.esm-rstars-fg{position:absolute;top:0;left:0;overflow:hidden;color:#f5ad18;white-space:nowrap}
.esm-rstars-sm .esm-rstars{font-size:14px}.esm-rstars-md .esm-rstars{font-size:19px}.esm-rstars-lg .esm-rstars{font-size:26px}
.esm-rstars-num{font-size:15px;color:#1f2937}
.esm-rstars-count,.esm-rstars-none{color:#475569;font-size:13px}
.esm-rating-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.esm-rating-picker-field{display:flex;flex-direction:column;gap:4px}
.esm-star-picker label{font-size:34px}

/* v1.275.4 — organised "more options" + consequence list in dialogs. */
.esm-more-actions-grid{display:grid;gap:10px;margin-top:10px}
.esm-more-action{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;text-align:start;text-decoration:none;color:#1f2937;cursor:pointer;font:inherit;width:100%;min-height:56px}
.esm-more-action>span:first-child{font-size:20px;flex:0 0 auto}
.esm-more-action strong{display:block;font-size:15px}.esm-more-action small{display:block;color:#475569;font-size:12.5px;margin-top:2px}
.esm-more-action:hover{border-color:#94a3b8;background:#f8fafc}
.esm-more-action-warn{border-color:#fecaca;background:#fff7f7}.esm-more-action-warn:hover{background:#fff1f1;border-color:#f87171}
.esm-more-action.is-done{cursor:default;background:#f8fafc;opacity:.9}
.esm-confirm-modal__points{margin:6px 0 14px;padding-inline-start:20px;text-align:start;line-height:1.55}
.esm-confirm-modal__points li{margin:4px 0}
@media(min-width:720px){.esm-more-actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v1.275.4: worker heart — refused/failed toggle feedback */
.esm-worker-heart.is-error{outline:2px solid #dc2626;outline-offset:2px;border-radius:999px}
.esm-worker-heart.is-pending{opacity:.55}

/* v1.275.5: action feedback is revealed in view (see esm-frontend.js). */
[data-esm-feedback]{scroll-margin-top:96px;scroll-margin-bottom:110px}
[data-esm-feedback]:focus{outline:none}
.esm-feedback-attention{animation:esmFeedbackPulse 1.2s ease 2}
@keyframes esmFeedbackPulse{0%,100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}50%{box-shadow:0 0 0 6px rgba(37,99,235,.25)}}
@media (prefers-reduced-motion:reduce){.esm-feedback-attention{animation:none}}
/* v1.275.5: role row = role + quantity + rate */
.esm-role-count-item.is-incomplete{border-color:#dc2626!important;background:#fff7f7}
.esm-role-count-item.is-auto-selected{border-color:#2563eb}
.esm-base-role-line.is-incomplete input:invalid{border-color:#dc2626}
/* v1.275.5: navigation progress bar */
html.esm-navigating::before{content:"";position:fixed;top:0;right:0;left:0;height:3px;z-index:100000;background:linear-gradient(90deg,#2563eb,#f97316);transform-origin:right;animation:esmNavBar 1.6s ease-out forwards;pointer-events:none}
@keyframes esmNavBar{0%{transform:scaleX(0)}60%{transform:scaleX(.7)}100%{transform:scaleX(.92)}}
@media (prefers-reduced-motion:reduce){html.esm-navigating::before{animation:none;transform:scaleX(.6)}}
.esm-feedback-in-context{margin:0 0 12px}
/* v1.276.0: shift reschedule */
.esm-reschedule-panel .esm-reschedule-explain p{margin:.4em 0;line-height:1.55}
.esm-reschedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 18px}
.esm-reschedule-grid label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.92rem}
.esm-reschedule-grid input{min-height:44px}
@media (max-width:560px){.esm-reschedule-grid{grid-template-columns:1fr 1fr}.esm-reschedule-grid label:first-child{grid-column:1/-1}}
.esm-reschedule-box{border:2px solid #f59e0b;background:#fffbeb;border-radius:14px;padding:14px 16px;margin:0 0 14px}
.esm-reschedule-box.is-time{border-color:#60a5fa;background:#eff6ff}
.esm-reschedule-box h4{margin:0 0 6px;font-size:1.05rem}
.esm-reschedule-change{margin:0 0 6px;font-size:1rem}.esm-reschedule-change .is-old{text-decoration:line-through;color:#6b7280}
.esm-reschedule-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.esm-reschedule-actions .esm-btn{min-height:44px}
.esm-reschedule-counts{margin:.3em 0;padding-inline-start:1.2em}
.esm-reschedule-worker-state{margin:10px 0;padding:10px 12px;border-radius:12px;background:#fff7ed;border:1px solid #fdba74}.esm-reschedule-worker-state.is-pending{background:transparent;border:0;padding:0}
.esm-badge-new{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;border-radius:999px;padding:2px 10px;font-size:.82rem;font-weight:700}
.esm-worker-score .esm-help-tip,.esm-rstars-wrap.is-new .esm-help-tip{margin-inline-start:4px}
/* v1.277.0: stars keep their colours inside the trust strip */
.esm-trust-strip .esm-rstars-bg{color:#d6dbe4}.esm-trust-strip .esm-rstars-fg{color:#f5ad18}.esm-trust-strip .esm-rstars{font-size:15px}.esm-trust-score{flex-wrap:wrap}
.esm-employer-score-inline{display:inline-flex;margin-inline-start:6px}.esm-employer-score-line{margin:6px 0}
.esm-reconsent-banner{position:sticky;top:0;z-index:9999;background:#fffbeb;border-bottom:2px solid #f59e0b;padding:10px 16px}.esm-reconsent-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.esm-reconsent-inner p{margin:0;flex:1 1 320px;line-height:1.5}

/* v1.279.0: shift share control */
.esm-share{display:inline-block;position:relative;max-width:100%}
.esm-share-panel{display:grid;gap:8px;margin-top:8px;padding:12px;border:1px solid #dbe3ef;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.08);min-width:min(320px,100%)}
.esm-share-panel[hidden]{display:none}
.esm-share-link{display:grid;gap:4px;font-size:13px;color:#475467}
.esm-share-link input{width:100%;box-sizing:border-box;border:1px solid #ccd7e7;border-radius:10px;padding:9px 10px;font:inherit;font-size:13px;direction:ltr;text-align:left}
.esm-share-status{font-size:13px;color:#067647;min-height:1em}
.esm-share-clicks{font-size:13px;color:#475467}
.esm-job-share-row{margin:14px 0}

/* v1.279.0: accessibility - skip link + visible keyboard focus everywhere */
.esm-skip-link{position:absolute;top:-100px;right:8px;z-index:100001;background:#1e3a8a;color:#fff;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none}
.esm-skip-link:focus{top:8px;outline:3px solid #fbbf24;outline-offset:2px}
.esm-wrap a:focus-visible,.esm-wrap button:focus-visible,.esm-wrap input:focus-visible,.esm-wrap select:focus-visible,.esm-wrap textarea:focus-visible,.esm-wrap summary:focus-visible,.esm-share a:focus-visible,.esm-share button:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
main:focus{outline:none}
.esm-legal-links{text-align:center;font-size:13px;color:#475569;padding:14px 16px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}
.esm-legal-links a{color:#334155;text-decoration:underline}
@media (max-width:900px){body:has(.esm-bottom-nav) .esm-legal-links{padding-bottom:calc(84px + env(safe-area-inset-bottom))}}

/* v1.281.0: agreement update as a quiet card inside the personal area */
.esm-reconsent-card{max-width:1100px;margin:8px auto 12px;padding:10px 14px;border:1px solid #fde68a;border-radius:12px;background:#fffbeb}
.esm-reconsent-card form{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between}
.esm-reconsent-card p{margin:0;font-size:14px;line-height:1.5}
.esm-reconsent-card a{color:#92400e}

/* v1.282.0: "the shift shared with you" card on the worker home */
/* v1.284.1: compact "shift you were interested in" strip inside the worker home */
.esm-shared-shift-card{position:relative;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin:0 0 14px;padding:12px 14px;padding-inline-end:40px;border:1px solid #c7d7fe;border-inline-start:4px solid var(--esm-color-primary,#1d4ed8);border-radius:14px;background:#f5f8ff}
.esm-shared-shift-body{flex:1 1 260px;min-width:0}
.esm-shared-shift-eyebrow{margin:0 0 2px;font-size:12px;font-weight:800;color:var(--esm-color-primary,#1d4ed8)}
.esm-shared-shift-card h2{margin:0;font-size:15px;line-height:1.4;color:#0f172a}
.esm-shared-shift-meta{margin:2px 0 0;color:#334155;font-size:13px}
.esm-shared-shift-note{margin:4px 0 0;color:#92400e;font-size:12.5px}
.esm-shared-shift-actions{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;flex:0 0 auto}
.esm-shared-shift-link{font-size:13px;color:var(--esm-color-primary,#1d4ed8);text-decoration:underline}
.esm-shared-shift-dismiss{position:absolute;inset-block-start:6px;inset-inline-end:8px;width:28px;height:28px;display:grid;place-items:center;border-radius:8px;color:#475569;font-size:20px;line-height:1;text-decoration:none}
.esm-shared-shift-dismiss:hover,.esm-shared-shift-dismiss:focus-visible{background:#e0e9ff;color:#0f172a}
@media (max-width:640px){.esm-shared-shift-actions{flex:1 1 100%}.esm-shared-shift-actions .esm-btn{flex:0 1 auto}}
