.page-cv-creator .cv-top-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	max-width: none;
}

.page-cv-creator .cv-top-actions-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

.page-cv-creator .cv-top-actions-bar .dropdown {
	display: flex;
}

.page-cv-creator .cv-top-actions-bar .btn {
	min-height: 2rem;
	padding: 0.25rem 0.7rem;
	line-height: 1.4;
	display: inline-flex;
	align-items: center;
}

.page-cv-creator .cv-top-actions .dropdown-menu {
	min-width: 11rem;
}

.page-cv-creator .cv-top-actions .dropdown-item {
	font-size: 0.85rem;
}

.page-cv-creator .nd-chart-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
}

.cv-template-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.cv-template-pill {
	border: 1px solid var(--border-color-light, rgba(255, 255, 255, 0.12));
	background: transparent;
	color: var(--default-color);
	border-radius: 999px;
	padding: 0.4rem 0.9rem;
	font-size: 0.82rem;
	font-weight: 600;
}

.cv-template-pill.is-active {
	background: rgba(32, 139, 244, 0.16);
	border-color: var(--accent-color, #208bf4);
	color: var(--heading-color, #fff);
}

.cv-repeat-item {
	padding: 0.9rem;
	margin-bottom: 0.75rem;
	border: 1px solid var(--border-color-light, rgba(255, 255, 255, 0.1));
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.02);
}

.cv-repeat-item:last-child {
	margin-bottom: 0;
}

.cv-repeat-toolbar {
	display: flex;
	justify-content: flex-end;
	gap: 0.35rem;
	margin-bottom: 0.65rem;
}

.cv-skill-box {
	display: grid;
	gap: 0.65rem;
}

.cv-skill-chips,
.cv-preview-skills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.cv-skill-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	background: rgba(32, 139, 244, 0.14);
	color: var(--heading-color, #fff);
	font-size: 0.78rem;
}

.cv-skill-chip button {
	border: 0;
	background: transparent;
	color: inherit;
	line-height: 1;
	padding: 0;
}

.cv-preview-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.85rem;
}

.cv-complete {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.8rem;
	color: var(--muted-color);
}

.cv-saved-list {
	display: grid;
	gap: 0.65rem;
}

.cv-saved-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.7rem 0.8rem;
	border: 1px solid var(--border-color-light, rgba(255, 255, 255, 0.1));
	border-radius: 12px;
}

.cv-saved-actions {
	display: flex;
	gap: 0.4rem;
	flex-shrink: 0;
}

.cv-workspace,
.cv-preview-col,
.cv-preview-stage {
	min-width: 0;
	max-width: 100%;
}

.cv-preview-col {
	scroll-margin-top: calc(var(--header-height, 64px) + 12px);
}

.cv-jump-preview-wrap {
	display: none;
	margin: 0 0 0.85rem;
}

.cv-jump-preview-wrap .btn {
	width: 100%;
	justify-content: center;
}

.cv-preview-stage {
	overflow: hidden;
	padding: 0.25rem 0 1rem;
}

.cv-sheet {
	--cv-accent: #1f6feb;
	--cv-ink: #1b2430;
	--cv-muted: #5b6776;
	--cv-line: #d7dee8;
	width: 210mm;
	min-height: 297mm;
	margin: 0 auto;
	background: #fff;
	color: var(--cv-ink);
	box-shadow: 0 18px 50px rgba(2, 12, 25, 0.28);
	overflow: hidden;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}

.cv-sheet * {
	box-sizing: border-box;
}

.cv-sheet a {
	color: inherit;
	text-decoration: none;
}

.cv-sheet h1,
.cv-sheet h2,
.cv-sheet h3,
.cv-sheet p,
.cv-sheet ul {
	margin: 0;
}

.cv-sheet ul {
	padding-left: 1.05rem;
}

.cv-sheet li + li {
	margin-top: 0.25rem;
}

.cv-sheet p + p {
	margin-top: 0.55rem;
}

.cv-empty-preview {
	min-height: 297mm;
	display: grid;
	place-items: center;
	padding: 2rem;
	color: #7a8694;
	text-align: center;
	font-size: 0.95rem;
}

.cv-section {
	margin-top: 1.05rem;
}

.cv-section h2 {
	margin-bottom: 0.45rem;
	font-size: 0.72rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--cv-accent);
}

