﻿
.admin-dashboard-page {
	min-height: 78vh;
	padding: 42px 20px 70px;
	color: #142e59;
	background: radial-gradient(circle at 90% 8%, rgba(255, 120, 23, .09), transparent 24%), #f3f6fb;
	box-sizing: border-box;
}

.admin-dashboard-container {
	width: min(1200px, 100%);
	margin: 0 auto;
}

.admin-dashboard-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	margin-bottom: 27px;
	padding: 27px 30px;
	color: #fff;
	background: radial-gradient(circle at top right, rgba(255, 130, 34, .36), transparent 33%), linear-gradient(135deg, #102950, #193f73);
	border-radius: 22px;
	box-shadow: 0 16px 40px rgba(17, 42, 84, .18);
}

.dashboard-eyebrow {
	display: block;
	margin-bottom: 6px;
	color: #ffae70;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.admin-dashboard-header h1 {
	margin: 0;
	color: #fff;
	font-size: clamp(26px, 4vw, 38px);
	line-height: 1.2;
}

	.admin-dashboard-header h1 span {
		color: #ff9b52;
	}

.admin-dashboard-header p {
	margin: 8px 0 0;
	color: #d5e2f3;
	font-size: 14px;
}

.dashboard-header-actions {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 12px;
	flex: 0 0 auto;
}

.dashboard-date {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #dbe7f5;
	font-size: 12px;
}

	.dashboard-date i {
		color: #ff9b52;
	}

.dashboard-logout {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 15px;
	color: #fff !important;
	background: rgba(255,255,255,.12);
	border: 1px solid rgba(255,255,255,.22);
	border-radius: 10px;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none !important;
}

	.dashboard-logout:hover {
		background: rgba(255,255,255,.20);
	}

.dashboard-stat-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 35px;
}

.dashboard-stat-card {
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 21px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #e0e7f0;
	border-radius: 17px;
	box-shadow: 0 9px 26px rgba(20, 45, 84, .07);
}

	.dashboard-stat-card::before {
		position: absolute;
		inset: 0 auto 0 0;
		width: 4px;
		content: "";
	}

.packages-stat::before {
	background: #ff7817;
}

.categories-stat::before {
	background: #336dcc;
}

.system-stat::before {
	background: #22a65a;
}

.stat-card-icon {
	display: grid;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	place-items: center;
	border-radius: 13px;
	font-size: 18px;
}

.packages-stat .stat-card-icon {
	color: #e86609;
	background: #fff0e4;
}

.categories-stat .stat-card-icon {
	color: #285daf;
	background: #e9f1ff;
}

.system-stat .stat-card-icon {
	color: #168349;
	background: #e6faef;
}

.stat-card-content {
	min-width: 0;
	flex: 1;
}

	.stat-card-content span {
		display: block;
		margin-bottom: 4px;
		color: #718096;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .04em;
		text-transform: uppercase;
	}

	.stat-card-content strong {
		display: block;
		color: #142e59;
		font-size: 27px;
		line-height: 1.1;
	}

	.stat-card-content small {
		color: #8794a5;
		font-size: 11px;
	}

	.stat-card-content .system-online {
		color: #168349;
		font-size: 20px;
	}

.dashboard-stat-card > a {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	color: #ff7817;
	background: #fff2e8;
	border-radius: 9px;
	text-decoration: none;
}

.dashboard-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 17px;
}

	.dashboard-section-heading span {
		display: block;
		margin-bottom: 4px;
		color: #ff7817;
		font-size: 10px;
		font-weight: 900;
		letter-spacing: .09em;
		text-transform: uppercase;
	}

	.dashboard-section-heading h2 {
		margin: 0;
		color: #142e59;
		font-size: 27px;
	}

	.dashboard-section-heading p {
		margin: 0;
		color: #718096;
		font-size: 13px;
	}

.dashboard-management-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 19px;
}

.management-card {
	position: relative;
	display: block;
	min-height: 245px;
	padding: 24px;
	overflow: hidden;
	color: inherit !important;
	background: #fff;
	border: 1px solid #dfe6ef;
	border-radius: 19px;
	text-decoration: none !important;
	box-shadow: 0 10px 30px rgba(20, 45, 84, .07);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	box-sizing: border-box;
}

	.management-card::after {
		position: absolute;
		right: -60px;
		bottom: -70px;
		width: 160px;
		height: 160px;
		content: "";
		border-radius: 50%;
		opacity: .12;
	}

.package-management::after {
	background: #ff7817;
}

