/* ── Suppress theme page title when candidate dashboard is on the page ───── */
article:has( .wp-block-wp-career-board-candidate-dashboard ) .entry-title,
article:has( .wp-block-wp-career-board-candidate-dashboard ) .page-title,
article:has( .wp-block-wp-career-board-candidate-dashboard ) h1.post-title,
article:has( .wp-block-wp-career-board-candidate-dashboard ) .wp-block-post-title {
	display: none !important;
}

/* ── Design tokens ────────────────────────────────────────────────────────── */
.wcb-dashboard {
	--wcb-text-primary:   var(--wcb-contrast, var(--wp--preset--color--wcb-contrast));
	--wcb-text-secondary: var(--wcb-text-secondary, #64748b);
	--wcb-text-muted:     var(--wcb-text-tertiary, #9ca3af);
	--wcb-bg-subtle:      var(--wcb-bg-subtle, #f8fafc);
	--wcb-bg-hover:       var(--wcb-surface, var(--wp--preset--color--wcb-surface));
	--wcb-blue:           var(--wcb-primary, var(--wp--preset--color--wcb-primary));
	--wcb-green:          #059669;
	--wcb-radius:         var(--wcb-radius-md);
	font-family: inherit;
	font-size: 1rem;
	color: var(--wcb-text-primary);
}

/* Ensure data-wp-bind--hidden works even when elements have display:flex set below. */
.wp-block-wp-career-board-candidate-dashboard [hidden] {
	display: none !important;
}

.wcb-hidden { display: none !important; }

/* ── Shell — sidebar + main ──────────────────────────────────────────────── */
.wcb-dashboard-shell {
	display: flex;
	min-height: 600px;
	align-items: stretch;
}

/* ── Sidebar ──────────────────────────────────────────────────────────────── */
.wcb-sidebar {
	width: 220px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	background: var(--wcb-base, var(--wp--preset--color--wcb-base));
	border-inline-end: 1px solid var(--wcb-border);
	padding: var(--wcb-space-xl) 0;
}

/* Logo row — also doubles as Overview link when rendered as <button> */
.wcb-sidebar-logo {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-sm);
	padding: var(--wcb-space-lg) var(--wcb-space-lg);
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-primary);
	width: 100%;
	background: transparent;
	border: none;
	text-align: start;
	cursor: pointer;
	font-family: inherit;
}

.wcb-sidebar-logo:hover {
	background: var(--wcb-bg-subtle);
	color: var(--wcb-text-primary);
	border: none;
}

.wcb-sidebar-logo.wcb-nav-active {
	background: var(--wcb-bg-hover);
	color: var(--wcb-primary, var(--wp--preset--color--wcb-primary));
	border: none;
}

/* Prevent theme button overrides on the logo */
.wcb-dashboard .wcb-sidebar-logo {
	background: transparent;
	box-shadow: none;
}

.wcb-dashboard .wcb-sidebar-logo:hover {
	background: var( --wcb-bg-subtle );
}

.wcb-dashboard .wcb-sidebar-logo.wcb-nav-active {
	background: var( --wcb-bg-hover );
}

/* Section labels — act as visual dividers between nav groups */
.wcb-nav-section-label {
	display: block;
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-semibold);
	text-transform: uppercase;
	letter-spacing: 0.6px;
	color: var(--wcb-text-muted);
	padding: var(--wcb-space-md) var(--wcb-space-lg) var(--wcb-space-sm);
	border-top: 1px solid var(--wcb-border);
	margin-top: var(--wcb-space-xs);
}

.wcb-nav-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: var(--wcb-space-sm) var(--wcb-space-lg);
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-normal);
	font-family: inherit;
	color: var(--wcb-text-secondary);
	background: none;
	border: none;
	border-radius: var(--wcb-radius-sm);
	cursor: pointer;
	text-align: start;
	text-decoration: none;
	transition: background 0.12s, color 0.12s;
	box-sizing: border-box;
}

.wcb-nav-item:hover {
	background: var(--wcb-bg-subtle);
	color: var(--wcb-text-primary);
	border: none;
	text-decoration: none;
}

.wcb-nav-item.wcb-nav-active {
	background: var(--wcb-bg-hover);
	color: var(--wcb-text-primary);
	font-weight: var(--wcb-font-semibold);
	border: none;
}

/* Prevent theme button overrides on sidebar elements */
.wcb-dashboard .wcb-nav-toggle {
	background: var( --wcb-base, var(--wp--preset--color--wcb-base) );
	color: var( --wcb-text-primary );
	box-shadow: none;
}