.cv-item + .cv-item {
	margin-top: 0.75rem;
}

.cv-item-head {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	align-items: baseline;
}

.cv-item-head strong {
	font-size: 0.92rem;
}

.cv-item-dates {
	display: block;
	width: 100%;
	margin-top: 0.12rem;
	text-align: left;
	color: var(--cv-muted);
	font-size: 0.78rem;
}

.cv-meta {
	color: var(--cv-muted);
	font-size: 0.78rem;
}

.cv-chip {
	display: inline-flex;
	padding: 0.18rem 0.5rem;
	border-radius: 999px;
	background: color-mix(in srgb, var(--cv-accent), transparent 88%);
	color: var(--cv-ink);
	font-size: 0.72rem;
}

.cv-file-note {
	width: 100%;
	margin: 0.25rem 0 0;
	font-size: 0.75rem;
	line-height: 1.45;
	color: var(--muted-color);
	text-align: left;
}

.cv-sheet.theme-classic {
	padding: 16mm 16mm 18mm;
	font-family: "Times New Roman", Times, serif;
}

.cv-sheet.theme-classic .cv-classic-header {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.85rem;
	text-align: center;
	padding-bottom: 0.85rem;
	border-bottom: 2px solid var(--cv-accent);
}

.cv-sheet.theme-classic .cv-classic-photo,
.cv-print-page.theme-classic .cv-classic-photo {
	display: none !important;
}

.cv-sheet.theme-classic h1 {
	font-size: 1.85rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.cv-sheet.theme-classic .cv-role {
	margin-top: 0.25rem;
	color: var(--cv-accent);
	font-size: 1rem;
}

.cv-sheet.theme-classic .cv-contact-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem 0.85rem;
	margin-top: 0.65rem;
	color: var(--cv-muted);
	font-size: 0.8rem;
}

.cv-sheet.theme-modern {
	padding: 0 0 16mm;
	font-family: "Nunito Sans", "Segoe UI", sans-serif;
}

.cv-sheet.theme-modern .cv-modern-bar {
	height: 10px;
	background: var(--cv-accent);
}

.cv-sheet.theme-modern .cv-modern-body {
	padding: 12mm 14mm 0;
}

.cv-sheet.theme-modern .cv-modern-header {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: flex-start;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--cv-line);
}

.cv-sheet.theme-modern h1 {
	font-size: 1.7rem;
	line-height: 1.15;
}

.cv-sheet.theme-modern .cv-role {
	margin-top: 0.3rem;
	color: var(--cv-accent);
	font-weight: 700;
}

.cv-sheet.theme-modern .cv-modern-photo {
	width: 64px;
	height: 64px;
	max-width: 64px;
	max-height: 64px;
	border-radius: 16px;
	object-fit: cover;
	border: 2px solid var(--cv-accent);
}

.cv-sheet.theme-modern .cv-modern-grid {
	display: grid;
	grid-template-columns: 1.45fr 0.85fr;
	gap: 1.25rem;
	margin-top: 1rem;
}

.cv-sheet.theme-modern .cv-modern-grid > div:first-child {
	border-right: 1px solid var(--cv-line);
	padding-right: 1.1rem;
}

.cv-sheet.theme-executive {
	display: grid;
	grid-template-columns: 72mm 1fr;
	align-items: stretch;
	min-height: 297mm;
	font-family: "Nunito Sans", "Segoe UI", sans-serif;
}

.cv-sheet.theme-executive .cv-exec-side {
	background: #122033;
	color: #e8eef6;
	padding: 14mm 10mm 18mm;
	min-height: 100%;
	height: 100%;
	border-right: 3px solid var(--cv-accent);
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}

.cv-sheet.theme-executive .cv-exec-side .cv-chip {
	background: #2d4f73;
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.28);
}

.cv-sheet.theme-executive .cv-exec-side .cv-item-head strong,
.cv-sheet.theme-executive .cv-exec-side a {
	color: #f4f8fc;
}

.cv-side-link {
	margin-top: 0.45rem;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.cv-side-link a {
	color: inherit;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.32);
	text-underline-offset: 2px;
}

.cv-side-link-url {
	display: block;
	margin-top: 0.12rem;
	font-size: 0.72rem;
	line-height: 1.35;
	word-break: break-all;
	color: #c5d0dc;
}