.review-management::after {
	background: #e5ad00;
}

.booking-management::after {
	background: #2867bd;
}

.management-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 18px 42px rgba(20, 45, 84, .13);
}

.package-management:hover {
	border-color: #ffc99f;
}

.review-management:hover {
	border-color: #ecd37d;
}

.booking-management:hover {
	border-color: #a9c8ef;
}

.management-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 22px;
}

.management-icon {
	display: grid;
	width: 51px;
	height: 51px;
	place-items: center;
	border-radius: 14px;
	font-size: 19px;
}

.package-management .management-icon {
	color: #df620a;
	background: #fff0e4;
}

.review-management .management-icon {
	color: #9a7000;
	background: #fff6d3;
}

.booking-management .management-icon {
	color: #215ba9;
	background: #e8f2ff;
}

.management-arrow {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	color: #66758a;
	background: #f2f5f9;
	border-radius: 10px;
	transition: transform .2s ease;
}

.management-card:hover .management-arrow {
	color: #fff;
	background: #173565;
	transform: translateX(3px);
}

.management-card h3 {
	margin: 0 0 10px;
	color: #142e59;
	font-size: 19px;
}

.management-card p {
	min-height: 63px;
	margin: 0;
	color: #718096;
	font-size: 13px;
	line-height: 1.6;
}

.management-link {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin-top: 18px;
	color: #173565;
	font-size: 12px;
	font-weight: 800;
}

.dashboard-info-strip {
	display: flex;
	align-items: center;
	gap: 13px;
	margin-top: 25px;
	padding: 17px 20px;
	color: #614a0a;
	background: #fff9df;
	border: 1px solid #efdd91;
	border-radius: 14px;
}

.dashboard-info-icon {
	display: grid;
	width: 39px;
	height: 39px;
	flex: 0 0 39px;
	place-items: center;
	color: #896400;
	background: #ffeaa2;
	border-radius: 11px;
}

.dashboard-info-strip strong {
	display: block;
	margin-bottom: 3px;
}

.dashboard-info-strip p {
	margin: 0;
	color: #7a651f;
	font-size: 12px;
}

@@media (max-width: 900px) {
	.dashboard-stat-grid,
	.dashboard-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

		.dashboard-management-grid .management-card:last-child {
			grid-column: 1 / -1;
		}
}

@@media (max-width: 650px) {
	.admin-dashboard-page {
		padding: 25px 12px 50px;
	}

	.admin-dashboard-header {
		align-items: flex-start;
		flex-direction: column;
		padding: 22px;
	}

	.dashboard-header-actions {
		align-items: flex-start;
	}

	.dashboard-stat-grid,
	.dashboard-management-grid {
		grid-template-columns: 1fr;
	}

		.dashboard-management-grid .management-card:last-child {
			grid-column: auto;
		}

	.dashboard-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.management-card {
		min-height: auto;
	}

		.management-card p {
			min-height: auto;
		}
}

.booking-stat-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dashboard-stat-card {
	color: inherit !important;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

	.dashboard-stat-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 15px 34px rgba(20, 45, 84, .13);
	}

.stat-arrow {
	margin-left: auto;
	color: #91a0b3;
	font-size: 12px;
	transition: transform .18s ease;
}

.dashboard-stat-card:hover .stat-arrow {
	transform: translateX(3px);
}

/* Total orders */

.orders-stat::before {
	background: #3469b4;
}

.orders-stat .stat-card-icon {
	color: #275a9f;
	background: #e8f1ff;
}

/* Pending */

.pending-stat::before {
	background: #e9a400;
}

.pending-stat .stat-card-icon {
	color: #956900;
	background: #fff4c8;
}

.pending-stat .stat-card-content strong {
	color: #9a6a00;
}

/* Contacted */

.contacted-stat::before {
	background: #7c55c7;
}

.contacted-stat .stat-card-icon {
	color: #6741ad;
	background: #f0eaff;
}

.contacted-stat .stat-card-content strong {
	color: #6741ad;
}

/* Confirmed */

.confirmed-stat::before {
	background: #238951;
}

.confirmed-stat .stat-card-icon {
	color: #197442;
	background: #e4f8ec;
}

.confirmed-stat .stat-card-content strong {
	color: #197442;
}

/* Completed */

.completed-stat::before {
	background: #16829b;
}

.completed-stat .stat-card-icon {
	color: #126f85;
	background: #e1f7fb;
}

.completed-stat .stat-card-content strong {
	color: #126f85;
}

