/* ACCOUNT FOUNDATION: preserved layout rules for all existing endpoint components.
   Scoped + rethemed only; source: supplied customer templates/helper. */

		/* ========================================================
		   ARCHER PRASANTA — CUSTOMER AUTH v1.9
		   MINIMAL PREMIUM
		   ======================================================== */

		html:has(body.ap-account-studio),
		body.ap-account-studio.apaccount-auth-page {
			min-height: 100%;
			margin: 0;
			background: #f9faf4;
		}

		body.ap-account-studio.apaccount-auth-page,
		body.ap-account-studio.apaccount-auth-page input,
		body.ap-account-studio.apaccount-auth-page button {
			font-family:
				"Montserrat",
				Inter,
				system-ui,
				-apple-system,
				BlinkMacSystemFont,
				"Segoe UI",
				Arial,
				sans-serif;
		}

		body.ap-account-studio.apaccount-auth-page * {
			box-sizing: border-box;
		}

		body.ap-account-studio .apauth-shell {
			--apauth-cyan: #6FEFFF;
			--apauth-white: #F5F7FA;
			--apauth-deep: #050A1F;

			position: relative;
			min-height: 100vh;
			display: grid;
			grid-template-columns:
				minmax(0, 1fr)
				minmax(420px, 520px);
			align-items: center;
			gap: 48px;
			padding: 38px 6vw;
			overflow: hidden;
			background:
				linear-gradient(
					90deg,
					rgba(220,227,213,0.2) 0%,
					rgba(220,227,213,0.2) 46%,
					rgba(220,227,213,0.2) 72%,
					rgba(220,227,213,0.324) 100%
				),
				url('../images/account-studio.webp')
				center center / cover no-repeat;
			color: var(--apauth-white);
		}

		body.ap-account-studio .apauth-shell::after {
			content: "";
			position: absolute;
			inset: 0;
			pointer-events: none;
			background:
				linear-gradient(
					180deg,
					rgba(220,227,213,0.2),
					rgba(220,227,213,0.2)
				);
		}

		body.ap-account-studio .apauth-scene,
		body.ap-account-studio .apauth-panel-wrap {
			position: relative;
			z-index: 2;
		}

		body.ap-account-studio .apauth-scene {
			align-self: stretch;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			min-width: 0;
			padding: 6px 0;
		}

		body.ap-account-studio .apauth-back-home {
			width: max-content;
			display: inline-flex;
			align-items: center;
			gap: 9px;
			min-height: 38px;
			padding: 0 13px;
			border: 1px solid #d7ded3;
			border-radius: 8px;
			background: rgba(220,227,213,0.2);
			color: #24392d;
			text-decoration: none;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: .10em;
			transition:
				border-color .2s ease,
				background .2s ease;
		}

		body.ap-account-studio .apauth-back-home:hover {
			border-color: #d7ded3;
			background: rgba(220,227,213,0.2);
		}

		body.ap-account-studio .apauth-scene-note {
			max-width: 420px;
			margin-bottom: 18px;
		}

		body.ap-account-studio .apauth-scene-note span {
			display: block;
			color: #68746b;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: .10em;
		}

		body.ap-account-studio .apauth-scene-note strong {
			display: block;
			margin-top: 8px;
			color: #24392d;
			font-size: 18px;
			line-height: 1.35;
			font-weight: 600;
			letter-spacing: -.015em;
		}

		body.ap-account-studio .apauth-panel-wrap {
			width: 100%;
			display: flex;
			justify-content: flex-end;
		}

		body.ap-account-studio .apauth-card {
			width: 100%;
			overflow: hidden;
			border: 1px solid #d7ded3;
			border-radius: 22px;
			background:
				linear-gradient(
					180deg,
					#f9faf4,
					#f9faf4
				);
			box-shadow:
				0 30px 80px rgba(24,34,29,0.1),
				inset 0 1px 0 rgba(24,34,29,0.025);
			backdrop-filter: blur(8px);
			-webkit-backdrop-filter: blur(8px);
			animation:
				apauth-card-in
				.52s
				cubic-bezier(.16, 1, .3, 1)
				both;
		}

		body.ap-account-studio .apauth-card-head {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 18px;
			padding: 24px 26px 20px;
			border-bottom: 1px solid #d7ded3;
		}

		body.ap-account-studio .apauth-brand-lockup {
			display: grid;
			grid-template-columns: 44px minmax(0, 1fr);
			gap: 13px;
			align-items: center;
		}

		body.ap-account-studio .apauth-brand-mark {
			width: 44px;
			height: 44px;
			display: grid;
			place-items: center;
			border: 1px solid #d7ded3;
			border-radius: 50%;
			background: rgba(78,115,90,0.045);
			color: var(--apauth-cyan);
			font-size: 15px;
			font-weight: 600;
		}

		body.ap-account-studio .apauth-brand-copy span {
			display: block;
			color: #24392d;
			font-size: 12px;
			line-height: 1.2;
			font-weight: 600;
			letter-spacing: .10em;
		}

		body.ap-account-studio .apauth-brand-copy small {
			display: block;
			margin-top: 5px;
			color: #68746b;
			font-size: 11px;
			line-height: 1.3;
			font-weight: 600;
			letter-spacing: .10em;
		}

		body.ap-account-studio .apauth-card-head-meta {
			color: #68746b;
			font-size: 11px;
			line-height: 1.4;
			font-weight: 600;
			letter-spacing: .10em;
			white-space: nowrap;
		}

		body.ap-account-studio .apauth-card-body {
			padding: 28px 26px 26px;
		}

		body.ap-account-studio .apauth-single-login {
			margin: 0;
		}

		body.ap-account-studio .apauth-panel {
			display: none;
			opacity: 0;
			transform: translateY(6px);
		}

		body.ap-account-studio .apauth-panel.is-active {
			display: block;
			animation:
				apauth-panel-in
				.24s
				cubic-bezier(.16, 1, .3, 1)
				forwards;
		}

		body.ap-account-studio .apauth-mode-heading {
			display: block;
			margin: 0 0 20px;
		}

		body.ap-account-studio .apauth-mode-heading > div > span {
			display: none;
		}

		body.ap-account-studio .apauth-mode-heading > div > strong {
			display: block;
			color: #24392d;
			font-size: 28px;
			line-height: 1.1;
			font-weight: 600;
			letter-spacing: -.035em;
		}

		body.ap-account-studio .apauth-mode-heading > p {
			max-width: 360px;
			margin: 8px 0 0;
			color: #68746b;
			font-size: 11px;
			line-height: 1.65;
		}

		body.ap-account-studio .apauth-panel form {
			margin: 0;
		}

		body.ap-account-studio .apauth-panel .form-row {
			width: 100% !important;
			float: none !important;
			margin: 0 0 16px !important;
			padding: 0 !important;
		}

		body.ap-account-studio .apauth-panel label {
			display: block;
			margin: 0 0 8px;
			color: #68746b;
			font-size: 11px;
			line-height: 1.4;
			font-weight: 600;
			letter-spacing: .09em;
			text-transform: uppercase;
		}

		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="text"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="email"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="password"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="tel"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		.woocommerce-Input.input-text {
			display: block !important;
			width: 100% !important;
			height: 54px !important;
			min-height: 54px !important;
			margin: 0 !important;
			padding: 0 15px !important;
			border: 1px solid #d7ded3 !important;
			border-radius: 11px !important;
			outline: 0 !important;
			background: rgba(220,227,213,0.27) !important;
			color: var(--apauth-white) !important;
			box-shadow: none !important;
			font-size: 14px !important;
			line-height: 54px !important;
			font-weight: 600 !important;
			appearance: none !important;
			-webkit-appearance: none !important;
			transition:
				border-color .18s ease,
				box-shadow .18s ease,
				background .18s ease;
		}

		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="text"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="email"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="password"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="tel"]:focus {
			border-color: #d7ded3 !important;
			background: #f9faf4 !important;
			box-shadow:
				0 0 0 3px rgba(24,34,29,0.035) !important;
		}

		body.ap-account-studio .apauth-inline-row {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 14px;
			margin: 2px 0 16px;
		}

		body.ap-account-studio .apauth-inline-row label {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			margin: 0;
			color: #68746b;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: 0;
			text-transform: none;
		}

		body.ap-account-studio .apauth-inline-row input[type="checkbox"] {
			accent-color: var(--apauth-cyan);
		}

		body.ap-account-studio .apauth-panel .button,
		body.ap-account-studio .apauth-panel button[type="submit"] {
			width: 100% !important;
			min-height: 52px !important;
			display: flex !important;
			align-items: center;
			justify-content: space-between;
			margin: 4px 0 0 !important;
			padding: 0 15px !important;
			border: 1px solid var(--apauth-cyan) !important;
			border-radius: 11px !important;
			background: var(--apauth-cyan) !important;
			color: #24392d !important;
			cursor: pointer;
			box-shadow: none !important;
			font-size: 11px !important;
			line-height: 1.2 !important;
			font-weight: 600 !important;
			letter-spacing: .10em !important;
			text-transform: uppercase;
			transition:
				transform .18s ease,
				box-shadow .18s ease,
				filter .18s ease;
		}

		body.ap-account-studio .apauth-panel .button:hover,
		body.ap-account-studio .apauth-panel button[type="submit"]:hover {
			transform: translateY(-1px);
			box-shadow:
				0 12px 24px rgba(24,34,29,0.09) !important;
			filter: brightness(1.02);
		}

		body.ap-account-studio .apauth-panel .button::after,
		body.ap-account-studio .apauth-panel button[type="submit"]::after {
			content: "→";
			font-size: 15px;
			font-weight: 500;
		}

		body.ap-account-studio .apauth-otp-entry {
			width: 100%;
			min-height: 54px;
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 16px;
			margin-top: 10px;
			padding: 0 15px;
			border: 1px solid #d7ded3;
			border-radius: 11px;
			background: rgba(78,115,90,0.025);
			color: var(--apauth-white);
			cursor: pointer;
			text-align: left;
			transition:
				border-color .18s ease,
				background .18s ease;
		}

		body.ap-account-studio .apauth-otp-entry:hover {
			border-color: #d7ded3;
			background: rgba(78,115,90,0.045);
		}

		body.ap-account-studio .apauth-otp-entry small,
		body.ap-account-studio .apauth-otp-entry strong {
			display: block;
		}

		body.ap-account-studio .apauth-otp-entry small {
			color: #68746b;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: .10em;
		}

		body.ap-account-studio .apauth-otp-entry strong {
			margin-top: 4px;
			color: var(--apauth-cyan);
			font-size: 11px;
			font-weight: 600;
			letter-spacing: .09em;
		}

		body.ap-account-studio .apauth-otp-entry b {
			color: var(--apauth-cyan);
			font-size: 17px;
			font-weight: 400;
		}

		body.ap-account-studio .apauth-feedback {
			margin: 0 0 15px;
			padding: 11px 12px;
			border: 1px solid #d7ded3;
			border-radius: 9px;
			background: rgba(220,227,213,0.20700000000000002);
			color: #24392d;
			font-size: 11px;
			line-height: 1.55;
		}

		body.ap-account-studio .apauth-feedback.is-success {
			border-color: #d7ded3;
			color: var(--apauth-cyan);
		}

		body.ap-account-studio .apauth-feedback.is-error {
			border-color: #d7ded3;
			color: #934630;
		}

		body.ap-account-studio .apauth-otp-resend {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			margin-top: 12px;
			color: #68746b;
			font-size: 11px;
			line-height: 1.5;
		}

		body.ap-account-studio .apauth-bottom-links {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			flex-wrap: wrap;
			gap: 10px;
			margin-top: 18px;
			padding-top: 16px;
			border-top: 1px solid #d7ded3;
		}

		body.ap-account-studio .apauth-bottom-links > span:first-child,
		body.ap-account-studio .apauth-bottom-separator {
			display: none;
		}

		body.ap-account-studio .apauth-bottom-link,
		body.ap-account-studio .apauth-back-mode,
		body.ap-account-studio .apauth-link-button {
			padding: 0;
			border: 0;
			background: transparent;
			color: #295b51;
			cursor: pointer;
			font-family: inherit;
			font-size: 11px;
			line-height: 1.4;
			font-weight: 600;
			letter-spacing: .08em;
		}

		body.ap-account-studio .apauth-bottom-link:hover,
		body.ap-account-studio .apauth-back-mode:hover,
		body.ap-account-studio .apauth-link-button:hover {
			color: var(--apauth-cyan);
		}

		body.ap-account-studio .apauth-back-mode {
			margin-top: 17px;
		}

		body.ap-account-studio .apauth-note {
			margin: 0 0 14px;
			color: #68746b;
			font-size: 11px;
			line-height: 1.65;
		}

		body.ap-account-studio .apauth-panel [hidden],
		body.ap-account-studio .apauth-otp-form [hidden],
		body.ap-account-studio .apauth-otp-resend[hidden],
		body.ap-account-studio .apauth-feedback[hidden] {
			display: none !important;
		}

		@keyframes apauth-card-in {
			from {
				opacity: 0;
				transform: translateY(14px);
			}

			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		@keyframes apauth-panel-in {
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		@media (max-width: 980px) {
			body.ap-account-studio .apauth-shell {
				grid-template-columns: 1fr;
				padding: 72px 20px 24px;
				background-position: 42% center;
			}

			body.ap-account-studio .apauth-scene {
				position: absolute;
				inset: 18px 18px auto;
				display: block;
				pointer-events: none;
			}

			body.ap-account-studio .apauth-scene .apauth-back-home {
				pointer-events: auto;
			}

			body.ap-account-studio .apauth-scene-note {
				display: none;
			}

			body.ap-account-studio .apauth-panel-wrap {
				justify-content: center;
			}

			body.ap-account-studio .apauth-card {
				width: min(100%, 520px);
			}
		}

		@media (max-width: 560px) {
			body.ap-account-studio .apauth-shell {
				padding:
					68px
					12px
					calc(18px + env(safe-area-inset-bottom));
			}

			body.ap-account-studio .apauth-card {
				border-radius: 17px;
			}

			body.ap-account-studio .apauth-card-head {
				padding: 20px 20px 17px;
			}

			body.ap-account-studio .apauth-card-body {
				padding: 22px 20px 22px;
			}

			body.ap-account-studio .apauth-card-head-meta {
				display: none;
			}

			body.ap-account-studio .apauth-mode-heading > div > strong {
				font-size: 24px;
			}

			body.ap-account-studio .apauth-bottom-links {
				justify-content: flex-start;
			}

			body.ap-account-studio .apauth-otp-resend {
				align-items: flex-start;
				flex-direction: column;
			}
		}

		@media (prefers-reduced-motion: reduce) {
			body.ap-account-studio .apauth-card,
			body.ap-account-studio .apauth-panel.is-active {
				animation: none !important;
			}

			body.ap-account-studio .apauth-panel .button,
			body.ap-account-studio .apauth-panel button[type="submit"],
			body.ap-account-studio .apauth-otp-entry,
			body.ap-account-studio.apaccount-auth-page
			.apauth-panel
			input {
				transition: none !important;
			}
		}
		

		/* ========================================================
		   CUSTOMER AUTH v1.10
		   TRANSPARENT GLASS + SUBTLE BRAND OVERLAY
		   ======================================================== */

		body.ap-account-studio .apauth-shell {
			background:
				linear-gradient(
					90deg,
					rgba(220,227,213,0.2) 0%,
					rgba(220,227,213,0.2) 42%,
					rgba(220,227,213,0.2) 68%,
					rgba(220,227,213,0.2) 100%
				),
				linear-gradient(
					180deg,
					rgba(78,115,90,0.018),
					rgba(220,227,213,0.2)
				),
				url('../images/account-studio.webp')
				center center / cover no-repeat !important;
		}

		body.ap-account-studio .apauth-shell::after {
			background:
				linear-gradient(
					180deg,
					rgba(220,227,213,0.2),
					rgba(220,227,213,0.2)
				) !important;
		}

		body.ap-account-studio .apauth-card {
			border-color: #d7ded3 !important;
			background:
				linear-gradient(
					180deg,
					rgba(220,227,213,0.2),
					rgba(220,227,213,0.2)
				) !important;
			box-shadow:
				0 24px 70px rgba(24,34,29,0.1),
				inset 0 1px 0 rgba(24,34,29,0.028) !important;
			backdrop-filter: blur(5px) saturate(108%) !important;
			-webkit-backdrop-filter: blur(5px) saturate(108%) !important;
		}

		body.ap-account-studio .apauth-card-head {
			background:
				linear-gradient(
					90deg,
					rgba(220,227,213,0.2),
					rgba(220,227,213,0.2)
				);
			border-bottom-color: #d7ded3;
		}

		body.ap-account-studio .apauth-card-body {
			background:
				linear-gradient(
					180deg,
					rgba(220,227,213,0.2),
					rgba(220,227,213,0.2)
				);
		}

		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="text"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="email"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="password"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="tel"],
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		.woocommerce-Input.input-text {
			background: rgba(220,227,213,0.2) !important;
			border-color: #d7ded3 !important;
			backdrop-filter: blur(2px);
			-webkit-backdrop-filter: blur(2px);
		}

		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="text"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="email"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="password"]:focus,
		body.ap-account-studio.apaccount-auth-page
		.apauth-panel
		input[type="tel"]:focus {
			background: rgba(220,227,213,0.20700000000000002) !important;
		}

		body.ap-account-studio .apauth-otp-entry {
			background: rgba(78,115,90,0.018) !important;
			border-color: #d7ded3 !important;
			backdrop-filter: blur(2px);
			-webkit-backdrop-filter: blur(2px);
		}

		body.ap-account-studio .apauth-otp-entry:hover {
			background: rgba(78,115,90,0.04) !important;
		}

		@media (max-width: 980px) {
			body.ap-account-studio .apauth-shell {
				background:
					linear-gradient(
						180deg,
						rgba(220,227,213,0.2),
						rgba(220,227,213,0.2)
					),
					url('../images/account-studio.webp')
					42% center / cover no-repeat !important;
			}

			body.ap-account-studio .apauth-card {
				background:
					linear-gradient(
						180deg,
						rgba(220,227,213,0.2),
						rgba(220,227,213,0.2)
					) !important;
				backdrop-filter: blur(6px) saturate(108%) !important;
				-webkit-backdrop-filter: blur(6px) saturate(108%) !important;
			}
		}



/* ============================================================
   CUSTOMER APPOINTMENTS v4.6.0
   AWAITING APPROVAL / APPROVED / CANCELLED
   ============================================================ */

body.ap-account-studio .apappointment-card-v120 {
	border-color: #d7ded3 !important;
}

body.ap-account-studio .apappointment-card-v120 .apappointment-card-top {
	padding-bottom: 16px !important;
}

body.ap-account-studio .apappointment-status {
	min-height: 32px !important;
	padding: 0 11px !important;
	border-radius: 999px !important;
	font-size: 11px !important;
	line-height: 1 !important;
	font-weight: 600 !important;
	letter-spacing: .06em !important;
	white-space: nowrap !important;
}

body.ap-account-studio .apappointment-status-requested {
	border-color: #d7ded3 !important;
	background: rgba(235, 196, 91, .065) !important;
	color: #86621d !important;
}

body.ap-account-studio .apappointment-status-requested i {
	background: #EBC45B !important;
}

body.ap-account-studio .apappointment-status-confirmed {
	border-color: #d7ded3 !important;
	background: rgba(78,115,90,0.065) !important;
	color: #295b51 !important;
}

body.ap-account-studio .apappointment-status-confirmed i {
	background: #d9eee4 !important;
}

body.ap-account-studio .apappointment-status-cancelled {
	border-color: #d7ded3 !important;
	background: rgba(242, 143, 143, .055) !important;
	color: #934630 !important;
}

body.ap-account-studio .apappointment-status-cancelled i {
	background: #F0A1A1 !important;
}

body.ap-account-studio .apappointment-card-grid {
	border-top: 1px solid #d7ded3 !important;
}

body.ap-account-studio .apappointment-detail-hero {
	border-color: #d7ded3 !important;
}

body.ap-account-studio .apappointment-detail-summary {
	margin-top: 12px !important;
}

body.ap-account-studio .apappointment-card-progress,
body.ap-account-studio .apappointment-progress {
	display: none !important;
}


/* ============================================================
   ARCHER PRASANTA — CUSTOMER GARAGE PORTAL v1.2
   ============================================================ */

body.ap-account-studio.woocommerce-account {
	background: #f9faf4;
	color: #24392d;
}

body.ap-account-studio.woocommerce-account,
body.ap-account-studio.woocommerce-account input,
body.ap-account-studio.woocommerce-account select,
body.ap-account-studio.woocommerce-account textarea,
body.ap-account-studio.woocommerce-account button {
	font-family:
		"Montserrat",
		Inter,
		system-ui,
		-apple-system,
		BlinkMacSystemFont,
		"Segoe UI",
		Arial,
		sans-serif;
}

body.ap-account-studio.woocommerce-account * {
	box-sizing: border-box;
}

body.ap-account-studio .apaccount-main {
	--apaccount-bg: #07112A;
	--apaccount-deep: #050A1F;
	--apaccount-panel: #08172E;
	--apaccount-cyan: #6FEFFF;
	--apaccount-white: #F5F7FA;
	--apaccount-border: #d7ded3;
	--apaccount-muted: rgba(245, 247, 250, .46);
	--mobile-heading-weight: 750;
	--mobile-heading-stroke: .12px;

	width: 100%;
	min-height: calc(100vh - 90px);
	overflow-x: clip;
	background:
		radial-gradient(
			circle at 88% 7%,
			rgba(78,115,90,0.055),
			transparent 24%
		),
		var(--apaccount-bg);
	color: var(--apaccount-white);
}

body.ap-account-studio .apaccount-main a {
	color: inherit;
	text-decoration: none;
}

body.ap-account-studio .apaccount-main img {
	display: block;
	max-width: 100%;
}

body.ap-account-studio .apaccount-container {
	width: min(
		calc(100% - 64px),
		var(--ap-container, 1700px)
	);
	margin: 0 auto;
}

body.ap-account-studio .apaccount-content {
	padding: 34px 0 96px;
}

body.ap-account-studio.woocommerce-account footer,
body.ap-account-studio.woocommerce-account .site-footer,
body.ap-account-studio.woocommerce-account #site-footer,
body.ap-account-studio.woocommerce-account #colophon,
body.ap-account-studio.woocommerce-account .ap-footer,
body.ap-account-studio.woocommerce-account #footer {
	display: none !important;
}

body.ap-account-studio .apaccount-portal-intro {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 18px;
	padding: 0 2px;
}

body.ap-account-studio .apaccount-portal-intro-copy > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaccount-portal-intro-copy h1 {
	margin: 7px 0 0;
	color: var(--apaccount-white);
	font-size: clamp(28px, 2.4vw, 42px);
	line-height: 1;
	font-weight: 600;
	letter-spacing: -.045em;
	text-transform: uppercase;
}

body.ap-account-studio .apaccount-portal-intro-copy h1 em {
	color: var(--apaccount-cyan);
	font-style: normal;
}

body.ap-account-studio .apaccount-portal-intro-copy p {
	max-width: 720px;
	margin: 9px 0 0;
	color: #68746b;
	font-size: 13px;
	line-height: 1.65;
}

body.ap-account-studio .apaccount-portal-status {
	flex: 0 0 auto;
	min-width: 190px;
	padding-left: 18px;
	border-left: 1px solid #d7ded3;
}