.cv-sheet.theme-executive .cv-exec-side .cv-side-line a {
	color: #e8eef6;
	word-break: break-word;
}

.cv-sheet.theme-executive .cv-exec-side .cv-meta {
	color: #c5d0dc;
}

.cv-sheet.theme-executive .cv-exec-side h2,
.cv-sheet.theme-executive .cv-exec-main h2 {
	color: var(--cv-accent);
}

.cv-sheet.theme-executive .cv-exec-photo {
	width: 80px;
	height: 80px;
	max-width: 80px;
	max-height: 80px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
	margin: 0 auto 1rem;
	border: 3px solid var(--cv-accent);
}

.cv-sheet.theme-executive .cv-exec-main {
	padding: 14mm 12mm 16mm;
}

.cv-sheet.theme-executive h1 {
	font-size: 1.7rem;
	line-height: 1.15;
}

.cv-sheet.theme-executive .cv-role {
	margin-top: 0.3rem;
	color: var(--cv-accent);
	font-weight: 700;
}

.cv-sheet.theme-executive .cv-side-line {
	margin-top: 0.45rem;
	font-size: 0.78rem;
	color: #c5d0dc;
	word-break: break-word;
}

.cv-item,
.cv-section {
	break-inside: avoid;
	page-break-inside: avoid;
}

.cv-print-page .cv-item,
.cv-print-page .cv-section {
	break-inside: auto;
	page-break-inside: auto;
}

.cv-print-pages {
	display: none;
}

.cv-print-measure {
	display: block;
	position: absolute;
	left: -10000px;
	top: 0;
	width: 210mm;
	height: 248mm;
	overflow: hidden;
	pointer-events: none;
}

.cv-print-page {
	position: relative;
	width: 210mm;
	height: 248mm;
	max-height: 248mm;
	min-height: 0;
	overflow: hidden;
	box-sizing: border-box;
}

.cv-print-page.theme-executive {
	display: grid;
	grid-template-columns: 72mm 1fr;
	grid-template-rows: 248mm;
	align-items: stretch;
}

.cv-print-page .cv-exec-side,
.cv-print-page .cv-exec-main,
.cv-print-page .cv-print-main {
	height: 248mm;
	max-height: 248mm;
	min-height: 0;
	box-sizing: border-box;
	overflow: hidden;
}

.cv-print-page .cv-exec-main,
.cv-print-page .cv-print-main {
	position: relative;
	padding-bottom: 18mm;
}

.cv-print-page.theme-classic,
.cv-print-page.theme-modern {
	padding: 0;
}

.cv-print-page.theme-classic .cv-print-main {
	padding: 12mm 14mm 18mm;
}

.cv-print-page.theme-modern .cv-modern-body {
	height: calc(248mm - 10px);
	max-height: calc(248mm - 10px);
	padding: 10mm 12mm 0;
	box-sizing: border-box;
	overflow: hidden;
}

.cv-print-page.theme-modern .cv-print-main {
	height: 100%;
	max-height: 100%;
	padding: 0 0 16mm;
}

.cv-print-footer {
	position: absolute;
	right: 10mm;
	bottom: 6mm;
	left: 10mm;
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	border-top: 1px solid #d7dee8;
	padding-top: 2.5mm;
	font-size: 9px;
	letter-spacing: 0.04em;
	color: #5b6776;
}

@media (min-width: 1200px) {
	.cv-preview-col {
		position: sticky;
		top: 88px;
		align-self: flex-start;
		max-height: calc(100vh - 110px);
		overflow: auto;
	}
}

@media (max-width: 1199.98px) {
	.cv-jump-preview-wrap {
		display: block;
	}
}

