/*=========================================================
	ORDER TRACKING
===========================================================*/

.order-tracking-page {
	overflow: hidden;
	background: var(--color-background-soft);
}

.order-tracking-hero {
	position: relative;
	overflow: hidden;
	padding: 75px 0;
	background:
		radial-gradient(
			circle at 85% 25%,
			rgba(22, 139, 255, 0.28),
			transparent 32%
		),
		linear-gradient(
			135deg,
			var(--color-dark),
			var(--color-dark-secondary) 65%,
			#0a365e
		);
}

.order-tracking-hero::after {
	position: absolute;
	right: -170px;
	bottom: -260px;
	width: 500px;
	height: 500px;
	border: 75px solid rgba(255, 255, 255, 0.025);
	border-radius: 50%;
	content: "";
}

.order-tracking-hero-content {
	position: relative;
	z-index: 1;
	max-width: 750px;
}

.order-tracking-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 17px;
	color: var(--color-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1.4px;
	text-transform: uppercase;
}

.order-tracking-hero h1 {
	margin-bottom: 18px;
	color: #fff;
	font-size: 44px;
	line-height: 1.15;
}

.order-tracking-hero p {
	max-width: 670px;
	margin: 0;
	color: var(--color-muted-light);
	font-size: 16px;
	line-height: 1.8;
}

.order-tracking-content {
	padding-top: 60px;
	padding-bottom: 80px;
}

.order-tracking-search-card,
.order-tracking-summary,
.order-progress-section,
.order-history-section {
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding: 32px;
	border: 1px solid var(--color-border);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 16px 42px rgba(11, 31, 51, 0.08);
}

.order-tracking-search-heading {
	display: flex;
	align-items: center;
	gap: 17px;
	margin-bottom: 25px;
}

.order-tracking-search-icon {
	display: flex;
	flex: 0 0 58px;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border-radius: 14px;
	background: var(--color-dark-secondary);
	color: var(--color-accent);
	font-size: 23px;
}

.order-tracking-search-heading span,
.order-tracking-section-heading span {
	display: block;
	margin-bottom: 4px;
	color: var(--color-primary);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1.3px;
	text-transform: uppercase;
}

.order-tracking-search-heading h2,
.order-tracking-section-heading h2 {
	margin: 0;
	font-size: 24px;
}

.order-tracking-search-heading p {
	margin: 5px 0 0;
	color: var(--color-muted);
	font-size: 11px;
}

.order-tracking-field label {
	display: block;
	margin-bottom: 7px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.order-tracking-submit {
	width: 100%;
	margin-top: 25px;
	padding-right: 12px;
	padding-left: 12px;
}

.order-tracking-message {
	max-width: 1000px;
	margin: 20px auto 0;
	padding: 15px 18px;
	border-left: 4px solid;
	line-height: 1.6;
}

.order-tracking-message.error {
	border-color: #d10024;
	background: #fff1f3;
	color: #93001a;
}

.order-tracking-message.success {
	border-color: #218838;
	background: #effaf2;
	color: #176327;
}

.order-tracking-loading {
	padding: 70px 20px;
	text-align: center;
}

.order-tracking-loading i {
	color: var(--color-primary);
	font-size: 35px;
}

.order-tracking-loading p {
	margin-top: 14px;
	color: var(--color-muted);
}

.order-tracking-result {
	max-width: 1000px;
	margin: 35px auto 0;
}

.order-tracking-summary {
	margin-bottom: 25px;
}

.order-tracking-summary-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid var(--color-border);
}

.order-tracking-order-number {
	display: block;
	margin-bottom: 6px;
	color: var(--color-primary);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.order-tracking-title-group h2 {
	margin-bottom: 8px;
	font-size: 26px;
}

.order-tracking-title-group p {
	margin: 0;
	color: var(--color-muted);
	font-size: 11px;
}

.order-current-status {
	display: flex;
	flex: 0 0 250px;
	align-items: center;
	gap: 13px;
	padding: 16px 18px;
	border-radius: 9px;
	background: var(--color-dark-secondary);
}

.order-current-status > i {
	display: flex;
	flex: 0 0 42px;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--color-accent);
	color: var(--color-dark);
	font-size: 18px;
}