@@media (max-width: 900px) {
	.booking-stat-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@@media (max-width: 550px) {
	.booking-stat-grid {
		grid-template-columns: 1fr;
	}
}
.admin-invoice-management-card {
	display: flex;
	min-width: 0;
	padding: 20px;
	overflow: hidden;
	flex-direction: column;
	border: 1px solid #dce4ee;
	border-radius: 17px;
	background: linear-gradient( 145deg, #fff 0%, #f8fbff 100% );
	color: #263c61;
	box-shadow: 0 8px 25px rgba(21, 43, 84, 0.07);
	text-decoration: none;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

	.admin-invoice-management-card:hover {
		border-color: #f3b782;
		color: #263c61;
		box-shadow: 0 14px 34px rgba(21, 43, 84, 0.11);
		transform: translateY(-3px);
	}

.invoice-management-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 17px;
}

.invoice-management-icon,
.invoice-management-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.invoice-management-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	background: linear-gradient( 145deg, #173867, #28568f );
	color: #fff;
	font-size: 18px;
	box-shadow: 0 8px 18px rgba(21, 43, 84, 0.2);
}

.invoice-management-arrow {
	width: 34px;
	height: 34px;
	border: 1px solid #dce4ee;
	border-radius: 10px;
	background: #fff;
	color: #526781;
	font-size: 11px;
	transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.admin-invoice-management-card:hover
.invoice-management-arrow {
	border-color: #f47a18;
	background: #f47a18;
	color: #fff;
	transform: translateX(3px);
}

.invoice-management-title > span {
	color: #e5670b;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.invoice-management-title h2 {
	margin: 5px 0 0;
	color: #152b54;
	font-size: 18px;
	font-weight: 700;
}

.invoice-management-title p {
	margin: 7px 0 0;
	color: #6b7b91;
	font-size: 10px;
	line-height: 1.55;
}

.invoice-management-counts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin-top: 17px;
}

.invoice-count-item {
	padding: 10px;
	border: 1px solid;
	border-radius: 11px;
}

	.invoice-count-item span {
		display: flex;
		align-items: center;
		gap: 5px;
		font-size: 8px;
		font-weight: 700;
		text-transform: uppercase;
	}

	.invoice-count-item strong {
		display: block;
		margin-top: 5px;
		font-size: 17px;
		font-weight: 700;
	}

	.invoice-count-item.paid {
		border-color: #bbf7d0;
		background: #f0fdf4;
		color: #15803d;
	}

	.invoice-count-item.unpaid {
		border-color: #fde68a;
		background: #fffbeb;
		color: #a16207;
	}

	.invoice-count-item.draft {
		border-color: #fed7aa;
		background: #fff7ed;
		color: #c2410c;
	}

.invoice-management-values {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin-top: 9px;
}

	.invoice-management-values > div {
		padding: 10px;
		border: 1px solid #e2e8f0;
		border-radius: 10px;
		background: #fff;
	}

	.invoice-management-values small {
		display: block;
		color: #8491a3;
		font-size: 8px;
	}

	.invoice-management-values strong {
		display: block;
		margin-top: 4px;
		color: #152b54;
		font-size: 11px;
	}

.invoice-management-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 13px;
	margin-top: 16px;
	padding-top: 13px;
	border-top: 1px solid #e5eaf1;
}

	.invoice-management-footer span {
		color: #7a8799;
		font-size: 8px;
	}

	.invoice-management-footer strong {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		color: #e5670b;
		font-size: 9px;
	}

@media (max-width: 480px) {
	.invoice-management-counts {
		grid-template-columns: 1fr;
	}

	.invoice-management-values {
		grid-template-columns: 1fr;
	}
}
/* =========================================================
   Booking dashboard statistics – responsive correction
   ========================================================= */

.dashboard-stat-grid.booking-stat-grid {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.booking-stat-grid .dashboard-stat-card {
	position: relative;
	display: grid;
	grid-template-columns: 50px minmax(0, 1fr) 18px;
	align-items: center;
	gap: 13px;
	width: 100%;
	min-width: 0;
	min-height: 125px;
	padding: 18px;
	overflow: hidden;
	border: 1px solid #e1e7ef;
	border-radius: 16px;
	background: #fff;
	color: #344054;
	text-decoration: none;
	box-shadow: 0 8px 22px rgba(19, 46, 91, 0.07);
}

.booking-stat-grid .stat-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 13px;
	font-size: 17px;
}

.booking-stat-grid .stat-card-content {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 5px;
}

	.booking-stat-grid .stat-card-content > span {
		display: block;
		overflow: hidden;
		color: #718096;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 0.045em;
		line-height: 1.3;
		text-overflow: ellipsis;
		text-transform: uppercase;
		white-space: nowrap;
	}

	.booking-stat-grid .stat-card-content > strong {
		color: #102d59;
		font-size: 27px;
		font-weight: 800;
		letter-spacing: -0.025em;
		line-height: 1;
	}

	.booking-stat-grid .stat-card-content > small {
		overflow: hidden;
		color: #8a98ab;
		font-size: 10px;
		line-height: 1.35;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

.booking-stat-grid .stat-arrow {
	justify-self: end;
	color: #94a3b8;
	font-size: 10px;
}

/* Individual card colors */

.booking-stat-grid .packages-stat {
	border-left: 4px solid #ff7b17;
}

	.booking-stat-grid .packages-stat .stat-card-icon {
		background: #fff0e4;
		color: #f06408;
	}

.booking-stat-grid .orders-stat {
	border-left: 4px solid #3478d4;
}

	.booking-stat-grid .orders-stat .stat-card-icon {
		background: #e9f2ff;
		color: #2863ae;
	}

.booking-stat-grid .pending-stat {
	border-left: 4px solid #eab308;
}

	.booking-stat-grid .pending-stat .stat-card-icon {
		background: #fff7d6;
		color: #a97500;
	}

.booking-stat-grid .contacted-stat {
	border-left: 4px solid #805ad5;
}

	.booking-stat-grid .contacted-stat .stat-card-icon {
		background: #f0eaff;
		color: #6b46c1;
	}

.booking-stat-grid .confirmed-stat {
	border-left: 4px solid #25a866;
}

	.booking-stat-grid .confirmed-stat .stat-card-icon {
		background: #e4f8ed;
		color: #14884e;
	}

.booking-stat-grid .completed-stat {
	border-left: 4px solid #1594a6;
}

	.booking-stat-grid .completed-stat .stat-card-icon {
		background: #e4f8fb;
		color: #087b8c;
	}

/* Tablet */

@media (max-width: 1050px) {
	.dashboard-stat-grid.booking-stat-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* Phone */

@media (max-width: 700px) {
	.dashboard-stat-grid.booking-stat-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 11px;
	}

	.booking-stat-grid .dashboard-stat-card {
		grid-template-columns: 42px minmax(0, 1fr);
		gap: 10px;
		min-height: 112px;
		padding: 14px 12px;
	}

	.booking-stat-grid .stat-card-icon {
		width: 42px;
		height: 42px;
		font-size: 14px;
	}

	.booking-stat-grid .stat-card-content > span {
		overflow: visible;
		font-size: 9px;
		line-height: 1.25;
		text-overflow: initial;
		white-space: normal;
	}

	.booking-stat-grid .stat-card-content > strong {
		font-size: 24px;
	}

	.booking-stat-grid .stat-card-content > small {
		overflow: visible;
		font-size: 9px;
		line-height: 1.35;
		text-overflow: initial;
		white-space: normal;
	}

	.booking-stat-grid .stat-arrow {
		position: absolute;
		top: 50%;
		right: 10px;
		font-size: 9px;
		transform: translateY(-50%);
	}

	.booking-stat-grid .stat-card-content {
		padding-right: 10px;
	}
}

/* Very narrow phones */

@media (max-width: 370px) {
	.dashboard-stat-grid.booking-stat-grid {
		grid-template-columns: 1fr !important;
	}

	.booking-stat-grid .dashboard-stat-card {
		min-height: 95px;
		padding: 14px 16px;
	}

	.booking-stat-grid .stat-card-content > span,
	.booking-stat-grid .stat-card-content > small {
		white-space: nowrap;
	}
}
/* =========================================================
   Management grid
   ========================================================= */

.dashboard-management-grid,
.dashboard-management-grid * {
	box-sizing: border-box;
}

.dashboard-management-grid {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 18px;
}

.management-card {
	--management-accent: #ff7b17;
	--management-icon-bg: #fff0e4;
	--management-icon-color: #e96105;
	--management-decoration: #fff0e4;
	position: relative;
	display: flex;
	width: 100%;
	min-width: 0;
	min-height: 330px;
	padding: 24px;
	overflow: hidden;
	border: 1px solid #dce5f0;
	border-radius: 18px;
	background: #fff;
	color: #173665;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(19, 46, 91, 0.06);
	flex-direction: column;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

	.management-card::after {
		position: absolute;
		right: -55px;
		bottom: -75px;
		width: 160px;
		height: 160px;
		border-radius: 50%;
		background: var(--management-decoration);
		content: "";
		opacity: 0.9;
	}

	.management-card:hover {
		border-color: var(--management-accent);
		color: #173665;
		box-shadow: 0 14px 30px rgba(19, 46, 91, 0.12);
		transform: translateY(-3px);
	}

	.management-card-top,
	.management-card h3,
	.management-card p,
	.management-link {
		position: relative;
		z-index: 1;
	}

.management-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 24px;
}

.management-icon,
.management-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 13px;
}

.management-icon {
	width: 50px;
	height: 50px;
	background: var(--management-icon-bg);
	color: var(--management-icon-color);
	font-size: 17px;
}

.management-arrow {
	width: 36px;
	height: 36px;
	background: #f3f6fa;
	color: #58708f;
	font-size: 13px;
	transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.management-card:hover .management-arrow {
	background: var(--management-accent);
	color: #fff;
	transform: translateX(3px);
}

.management-card h3 {
	margin: 0 0 12px;
	color: #082d64;
	font-size: 21px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.08;
}

.management-card p {
	margin: 0;
	color: #71809a;
	font-size: 13px;
	line-height: 1.65;
}

.management-link {
	display: inline-flex;
	align-items: center;
	margin-top: auto;
	padding-top: 24px;
	color: #082d64;
	font-size: 12px;
	font-weight: 800;
}

/* Card colors */

.package-management {
	--management-accent: #ff7b17;
	--management-icon-bg: #fff0e4;
	--management-icon-color: #e96105;
	--management-decoration: #fff0e4;
}

.review-management {
	--management-accent: #eab308;
	--management-icon-bg: #fff7d6;
	--management-icon-color: #a97500;
	--management-decoration: #fff7d6;
}

.booking-management {
	--management-accent: #3478d4;
	--management-icon-bg: #e9f2ff;
	--management-icon-color: #245fae;
	--management-decoration: #e9f2ff;
}

.report-management {
	--management-accent: #805ad5;
	--management-icon-bg: #f0eaff;
	--management-icon-color: #6b46c1;
	--management-decoration: #f0eaff;
}

.user-management {
	--management-accent: #1594a6;
	--management-icon-bg: #e4f8fb;
	--management-icon-color: #087b8c;
	--management-decoration: #e4f8fb;
}

/* =========================================================
   Invoice card placement
   ========================================================= */

.admin-invoice-management-card {
	grid-column: 1 / -1;
	width: 100%;
	min-width: 0;
}

/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 1050px) {
	.dashboard-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 15px;
	}

	.admin-invoice-management-card {
		grid-column: 1 / -1;
	}
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 700px) {
	.dashboard-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px;
	}

	.management-card {
		min-height: 270px;
		padding: 17px;
		border-radius: 15px;
	}

	.management-card-top {
		margin-bottom: 17px;
	}

	.management-icon {
		width: 44px;
		height: 44px;
		font-size: 15px;
	}

	.management-arrow {
		width: 32px;
		height: 32px;
		font-size: 11px;
	}

	.management-card h3 {
		margin-bottom: 9px;
		font-size: 18px;
		line-height: 1.08;
	}

	.management-card p {
		font-size: 11px;
		line-height: 1.55;
	}

	.management-link {
		padding-top: 18px;
		font-size: 10px;
	}

	.management-card::after {
		right: -55px;
		bottom: -70px;
		width: 135px;
		height: 135px;
	}

	.admin-invoice-management-card {
		grid-column: 1 / -1;
	}
}