.wcb-sidebar .wcb-nav-item:focus-visible {
	outline: 2px solid var( --wcb-blue );
	outline-offset: -2px;
}

.wcb-nav-badge {
	display: inline-block;
	background: var(--wcb-bg-hover);
	color: var(--wcb-text-secondary);
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-semibold);
	border-radius: var(--wcb-radius-full);
	padding: 1px var(--wcb-space-sm);
	line-height: 1.4;
}

.wcb-nav-badge--blue {
	background: var(--wcb-info-bg);
	color: var(--wcb-info);
}

.wcb-sidebar-cta {
	display: block;
	margin: var(--wcb-space-lg);
	padding: var(--wcb-space-lg) var(--wcb-space-lg);
	background: var(--wcb-text-primary);
	color: var(--wcb-base, #fff);
	font-size: var(--wcb-text-base);
	font-weight: var(--wcb-font-bold);
	font-family: inherit;
	text-align: center;
	text-decoration: none;
	border: none;
	border-radius: var(--wcb-radius);
	transition: background 0.12s;
}

.wcb-sidebar-cta:hover {
	background: var(--wp--preset--color--wcb-avatar-bg);
	color: var(--wp--preset--color--wcb-base);
	border: none;
	text-decoration: none;
}

.wcb-sidebar-user {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-sm);
	padding: var(--wcb-space-md) var(--wcb-space-lg);
	border-top: 1px solid var(--wcb-border);
	margin-top: auto;
}

.wcb-sidebar-avatar {
	flex-shrink: 0;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--wcb-border);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-secondary);
}

.wcb-sidebar-company {
	font-size: var(--wcb-text-base);
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-primary);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ── Main content area ────────────────────────────────────────────────────── */
.wcb-main {
	flex: 1;
	background: var(--wcb-bg-subtle);
	padding: var(--wcb-space-3xl);
	overflow-y: auto;
	min-width: 0;
}

/* ── View panels ──────────────────────────────────────────────────────────── */
.wcb-view-panel {
	display: none;
}

.wcb-view-panel.wcb-view-active {
	display: block;
}

/* ── Page header ──────────────────────────────────────────────────────────── */
.wcb-page-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wcb-space-md);
	margin-bottom: var(--wcb-space-2xl);
	flex-wrap: wrap;
}

.wcb-page-title {
	font-size: var(--wcb-text-xl);
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-primary);
	margin: 0;
}

/* ── Shared loading / error ───────────────────────────────────────────────── */
.wcb-cd-loading {
	display: none;
	align-items: center;
	gap: var(--wcb-space-sm);
	color: var(--wcb-text-secondary);
	font-size: var(--wcb-text-base);
	padding: var(--wcb-space-md) 0;
}

.wcb-cd-loading.wcb-shown {
	display: flex;
}

.wcb-cd-spinner {
	display: inline-block;
	width: 14px;
	height: 14px;
	border: 2px solid var( --wcb-border );
	border-top-color: var( --wcb-blue );
	border-radius: 50%;
	animation: wcb-cd-spin 0.7s linear infinite;
}

@keyframes wcb-cd-spin {
	to { transform: rotate( 360deg ); }
}

.wcb-cd-error {
	color: #b91c1c;
	font-size: var(--wcb-text-base);
	margin: 0 0 var(--wcb-space-lg);
}

/* ── Empty state ──────────────────────────────────────────────────────────── */
.wcb-cd-empty {
	display: none;
	flex-direction: column;
	align-items: center;
	gap: var(--wcb-space-md);
	padding: var(--wcb-space-4xl) var(--wcb-space-2xl);
	text-align: center;
}

.wcb-cd-empty.wcb-shown {
	display: flex;
}

.wcb-cd-empty-msg {
	font-size: var(--wcb-text-md);
	color: var(--wcb-text-secondary);
	margin: 0;
}

/* ── Panel wrapper (matches employer dashboard .wcb-panel) ────────────────── */
.wcb-panel {
	display: none;
	background: var(--wcb-base, var(--wp--preset--color--wcb-base));
	border: 1px solid var(--wcb-border);
	border-radius: var(--wcb-radius);
	overflow: hidden;
	margin-bottom: var(--wcb-space-xl);
}

.wcb-panel.wcb-shown {
	display: block;
}

/* ── Application rows ─────────────────────────────────────────────────────── */
.wcb-cd-app-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wcb-space-md);
	padding: 14px var(--wcb-space-xl);
	border-bottom: 1px solid var(--wcb-surface, #f1f5f9);
	transition: background 0.12s;
}