.order-current-status span,
.order-current-status strong {
	display: block;
}

.order-current-status span {
	color: var(--color-muted-light);
	font-size: 8px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.order-current-status strong {
	margin-top: 3px;
	color: #fff;
	font-size: 12px;
}

.order-tracking-detail-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 15px;
	margin-top: 25px;
}

.order-tracking-detail {
	padding: 17px;
	border-radius: 7px;
	background: var(--color-background-soft);
}

.order-tracking-detail span,
.order-tracking-detail strong {
	display: block;
}

.order-tracking-detail span {
	margin-bottom: 5px;
	color: var(--color-muted);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
}

.order-tracking-detail strong {
	color: var(--color-heading);
	font-size: 11px;
}

.order-tracking-current-note,
.order-shipping-panel {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	margin-top: 20px;
	padding: 18px;
	border-left: 4px solid var(--color-accent);
	background: var(--color-background-soft);
}

.order-tracking-current-note > i,
.order-shipping-panel > i {
	margin-top: 2px;
	color: var(--color-primary);
	font-size: 21px;
}

.order-tracking-current-note span,
.order-shipping-panel span {
	display: block;
	margin-bottom: 4px;
	color: var(--color-primary);
	font-size: 8px;
	font-weight: 700;
	text-transform: uppercase;
}

.order-tracking-current-note p {
	margin: 0;
	color: var(--color-muted);
	font-size: 11px;
	line-height: 1.7;
}

.order-shipping-panel {
	align-items: center;
}

.order-shipping-panel div {
	flex: 1;
}

.order-shipping-panel strong {
	font-size: 12px;
}

.order-shipping-panel .primary-btn {
	padding: 10px 20px;
	font-size: 10px;
}

.order-tracking-special-status {
	margin-top: 20px;
	padding: 14px 17px;
	border-left: 4px solid;
	font-size: 11px;
	line-height: 1.6;
}

.order-tracking-special-status.on_hold {
	border-color: #d89a00;
	background: #fff8e5;
	color: #795700;
}

.order-tracking-special-status.canceled {
	border-color: #d10024;
	background: #fff1f3;
	color: #93001a;
}

.order-progress-section,
.order-history-section {
	margin-top: 25px;
}

.order-tracking-section-heading {
	margin-bottom: 30px;
}

.order-progress-track {
	position: relative;
}

.order-progress-item {
	position: relative;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 17px;
	padding-bottom: 23px;
	opacity: 0.42;
}

.order-progress-item:last-child {
	padding-bottom: 0;
}

.order-progress-item::before {
	position: absolute;
	top: 39px;
	bottom: 0;
	left: 20px;
	width: 2px;
	background: var(--color-border);
	content: "";
}

.order-progress-item:last-child::before {
	display: none;
}

.order-progress-marker {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 2px solid var(--color-border);
	border-radius: 50%;
	background: #fff;
	color: var(--color-muted);
}

.order-progress-content strong {
	display: block;
	margin: 3px 0 5px;
	font-size: 12px;
}

.order-progress-content p {
	margin: 0;
	color: var(--color-muted);
	font-size: 10px;
	line-height: 1.6;
}

.order-progress-item.complete,
.order-progress-item.current {
	opacity: 1;
}

.order-progress-item.complete .order-progress-marker {
	border-color: var(--color-accent);
	background: var(--color-accent);
	color: var(--color-dark);
}

.order-progress-item.complete::before {
	background: var(--color-accent);
}

.order-progress-item.current .order-progress-marker {
	border-color: var(--color-primary);
	background: var(--color-primary);
	color: #fff;
	box-shadow: 0 0 0 6px rgba(22, 139, 255, 0.1);
}

.order-history-item {
	position: relative;
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 18px;
	padding-bottom: 24px;
}

.order-history-item::before {
	position: absolute;
	top: 42px;
	bottom: 0;
	left: 21px;
	width: 2px;
	background: var(--color-border);
	content: "";
}

.order-history-item:last-child::before {
	display: none;
}