/* =========================================================
   Very narrow phones
   ========================================================= */

@media (max-width: 390px) {
	.dashboard-management-grid {
		grid-template-columns: 1fr !important;
	}

	.management-card,
	.admin-invoice-management-card {
		grid-column: auto;
	}

	.management-card {
		min-height: 240px;
		padding: 20px;
	}

		.management-card h3 {
			font-size: 20px;
		}

		.management-card p {
			font-size: 12px;
		}
}
/* =========================================================
   Invoice management card – desktop correction
   ========================================================= */

@media (min-width: 1051px) {
	.admin-invoice-management-card {
		grid-column: span 1 !important;
		min-width: 0;
		min-height: 360px;
		padding: 22px;
	}

	.invoice-management-header {
		margin-bottom: 17px;
	}

	.invoice-management-title {
		margin-bottom: 17px;
	}

		.invoice-management-title h2 {
			margin: 5px 0 6px;
			font-size: 22px;
		}

		.invoice-management-title p {
			max-width: 520px;
			font-size: 11px;
			line-height: 1.5;
		}

	.invoice-management-counts {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
	}

	.invoice-count-item {
		min-width: 0;
		min-height: 70px;
		padding: 11px;
	}

		.invoice-count-item span {
			font-size: 9px;
		}

		.invoice-count-item strong {
			margin-top: 7px;
			font-size: 19px;
		}

	.invoice-management-values {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-top: 9px;
	}

		.invoice-management-values > div {
			min-width: 0;
			padding: 11px;
		}

		.invoice-management-values small {
			font-size: 9px;
		}

		.invoice-management-values strong {
			overflow: hidden;
			font-size: 13px;
			text-overflow: ellipsis;
			white-space: nowrap;
		}

	.invoice-management-footer {
		margin-top: auto;
		padding-top: 15px;
	}
}