.wcb-cd-app-row:last-child {
	border-bottom: none;
}

.wcb-cd-app-row:hover {
	background: var( --wcb-bg-subtle );
}

.wcb-cd-app-main {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wcb-space-xs);
}

.wcb-cd-app-title {
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-semibold);
	color: var(--wcb-text-primary);
	margin: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wcb-cd-app-title a {
	color: inherit;
	text-decoration: none;
}

.wcb-cd-app-title a:hover {
	color: var( --wcb-blue );
	text-decoration: underline;
}

.wcb-cd-app-company {
	font-size: var(--wcb-text-xs);
	color: var(--wcb-text-secondary);
	font-weight: var(--wcb-font-medium);
}

.wcb-cd-app-date {
	font-size: var(--wcb-text-xs);
	color: var(--wcb-text-muted);
}

/* ── Status badge ─────────────────────────────────────────────────────────── */
.wcb-cd-status-badge {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	padding: 3px var(--wcb-space-lg);
	border-radius: var(--wcb-radius-full);
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-semibold);
	text-transform: capitalize;
	background: var(--wcb-bg-hover);
	color: var(--wcb-text-secondary);
}

.wcb-cd-status-badge[data-status="submitted"] {
	background: var(--wcb-info-bg);
	color: var(--wcb-info);
}

.wcb-cd-status-badge[data-status="shortlisted"] {
	background: var(--wcb-success-bg);
	color: var(--wcb-success);
}

.wcb-cd-status-badge[data-status="hired"] {
	background: #d1fae5;
	color: #065f46;
}

.wcb-cd-status-badge[data-status="rejected"] {
	background: var(--wcb-danger-bg);
	color: #991b1b;
}

/* ── Bookmark rows ────────────────────────────────────────────────────────── */
.wcb-cd-bookmark-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wcb-space-md);
	padding: 14px var(--wcb-space-xl);
	border-bottom: 1px solid var(--wcb-surface, #f1f5f9);
	transition: background 0.12s;
}

.wcb-cd-bookmark-row:last-child {
	border-bottom: none;
}

.wcb-cd-bookmark-row:hover {
	background: var( --wcb-bg-subtle );
}

.wcb-cd-bookmark-main {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wcb-space-xs);
}

.wcb-cd-bookmark-title {
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-semibold);
	color: var(--wcb-text-primary);
	margin: 0;
}

.wcb-cd-bookmark-title a {
	color: inherit;
	text-decoration: none;
}

.wcb-cd-bookmark-title a:hover {
	color: var( --wcb-blue );
	text-decoration: underline;
}

.wcb-cd-bookmark-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--wcb-space-xs);
	font-size: var(--wcb-text-sm);
	color: var(--wcb-text-secondary);
}

.wcb-cd-bookmark-meta-sep {
	color: var( --wcb-text-muted );
}

.wcb-cd-bookmark-actions {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-sm);
	flex-shrink: 0;
}

/* ── Resume cards (kept from original) ───────────────────────────────────── */
.wcb-resumes-header {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-md);
}

.wcb-upload-label {
	cursor: pointer;
}

.wcb-resume-cap-info {
	font-size: var(--wcb-text-sm);
	color: var( --wcb-text-muted );
}

.wcb-resume-card {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-md);
	padding: 14px var(--wcb-space-xl);
	background: var(--wcb-base, var(--wp--preset--color--wcb-base));
	border-bottom: 1px solid var(--wcb-surface, #f1f5f9);
	transition: background 0.12s;
}

.wcb-resume-card:last-child {
	border-bottom: none;
}

.wcb-resume-card:hover {
	background: var( --wcb-bg-subtle );
}

.wcb-resume-card-info {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wcb-space-xs);
}

.wcb-resume-card-title {
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-semibold);
	color: var(--wcb-text-primary);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wcb-resume-card-date {
	font-size: var(--wcb-text-xs);
	color: var( --wcb-text-muted );
}

.wcb-resume-card-actions {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-sm);
	flex-shrink: 0;
}

.wcb-resume-card-confirm {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-sm);
	flex-shrink: 0;
}

.wcb-resume-confirm-msg {
	font-size: var(--wcb-text-sm);
	color: var( --wcb-text-secondary );
	white-space: nowrap;
}