.order-history-marker {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--color-dark-secondary);
	color: var(--color-accent);
}

.order-history-item.latest .order-history-marker {
	background: var(--color-accent);
	color: var(--color-dark);
}

.order-history-content {
	padding: 14px 17px;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	background: var(--color-background-soft);
}

.order-history-header {
	display: flex;
	justify-content: space-between;
	gap: 15px;
}

.order-history-header h3 {
	margin: 0;
	font-size: 13px;
}

.order-history-header time {
	color: var(--color-muted);
	font-size: 9px;
}

.order-history-content p {
	margin: 10px 0 0;
	color: var(--color-muted);
	font-size: 10px;
	line-height: 1.7;
}

.order-tracking-help {
	padding-top: 20px;
	padding-bottom: 80px;
}

.order-tracking-help-panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 35px;
	padding: 38px 42px;
	border-radius: 13px;
	background: var(--color-dark-secondary);
}

.order-tracking-help-panel span {
	color: var(--color-accent);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.order-tracking-help-panel h2 {
	margin: 7px 0;
	color: #fff;
	font-size: 25px;
}

.order-tracking-help-panel p {
	margin: 0;
	color: var(--color-muted-light);
	font-size: 11px;
}

/*=========================================================
	TRACKING ADMIN
===========================================================*/

.tracking-admin-body {
	min-height: 100vh;
	background: var(--color-background-soft);
}

.tracking-admin-login {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	padding: 25px;
	background:
		radial-gradient(
			circle at 80% 20%,
			rgba(22, 139, 255, 0.25),
			transparent 30%
		),
		var(--color-dark);
}

.tracking-admin-login-card {
	width: 100%;
	max-width: 460px;
	padding: 42px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 28px 70px rgba(0, 0, 0, 0.35);
}

.tracking-admin-login-logo img {
	display: block;
	max-width: 190px;
	max-height: 80px;
	margin-bottom: 25px;
}

.tracking-admin-kicker {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 9px;
	color: var(--color-primary);
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
}

.tracking-admin-login-card h1 {
	font-size: 28px;
}

.tracking-admin-login-card > p {
	margin-bottom: 25px;
	color: var(--color-muted);
	font-size: 11px;
	line-height: 1.7;
}

.tracking-admin-field {
	margin-bottom: 18px;
}

.tracking-admin-field label {
	display: block;
	margin-bottom: 7px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

.tracking-admin-field textarea.input {
	height: auto;
	resize: vertical;
}

.tracking-admin-select {
	width: 100%;
}

.tracking-admin-login-button,
.tracking-admin-primary {
	width: 100%;
	border: 0;
}

.tracking-admin-message {
	margin-bottom: 20px;
	padding: 14px 17px;
	border-left: 4px solid;
}

.tracking-admin-message.success {
	border-color: #218838;
	background: #effaf2;
	color: #176327;
}

.tracking-admin-message.error {
	border-color: #d10024;
	background: #fff1f3;
	color: #93001a;
}

.tracking-admin-header {
	padding: 18px 0;
	background: var(--color-dark-secondary);
}

.tracking-admin-header-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

.tracking-admin-header span {
	color: var(--color-accent);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.tracking-admin-header h1 {
	margin: 4px 0 0;
	color: #fff;
	font-size: 22px;
}

.tracking-admin-logout {
	padding: 9px 15px;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 30px;
	background: transparent;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
}

.tracking-admin-dashboard {
	padding: 35px 0 70px;
}

.tracking-admin-panel {
	margin-bottom: 25px;
	padding: 25px;
	border: 1px solid var(--color-border);
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(11, 31, 51, 0.06);
}

.tracking-admin-panel-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--color-border);
}

.tracking-admin-panel-heading span {
	display: block;
	color: var(--color-primary);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.tracking-admin-panel-heading h2 {
	margin: 4px 0 0;
	font-size: 20px;
}

.tracking-admin-panel-heading > i {
	color: var(--color-primary);
	font-size: 25px;
}

.tracking-admin-icon-button {
	width: 38px;
	height: 38px;
	border: 1px solid var(--color-border);
	border-radius: 50%;
	background: #fff;
	color: var(--color-primary);
}

.tracking-admin-search {
	position: relative;
	margin-bottom: 20px;
}

.tracking-admin-search i {
	position: absolute;
	top: 50%;
	left: 14px;
	color: var(--color-muted);
	transform: translateY(-50%);
}

.tracking-admin-search .input {
	padding-left: 40px;
}

.tracking-admin-table-wrapper {
	overflow-x: auto;
}

.tracking-admin-table {
	width: 100%;
	border-collapse: collapse;
}

.tracking-admin-table th,
.tracking-admin-table td {
	padding: 14px 12px;
	border-bottom: 1px solid var(--color-border);
	text-align: left;
	vertical-align: middle;
}

.tracking-admin-table th {
	color: var(--color-muted);
	font-size: 8px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.tracking-admin-table td {
	font-size: 10px;
}

.tracking-admin-table td strong,
.tracking-admin-table td small {
	display: block;
}

.tracking-admin-table td small {
	max-width: 260px;
	margin-top: 4px;
	overflow: hidden;
	color: var(--color-muted);
	font-size: 8px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tracking-admin-status {
	display: inline-block;
	padding: 6px 9px;
	border-radius: 20px;
	background: var(--color-background-soft);
	color: var(--color-heading);
	font-size: 8px;
	font-weight: 700;
	white-space: nowrap;
}

.tracking-admin-status.status-shipped,
.tracking-admin-status.status-delivered {
	background: #eaf8ee;
	color: #176327;
}

.tracking-admin-status.status-on_hold {
	background: #fff8e5;
	color: #795700;
}

.tracking-admin-status.status-canceled {
	background: #fff1f3;
	color: #93001a;
}

.tracking-admin-edit-button,
.tracking-admin-text-button {
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--color-primary);
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
}

.tracking-admin-empty {
	padding: 40px !important;
	color: var(--color-muted);
	text-align: center !important;
}

.tracking-admin-edit-panel {
	margin-top: 10px;
}

.tracking-admin-link-panel {
	margin-top: 8px;
	padding: 20px;
	border-radius: 8px;
	background: var(--color-background-soft);
}

.tracking-admin-link-panel label {
	display: block;
	margin-bottom: 8px;
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
}

.tracking-admin-link-panel > div {
	display: flex;
	gap: 10px;
}

.tracking-admin-link-panel .primary-btn {
	flex: 0 0 130px;
	padding: 0 15px;
}

.tracking-admin-link-panel .tracking-admin-text-button {
	margin-top: 12px;
}

.tracking-admin-form-actions {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-top: 22px;
}

.tracking-admin-form-actions .tracking-admin-primary {
	width: auto;
}

.tracking-admin-danger-button {
	padding: 11px 20px;
	border: 1px solid #d10024;
	border-radius: 30px;
	background: #fff;
	color: #d10024;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

@media only screen and (max-width: 767px) {
	.order-tracking-hero {
		padding: 55px 0;
	}

	.order-tracking-hero h1 {
		font-size: 34px;
	}

	.order-tracking-search-card,
	.order-tracking-summary,
	.order-progress-section,
	.order-history-section {
		padding: 23px;
	}

	.order-tracking-submit {
		margin-top: 10px;
	}

	.order-tracking-summary-top,
	.order-tracking-help-panel {
		align-items: stretch;
		flex-direction: column;
	}

	.order-current-status {
		flex-basis: auto;
	}

	.order-tracking-detail-grid {
		grid-template-columns: 1fr;
	}

	.order-shipping-panel {
		align-items: flex-start;
		flex-direction: column;
	}

	.order-history-header {
		flex-direction: column;
		gap: 5px;
	}

	.tracking-admin-login-card {
		padding: 30px 23px;
	}

	.tracking-admin-header-content {
		align-items: flex-start;
		flex-direction: column;
	}

	.tracking-admin-link-panel > div,
	.tracking-admin-form-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.tracking-admin-link-panel .primary-btn {
		flex-basis: auto;
		min-height: 40px;
	}

	.tracking-admin-form-actions .tracking-admin-primary {
		width: 100%;
	}
}