/* Tablet and phone: retain full width */
@media (max-width: 1050px) {
	.admin-invoice-management-card {
		grid-column: 1 / -1 !important;
	}
}
/* =========================================================
   Admin dashboard header
   ========================================================= */

.admin-dashboard-header {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 35px;
	width: 100%;
	padding: 30px;
	overflow: hidden;
	box-sizing: border-box;
	border-radius: 24px;
	background: radial-gradient( circle at 100% 0, rgba(255, 116, 23, 0.2), transparent 33% ), linear-gradient( 135deg, #142e5a 0%, #1d477b 100% );
	color: #fff;
}

.dashboard-welcome {
	min-width: 0;
}

.dashboard-eyebrow {
	display: block;
	margin-bottom: 8px;
	color: #ffb13b;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.dashboard-welcome h1 {
	max-width: 500px;
	margin: 0 0 11px;
	color: #fff;
	font-size: clamp(27px, 3vw, 42px);
	font-weight: 800;
	line-height: 1.08;
}

	.dashboard-welcome h1 span {
		color: #ff7417;
	}

.dashboard-welcome p {
	max-width: 440px;
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	line-height: 1.7;
}

.dashboard-header-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 12px;
	min-width: 0;
}

.dashboard-date,
.dashboard-logout-button,
.dashboard-import-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	padding: 9px 14px;
	box-sizing: border-box;
	border-radius: 12px;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 700;
}