/* ── Button system ────────────────────────────────────────────────────────── */
.wcb-cbtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.375rem 0.875rem;
	border-radius: var(--wcb-radius-sm);
	font-size: var(--wcb-text-sm);
	font-weight: var(--wcb-font-semibold);
	font-family: inherit;
	text-decoration: none;
	cursor: pointer;
	border: 1px solid transparent;
	transition: background 0.12s, color 0.12s, border-color 0.12s;
	white-space: nowrap;
	line-height: 1.4;
}

.wcb-cbtn--sm {
	padding: 0.25rem 0.625rem;
	font-size: 0.8rem;
}

.wcb-cbtn--primary {
	background: var( --wcb-primary, var(--wp--preset--color--wcb-primary) );
	color: var(--wp--preset--color--wcb-base) !important;
	border-color: var( --wcb-primary, var(--wp--preset--color--wcb-primary) );
}

.wcb-cbtn--primary:hover {
	background: var( --wcb-primary-dark, var(--wp--preset--color--wcb-primary-dark) );
	border-color: var( --wcb-primary-dark, var(--wp--preset--color--wcb-primary-dark) );
	color: var(--wp--preset--color--wcb-base) !important;
	text-decoration: none;
}

.wcb-cbtn--primary:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.wcb-cbtn--ghost {
	background: transparent;
	color: var( --wcb-primary, var(--wp--preset--color--wcb-primary) ) !important;
	border-color: var( --wcb-primary, var(--wp--preset--color--wcb-primary) );
}

.wcb-cbtn--ghost:hover {
	background: #eff6ff;
	color: var( --wcb-primary-dark, var(--wp--preset--color--wcb-primary-dark) ) !important;
	border-color: var( --wcb-primary-dark, var(--wp--preset--color--wcb-primary-dark) );
	text-decoration: none;
}

.wcb-cbtn--danger {
	background: transparent;
	color: var(--wcb-danger) !important;
	border-color: #fca5a5;
}

.wcb-cbtn--danger:hover {
	background: #fef2f2;
	color: #b91c1c !important;
	border-color: var(--wcb-danger);
	text-decoration: none;
}

/* Mobile nav toggle — hidden on desktop */
.wcb-nav-toggle {
	display: none;
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media ( max-width: 1024px ) {
	.wcb-dashboard-shell {
		flex-direction: column;
	}

	.wcb-nav-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 13px var(--wcb-space-lg);
		background: var(--wcb-base, var(--wp--preset--color--wcb-base));
		border: none;
		border-bottom: 1px solid var(--wcb-border);
		cursor: pointer;
		font-size: var(--wcb-text-base);
		font-weight: var(--wcb-font-semibold);
		font-family: inherit;
		color: var(--wcb-text-primary);
		text-align: start;
	}

	.wcb-nav-toggle-icon::after {
		content: '\25BE';
		display: block;
		color: var(--wcb-text-muted);
		transition: transform 0.15s;
	}

	.wcb-nav-open .wcb-nav-toggle-icon::after {
		transform: rotate(180deg);
	}

	.wcb-sidebar {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
		padding: 0;
		overflow-x: visible;
		border-inline-end: none;
		border-bottom: 1px solid var( --wcb-border );
	}

	.wcb-sidebar-logo,
	.wcb-sidebar-nav,
	.wcb-sidebar-cta,
	.wcb-sidebar-user {
		display: none;
	}

	.wcb-sidebar.wcb-nav-open .wcb-sidebar-nav {
		display: flex;
		flex-direction: column;
		padding: 4px 0;
	}

	.wcb-sidebar.wcb-nav-open .wcb-sidebar-cta {
		display: block;
		margin: 8px 12px;
	}

	.wcb-sidebar.wcb-nav-open .wcb-sidebar-user {
		display: flex;
		border-top: 1px solid var( --wcb-border );
		margin-top: 0;
		padding: 10px 16px;
	}

	.wcb-nav-section-label {
		display: none;
	}

	.wcb-nav-item {
		width: 100%;
		padding: 11px 16px;
		border-radius: 0;
		border-bottom: none;
		text-align: start;
	}

	.wcb-nav-item.wcb-nav-active {
		background: var( --wcb-bg-hover );
		color: var( --wcb-blue );
		border-bottom: none;
	}
}

@media (max-width: 640px) {
	.wcb-main {
		padding: var(--wcb-space-xl) var(--wcb-space-lg);
	}

	/* My Applications — stack info above status badge */
	.wcb-cd-app-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
	}

	.wcb-cd-status-badge {
		align-self: flex-start;
	}

	/* Saved Jobs — stack info above actions */
	.wcb-cd-bookmark-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	.wcb-cd-bookmark-actions {
		width: 100%;
	}

	/* My Resumes — stack info above action buttons */
	.wcb-resume-card {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	.wcb-resume-card-actions,
	.wcb-resume-card-confirm {
		flex-shrink: 1;
	}
}