@media (max-width: 767.98px) {
	.page-cv-creator .cv-top-actions,
	.page-cv-creator .cv-top-actions-bar {
		align-items: flex-start;
		justify-content: flex-start;
	}

	.cv-file-note {
		text-align: left;
	}

	.cv-saved-item {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media print {
	@page {
		size: A4 portrait;
		margin: 10mm;
	}

	html,
	body {
		width: 210mm !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
		color-adjust: exact !important;
	}

	.sidebar,
	.header,
	.footer,
	.back-to-top,
	.sidebar-overlay,
	.cv-editor,
	.cv-help,
	.cv-account-card,
	.nd-topbar,
	.cv-preview-toolbar,
	.cv-jump-preview-wrap,
	.cv-top-actions {
		display: none !important;
	}

	.main,
	.main-content,
	.nd-dashboard,
	.cv-workspace,
	.cv-preview-col,
	.cv-preview-stage,
	.page-cv-creator {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		background: #fff !important;
		box-shadow: none !important;
		position: static !important;
		max-height: none !important;
	}

	.page-cv-creator .cv-sheet,
	.page-cv-creator .cv-sheet *,
	.cv-sheet,
	.cv-sheet * {
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
		color-adjust: exact !important;
	}

	.page-cv-creator .cv-sheet,
	.cv-sheet {
		background: #fff !important;
		color: #1b2430 !important;
		box-shadow: none !important;
		transform: none !important;
		margin: 0 auto !important;
		width: 210mm !important;
		min-height: 297mm !important;
	}

	.page-cv-creator .cv-sheet :not(.cv-exec-side):not(.cv-chip):not(.cv-modern-bar),
	.cv-sheet :not(.cv-exec-side):not(.cv-chip):not(.cv-modern-bar) {
		background: transparent !important;
	}

	.page-cv-creator .cv-sheet h1,
	.page-cv-creator .cv-sheet p,
	.page-cv-creator .cv-sheet li,
	.page-cv-creator .cv-sheet strong,
	.cv-sheet h1,
	.cv-sheet p,
	.cv-sheet li,
	.cv-sheet strong {
		color: #1b2430 !important;
	}

	.page-cv-creator .cv-sheet .cv-meta,
	.page-cv-creator .cv-sheet .cv-contact-row,
	.cv-sheet .cv-meta,
	.cv-sheet .cv-contact-row {
		color: #5b6776 !important;
	}

	.page-cv-creator .cv-sheet h2,
	.page-cv-creator .cv-sheet .cv-role,
	.cv-sheet h2,
	.cv-sheet .cv-role {
		color: var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet .cv-classic-header,
	.cv-sheet .cv-classic-header {
		border-bottom-color: var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet .cv-classic-photo,
	.page-cv-creator .cv-sheet .cv-modern-photo,
	.page-cv-creator .cv-sheet .cv-exec-photo,
	.cv-sheet .cv-classic-photo,
	.cv-sheet .cv-modern-photo,
	.cv-sheet .cv-exec-photo {
		border-color: var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet .cv-modern-bar,
	.cv-sheet .cv-modern-bar {
		background: var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet .cv-modern-header,
	.cv-sheet .cv-modern-header {
		border-bottom-color: #d7dee8 !important;
	}

	.page-cv-creator .cv-sheet .cv-modern-grid > div:first-child,
	.cv-sheet .cv-modern-grid > div:first-child {
		border-right: 1px solid #d7dee8 !important;
	}

	.page-cv-creator .cv-sheet .cv-chip,
	.cv-sheet .cv-chip {
		background: color-mix(in srgb, var(--cv-accent, #1f6feb), #ffffff 88%) !important;
		color: #1b2430 !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side,
	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side *,
	.cv-sheet.theme-executive .cv-exec-side,
	.cv-sheet.theme-executive .cv-exec-side * {
		color: #e8eef6 !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side,
	.cv-sheet.theme-executive .cv-exec-side {
		background: #122033 !important;
		border-right: 3px solid var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side h2,
	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side .cv-role,
	.cv-sheet.theme-executive .cv-exec-side h2,
	.cv-sheet.theme-executive .cv-exec-side .cv-role {
		color: var(--cv-accent, #1f6feb) !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side .cv-meta,
	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side .cv-side-line,
	.cv-sheet.theme-executive .cv-exec-side .cv-meta,
	.cv-sheet.theme-executive .cv-exec-side .cv-side-line {
		color: #c5d0dc !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-side .cv-chip,
	.cv-sheet.theme-executive .cv-exec-side .cv-chip {
		background: #2d4f73 !important;
		color: #ffffff !important;
	}

	.page-cv-creator .cv-sheet.theme-executive .cv-exec-main h2,
	.cv-sheet.theme-executive .cv-exec-main .cv-role,
	.cv-sheet.theme-executive .cv-exec-main h2,
	.cv-sheet.theme-executive .cv-exec-main .cv-role {
		color: var(--cv-accent, #1f6feb) !important;
	}

	body.cv-print-ready > *:not(#cvPrintPages) {
		display: none !important;
	}

	body.cv-print-ready,
	body.cv-print-ready #cvPrintPages {
		display: block !important;
		width: 190mm !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		background: #fff !important;
	}

	.cv-print-page,
	.cv-print-page.cv-sheet {
		break-after: page;
		page-break-after: always;
		break-inside: avoid;
		page-break-inside: avoid;
		box-shadow: none !important;
		margin: 0 !important;
		width: 190mm !important;
		min-height: 0 !important;
		height: 97vh !important;
		max-height: 97vh !important;
		overflow: hidden !important;
	}

	.cv-print-page.theme-executive,
	.cv-print-page.theme-executive.cv-sheet {
		grid-template-columns: 64mm 1fr;
		grid-template-rows: 97vh;
		background: linear-gradient(to right, #122033 64mm, #ffffff 64mm) !important;
	}

	.cv-print-page.theme-classic,
	.cv-print-page.theme-classic.cv-sheet,
	.cv-print-page.theme-modern,
	.cv-print-page.theme-modern.cv-sheet {
		display: flex !important;
		flex-direction: column !important;
		padding: 0 !important;
	}

	.cv-print-page.theme-modern .cv-modern-bar {
		flex: 0 0 8px;
		height: 8px !important;
	}

	.cv-print-page.theme-modern .cv-modern-body {
		flex: 1 1 auto;
		height: auto !important;
		max-height: none !important;
		min-height: 0 !important;
		padding: 8mm 10mm 0 !important;
		overflow: hidden !important;
		position: relative;
	}

	.cv-print-page.theme-classic .cv-print-main,
	.cv-print-page.theme-modern .cv-print-main {
		flex: 1 1 auto;
		height: 100% !important;
		max-height: 100% !important;
		min-height: 0 !important;
		overflow: hidden !important;
	}

	.cv-print-page.theme-classic .cv-print-main {
		padding: 10mm 12mm 14mm !important;
	}

	.cv-print-page:last-child {
		break-after: auto;
		page-break-after: auto;
	}

	.cv-print-page .cv-item,
	.cv-print-page .cv-section,
	.cv-print-page .cv-exec-main,
	.cv-print-page .cv-print-main {
		break-inside: auto !important;
		page-break-inside: auto !important;
	}

	.cv-print-page .cv-exec-side,
	.cv-print-page .cv-exec-main,
	.cv-print-page .cv-print-main {
		height: 100% !important;
		max-height: 100% !important;
		min-height: 100% !important;
		overflow: hidden !important;
	}

	.cv-print-page .cv-exec-side {
		background: #122033 !important;
		padding: 10mm 7mm 16mm !important;
		font-size: 11px !important;
	}

	.cv-print-page .cv-classic-photo,
	.cv-print-page .cv-modern-photo {
		width: 56px !important;
		height: 56px !important;
		max-width: 56px !important;
		max-height: 56px !important;
		object-fit: cover !important;
	}

	.cv-print-page .cv-exec-photo {
		width: 64px !important;
		height: 64px !important;
		max-width: 64px !important;
		max-height: 64px !important;
		object-fit: cover !important;
	}

	.cv-print-page .cv-exec-side .cv-section {
		margin-top: 0.7rem !important;
	}

	.cv-print-page .cv-exec-side a,
	.cv-sheet.theme-executive .cv-exec-side a {
		color: #f4f8fc !important;
		text-decoration: underline !important;
		text-decoration-color: rgba(255, 255, 255, 0.35) !important;
	}

	.cv-print-page .cv-exec-side .cv-side-link-url,
	.cv-sheet.theme-executive .cv-exec-side .cv-side-link-url {
		color: #c5d0dc !important;
		display: block !important;
	}

	.cv-print-page .cv-exec-main,
	.cv-print-page .cv-print-main {
		padding-bottom: 14mm !important;
	}

	.cv-print-footer {
		left: 8mm !important;
		right: 8mm !important;
		bottom: 4mm !important;
	}

	.cv-print-footer,
	.cv-print-footer * {
		color: #5b6776 !important;
		background: transparent !important;
		border-top-color: #d7dee8 !important;
	}

	.cv-print-page table .cv-print-footer {
		position: static;
		left: auto;
		right: auto;
		bottom: auto;
	}
}