.dashboard-date {
	color: #fff;
	background: rgba(255, 255, 255, 0.1);
}

	.dashboard-date i {
		color: #ff8a24;
	}

.dashboard-import-button {
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	text-decoration: none;
}

	.dashboard-import-button[hidden] {
		display: none !important;
	}

.dashboard-logout-form {
	display: block;
	margin: 0;
}

.dashboard-logout-button {
	border: 1px solid rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	font-family: inherit;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

	.dashboard-logout-button:hover {
		border-color: rgba(255, 255, 255, 0.35);
		background: rgba(255, 255, 255, 0.2);
		transform: translateY(-1px);
	}

	.dashboard-logout-button i {
		color: #fff;
	}

/* =========================================================
   Mobile header
   ========================================================= */

@media (max-width: 700px) {
	.admin-dashboard-header {
		align-items: stretch;
		flex-direction: column;
		gap: 22px;
		padding: 25px 22px;
		overflow: hidden;
		border-radius: 22px;
	}

	.dashboard-welcome {
		width: 100%;
	}

		.dashboard-welcome h1 {
			max-width: 270px;
			font-size: 29px;
			line-height: 1.08;
		}

		.dashboard-welcome p {
			max-width: 290px;
			font-size: 13px;
			line-height: 1.7;
		}

	.dashboard-header-actions {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: stretch;
		justify-content: stretch;
		gap: 10px;
		width: 100%;
	}

	.dashboard-date {
		justify-content: flex-start;
		min-width: 0;
		padding: 10px 12px;
		overflow: hidden;
	}

		.dashboard-date span {
			display: block;
			min-width: 0;
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
		}

	.dashboard-logout-form {
		display: flex;
	}

	.dashboard-logout-button {
		min-width: 96px;
		height: 100%;
		padding: 9px 13px;
	}
}

@media (max-width: 420px) {
	.admin-dashboard-header {
		padding: 23px 19px;
	}

	.dashboard-header-actions {
		grid-template-columns: 1fr;
	}

	.dashboard-date,
	.dashboard-logout-button {
		width: 100%;
		justify-content: center;
	}

	.dashboard-logout-form {
		width: 100%;
	}
}