/* Notification bell */
.wcb-bell-wrapper {
	position: relative;
	display: inline-block;
}
.wcb-bell-btn {
	position: relative;
	background: none;
	border: none;
	cursor: pointer;
	padding: 6px;
	color: var( --wcb-text-secondary, var(--wp--preset--color--wcb-muted) );
	line-height: 1;
}
.wcb-bell-btn:hover { color: var(--wp--preset--color--wcb-primary); }
.wcb-bell-badge {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 18px;
	height: 18px;
	padding: 0 var(--wcb-space-xs);
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-bold);
	line-height: 18px;
	text-align: center;
	color: var(--wcb-base, #fff);
	background: var(--wcb-danger);
	border-radius: var(--wcb-radius-full);
}
.wcb-bell-dropdown {
	position: absolute;
	top: calc(100% + var(--wcb-space-sm));
	right: 0;
	width: 320px;
	background: var(--wcb-base, var(--wp--preset--color--wcb-base));
	border: 1px solid var(--wcb-border, #e2e8f0);
	border-radius: var(--wcb-radius-md);
	box-shadow: var(--wcb-shadow-lg);
	z-index: 100;
}
.wcb-bell-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--wcb-space-md) var(--wcb-space-lg);
	border-bottom: 1px solid var(--wcb-border, #e2e8f0);
	font-weight: var(--wcb-font-semibold);
	font-size: var(--wcb-text-base);
}
.wcb-bell-read-all {
	background: none;
	border: none;
	font-size: var(--wcb-text-xs);
	color: var( --wcb-primary, #4f46e5 );
	cursor: pointer;
}
.wcb-bell-list { max-height: 360px; overflow-y: auto; }
.wcb-bell-item {
	display: block;
	padding: var(--wcb-space-md) var(--wcb-space-lg);
	border-bottom: 1px solid var(--wcb-surface, #f1f5f9);
	text-decoration: none;
	color: inherit;
}
.wcb-bell-item:hover { background: var(--wcb-surface, #f1f5f9); }
.wcb-bell-unread { background: #eff6ff; }
.wcb-bell-msg {
	display: block;
	font-size: var(--wcb-text-sm);
	color: var(--wcb-contrast, #111827);
}
.wcb-bell-time {
	display: block;
	font-size: var(--wcb-text-xs);
	color: var(--wcb-text-tertiary);
	margin-top: 2px;
}

/* ── Overview: Stats row ──────────────────────────────────────────────────── */
.wcb-stats-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--wcb-space-lg);
	margin-bottom: var(--wcb-space-2xl);
}

.wcb-stat-card {
	background: var(--wcb-base, var(--wp--preset--color--wcb-base));
	border: 1px solid var(--wcb-border);
	border-radius: var(--wcb-radius-lg);
	padding: var(--wcb-space-xl) var(--wcb-space-2xl);
	display: flex;
	flex-direction: column;
	gap: var(--wcb-space-xs);
	min-width: 0;
}

.wcb-stat-value {
	font-size: 1.75rem;
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-primary);
	line-height: 1;
}

.wcb-stat-label {
	font-size: var(--wcb-text-base);
	color: var(--wcb-text-secondary);
	font-weight: var(--wcb-font-medium);
}

.wcb-stat-card--green .wcb-stat-value { color: var( --wcb-green ); }
.wcb-stat-card--blue  .wcb-stat-value { color: var( --wcb-blue ); }
.wcb-stat-card--amber .wcb-stat-value { color: var( --wcb-amber ); }

/* ── Overview: Two-column grid ────────────────────────────────────────────── */
.wcb-two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--wcb-space-xl);
}

/* ── Overview: Panel header / title / link / empty ───────────────────────── */
.wcb-panel-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--wcb-space-lg) var(--wcb-space-xl);
	border-bottom: 1px solid var(--wcb-border);
}

.wcb-panel-title {
	font-size: var(--wcb-text-base);
	font-weight: var(--wcb-font-bold);
	color: var(--wcb-text-primary);
}

.wcb-panel-link {
	font-size: var(--wcb-text-base);
	font-weight: var(--wcb-font-medium);
	font-family: inherit;
	color: var(--wcb-blue);
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-decoration: none;
}