body.ap-account-studio .apaccount-portal-status span {
	display: block;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaccount-portal-status strong {
	display: block;
	margin-top: 6px;
	color: var(--apaccount-cyan);
	font-size: 16px;
	line-height: 1.2;
	font-weight: 600;
	overflow-wrap: anywhere;
}

body.ap-account-studio .apaccount-main .woocommerce {
	width: 100%;
}

body.ap-account-studio .apaccount-main .woocommerce::before,
body.ap-account-studio .apaccount-main .woocommerce::after {
	display: none !important;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation {
	width: 290px !important;
	float: left !important;
	margin: 0 28px 0 0;
	position: sticky;
	top: 104px;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-content {
	width: calc(100% - 318px) !important;
	float: left !important;
	min-height: 560px;
}

body.ap-account-studio .apaccount-nav-card {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 16px;
	background:
		linear-gradient(
			145deg,
			#f9faf4,
			#f9faf4
		);
}

body.ap-account-studio .apaccount-profile-mini {
	padding: 22px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apaccount-profile-avatar {
	width: 50px;
	height: 50px;
	display: grid;
	place-items: center;
	margin-bottom: 14px;
	border: 1px solid #d7ded3;
	border-radius: 50%;
	background: rgba(78,115,90,0.05);
	color: var(--apaccount-cyan);
	font-size: 18px;
	font-weight: 600;
}

body.ap-account-studio .apaccount-profile-mini > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaccount-profile-mini strong {
	display: block;
	margin-top: 7px;
	color: #24392d;
	font-size: 16px;
	line-height: 1.25;
	font-weight: 600;
}

body.ap-account-studio .apaccount-profile-mini small {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 9px;
	list-style: none;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation li + li {
	margin-top: 3px;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation a {
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 0 12px;
	border: 1px solid transparent;
	border-radius: 8px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	transition:
		color .24s ease,
		background .24s ease,
		border-color .24s ease;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation a::after {
	content: "↗";
	color: #295b51;
	font-size: 14px;
	font-weight: 400;
}

body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation li.is-active a,
body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation a:hover {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.055);
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 10px !important;
	padding-top: 10px !important;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apaccount-panel {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 16px;
	background:
		linear-gradient(
			145deg,
			#f9faf4,
			#f9faf4
		);
}

body.ap-account-studio .apaccount-panel + .apaccount-panel {
	margin-top: 14px;
}

body.ap-account-studio .apaccount-panel-head {
	padding: 24px 26px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apaccount-panel-head > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaccount-panel-head h2 {
	margin: 9px 0 0;
	color: var(--apaccount-white);
	font-size: clamp(27px, 2.1vw, 36px);
	line-height: 1;
	font-weight: 600;
	letter-spacing: -.045em;
	text-transform: uppercase;
}

body.ap-account-studio .apaccount-panel-head p {
	max-width: 760px;
	margin: 10px 0 0;
	color: #68746b;
	font-size: 13px;
	line-height: 1.65;
}

body.ap-account-studio .apaccount-panel-body {
	padding: 26px;
}

body.ap-account-studio .apaccount-grid {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apaccount-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.ap-account-studio .apaccount-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.ap-account-studio .apaccount-grid-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apaccount-stat {
	min-height: 126px;
	padding: 18px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apaccount-stat span {
	display: block;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
	text-transform: uppercase;
}

body.ap-account-studio .apaccount-stat strong {
	display: block;
	margin-top: 14px;
	color: var(--apaccount-cyan);
	font-size: 30px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: -.04em;
}

body.ap-account-studio .apaccount-card {
	padding: 18px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apaccount-card > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaccount-card h3 {
	margin: 10px 0 0;
	color: #24392d;
	font-size: 17px;
	line-height: 1.25;
	font-weight: 600;
	letter-spacing: -.025em;
}

body.ap-account-studio .apaccount-card p {
	margin: 8px 0 0;
	color: #68746b;
	font-size: 13px;
	line-height: 1.65;
}

body.ap-account-studio .apaccount-card-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

body.ap-account-studio .apaccount-button,
body.ap-account-studio .apaccount-main .button,
body.ap-account-studio .apaccount-main button.button,
body.ap-account-studio .apaccount-main input.button,
body.ap-account-studio .apaccount-main .woocommerce-button {
	min-height: 44px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0 15px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 8px !important;
	background: rgba(78,115,90,0.055) !important;
	color: var(--apaccount-cyan) !important;
	cursor: pointer;
	box-shadow: none !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	letter-spacing: .10em !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
}

body.ap-account-studio .apaccount-button-primary,
body.ap-account-studio .apaccount-main .button.alt,
body.ap-account-studio .apaccount-main button[name="save_account_details"],
body.ap-account-studio .apaccount-main button[name="save_address"] {
	border-color: var(--apaccount-cyan) !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
}

body.ap-account-studio .apaccount-main .form-row {
	width: 100% !important;
	float: none !important;
	margin: 0 0 15px !important;
	padding: 0 !important;
}

body.ap-account-studio .apaccount-main .form-row label {
	display: block;
	margin: 0 0 8px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
	text-transform: uppercase;
}

body.ap-account-studio .apaccount-main input.input-text,
body.ap-account-studio .apaccount-main input[type="text"],
body.ap-account-studio .apaccount-main input[type="email"],
body.ap-account-studio .apaccount-main input[type="password"],
body.ap-account-studio .apaccount-main input[type="tel"],
body.ap-account-studio .apaccount-main input[type="number"],
body.ap-account-studio .apaccount-main input[type="date"],
body.ap-account-studio .apaccount-main input[type="file"],
body.ap-account-studio .apaccount-main select,
body.ap-account-studio .apaccount-main textarea {
	width: 100% !important;
	min-height: 48px;
	border: 1px solid #d7ded3 !important;
	border-radius: 9px !important;
	outline: 0 !important;
	background: rgba(220,227,213,0.24300000000000002) !important;
	color: var(--apaccount-white) !important;
	box-shadow: none !important;
	padding: 11px 13px !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
}

body.ap-account-studio .apaccount-main textarea {
	min-height: 118px;
	resize: vertical;
}

body.ap-account-studio .apaccount-main table.shop_table,
body.ap-account-studio .apaccount-main .woocommerce-orders-table {
	width: 100%;
	margin: 0 !important;
	border: 1px solid #d7ded3 !important;
	border-collapse: separate !important;
	border-spacing: 0;
	border-radius: 12px !important;
	overflow: hidden;
	background: rgba(220,227,213,0.2) !important;
}

body.ap-account-studio .apaccount-main table.shop_table th,
body.ap-account-studio .apaccount-main table.shop_table td,
body.ap-account-studio .apaccount-main .woocommerce-orders-table th,
body.ap-account-studio .apaccount-main .woocommerce-orders-table td {
	padding: 15px !important;
	border: 0 !important;
	border-bottom: 1px solid #d7ded3 !important;
	background: transparent !important;
	color: #24392d;
	font-size: 12px;
	line-height: 1.55;
	text-align: left;
}

body.ap-account-studio .apaccount-main .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

body.ap-account-studio .apaccount-main .woocommerce-Address {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 20px !important;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apaccount-main .woocommerce-message,
body.ap-account-studio .apaccount-main .woocommerce-info,
body.ap-account-studio .apaccount-main .woocommerce-error {
	margin: 0 0 16px !important;
	padding: 14px 16px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 9px !important;
	background: #f9faf4 !important;
	color: #24392d !important;
	font-size: 12px !important;
	line-height: 1.6;
}

body.ap-account-studio .apaccount-empty {
	padding: 28px;
	border: 1px dashed #d7ded3;
	border-radius: 11px;
	text-align: center;
}

@media (max-width: 1120px) {
	body.ap-account-studio .apaccount-container {
		width: min(
			calc(100% - 48px),
			var(--ap-container, 1700px)
		);
	}

	body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation {
		width: 100% !important;
		float: none !important;
		position: static;
		margin: 0 0 16px !important;
	}

	body.ap-account-studio .apaccount-main .woocommerce-MyAccount-content {
		width: 100% !important;
		float: none !important;
	}

	body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation ul {
		display: flex;
		gap: 6px;
		overflow-x: auto;
		scrollbar-width: thin;
	}

	body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto;
	}

	body.ap-account-studio .apaccount-main .woocommerce-MyAccount-navigation li + li {
		margin-top: 0;
	}

	body.ap-account-studio .apaccount-profile-mini {
		display: none;
	}

	body.ap-account-studio .apaccount-grid-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	body.ap-account-studio .apaccount-container {
		width: calc(100% - 30px);
	}

	body.ap-account-studio .apaccount-content {
		padding: 22px 0 76px;
	}

	body.ap-account-studio .apaccount-portal-intro {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	body.ap-account-studio .apaccount-portal-intro-copy h1 {
		font-size: 28px;
	}

	body.ap-account-studio .apaccount-portal-status {
		width: 100%;
		min-width: 0;
		padding: 12px 0 0;
		border-left: 0;
		border-top: 1px solid #d7ded3;
	}

	body.ap-account-studio .apaccount-grid-2,
	body.ap-account-studio .apaccount-grid-3,
	body.ap-account-studio .apaccount-grid-4,
	body.ap-account-studio .apaccount-main .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apaccount-main h1,
	body.ap-account-studio .apaccount-main h2,
	body.ap-account-studio .apaccount-main h3 {
		font-family:
			"Montserrat",
			Inter,
			system-ui,
			-apple-system,
			BlinkMacSystemFont,
			"Segoe UI",
			Arial,
			sans-serif !important;
		font-weight: var(--mobile-heading-weight) !important;
		-webkit-font-smoothing: auto !important;
		-moz-osx-font-smoothing: auto;
		text-rendering: auto;
		-webkit-text-stroke:
			var(--mobile-heading-stroke)
			currentColor;
	}
}

@media (max-width: 430px) {
	body.ap-account-studio .apaccount-container {
		width: calc(100% - 24px);
	}
}


/* ============================================================
   CUSTOMER GARAGE PORTAL v1.4
   PROFILE PHOTO
   ============================================================ */

body.ap-account-studio .apaccount-profile-avatar {
    overflow: hidden;
}

body.ap-account-studio .apaccount-profile-avatar.has-photo {
    background: transparent;
}

body.ap-account-studio .apaccount-profile-avatar.has-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

body.ap-account-studio .apaccount-profile-photo-editor {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    margin: 0 0 24px;
    padding: 18px;
    border: 1px solid #d7ded3;
    border-radius: 12px;
    background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apaccount-profile-photo-preview {
    width: 112px;
    height: 112px;
    overflow: hidden;
    border: 1px solid #d7ded3;
    border-radius: 50%;
    background: rgba(78,115,90,0.055);
}

body.ap-account-studio .apaccount-profile-photo-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.ap-account-studio .apaccount-profile-photo-placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: var(--apaccount-cyan);
    font-size: 30px;
    font-weight: 600;
}

body.ap-account-studio .apaccount-profile-photo-controls {
    min-width: 0;
}

body.ap-account-studio .apaccount-profile-photo-controls > label:first-child {
    display: block;
    margin: 0 0 8px;
    color: #68746b;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .10em;
    text-transform: uppercase;
}

body.ap-account-studio .apaccount-profile-photo-controls input[type="file"] {
    width: 100% !important;
}

body.ap-account-studio .apaccount-profile-photo-remove {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin-top: 10px !important;
    color: #68746b !important;
    font-size: 11px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer;
}

body.ap-account-studio .apaccount-profile-photo-remove input {
    accent-color: var(--apaccount-cyan);
}

@media (max-width: 760px) {
    body.ap-account-studio .apaccount-profile-photo-editor {
        grid-template-columns: 84px minmax(0, 1fr);
        gap: 14px;
        padding: 14px;
    }

    body.ap-account-studio .apaccount-profile-photo-preview {
        width: 84px;
        height: 84px;
    }
}



/* ============================================================
   CUSTOMER SUPPORT / SRN TRACKER
   ============================================================ */

body.ap-account-studio .apsupport-current-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

body.ap-account-studio .apsupport-status-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 11px;
    border: 1px solid #d7ded3;
    border-radius: 999px;
    background: rgba(78,115,90,0.055);
    color: var(--apaccount-cyan);
    font-size: 11px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

body.ap-account-studio .apsupport-status-resolved,
body.ap-account-studio .apsupport-status-closed {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.055);
    color: #24392d;
}

body.ap-account-studio .apsupport-progress {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    margin: 3px 0 26px;
}

body.ap-account-studio .apsupport-progress-line {
    position: absolute;
    top: 8px;
    left: 10%;
    right: 10%;
    height: 1px;
    background: rgba(78,115,90,0.09);
}

body.ap-account-studio .apsupport-progress-step {
    position: relative;
    z-index: 1;
    display: grid;
    justify-items: center;
    gap: 9px;
    text-align: center;
}

body.ap-account-studio .apsupport-progress-dot {
    width: 17px;
    height: 17px;
    border: 2px solid #d7ded3;
    border-radius: 50%;
    background: #f9faf4;
    box-shadow: 0 0 0 4px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsupport-progress-step.is-complete .apsupport-progress-dot {
    border-color: var(--apaccount-cyan);
    background: var(--apaccount-cyan);
}

body.ap-account-studio .apsupport-progress-step.is-current .apsupport-progress-dot {
    border-color: var(--apaccount-cyan);
    background: #f9faf4;
    box-shadow:
        0 0 0 4px rgba(24,34,29,0.1),
        0 0 0 6px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsupport-progress-step strong {
    max-width: 110px;
    color: #68746b;
    font-size: 11px;
    line-height: 1.45;
    font-weight: 600;
    letter-spacing: .07em;
    text-transform: uppercase;
}

body.ap-account-studio .apsupport-progress-step.is-complete strong,
body.ap-account-studio .apsupport-progress-step.is-current strong {
    color: #24392d;
}

body.ap-account-studio .apsupport-current-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

body.ap-account-studio .apsupport-data-card,
body.ap-account-studio .apsupport-message-card,
body.ap-account-studio .apsupport-update-note {
    padding: 16px;
    border: 1px solid #d7ded3;
    border-radius: 10px;
    background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsupport-data-card span,
body.ap-account-studio .apsupport-message-card > span,
body.ap-account-studio .apsupport-update-note > span,
body.ap-account-studio .apsupport-timeline-title {
    display: block;
    color: var(--apaccount-cyan);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .10em;
}

body.ap-account-studio .apsupport-data-card strong {
    display: block;
    margin-top: 8px;
    color: #24392d;
    font-size: 13px;
    line-height: 1.5;
}

body.ap-account-studio .apsupport-message-card,
body.ap-account-studio .apsupport-update-note {
    margin-top: 10px;
}

body.ap-account-studio .apsupport-message-card p,
body.ap-account-studio .apsupport-update-note p {
    margin: 9px 0 0;
    color: #68746b;
    font-size: 13px;
    line-height: 1.75;
}

body.ap-account-studio .apsupport-update-note {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.035);
}

body.ap-account-studio .apsupport-timeline {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apsupport-timeline-title {
    margin-bottom: 12px;
}

body.ap-account-studio .apsupport-timeline-row {
    position: relative;
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr);
    gap: 11px;
    padding: 0 0 14px;
}

body.ap-account-studio .apsupport-timeline-row:not(:last-child)::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 12px;
    bottom: 0;
    width: 1px;
    background: rgba(78,115,90,0.09);
}

body.ap-account-studio .apsupport-timeline-dot {
    width: 11px;
    height: 11px;
    margin-top: 3px;
    border: 2px solid var(--apaccount-cyan);
    border-radius: 50%;
    background: #f9faf4;
}

body.ap-account-studio .apsupport-timeline-row strong {
    display: block;
    color: #24392d;
    font-size: 12px;
    line-height: 1.4;
}

body.ap-account-studio .apsupport-timeline-row p {
    margin: 4px 0 0;
    color: #68746b;
    font-size: 12px;
    line-height: 1.6;
}

body.ap-account-studio .apsupport-timeline-row small {
    display: block;
    margin-top: 5px;
    color: #68746b;
    font-size: 11px;
}

body.ap-account-studio .apsupport-history-list {
    display: grid;
    gap: 10px;
}

body.ap-account-studio .apsupport-history-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
    gap: 22px;
    align-items: center;
    padding: 18px;
    border: 1px solid #d7ded3;
    border-radius: 11px;
    background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsupport-history-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

body.ap-account-studio .apsupport-history-top > span {
    color: var(--apaccount-cyan);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .09em;
}

body.ap-account-studio .apsupport-history-card h3 {
    margin: 10px 0 0;
    color: #24392d;
    font-size: 16px;
    line-height: 1.35;
}

body.ap-account-studio .apsupport-history-card p {
    margin: 7px 0 0;
    color: #68746b;
    font-size: 12px;
    line-height: 1.65;
}

body.ap-account-studio .apsupport-history-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    margin-top: 10px;
    color: #68746b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .06em;
}

body.ap-account-studio .apsupport-history-progress .apsupport-progress {
    margin: 0;
}

@media (max-width: 980px) {
    body.ap-account-studio .apsupport-history-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    body.ap-account-studio .apsupport-current-head,
    body.ap-account-studio .apsupport-history-top {
        align-items: flex-start;
        flex-direction: column;
    }

    body.ap-account-studio .apsupport-current-grid {
        grid-template-columns: 1fr;
    }

    body.ap-account-studio .apsupport-progress {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 20px;
    }

    body.ap-account-studio .apsupport-progress-line {
        top: 10px;
        bottom: 10px;
        left: 8px;
        right: auto;
        width: 1px;
        height: auto;
    }

    body.ap-account-studio .apsupport-progress-step {
        grid-template-columns: 17px minmax(0, 1fr);
        justify-items: start;
        align-items: center;
        gap: 12px;
        text-align: left;
    }

    body.ap-account-studio .apsupport-progress-step strong {
        max-width: none;
    }
}



/* ============================================================
   SUPPORT v1.2
   CURRENT REQUEST ONLY / EMPTY-STATE SUBMIT FLOW
   ============================================================ */

body.ap-account-studio .apsupport-empty-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

body.ap-account-studio .apsupport-empty-head > div {
    min-width: 0;
}

body.ap-account-studio .apsupport-empty-head .apsupport-submit-toggle {
    flex: 0 0 auto;
    min-width: 220px;
}

body.ap-account-studio .apsupport-new-request-form[hidden] {
    display: none !important;
}

body.ap-account-studio .apsupport-new-request-form {
    border-top: 0;
    animation: apsupport-form-reveal .28s cubic-bezier(.16, 1, .3, 1);
}

@keyframes apsupport-form-reveal {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 760px) {
    body.ap-account-studio .apsupport-empty-head {
        align-items: flex-start;
        flex-direction: column;
    }

    body.ap-account-studio .apsupport-empty-head .apsupport-submit-toggle {
        width: 100%;
        min-width: 0;
    }
}



/* ============================================================
   SUPPORT v1.3
   HEADER ACTIONS / HISTORY / NEW REQUEST DRAWERS
   ============================================================ */

body.ap-account-studio .apsupport-current-title {
    min-width: 0;
}

body.ap-account-studio .apsupport-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}

body.ap-account-studio .apsupport-action-button {
    min-height: 38px !important;
    white-space: nowrap;
}

body.ap-account-studio .apsupport-action-button.is-active {
    border-color: #d7ded3 !important;
    background: rgba(78,115,90,0.09) !important;
    color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .apsupport-action-drawer[hidden] {
    display: none !important;
}

body.ap-account-studio .apsupport-action-drawer {
    border-top: 1px solid #d7ded3;
    background:
        linear-gradient(
            180deg,
            rgba(220,227,213,0.2),
            rgba(220,227,213,0.2)
        );
    animation:
        apsupport-action-drawer-in
        .28s
        cubic-bezier(.16, 1, .3, 1);
}

@keyframes apsupport-action-drawer-in {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

body.ap-account-studio .apsupport-action-drawer-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    padding: 22px 24px;
    border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsupport-action-drawer-head > div {
    min-width: 0;
}

body.ap-account-studio .apsupport-action-drawer-head span {
    display: block;
    color: var(--apaccount-cyan);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .10em;
}

body.ap-account-studio .apsupport-action-drawer-head h3 {
    margin: 7px 0 0;
    color: #24392d;
    font-size: 24px;
    line-height: 1.05;
    font-weight: 600;
    letter-spacing: -.035em;
    text-transform: uppercase;
}

body.ap-account-studio .apsupport-action-drawer-head p {
    margin: 8px 0 0;
    color: #68746b;
    font-size: 12px;
    line-height: 1.65;
}

body.ap-account-studio .apsupport-action-drawer-body {
    padding: 22px 24px 24px;
}

body.ap-account-studio .apsupport-history-latest {
    margin-top: 12px;
    padding: 12px;
    border: 1px solid #d7ded3;
    border-radius: 8px;
    background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apsupport-history-latest > span {
    display: block;
    color: var(--apaccount-cyan);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .10em;
}

body.ap-account-studio .apsupport-history-latest p {
    margin: 6px 0 0;
}

body.ap-account-studio .apsupport-no-current {
    border-style: solid;
    background: rgba(220,227,213,0.2);
}

@media (max-width: 1180px) {
    body.ap-account-studio .apsupport-current-head {
        align-items: flex-start;
        flex-direction: column;
    }

    body.ap-account-studio .apsupport-header-actions {
        width: 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    body.ap-account-studio .apsupport-header-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.ap-account-studio .apsupport-action-button {
        width: 100%;
    }

    body.ap-account-studio .apsupport-action-drawer-head {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px;
    }

    body.ap-account-studio .apsupport-action-drawer-head .apaccount-button {
        width: 100%;
    }

    body.ap-account-studio .apsupport-action-drawer-body {
        padding: 18px;
    }
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.11
   FIXED ACCOUNT SHELL / CONTENT-ONLY SCROLL
   ============================================================ */

@media (min-width: 1121px) {
    html:has(body.ap-account-studio) {
        overflow: hidden;
    }

    body.ap-account-studio.woocommerce-account {
        overflow: hidden;
    }

    body.ap-account-studio .apaccount-main {
        height:
            calc(
                100dvh
                - var(--apaccount-site-header-height, 88px)
            );
        min-height: 0;
        overflow: hidden;
    }

    body.ap-account-studio .apaccount-content {
        height: 100%;
        min-height: 0;
        padding:
            28px
            0
            0;
        overflow: hidden;
    }

    body.ap-account-studio .apaccount-container {
        height: 100%;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

    body.ap-account-studio .apaccount-portal-intro {
        flex: 0 0 auto;
        margin-bottom: 18px;
        padding:
            0
            2px
            2px;
    }

    body.ap-account-studio .apaccount-main .woocommerce {
        flex: 1 1 auto;
        min-height: 0;
        display: grid;
        grid-template-columns:
            290px
            minmax(0, 1fr);
        gap: 28px;
        overflow: hidden;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-navigation {
        width: 290px !important;
        height: 100%;
        min-height: 0;
        float: none !important;
        position: static;
        top: auto;
        margin: 0 !important;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color:
            rgba(111, 239, 255, .18)
            transparent;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-navigation::-webkit-scrollbar {
        width: 4px;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-navigation::-webkit-scrollbar-track {
        background: transparent;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-navigation::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(78,115,90,0.09);
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-content {
        width: 100% !important;
        height: 100%;
        min-height: 0;
        float: none !important;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        scrollbar-gutter: stable;
        scrollbar-width: thin;
        scrollbar-color:
            rgba(111, 239, 255, .24)
            transparent;
        padding:
            0
            8px
            64px
            0;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-content::-webkit-scrollbar {
        width: 5px;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-content::-webkit-scrollbar-track {
        background: transparent;
    }

    body.ap-account-studio .apaccount-main
    .woocommerce-MyAccount-content::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(78,115,90,0.09);
    }

    body.ap-account-studio .apaccount-nav-card {
        min-height: 0;
    }
}

@media (max-width: 1120px) {
    html:has(body.ap-account-studio),
    body.ap-account-studio.woocommerce-account {
        overflow: auto;
    }

    body.ap-account-studio .apaccount-main {
        height: auto;
        min-height:
            calc(
                100vh
                - var(--apaccount-site-header-height, 88px)
            );
        overflow-x: clip;
        overflow-y: visible;
    }
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.12
   PREMIUM ADDRESS BOOK
   ============================================================ */

body.ap-account-studio .apaddress-book-head,
body.ap-account-studio .apaddress-form-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
}

body.ap-account-studio .apaddress-book-head > div,
body.ap-account-studio .apaddress-form-head > div {
	min-width: 0;
}

body.ap-account-studio .apaddress-default-grid,
body.ap-account-studio .apaddress-saved-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

body.ap-account-studio .apaddress-card {
	min-width: 0;
	padding: 20px;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.216),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apaddress-card-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding-bottom: 15px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apaddress-card-top > div {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

body.ap-account-studio .apaddress-card-top span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaddress-card-top b {
	min-height: 24px;
	display: inline-flex;
	align-items: center;
	padding: 0 8px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.04);
	color: #295b51;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apaddress-card-top > a {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
	text-decoration: none;
	white-space: nowrap;
}

body.ap-account-studio .apaddress-card-top > a:hover {
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apaddress-card-copy {
	padding-top: 18px;
}

body.ap-account-studio .apaddress-card-copy > strong {
	display: block;
	color: #24392d;
	font-size: 18px;
	line-height: 1.25;
	font-weight: 600;
	letter-spacing: -.025em;
}

body.ap-account-studio .apaddress-card-copy > p {
	margin: 7px 0 0;
	color: #68746b;
	font-size: 13px;
	line-height: 1.55;
	font-style: normal;
}

body.ap-account-studio .apaddress-contact {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apaddress-contact > span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaddress-contact > span > strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apaddress-card-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 17px;
	padding-top: 14px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apaddress-card-actions form {
	margin: 0;
}

body.ap-account-studio .apaddress-card-actions button {
	min-height: 32px !important;
	padding: 0 9px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 7px !important;
	background: rgba(78,115,90,0.025) !important;
	color: #68746b !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .08em !important;
}

body.ap-account-studio .apaddress-card-actions button:hover {
	border-color: #d7ded3 !important;
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .apaddress-card-actions button.is-danger:hover {
	border-color: #d7ded3 !important;
	color: #934630 !important;
}

body.ap-account-studio .apaddress-empty-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 285px;
}

body.ap-account-studio .apaddress-empty-card > span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaddress-empty-card > strong {
	display: block;
	margin-top: 13px;
	color: #24392d;
	font-size: 18px;
	font-weight: 600;
}

body.ap-account-studio .apaddress-empty-card > p {
	max-width: 370px;
	margin: 8px 0 18px;
	color: #68746b;
	font-size: 12px;
	line-height: 1.65;
}

body.ap-account-studio .apaddress-empty-card .apaccount-button {
	align-self: flex-start;
}

body.ap-account-studio .apaddress-saved-section {
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apaddress-section-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 14px;
}

body.ap-account-studio .apaddress-section-head span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaddress-section-head strong {
	display: block;
	margin-top: 6px;
	color: #24392d;
	font-size: 15px;
	font-weight: 600;
}

body.ap-account-studio .apaddress-section-head p {
	max-width: 470px;
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
	text-align: right;
}

body.ap-account-studio .apaddress-empty-wide {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
	padding: 22px;
	border: 1px dashed #d7ded3;
	border-radius: 11px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apaddress-empty-wide span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apaddress-empty-wide strong {
	display: block;
	margin-top: 7px;
	color: #24392d;
	font-size: 15px;
	font-weight: 600;
}

body.ap-account-studio .apaddress-empty-wide p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apaddress-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 14px;
}

body.ap-account-studio .apaddress-form-grid .apaddress-wide {
	grid-column: 1 / -1;
}

body.ap-account-studio .apaddress-form-grid label span {
	color: #68746b;
	font-size: 11px;
	letter-spacing: .07em;
}

@media (max-width: 920px) {
	body.ap-account-studio .apaddress-default-grid,
	body.ap-account-studio .apaddress-saved-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apaddress-book-head,
	body.ap-account-studio .apaddress-form-head,
	body.ap-account-studio .apaddress-section-head,
	body.ap-account-studio .apaddress-empty-wide {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apaddress-section-head p {
		text-align: left;
	}
}

@media (max-width: 640px) {
	body.ap-account-studio .apaddress-form-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apaddress-form-grid .apaddress-wide {
		grid-column: auto;
	}

	body.ap-account-studio .apaddress-contact {
		grid-template-columns: 1fr;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.14
   FULL PROFILE REDESIGN
   ============================================================ */

body.ap-account-studio .ap-profile-editor {
	display: grid;
	gap: 16px;
	padding-bottom: 42px;
}

body.ap-account-studio .ap-profile-section {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 13px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.216),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .ap-profile-section-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 19px 20px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .ap-profile-section-head > div:first-child {
	min-width: 0;
}

body.ap-account-studio .ap-profile-section-head span:first-child {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .ap-profile-section-head h2 {
	margin: 7px 0 0 !important;
	color: #24392d !important;
	font-size: 22px !important;
	line-height: 1.1 !important;
	font-weight: 600 !important;
	letter-spacing: -.035em !important;
}

body.ap-account-studio .ap-profile-section-head p {
	max-width: 620px;
	margin: 7px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .ap-profile-section-body {
	padding: 20px;
}

body.ap-account-studio .ap-profile-grid {
	display: grid;
	gap: 14px;
}

body.ap-account-studio .ap-profile-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.ap-account-studio .ap-profile-editor .form-row {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.ap-account-studio .ap-profile-editor .form-row label {
	display: flex;
	align-items: center;
	gap: 5px;
	margin: 0 0 8px !important;
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
	letter-spacing: .10em !important;
	text-transform: uppercase;
}

body.ap-account-studio .ap-profile-editor .required {
	color: #934630 !important;
}

body.ap-account-studio .ap-profile-editor input[type="text"],
body.ap-account-studio .ap-profile-editor input[type="email"],
body.ap-account-studio .ap-profile-editor input[type="tel"],
body.ap-account-studio .ap-profile-editor input[type="password"] {
	display: block !important;
	width: 100% !important;
	height: 50px !important;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 0 13px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 8px !important;
	outline: none !important;
	background: rgba(220,227,213,0.234) !important;
	color: #24392d !important;
	box-shadow: none !important;
	font-size: 13px !important;
	line-height: 50px !important;
	font-weight: 650 !important;
	transition:
		border-color .18s ease,
		background .18s ease,
		box-shadow .18s ease;
}

body.ap-account-studio .ap-profile-editor input:focus {
	border-color: #d7ded3 !important;
	background: rgba(220,227,213,0.333) !important;
	box-shadow:
		0 0 0 3px rgba(24,34,29,0.035) !important;
}

body.ap-account-studio .ap-profile-display-name {
	margin-top: 14px !important;
}

body.ap-account-studio .ap-profile-display-name small {
	display: block;
	margin-top: 8px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

/* ------------------------------------------------------------
   Identity / Photo
   ------------------------------------------------------------ */

body.ap-account-studio .ap-profile-account-chip {
	flex: 0 0 auto;
	min-width: 220px;
	padding: 10px 13px;
	border-left: 1px solid #d7ded3;
}

body.ap-account-studio .ap-profile-account-chip span {
	color: #68746b !important;
	font-size: 11px !important;
}

body.ap-account-studio .ap-profile-account-chip strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.35;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-profile-photo-editor {
	display: grid;
	grid-template-columns: 116px minmax(0, 1fr);
	gap: 20px;
	align-items: center;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-profile-photo-preview {
	width: 108px;
	height: 108px;
	border-color: #d7ded3;
	box-shadow:
		0 0 0 6px rgba(24,34,29,0.025);
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-profile-photo-controls > label:first-child {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-profile-photo-controls
input[type="file"] {
	width: 100% !important;
	min-height: 46px;
	padding: 7px 9px;
	border: 1px dashed #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-profile-photo-controls
input[type="file"]::file-selector-button {
	min-height: 31px;
	margin-right: 10px;
	padding: 0 11px;
	border: 1px solid #d7ded3;
	border-radius: 6px;
	background: rgba(78,115,90,0.055);
	color: var(--apaccount-cyan);
	cursor: pointer;
	font-family: inherit;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .ap-profile-identity-section
.apaccount-form-note {
	max-width: 600px;
	margin-top: 9px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .ap-profile-identity-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .ap-profile-identity-summary > div {
	padding: 11px 12px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .ap-profile-identity-summary span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .ap-profile-identity-summary strong {
	display: block;
	margin-top: 5px;
	color: #24392d;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
}

/* ------------------------------------------------------------
   Contact
   ------------------------------------------------------------ */

body.ap-account-studio .ap-profile-contact-grid
> .form-row {
	min-width: 0;
}

body.ap-account-studio .ap-profile-contact-grid
.woocommerce-form-row--wide {
	grid-column: auto !important;
}

/* ------------------------------------------------------------
   Security
   ------------------------------------------------------------ */

body.ap-account-studio .ap-profile-security-status {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 31px;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.035);
	color: #295b51;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
	white-space: nowrap;
}

body.ap-account-studio .ap-profile-security-status span {
	color: var(--apaccount-cyan) !important;
	font-size: 11px !important;
	text-shadow:
		0 0 9px rgba(24,34,29,0.1);
}

body.ap-account-studio .ap-profile-security-current {
	margin-bottom: 14px;
}

body.ap-account-studio .ap-profile-security-current .form-row {
	max-width: 100%;
}

body.ap-account-studio .ap-profile-editor .password-input {
	display: block;
	position: relative;
}

/* ------------------------------------------------------------
   Save area — static, never floating
   ------------------------------------------------------------ */

body.ap-account-studio .ap-profile-save-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 18px 20px;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		linear-gradient(
			90deg,
			rgba(78,115,90,0.035),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .ap-profile-save-bar > div:first-child > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .ap-profile-save-bar > div:first-child > p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .ap-profile-save-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
}

body.ap-account-studio .ap-profile-cancel {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
	text-decoration: none;
}

body.ap-account-studio .ap-profile-cancel:hover {
	border-color: #d7ded3;
	color: var(--apaccount-cyan);
}

body.ap-account-studio .ap-profile-save-button {
	min-width: 180px !important;
	min-height: 44px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 0 14px !important;
	border: 1px solid var(--apaccount-cyan) !important;
	border-radius: 8px !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
	box-shadow: none !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .10em !important;
	text-transform: uppercase;
}

body.ap-account-studio .ap-profile-save-button span {
	font-size: 15px;
	font-weight: 500;
}

/* Woo notices inside profile */
body.ap-account-studio .ap-profile-editor
.woocommerce-password-strength,
body.ap-account-studio .ap-profile-editor
.woocommerce-password-hint {
	margin-top: 8px;
	font-size: 11px;
	line-height: 1.5;
}

/* Remove any older sticky-save behavior */
body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
form.ap-profile-editor
> p:last-of-type {
	position: static !important;
	padding: 0 !important;
	background: transparent !important;
}

/* ------------------------------------------------------------
   Responsive
   ------------------------------------------------------------ */

@media (max-width: 900px) {
	body.ap-account-studio .ap-profile-grid-2 {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .ap-profile-contact-grid
	.woocommerce-form-row--wide {
		grid-column: 1 !important;
	}
}

@media (max-width: 720px) {
	body.ap-account-studio .ap-profile-section-head,
	body.ap-account-studio .ap-profile-save-bar {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .ap-profile-account-chip {
		width: 100%;
		min-width: 0;
		padding:
			11px
			0
			0;
		border-left: 0;
		border-top: 1px solid #d7ded3;
	}

	body.ap-account-studio .ap-profile-identity-section
	.apaccount-profile-photo-editor {
		grid-template-columns: 88px minmax(0, 1fr);
		gap: 14px;
	}

	body.ap-account-studio .ap-profile-identity-section
	.apaccount-profile-photo-preview {
		width: 82px;
		height: 82px;
	}

	body.ap-account-studio .ap-profile-save-actions {
		width: 100%;
	}

	body.ap-account-studio .ap-profile-save-button,
	body.ap-account-studio .ap-profile-cancel {
		flex: 1 1 0;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .ap-profile-section-head,
	body.ap-account-studio .ap-profile-section-body,
	body.ap-account-studio .ap-profile-save-bar {
		padding-left: 15px;
		padding-right: 15px;
	}

	body.ap-account-studio .ap-profile-identity-section
	.apaccount-profile-photo-editor {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .ap-profile-identity-section
	.apaccount-profile-photo-preview {
		width: 92px;
		height: 92px;
	}

	body.ap-account-studio .ap-profile-identity-summary {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .ap-profile-save-actions {
		flex-direction: column-reverse;
	}

	body.ap-account-studio .ap-profile-save-button,
	body.ap-account-studio .ap-profile-cancel {
		width: 100%;
		flex: auto;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.15
   PROFESSIONAL MY ORDERS
   ============================================================ */

body.ap-account-studio .aporders {
	display: grid;
	gap: 14px;
	padding-bottom: 48px;
}

body.ap-account-studio .aporders-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 19px 20px;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.035),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .aporders-head > div {
	min-width: 0;
}

body.ap-account-studio .aporders-head > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporders-head h2 {
	margin: 7px 0 0 !important;
	color: #24392d !important;
	font-size: 25px !important;
	line-height: 1.05 !important;
	font-weight: 600 !important;
	letter-spacing: -.04em !important;
}

body.ap-account-studio .aporders-head p {
	margin: 7px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .aporders-shop-button {
	flex: 0 0 auto;
	min-height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 0 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(78,115,90,0.025);
	color: #68746b !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporders-shop-button:hover {
	border-color: #d7ded3;
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .aporders-shop-button span {
	color: var(--apaccount-cyan);
	font-size: 14px;
	font-weight: 500;
}

/* Stats */
body.ap-account-studio .aporders-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

body.ap-account-studio .aporders-stat {
	min-width: 0;
	padding: 14px 15px;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .aporders-stat span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporders-stat strong {
	display: block;
	margin-top: 7px;
	color: var(--apaccount-cyan);
	font-size: 19px;
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -.03em;
}

body.ap-account-studio .aporders-stat strong .woocommerce-Price-currencySymbol {
	font-size: .68em;
}

/* Filter bar */
body.ap-account-studio .aporders-filters {
	display: flex;
	align-items: center;
	gap: 5px;
	overflow-x: auto;
	padding: 5px;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
	scrollbar-width: none;
}

body.ap-account-studio .aporders-filters::-webkit-scrollbar {
	display: none;
}

body.ap-account-studio .aporders-filters a {
	flex: 0 0 auto;
	min-height: 37px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 11px;
	border: 1px solid transparent;
	border-radius: 7px;
	color: #68746b !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
	transition:
		border-color .16s ease,
		background .16s ease,
		color .16s ease;
}

body.ap-account-studio .aporders-filters a b {
	min-width: 20px;
	height: 20px;
	display: inline-grid;
	place-items: center;
	padding: 0 5px;
	border-radius: 999px;
	background: #f3f5ed;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .aporders-filters a:hover,
body.ap-account-studio .aporders-filters a.is-active {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.045);
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .aporders-filters a.is-active b {
	background: rgba(78,115,90,0.09);
	color: var(--apaccount-cyan);
}

/* Order list */
body.ap-account-studio .aporders-list {
	display: grid;
	gap: 10px;
}

body.ap-account-studio .aporder-card {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.2),
			rgba(220,227,213,0.2)
		);
	transition:
		border-color .18s ease,
		transform .18s ease,
		background .18s ease;
}

body.ap-account-studio .aporder-card:hover {
	transform: translateY(-1px);
	border-color: #d7ded3;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.24300000000000002),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .aporder-card-top {
	display: grid;
	grid-template-columns:
		minmax(110px, .7fr)
		minmax(330px, 2fr)
		auto;
	gap: 18px;
	align-items: center;
	padding: 15px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .aporder-number span,
body.ap-account-studio .aporder-meta span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporder-number strong {
	display: block;
	margin-top: 5px;
	color: #24392d;
	font-size: 14px;
	font-weight: 600;
}

body.ap-account-studio .aporder-meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

body.ap-account-studio .aporder-meta > div {
	min-width: 0;
	padding-left: 12px;
	border-left: 1px solid #d7ded3;
}

body.ap-account-studio .aporder-meta strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	line-height: 1.35;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .aporder-status {
	min-height: 29px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.035);
	color: #295b51;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: nowrap;
}

body.ap-account-studio .aporder-status i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 8px currentColor;
}

body.ap-account-studio .aporder-status-completed {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.035);
	color: #24392d;
}

body.ap-account-studio .aporder-status-cancelled,
body.ap-account-studio .aporder-status-refunded {
	border-color: #d7ded3;
	background: #f3f5ed;
	color: #68746b;
}

body.ap-account-studio .aporder-status-failed {
	border-color: #d7ded3;
	background: rgba(255, 124, 124, .03);
	color: #934630;
}

body.ap-account-studio .aporder-status-pending,
body.ap-account-studio .aporder-status-on-hold {
	border-color: #d7ded3;
	background: rgba(255, 211, 105, .03);
	color: #EFD68C;
}

body.ap-account-studio .aporder-card-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	padding: 15px 17px;
}

body.ap-account-studio .aporder-products {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

body.ap-account-studio .aporder-product-media {
	display: flex;
	flex: 0 0 auto;
}

body.ap-account-studio .aporder-thumb {
	position: relative;
	width: 54px;
	height: 54px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: #f9faf4;
}

body.ap-account-studio .aporder-thumb + .aporder-thumb {
	margin-left: -13px;
	box-shadow: -5px 0 12px rgba(24,34,29,0.1);
}

body.ap-account-studio .aporder-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.ap-account-studio .aporder-product-copy {
	min-width: 0;
}

body.ap-account-studio .aporder-product-copy > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporder-product-copy > strong {
	display: -webkit-box;
	max-width: 700px;
	margin-top: 5px;
	overflow: hidden;
	color: #24392d;
	font-size: 11px;
	line-height: 1.45;
	font-weight: 600;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.ap-account-studio .aporder-product-copy > small {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	font-weight: 700;
}

body.ap-account-studio .aporder-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 6px;
}

body.ap-account-studio .aporder-action {
	min-height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 11px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(78,115,90,0.025);
	color: #68746b !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
	text-transform: uppercase;
}

body.ap-account-studio .aporder-action:hover {
	border-color: #d7ded3;
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .aporder-action-view {
	min-width: 82px;
	border-color: #d7ded3;
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .aporder-action-pay {
	background: var(--apaccount-cyan);
	border-color: var(--apaccount-cyan);
	color: #24392d !important;
}

body.ap-account-studio .aporder-action-pay:hover {
	color: #24392d !important;
	filter: brightness(1.03);
}

body.ap-account-studio .aporder-action-cancel {
	border-color: #d7ded3;
	color: #934630 !important;
}

body.ap-account-studio .aporder-action-cancel:hover {
	border-color: #d7ded3;
	color: #934630 !important;
}

/* Pagination */
body.ap-account-studio .aporders-pagination {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 14px;
	padding: 10px 0 0;
}

body.ap-account-studio .aporders-pagination > span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporders-pagination > span strong {
	color: #68746b;
}

body.ap-account-studio .aporders-pagination a {
	min-height: 36px;
	display: inline-flex;
	align-items: center;
	padding: 0 11px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	color: #68746b !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .aporders-page-prev {
	justify-self: start;
}

body.ap-account-studio .aporders-page-next {
	justify-self: end;
}

/* Empty state */
body.ap-account-studio .aporders-empty {
	display: grid;
	place-items: center;
	min-height: 320px;
	padding: 38px 20px;
	border: 1px dashed #d7ded3;
	border-radius: 12px;
	background: rgba(220,227,213,0.2);
	text-align: center;
}

body.ap-account-studio .aporders-empty > span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporders-empty h3 {
	margin: 10px 0 0;
	color: #24392d;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: -.025em;
}

body.ap-account-studio .aporders-empty p {
	max-width: 460px;
	margin: 8px 0 17px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .aporders-empty a {
	min-height: 42px;
	display: inline-flex;
	align-items: center;
	gap: 18px;
	padding: 0 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	color: var(--apaccount-cyan) !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

/* WooCommerce email-verification / account notices on Orders */
body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-message,
body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 58px;
	margin: 0 0 14px !important;
	padding: 12px 14px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 10px;
	background:
		linear-gradient(
			90deg,
			rgba(78,115,90,0.035),
			rgba(220,227,213,0.2)
		) !important;
	color: #68746b !important;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-message::before,
body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-info::before {
	position: static !important;
	flex: 0 0 auto;
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-message .button,
body.ap-account-studio .apaccount-main
.woocommerce-MyAccount-content
.woocommerce-info .button {
	order: 2;
	float: none !important;
	min-height: 38px;
	display: inline-flex;
	align-items: center;
	padding: 0 11px;
	border: 1px solid #d7ded3 !important;
	border-radius: 7px;
	background: rgba(78,115,90,0.025) !important;
	color: var(--apaccount-cyan) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .08em !important;
	white-space: nowrap;
}

/* Hide legacy orders table only when our new order center is present. */
body.ap-account-studio .aporders ~ .woocommerce-orders-table {
	display: none !important;
}

@media (max-width: 1100px) {
	body.ap-account-studio .aporders-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .aporder-card-top {
		grid-template-columns: minmax(100px, .65fr) minmax(0, 2fr);
	}

	body.ap-account-studio .aporder-status {
		grid-column: 1 / -1;
		justify-self: start;
	}
}

@media (max-width: 760px) {
	body.ap-account-studio .aporders-head {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .aporder-card-top,
	body.ap-account-studio .aporder-card-body {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .aporder-meta {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.ap-account-studio .aporder-actions {
		justify-content: flex-start;
	}

	body.ap-account-studio .aporder-action {
		flex: 1 1 auto;
	}

	body.ap-account-studio .aporders-pagination {
		grid-template-columns: 1fr 1fr;
	}

	body.ap-account-studio .aporders-pagination > span {
		grid-column: 1 / -1;
		grid-row: 1;
		text-align: center;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .aporders-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .aporders-head,
	body.ap-account-studio .aporder-card-top,
	body.ap-account-studio .aporder-card-body {
		padding-left: 14px;
		padding-right: 14px;
	}

	body.ap-account-studio .aporder-meta {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .aporder-meta > div {
		padding:
			7px
			0
			0;
		border-left: 0;
		border-top: 1px solid #d7ded3;
	}

	body.ap-account-studio .aporder-products {
		align-items: flex-start;
	}

	body.ap-account-studio .aporder-product-media {
		max-width: 105px;
		flex-wrap: wrap;
	}

	body.ap-account-studio .aporder-thumb {
		width: 48px;
		height: 48px;
	}

	body.ap-account-studio .aporder-thumb + .aporder-thumb {
		margin-left: -9px;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.16
   PROFESSIONAL SINGLE ORDER DETAIL
   ============================================================ */

body.ap-account-studio .aporderdetail {
	display: grid;
	gap: 14px;
	padding-bottom: 52px;
}

body.ap-account-studio .aporderdetail-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	padding: 20px;
	border: 1px solid #d7ded3;
	border-radius: 13px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.038),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .aporderdetail-head-copy {
	min-width: 0;
}

body.ap-account-studio .aporderdetail-back {
	display: inline-flex;
	align-items: center;
	margin-bottom: 18px;
	color: #68746b !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
	text-decoration: none;
}

body.ap-account-studio .aporderdetail-back:hover {
	color: var(--apaccount-cyan) !important;
}

body.ap-account-studio .aporderdetail-head-copy > span,
body.ap-account-studio .aporderdetail-section-head span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporderdetail-head h2 {
	margin: 7px 0 0 !important;
	color: #24392d !important;
	font-size: 28px !important;
	line-height: 1 !important;
	font-weight: 600 !important;
	letter-spacing: -.045em !important;
}

body.ap-account-studio .aporderdetail-head-copy > p {
	margin: 9px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .aporderdetail-head-copy > p strong {
	color: #24392d;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-head-side {
	flex: 0 0 auto;
	display: flex;
	align-items: flex-end;
	gap: 14px;
}

body.ap-account-studio .aporderdetail-total {
	min-width: 150px;
	padding-left: 16px;
	border-left: 1px solid #d7ded3;
	text-align: right;
}

body.ap-account-studio .aporderdetail-total span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporderdetail-total strong {
	display: block;
	margin-top: 6px;
	color: var(--apaccount-cyan);
	font-size: 19px;
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -.025em;
}

/* ------------------------------------------------------------
   Generic detail panels
   ------------------------------------------------------------ */

body.ap-account-studio .aporderdetail-panel,
body.ap-account-studio .aporderdetail-progress-card {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.2),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .aporderdetail-section-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding: 17px 18px 15px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .aporderdetail-section-head h3 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 18px !important;
	line-height: 1.1 !important;
	font-weight: 600 !important;
	letter-spacing: -.03em !important;
}

body.ap-account-studio .aporderdetail-section-head > p {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .aporderdetail-section-head > p strong {
	color: var(--apaccount-cyan);
	font-weight: 600;
}

/* ------------------------------------------------------------
   Progress tracker
   ------------------------------------------------------------ */

body.ap-account-studio .aporder-progress {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding: 30px 34px 25px;
}

body.ap-account-studio .aporder-progress-line {
	position: absolute;
	top: 42px;
	left: calc(12.5% + 17px);
	right: calc(12.5% + 17px);
	height: 2px;
	overflow: hidden;
	background: rgba(78,115,90,0.09);
}

body.ap-account-studio .aporder-progress-line span {
	display: block;
	width:
		calc(
			(
				var(--ap-order-step) - 1
			)
			/ 3
			* 100%
		);
	height: 100%;
	background:
		linear-gradient(
			90deg,
			#d9eee4,
			#d9eee4
		);
	box-shadow:
		0 0 12px rgba(24,34,29,0.1);
	transition:
		width .4s ease;
}

body.ap-account-studio .aporder-progress-step {
	position: relative;
	z-index: 2;
	min-width: 0;
	display: grid;
	justify-items: center;
	text-align: center;
}

body.ap-account-studio .aporder-progress-dot {
	width: 27px;
	height: 27px;
	display: grid;
	place-items: center;
	border: 2px solid #d7ded3;
	border-radius: 50%;
	background: #f9faf4;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .aporder-progress-step.is-complete
.aporder-progress-dot {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
	box-shadow:
		0 0 0 5px rgba(24,34,29,0.035);
}

body.ap-account-studio .aporder-progress-step.is-current
.aporder-progress-dot {
	border-color: var(--apaccount-cyan);
	color: var(--apaccount-cyan);
	box-shadow:
		0 0 0 5px rgba(24,34,29,0.04),
		0 0 14px rgba(24,34,29,0.1);
}

body.ap-account-studio .aporder-progress-step > strong {
	display: block;
	margin-top: 10px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporder-progress-step.is-complete > strong,
body.ap-account-studio .aporder-progress-step.is-current > strong {
	color: #24392d;
}

body.ap-account-studio .aporder-progress-step > small {
	display: block;
	margin-top: 4px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .aporder-progress-step.is-current > small {
	color: var(--apaccount-cyan);
}

body.ap-account-studio .aporderdetail-progress-actions {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 7px;
	padding: 0 18px 18px;
}

body.ap-account-studio .aporderdetail-exception {
	margin: 20px;
	padding: 17px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: rgba(255, 132, 132, .025);
}

body.ap-account-studio .aporderdetail-exception span {
	display: block;
	color: #934630;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporderdetail-exception strong {
	display: block;
	margin-top: 7px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
	font-weight: 700;
}

body.ap-account-studio .aporderdetail-exception-refunded {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .aporderdetail-exception-refunded span {
	color: var(--apaccount-cyan);
}

/* ------------------------------------------------------------
   Main content grid
   ------------------------------------------------------------ */

body.ap-account-studio .aporderdetail-main-grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1.55fr)
		minmax(300px, .75fr);
	gap: 14px;
	align-items: start;
}

body.ap-account-studio .aporderdetail-product-list {
	display: grid;
}

body.ap-account-studio .aporderdetail-product {
	display: grid;
	grid-template-columns:
		72px
		minmax(0, 1fr)
		auto;
	gap: 14px;
	align-items: center;
	padding: 15px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .aporderdetail-product:last-child {
	border-bottom: 0;
}

body.ap-account-studio .aporderdetail-product-image {
	width: 72px;
	height: 72px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: #f9faf4;
}

body.ap-account-studio .aporderdetail-product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.ap-account-studio .aporderdetail-product-copy {
	min-width: 0;
}

body.ap-account-studio .aporderdetail-product-copy > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .aporderdetail-product-copy > strong {
	display: block;
	margin-top: 6px;
	color: #24392d;
	font-size: 11px;
	line-height: 1.45;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-product-copy > small,
body.ap-account-studio .aporderdetail-product-copy
.wc-item-meta {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .aporderdetail-product-copy
.wc-item-meta {
	padding: 0;
	list-style: none;
}

body.ap-account-studio .aporderdetail-product-copy
.wc-item-meta li {
	margin: 0;
}

body.ap-account-studio .aporderdetail-product-price {
	min-width: 105px;
	text-align: right;
}

body.ap-account-studio .aporderdetail-product-price span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporderdetail-product-price strong {
	display: block;
	margin-top: 6px;
	color: var(--apaccount-cyan);
	font-size: 12px;
	font-weight: 600;
}

/* ------------------------------------------------------------
   Order summary
   ------------------------------------------------------------ */

body.ap-account-studio .aporderdetail-summary-rows {
	padding: 7px 17px;
}

body.ap-account-studio .aporderdetail-summary-rows > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 43px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .aporderdetail-summary-rows > div:last-child {
	border-bottom: 0;
}

body.ap-account-studio .aporderdetail-summary-rows span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-summary-rows strong {
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	text-align: right;
}

body.ap-account-studio .aporderdetail-summary-rows
.is-grand-total {
	min-height: 55px;
}

body.ap-account-studio .aporderdetail-summary-rows
.is-grand-total span {
	color: #68746b;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-summary-rows
.is-grand-total strong {
	color: var(--apaccount-cyan);
	font-size: 15px;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-methods {
	display: grid;
	gap: 8px;
	padding: 14px 17px 17px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .aporderdetail-methods > div {
	padding: 10px 11px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .aporderdetail-methods span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporderdetail-methods strong {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
	font-weight: 600;
}

/* ------------------------------------------------------------
   Addresses
   ------------------------------------------------------------ */

body.ap-account-studio .aporderdetail-address-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

body.ap-account-studio .aporderdetail-address-body {
	padding: 17px 18px 18px;
}

body.ap-account-studio .aporderdetail-address address {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
	font-style: normal;
}

body.ap-account-studio .aporderdetail-address-body > p {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .aporderdetail-contact {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: 15px;
	padding-top: 14px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .aporderdetail-contact > div {
	min-width: 0;
}

body.ap-account-studio .aporderdetail-contact span,
body.ap-account-studio .aporderdetail-pickup > span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporderdetail-contact strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .aporderdetail-pickup {
	padding: 2px 0;
}

body.ap-account-studio .aporderdetail-pickup strong {
	display: block;
	margin-top: 8px;
	color: #24392d;
	font-size: 15px;
	font-weight: 600;
}

body.ap-account-studio .aporderdetail-pickup p {
	max-width: 520px;
	margin: 7px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

/* ------------------------------------------------------------
   Notes / updates
   ------------------------------------------------------------ */

body.ap-account-studio .aporderdetail-updates-list {
	display: grid;
	padding: 4px 18px 18px;
}

body.ap-account-studio .aporderdetail-updates-list article {
	position: relative;
	display: grid;
	grid-template-columns: 13px minmax(0, 1fr);
	gap: 10px;
	padding: 13px 0 0;
}

body.ap-account-studio .aporderdetail-updates-list article::before {
	content: "";
	position: absolute;
	top: 20px;
	bottom: -13px;
	left: 4px;
	width: 1px;
	background: rgba(78,115,90,0.09);
}

body.ap-account-studio .aporderdetail-updates-list article:last-child::before {
	display: none;
}

body.ap-account-studio .aporderdetail-updates-list i {
	position: relative;
	z-index: 2;
	width: 9px;
	height: 9px;
	margin-top: 3px;
	border: 2px solid var(--apaccount-cyan);
	border-radius: 50%;
	background: #f9faf4;
}

body.ap-account-studio .aporderdetail-updates-list span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .aporderdetail-updates-list p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

/* ------------------------------------------------------------
   Responsive
   ------------------------------------------------------------ */

@media (max-width: 1050px) {
	body.ap-account-studio .aporderdetail-main-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 820px) {
	body.ap-account-studio .aporderdetail-head {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .aporderdetail-head-side {
		width: 100%;
		justify-content: space-between;
	}

	body.ap-account-studio .aporderdetail-address-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .aporder-progress {
		padding-left: 12px;
		padding-right: 12px;
	}

	body.ap-account-studio .aporder-progress-line {
		left: calc(12.5% + 10px);
		right: calc(12.5% + 10px);
	}
}

@media (max-width: 640px) {
	body.ap-account-studio .aporderdetail-product {
		grid-template-columns:
			62px
			minmax(0, 1fr);
	}

	body.ap-account-studio .aporderdetail-product-image {
		width: 62px;
		height: 62px;
	}

	body.ap-account-studio .aporderdetail-product-price {
		grid-column: 2;
		min-width: 0;
		text-align: left;
	}

	body.ap-account-studio .aporderdetail-contact {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .aporder-progress {
		grid-template-columns: 1fr;
		gap: 13px;
		padding: 18px;
	}

	body.ap-account-studio .aporder-progress-line {
		top: 30px;
		bottom: 30px;
		left: 31px;
		right: auto;
		width: 2px;
		height: auto;
	}

	body.ap-account-studio .aporder-progress-line span {
		width: 100%;
		height:
			calc(
				(
					var(--ap-order-step) - 1
				)
				/ 3
				* 100%
			);
	}

	body.ap-account-studio .aporder-progress-step {
		grid-template-columns: 28px minmax(0, 1fr);
		grid-template-rows: auto auto;
		justify-items: start;
		column-gap: 12px;
		text-align: left;
	}

	body.ap-account-studio .aporder-progress-dot {
		grid-row: 1 / 3;
	}

	body.ap-account-studio .aporder-progress-step > strong {
		margin-top: 2px;
	}

	body.ap-account-studio .aporder-progress-step > small {
		margin-top: 2px;
	}
}

@media (max-width: 480px) {
	body.ap-account-studio .aporderdetail-head,
	body.ap-account-studio .aporderdetail-section-head,
	body.ap-account-studio .aporderdetail-product,
	body.ap-account-studio .aporderdetail-address-body {
		padding-left: 14px;
		padding-right: 14px;
	}

	body.ap-account-studio .aporderdetail-head-side {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .aporderdetail-total {
		width: 100%;
		padding:
			10px
			0
			0;
		border:
			0;
		border-top:
			1px solid
			#d7ded3;
		text-align: left;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.17
   RESPONSIVE ADD / EDIT MOTORCYCLE FORM GRID
   ============================================================ */

/* Desktop: compact motorcycle fields in a clean two-column grid. */
body.ap-account-studio .apaccount-main
.apaccount-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    align-items: start;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field {
    min-width: 0;
    margin: 0;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field-wide {
    grid-column: 1 / -1;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field label {
    display: block;
    margin: 0 0 8px;
    color: #68746b;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .08em;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field input,
body.ap-account-studio .apaccount-main
.apaccount-form-field select,
body.ap-account-studio .apaccount-main
.apaccount-form-field textarea {
    margin: 0 !important;
}

/* Slight visual separation without turning every field into a heavy card. */
body.ap-account-studio .apaccount-main
.apaccount-form-grid
.apaccount-form-field:not(.apaccount-form-field-wide) {
    padding: 0;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field-wide
input[type="file"] {
    min-height: 54px;
}

body.ap-account-studio .apaccount-main
.apaccount-form-field-wide textarea {
    min-height: 126px;
}

body.ap-account-studio .apaccount-main
.apaccount-form-grid + .apaccount-card-actions {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #d7ded3;
}

/* Tablet: keep two columns while there is enough usable content width. */
@media (max-width: 900px) {
    body.ap-account-studio .apaccount-main
    .apaccount-form-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-field-wide {
        grid-column: auto;
    }
}

/* Mobile: one field at a time, clear step-by-step flow. */
@media (max-width: 640px) {
    body.ap-account-studio .apaccount-main
    .apaccount-panel-head {
        padding: 20px 16px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-panel-body {
        padding: 16px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 15px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-field,
    body.ap-account-studio .apaccount-main
    .apaccount-form-field-wide {
        width: 100%;
        grid-column: 1;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-field input,
    body.ap-account-studio .apaccount-main
    .apaccount-form-field select {
        min-height: 50px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-grid + .apaccount-card-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 20px;
    }

    body.ap-account-studio .apaccount-main
    .apaccount-form-grid + .apaccount-card-actions
    .apaccount-button,
    body.ap-account-studio .apaccount-main
    .apaccount-form-grid + .apaccount-card-actions
    button {
        width: 100% !important;
    }
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.18
   INLINE APPOINTMENT BOOKING
   ============================================================ */

body.ap-account-studio .apappointments {
	display: grid;
	gap: 14px;
}

body.ap-account-studio .apappointments [hidden] {
	display: none !important;
}

body.ap-account-studio .apappointments-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
}

body.ap-account-studio .apappointments-head > div {
	min-width: 0;
}

body.ap-account-studio .apappointments-head > .apaccount-button {
	flex: 0 0 auto;
}

body.ap-account-studio .apappointments-head
.apaccount-button:disabled {
	cursor: not-allowed;
	opacity: .34;
}

body.ap-account-studio .apappointments-list {
	display: grid;
	gap: 10px;
}

body.ap-account-studio .apappointments-empty {
	min-height: 250px;
	display: grid;
	place-items: center;
	align-content: center;
	padding: 32px;
	border: 1px dashed #d7ded3;
	border-radius: 11px;
	background: rgba(220,227,213,0.2);
	text-align: center;
}

body.ap-account-studio .apappointments-empty > span,
body.ap-account-studio .apappointments-garage-warning span,
body.ap-account-studio .apappointments-success > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-empty > strong,
body.ap-account-studio .apappointments-garage-warning strong,
body.ap-account-studio .apappointments-success > strong {
	display: block;
	margin-top: 9px;
	color: #24392d;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: -.02em;
}

body.ap-account-studio .apappointments-empty > p,
body.ap-account-studio .apappointments-garage-warning p,
body.ap-account-studio .apappointments-success > p {
	max-width: 620px;
	margin: 7px auto 17px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.65;
}

body.ap-account-studio .apappointments-garage-warning {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 14px;
	padding: 17px;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(255, 211, 105, .025);
}

body.ap-account-studio .apappointments-garage-warning > div {
	min-width: 0;
}

body.ap-account-studio .apappointments-garage-warning span {
	color: #EFD68C;
}

body.ap-account-studio .apappointments-garage-warning strong {
	margin-top: 5px;
	font-size: 13px;
}

body.ap-account-studio .apappointments-garage-warning p {
	margin:
		5px
		0
		0;
}

/* Appointment cards */
body.ap-account-studio .apappointment-card {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.2),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apappointment-card-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 15px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-card-top > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointment-card-top h3 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 15px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
	letter-spacing: -.02em !important;
}

body.ap-account-studio .apappointment-status {
	flex: 0 0 auto;
	min-height: 28px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0 9px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.035);
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
	white-space: nowrap;
}

body.ap-account-studio .apappointment-status i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 8px currentColor;
}

body.ap-account-studio .apappointment-status-completed {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.035);
	color: #24392d;
}

body.ap-account-studio .apappointment-status-cancelled {
	border-color: #d7ded3;
	background: rgba(255, 140, 140, .028);
	color: #934630;
}

body.ap-account-studio .apappointment-status-confirmed {
	border-color: #d7ded3;
	color: #24392d;
}

body.ap-account-studio .apappointment-status-in_workshop {
	border-color: #d7ded3;
	background: rgba(255, 211, 105, .026);
	color: #EFD68C;
}

body.ap-account-studio .apappointment-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apappointment-card-grid > div {
	min-width: 0;
	padding: 13px 16px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-card-grid > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apappointment-card-grid span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apappointment-card-grid strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Inline booking form */
body.ap-account-studio .apappointments-form-panel.is-entering,
body.ap-account-studio .apappointments-list-panel.is-entering {
	animation:
		apappointments-enter
		.24s
		ease
		both;
}

@keyframes apappointments-enter {
	from {
		opacity: 0;
		transform: translateX(12px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

body.ap-account-studio .apappointments-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px 17px;
}

body.ap-account-studio .apappointments-field {
	min-width: 0;
}

body.ap-account-studio .apappointments-field-wide {
	grid-column: 1 / -1;
}

body.ap-account-studio .apappointments-field label {
	display: block;
	margin: 0 0 8px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
	text-transform: uppercase;
}

body.ap-account-studio .apappointments-field
input,
body.ap-account-studio .apappointments-field
select,
body.ap-account-studio .apappointments-field
textarea {
	width: 100% !important;
	margin: 0 !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 8px !important;
	outline: none !important;
	background: rgba(220,227,213,0.234) !important;
	color: #24392d !important;
	box-shadow: none !important;
	font-family: inherit;
	font-size: 12px !important;
	transition:
		border-color .18s ease,
		background .18s ease,
		box-shadow .18s ease;
}

body.ap-account-studio .apappointments-field
input,
body.ap-account-studio .apappointments-field
select {
	min-height: 50px !important;
	padding: 0 13px !important;
}

body.ap-account-studio .apappointments-field
textarea {
	min-height: 130px;
	padding: 13px !important;
	line-height: 1.6;
	resize: vertical;
}

body.ap-account-studio .apappointments-field
input:focus,
body.ap-account-studio .apappointments-field
select:focus,
body.ap-account-studio .apappointments-field
textarea:focus {
	border-color: #d7ded3 !important;
	background: rgba(220,227,213,0.333) !important;
	box-shadow:
		0 0 0 3px rgba(24,34,29,0.035) !important;
}

body.ap-account-studio .apappointments-field small {
	display: block;
	margin-top: 6px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apappointments-form-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 20px;
	padding-top: 17px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apappointments-form-message {
	margin-bottom: 15px;
	padding: 11px 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(255, 145, 145, .03);
	color: #934630;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apappointments-success {
	min-height: 300px;
	display: grid;
	place-items: center;
	align-content: center;
	padding: 36px;
	text-align: center;
}

body.ap-account-studio .apappointments-success > strong {
	color: var(--apaccount-cyan);
	font-size: 23px;
	letter-spacing: -.02em;
}

@media (max-width: 900px) {
	body.ap-account-studio .apappointment-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apappointment-card-grid > div:nth-child(2) {
		border-right: 0;
	}

	body.ap-account-studio .apappointment-card-grid > div:nth-child(-n+2) {
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apappointments-form-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointments-field-wide {
		grid-column: auto;
	}
}

@media (max-width: 640px) {
	body.ap-account-studio .apappointments-head,
	body.ap-account-studio .apappointments-garage-warning {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apappointments-head > .apaccount-button,
	body.ap-account-studio .apappointments-garage-warning > .apaccount-button {
		width: 100%;
	}

	body.ap-account-studio .apappointment-card-top {
		flex-direction: column;
	}

	body.ap-account-studio .apappointment-card-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointment-card-grid > div,
	body.ap-account-studio .apappointment-card-grid > div:nth-child(2) {
		border-right: 0;
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apappointment-card-grid > div:last-child {
		border-bottom: 0;
	}

	body.ap-account-studio .apappointments-form-actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointments-form-actions
	.apaccount-button {
		width: 100%;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.19
   SHARED LIVE WORKSHOP SLOT SELECTOR
   ============================================================ */

body.ap-account-studio .apappointments-slot-section {
	margin-top: 7px;
	padding: 22px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.24300000000000002),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apappointments-slot-title {
	display: flex;
	align-items: center;
	gap: 15px;
	padding-bottom: 18px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apappointments-slot-title > span {
	width: 40px;
	height: 40px;
	display: grid;
	place-items: center;
	flex: 0 0 40px;
	border: 1px solid #d7ded3;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .05em;
}

body.ap-account-studio .apappointments-slot-title small {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-slot-title strong {
	display: block;
	margin-top: 5px;
	color: #24392d;
	font-size: 14px;
	line-height: 1.35;
	font-weight: 600;
}

body.ap-account-studio .apappointments-slot-intro {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin: 19px 0 20px;
}

body.ap-account-studio .apappointments-slot-intro p {
	max-width: 660px;
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
}

body.ap-account-studio .apappointments-slot-intro > span {
	flex: 0 0 auto;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
	white-space: nowrap;
}

body.ap-account-studio .apappointments-slot-intro i {
	display: inline-block;
	width: 5px;
	height: 5px;
	margin-right: 7px;
	border-radius: 50%;
	background: var(--apaccount-cyan);
	box-shadow:
		0 0 9px rgba(24,34,29,0.1);
}

body.ap-account-studio .apappointments-date-selector {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr) 40px;
	align-items: center;
	gap: 9px;
}

body.ap-account-studio .apappointments-date-arrow {
	width: 40px;
	height: 40px;
	border: 1px solid #d7ded3;
	border-radius: 0;
	background: transparent;
	color: var(--apaccount-cyan);
	cursor: pointer;
	font: inherit;
	transition:
		border-color .18s ease,
		background .18s ease;
}

body.ap-account-studio .apappointments-date-arrow:hover {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.035);
}

body.ap-account-studio .apappointments-date-track {
	min-width: 0;
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding: 2px 1px 6px;
	scrollbar-width: none;
}

body.ap-account-studio .apappointments-date-track::-webkit-scrollbar {
	display: none;
}

body.ap-account-studio .apappointments-date-card {
	flex: 0 0 88px;
	height: 100px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	padding: 12px 10px;
	border: 1px solid #d7ded3;
	border-radius: 0;
	background: #f9faf4;
	color: #24392d;
	cursor: pointer;
	font-family: inherit;
	text-align: left;
	transition:
		border-color .18s ease,
		background .18s ease,
		transform .18s ease;
}

body.ap-account-studio .apappointments-date-card:hover {
	transform: translateY(-1px);
	border-color: #d7ded3;
}

body.ap-account-studio .apappointments-date-card small {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-date-card strong {
	font-size: 27px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: -.03em;
}

body.ap-account-studio .apappointments-date-card span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-date-card.is-selected {
	border-color: var(--apaccount-cyan);
	background: rgba(78,115,90,0.075);
	box-shadow:
		inset 0 0 24px rgba(24,34,29,0.025);
}

body.ap-account-studio .apappointments-slot-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 25px 0 11px;
}

body.ap-account-studio .apappointments-slot-heading > span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-slot-heading small {
	color: #68746b;
	font-size: 11px;
	font-weight: 700;
}

body.ap-account-studio .apappointments-slot-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

body.ap-account-studio .apappointments-slot-card {
	min-height: 70px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-radius: 0;
	background: #f9faf4;
	color: #24392d;
	cursor: pointer;
	font-family: inherit;
	text-align: left;
	transition:
		border-color .18s ease,
		background .18s ease,
		transform .18s ease;
}

body.ap-account-studio .apappointments-slot-card:hover {
	transform: translateY(-1px);
	border-color: #d7ded3;
}

body.ap-account-studio .apappointments-slot-card.is-selected {
	border-color: var(--apaccount-cyan);
	background: rgba(78,115,90,0.075);
}

body.ap-account-studio .apappointments-slot-card > span {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

body.ap-account-studio .apappointments-slot-card strong {
	color: #24392d;
	font-size: 11px;
	line-height: 1.35;
	font-weight: 600;
	white-space: nowrap;
}

body.ap-account-studio .apappointments-slot-card small {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointments-slot-card b {
	color: var(--apaccount-cyan);
	font-size: 15px;
	font-weight: 500;
}

body.ap-account-studio .apappointments-slot-loading,
body.ap-account-studio .apappointments-slot-empty {
	grid-column: 1 / -1;
	min-height: 72px;
	display: grid;
	place-items: center;
	padding: 18px;
	border: 1px dashed #d7ded3;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
	text-align: center;
}

@media (max-width: 1180px) {
	body.ap-account-studio .apappointments-slot-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	body.ap-account-studio .apappointments-slot-section {
		padding: 17px 15px;
	}

	body.ap-account-studio .apappointments-slot-intro {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apappointments-date-selector {
		grid-template-columns: 36px minmax(0, 1fr) 36px;
	}

	body.ap-account-studio .apappointments-date-arrow {
		width: 36px;
		height: 36px;
	}

	body.ap-account-studio .apappointments-date-card {
		flex-basis: 78px;
		height: 94px;
	}

	body.ap-account-studio .apappointments-date-card strong {
		font-size: 24px;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apappointments-slot-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointments-slot-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
	}

	body.ap-account-studio .apappointments-slot-card {
		min-height: 64px;
	}

	body.ap-account-studio .apappointments-slot-title strong {
		font-size: 13px;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.20
   APPOINTMENT LIFECYCLE + SAME-PAGE DETAILS
   ============================================================ */

body.ap-account-studio .apappointments-detail-panel.is-entering {
	animation:
		apappointments-enter
		.24s
		ease
		both;
}

body.ap-account-studio .apappointment-card-v120 {
	position: relative;
}

body.ap-account-studio .apappointment-card-progress {
	padding: 12px 17px 5px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-card-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 12px 16px 14px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-card-actions > span {
	max-width: 720px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apappointment-card-actions .apaccount-button {
	flex: 0 0 auto;
}

body.ap-account-studio .apappointment-card-actions .apaccount-button i {
	margin-left: 8px;
	font-style: normal;
}

body.ap-account-studio .apappointment-card-grid strong small {
	color: #68746b;
	font-size: inherit;
	font-weight: 650;
}

/* ------------------------------------------------------------
   Shared lifecycle tracker
   ------------------------------------------------------------ */

body.ap-account-studio .apappointment-progress {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: start;
}

body.ap-account-studio .apappointment-progress-line {
	position: absolute;
	z-index: 0;
	top: 13px;
	left: 12.5%;
	right: 12.5%;
	height: 1px;
	background: rgba(78,115,90,0.09);
}

body.ap-account-studio .apappointment-progress-line span {
	display: block;
	width:
		calc(
			(
				var(--ap-appointment-step) - 1
			)
			/ 3
			* 100%
		);
	height: 100%;
	background: var(--apaccount-cyan);
	box-shadow:
		0 0 10px rgba(24,34,29,0.1);
}

body.ap-account-studio .apappointment-progress-step {
	position: relative;
	z-index: 1;
	min-width: 0;
	display: grid;
	justify-items: center;
	gap: 7px;
	text-align: center;
}

body.ap-account-studio .apappointment-progress-step > i {
	width: 27px;
	height: 27px;
	display: grid;
	place-items: center;
	border: 2px solid #d7ded3;
	border-radius: 50%;
	background: #f9faf4;
	color: #68746b;
	font-size: 11px;
	line-height: 1;
	font-weight: 600;
	font-style: normal;
}

body.ap-account-studio .apappointment-progress-step > strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .075em;
}

body.ap-account-studio .apappointment-progress-step.is-complete > i {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
}

body.ap-account-studio .apappointment-progress-step.is-complete > strong,
body.ap-account-studio .apappointment-progress-step.is-current > strong {
	color: #24392d;
}

body.ap-account-studio .apappointment-progress-step.is-current > i {
	border-color: var(--apaccount-cyan);
	color: var(--apaccount-cyan);
	box-shadow:
		0 0 0 5px rgba(24,34,29,0.035),
		0 0 12px rgba(24,34,29,0.1);
}

body.ap-account-studio .apappointment-progress.is-compact {
	min-height: 28px;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step > i {
	width: 17px;
	height: 17px;
	border-width: 1px;
	font-size: 11px;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-line {
	top: 8px;
}

body.ap-account-studio .apappointment-progress-cancelled {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 28px;
	color: #934630;
}

body.ap-account-studio .apappointment-progress-cancelled i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
	box-shadow:
		0 0 8px currentColor;
}

body.ap-account-studio .apappointment-progress-cancelled strong {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apappointment-progress-cancelled span {
	color: #68746b;
	font-size: 11px;
}

/* ------------------------------------------------------------
   Appointment details
   ------------------------------------------------------------ */

body.ap-account-studio .apappointments-detail-content {
	position: relative;
}

body.ap-account-studio .apappointments-detail-content.is-busy {
	pointer-events: none;
	opacity: .58;
}

body.ap-account-studio .apappointments-detail-loading,
body.ap-account-studio .apappointments-detail-error {
	min-height: 280px;
	display: grid;
	place-items: center;
	padding: 24px;
	border: 1px dashed #d7ded3;
	border-radius: 10px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
	text-align: center;
}

body.ap-account-studio .apappointments-detail-error {
	color: #934630;
}

body.ap-account-studio .apappointment-detail {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apappointment-detail-hero {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 22px;
	padding: 18px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.035),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apappointment-detail-hero > div > span,
body.ap-account-studio .apappointment-detail-section-head > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apappointment-detail-hero h3 {
	margin: 7px 0 0 !important;
	color: #24392d !important;
	font-size: 26px !important;
	line-height: 1 !important;
	font-weight: 600 !important;
	letter-spacing: -.035em !important;
}

body.ap-account-studio .apappointment-detail-hero p {
	margin: 8px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apappointment-detail-section {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apappointment-detail-section-head {
	padding: 15px 16px 13px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-detail-section-head h4 {
	margin: 5px 0 0 !important;
	color: #24392d !important;
	font-size: 15px !important;
	line-height: 1.25 !important;
	font-weight: 600 !important;
	letter-spacing: -.02em !important;
}

body.ap-account-studio .apappointment-detail-section
.apappointment-progress.is-full {
	padding: 24px 20px 20px;
}

body.ap-account-studio .apappointment-detail-summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apappointment-detail-summary > div {
	min-width: 0;
	padding: 14px 15px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apappointment-detail-summary > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apappointment-detail-summary span,
body.ap-account-studio .apappointment-bike-copy p span,
body.ap-account-studio .apappointment-request > div > span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apappointment-detail-summary strong {
	display: block;
	margin-top: 6px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apappointment-detail-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

body.ap-account-studio .apappointment-bike {
	display: grid;
	grid-template-columns: 90px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	padding: 15px;
}

body.ap-account-studio .apappointment-bike-media {
	width: 90px;
	height: 90px;
	display: grid;
	place-items: center;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: #f9faf4;
	color: var(--apaccount-cyan);
	font-size: 18px;
	font-weight: 600;
}

body.ap-account-studio .apappointment-bike-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.ap-account-studio .apappointment-bike-copy > strong {
	display: block;
	color: #24392d;
	font-size: 14px;
	line-height: 1.35;
	font-weight: 600;
}

body.ap-account-studio .apappointment-bike-copy > div {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px 13px;
	margin-top: 11px;
}

body.ap-account-studio .apappointment-bike-copy p {
	min-width: 0;
	margin: 0;
}

body.ap-account-studio .apappointment-bike-copy p b {
	display: block;
	margin-top: 4px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apappointment-request {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	padding: 15px;
}

body.ap-account-studio .apappointment-request > div {
	min-width: 0;
	padding: 11px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apappointment-request > div.is-wide {
	grid-column: 1 / -1;
}

body.ap-account-studio .apappointment-request strong {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
	font-weight: 600;
}

body.ap-account-studio .apappointment-request p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.65;
	white-space: pre-wrap;
}

body.ap-account-studio .apappointment-latest-update-body {
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr);
	gap: 11px;
	padding: 15px 16px 17px;
}

body.ap-account-studio .apappointment-latest-update-body > i {
	width: 9px;
	height: 9px;
	margin-top: 4px;
	border-radius: 50%;
	background: var(--apaccount-cyan);
	box-shadow:
		0 0 12px rgba(24,34,29,0.1);
}

body.ap-account-studio .apappointment-latest-update-body strong {
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apappointment-latest-update-body p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apappointment-activity {
	display: grid;
	padding: 4px 16px 17px;
}

body.ap-account-studio .apappointment-activity article {
	position: relative;
	display: grid;
	grid-template-columns: 14px minmax(0, 1fr);
	gap: 10px;
	padding-top: 14px;
}

body.ap-account-studio .apappointment-activity article::before {
	content: "";
	position: absolute;
	top: 23px;
	bottom: -15px;
	left: 4px;
	width: 1px;
	background: rgba(78,115,90,0.08);
}

body.ap-account-studio .apappointment-activity article:last-child::before {
	display: none;
}

body.ap-account-studio .apappointment-activity article > i {
	position: relative;
	z-index: 2;
	width: 9px;
	height: 9px;
	margin-top: 3px;
	border: 2px solid var(--apaccount-cyan);
	border-radius: 50%;
	background: #f9faf4;
}

body.ap-account-studio .apappointment-activity strong {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .04em;
}

body.ap-account-studio .apappointment-activity p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apappointment-activity small {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
}

body.ap-account-studio .apappointment-detail-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 8px;
	padding-top: 3px;
}

body.ap-account-studio .apappointment-cancel-button {
	border-color: #d7ded3 !important;
	color: #934630 !important;
}

body.ap-account-studio .apappointment-cancel-button:hover {
	border-color: #d7ded3 !important;
	background: rgba(255, 135, 135, .035) !important;
}

@media (max-width: 1050px) {
	body.ap-account-studio .apappointment-detail-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apappointment-detail-summary > div:nth-child(2) {
		border-right: 0;
	}

	body.ap-account-studio .apappointment-detail-summary > div:nth-child(-n+2) {
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apappointment-detail-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	body.ap-account-studio .apappointment-card-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apappointment-card-actions .apaccount-button {
		width: 100%;
	}

	body.ap-account-studio .apappointment-detail-hero {
		flex-direction: column;
	}

	body.ap-account-studio .apappointment-progress.is-full {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-line {
		top: 35px;
		bottom: 35px;
		left: 31px;
		right: auto;
		width: 1px;
		height: auto;
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-line span {
		width: 100%;
		height:
			calc(
				(
					var(--ap-appointment-step) - 1
				)
				/ 3
				* 100%
			);
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-step {
		grid-template-columns: 27px minmax(0, 1fr);
		justify-items: start;
		align-items: center;
		gap: 11px;
		text-align: left;
	}

	body.ap-account-studio .apappointment-detail-summary {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointment-detail-summary > div,
	body.ap-account-studio .apappointment-detail-summary > div:nth-child(2) {
		border-right: 0;
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apappointment-detail-summary > div:last-child {
		border-bottom: 0;
	}

	body.ap-account-studio .apappointment-bike {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	body.ap-account-studio .apappointment-bike-media {
		width: 72px;
		height: 72px;
	}

	body.ap-account-studio .apappointment-bike-copy > div {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointment-request {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointment-request > div.is-wide {
		grid-column: auto;
	}

	body.ap-account-studio .apappointment-detail-actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apappointment-detail-actions .apaccount-button {
		width: 100%;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apappointment-detail-hero h3 {
		font-size: 22px !important;
	}

	body.ap-account-studio .apappointment-progress.is-compact
	.apappointment-progress-step > i {
		width: 14px;
		height: 14px;
	}

	body.ap-account-studio .apappointment-progress.is-compact
	.apappointment-progress-line {
		top: 6px;
	}

	body.ap-account-studio .apappointment-card-progress {
		padding-left: 12px;
		padding-right: 12px;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.20.1
   APPOINTMENTS READABILITY PASS
   ============================================================ */

/*
 * The appointment list + details UI previously used several
 * 6px–9px labels. These values are now increased so the UI stays
 * premium while remaining comfortably readable on desktop/laptop.
 */

/* ------------------------------------------------------------
   Workshop bookings list
   ------------------------------------------------------------ */

body.ap-account-studio .apappointment-card-top > div > span {
	font-size: 11px !important;
	line-height: 1.4 !important;
	letter-spacing: .09em !important;
}

body.ap-account-studio .apappointment-card-top h3 {
	font-size: 18px !important;
	line-height: 1.3 !important;
}

body.ap-account-studio .apappointment-status {
	font-size: 11px !important;
	line-height: 1.2 !important;
	letter-spacing: .07em !important;
}

body.ap-account-studio .apappointment-card-grid > div > span {
	font-size: 11px !important;
	line-height: 1.4 !important;
	letter-spacing: .07em !important;
}

body.ap-account-studio .apappointment-card-grid > div > strong {
	font-size: 12px !important;
	line-height: 1.5 !important;
}

body.ap-account-studio .apappointment-card-grid strong small {
	font-size: 11px !important;
	line-height: 1.45 !important;
}

body.ap-account-studio .apappointment-card-actions > span {
	font-size: 11px !important;
	line-height: 1.65 !important;
}

body.ap-account-studio .apappointment-card-actions .apaccount-button {
	font-size: 11px !important;
}

/* Compact progress tracker */

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step > i {
	width: 20px !important;
	height: 20px !important;
	font-size: 11px !important;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-line {
	top: 9px !important;
}

body.ap-account-studio .apappointment-progress-cancelled strong {
	font-size: 11px !important;
}

body.ap-account-studio .apappointment-progress-cancelled span {
	font-size: 11px !important;
	line-height: 1.5 !important;
}

/* ------------------------------------------------------------
   View Details
   ------------------------------------------------------------ */

body.ap-account-studio .apappointment-detail-hero > div > span,
body.ap-account-studio .apappointment-detail-section-head > span {
	font-size: 11px !important;
	line-height: 1.45 !important;
	letter-spacing: .09em !important;
}

body.ap-account-studio .apappointment-detail-hero h3 {
	font-size: 30px !important;
	line-height: 1.05 !important;
}

body.ap-account-studio .apappointment-detail-hero p {
	font-size: 13px !important;
	line-height: 1.6 !important;
}

body.ap-account-studio .apappointment-detail-section-head h4 {
	font-size: 18px !important;
	line-height: 1.3 !important;
}

/* Full progress tracker labels */

body.ap-account-studio .apappointment-progress-step > i {
	width: 30px !important;
	height: 30px !important;
	font-size: 11px !important;
}

body.ap-account-studio .apappointment-progress-line {
	top: 14px !important;
}

body.ap-account-studio .apappointment-progress-step > strong {
	font-size: 11px !important;
	line-height: 1.4 !important;
	letter-spacing: .06em !important;
}

/* Summary cards */

body.ap-account-studio .apappointment-detail-summary span,
body.ap-account-studio .apappointment-bike-copy p span,
body.ap-account-studio .apappointment-request > div > span {
	font-size: 11px !important;
	line-height: 1.45 !important;
	letter-spacing: .07em !important;
}

body.ap-account-studio .apappointment-detail-summary strong {
	font-size: 12px !important;
	line-height: 1.5 !important;
}

/* Motorcycle section */

body.ap-account-studio .apappointment-bike-copy > strong {
	font-size: 17px !important;
	line-height: 1.4 !important;
}

body.ap-account-studio .apappointment-bike-copy p b {
	font-size: 11px !important;
	line-height: 1.5 !important;
}

/* Workshop request section */

body.ap-account-studio .apappointment-request strong {
	font-size: 12px !important;
	line-height: 1.5 !important;
}

body.ap-account-studio .apappointment-request p {
	font-size: 12px !important;
	line-height: 1.7 !important;
}

/* Latest update */

body.ap-account-studio .apappointment-latest-update-body strong {
	font-size: 12px !important;
	line-height: 1.4 !important;
}

body.ap-account-studio .apappointment-latest-update-body p {
	font-size: 12px !important;
	line-height: 1.7 !important;
}

/* Activity timeline */

body.ap-account-studio .apappointment-activity strong {
	font-size: 11px !important;
	line-height: 1.4 !important;
	letter-spacing: .04em !important;
}

body.ap-account-studio .apappointment-activity p {
	font-size: 12px !important;
	line-height: 1.65 !important;
}

body.ap-account-studio .apappointment-activity small {
	font-size: 11px !important;
	line-height: 1.5 !important;
}

/* ------------------------------------------------------------
   Booking form readability
   ------------------------------------------------------------ */

body.ap-account-studio .apappointments-field label {
	font-size: 11px !important;
	line-height: 1.45 !important;
	letter-spacing: .06em !important;
}

body.ap-account-studio .apappointments-field input,
body.ap-account-studio .apappointments-field select,
body.ap-account-studio .apappointments-field textarea {
	font-size: 13px !important;
	line-height: 1.5 !important;
}

body.ap-account-studio .apappointments-field small {
	font-size: 11px !important;
	line-height: 1.5 !important;
}

body.ap-account-studio .apappointments-slot-title small {
	font-size: 11px !important;
}

body.ap-account-studio .apappointments-slot-title strong {
	font-size: 16px !important;
	line-height: 1.4 !important;
}

body.ap-account-studio .apappointments-slot-intro p {
	font-size: 12px !important;
	line-height: 1.7 !important;
}

body.ap-account-studio .apappointments-slot-intro > span {
	font-size: 11px !important;
}

body.ap-account-studio .apappointments-date-card small,
body.ap-account-studio .apappointments-date-card span {
	font-size: 11px !important;
}

body.ap-account-studio .apappointments-slot-heading > span,
body.ap-account-studio .apappointments-slot-heading small {
	font-size: 11px !important;
	line-height: 1.45 !important;
}

body.ap-account-studio .apappointments-slot-card strong {
	font-size: 11px !important;
	line-height: 1.45 !important;
}

body.ap-account-studio .apappointments-slot-card small {
	font-size: 11px !important;
}

body.ap-account-studio .apappointments-slot-loading,
body.ap-account-studio .apappointments-slot-empty {
	font-size: 11px !important;
	line-height: 1.6 !important;
}

/* ------------------------------------------------------------
   Mobile readability
   ------------------------------------------------------------ */

@media (max-width: 720px) {
	body.ap-account-studio .apappointment-detail-hero h3 {
		font-size: 25px !important;
	}

	body.ap-account-studio .apappointment-card-top h3 {
		font-size: 16px !important;
	}

	body.ap-account-studio .apappointment-card-grid > div > strong,
	body.ap-account-studio .apappointment-detail-summary strong,
	body.ap-account-studio .apappointment-request strong,
	body.ap-account-studio .apappointment-request p,
	body.ap-account-studio .apappointment-latest-update-body p,
	body.ap-account-studio .apappointment-activity p {
		font-size: 13px !important;
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-step > strong {
		font-size: 11px !important;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.20.2
   PREMIUM APPOINTMENT STATUS RAIL
   ============================================================ */

/*
 * New concept:
 * - no dotted/round timeline look
 * - four mechanical segmented stages
 * - each stage is a compact status module
 * - completed = solid cyan marker
 * - current = cyan frame + glow
 * - future = muted
 * - cancelled = independent alert rail
 */

body.ap-account-studio .apappointment-progress {
	position: relative !important;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 7px !important;
	align-items: stretch !important;
}

body.ap-account-studio .apappointment-progress-line {
	display: none !important;
}

body.ap-account-studio .apappointment-progress-step {
	position: relative !important;
	z-index: 1 !important;
	min-width: 0 !important;
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) !important;
	align-items: center !important;
	justify-items: stretch !important;
	gap: 9px !important;
	padding: 11px 12px !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 7px !important;
	background:
		linear-gradient(
			145deg,
			#f9faf4,
			rgba(220,227,213,0.342)
		) !important;
	text-align: left !important;
	transition:
		border-color .2s ease,
		background .2s ease,
		box-shadow .2s ease,
		transform .2s ease !important;
}

body.ap-account-studio .apappointment-progress-step::before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	width: 3px;
	height: calc(100% + 2px);
	border-radius: 7px 0 0 7px;
	background: rgba(78,115,90,0.07);
}

body.ap-account-studio .apappointment-progress-step > i {
	width: 25px !important;
	height: 25px !important;
	display: grid !important;
	place-items: center !important;
	border: 1px solid #d7ded3 !important;
	border-radius: 4px !important;
	background: rgba(78,115,90,0.025) !important;
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1 !important;
	font-weight: 600 !important;
	font-style: normal !important;
	box-shadow: none !important;
}

body.ap-account-studio .apappointment-progress-step > strong {
	min-width: 0 !important;
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1.25 !important;
	font-weight: 600 !important;
	letter-spacing: .055em !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

body.ap-account-studio .apappointment-progress-step.is-complete {
	border-color: #d7ded3 !important;
	background:
		linear-gradient(
			145deg,
			rgba(78,115,90,0.045),
			rgba(220,227,213,0.35100000000000003)
		) !important;
}

body.ap-account-studio .apappointment-progress-step.is-complete::before {
	background: var(--apaccount-cyan) !important;
}

body.ap-account-studio .apappointment-progress-step.is-complete > i {
	border-color: var(--apaccount-cyan) !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
}

body.ap-account-studio .apappointment-progress-step.is-complete > strong {
	color: #24392d !important;
}

body.ap-account-studio .apappointment-progress-step.is-current {
	border-color: #d7ded3 !important;
	background:
		linear-gradient(
			145deg,
			rgba(78,115,90,0.09),
			#f9faf4
		) !important;
	box-shadow:
		inset 0 0 24px rgba(24,34,29,0.025),
		0 0 18px rgba(24,34,29,0.035) !important;
	transform: translateY(-1px) !important;
}

body.ap-account-studio .apappointment-progress-step.is-current::before {
	background: var(--apaccount-cyan) !important;
	box-shadow: 0 0 10px rgba(24,34,29,0.1) !important;
}

body.ap-account-studio .apappointment-progress-step.is-current > i {
	border-color: var(--apaccount-cyan) !important;
	background: rgba(78,115,90,0.09) !important;
	color: var(--apaccount-cyan) !important;
	box-shadow:
		0 0 0 3px rgba(24,34,29,0.035) !important;
}

body.ap-account-studio .apappointment-progress-step.is-current > strong {
	color: #24392d !important;
}

/* Compact rail in booking cards */

body.ap-account-studio .apappointment-progress.is-compact {
	min-height: 0 !important;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step {
	grid-template-columns: 18px minmax(0, 1fr) !important;
	gap: 7px !important;
	padding: 8px 9px !important;
	border-radius: 5px !important;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step > i {
	width: 18px !important;
	height: 18px !important;
	border-radius: 3px !important;
	font-size: 11px !important;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step > strong {
	display: block !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
	letter-spacing: .045em !important;
}

body.ap-account-studio .apappointment-progress.is-compact
.apappointment-progress-step::before {
	width: 2px !important;
	border-radius: 5px 0 0 5px !important;
}

/* Full tracker in View Details */

body.ap-account-studio .apappointment-progress.is-full {
	gap: 9px !important;
}

body.ap-account-studio .apappointment-progress.is-full
.apappointment-progress-step {
	min-height: 58px !important;
	padding: 13px 14px !important;
}

body.ap-account-studio .apappointment-progress.is-full
.apappointment-progress-step > i {
	width: 29px !important;
	height: 29px !important;
	font-size: 11px !important;
}

body.ap-account-studio .apappointment-progress.is-full
.apappointment-progress-step > strong {
	font-size: 11px !important;
}

/* Cancelled = separate exception rail */

body.ap-account-studio .apappointment-progress.is-cancelled {
	display: block !important;
}

body.ap-account-studio .apappointment-progress-cancelled {
	display: grid !important;
	grid-template-columns: 10px auto minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 11px !important;
	min-height: 50px !important;
	padding: 12px 14px !important;
	border: 1px solid #d7ded3 !important;
	border-left: 3px solid #d7ded3 !important;
	border-radius: 7px !important;
	background:
		linear-gradient(
			135deg,
			rgba(255, 100, 100, .055),
			rgba(220,227,213,0.324)
		) !important;
	color: #934630 !important;
}

body.ap-account-studio .apappointment-progress-cancelled i {
	width: 8px !important;
	height: 8px !important;
	border-radius: 2px !important;
	background: #FF8E8E !important;
	box-shadow: 0 0 10px rgba(24,34,29,0.1) !important;
}

body.ap-account-studio .apappointment-progress-cancelled strong {
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .07em !important;
}

body.ap-account-studio .apappointment-progress-cancelled span {
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1.5 !important;
}

/* Mobile: keep the rail clean, horizontal and scrollable */

@media (max-width: 760px) {
	body.ap-account-studio .apappointment-progress {
		grid-template-columns: repeat(4, minmax(128px, 1fr)) !important;
		overflow-x: auto !important;
		padding-bottom: 4px !important;
		scrollbar-width: none !important;
	}

	body.ap-account-studio .apappointment-progress::-webkit-scrollbar {
		display: none !important;
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-step {
		min-height: 54px !important;
	}

	body.ap-account-studio .apappointment-progress.is-full
	.apappointment-progress-step > strong {
		font-size: 11px !important;
	}

	body.ap-account-studio .apappointment-progress.is-compact
	.apappointment-progress-step > strong {
		font-size: 11px !important;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apappointment-card-progress {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	body.ap-account-studio .apappointment-progress {
		grid-template-columns: repeat(4, minmax(118px, 1fr)) !important;
	}

	body.ap-account-studio .apappointment-progress-step {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
}



/* ============================================================
   CUSTOMER GARAGE PORTAL v1.20.3
   STAFF PORTAL SERVICE HISTORY SYNC
   ============================================================ */

body.ap-account-studio .apservice-list {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apservice-card-v1203 {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.225),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apservice-card-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 16px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-card-top > div > span,
body.ap-account-studio .apservice-detail-hero > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apservice-card-top h3 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
	letter-spacing: -.02em !important;
}

body.ap-account-studio .apservice-status {
	flex: 0 0 auto;
	min-height: 29px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.04);
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apservice-status i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 8px currentColor;
}

body.ap-account-studio .apservice-status-completed {
	border-color: #d7ded3;
	background: rgba(113, 231, 167, .04);
	color: #24392d;
}

body.ap-account-studio .apservice-status-cancelled {
	border-color: #d7ded3;
	background: rgba(255, 140, 140, .035);
	color: #934630;
}

body.ap-account-studio .apservice-card-grid,
body.ap-account-studio .apservice-summary-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apservice-card-grid > div,
body.ap-account-studio .apservice-summary-grid > div {
	min-width: 0;
	padding: 13px 15px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-card-grid > div:last-child,
body.ap-account-studio .apservice-summary-grid > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apservice-card-grid span,
body.ap-account-studio .apservice-summary-grid span,
body.ap-account-studio .apservice-billing-footer span {
	display: block;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apservice-card-grid strong,
body.ap-account-studio .apservice-summary-grid strong,
body.ap-account-studio .apservice-billing-footer strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 12px;
	line-height: 1.5;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apservice-card-note {
	padding: 13px 16px;
	border-top: 1px solid #d7ded3;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apservice-card-note span {
	display: block;
	color: #295b51;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apservice-card-note p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 12px;
	line-height: 1.65;
}

body.ap-account-studio .apservice-card-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 13px 16px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-card-actions > strong {
	color: #24392d;
	font-size: 14px;
	font-weight: 600;
}

body.ap-account-studio .apservice-card-actions > span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

/* Service detail */

body.ap-account-studio .apservice-detail-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
}

body.ap-account-studio .apservice-detail-head > div {
	min-width: 0;
}

body.ap-account-studio .apservice-detail-hero {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding: 18px;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.045),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apservice-detail-hero > div > strong {
	display: block;
	margin-top: 7px;
	color: #24392d;
	font-size: 18px;
	line-height: 1.35;
	font-weight: 600;
}

body.ap-account-studio .apservice-summary-grid {
	margin-top: 12px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apservice-detail-section {
	margin-top: 12px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apservice-section-head {
	padding: 14px 16px 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-section-head > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apservice-section-head h3 {
	margin: 5px 0 0 !important;
	color: #24392d !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apservice-notes {
	padding: 15px 16px 17px;
	color: #68746b;
	font-size: 12px;
	line-height: 1.75;
}

body.ap-account-studio .apservice-work-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	padding: 14px;
}

body.ap-account-studio .apservice-work-grid article {
	min-width: 0;
	padding: 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apservice-work-grid article > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apservice-work-grid article > strong {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 12px;
	font-weight: 600;
}

body.ap-account-studio .apservice-work-grid article > p {
	margin: 8px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
}

body.ap-account-studio .apservice-media-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	padding: 14px;
}

body.ap-account-studio .apservice-media-columns > div {
	min-width: 0;
}

body.ap-account-studio .apservice-media-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 9px;
}

body.ap-account-studio .apservice-media-title span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apservice-media-title strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apservice-media-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

body.ap-account-studio .apservice-media-grid a {
	position: relative;
	aspect-ratio: 4 / 3;
	display: block;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: #f9faf4;
}

body.ap-account-studio .apservice-media-grid img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: transform .25s ease;
}

body.ap-account-studio .apservice-media-grid a:hover img {
	transform: scale(1.025);
}

body.ap-account-studio .apservice-no-media {
	grid-column: 1 / -1;
	margin: 0;
	padding: 16px;
	border: 1px dashed #d7ded3;
	border-radius: 8px;
	color: #68746b;
	font-size: 11px;
	text-align: center;
}

body.ap-account-studio .apservice-billing-list {
	display: grid;
	padding: 4px 16px;
}

body.ap-account-studio .apservice-billing-list > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 11px 0;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-billing-list > div:last-child {
	border-bottom: 0;
}

body.ap-account-studio .apservice-billing-list span {
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
}

body.ap-account-studio .apservice-billing-list strong {
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apservice-billing-footer {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 16px 14px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
}

body.ap-account-studio .apservice-billing-footer > div {
	min-width: 0;
	padding: 12px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-billing-footer > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apservice-detail-section > .apaccount-button {
	margin: 0 16px 16px;
}

/* Responsive */

@media (max-width: 960px) {
	body.ap-account-studio .apservice-card-grid,
	body.ap-account-studio .apservice-summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apservice-card-grid > div:nth-child(2),
	body.ap-account-studio .apservice-summary-grid > div:nth-child(2) {
		border-right: 0;
	}

	body.ap-account-studio .apservice-card-grid > div:nth-child(-n+2),
	body.ap-account-studio .apservice-summary-grid > div:nth-child(-n+2) {
		border-bottom: 1px solid #d7ded3;
	}
}

@media (max-width: 720px) {
	body.ap-account-studio .apservice-detail-head,
	body.ap-account-studio .apservice-card-top,
	body.ap-account-studio .apservice-detail-hero,
	body.ap-account-studio .apservice-card-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apservice-detail-head > .apaccount-button,
	body.ap-account-studio .apservice-card-actions > .apaccount-button {
		width: 100%;
	}

	body.ap-account-studio .apservice-card-grid,
	body.ap-account-studio .apservice-summary-grid,
	body.ap-account-studio .apservice-work-grid,
	body.ap-account-studio .apservice-media-columns,
	body.ap-account-studio .apservice-billing-footer {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apservice-card-grid > div,
	body.ap-account-studio .apservice-card-grid > div:nth-child(2),
	body.ap-account-studio .apservice-summary-grid > div,
	body.ap-account-studio .apservice-summary-grid > div:nth-child(2),
	body.ap-account-studio .apservice-billing-footer > div {
		border-right: 0;
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apservice-card-grid > div:last-child,
	body.ap-account-studio .apservice-summary-grid > div:last-child,
	body.ap-account-studio .apservice-billing-footer > div:last-child {
		border-bottom: 0;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apservice-media-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apservice-card-top h3 {
		font-size: 16px !important;
	}

	body.ap-account-studio .apservice-card-grid strong,
	body.ap-account-studio .apservice-summary-grid strong {
		font-size: 13px;
	}
}



/* ============================================================
   CUSTOMER GARAGE v1.21.0
   LIVE WORKSHOP PROGRESS + CUSTOMER-VISIBLE MEDIA
   ============================================================ */

body.ap-account-studio .apservice-progress-rail {
	display: grid;
	grid-template-columns:
		repeat(6, minmax(0, 1fr));
	gap: 7px;
	padding: 15px;
}

body.ap-account-studio .apservice-progress-step {
	position: relative;
	min-width: 0;
	min-height: 61px;
	display: grid;
	grid-template-columns: 25px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	padding: 9px 10px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.216);
}

body.ap-account-studio .apservice-progress-step::before {
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: -1px;
	width: 3px;
	border-radius: 7px 0 0 7px;
	background: rgba(78,115,90,0.07);
}

body.ap-account-studio .apservice-progress-step i {
	width: 25px;
	height: 25px;
	display: grid;
	place-items: center;
	border: 1px solid #d7ded3;
	border-radius: 5px;
	background: rgba(78,115,90,0.02);
	color: #68746b;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apservice-progress-step span {
	min-width: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: .04em;
}

body.ap-account-studio .apservice-progress-step.is-complete::before,
body.ap-account-studio .apservice-progress-step.is-current::before {
	background: var(--apaccount-cyan);
}

body.ap-account-studio .apservice-progress-step.is-complete {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.035);
}

body.ap-account-studio .apservice-progress-step.is-complete i {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
}

body.ap-account-studio .apservice-progress-step.is-complete span {
	color: #68746b;
}

body.ap-account-studio .apservice-progress-step.is-current {
	border-color: #d7ded3;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.085),
			rgba(220,227,213,0.324)
		);
	box-shadow:
		0 0 18px rgba(24,34,29,0.035);
}

body.ap-account-studio .apservice-progress-step.is-current i {
	border-color: var(--apaccount-cyan);
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apservice-progress-step.is-current span {
	color: #24392d;
}

body.ap-account-studio .apservice-live-update {
	margin: 0 15px 15px;
	padding: 14px 15px;
	border: 1px solid #d7ded3;
	border-left: 3px solid var(--apaccount-cyan);
	border-radius: 8px;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apservice-live-update > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apservice-live-update p {
	margin: 7px 0 0;
	color: #68746b;
	font-size: 12px;
	line-height: 1.7;
}

body.ap-account-studio .apservice-live-update small {
	display: block;
	margin-top: 7px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apservice-progress-activity {
	display: grid;
	margin: 0 15px 15px;
	padding-top: 2px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-progress-activity article {
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr);
	gap: 9px;
	padding: 10px 0;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apservice-progress-activity article > i {
	width: 8px;
	height: 8px;
	margin-top: 5px;
	border: 2px solid var(--apaccount-cyan);
	border-radius: 50%;
	background: #f9faf4;
}

body.ap-account-studio .apservice-progress-activity strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apservice-progress-activity p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apservice-progress-activity small {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apservice-live-media-groups {
	display: grid;
	gap: 17px;
	padding: 14px;
}

body.ap-account-studio .apservice-live-media-phase {
	min-width: 0;
}

body.ap-account-studio .apservice-live-media-grid {
	display: grid;
	grid-template-columns:
		repeat(3, minmax(0, 1fr));
	gap: 9px;
}

body.ap-account-studio .apservice-live-media-grid article {
	min-width: 0;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.225);
}

body.ap-account-studio .apservice-live-media-preview {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f9faf4;
}

body.ap-account-studio .apservice-live-media-preview a {
	width: 100%;
	height: 100%;
	display: block;
}

body.ap-account-studio .apservice-live-media-preview img,
body.ap-account-studio .apservice-live-media-preview video {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

body.ap-account-studio .apservice-live-media-copy {
	padding: 10px;
}

body.ap-account-studio .apservice-live-media-copy p {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apservice-live-media-copy small {
	display: block;
	margin-top: 6px;
	color: #68746b;
	font-size: 11px;
}

@media (max-width: 1080px) {
	body.ap-account-studio .apservice-progress-rail {
		grid-template-columns:
			repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	body.ap-account-studio .apservice-live-media-grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apservice-progress-rail,
	body.ap-account-studio .apservice-live-media-grid {
		grid-template-columns: 1fr;
	}
}



/* ============================================================
   CUSTOMER GARAGE — PREMIUM DIGITAL SERVICE DOSSIER v3.0.0
   ============================================================ */

body.ap-account-studio .apsv3-history,
body.ap-account-studio .apsv3-detail {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apsv3-history-header,
body.ap-account-studio .apsv3-detail-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 22px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		radial-gradient(
			circle at 88% 12%,
			rgba(78,115,90,0.09),
			transparent 34%
		),
		linear-gradient(
			145deg,
			rgba(220,227,213,0.27),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsv3-history-header > div:first-child > span,
body.ap-account-studio .apsv3-detail-header > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsv3-history-header h2,
body.ap-account-studio .apsv3-detail-header h2 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 28px !important;
	line-height: 1.08 !important;
	font-weight: 600 !important;
	letter-spacing: -.035em !important;
}

body.ap-account-studio .apsv3-history-header p,
body.ap-account-studio .apsv3-detail-header p {
	max-width: 720px;
	margin: 8px 0 0;
	color: #68746b;
	font-size: 12px;
	line-height: 1.7;
}

body.ap-account-studio .apsv3-history-count {
	min-width: 78px;
	display: grid;
	place-items: center;
	align-content: center;
	padding: 12px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apsv3-history-count strong {
	color: var(--apaccount-cyan);
	font-size: 24px;
	line-height: 1;
	font-weight: 600;
}

body.ap-account-studio .apsv3-history-count span {
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv3-history-body,
body.ap-account-studio .apsv3-detail-body,
body.ap-account-studio .apsv3-record-list {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apsv3-record-card,
body.ap-account-studio .apsv3-section {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.24300000000000002),
			rgba(220,227,213,0.2)
		);
	box-shadow:
		0 16px 40px rgba(24,34,29,0.08);
}

body.ap-account-studio .apsv3-record-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 17px 18px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-record-card-head > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsv3-record-card-head h3 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsv3-record-card-head p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsv3-stage {
	flex: 0 0 auto;
	min-height: 29px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.04);
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsv3-stage i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 8px currentColor;
}

body.ap-account-studio .apsv3-progress {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 7px;
	padding: 15px;
}

body.ap-account-studio .apsv3-progress-step {
	position: relative;
	min-width: 0;
	min-height: 58px;
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	padding: 9px 10px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.234);
}

body.ap-account-studio .apsv3-progress-step::before {
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: -1px;
	width: 3px;
	border-radius: 7px 0 0 7px;
	background: rgba(78,115,90,0.07);
}

body.ap-account-studio .apsv3-progress-step i {
	width: 24px;
	height: 24px;
	display: grid;
	place-items: center;
	border: 1px solid #d7ded3;
	border-radius: 5px;
	background: rgba(78,115,90,0.02);
	color: #68746b;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsv3-progress-step span {
	min-width: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: .03em;
}

body.ap-account-studio .apsv3-progress-step.is-complete {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.035);
}

body.ap-account-studio .apsv3-progress-step.is-complete::before,
body.ap-account-studio .apsv3-progress-step.is-current::before {
	background: var(--apaccount-cyan);
}

body.ap-account-studio .apsv3-progress-step.is-complete i {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
}

body.ap-account-studio .apsv3-progress-step.is-complete span {
	color: #68746b;
}

body.ap-account-studio .apsv3-progress-step.is-current {
	border-color: #d7ded3;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.085),
			rgba(220,227,213,0.324)
		);
	box-shadow:
		0 0 18px rgba(24,34,29,0.04);
}

body.ap-account-studio .apsv3-progress-step.is-current i {
	border-color: var(--apaccount-cyan);
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apsv3-progress-step.is-current span {
	color: #24392d;
}

body.ap-account-studio .apsv3-progress.is-compact {
	padding-top: 11px;
	padding-bottom: 11px;
}

body.ap-account-studio .apsv3-progress.is-compact .apsv3-progress-step {
	min-height: 45px;
	padding: 7px 8px;
	grid-template-columns: 18px minmax(0, 1fr);
}

body.ap-account-studio .apsv3-progress.is-compact .apsv3-progress-step i {
	width: 18px;
	height: 18px;
	font-size: 11px;
}

body.ap-account-studio .apsv3-progress.is-compact .apsv3-progress-step span {
	font-size: 11px;
}

body.ap-account-studio .apsv3-record-facts,
body.ap-account-studio .apsv3-summary-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apsv3-record-facts {
	border-top: 1px solid #d7ded3;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-record-facts > div,
body.ap-account-studio .apsv3-summary-grid > div {
	min-width: 0;
	padding: 13px 15px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-record-facts > div:last-child,
body.ap-account-studio .apsv3-summary-grid > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apsv3-record-facts span,
body.ap-account-studio .apsv3-summary-grid span,
body.ap-account-studio .apsv3-billing-summary span {
	display: block;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsv3-record-facts strong,
body.ap-account-studio .apsv3-summary-grid strong,
body.ap-account-studio .apsv3-billing-summary strong {
	display: block;
	margin-top: 5px;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apsv3-record-update,
body.ap-account-studio .apsv3-customer-summary {
	padding: 14px 16px;
	border-bottom: 1px solid #d7ded3;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apsv3-record-update > span,
body.ap-account-studio .apsv3-customer-summary > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv3-record-update p,
body.ap-account-studio .apsv3-customer-summary p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
}

body.ap-account-studio .apsv3-record-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 13px 16px;
}

body.ap-account-studio .apsv3-record-actions > strong {
	color: #24392d;
	font-size: 14px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-record-actions > span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv3-empty {
	min-height: 300px;
	display: grid;
	place-items: center;
	align-content: center;
	padding: 36px;
	border: 1px dashed #d7ded3;
	border-radius: 11px;
	background: rgba(220,227,213,0.2);
	text-align: center;
}

body.ap-account-studio .apsv3-empty > span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsv3-empty > strong {
	margin-top: 8px;
	color: #24392d;
	font-size: 17px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-empty > p {
	max-width: 560px;
	margin: 7px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
}

/* Detail */

body.ap-account-studio .apsv3-detail-header {
	align-items: center;
}

body.ap-account-studio .apsv3-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(180px, .6fr);
	gap: 10px;
	padding: 18px;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background:
		radial-gradient(
			circle at 86% 20%,
			rgba(78,115,90,0.08),
			transparent 34%
		),
		linear-gradient(
			145deg,
			rgba(220,227,213,0.27),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsv3-hero > div {
	padding: 8px;
}

body.ap-account-studio .apsv3-hero span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsv3-hero strong {
	display: block;
	margin-top: 6px;
	color: #24392d;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 600;
}

body.ap-account-studio .apsv3-hero p {
	margin: 7px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.65;
}

body.ap-account-studio .apsv3-section-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-section-head > span {
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	flex: 0 0 34px;
	border: 1px solid #d7ded3;
	border-radius: 6px;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-section-head small {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsv3-section-head h3 {
	margin: 4px 0 0 !important;
	color: #24392d !important;
	font-size: 15px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsv3-dossier-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	padding: 12px;
}

body.ap-account-studio .apsv3-dossier-grid article {
	min-width: 0;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsv3-dossier-grid article > span {
	display: block;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsv3-dossier-grid article > strong {
	display: block;
	margin-top: 6px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.65;
	font-weight: 620;
}

body.ap-account-studio .apsv3-dossier-grid article.is-check {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apsv3-dossier-grid article.is-check > strong {
	color: var(--apaccount-cyan);
	font-weight: 600;
}

body.ap-account-studio .apsv3-activity {
	display: grid;
	padding: 0 15px 15px;
}

body.ap-account-studio .apsv3-activity article {
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr);
	gap: 9px;
	padding: 10px 0;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-activity article > i {
	width: 8px;
	height: 8px;
	margin-top: 5px;
	border: 2px solid var(--apaccount-cyan);
	border-radius: 50%;
	background: #f9faf4;
}

body.ap-account-studio .apsv3-activity strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-activity p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apsv3-activity small {
	display: block;
	margin-top: 4px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsv3-media-groups {
	display: grid;
	gap: 18px;
	padding: 14px;
}

body.ap-account-studio .apsv3-media-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 9px;
}

body.ap-account-studio .apsv3-media-title > span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsv3-media-title > strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-media-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 9px;
}

body.ap-account-studio .apsv3-media-grid article {
	min-width: 0;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsv3-media-preview {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f9faf4;
}

body.ap-account-studio .apsv3-media-preview a {
	width: 100%;
	height: 100%;
	display: block;
}

body.ap-account-studio .apsv3-media-preview img,
body.ap-account-studio .apsv3-media-preview video {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

body.ap-account-studio .apsv3-media-copy {
	padding: 10px;
}

body.ap-account-studio .apsv3-media-copy p {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsv3-media-copy small {
	display: block;
	margin-top: 6px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsv3-billing-list {
	display: grid;
	padding: 4px 15px 14px;
}

body.ap-account-studio .apsv3-billing-list > div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	align-items: center;
	gap: 15px;
	padding: 11px 0;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-billing-list > div:last-child {
	border-bottom: 0;
}

body.ap-account-studio .apsv3-billing-list > div > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv3-billing-list > div > div > strong,
body.ap-account-studio .apsv3-billing-list > div > strong {
	display: block;
	margin-top: 4px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv3-billing-list > div > small {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsv3-billing-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 15px 14px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
}

body.ap-account-studio .apsv3-billing-summary > div {
	min-width: 0;
	padding: 12px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apsv3-billing-summary > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apsv3-documents {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	padding: 0 15px 15px;
}

body.ap-account-studio .apsv3-documents a {
	min-width: 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"type icon"
		"title icon";
	align-items: center;
	gap: 3px 12px;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(78,115,90,0.018);
	text-decoration: none;
}

body.ap-account-studio .apsv3-documents a > span {
	grid-area: type;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv3-documents a > strong {
	grid-area: title;
	overflow: hidden;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apsv3-documents a > i {
	grid-area: icon;
	color: var(--apaccount-cyan);
	font-size: 14px;
	font-style: normal;
}

@media (max-width: 1080px) {
	body.ap-account-studio .apsv3-progress {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.ap-account-studio .apsv3-summary-grid,
	body.ap-account-studio .apsv3-record-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apsv3-dossier-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	body.ap-account-studio .apsv3-history-header,
	body.ap-account-studio .apsv3-detail-header,
	body.ap-account-studio .apsv3-record-card-head,
	body.ap-account-studio .apsv3-record-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apsv3-detail-header > .apaccount-button,
	body.ap-account-studio .apsv3-record-actions > .apaccount-button {
		width: 100%;
	}

	body.ap-account-studio .apsv3-hero,
	body.ap-account-studio .apsv3-media-grid,
	body.ap-account-studio .apsv3-documents {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apsv3-billing-list > div {
		grid-template-columns: 1fr;
		gap: 6px;
	}
}

@media (max-width: 520px) {
	body.ap-account-studio .apsv3-progress,
	body.ap-account-studio .apsv3-summary-grid,
	body.ap-account-studio .apsv3-record-facts,
	body.ap-account-studio .apsv3-billing-summary {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apsv3-history-header h2,
	body.ap-account-studio .apsv3-detail-header h2 {
		font-size: 24px !important;
	}
}



/* ============================================================
   CUSTOMER GARAGE — SIMPLIFIED SERVICE DOSSIER v3.1.0
   ============================================================ */

body.ap-account-studio .apsv3-record-card-head {
	padding: 18px 19px;
}

body.ap-account-studio .apsv3-record-card-head h3 {
	font-size: 20px !important;
}

body.ap-account-studio .apsv3-record-card-head p,
body.ap-account-studio .apsv3-record-update p {
	font-size: 12px;
}

body.ap-account-studio .apsv3-progress-step span {
	font-size: 11px;
}

body.ap-account-studio .apsv3-progress.is-compact
.apsv3-progress-step span {
	font-size: 11px;
}

body.ap-account-studio .apsv3-section-head {
	padding: 16px 17px;
}

body.ap-account-studio .apsv3-section-head h3 {
	font-size: 16px !important;
}

body.ap-account-studio .apsv3-dossier-grid {
	grid-template-columns:
		repeat(2, minmax(0, 1fr));
	gap: 10px;
	padding: 14px;
}

body.ap-account-studio .apsv3-dossier-grid article {
	padding: 14px;
	border-color: #d7ded3;
}

body.ap-account-studio .apsv3-dossier-grid article > span {
	font-size: 11px;
}

body.ap-account-studio .apsv3-dossier-grid article > strong {
	margin-top: 7px;
	font-size: 12px;
	line-height: 1.7;
}

body.ap-account-studio .apsv3-dossier-grid article.is-check {
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.045),
			rgba(220,227,213,0.25200000000000006)
		);
}

@media (max-width: 760px) {
	body.ap-account-studio .apsv3-dossier-grid {
		grid-template-columns: 1fr;
	}
}



/* ============================================================
   CUSTOMER GARAGE — GENERATED INVOICE + PAYMENTS v3.2.0
   ============================================================ */

body.ap-account-studio .apsv32-billing-summary {
	grid-template-columns:
		repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apsv32-billing-summary > div.is-due {
	background:
		linear-gradient(
			135deg,
			rgba(255, 190, 72, .055),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsv32-billing-summary > div.is-due strong {
	color: #86621d;
}

body.ap-account-studio .apsv32-payment-history {
	display: grid;
	margin: 0 15px 14px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsv32-payment-history-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 13px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-payment-history-head span {
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv32-payment-history-head strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-payment-history article {
	padding: 11px 13px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-payment-history article:last-child {
	border-bottom: 0;
}

body.ap-account-studio .apsv32-payment-history article > div > strong {
	color: #24392d;
	font-size: 12px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-payment-history article span {
	display: block;
	margin-top: 4px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsv32-payment-history article p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

/* Generated invoice */

body.ap-account-studio .apsv32-invoice {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apsv32-invoice-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

body.ap-account-studio .apsv32-invoice-sheet {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 11px;
	background: #f3f5ed;
	color: #24392d;
	box-shadow:
		0 20px 50px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsv32-invoice-brand {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 28px 30px;
	border-bottom: 1px solid #d7ded3;
	background:
		radial-gradient(
			circle at 88% 12%,
			rgba(78,115,90,0.09),
			transparent 32%
		),
		linear-gradient(
			135deg,
			#f3f5ed,
			#f3f5ed
		);
}

body.ap-account-studio .apsv32-invoice-brand > div:first-child > span,
body.ap-account-studio .apsv32-invoice-brand > div:last-child > span {
	display: block;
	color: #078EA4;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsv32-invoice-brand h2 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 27px !important;
	line-height: 1.1 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsv32-invoice-brand p {
	margin: 6px 0 0;
	color: #6F8291;
	font-size: 11px;
}

body.ap-account-studio .apsv32-invoice-brand > div:last-child {
	text-align: right;
}

body.ap-account-studio .apsv32-invoice-brand > div:last-child > strong {
	display: block;
	margin-top: 6px;
	color: #24392d;
	font-size: 16px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-brand > div:last-child > small {
	display: block;
	margin-top: 4px;
	color: #718391;
	font-size: 11px;
}

body.ap-account-studio .apsv32-invoice-parties {
	display: grid;
	grid-template-columns:
		repeat(3, minmax(0, 1fr));
	border-bottom: 1px solid #d7ded3;
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-parties > div {
	min-width: 0;
	padding: 18px 20px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-invoice-parties > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apsv32-invoice-parties span {
	display: block;
	color: #078EA4;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv32-invoice-parties strong {
	display: block;
	margin-top: 6px;
	color: #24392d;
	font-size: 12px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-parties p {
	margin: 5px 0 0;
	color: #718493;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsv32-invoice-table {
	padding: 18px 20px;
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-table-head,
body.ap-account-studio .apsv32-invoice-row {
	display: grid;
	grid-template-columns:
		145px
		minmax(0, 1fr)
		70px
		110px
		120px;
	gap: 12px;
	align-items: center;
}

body.ap-account-studio .apsv32-invoice-table-head {
	padding: 10px 12px;
	border-radius: 6px;
	background: #f3f5ed;
	color: #617686;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
}

body.ap-account-studio .apsv32-invoice-row {
	padding: 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-invoice-row > span {
	color: #687D8D;
	font-size: 11px;
}

body.ap-account-studio .apsv32-invoice-row > strong {
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-row.is-simple {
	grid-template-columns:
		minmax(0, 1fr)
		auto;
}

body.ap-account-studio .apsv32-invoice-summary {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		minmax(280px, .65fr);
	gap: 20px;
	padding: 20px;
	border-top: 1px solid #d7ded3;
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-summary > div:first-child > span {
	display: block;
	color: #078EA4;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv32-invoice-summary > div:first-child > strong {
	display: block;
	margin-top: 5px;
	color: #24392d;
	font-size: 13px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-summary > div:first-child > p {
	margin: 8px 0 0;
	color: #708392;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsv32-invoice-summary > div:last-child {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-summary > div:last-child > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 11px 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-invoice-summary > div:last-child > div:last-child {
	border-bottom: 0;
}

body.ap-account-studio .apsv32-invoice-summary > div:last-child span {
	color: #6F8291;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-summary > div:last-child strong {
	color: #24392d;
	font-size: 12px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-summary .is-due {
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-summary .is-due strong {
	color: #A66D12 !important;
}

body.ap-account-studio .apsv32-invoice-payments {
	padding: 0 20px 20px;
	background: #f3f5ed;
}

body.ap-account-studio .apsv32-invoice-payments-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0 8px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-invoice-payments-head span {
	color: #078EA4;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv32-invoice-payments-head strong {
	color: #718493;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-payments article {
	padding: 10px 0;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apsv32-invoice-payments article > div > strong {
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsv32-invoice-payments article span {
	display: block;
	margin-top: 4px;
	color: #708392;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsv32-invoice-payments article p {
	margin: 5px 0 0;
	color: #536B7D;
	font-size: 11px;
	line-height: 1.55;
}

@media (max-width: 900px) {
	body.ap-account-studio .apsv32-billing-summary,
	body.ap-account-studio .apsv32-invoice-parties {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apsv32-invoice-table {
		overflow-x: auto;
	}

	body.ap-account-studio .apsv32-invoice-table-head,
	body.ap-account-studio .apsv32-invoice-row {
		min-width: 1040px;
	}
}

@media (max-width: 620px) {
	body.ap-account-studio .apsv32-invoice-actions,
	body.ap-account-studio .apsv32-invoice-brand {
		align-items: stretch;
		flex-direction: column;
	}

	body.ap-account-studio .apsv32-invoice-brand > div:last-child {
		text-align: left;
	}

	body.ap-account-studio .apsv32-invoice-parties,
	body.ap-account-studio .apsv32-billing-summary,
	body.ap-account-studio .apsv32-invoice-summary {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apsv32-invoice-parties > div {
		border-right: 0;
		border-bottom: 1px solid #d7ded3;
	}
}

@media print {
	/* ========================================================
	   PREMIUM A4 CUSTOMER INVOICE PRINT v4.3.4
	   ======================================================== */

	@page {
		size: A4 portrait;
		margin: 0;
	}

	html:has(body.ap-account-studio),
	body.ap-account-studio {
		width: 210mm !important;
		min-width: 210mm !important;
		height: auto !important;
		min-height: 297mm !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		background: #FFFFFF !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	body.ap-account-studio * {
		visibility: hidden !important;
	}

	body.ap-account-studio .apsv32-invoice,
	body.ap-account-studio .apsv32-invoice * {
		visibility: visible !important;
	}

	body.ap-account-studio .apsv32-invoice {
		position: absolute !important;
		inset: 0 auto auto 0 !important;
		width: 210mm !important;
		max-width: 210mm !important;
		min-height: 297mm !important;
		margin: 0 !important;
		padding: 8mm 10mm 8mm !important;
		box-sizing: border-box !important;
		overflow: visible !important;
		background: #FFFFFF !important;
		color: #183044 !important;
	}

	body.ap-account-studio .apsv32-invoice-actions {
		display: none !important;
	}

	body.ap-account-studio .apsv32-invoice-sheet {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		overflow: visible !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: #FFFFFF !important;
		box-shadow: none !important;
	}

	/* --------------------------------------------------------
	   BRAND / HEADER
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-brand {
		padding: 0 0 5mm !important;
		border-bottom: 1px solid #DCE7EB !important;
	}

	body.ap-account-studio .apsv32-invoice-brand > div:first-child > span {
		font-size: 7pt !important;
		letter-spacing: .11em !important;
	}

	body.ap-account-studio .apsv32-invoice-brand h2 {
		margin-top: 1.8mm !important;
		font-size: 20pt !important;
		line-height: 1.05 !important;
	}

	body.ap-account-studio .apsv32-invoice-brand p {
		margin-top: 1.8mm !important;
		font-size: 7.5pt !important;
		line-height: 1.35 !important;
	}

	body.ap-account-studio .apsv32-invoice-brand > div:last-child > strong {
		margin-top: 1.5mm !important;
		font-size: 13pt !important;
		line-height: 1.1 !important;
	}

	body.ap-account-studio .apsv32-invoice-brand > div:last-child > small {
		margin-top: 1.2mm !important;
		font-size: 7pt !important;
	}

	/* --------------------------------------------------------
	   BILL TO / MOTORCYCLE / SERVICE
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-parties {
		grid-template-columns:
			repeat(3, minmax(0, 1fr)) !important;
		border-bottom: 1px solid #DCE7EB !important;
	}

	body.ap-account-studio .apsv32-invoice-parties > div {
		padding: 4mm 4.5mm !important;
		border-right: 1px solid #E2EAED !important;
	}

	body.ap-account-studio .apsv32-invoice-parties > div:last-child {
		border-right: 0 !important;
	}

	body.ap-account-studio .apsv32-invoice-parties span {
		font-size: 6pt !important;
	}

	body.ap-account-studio .apsv32-invoice-parties strong {
		margin-top: 1.5mm !important;
		font-size: 8.5pt !important;
		line-height: 1.25 !important;
	}

	body.ap-account-studio .apsv32-invoice-parties p {
		margin-top: 1mm !important;
		font-size: 6.5pt !important;
		line-height: 1.35 !important;
	}

	/* --------------------------------------------------------
	   ITEM TABLE
	   IMPORTANT: remove responsive min-width that caused clipping.
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-table {
		width: 100% !important;
		padding: 4mm 0 3mm !important;
		overflow: visible !important;
		break-inside: avoid !important;
		page-break-inside: avoid !important;
	}

	body.ap-account-studio .apsv32-invoice-table-head,
	body.ap-account-studio .apsv32-invoice-row {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		grid-template-columns:
			24mm
			minmax(0, 1fr)
			12mm
			25mm
			27mm !important;
		gap: 2mm !important;
		box-sizing: border-box !important;
	}

	body.ap-account-studio .apsv32-invoice-table-head {
		padding: 2.3mm 3mm !important;
		border-radius: 1.5mm !important;
		font-size: 5.5pt !important;
		line-height: 1.15 !important;
	}

	body.ap-account-studio .apsv32-invoice-row {
		padding: 2.6mm 3mm !important;
		border-bottom: 1px solid #E7EEF1 !important;
		break-inside: avoid !important;
		page-break-inside: avoid !important;
	}

	body.ap-account-studio .apsv32-invoice-row > span {
		font-size: 6pt !important;
		line-height: 1.25 !important;
	}

	body.ap-account-studio .apsv32-invoice-row > strong {
		font-size: 6.5pt !important;
		line-height: 1.25 !important;
	}

	body.ap-account-studio .apsv32-invoice-row > span:nth-child(3),
	body.ap-account-studio .apsv32-invoice-row > span:nth-child(4),
	body.ap-account-studio .apsv32-invoice-row > strong:last-child,
	body.ap-account-studio .apsv32-invoice-table-head > span:nth-child(3),
	body.ap-account-studio .apsv32-invoice-table-head > span:nth-child(4),
	body.ap-account-studio .apsv32-invoice-table-head > span:nth-child(5) {
		text-align: right !important;
		white-space: nowrap !important;
	}

	body.ap-account-studio .apsv32-invoice-row.is-simple {
		min-width: 0 !important;
		grid-template-columns:
			minmax(0, 1fr)
			auto !important;
	}

	/* Never print an overflow scrollbar. */
	body.ap-account-studio .apsv32-invoice-table::-webkit-scrollbar {
		display: none !important;
	}

	/* --------------------------------------------------------
	   PAYMENT SUMMARY
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-summary {
		grid-template-columns:
			minmax(0, .9fr)
			minmax(75mm, 1.1fr) !important;
		gap: 5mm !important;
		padding: 3.5mm 0 !important;
		border-top: 1px solid #DCE7EB !important;
		background: #FFFFFF !important;
		break-inside: avoid !important;
		page-break-inside: avoid !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:first-child {
		padding: 1mm 0 !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:first-child > span {
		font-size: 6pt !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:first-child > strong {
		margin-top: 1mm !important;
		font-size: 9pt !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:first-child > p {
		max-width: 70mm !important;
		margin-top: 1.5mm !important;
		font-size: 6.3pt !important;
		line-height: 1.35 !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:last-child {
		border-radius: 2mm !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:last-child > div {
		min-height: 0 !important;
		padding: 2.1mm 3mm !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:last-child span {
		font-size: 5.7pt !important;
	}

	body.ap-account-studio .apsv32-invoice-summary > div:last-child strong {
		font-size: 7.8pt !important;
	}

	/* --------------------------------------------------------
	   PAYMENT HISTORY
	   Keep every payment entry together.
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-payments {
		padding: 0 !important;
		background: #FFFFFF !important;
		break-inside: auto !important;
		page-break-inside: auto !important;
	}

	body.ap-account-studio .apsv32-invoice-payments-head {
		padding: 2.5mm 0 1.8mm !important;
		border-top: 1px solid #DCE7EB !important;
	}

	body.ap-account-studio .apsv32-invoice-payments-head span,
	body.ap-account-studio .apsv32-invoice-payments-head strong {
		font-size: 5.8pt !important;
	}

	body.ap-account-studio .apsv32-invoice-payments
	.apsv433-payment-row {
		grid-template-columns:
			52mm
			minmax(0, 1fr) !important;
		gap: 4mm !important;
		padding: 2.7mm 0 !important;
		break-inside: avoid !important;
		page-break-inside: avoid !important;
	}

	body.ap-account-studio .apsv433-payment-type {
		margin-bottom: 1mm !important;
		padding: 1mm 2mm !important;
		font-size: 5.3pt !important;
	}

	body.ap-account-studio .apsv32-invoice-payments article > div > strong {
		font-size: 7.5pt !important;
		line-height: 1.2 !important;
	}

	body.ap-account-studio .apsv32-invoice-payments article span {
		margin-top: .8mm !important;
		font-size: 5.8pt !important;
		line-height: 1.3 !important;
	}

	body.ap-account-studio .apsv433-payment-detail {
		text-align: right !important;
	}

	body.ap-account-studio .apsv433-payment-detail > span {
		font-size: 5.2pt !important;
	}

	body.ap-account-studio .apsv433-payment-detail > strong {
		margin-top: .7mm !important;
		font-size: 6.2pt !important;
		line-height: 1.25 !important;
	}

	body.ap-account-studio .apsv433-payment-detail > p {
		margin-top: 1mm !important;
		font-size: 5.8pt !important;
		line-height: 1.35 !important;
	}

	/* --------------------------------------------------------
	   Prevent accidental page 2 containing only a tiny fragment.
	   -------------------------------------------------------- */

	body.ap-account-studio .apsv32-invoice-brand,
	body.ap-account-studio .apsv32-invoice-parties,
	body.ap-account-studio .apsv32-invoice-table,
	body.ap-account-studio .apsv32-invoice-summary {
		break-after: avoid !important;
		page-break-after: avoid !important;
	}

	body.ap-account-studio a,
	body.ap-account-studio a:visited {
		color: inherit !important;
		text-decoration: none !important;
	}
}



/* ============================================================
   CUSTOMER GARAGE — CUSTOMER ONLINE PAYMENTS v3.3.0
   ============================================================ */

body.ap-account-studio .apsv33-payment-success {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.09),
			rgba(220,227,213,0.27)
		);
}

body.ap-account-studio .apsv33-payment-success > div {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 15px 16px;
}

body.ap-account-studio .apsv33-payment-success i,
body.ap-account-studio .apsv33-paid-card > i {
	width: 30px;
	height: 30px;
	display: grid;
	place-items: center;
	flex: 0 0 30px;
	border-radius: 50%;
	background: var(--apaccount-cyan);
	color: #24392d;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsv33-payment-success span,
body.ap-account-studio .apsv33-paid-card span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsv33-payment-success strong,
body.ap-account-studio .apsv33-paid-card strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 12px;
	line-height: 1.5;
	font-weight: 600;
}

body.ap-account-studio .apsv33-payment-success p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsv33-pay-card {
	margin: 0 15px 14px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background:
		radial-gradient(
			circle at 90% 8%,
			rgba(78,115,90,0.08),
			transparent 34%
		),
		linear-gradient(
			145deg,
			#f9faf4,
			rgba(220,227,213,0.279)
		);
}

body.ap-account-studio .apsv33-pay-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 16px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsv33-pay-head > div > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsv33-pay-head h4 {
	margin: 5px 0 0;
	color: #24392d;
	font-size: 16px;
	line-height: 1.3;
	font-weight: 600;
}

body.ap-account-studio .apsv33-pay-head p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsv33-pay-head > strong {
	flex: 0 0 auto;
	min-height: 30px;
	display: inline-flex;
	align-items: center;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.05);
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .05em;
}

body.ap-account-studio .apsv33-pay-grid {
	display: grid;
	grid-template-columns:
		minmax(180px, .55fr)
		minmax(240px, 1fr)
		auto;
	gap: 12px;
	align-items: end;
	padding: 16px 17px;
}

body.ap-account-studio .apsv33-pay-grid label {
	display: block;
	margin-bottom: 7px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsv33-pay-grid label > span {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsv33-amount-input {
	min-height: 48px;
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.261);
}

body.ap-account-studio .apsv33-amount-input > span {
	display: grid;
	place-items: center;
	border-right: 1px solid #d7ded3;
	color: var(--apaccount-cyan);
	font-size: 13px;
	font-weight: 600;
}

body.ap-account-studio .apsv33-amount-input input,
body.ap-account-studio .apsv33-pay-grid textarea {
	width: 100%;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	color: #24392d !important;
	box-shadow: none !important;
}

body.ap-account-studio .apsv33-amount-input input {
	min-height: 48px;
	padding: 0 11px;
	font-size: 13px;
	font-weight: 600;
}

body.ap-account-studio .apsv33-pay-grid textarea {
	min-height: 48px;
	padding: 9px 10px;
	border: 1px solid #d7ded3 !important;
	border-radius: 7px !important;
	font-size: 11px;
	line-height: 1.5;
	resize: vertical;
}

body.ap-account-studio .apsv33-pay-grid small {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.45;
}

body.ap-account-studio .apsv33-pay-button {
	min-height: 48px;
	white-space: nowrap;
}

body.ap-account-studio .apsv33-pay-foot {
	padding: 10px 17px;
	border-top: 1px solid #d7ded3;
	background: rgba(78,115,90,0.015);
}

body.ap-account-studio .apsv33-pay-foot span {
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsv33-paid-card {
	display: flex;
	align-items: center;
	gap: 11px;
	margin: 0 15px 14px;
	padding: 14px 15px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: rgba(78,115,90,0.025);
}

@media (max-width: 920px) {
	body.ap-account-studio .apsv33-pay-grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apsv33-pay-button {
		width: 100%;
	}
}

@media (max-width: 620px) {
	body.ap-account-studio .apsv33-pay-head,
	body.ap-account-studio .apsv33-pay-grid {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apsv33-pay-head {
		flex-direction: column;
	}
}



/* ============================================================
   CUSTOMER PORTAL — SERVICE RECORD v4.0.0
   ============================================================ */

body.ap-account-studio .apsr4-card {
	position: relative;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		radial-gradient(circle at 92% 10%, rgba(78,115,90,0.07), transparent 32%),
		linear-gradient(145deg, rgba(220,227,213,0.324), rgba(220,227,213,0.2));
	box-shadow: 0 16px 42px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsr4-card-accent {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 3px;
	background: linear-gradient(180deg, var(--apaccount-cyan), rgba(78,115,90,0.09));
}

body.ap-account-studio .apsr4-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 19px 16px 21px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-card-head > div:first-child > span,
body.ap-account-studio .apsr4-step-head small,
body.ap-account-studio .apsr4-work-card > span,
body.ap-account-studio .apsr4-advice-grid span,
body.ap-account-studio .apsr4-next-service span,
body.ap-account-studio .apsr4-subhead span,
body.ap-account-studio .apsr4-pay > div:first-child > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr4-card-head > div:first-child > span {
	font-size: 11px;
}

body.ap-account-studio .apsr4-card-head h3 {
	margin: 6px 0 0 !important;
	color: #24392d !important;
	font-size: 20px !important;
	line-height: 1.25 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsr4-card-head p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsr4-card-status {
	min-height: 30px;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.04);
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
	white-space: nowrap;
}

body.ap-account-studio .apsr4-card-status i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 8px currentColor;
}

body.ap-account-studio .apsr4-card-grid,
body.ap-account-studio .apsr4-money {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apsr4-card-grid {
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-card-grid > div,
body.ap-account-studio .apsr4-money > div {
	min-width: 0;
	padding: 13px 14px;
	border-right: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-card-grid > div:last-child,
body.ap-account-studio .apsr4-money > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apsr4-card-grid span,
body.ap-account-studio .apsr4-overview-grid span,
body.ap-account-studio .apsr4-money span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsr4-card-grid strong,
body.ap-account-studio .apsr4-overview-grid strong,
body.ap-account-studio .apsr4-money strong {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
	font-weight: 600;
}

body.ap-account-studio .apsr4-card-grid strong,
body.ap-account-studio .apsr4-money strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ap-account-studio .apsr4-card-grid .is-due strong,
body.ap-account-studio .apsr4-money .is-due strong {
	color: #86621d;
}

body.ap-account-studio .apsr4-card-grid .is-paid strong,
body.ap-account-studio .apsr4-money .is-paid strong {
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apsr4-card-update {
	padding: 13px 16px 13px 21px;
	border-bottom: 1px solid #d7ded3;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apsr4-card-update span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsr4-card-update p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apsr4-card-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 13px 16px 13px 21px;
}

body.ap-account-studio .apsr4-card-foot > span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr4-detail {
	display: grid;
	gap: 12px;
}

body.ap-account-studio .apsr4-success,
body.ap-account-studio .apsr4-paid {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	padding: 14px 15px;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background: linear-gradient(135deg, rgba(78,115,90,0.08), rgba(220,227,213,0.25200000000000006));
}

body.ap-account-studio .apsr4-success > i,
body.ap-account-studio .apsr4-paid > i {
	width: 30px;
	height: 30px;
	display: grid;
	place-items: center;
	flex: 0 0 30px;
	border-radius: 50%;
	background: var(--apaccount-cyan);
	color: #24392d;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr4-success span,
body.ap-account-studio .apsr4-paid span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr4-success strong,
body.ap-account-studio .apsr4-paid strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-success p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsr4-detail-hero {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 22px;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		radial-gradient(circle at 88% 10%, rgba(78,115,90,0.09), transparent 34%),
		linear-gradient(145deg, rgba(220,227,213,0.324), rgba(220,227,213,0.2));
}

body.ap-account-studio .apsr4-detail-hero > div:first-child > span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .apsr4-detail-hero h2 {
	margin: 7px 0 0 !important;
	color: #24392d !important;
	font-size: 29px !important;
	line-height: 1.08 !important;
	font-weight: 600 !important;
	letter-spacing: -.035em !important;
}

body.ap-account-studio .apsr4-detail-hero p {
	margin: 7px 0 0;
	color: #68746b;
	font-size: 12px;
	line-height: 1.6;
}

body.ap-account-studio .apsr4-detail-hero-side {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 12px;
}

body.ap-account-studio .apsr4-detail-hero-side > div {
	text-align: right;
}

body.ap-account-studio .apsr4-detail-hero-side span {
	display: block;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr4-detail-hero-side strong {
	display: block;
	margin-top: 5px;
	color: var(--apaccount-cyan);
	font-size: 13px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-progress-wrap,
body.ap-account-studio .apsr4-step {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background: linear-gradient(145deg, rgba(220,227,213,0.225), rgba(220,227,213,0.2));
}

body.ap-account-studio .apsr4-step-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 17px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-step-head > span {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	flex: 0 0 38px;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-step-head h3 {
	margin: 4px 0 0 !important;
	color: #24392d !important;
	font-size: 17px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsr4-step-head p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsr4-overview-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.ap-account-studio .apsr4-overview-grid > div {
	min-width: 0;
	padding: 13px 14px;
	border-right: 1px solid #d7ded3;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-overview-grid > div:nth-child(4n) {
	border-right: 0;
}

body.ap-account-studio .apsr4-note {
	margin: 13px;
	padding: 13px 14px;
	border: 1px solid #d7ded3;
	border-left: 3px solid var(--apaccount-cyan);
	border-radius: 8px;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apsr4-note span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr4-note p,
body.ap-account-studio .apsr4-work-card p,
body.ap-account-studio .apsr4-advice-grid p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.7;
}

body.ap-account-studio .apsr4-work-grid,
body.ap-account-studio .apsr4-advice-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	padding: 13px;
}

body.ap-account-studio .apsr4-advice-grid {
	padding-top: 0;
}

body.ap-account-studio .apsr4-work-card,
body.ap-account-studio .apsr4-advice-grid > div {
	min-width: 0;
	padding: 14px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-work-card > strong {
	display: block;
	margin-top: 5px;
	color: #24392d;
	font-size: 12px;
	line-height: 1.5;
	font-weight: 600;
}

body.ap-account-studio .apsr4-qc {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	padding: 0 13px 13px;
}

body.ap-account-studio .apsr4-qc > div {
	min-height: 56px;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 9px 10px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-qc i {
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	flex: 0 0 22px;
	border: 1px solid #d7ded3;
	border-radius: 5px;
	color: #68746b;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr4-qc span {
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
}

body.ap-account-studio .apsr4-qc > div.is-pass {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apsr4-qc > div.is-pass i {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
}

body.ap-account-studio .apsr4-qc > div.is-pass span {
	color: #68746b;
}

body.ap-account-studio .apsr4-next-service {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 0 13px 13px;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(78,115,90,0.02);
}

body.ap-account-studio .apsr4-next-service strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-timeline,
body.ap-account-studio .apsr4-payments {
	margin: 0 13px 13px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-subhead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-subhead strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-timeline article {
	display: grid;
	grid-template-columns: 10px minmax(0, 1fr);
	gap: 9px;
	padding: 10px 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-timeline article > i {
	width: 7px;
	height: 7px;
	margin-top: 5px;
	border: 2px solid var(--apaccount-cyan);
	border-radius: 50%;
}

body.ap-account-studio .apsr4-timeline article strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-timeline article p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsr4-timeline article small {
	display: block;
	margin-top: 4px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr4-media {
	display: grid;
	gap: 15px;
	padding: 0 13px 13px;
}

body.ap-account-studio .apsr4-media-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding-top: 8px;
}

body.ap-account-studio .apsr4-media-grid article {
	min-width: 0;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-media-grid a {
	display: block;
	aspect-ratio: 4 / 3;
}

body.ap-account-studio .apsr4-media-grid img,
body.ap-account-studio .apsr4-media-grid video {
	width: 100%;
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	background: #f9faf4;
}

body.ap-account-studio .apsr4-media-grid article p {
	margin: 0;
	padding: 9px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .apsr4-money {
	overflow: hidden;
	margin: 13px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
}

body.ap-account-studio .apsr4-money > div {
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-money .is-due {
	background: rgba(255, 190, 72, .035);
}

body.ap-account-studio .apsr4-billing-table {
	margin: 0 13px 13px;
	overflow-x: auto;
	border: 1px solid #d7ded3;
	border-radius: 8px;
}

body.ap-account-studio .apsr4-billing-head,
body.ap-account-studio .apsr4-billing-row {
	min-width: 720px;
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr) 70px 110px 110px;
	gap: 10px;
	align-items: center;
}

body.ap-account-studio .apsr4-billing-head {
	padding: 10px 11px;
	background: rgba(78,115,90,0.035);
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
}

body.ap-account-studio .apsr4-billing-row {
	padding: 11px;
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-billing-row > span {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr4-billing-row > strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-empty-billing {
	margin: 0 13px 13px;
	padding: 16px;
	border: 1px dashed #d7ded3;
	border-radius: 8px;
	color: #68746b;
	font-size: 11px;
	text-align: center;
}

body.ap-account-studio .apsr4-pay {
	margin: 0 13px 13px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background:
		radial-gradient(circle at 90% 8%, rgba(78,115,90,0.07), transparent 34%),
		rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr4-pay > div:first-child {
	padding: 13px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-pay h4 {
	margin: 4px 0 0;
	color: #24392d;
	font-size: 14px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-pay p {
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr4-pay-fields {
	display: grid;
	grid-template-columns: minmax(170px, .6fr) minmax(220px, 1fr) auto;
	gap: 10px;
	align-items: end;
	padding: 13px;
}

body.ap-account-studio .apsr4-pay-fields label > span {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-bottom: 6px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
}

body.ap-account-studio .apsr4-pay-fields label small {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr4-pay-fields label > div {
	min-height: 46px;
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 7px;
	background: rgba(220,227,213,0.225);
}

body.ap-account-studio .apsr4-pay-fields label > div > i {
	display: grid;
	place-items: center;
	border-right: 1px solid #d7ded3;
	color: var(--apaccount-cyan);
	font-size: 12px;
	font-style: normal;
}

body.ap-account-studio .apsr4-pay-fields input,
body.ap-account-studio .apsr4-pay-fields textarea {
	width: 100%;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	color: #24392d !important;
	box-shadow: none !important;
}

body.ap-account-studio .apsr4-pay-fields input {
	min-height: 46px;
	padding: 0 10px;
}

body.ap-account-studio .apsr4-pay-fields textarea {
	min-height: 46px;
	padding: 8px 9px;
	border: 1px solid #d7ded3 !important;
	border-radius: 7px !important;
	resize: vertical;
}

body.ap-account-studio .apsr4-paid {
	margin: 0 13px 13px;
}

body.ap-account-studio .apsr4-payments article {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 12px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr4-payments article:last-child {
	border-bottom: 0;
}

body.ap-account-studio .apsr4-payments article strong {
	color: #24392d;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr4-payments article span {
	display: block;
	margin-top: 3px;
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr4-payments article p {
	max-width: 52%;
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsr4-doc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0 13px 13px;
}

@media (max-width: 1060px) {
	body.ap-account-studio .apsr4-overview-grid,
	body.ap-account-studio .apsr4-card-grid,
	body.ap-account-studio .apsr4-money {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apsr4-qc {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.ap-account-studio .apsr4-media-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	body.ap-account-studio .apsr4-card-head,
	body.ap-account-studio .apsr4-card-foot,
	body.ap-account-studio .apsr4-detail-hero,
	body.ap-account-studio .apsr4-payments article {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apsr4-card-grid,
	body.ap-account-studio .apsr4-overview-grid,
	body.ap-account-studio .apsr4-work-grid,
	body.ap-account-studio .apsr4-qc,
	body.ap-account-studio .apsr4-advice-grid,
	body.ap-account-studio .apsr4-money,
	body.ap-account-studio .apsr4-media-grid,
	body.ap-account-studio .apsr4-pay-fields {
		grid-template-columns: 1fr;
	}

	body.ap-account-studio .apsr4-detail-hero-side {
		width: 100%;
		align-items: flex-start;
	}

	body.ap-account-studio .apsr4-detail-hero-side > div {
		text-align: left;
	}

	body.ap-account-studio .apsr4-card-grid > div,
	body.ap-account-studio .apsr4-overview-grid > div,
	body.ap-account-studio .apsr4-money > div {
		border-right: 0;
	}

	body.ap-account-studio .apsr4-payments article p {
		max-width: 100%;
	}

	body.ap-account-studio .apsr4-doc-actions .apaccount-button {
		width: 100%;
	}

	body.ap-account-studio .apsr4-detail-hero h2 {
		font-size: 25px !important;
	}
}



/* ============================================================
   CUSTOMER PORTAL — ESTIMATE APPROVAL + DOT PROGRESS v4.1.0
   ============================================================ */

body.ap-account-studio .apsr41-estimate {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 12px;
	background:
		radial-gradient(
			circle at 88% 10%,
			rgba(78,115,90,0.08),
			transparent 34%
		),
		linear-gradient(
			145deg,
			rgba(220,227,213,0.30600000000000005),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsr41-estimate-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 19px;
	border-bottom: 1px solid #d7ded3;
}

body.ap-account-studio .apsr41-estimate-head > div > span,
body.ap-account-studio .apsr41-estimate-note > span,
body.ap-account-studio .apsr41-estimate-summary span,
body.ap-account-studio .apsr41-estimate-approved span,
body.ap-account-studio .apsr41-advance-pay > div > span,
body.ap-account-studio .apsr41-advance-paid span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsr41-estimate-head h3 {
	margin: 5px 0 0 !important;
	color: #24392d !important;
	font-size: 18px !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsr41-estimate-head p {
	max-width: 700px;
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apsr41-estimate-status {
	flex: 0 0 auto;
	min-height: 30px;
	display: inline-flex;
	align-items: center;
	padding: 0 10px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(255, 202, 99, .04);
	color: #86621d;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
}

body.ap-account-studio .apsr41-estimate-status.is-approved {
	border-color: #d7ded3;
	background: rgba(78,115,90,0.04);
	color: var(--apaccount-cyan);
}

body.ap-account-studio .apsr41-estimate-table {
	overflow-x: auto;
	margin: 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
}

body.ap-account-studio .apsr41-estimate-table-head,
body.ap-account-studio .apsr41-estimate-row {
	min-width: 720px;
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) 70px 110px 110px;
	gap: 10px;
	align-items: center;
	padding: 10px 11px;
}

body.ap-account-studio .apsr41-estimate-table-head {
	background: rgba(78,115,90,0.035);
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
}

body.ap-account-studio .apsr41-estimate-row {
	border-top: 1px solid #d7ded3;
}

body.ap-account-studio .apsr41-estimate-row > span {
	color: #68746b;
	font-size: 11px;
}

body.ap-account-studio .apsr41-estimate-row > strong {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr41-estimate-summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0 13px 13px;
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 8px;
}

body.ap-account-studio .apsr41-estimate-summary > div {
	min-width: 0;
	padding: 12px;
	border-right: 1px solid #d7ded3;
	background: rgba(220,227,213,0.2);
}

body.ap-account-studio .apsr41-estimate-summary > div:last-child {
	border-right: 0;
}

body.ap-account-studio .apsr41-estimate-summary strong {
	display: block;
	margin-top: 5px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
	font-weight: 600;
}

body.ap-account-studio .apsr41-estimate-note {
	margin: 0 13px 13px;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-left: 3px solid var(--apaccount-cyan);
	border-radius: 8px;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apsr41-estimate-note p {
	margin: 6px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.65;
}

body.ap-account-studio .apsr41-estimate-approve {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 13px;
	border-top: 1px solid #d7ded3;
	background: rgba(78,115,90,0.012);
}

body.ap-account-studio .apsr41-estimate-approve > label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	max-width: 760px;
	cursor: pointer;
}

body.ap-account-studio .apsr41-estimate-approve input {
	width: 17px;
	height: 17px;
	margin-top: 1px;
	flex: 0 0 17px;
}

body.ap-account-studio .apsr41-estimate-approve label span {
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .apsr41-estimate-approved,
body.ap-account-studio .apsr41-advance-paid {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 13px 13px;
	padding: 12px 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(78,115,90,0.025);
}

body.ap-account-studio .apsr41-estimate-approved > i,
body.ap-account-studio .apsr41-advance-paid > i {
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	flex: 0 0 28px;
	border-radius: 50%;
	background: var(--apaccount-cyan);
	color: #24392d;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr41-estimate-approved strong,
body.ap-account-studio .apsr41-advance-paid strong {
	display: block;
	margin-top: 3px;
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
}

body.ap-account-studio .apsr41-advance-pay {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 0 13px 13px;
	padding: 13px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.045),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsr41-advance-pay > div > strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 17px;
	font-weight: 600;
}

body.ap-account-studio .apsr41-advance-pay p {
	max-width: 650px;
	margin: 4px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

/* Dot + line workshop progress */
body.ap-account-studio .apsr4-progress-wrap {
	padding: 16px 18px;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress {
	position: relative;
	display: flex !important;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0 !important;
	padding: 0 !important;
	overflow: visible;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress::before {
	content: "";
	position: absolute;
	top: 12px;
	left: 7%;
	right: 7%;
	height: 1px;
	background: rgba(78,115,90,0.09);
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step {
	position: relative;
	z-index: 1;
	width: 16.666%;
	min-height: 0 !important;
	display: flex !important;
	align-items: center !important;
	flex-direction: column;
	gap: 7px !important;
	padding: 0 5px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step::before {
	display: none !important;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step i {
	width: 25px !important;
	height: 25px !important;
	display: grid !important;
	place-items: center !important;
	border: 2px solid #d7ded3 !important;
	border-radius: 50% !important;
	background: #f9faf4 !important;
	color: #68746b !important;
	font-size: 11px !important;
	font-style: normal;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step span {
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1.35 !important;
	font-weight: 600 !important;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step.is-complete i {
	border-color: var(--apaccount-cyan) !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step.is-complete span {
	color: #68746b !important;
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step.is-current i {
	border-color: var(--apaccount-cyan) !important;
	background: #f9faf4 !important;
	color: var(--apaccount-cyan) !important;
	box-shadow: 0 0 0 4px rgba(24,34,29,0.06);
}

body.ap-account-studio .apsr4-progress-wrap .apsv3-progress-step.is-current span {
	color: #24392d !important;
}

@media (max-width: 760px) {
	body.ap-account-studio .apsr41-estimate-head,
	body.ap-account-studio .apsr41-estimate-approve,
	body.ap-account-studio .apsr41-advance-pay {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apsr41-estimate-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ap-account-studio .apsr4-progress-wrap {
		overflow-x: auto;
	}

	body.ap-account-studio .apsr4-progress-wrap .apsv3-progress {
		min-width: 660px;
	}
}



/* ============================================================
   CUSTOMER PORTAL — APPROVAL + ADVANCE WORK GATE v4.1.2
   ============================================================ */

body.ap-account-studio .apsr412-work-gate {
	overflow: hidden;
	border: 1px solid #d7ded3;
	border-radius: 10px;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.234),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsr412-work-gate > div {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 15px;
}

body.ap-account-studio .apsr412-work-gate i {
	width: 32px;
	height: 32px;
	display: grid;
	place-items: center;
	flex: 0 0 32px;
	border: 1px solid #d7ded3;
	border-radius: 50%;
	background: rgba(78,115,90,0.025);
	color: #68746b;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr412-work-gate span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .09em;
}

body.ap-account-studio .apsr412-work-gate strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 12px;
	line-height: 1.45;
	font-weight: 600;
}

body.ap-account-studio .apsr412-work-gate p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.6;
}

body.ap-account-studio .apsr412-work-gate.is-locked {
	border-color: #d7ded3;
	background:
		linear-gradient(
			145deg,
			rgba(220,227,213,0.2),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsr412-work-gate.is-locked i {
	border-color: #d7ded3;
	color: #86621d;
}

body.ap-account-studio .apsr412-work-gate.is-unlocked {
	border-color: #d7ded3;
	background:
		linear-gradient(
			145deg,
			rgba(78,115,90,0.07),
			rgba(220,227,213,0.2)
		);
}

body.ap-account-studio .apsr412-work-gate.is-unlocked i {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
	color: #24392d;
}

body.ap-account-studio .apsr412-advance-wait {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	margin-top: 10px;
	padding: 13px 14px;
	border: 1px solid #d7ded3;
	border-radius: 9px;
	background: rgba(255, 199, 104, .035);
}

body.ap-account-studio .apsr412-advance-wait > i {
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	flex: 0 0 28px;
	border: 1px solid #d7ded3;
	border-radius: 50%;
	color: #86621d;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr412-advance-wait span {
	display: block;
	color: #86621d;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr412-advance-wait strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 11px;
	line-height: 1.5;
	font-weight: 600;
}

body.ap-account-studio .apsr412-advance-wait p,
body.ap-account-studio .apsr41-advance-paid p {
	margin: 5px 0 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.55;
}



/* ============================================================
   CUSTOMER PORTAL — AUTOMATIC SERVICE LIFECYCLE v4.2.0
   Premium dot + connecting line progress
   ============================================================ */

body.ap-account-studio .apsr42-lifecycle {
	padding: 18px 17px 15px;
}

body.ap-account-studio .apsr42-lifecycle-track {
	position: relative;
	display: grid;
	grid-template-columns:
		repeat(8, minmax(118px, 1fr));
	gap: 0;
	min-width: 760px;
}

body.ap-account-studio .apsr42-lifecycle-track::before {
	content: "";
	position: absolute;
	top: 12px;
	left: 6.25%;
	right: 6.25%;
	height: 1px;
	background:
		linear-gradient(
			90deg,
			rgba(78,115,90,0.09),
			rgba(78,115,90,0.08)
		);
	z-index: 0;
}

body.ap-account-studio .apsr42-lifecycle-step {
	position: relative;
	z-index: 1;
	display: grid;
	justify-items: center;
	gap: 8px;
	min-width: 0;
	text-align: center;
}

body.ap-account-studio .apsr42-lifecycle-dot {
	width: 25px;
	height: 25px;
	display: grid;
	place-items: center;
	border: 1px solid #d7ded3;
	border-radius: 50%;
	background: #f9faf4;
	box-shadow:
		0 0 0 5px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsr42-lifecycle-dot > i {
	width: 9px;
	height: 9px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: rgba(78,115,90,0.09);
	color: #24392d;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
}

body.ap-account-studio .apsr42-lifecycle-step > span {
	max-width: 116px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	letter-spacing: .045em;
}

body.ap-account-studio .apsr42-lifecycle-step.is-complete .apsr42-lifecycle-dot {
	border-color: var(--apaccount-cyan);
	background: var(--apaccount-cyan);
}

body.ap-account-studio .apsr42-lifecycle-step.is-complete .apsr42-lifecycle-dot > i {
	background: transparent;
	color: #24392d;
}

body.ap-account-studio .apsr42-lifecycle-step.is-complete > span {
	color: #68746b;
}

body.ap-account-studio .apsr42-lifecycle-step.is-current .apsr42-lifecycle-dot {
	border-color: var(--apaccount-cyan);
	background: #f9faf4;
	box-shadow:
		0 0 0 5px rgba(24,34,29,0.1),
		0 0 0 7px rgba(24,34,29,0.08),
		0 0 20px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsr42-lifecycle-step.is-current .apsr42-lifecycle-dot > i {
	background: var(--apaccount-cyan);
	box-shadow:
		0 0 12px rgba(24,34,29,0.1);
}

body.ap-account-studio .apsr42-lifecycle-step.is-current > span {
	color: #24392d;
}

body.ap-account-studio .apsr42-lifecycle-current {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 16px;
	padding: 11px 12px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(78,115,90,0.018);
}

body.ap-account-studio .apsr42-lifecycle-current > span {
	color: #68746b;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsr42-lifecycle-current > strong {
	color: var(--apaccount-cyan);
	font-size: 11px;
	line-height: 1.4;
	font-weight: 600;
	text-align: right;
}

body.ap-account-studio .apsr42-lifecycle.is-compact {
	padding: 12px;
	overflow-x: auto;
}

body.ap-account-studio .apsr42-lifecycle.is-compact .apsr42-lifecycle-current {
	display: none;
}

body.ap-account-studio .apsr4-progress-wrap {
	overflow-x: auto !important;
}

@media (max-width: 920px) {
	body.ap-account-studio .apsr42-lifecycle {
		overflow-x: auto;
		padding-bottom: 18px;
	}
}

@media (max-width: 620px) {
	body.ap-account-studio .apsr42-lifecycle-track {
		min-width: 960px;
	}

	body.ap-account-studio .apsr42-lifecycle-current {
		align-items: flex-start;
		flex-direction: column;
	}

	body.ap-account-studio .apsr42-lifecycle-current > strong {
		text-align: left;
	}
}



/* ============================================================
   CUSTOMER PORTAL — ESTIMATE APPROVAL + ADVANCE ACTIONS v4.2.2
   ============================================================ */

body.ap-account-studio .apsr422-estimate-approve
[data-apsr422-estimate-submit] {
	cursor: pointer !important;
	opacity: .58 !important;
	border-color: #d7ded3 !important;
	background: rgba(78,115,90,0.08) !important;
	color: #68746b !important;
	box-shadow: none !important;
	transition:
		opacity .18s ease,
		background .18s ease,
		border-color .18s ease,
		box-shadow .18s ease,
		transform .18s ease !important;
}

body.ap-account-studio .apsr422-estimate-approve:has(
	input[name="estimate_consent"]:checked
)
[data-apsr422-estimate-submit] {
	opacity: 1 !important;
	border-color: var(--apaccount-cyan) !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
	box-shadow:
		0 0 0 1px rgba(24,34,29,0.1),
		0 10px 24px rgba(24,34,29,0.1) !important;
}

body.ap-account-studio .apsr422-estimate-approve:has(
	input[name="estimate_consent"]:checked
)
[data-apsr422-estimate-submit]:hover {
	transform: translateY(-1px);
}

body.ap-account-studio .apsr422-consent {
	cursor: pointer;
}

body.ap-account-studio .apsr422-consent input[type="checkbox"] {
	cursor: pointer;
}

body.ap-account-studio .apsr422-advance-pay
.apaccount-button {
	cursor: pointer !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.ap-account-studio .apsr422-estimate-approve.is-submitting
[data-apsr422-estimate-submit],
body.ap-account-studio .apsr422-advance-pay.is-submitting
.apaccount-button {
	pointer-events: none !important;
	opacity: .62 !important;
}


body.ap-account-studio .apsr422-estimate-approve.has-consent
[data-apsr422-estimate-submit] {
	opacity: 1 !important;
	border-color: var(--apaccount-cyan) !important;
	background: var(--apaccount-cyan) !important;
	color: #24392d !important;
	box-shadow:
		0 0 0 1px rgba(24,34,29,0.1),
		0 10px 24px rgba(24,34,29,0.1) !important;
}



/* ============================================================
   CUSTOMER PORTAL — ESTIMATE RETURN POSITION v4.2.4
   ============================================================ */

body.ap-account-studio #service-estimate {
	scroll-margin-top: 118px;
}



/* ============================================================
   CUSTOMER PORTAL — APPROVAL ACTION ROUTE v4.2.5
   ============================================================ */

body.ap-account-studio .apsr425-error {
	border-color: #d7ded3 !important;
	background: rgba(255, 108, 108, .045) !important;
}

body.ap-account-studio .apsr425-error > i {
	border-color: #d7ded3 !important;
	color: #86621d !important;
}



/* ============================================================
   CUSTOMER PORTAL — SAME-PAGE PAYMENT MODAL v4.2.6
   ============================================================ */

body.ap-account-studio.ap-service-payment-open {
	overflow: hidden !important;
}

body.ap-account-studio .ap-service-payment-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: #f9faf4;
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
}

body.ap-account-studio .ap-service-payment-modal.is-open {
	display: flex;
}

body.ap-account-studio .ap-service-payment-dialog {
	width: min(880px, 100%);
	height: min(760px, calc(100vh - 48px));
	overflow: hidden;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	border: 1px solid #d7ded3;
	border-radius: 16px;
	background: #f9faf4;
	box-shadow:
		0 28px 80px rgba(24,34,29,0.1);
}

body.ap-account-studio .ap-service-payment-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 15px 17px;
	border-bottom: 1px solid #d7ded3;
	background:
		linear-gradient(
			135deg,
			rgba(78,115,90,0.055),
			#f9faf4
		);
}

body.ap-account-studio .ap-service-payment-head-copy span {
	display: block;
	color: var(--apaccount-cyan);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .10em;
}

body.ap-account-studio .ap-service-payment-head-copy strong {
	display: block;
	margin-top: 4px;
	color: #24392d;
	font-size: 15px;
	line-height: 1.35;
	font-weight: 600;
}

body.ap-account-studio .ap-service-payment-head-copy small {
	display: block;
	margin-top: 3px;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .ap-service-payment-close {
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	flex: 0 0 36px;
	border: 1px solid #d7ded3;
	border-radius: 50%;
	background: rgba(78,115,90,0.025);
	color: #24392d;
	cursor: pointer;
	font-size: 18px;
	line-height: 1;
}

body.ap-account-studio .ap-service-payment-frame-wrap {
	position: relative;
	min-height: 0;
	background: #f9faf4;
}

body.ap-account-studio .ap-service-payment-loading {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: grid;
	place-items: center;
	padding: 20px;
	background: #f9faf4;
	color: #68746b;
	text-align: center;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
}

body.ap-account-studio .ap-service-payment-loading.is-hidden {
	display: none;
}

body.ap-account-studio .ap-service-payment-frame {
	width: 100%;
	height: 100%;
	min-height: 520px;
	display: block;
	border: 0;
	background: #f9faf4;
}

body.ap-account-studio .ap-service-payment-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 11px 16px;
	border-top: 1px solid #d7ded3;
	background: #f9faf4;
}

body.ap-account-studio .ap-service-payment-foot p {
	margin: 0;
	color: #68746b;
	font-size: 11px;
	line-height: 1.5;
}

body.ap-account-studio .ap-service-payment-fallback {
	color: var(--apaccount-cyan);
	text-decoration: none;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .07em;
	white-space: nowrap;
}

body.ap-account-studio .ap-service-payment-error {
	display: none;
	margin: 10px 0 0;
	padding: 10px 11px;
	border: 1px solid #d7ded3;
	border-radius: 8px;
	background: rgba(255, 100, 100, .035);
	color: #934630;
	font-size: 11px;
	line-height: 1.55;
}

body.ap-account-studio .ap-service-payment-error.is-visible {
	display: block;
}

body.ap-account-studio [data-ap-service-payment-form].is-preparing-payment
button[type="submit"] {
	pointer-events: none !important;
	opacity: .58 !important;
}

@media (max-width: 760px) {
	body.ap-account-studio .ap-service-payment-modal {
		padding: 0;
	}

	body.ap-account-studio .ap-service-payment-dialog {
		width: 100%;
		height: 100%;
		border: 0;
		border-radius: 0;
	}

	body.ap-account-studio .ap-service-payment-frame {
		min-height: 100%;
	}

	body.ap-account-studio .ap-service-payment-foot {
		align-items: flex-start;
		flex-direction: column;
	}
}



/* ============================================================
   CUSTOMER PORTAL — PRE-ESTIMATE INSPECTION v4.2.8
   ============================================================ */

body.ap-account-studio .apsr428-inspection {
	border-color: #d7ded3 !important;
	background:
		linear-gradient(
			145deg,
			rgba(78,115,90,0.025),
			rgba(220,227,213,0.2)
		) !important;
}



/* ============================================================
   CUSTOMER PORTAL — CLEAN PAYMENT PRESENTATION v4.3.3
   ============================================================ */

/* Service Record payment history */
body.ap-account-studio .apsv433-service-payments article {
	display: grid !important;
	grid-template-columns:
		minmax(190px, .65fr)
		minmax(0, 1fr) !important;
	gap: 18px !important;
	align-items: center !important;
}

body.ap-account-studio .apsv433-service-payment-main {
	min-width: 0;
}

body.ap-account-studio .apsv433-service-payment-type {
	display: inline-flex !important;
	width: fit-content;
	margin: 0 0 5px !important;
	padding: 4px 7px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: rgba(78,115,90,0.035);
	color: var(--apaccount-cyan) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv433-service-payment-note {
	min-width: 0;
	text-align: right;
}

body.ap-account-studio .apsv433-service-payment-note > span {
	display: block;
	margin: 0 0 4px !important;
	color: #68746b !important;
	font-size: 11px !important;
	font-weight: 600;
	letter-spacing: .04em;
}

body.ap-account-studio .apsv433-service-payment-note > p {
	max-width: none !important;
	margin: 0 !important;
	color: #68746b !important;
	font-size: 11px !important;
	line-height: 1.55 !important;
}

/* Customer invoice payment history */
body.ap-account-studio .apsv32-invoice-payments
.apsv433-payment-row {
	display: grid;
	grid-template-columns:
		minmax(180px, .55fr)
		minmax(0, 1fr);
	gap: 22px;
	align-items: center;
	padding: 12px 0;
}

body.ap-account-studio .apsv433-payment-primary {
	min-width: 0;
}

body.ap-account-studio .apsv433-payment-type {
	display: inline-flex !important;
	width: fit-content;
	margin: 0 0 5px !important;
	padding: 4px 7px;
	border: 1px solid #d7ded3;
	border-radius: 999px;
	background: #f3f5ed;
	color: #087D92 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv433-payment-detail {
	min-width: 0;
	text-align: right;
}

body.ap-account-studio .apsv433-payment-detail > span {
	display: block;
	color: #8A9AA5 !important;
	font-size: 11px !important;
	font-weight: 600;
	letter-spacing: .08em;
}

body.ap-account-studio .apsv433-payment-detail > strong {
	display: block;
	margin-top: 3px;
	color: #435D6E;
	font-size: 11px;
	font-weight: 600;
	overflow-wrap: anywhere;
}

body.ap-account-studio .apsv433-payment-detail > p {
	margin: 5px 0 0 !important;
	color: #667D8D !important;
	font-size: 11px !important;
	line-height: 1.55 !important;
}

/* Paid invoice summary has more rows in v4.3.3. */
body.ap-account-studio .apsv32-invoice-summary > div:last-child > div {
	min-height: 42px;
}

@media (max-width: 760px) {
	body.ap-account-studio .apsv433-service-payments article,
	body.ap-account-studio .apsv32-invoice-payments
	.apsv433-payment-row {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
	}

	body.ap-account-studio .apsv433-service-payment-note,
	body.ap-account-studio .apsv433-payment-detail {
		text-align: left;
	}
}



/* CUSTOMER PORTAL — COMPACT WORKSHOP MEDIA GALLERY v4.3.5 */
body.ap-account-studio .apsr435-media{margin-top:18px;padding:14px;border:1px solid #d7ded3;border-radius:12px;background:linear-gradient(145deg,rgba(78,115,90,0.025),rgba(220,227,213,0.2))}body.ap-account-studio .apsr435-media-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px;padding:0 2px 12px;border-bottom:1px solid #d7ded3}body.ap-account-studio .apsr435-media-head span{display:block;color:var(--apaccount-cyan);font-size:11px;font-weight:600;letter-spacing:.10em}body.ap-account-studio .apsr435-media-head strong{display:block;margin-top:4px;color:#24392d;font-size:15px;font-weight:600}body.ap-account-studio .apsr435-media-head p{margin:4px 0 0;color:#68746b;font-size:11px;line-height:1.55}body.ap-account-studio .apsr435-media-head>small{min-height:25px;display:inline-flex;align-items:center;padding:0 8px;border:1px solid #d7ded3;border-radius:999px;color:#68746b;font-size:11px;font-weight:600}body.ap-account-studio .apsr435-media-phase+.apsr435-media-phase{margin-top:16px;padding-top:15px;border-top:1px solid #d7ded3}body.ap-account-studio .apsr435-media-phase-head{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:10px}body.ap-account-studio .apsr435-media-phase-index{width:30px;height:30px;display:grid;place-items:center;border:1px solid #d7ded3;border-radius:8px;background:rgba(78,115,90,0.035);color:var(--apaccount-cyan);font-size:11px;font-weight:600}body.ap-account-studio .apsr435-media-phase-head>div:nth-child(2)>span{display:block;color:#24392d;font-size:11px;font-weight:600;letter-spacing:.08em}body.ap-account-studio .apsr435-media-phase-head>div:nth-child(2)>p{margin:3px 0 0;color:#68746b;font-size:11px}body.ap-account-studio .apsr435-media-phase-head>strong{color:#68746b;font-size:11px;font-weight:600}body.ap-account-studio .apsr435-media-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}body.ap-account-studio .apsr435-media-card{min-width:0;overflow:hidden;display:block;padding:0;border:1px solid #d7ded3;border-radius:9px;background:rgba(220,227,213,0.30600000000000005);color:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}body.ap-account-studio .apsr435-media-card:hover{transform:translateY(-2px);border-color:#d7ded3;box-shadow:0 10px 24px rgba(24,34,29,0.1)}body.ap-account-studio .apsr435-media-thumb{position:relative;overflow:hidden;display:block;aspect-ratio:4/3;background:#f9faf4}body.ap-account-studio .apsr435-media-thumb img,body.ap-account-studio .apsr435-media-thumb video{width:100%;height:100%;display:block;object-fit:cover}body.ap-account-studio .apsr435-media-thumb>small{position:absolute;right:7px;bottom:7px;z-index:2;min-height:20px;display:inline-flex;align-items:center;padding:0 6px;border:1px solid #d7ded3;border-radius:999px;background:rgba(220,227,213,0.35100000000000003);color:#24392d;font-size:11px;font-weight:600}body.ap-account-studio .apsr435-media-play{position:absolute;top:50%;left:50%;z-index:3;width:34px;height:34px;display:grid;place-items:center;transform:translate(-50%,-50%);border:1px solid #d7ded3;border-radius:50%;background:rgba(220,227,213,0.342);color:var(--apaccount-cyan);font-size:11px;font-style:normal}body.ap-account-studio .apsr435-media-card-copy{display:block;padding:8px 9px 9px}body.ap-account-studio .apsr435-media-card-copy>strong{display:block;overflow:hidden;color:#24392d;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}body.ap-account-studio .apsr435-media-card-copy>span{display:block;margin-top:3px;color:#68746b;font-size:11px}body.ap-account-studio.apsr435-lightbox-open{overflow:hidden!important}body.ap-account-studio .apsr435-lightbox{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:22px;background:#f9faf4;backdrop-filter:blur(10px)}body.ap-account-studio .apsr435-lightbox.is-open{display:flex}body.ap-account-studio .apsr435-lightbox-dialog{width:min(1080px,100%);max-height:calc(100vh - 44px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid #d7ded3;border-radius:14px;background:#f9faf4;box-shadow:0 28px 90px rgba(24,34,29,0.1)}body.ap-account-studio .apsr435-lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;border-bottom:1px solid #d7ded3}body.ap-account-studio .apsr435-lightbox-top span{display:block;color:var(--apaccount-cyan);font-size:11px;font-weight:600;letter-spacing:.10em}body.ap-account-studio .apsr435-lightbox-top strong{display:block;margin-top:3px;color:#24392d;font-size:13px;font-weight:600}body.ap-account-studio .apsr435-lightbox-close{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d7ded3;border-radius:50%;background:rgba(78,115,90,0.025);color:#24392d;font-size:18px;cursor:pointer}body.ap-account-studio .apsr435-lightbox-stage{position:relative;min-height:0;height:min(72vh,720px);display:grid;place-items:center;padding:18px 58px;background:#f9faf4}body.ap-account-studio .apsr435-lightbox-content{width:100%;height:100%;display:grid;place-items:center}body.ap-account-studio .apsr435-lightbox-content img,body.ap-account-studio .apsr435-lightbox-content video{max-width:100%;max-height:100%;display:block;border-radius:8px;object-fit:contain;box-shadow:0 18px 60px rgba(24,34,29,0.1)}body.ap-account-studio .apsr435-lightbox-content video{width:min(100%,980px);height:auto}body.ap-account-studio .apsr435-lightbox-nav{position:absolute;top:50%;z-index:3;width:38px;height:48px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid #d7ded3;border-radius:8px;background:rgba(220,227,213,0.35100000000000003);color:#24392d;font-size:26px;cursor:pointer}body.ap-account-studio .apsr435-lightbox-nav.is-prev{left:12px}body.ap-account-studio .apsr435-lightbox-nav.is-next{right:12px}body.ap-account-studio .apsr435-lightbox-nav.is-hidden{display:none}body.ap-account-studio .apsr435-lightbox-caption{min-height:44px;padding:11px 15px;border-top:1px solid #d7ded3;color:#68746b;font-size:11px;line-height:1.55}@media(max-width:1180px){body.ap-account-studio .apsr435-media-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){body.ap-account-studio .apsr435-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){body.ap-account-studio .apsr435-media{padding:11px}body.ap-account-studio .apsr435-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}body.ap-account-studio .apsr435-lightbox{padding:0}body.ap-account-studio .apsr435-lightbox-dialog{width:100%;height:100%;max-height:none;border:0;border-radius:0}body.ap-account-studio .apsr435-lightbox-stage{height:auto;padding:12px 46px}body.ap-account-studio .apsr435-media-phase-head{grid-template-columns:28px minmax(0,1fr)}body.ap-account-studio .apsr435-media-phase-head>strong{grid-column:2}}



	/* ============================================================
	   CUSTOMER PORTAL v4.4.8
	   PREMIUM MY GARAGE + MOTORCYCLE DETAILS
	   ============================================================ */

	body.ap-account-studio .apgarage48-shell {
		display: grid;
		gap: 14px;
	}

	body.ap-account-studio .apgarage48-toolbar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 18px;
		padding: 15px 16px;
		border: 1px solid #d7ded3;
		border-radius: 12px;
		background:
			linear-gradient(
				135deg,
				#f9faf4,
				#f9faf4
			);
	}

	body.ap-account-studio .apgarage48-toolbar-copy {
		min-width: 0;
	}

	body.ap-account-studio .apgarage48-toolbar-copy span {
		display: block;
		color: #295b51;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .10em;
	}

	body.ap-account-studio .apgarage48-toolbar-copy strong {
		display: block;
		margin-top: 5px;
		color: #24392d;
		font-size: 18px;
		line-height: 1.25;
	}

	body.ap-account-studio .apgarage48-toolbar-copy p {
		margin: 5px 0 0;
		color: #68746b;
		font-size: 11px;
		line-height: 1.55;
	}

	body.ap-account-studio .apgarage48-primary-action,
	body.ap-account-studio .apgarage48-secondary-action {
		min-height: 42px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		padding: 0 14px;
		border-radius: 7px;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
		text-decoration: none;
		white-space: nowrap;
		transition:
			transform .18s ease,
			border-color .18s ease,
			background .18s ease;
	}

	body.ap-account-studio .apgarage48-primary-action {
		border: 1px solid #d7ded3;
		background: #d9eee4;
		color: #24392d;
	}

	body.ap-account-studio .apgarage48-secondary-action {
		border: 1px solid #d7ded3;
		background: #f9faf4;
		color: #24392d;
	}

	body.ap-account-studio .apgarage48-primary-action:hover,
	body.ap-account-studio .apgarage48-secondary-action:hover {
		transform: translateY(-1px);
	}

	/* ------------------------------------------------------------
	   GARAGE LIST
	   ------------------------------------------------------------ */

	body.ap-account-studio .apgarage48-list {
		display: grid;
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
		gap: 13px;
	}

	body.ap-account-studio .apgarage48-bike-card {
		position: relative;
		overflow: hidden;
		display: grid;
		grid-template-columns:
			minmax(190px, .78fr)
			minmax(0, 1.22fr);
		min-height: 268px;
		border: 1px solid #d7ded3;
		border-radius: 14px;
		background:
			radial-gradient(
				circle at 86% 7%,
				rgba(78,115,90,0.09),
				transparent 30%
			),
			linear-gradient(
				145deg,
				#f9faf4,
				#f9faf4
			);
		box-shadow:
			0 18px 42px rgba(24,34,29,0.1);
	}

	body.ap-account-studio .apgarage48-bike-card::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 2px;
		background:
			linear-gradient(
				90deg,
				#d9eee4,
				rgba(78,115,90,0)
			);
	}

	body.ap-account-studio .apgarage48-bike-media {
		position: relative;
		min-height: 268px;
		display: grid;
		place-items: center;
		padding: 14px;
		border-right: 1px solid #d7ded3;
		background:
			linear-gradient(
				145deg,
				#f3f5ed,
				#f3f5ed
			);
	}

	body.ap-account-studio .apgarage48-bike-media img {
		width: 100%;
		height: 100%;
		max-height: 240px;
		display: block;
		object-fit: contain;
		border-radius: 10px;
		background: #f3f5ed;
	}

	body.ap-account-studio .apgarage48-bike-placeholder {
		width: 100%;
		height: 100%;
		min-height: 210px;
		display: grid;
		place-items: center;
		border: 1px dashed #d7ded3;
		border-radius: 10px;
		color: #295b51;
		font-size: 34px;
		font-weight: 600;
		letter-spacing: .06em;
	}

	body.ap-account-studio .apgarage48-bike-content {
		min-width: 0;
		display: flex;
		flex-direction: column;
		padding: 18px;
	}

	body.ap-account-studio .apgarage48-eyebrow {
		display: flex;
		align-items: center;
		gap: 8px;
		color: #295b51;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .10em;
	}

	body.ap-account-studio .apgarage48-eyebrow i {
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background: #d9eee4;
		box-shadow:
			0 0 12px rgba(24,34,29,0.1);
	}

	body.ap-account-studio .apgarage48-bike-content h3 {
		margin: 8px 0 0;
		color: #24392d;
		font-size: 20px;
		line-height: 1.18;
		font-weight: 600;
	}

	body.ap-account-studio .apgarage48-registration {
		margin-top: 6px;
		color: #68746b;
		font-size: 11px;
		font-weight: 700;
	}

	body.ap-account-studio .apgarage48-card-specs {
		display: grid;
		grid-template-columns:
			repeat(
				3,
				minmax(0, 1fr)
			);
		margin-top: 15px;
		overflow: hidden;
		border: 1px solid #d7ded3;
		border-radius: 9px;
	}

	body.ap-account-studio .apgarage48-card-spec {
		min-width: 0;
		padding: 10px;
		border-right: 1px solid #d7ded3;
		background: rgba(220,227,213,0.2);
	}

	body.ap-account-studio .apgarage48-card-spec:last-child {
		border-right: 0;
	}

	body.ap-account-studio .apgarage48-card-spec span {
		display: block;
		color: #68746b;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	body.ap-account-studio .apgarage48-card-spec strong {
		display: block;
		margin-top: 4px;
		overflow: hidden;
		color: #24392d;
		font-size: 11px;
		line-height: 1.35;
		font-weight: 600;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	body.ap-account-studio .apgarage48-service-strip {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-top: 11px;
		padding: 9px 10px;
		border: 1px solid #d7ded3;
		border-radius: 8px;
		background: rgba(220,227,213,0.234);
	}

	body.ap-account-studio .apgarage48-service-strip div {
		min-width: 0;
	}

	body.ap-account-studio .apgarage48-service-strip span {
		display: block;
		color: #68746b;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	body.ap-account-studio .apgarage48-service-strip strong {
		display: block;
		margin-top: 3px;
		overflow: hidden;
		color: #24392d;
		font-size: 11px;
		font-weight: 600;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	body.ap-account-studio .apgarage48-service-strip em {
		flex: 0 0 auto;
		color: #295b51;
		font-size: 11px;
		font-style: normal;
		font-weight: 600;
		letter-spacing: .06em;
	}

	body.ap-account-studio .apgarage48-bike-actions {
		display: flex;
		gap: 8px;
		margin-top: auto;
		padding-top: 14px;
	}

	body.ap-account-studio .apgarage48-bike-actions a {
		flex: 1;
	}

	/* ------------------------------------------------------------
	   BIKE DETAIL HERO
	   ------------------------------------------------------------ */

	body.ap-account-studio .apgarage48-detail-shell {
		display: grid;
		gap: 13px;
	}

	body.ap-account-studio .apgarage48-detail-hero {
		display: grid;
		grid-template-columns:
			minmax(0, 1.18fr)
			minmax(320px, .82fr);
		gap: 12px;
	}

	body.ap-account-studio .apgarage48-detail-media,
	body.ap-account-studio .apgarage48-detail-identity {
		overflow: hidden;
		border: 1px solid #d7ded3;
		border-radius: 14px;
		background:
			linear-gradient(
				145deg,
				#f9faf4,
				#f9faf4
			);
	}

	body.ap-account-studio .apgarage48-detail-media {
		min-height: 408px;
		display: grid;
		place-items: center;
		padding: 14px;
	}

	body.ap-account-studio .apgarage48-detail-media img {
		width: 100%;
		height: 100%;
		max-height: 380px;
		display: block;
		object-fit: contain;
		border-radius: 11px;
		background: #f3f5ed;
	}

	body.ap-account-studio .apgarage48-detail-identity {
		display: flex;
		flex-direction: column;
		padding: 20px;
	}

	body.ap-account-studio .apgarage48-detail-identity h3 {
		margin: 8px 0 0;
		color: #24392d;
		font-size: 23px;
		line-height: 1.15;
		font-weight: 600;
	}

	body.ap-account-studio .apgarage48-detail-reg {
		margin-top: 7px;
		color: #295b51;
		font-size: 12px;
		font-weight: 600;
		letter-spacing: .04em;
	}

	body.ap-account-studio .apgarage48-detail-description {
		margin: 9px 0 0;
		color: #68746b;
		font-size: 11px;
		line-height: 1.6;
	}

	body.ap-account-studio .apgarage48-detail-quick {
		display: grid;
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
		gap: 8px;
		margin-top: 17px;
	}

	body.ap-account-studio .apgarage48-detail-quick div {
		padding: 10px;
		border: 1px solid #d7ded3;
		border-radius: 8px;
		background: rgba(220,227,213,0.2);
	}

	body.ap-account-studio .apgarage48-detail-quick span {
		display: block;
		color: #68746b;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	body.ap-account-studio .apgarage48-detail-quick strong {
		display: block;
		margin-top: 4px;
		color: #24392d;
		font-size: 11px;
		font-weight: 600;
	}

	body.ap-account-studio .apgarage48-detail-actions {
		display: grid;
		grid-template-columns:
			1fr
			1fr;
		gap: 8px;
		margin-top: auto;
		padding-top: 18px;
	}

	/* ------------------------------------------------------------
	   BIKE DETAILS / SPECS
	   ------------------------------------------------------------ */

	body.ap-account-studio .apgarage48-spec-panel {
		overflow: hidden;
		border: 1px solid #d7ded3;
		border-radius: 13px;
		background: #f9faf4;
	}

	body.ap-account-studio .apgarage48-spec-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		padding: 15px 17px;
		border-bottom: 1px solid #d7ded3;
		background:
			linear-gradient(
				135deg,
				#f9faf4,
				#f9faf4
			);
	}

	body.ap-account-studio .apgarage48-spec-head span {
		display: block;
		color: #295b51;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .10em;
	}

	body.ap-account-studio .apgarage48-spec-head h3 {
		margin: 4px 0 0;
		color: #24392d;
		font-size: 16px;
		font-weight: 600;
	}

	body.ap-account-studio .apgarage48-spec-head p {
		margin: 4px 0 0;
		color: #68746b;
		font-size: 11px;
	}

	body.ap-account-studio .apgarage48-spec-grid {
		display: grid;
		grid-template-columns:
			repeat(
				4,
				minmax(0, 1fr)
			);
	}

	body.ap-account-studio .apgarage48-spec-item {
		min-width: 0;
		padding: 14px;
		border-right: 1px solid #d7ded3;
		border-bottom: 1px solid #d7ded3;
	}

	body.ap-account-studio .apgarage48-spec-item:nth-child(4n) {
		border-right: 0;
	}

	body.ap-account-studio .apgarage48-spec-item span {
		display: block;
		color: #68746b;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	body.ap-account-studio .apgarage48-spec-item strong {
		display: block;
		margin-top: 5px;
		color: #24392d;
		font-size: 11px;
		line-height: 1.4;
		font-weight: 600;
		word-break: break-word;
	}

	body.ap-account-studio .apgarage48-notes {
		margin-top: 12px;
		padding: 13px 14px;
		border: 1px solid #d7ded3;
		border-radius: 9px;
		background: rgba(220,227,213,0.216);
	}

	body.ap-account-studio .apgarage48-notes span {
		display: block;
		color: #295b51;
		font-size: 11px;
		font-weight: 600;
		letter-spacing: .08em;
	}

	body.ap-account-studio .apgarage48-notes p {
		margin: 6px 0 0;
		color: #24392d;
		font-size: 11px;
		line-height: 1.6;
	}

	body.ap-account-studio .apgarage48-empty {
		padding: 34px 18px;
		border: 1px dashed #d7ded3;
		border-radius: 12px;
		text-align: center;
		background: rgba(220,227,213,0.2);
	}

	body.ap-account-studio .apgarage48-empty strong {
		color: #24392d;
		font-size: 13px;
	}

	body.ap-account-studio .apgarage48-empty p {
		max-width: 520px;
		margin: 7px auto 0;
		color: #68746b;
		font-size: 11px;
		line-height: 1.55;
	}

	@media (max-width: 1280px) {
		body.ap-account-studio .apgarage48-list {
			grid-template-columns: 1fr;
		}

		body.ap-account-studio .apgarage48-detail-hero {
			grid-template-columns:
				minmax(0, 1fr)
				minmax(300px, .72fr);
		}

		body.ap-account-studio .apgarage48-spec-grid {
			grid-template-columns:
				repeat(
					3,
					minmax(0, 1fr)
				);
		}

		body.ap-account-studio .apgarage48-spec-item:nth-child(4n) {
			border-right:
				1px solid #d7ded3;
		}

		body.ap-account-studio .apgarage48-spec-item:nth-child(3n) {
			border-right: 0;
		}
	}

	@media (max-width: 900px) {
		body.ap-account-studio .apgarage48-detail-hero,
		body.ap-account-studio .apgarage48-bike-card {
			grid-template-columns: 1fr;
		}

		body.ap-account-studio .apgarage48-bike-media {
			min-height: 230px;
			border-right: 0;
			border-bottom:
				1px solid #d7ded3;
		}

		body.ap-account-studio .apgarage48-detail-media {
			min-height: 320px;
		}

		body.ap-account-studio .apgarage48-spec-grid {
			grid-template-columns:
				repeat(
					2,
					minmax(0, 1fr)
				);
		}

		body.ap-account-studio .apgarage48-spec-item:nth-child(3n) {
			border-right:
				1px solid #d7ded3;
		}

		body.ap-account-studio .apgarage48-spec-item:nth-child(2n) {
			border-right: 0;
		}
	}

	@media (max-width: 620px) {
		body.ap-account-studio .apgarage48-toolbar {
			align-items: stretch;
			flex-direction: column;
		}

		body.ap-account-studio .apgarage48-primary-action,
		body.ap-account-studio .apgarage48-secondary-action {
			width: 100%;
		}

		body.ap-account-studio .apgarage48-card-specs,
		body.ap-account-studio .apgarage48-detail-quick,
		body.ap-account-studio .apgarage48-detail-actions,
		body.ap-account-studio .apgarage48-spec-grid {
			grid-template-columns: 1fr;
		}

		body.ap-account-studio .apgarage48-card-spec,
		body.ap-account-studio .apgarage48-spec-item {
			border-right: 0 !important;
		}

		body.ap-account-studio .apgarage48-bike-actions {
			flex-direction: column;
		}

		body.ap-account-studio .apgarage48-detail-media {
			min-height: 250px;
		}
	}
	

	/* ============================================================
	   CUSTOMER PORTAL v4.4.8.1
	   GARAGE BUTTON READABILITY HOTFIX
	   ============================================================ */

	body.ap-account-studio .apgarage48-primary-action,
	body.ap-account-studio .apgarage48-secondary-action {
		min-height: 44px !important;
		font-size: 11px !important;
		line-height: 1 !important;
		font-weight: 600 !important;
		letter-spacing: .075em !important;
		opacity: 1 !important;
		text-shadow: none !important;
	}

	body.ap-account-studio .apgarage48-primary-action,
	body.ap-account-studio .apgarage48-primary-action:link,
	body.ap-account-studio .apgarage48-primary-action:visited {
		border-color: #d7ded3 !important;
		background: #d9eee4 !important;
		color: #24392d !important;
	}

	body.ap-account-studio .apgarage48-primary-action *,
	body.ap-account-studio .apgarage48-primary-action:link *,
	body.ap-account-studio .apgarage48-primary-action:visited * {
		color: #24392d !important;
		opacity: 1 !important;
	}

	body.ap-account-studio .apgarage48-primary-action:hover,
	body.ap-account-studio .apgarage48-primary-action:focus {
		border-color: #d7ded3 !important;
		background: #d9eee4 !important;
		color: #24392d !important;
	}

	body.ap-account-studio .apgarage48-secondary-action,
	body.ap-account-studio .apgarage48-secondary-action:link,
	body.ap-account-studio .apgarage48-secondary-action:visited {
		border-color: #d7ded3 !important;
		background: #f9faf4 !important;
		color: #24392d !important;
	}

	body.ap-account-studio .apgarage48-secondary-action *,
	body.ap-account-studio .apgarage48-secondary-action:link *,
	body.ap-account-studio .apgarage48-secondary-action:visited * {
		color: #24392d !important;
		opacity: 1 !important;
	}

	body.ap-account-studio .apgarage48-secondary-action:hover,
	body.ap-account-studio .apgarage48-secondary-action:focus {
		border-color: #d7ded3 !important;
		background: #f9faf4 !important;
		color: #24392d !important;
	}

	body.ap-account-studio .apgarage48-bike-actions .apgarage48-primary-action,
	body.ap-account-studio .apgarage48-detail-actions .apgarage48-primary-action {
		box-shadow:
			0 7px 18px rgba(24,34,29,0.1) !important;
	}

	body.ap-account-studio .apgarage48-bike-actions .apgarage48-secondary-action,
	body.ap-account-studio .apgarage48-detail-actions .apgarage48-secondary-action {
		box-shadow:
			inset 0 0 0 1px rgba(24,34,29,0.015) !important;
	}

	@media (max-width: 620px) {
		body.ap-account-studio .apgarage48-primary-action,
		body.ap-account-studio .apgarage48-secondary-action {
			min-height: 46px !important;
			font-size: 11px !important;
		}
	}
	

		html:has(body.ap-account-studio),
		body.ap-account-studio {
			min-height: 100%;
			margin: 0;
			background: #f9faf4;
			color: #24392d;
			font-family:
				"Montserrat",
				Inter,
				system-ui,
				sans-serif;
		}

		body.ap-account-studio {
			padding: 18px;
		}

		body.ap-account-studio .ap-service-pay-shell {
			max-width: 760px;
			margin: 0 auto;
		}

		body.ap-account-studio .ap-service-pay-head {
			margin-bottom: 14px;
			padding: 16px 17px;
			border: 1px solid #d7ded3;
			border-radius: 12px;
			background:
				linear-gradient(
					135deg,
					rgba(78,115,90,0.055),
					rgba(220,227,213,0.324)
				);
		}

		body.ap-account-studio .ap-service-pay-head span {
			display: block;
			color: #295b51;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: .10em;
		}

		body.ap-account-studio .ap-service-pay-head h1 {
			margin: 7px 0 0;
			color: #24392d;
			font-size: 22px;
			line-height: 1.2;
			font-weight: 600;
		}

		body.ap-account-studio .ap-service-pay-head p {
			margin: 6px 0 0;
			color: #68746b;
			font-size: 11px;
			line-height: 1.6;
		}

		body.ap-account-studio .woocommerce,
		body.ap-account-studio #order_review,
		body.ap-account-studio #payment {
			color: #24392d;
		}

		body.ap-account-studio .shop_table,
		body.ap-account-studio .shop_table th,
		body.ap-account-studio .shop_table td {
			border-color: #d7ded3 !important;
		}

		body.ap-account-studio .shop_table {
			width: 100%;
			overflow: hidden;
			border: 1px solid #d7ded3 !important;
			border-radius: 10px;
			background: rgba(220,227,213,0.261);
		}

		body.ap-account-studio .shop_table th,
		body.ap-account-studio .shop_table td {
			padding: 11px 12px !important;
			background: transparent !important;
			color: #24392d !important;
			font-size: 11px !important;
		}


		/* ========================================================
		   PREMIUM ORDER SUMMARY ALIGNMENT v4.2.7
		   Product left · Qty center · Amount right
		   ======================================================== */

		body.ap-account-studio .shop_table {
			table-layout: fixed !important;
			margin: 0 !important;
			border-spacing: 0 !important;
			border-collapse: separate !important;
		}

		body.ap-account-studio .shop_table thead th {
			padding: 10px 14px !important;
			border-bottom: 1px solid #d7ded3 !important;
			background: rgba(78,115,90,0.035) !important;
			color: #68746b !important;
			font-size: 11px !important;
			line-height: 1.4 !important;
			font-weight: 600 !important;
			letter-spacing: .08em !important;
			text-transform: uppercase !important;
			vertical-align: middle !important;
		}

		body.ap-account-studio .shop_table tbody td {
			padding: 13px 14px !important;
			border-bottom: 1px solid #d7ded3 !important;
			font-size: 11px !important;
			line-height: 1.5 !important;
			vertical-align: middle !important;
		}

		body.ap-account-studio .shop_table thead th.product-name,
		body.ap-account-studio .shop_table tbody td.product-name {
			width: 60% !important;
			text-align: left !important;
		}

		body.ap-account-studio .shop_table thead th.product-quantity,
		body.ap-account-studio .shop_table tbody td.product-quantity {
			width: 12% !important;
			text-align: center !important;
			white-space: nowrap !important;
		}

		body.ap-account-studio .shop_table thead th.product-total,
		body.ap-account-studio .shop_table tbody td.product-subtotal,
		body.ap-account-studio .shop_table tbody td.product-total {
			width: 28% !important;
			text-align: right !important;
			white-space: nowrap !important;
		}

		body.ap-account-studio .shop_table tbody td.product-name {
			color: #24392d !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .shop_table tbody td.product-quantity {
			color: #68746b !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .shop_table tbody td.product-subtotal,
		body.ap-account-studio .shop_table tbody td.product-total {
			color: #24392d !important;
			font-weight: 600 !important;
		}

		/* WooCommerce form-pay uses colspan=2 for summary labels. */
		body.ap-account-studio .shop_table tfoot th,
		body.ap-account-studio .shop_table tfoot td {
			padding: 10px 14px !important;
			border-top: 0 !important;
			border-bottom: 1px solid #d7ded3 !important;
			background: #f3f5ed !important;
			font-size: 11px !important;
			line-height: 1.45 !important;
			vertical-align: middle !important;
		}

		body.ap-account-studio .shop_table tfoot th {
			text-align: right !important;
			color: #68746b !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .shop_table tfoot td {
			width: 28% !important;
			text-align: right !important;
			color: #24392d !important;
			font-weight: 600 !important;
			white-space: nowrap !important;
		}

		body.ap-account-studio .shop_table tfoot tr:last-child th,
		body.ap-account-studio .shop_table tfoot tr:last-child td,
		body.ap-account-studio .shop_table tfoot tr.order-total th,
		body.ap-account-studio .shop_table tfoot tr.order-total td {
			border-bottom: 0 !important;
			background: rgba(78,115,90,0.04) !important;
		}

		body.ap-account-studio .shop_table tfoot tr.order-total th {
			color: #24392d !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .shop_table tfoot tr.order-total td {
			color: #295b51 !important;
			font-size: 12px !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .shop_table .amount {
			color: inherit !important;
			font-size: inherit !important;
			font-weight: inherit !important;
		}

		body.ap-account-studio #payment {
			margin-top: 14px;
			padding: 15px;
			border: 1px solid #d7ded3;
			border-radius: 10px;
			background: rgba(220,227,213,0.324) !important;
		}

		body.ap-account-studio #payment ul.payment_methods {
			margin: 0 !important;
			padding: 0 !important;
			border: 0 !important;
			list-style: none;
		}

		body.ap-account-studio #payment li {
			margin: 0 0 9px !important;
			padding: 11px 12px !important;
			border: 1px solid #d7ded3;
			border-radius: 9px;
			background: rgba(78,115,90,0.025);
		}

		body.ap-account-studio #payment label {
			color: #24392d !important;
			font-size: 11px !important;
			font-weight: 600 !important;
		}

		body.ap-account-studio .payment_box {
			margin-top: 10px !important;
			padding: 10px !important;
			border-radius: 8px !important;
			background: #f3f5ed !important;
			color: #68746b !important;
		}

		body.ap-account-studio .payment_box::before {
			display: none !important;
		}

		body.ap-account-studio #place_order,
		body.ap-account-studio button.button.alt {
			width: 100% !important;
			min-height: 50px !important;
			margin-top: 12px !important;
			border: 1px solid #d7ded3 !important;
			border-radius: 9px !important;
			background: #d9eee4 !important;
			color: #24392d !important;
			font-size: 11px !important;
			font-weight: 600 !important;
			letter-spacing: .09em !important;
			text-transform: uppercase !important;
		}

		body.ap-account-studio .woocommerce-error,
		body.ap-account-studio .woocommerce-info,
		body.ap-account-studio .woocommerce-message {
			margin: 0 0 12px !important;
			padding: 11px 12px !important;
			border: 1px solid #d7ded3 !important;
			border-radius: 8px !important;
			background: rgba(78,115,90,0.035) !important;
			color: #24392d !important;
			font-size: 11px !important;
		}

		body.ap-account-studio a {
			color: #295b51;
		}

		@media (max-width: 620px) {
			body.ap-account-studio {
				padding: 10px;
			}

			body.ap-account-studio .ap-service-pay-head {
				padding: 13px;
			}

			body.ap-account-studio .ap-service-pay-head h1 {
				font-size: 18px;
			}


			body.ap-account-studio .shop_table thead th,
			body.ap-account-studio .shop_table tbody td,
			body.ap-account-studio .shop_table tfoot th,
			body.ap-account-studio .shop_table tfoot td {
				padding-left: 9px !important;
				padding-right: 9px !important;
			}

			body.ap-account-studio .shop_table thead th.product-name,
			body.ap-account-studio .shop_table tbody td.product-name {
				width: 56% !important;
			}

			body.ap-account-studio .shop_table thead th.product-quantity,
			body.ap-account-studio .shop_table tbody td.product-quantity {
				width: 14% !important;
			}

			body.ap-account-studio .shop_table thead th.product-total,
			body.ap-account-studio .shop_table tbody td.product-subtotal,
			body.ap-account-studio .shop_table tbody td.product-total,
			body.ap-account-studio .shop_table tfoot td {
				width: 30% !important;
			}
		}
		

		html:has(body.ap-account-studio),
		body.ap-account-studio {
			min-height: 100%;
			margin: 0;
			background: #f9faf4;
			color: #24392d;
			font-family:
				"Montserrat",
				Inter,
				system-ui,
				sans-serif;
		}

		body.ap-account-studio {
			display: grid;
			place-items: center;
			padding: 20px;
		}

		body.ap-account-studio .ap-payment-return {
			width: min(460px, 100%);
			padding: 24px;
			border: 1px solid #d7ded3;
			border-radius: 14px;
			background: rgba(78,115,90,0.04);
			text-align: center;
		}

		body.ap-account-studio .ap-payment-return i {
			width: 42px;
			height: 42px;
			display: grid;
			place-items: center;
			margin: 0 auto 12px;
			border-radius: 50%;
			background: #d9eee4;
			color: #24392d;
			font-style: normal;
			font-weight: 600;
		}

		body.ap-account-studio .ap-payment-return strong {
			display: block;
			font-size: 17px;
			line-height: 1.4;
		}

		body.ap-account-studio .ap-payment-return p {
			margin: 8px 0 0;
			color: #68746b;
			font-size: 11px;
			line-height: 1.6;
		}
		
body.ap-account-studio .apco50{margin:0 0 14px;overflow:hidden;border:1px solid #d7ded3;border-radius:12px;background:linear-gradient(145deg,rgba(220,227,213,0.324),rgba(220,227,213,0.315))}body.ap-account-studio .apco50-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #d7ded3}body.ap-account-studio .apco50-head span,body.ap-account-studio .apco50-track span{display:block;color:#295b51;font-size:11px;font-weight:600;letter-spacing:.09em}body.ap-account-studio .apco50-head h3{margin:4px 0 0;color:#24392d;font-size:15px;font-weight:600}body.ap-account-studio .apco50-head>strong{color:#295b51;font-size:11px;font-weight:600}body.ap-account-studio .apco50-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px 14px 17px}body.ap-account-studio .apco50-step{display:grid;justify-items:center;text-align:center}body.ap-account-studio .apco50-step i{width:26px;height:26px;display:grid;place-items:center;border:2px solid #d7ded3;border-radius:50%;background:#f9faf4;color:#68746b;font-size:11px;font-style:normal;font-weight:600}body.ap-account-studio .apco50-step.is-complete i{border-color:#d7ded3;background:#d9eee4;color:#24392d}body.ap-account-studio .apco50-step.is-current i{border-color:#d7ded3;color:#295b51;box-shadow:0 0 0 5px rgba(24,34,29,0.05)}body.ap-account-studio .apco50-step strong{margin-top:8px;color:#68746b;font-size:11px;font-weight:600}body.ap-account-studio .apco50-step.is-complete strong,body.ap-account-studio .apco50-step.is-current strong{color:#24392d}body.ap-account-studio .apco50-track{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center;margin:0 14px 14px;padding:10px;border:1px solid #d7ded3;border-radius:8px;background:rgba(220,227,213,0.24300000000000002)}body.ap-account-studio .apco50-track strong{display:block;margin-top:4px;color:#24392d;font-size:11px}body.ap-account-studio .apco50-track a{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid #d7ded3;border-radius:6px;color:#295b51!important;font-size:11px;font-weight:600;text-decoration:none}body.ap-account-studio .apco50-exception{margin:14px;padding:12px;border:1px solid #d7ded3;border-radius:8px;background:rgba(220,227,213,0.2);color:#934630;font-size:11px;font-weight:600}@media(max-width:700px){body.ap-account-studio .apco50-progress{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:135px;overflow-x:auto}body.ap-account-studio .apco50-track{grid-template-columns:1fr}}

/* ============================================================
   CUSTOMER PORTAL v4.5.4.1
   PREMIUM ORDER CARD — STATUS + ACTION FIX
   ============================================================ */

body.ap-account-studio .aporders541 {
    display: grid;
    gap: 15px;
    padding-bottom: 56px;
}

body.ap-account-studio .aporders541,
body.ap-account-studio .aporders541 * {
    box-sizing: border-box;
}

/* ------------------------------------------------------------
   HERO
   ------------------------------------------------------------ */

body.ap-account-studio .aporders541-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 18px 20px;
    border: 1px solid #d7ded3;
    border-radius: 14px;
    background:
        radial-gradient(
            circle at 92% 14%,
            rgba(78,115,90,0.09),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #f9faf4,
            #f9faf4
        );
}

body.ap-account-studio .aporders541-hero-copy > span {
    display: block;
    color: #295b51;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .10em;
}

body.ap-account-studio .aporders541-hero h2 {
    margin: 7px 0 0 !important;
    color: #24392d !important;
    font-size: 27px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -.03em !important;
}

body.ap-account-studio .aporders541-hero p {
    max-width: 780px;
    margin: 8px 0 0;
    color: #68746b;
    font-size: 12px;
    line-height: 1.6;
}

body.ap-account-studio .aporders541-service-link {
    flex: 0 0 auto;
    min-height: 43px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 14px;
    border: 1px solid #d7ded3;
    border-radius: 8px;
    background: rgba(220,227,213,0.261);
    color: #295b51 !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .055em;
    text-decoration: none !important;
}

/* ------------------------------------------------------------
   SUMMARY
   ------------------------------------------------------------ */

body.ap-account-studio .aporders541-stats {
    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid #d7ded3;
    border-radius: 12px;
    background: rgba(220,227,213,0.20700000000000002);
}

body.ap-account-studio .aporders541-stat {
    min-width: 0;
    padding: 15px 16px;
    border-right:
        1px solid #d7ded3;
}

body.ap-account-studio .aporders541-stat:last-child {
    border-right: 0;
}

body.ap-account-studio .aporders541-stat span {
    display: block;
    color: #68746b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
}

body.ap-account-studio .aporders541-stat strong {
    display: block;
    margin-top: 6px;
    color: #24392d;
    font-size: 21px;
    line-height: 1.08;
    font-weight: 600;
}

body.ap-account-studio .aporders541-stat small {
    display: block;
    margin-top: 5px;
    color: #68746b;
    font-size: 11px;
    line-height: 1.4;
}

/* ------------------------------------------------------------
   FILTERS
   ------------------------------------------------------------ */

body.ap-account-studio .aporders541-filters {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    padding: 6px;
    border: 1px solid #d7ded3;
    border-radius: 10px;
    background: rgba(220,227,213,0.2);
    scrollbar-width: none;
}

body.ap-account-studio .aporders541-filters::-webkit-scrollbar {
    display: none;
}

body.ap-account-studio .aporders541-filter {
    flex: 0 0 auto;
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    border: 1px solid transparent;
    border-radius: 7px;
    color: #68746b !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .05em;
    text-decoration: none !important;
}

body.ap-account-studio .aporders541-filter b {
    min-width: 23px;
    height: 22px;
    display: inline-grid;
    place-items: center;
    padding: 0 6px;
    border-radius: 999px;
    background: #f3f5ed;
    color: #68746b;
    font-size: 11px;
}

body.ap-account-studio .aporders541-filter.is-active,
body.ap-account-studio .aporders541-filter:hover {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.065);
    color: #295b51 !important;
}

/* ------------------------------------------------------------
   CARD
   ------------------------------------------------------------ */

body.ap-account-studio .aporders541-list {
    display: grid;
    gap: 13px;
}

body.ap-account-studio .aporder541-card {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        300px
        190px;
    min-height: 166px;
    border: 1px solid #d7ded3;
    border-radius: 14px;
    background:
        radial-gradient(
            circle at 92% 15%,
            rgba(78,115,90,0.055),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #f9faf4,
            #f9faf4
        );
    box-shadow:
        0 14px 34px rgba(24,34,29,0.1);
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

body.ap-account-studio .aporder541-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background:
        linear-gradient(
            180deg,
            #d9eee4,
            rgba(78,115,90,0.09)
        );
}

body.ap-account-studio .aporder541-card:hover {
    transform: translateY(-1px);
    border-color: #d7ded3;
    box-shadow:
        0 18px 42px rgba(24,34,29,0.1);
}

/* Product */
body.ap-account-studio .aporder541-product {
    min-width: 0;
    display: grid;
    grid-template-columns:
        102px
        minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    padding: 18px 18px 18px 22px;
}

body.ap-account-studio .aporder541-thumb-stack {
    position: relative;
    width: 102px;
    height: 102px;
}

body.ap-account-studio .aporder541-thumb {
    position: absolute;
    overflow: hidden;
    width: 88px;
    height: 88px;
    border: 1px solid #d7ded3;
    border-radius: 10px;
    background: #f9faf4;
    box-shadow:
        0 10px 24px rgba(24,34,29,0.1);
}

body.ap-account-studio .aporder541-thumb:nth-child(1) {
    top: 0;
    left: 0;
    z-index: 3;
}

body.ap-account-studio .aporder541-thumb:nth-child(2) {
    top: 8px;
    left: 8px;
    z-index: 2;
    opacity: .72;
}

body.ap-account-studio .aporder541-thumb:nth-child(3) {
    top: 16px;
    left: 16px;
    z-index: 1;
    opacity: .44;
}

body.ap-account-studio .aporder541-thumb img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    display: block !important;
    margin: 0 !important;
    object-fit: cover !important;
}

body.ap-account-studio .aporder541-product-copy {
    min-width: 0;
}

body.ap-account-studio .aporder541-product-copy > span {
    display: block;
    color: #295b51;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .09em;
}

body.ap-account-studio .aporder541-product-copy h3 {
    display: -webkit-box;
    max-width: 760px;
    margin: 7px 0 0 !important;
    overflow: hidden;
    color: #24392d !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

body.ap-account-studio .aporder541-product-copy p {
    margin: 7px 0 0;
    color: #68746b;
    font-size: 11px;
    line-height: 1.45;
}

/* Order data */
body.ap-account-studio .aporder541-meta {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    border-left:
        1px solid #d7ded3;
    background: rgba(220,227,213,0.2);
}

body.ap-account-studio .aporder541-meta-cell {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 15px 14px;
    border-right:
        1px solid #d7ded3;
    border-bottom:
        1px solid #d7ded3;
}

body.ap-account-studio .aporder541-meta-cell:nth-child(2n) {
    border-right: 0;
}

body.ap-account-studio .aporder541-meta-cell:nth-last-child(-n + 2) {
    border-bottom: 0;
}

body.ap-account-studio .aporder541-meta-cell span {
    display: block;
    color: #68746b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .075em;
}

body.ap-account-studio .aporder541-meta-cell strong {
    display: block;
    margin-top: 6px;
    overflow: hidden;
    color: #24392d;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.ap-account-studio .aporder541-meta-cell.is-total strong {
    color: #24392d;
    font-size: 16px;
}

/* Status + action */
body.ap-account-studio .aporder541-action-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 15px;
    padding: 17px 16px;
    border-left:
        1px solid #d7ded3;
    background:
        linear-gradient(
            180deg,
            rgba(220,227,213,0.279),
            rgba(220,227,213,0.30600000000000005)
        );
}

body.ap-account-studio .aporder541-status-wrap > span {
    display: block;
    color: #68746b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .075em;
}

body.ap-account-studio .aporder541-status {
    min-height: 37px;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 8px;
    padding: 0 11px;
    border: 1px solid #d7ded3;
    border-radius: 8px;
    background: rgba(78,115,90,0.055);
    color: #295b51;
    font-size: 11px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .045em;
    text-transform: uppercase;
}

body.ap-account-studio .aporder541-status::before {
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow:
        0 0 0 4px rgba(24,34,29,0.06);
}

body.ap-account-studio .aporder541-status.is-delivered {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.065);
    color: #295b51;
}

body.ap-account-studio .aporder541-status.is-processing {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.06);
    color: #295b51;
}

body.ap-account-studio .aporder541-status.is-packed,
body.ap-account-studio .aporder541-status.is-on-the-way {
    border-color: #d7ded3;
    background: rgba(78,115,90,0.065);
    color: #376b51;
}

body.ap-account-studio .aporder541-status.is-problem {
    border-color: #d7ded3;
    background: rgba(244, 144, 144, .055);
    color: #934630;
}

body.ap-account-studio .aporder541-view {
    min-height: 42px;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 13px;
    border: 1px solid #d7ded3;
    border-radius: 8px;
    background: #d9eee4;
    color: #24392d !important;
    font-size: 11px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .065em;
    text-decoration: none !important;
    box-shadow:
        0 8px 20px rgba(24,34,29,0.1);
    transition:
        transform .16s ease,
        background .16s ease;
}

body.ap-account-studio .aporder541-view:hover {
    transform: translateY(-1px);
    background: #d9eee4;
    color: #24392d !important;
}

/* ------------------------------------------------------------
   PAGINATION / EMPTY
   ------------------------------------------------------------ */

body.ap-account-studio .aporders541-pagination {
    display: grid;
    grid-template-columns:
        1fr auto 1fr;
    align-items: center;
    gap: 12px;
    padding-top: 2px;
}

body.ap-account-studio .aporders541-pagination a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 0 12px;
    border: 1px solid #d7ded3;
    border-radius: 7px;
    color: #295b51 !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .06em;
    text-decoration: none !important;
}

body.ap-account-studio .aporders541-pagination a:last-child {
    justify-self: end;
}

body.ap-account-studio .aporders541-pagination > span {
    color: #68746b;
    font-size: 11px;
    font-weight: 600;
}

body.ap-account-studio .aporders541-empty {
    min-height: 290px;
    display: grid;
    place-items: center;
    align-content: center;
    padding: 32px;
    border: 1px dashed #d7ded3;
    border-radius: 12px;
    background: rgba(220,227,213,0.2);
    text-align: center;
}

body.ap-account-studio .aporders541-empty > span {
    color: #295b51;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .10em;
}

body.ap-account-studio .aporders541-empty h3 {
    margin: 10px 0 0;
    color: #24392d;
    font-size: 20px;
    font-weight: 600;
}

body.ap-account-studio .aporders541-empty p {
    max-width: 560px;
    margin: 8px auto 0;
    color: #68746b;
    font-size: 11px;
    line-height: 1.6;
}

/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media (max-width: 1180px) {
    body.ap-account-studio .aporder541-card {
        grid-template-columns:
            minmax(0, 1fr)
            290px;
    }

    body.ap-account-studio .aporder541-action-panel {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns:
            minmax(0, 1fr)
            180px;
        align-items: center;
        border-top:
            1px solid #d7ded3;
        border-left: 0;
    }

    body.ap-account-studio .aporder541-status {
        max-width: 260px;
    }
}

@media (max-width: 860px) {
    body.ap-account-studio .aporders541-hero {
        align-items: stretch;
        flex-direction: column;
    }

    body.ap-account-studio .aporders541-stats {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    body.ap-account-studio .aporder541-card {
        grid-template-columns: 1fr;
    }

    body.ap-account-studio .aporder541-meta {
        border-top:
            1px solid #d7ded3;
        border-left: 0;
    }

    body.ap-account-studio .aporder541-action-panel {
        grid-column: auto;
    }
}

@media (max-width: 580px) {
    body.ap-account-studio .aporder541-product {
        grid-template-columns:
            80px
            minmax(0, 1fr);
        gap: 12px;
        padding: 14px;
    }

    body.ap-account-studio .aporder541-thumb-stack {
        width: 80px;
        height: 80px;
    }

    body.ap-account-studio .aporder541-thumb {
        width: 68px;
        height: 68px;
    }

    body.ap-account-studio .aporder541-product-copy h3 {
        font-size: 12px !important;
    }

    body.ap-account-studio .aporder541-meta {
        grid-template-columns: 1fr 1fr;
    }

    body.ap-account-studio .aporder541-meta-cell {
        padding: 12px;
    }

    body.ap-account-studio .aporder541-action-panel {
        display: grid;
        grid-template-columns: 1fr;
        padding: 13px;
    }

    body.ap-account-studio .aporder541-status {
        max-width: none;
    }

    body.ap-account-studio .aporders541-pagination {
        grid-template-columns: 1fr 1fr;
    }

    body.ap-account-studio .aporders541-pagination > span {
        grid-column: 1 / -1;
        grid-row: 1;
        text-align: center;
    }
}