.wcb-panel-link:hover {
	text-decoration: underline;
}

.wcb-panel-empty {
	display: none;
	font-size: var(--wcb-text-base);
	color: var(--wcb-text-secondary);
	padding: var(--wcb-space-lg) var(--wcb-space-xl);
	margin: 0;
}

.wcb-panel-empty.wcb-shown {
	display: block;
}

/* ── Overview: Application / saved-job rows ──────────────────────────────── */
.wcb-overview-app-row {
	display: flex;
	align-items: center;
	gap: var(--wcb-space-lg);
	padding: var(--wcb-space-md) var(--wcb-space-xl);
	border-bottom: 1px solid var(--wcb-surface, #f1f5f9);
}

.wcb-overview-app-row:last-child {
	border-bottom: none;
}

.wcb-app-info {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wcb-space-xs);
}

.wcb-app-name {
	font-size: var(--wcb-text-base);
	font-weight: var(--wcb-font-semibold);
	color: var(--wcb-text-primary);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-decoration: none;
}

.wcb-app-name:hover {
	text-decoration: underline;
}

.wcb-app-job {
	font-size: var(--wcb-text-xs);
	color: var( --wcb-text-muted );
}

/* ── Status badge (overview panels) ─────────────────────────────────────── */
.wcb-status-badge {
	font-size: var(--wcb-text-xs);
	font-weight: var(--wcb-font-semibold);
	padding: 2px var(--wcb-space-sm);
	border-radius: var(--wcb-radius-full);
	background: var(--wcb-bg-hover);
	color: var(--wcb-text-secondary);
	text-transform: capitalize;
	white-space: nowrap;
	flex-shrink: 0;
}

.wcb-status-badge[data-status="submitted"]   { background: var(--wcb-info-bg); color: var(--wcb-info); }
.wcb-status-badge[data-status="reviewing"]   { background: #fef9c3; color: #854d0e; }
.wcb-status-badge[data-status="shortlisted"] { background: #ede9fe; color: #5b21b6; }
.wcb-status-badge[data-status="hired"],
.wcb-status-badge[data-status="accepted"]    { background: var(--wcb-success-bg); color: var(--wcb-success); }
.wcb-status-badge[data-status="rejected"]    { background: var(--wcb-danger-bg); color: #991b1b; }

/* ── Responsive: stack to single column on narrow screens ────────────────── */
@media ( max-width: 640px ) {
	.wcb-stats-row {
		grid-template-columns: repeat( 2, 1fr );
	}

	.wcb-two-col {
		grid-template-columns: 1fr;
	}
}

/* ── Job Alerts tab ────────────────────────────────────────────────────── */
.wcb-alert-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 1.25rem;
	border-bottom: 1px solid var(--wp--preset--color--wcb-surface);
}

.wcb-alert-row:last-child {
	border-bottom: none;
}

.wcb-alert-main {
	flex: 1;
	min-width: 0;
}

.wcb-alert-title {
	font-size: var(--wcb-text-md);
	font-weight: var(--wcb-font-semibold);
	color: var(--wcb-contrast, #111827);
	margin: 0 0 0.25rem;
}

.wcb-alert-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem;
}

.wcb-alert-pill {
	display: inline-block;
	padding: 0.125rem 0.5rem;
	font-size: var(--wcb-text-xs);
	background: var(--wcb-surface, #f1f5f9);
	color: var(--wcb-contrast, #374151);
	border-radius: var(--wcb-radius-full);
}

.wcb-alert-actions {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-shrink: 0;
}

.wcb-alert-freq {
	padding: 0.25rem 0.5rem;
	border: 1px solid var(--wcb-border, #e2e8f0);
	border-radius: var(--wcb-radius-sm);
	font-size: var(--wcb-text-sm);
	font-family: inherit;
	background: var(--wcb-base, #fff);
	cursor: pointer;
}

.wcb-alert-freq:focus {
	outline: 2px solid var(--wcb-primary, var(--wp--preset--color--wcb-primary));
	outline-offset: 2px;
}

@media (max-width: 640px) {
	.wcb-alert-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.wcb-alert-actions {
		width: 100%;
		justify-content: flex-end;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wcb-nav-item,
	.wcb-cd-app-row,
	.wcb-cd-bookmark-row,
	.wcb-resume-card,
	.wcb-sidebar-cta,
	.wcb-cbtn,
	.wcb-nav-toggle-icon::after,
	.wcb-cd-spinner {
		transition: none !important;
		animation: none !important;
	}
}
