@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800;900&family=DM+Mono:wght@400;500;700&display=swap');

.csh-cp {
	--csh-cp-navy: #033f63;
	--csh-cp-blue: #2e6eb7;
	--csh-cp-teal: #30d5c8;
	--csh-cp-white: #ffffff;
	--csh-cp-bg: #f4f6f9;
	--csh-cp-text: #374151;
	--csh-cp-muted: #6b7280;
	--csh-cp-border: #e5e7eb;
	--csh-cp-green: #16a34a;
	--csh-cp-red: #dc2626;
	--csh-cp-shadow: 0 1px 4px rgba(3, 63, 99, .08), 0 4px 16px rgba(3, 63, 99, .06);
	font-family: 'DM Sans', Arial, sans-serif;
	color: var(--csh-cp-text);
	background: var(--csh-cp-bg);
	min-height: 100vh;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}
/* Grouped-company summary popover. */
.csh-cp .csh-cp-group-stat{
	position:relative;
	overflow:visible;
}
.csh-cp .csh-cp-group-summary{
	position:relative;
	min-width:0;
	margin-top:5px;
}
.csh-cp .csh-cp-group-summary-link{
	display:block;
	width:100%;
	max-width:100%;
	margin:0;
	padding:0;
	border:0;
	background:transparent;
	color:#00C8B4;
	font-family:inherit;
	font-size:11px;
	font-weight:900;
	line-height:1.35;
	text-align:left;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	cursor:pointer;
	text-decoration:underline;
	text-decoration-thickness:1px;
	text-underline-offset:3px;
}
.csh-cp .csh-cp-group-summary-link:focus-visible{
	outline:2px solid #5EEAD4;
	outline-offset:3px;
	border-radius:3px;
}
.csh-cp .csh-cp-group-summary-link:disabled{
	color:rgba(255,255,255,.62);
	cursor:default;
	text-decoration:none;
}
.csh-cp .csh-cp-group-popover{
	position:absolute;
	right:0;
	top:calc(100% + 10px);
	z-index:80;
	width:min(320px,calc(100vw - 48px));
	padding:16px;
	border:1px solid #DCE4EF;
	border-radius:14px;
	background:#FFFFFF;
	box-shadow:0 18px 42px rgba(13,31,60,.22);
	color:#0D1F3C!important;
	font-family:'Sora',Arial,Helvetica,sans-serif;
}
.csh-cp .csh-cp-group-popover[hidden]{display:none!important}
.csh-cp .csh-cp-group-popover>strong{
	display:block;
	margin:0 36px 4px 0;
	color:#0D1F3C!important;
	font-size:13px;
	font-weight:900;
	line-height:1.3;
	white-space:normal;
}
.csh-cp .csh-cp-group-popover-copy{
	margin:0 36px 10px 0;
	color:#3A4A6A!important;
	font-size:10px;
	font-weight:700;
	line-height:1.45;
}
.csh-cp .csh-cp-group-popover-close{
	position:absolute;
	top:9px;
	right:9px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px;
	height:30px;
	margin:0;
	padding:0;
	border:1px solid #D7E4FF;
	border-radius:999px;
	background:#F5F7FC;
	color:#0D1F3C!important;
	font-family:Arial,Helvetica,sans-serif;
	font-size:20px;
	font-weight:700;
	line-height:1;
	cursor:pointer;
}
.csh-cp .csh-cp-group-popover-close:hover,
.csh-cp .csh-cp-group-popover-close:focus-visible{
	outline:none;
	border-color:#93C5FD;
	background:#E8F0FE;
	color:#1A50CC!important;
}
.csh-cp .csh-cp-group-popover ul{
	max-height:240px;
	margin:0;
	padding:0;
	list-style:none;
	overflow:auto;
}
.csh-cp .csh-cp-group-popover li{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:9px 0;
	border-top:1px solid #EEF2F7;
	color:#3A4A6A!important;
	font-size:11px;
	font-weight:700;
	line-height:1.4;
}
.csh-cp .csh-cp-group-popover li:first-child{border-top:0}
.csh-cp .csh-cp-group-popover li.is-current{color:#0D1F3C!important;font-weight:900}
.csh-cp .csh-cp-group-popover li>span{
	display:block;
	margin:0;
	color:inherit!important;
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
	line-height:inherit;
	text-transform:none;
	letter-spacing:0;
}
.csh-cp .csh-cp-group-current-tag{
	display:inline-flex;
	align-items:center;
	flex:0 0 auto;
	padding:3px 6px;
	border-radius:999px;
	background:#E6FFFB;
	color:#008F82!important;
	font-size:9px;
	font-weight:900;
	line-height:1;
	text-transform:uppercase;
	letter-spacing:.04em;
}
@media(max-width:620px){
	.csh-cp .csh-cp-group-popover{left:0;right:auto}
}


.csh-cp *,
.csh-cp *::before,
.csh-cp *::after {
	box-sizing: border-box;
}

.csh-cp [hidden] {
	display: none !important;
}

.csh-cp a {
	color: var(--csh-cp-blue);
}

.csh-cp-login {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 28px 16px;
	background: linear-gradient(135deg, var(--csh-cp-navy) 0%, #1a3a6e 100%);
}

.csh-cp-login-card {
	width: 100%;
	max-width: 430px;
	background: var(--csh-cp-white);
	border-radius: 18px;
	padding: 38px 34px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
}

.csh-cp-login-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	margin-bottom: 9px;
}

.csh-cp-login-logo-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
	text-decoration: none;
}

.csh-cp-login-logo {
	width: 116px;
	max-width: 116px;
	height: auto;
	display: block;
}

.csh-cp-login-divider {
	width: 1px;
	height: 36px;
	background: #d1d5db;
}

.csh-cp-brand-stack {
	line-height: 1.35;
	text-align: left;
}

.csh-cp-brand-stack span,
.csh-cp-brand-stack strong {
	display: block;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--csh-cp-text);
}

.csh-cp-brand-stack strong {
	color: var(--csh-cp-blue);
}

.csh-cp-login-kicker {
	margin: 0 0 26px;
	font-size: 12px;
	color: var(--csh-cp-muted);
	text-align: center;
}

.csh-cp-login h1 {
	margin: 0 0 7px;
	font-size: 21px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--csh-cp-navy);
}

.csh-cp-login-copy {
	margin: 0 0 22px;
	font-size: 13px;
	line-height: 1.55;
	color: var(--csh-cp-muted);
}

.csh-cp-alert {
	border-radius: 9px;
	padding: 11px 14px;
	font-size: 13px;
	line-height: 1.45;
	margin-bottom: 14px;
}

.csh-cp-alert-error {
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: var(--csh-cp-red);
}

.csh-cp-alert-success {
	background: #f0fdf4;
	border: 1px solid #86efac;
	color: var(--csh-cp-green);
}

.csh-cp-login-form label {
	display: block;
	font-size: 11px;
	font-weight: 800;
	color: var(--csh-cp-text);
	letter-spacing: .5px;
	text-transform: uppercase;
	margin: 0 0 7px;
}

.csh-cp-login-form input {
	width: 100%;
	border: 1.5px solid var(--csh-cp-border);
	border-radius: 9px;
	padding: 12px 14px;
	font-size: 14px;
	font-family: inherit;
	color: var(--csh-cp-navy);
	outline: none;
	transition: border .15s, box-shadow .15s;
}

.csh-cp-login-form input:focus {
	border-color: var(--csh-cp-blue);
	box-shadow: 0 0 0 3px rgba(46, 110, 183, .11);
}

.csh-cp-login-form button,
.csh-cp-nav-user button {
	font-family: inherit;
	cursor: pointer;
}

.csh-cp-login-form button {
	width: 100%;
	border: 0;
	border-radius: 10px;
	background: var(--csh-cp-blue);
	color: var(--csh-cp-white);
	padding: 13px 14px;
	font-size: 14px;
	font-weight: 800;
	margin-top: 16px;
	transition: background .15s, opacity .15s;
}

.csh-cp-login-form button:hover {
	background: var(--csh-cp-navy);
}

.csh-cp-login-form button:disabled,
.csh-cp-nav-user button:disabled {
	opacity: .62;
	cursor: not-allowed;
}

.csh-cp-login-note {
	margin: 16px 0 0;
	font-size: 11px;
	line-height: 1.5;
	text-align: center;
	color: var(--csh-cp-muted);
}

.csh-cp-dashboard {
	min-height: 100vh;
	background: var(--csh-cp-bg);
}

.csh-cp-nav {
	min-height: 58px;
	background: var(--csh-cp-navy);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 0 24px;
	position: sticky;
	top: 0;
	z-index: 100;
}

.csh-cp-nav-brand,
.csh-cp-nav-user {
	display: flex;
	align-items: center;
}

.csh-cp-nav-brand {
	gap: 10px;
}

.csh-cp-nav-wordmark {
	font-size: 22px;
	font-weight: 900;
	color: var(--csh-cp-white);
	letter-spacing: -1px;
}

.csh-cp-nav-line {
	width: 1px;
	height: 28px;
	background: rgba(255, 255, 255, .25);
}

.csh-cp-nav-stack {
	line-height: 1.35;
	text-align: left;
}

.csh-cp-nav-stack span,
.csh-cp-nav-stack strong,
.csh-cp-nav-stack em {
	display: block;
	font-style: normal;
	font-size: 7.5px;
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.csh-cp-nav-stack span {
	color: rgba(255, 255, 255, .72);
}

.csh-cp-nav-stack strong {
	color: var(--csh-cp-teal);
}

.csh-cp-nav-stack em {
	color: rgba(255, 255, 255, .45);
	font-weight: 700;
	letter-spacing: .8px;
	margin-top: 1px;
}

.csh-cp-nav-user {
	gap: 10px;
}

.csh-cp-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--csh-cp-teal);
	color: var(--csh-cp-navy);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 900;
	flex: 0 0 auto;
}

.csh-cp-user-name {
	font-size: 13px;
	font-weight: 700;
	color: var(--csh-cp-white);
}

.csh-cp-user-company {
	font-size: 11px;
	color: rgba(255, 255, 255, .48);
}

.csh-cp-nav-user button {
	background: rgba(255, 255, 255, .10);
	border: 1px solid rgba(255, 255, 255, .16);
	color: rgba(255, 255, 255, .76);
	font-size: 12px;
	font-weight: 600;
	padding: 6px 13px;
	border-radius: 7px;
}

.csh-cp-nav-user button:hover {
	background: rgba(255, 255, 255, .18);
}


.csh-cp-nav-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	position: relative;
}

.csh-cp-booking-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 7px 13px;
	border-radius: 8px;
	background: var(--csh-cp-blue);
	color: var(--csh-cp-white);
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, .16);
}

.csh-cp-booking-link:hover {
	background: #255fb3;
	color: var(--csh-cp-white);
}

.csh-cp-account-switcher {
	position: relative;
}

.csh-cp-account-button {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 230px;
	max-width: 360px;
	background: rgba(255, 255, 255, .98) !important;
	border: 1px solid rgba(255, 255, 255, .42) !important;
	border-radius: 999px !important;
	padding: 6px 12px 6px 7px !important;
	box-shadow: 0 8px 20px rgba(0, 0, 0, .12);
	color: var(--csh-cp-navy) !important;
	text-align: left;
}

.csh-cp-account-copy {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
	flex: 1;
}

.csh-cp-account-copy strong {
	font-size: 13px;
	font-weight: 900;
	line-height: 1.2;
	color: var(--csh-cp-navy);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.csh-cp-account-copy small {
	font-size: 11px;
	line-height: 1.2;
	color: #64748b;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.csh-cp-account-caret {
	font-size: 14px;
	color: #64748b;
	transition: transform .15s ease;
}

.csh-cp-account-switcher.open .csh-cp-account-caret {
	transform: rotate(180deg);
}

.csh-cp-account-menu {
	position: absolute;
	right: 0;
	top: calc(100% + 8px);
	width: min(360px, calc(100vw - 24px));
	background: #fff;
	border: 1px solid #d7e1ef;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(15,23,42,.18);
	overflow: hidden;
	display: none;
	z-index: 150;
}

.csh-cp-account-switcher.open .csh-cp-account-menu {
	display: block;
}

.csh-cp-account-menu-head {
	padding: 14px 16px;
	background: #f8fbff;
	border-bottom: 1px solid #e5edf7;
}

.csh-cp-account-menu-head strong {
	display: block;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
	color: var(--csh-cp-navy);
}

.csh-cp-account-menu-head small {
	display: block;
	font-size: 12px;
	color: #64748b;
	margin-top: 2px;
}

.csh-cp-account-company-list {
	max-height: 280px;
	overflow: auto;
}

.csh-cp-account-company-option {
	width: 100%;
	border: 0;
	border-bottom: 1px solid #eef2f7;
	background: #fff;
	text-align: left;
	padding: 13px 16px;
	cursor: pointer;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	font-family: inherit;
	color: var(--csh-cp-navy);
}

.csh-cp-account-company-option:hover,
.csh-cp-account-company-option.active {
	background: #eef5ff;
}

.csh-cp-account-company-option strong {
	display: block;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.25;
	color: var(--csh-cp-navy);
}

.csh-cp-account-company-option small {
	display: block;
	font-size: 11px;
	color: #64748b;
	margin-top: 3px;
	line-height: 1.25;
}

.csh-cp-account-company-badge {
	font-size: 10px;
	font-weight: 900;
	color: #166534;
	background: #dcfce7;
	border-radius: 999px;
	padding: 3px 8px;
	white-space: nowrap;
}

.csh-cp-account-menu-footer {
	width: 100%;
	border: 0;
	border-top: 1px solid #e5edf7;
	background: #fff7f7;
	color: #b42318;
	font-size: 13px;
	font-weight: 800;
	text-align: left;
	padding: 12px 16px;
	cursor: pointer;
}

.csh-cp-account-menu-footer:hover {
	background: #fff1f1;
}

.csh-cp-wrap {
	max-width: 1100px;
	margin: 0 auto;
	padding: 30px 20px;
}

.csh-cp-page-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 22px;
}

.csh-cp-page-head h2 {
	margin: 0;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--csh-cp-navy);
	display: flex;
	align-items: center;
	gap: 8px;
}

.csh-cp-page-head p {
	margin: 4px 0 0;
	font-size: 13px;
	color: var(--csh-cp-muted);
}

.csh-cp-live-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--csh-cp-teal);
	display: inline-block;
	animation: csh-cp-live 2s infinite;
}

@keyframes csh-cp-live {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: .55; transform: scale(1.35); }
}

.csh-cp-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 13px;
	margin-bottom: 25px;
}

.csh-cp-stat {
	background: var(--csh-cp-white);
	border: 1px solid var(--csh-cp-border);
	border-radius: 13px;
	padding: 17px 18px;
	box-shadow: var(--csh-cp-shadow);
	min-width: 0;
}

.csh-cp-stat span {
	display: block;
	font-size: 10px;
	font-weight: 800;
	color: var(--csh-cp-muted);
	text-transform: uppercase;
	letter-spacing: .7px;
	margin-bottom: 7px;
}

.csh-cp-stat strong {
	display: block;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.05;
	color: var(--csh-cp-navy);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.csh-cp-stat small {
	display: block;
	font-size: 11px;
	color: var(--csh-cp-muted);
	margin-top: 5px;
}

.csh-cp-customer-stat {
	position: relative;
}

.csh-cp-copy-company-id {
	position: absolute;
	top: 10px;
	right: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(255,255,255,.24);
	border-radius: 999px;
	background: rgba(255,255,255,.12);
	color: #FFFFFF;
	cursor: pointer;
	transition: background .18s ease, transform .18s ease, opacity .18s ease;
}

.csh-cp-copy-company-id:hover,
.csh-cp-copy-company-id:focus {
	background: rgba(255,255,255,.22);
	transform: translateY(-1px);
	outline: none;
}

.csh-cp-copy-company-id:disabled {
	cursor: not-allowed;
	opacity: .45;
	transform: none;
}

.csh-cp-copy-company-id.is-copied {
	background: rgba(34,197,94,.28);
	border-color: rgba(34,197,94,.52);
}

.csh-cp-tabs {
	display: flex;
	gap: 0;
	border-bottom: 2px solid var(--csh-cp-border);
	margin-bottom: 18px;
}

.csh-cp-tabs button {
	border: 0;
	border-bottom: 2px solid transparent;
	background: transparent;
	padding: 11px 21px;
	margin-bottom: -2px;
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	color: var(--csh-cp-muted);
	cursor: default;
}

.csh-cp-tabs button.active {
	color: var(--csh-cp-blue);
	border-bottom-color: var(--csh-cp-blue);
}

.csh-cp-tabs span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 10px;
	background: var(--csh-cp-teal);
	color: var(--csh-cp-navy);
	font-size: 10px;
	font-weight: 900;
	margin-left: 6px;
}

.csh-cp-empty-card {
	background: var(--csh-cp-white);
	border: 1px solid var(--csh-cp-border);
	border-radius: 14px;
	box-shadow: var(--csh-cp-shadow);
	padding: 34px 24px;
	text-align: center;
}

.csh-cp-empty-card h3 {
	margin: 0 0 8px;
	font-size: 17px;
	line-height: 1.35;
	font-weight: 800;
	color: var(--csh-cp-navy);
}

.csh-cp-empty-card p {
	max-width: 620px;
	margin: 0 auto;
	font-size: 13px;
	line-height: 1.65;
	color: var(--csh-cp-muted);
}

@media (max-width: 840px) {
	.csh-cp-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.csh-cp-login-card {
		padding: 30px 22px;
	}

	.csh-cp-nav {
		padding: 10px 14px;
		align-items: flex-start;
		flex-direction: column;
	}

	.csh-cp-nav-user {
		width: 100%;
		justify-content: space-between;
	}

	
.csh-cp-wrap {
		padding: 20px 12px;
	}

	.csh-cp-stats {
		grid-template-columns: 1fr;
	}

	.csh-cp-tabs {
		overflow-x: auto;
	}

	.csh-cp-tabs button {
		white-space: nowrap;
	}
}

body.custm-shifts-customer-portal-page footer.footer {
	display: none !important;
}

.csh-cp-branch-card {
	background: var(--csh-cp-white);
	border: 1px solid var(--csh-cp-border);
	border-radius: 14px;
	box-shadow: var(--csh-cp-shadow);
	padding: 18px 20px;
	margin: -8px 0 24px;
}

.csh-cp-branch-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.csh-cp-branch-head label {
	display: block;
	font-size: 13px;
	font-weight: 800;
	color: var(--csh-cp-navy);
}

.csh-cp-branch-head p {
	margin: 4px 0 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--csh-cp-muted);
}

.csh-cp-branch-head select {
	min-width: 260px;
	max-width: 100%;
	border: 1.5px solid var(--csh-cp-border);
	border-radius: 9px;
	padding: 10px 12px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	color: var(--csh-cp-navy);
	background: var(--csh-cp-white);
}


@media (max-width: 620px) {
	.csh-cp-branch-head {
		align-items: stretch;
		flex-direction: column;
	}

	.csh-cp-branch-head select {
		min-width: 0;
		width: 100%;
	}
}

.csh-cp-select-wrap {
	position: relative;
	min-width: 260px;
	max-width: 100%;
}

.csh-cp-select-wrap select {
	width: 100%;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 38px;
}

.csh-cp-select-wrap > span {
	position: absolute;
	right: 13px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
	font-size: 13px;
	line-height: 1;
	color: var(--csh-cp-navy);
}

.csh-cp-history-alert {
	background: #fff7ed;
	border: 1px solid #fed7aa;
	border-radius: 10px;
	color: #9a3412;
	font-size: 13px;
	line-height: 1.5;
	padding: 12px 14px;
	margin-bottom: 16px;
}

.csh-cp-history-panel {
	display: none;
}

.csh-cp-history-panel.active {
	display: block;
}

.csh-cp-history-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.csh-cp-booking-card {
	background: var(--csh-cp-white);
	border: 1px solid var(--csh-cp-border);
	border-radius: 14px;
	box-shadow: var(--csh-cp-shadow);
	padding: 16px 18px;
}

.csh-cp-booking-head {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: flex-start;
}

.csh-cp-booking-ref {
	font-family: 'DM Mono', monospace;
	font-size: 13px;
	font-weight: 900;
	color: var(--csh-cp-navy);
	margin-bottom: 5px;
}

.csh-cp-booking-route {
	font-size: 13px;
	font-weight: 700;
	color: var(--csh-cp-text);
	line-height: 1.45;
}

.csh-cp-history-dates {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
	margin-top: 7px;
}

.csh-cp-history-date {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: fit-content;
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--csh-cp-text);
}

.csh-cp-history-date svg {
	flex: 0 0 auto;
	color: var(--csh-cp-muted);
}

.csh-cp-history-date strong {
	font-weight: 800;
}

.csh-cp-history-date.is-pickup {
	color: #009f90;
}

.csh-cp-history-date.is-pickup svg {
	color: #00c8b4;
}

.csh-cp-history-date.is-booking {
	color: var(--csh-cp-muted);
}

.csh-cp-history-date.is-pending {
	color: var(--csh-cp-muted);
}

.csh-cp-booking-meta {
	margin-top: 5px;
	font-size: 12px;
	line-height: 1.5;
	color: var(--csh-cp-muted);
}

.csh-cp-unallocated-company-meta {
	color: var(--csh-cp-navy);
	font-weight: 700;
}

.csh-cp-unallocated-service-meta,
.csh-cp-unallocated-date-meta {
	margin-top: 3px;
}

.csh-cp-booking-record-tags {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 4px;
	max-width: 280px;
}

.csh-cp-modified-record-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 2px 5px;
	border: 1px solid #BFD3FF;
	border-radius: 999px;
	background: #EAF1FF;
	color: #1A50CC;
	font-size: 8px;
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: .04em;
	text-transform: uppercase;
	white-space: nowrap;
}

.csh-cp-company-record-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 240px;
	padding: 4px 7px;
	border: 1px solid #D7E4FF;
	border-radius: 999px;
	background: #F5F7FC;
	color: var(--csh-cp-muted);
	font-size: 9px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	white-space: normal;
	overflow-wrap: anywhere;
}

.csh-cp-booking-side {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 7px;
	flex: 0 0 auto;
}

.csh-cp-status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #dcfce7;
	color: #166534;
	font-size: 11px;
	font-weight: 900;
	padding: 4px 10px;
}

.csh-cp-booking-amount {
	font-size: 13px;
	font-weight: 900;
	color: var(--csh-cp-navy);
}

.csh-cp-booking-actions {
	margin-top: 13px;
	padding-top: 13px;
	border-top: 1px solid var(--csh-cp-border);
}

.csh-cp-booking-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: rgba(46, 110, 183, .09);
	border: 1px solid rgba(46, 110, 183, .18);
	color: var(--csh-cp-blue);
	font-size: 12px;
	font-weight: 800;
	padding: 8px 14px;
	text-decoration: none;
}

.csh-cp-tabs button {
	cursor: pointer;
}

@media (max-width: 620px) {
	.csh-cp-select-wrap {
		min-width: 0;
		width: 100%;
	}

	.csh-cp-booking-head {
		flex-direction: column;
	}

	.csh-cp-booking-side {
		align-items: flex-start;
	}
}

.csh-cp-status-pill.is-pending {
	background: #fef3c7;
	color: #92400e;
}

.csh-cp-status-pill.is-unpaid {
	background: #fef9c3;
	color: #713f12;
}

.csh-cp-status-pill.is-picked {
	background: #ede9fe;
	color: #6d28d9;
}

.csh-cp-status-pill.is-transit {
	background: #dbeafe;
	color: #1d4ed8;
}

.csh-cp-status-pill.is-complete {
	background: #dcfce7;
	color: #166534;
}

.csh-cp-status-pill.is-failed {
	background: #fee2e2;
	color: #991b1b;
}

.csh-cp-history-stats {
	margin-top: 8px;
	margin-bottom: 24px;
}

.csh-cp-history-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: -4px 0 14px;
}

.csh-cp-history-updated {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	color: var(--csh-cp-muted);
}

.csh-cp-refresh-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	border: 1px solid var(--csh-cp-border);
	border-radius: 7px;
	background: rgba(255, 255, 255, .72);
	color: var(--csh-cp-text);
	font-family: inherit;
	font-size: 12px;
	font-weight: 800;
	padding: 7px 14px;
	cursor: pointer;
	transition: border-color .15s, color .15s, background .15s, opacity .15s;
}

.csh-cp-refresh-button svg {
	flex: 0 0 auto;
}

.csh-cp-refresh-button:hover {
	border-color: var(--csh-cp-blue);
	color: var(--csh-cp-blue);
	background: var(--csh-cp-white);
}

.csh-cp-refresh-button:disabled {
	opacity: .6;
	cursor: wait;
}

.csh-cp-booking-card {
	padding: 15px 18px;
}

.csh-cp-booking-head {
	align-items: center;
}

.csh-cp-booking-route {
	font-weight: 600;
	color: var(--csh-cp-muted);
}

.csh-cp-booking-side {
	align-items: center;
	flex-direction: row;
	gap: 11px;
}

.csh-cp-booking-items,
.csh-cp-booking-caret {
	font-size: 12px;
	line-height: 1;
	color: var(--csh-cp-muted);
	white-space: nowrap;
}

.csh-cp-booking-caret {
	font-size: 11px;
	color: #64748b;
}

.csh-cp-status-pill::before {
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: currentColor;
	margin-right: 6px;
}

@media (max-width: 620px) {
	.csh-cp-history-toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	.csh-cp-refresh-button {
		width: 100%;
	}

	.csh-cp-booking-side {
		align-items: flex-start;
		flex-wrap: wrap;
	}
}

.csh-cp-booking-head {
	width: 100%;
	border: 0;
	background: transparent;
	padding: 0;
	font-family: inherit;
	text-align: left;
	cursor: pointer;
}

.csh-cp-booking-card.is-open {
	box-shadow: 0 6px 24px rgba(3, 63, 99, .12);
}

.csh-cp-booking-detail-panel {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--csh-cp-border);
}

.csh-cp-detail-loading,
.csh-cp-detail-error {
	border-radius: 10px;
	padding: 12px 14px;
	font-size: 13px;
	line-height: 1.5;
}

.csh-cp-detail-loading {
	background: #f8fafc;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-error {
	background: #fff7ed;
	border: 1px solid #fed7aa;
	color: #9a3412;
}

.csh-cp-detail-card {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 16px;
}

.csh-cp-detail-title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.csh-cp-detail-title h3,
.csh-cp-detail-address h4,
.csh-cp-detail-pods h4 {
	margin: 0;
	font-size: 13px;
	line-height: 1.3;
	font-weight: 900;
	color: var(--csh-cp-navy);
}

.csh-cp-detail-title p {
	margin: 0;
	font-family: 'DM Mono', monospace;
	font-size: 12px;
	font-weight: 800;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-grid,
.csh-cp-detail-address-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 14px;
}

.csh-cp-detail-address-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.csh-cp-detail-field,
.csh-cp-detail-address,
.csh-cp-detail-pods {
	background: #ffffff;
	border: 1px solid var(--csh-cp-border);
	border-radius: 10px;
	padding: 12px;
}

.csh-cp-detail-field span {
	display: block;
	margin-bottom: 4px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-field strong {
	display: block;
	font-size: 13px;
	line-height: 1.45;
	font-weight: 800;
	color: var(--csh-cp-navy);
	word-break: break-word;
}

.csh-cp-detail-address h4,
.csh-cp-detail-pods h4 {
	margin-bottom: 10px;
}

.csh-cp-detail-line,
.csh-cp-detail-pod-row {
	display: grid;
	grid-template-columns: 90px minmax(0, 1fr);
	gap: 10px;
	font-size: 12px;
	line-height: 1.5;
	margin-top: 6px;
}

.csh-cp-detail-line strong,
.csh-cp-detail-pod-row span {
	font-weight: 900;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-line span,
.csh-cp-detail-pod-row strong {
	font-weight: 700;
	color: var(--csh-cp-text);
	word-break: break-word;
}

.csh-cp-detail-pod-row a {
	font-weight: 900;
	text-decoration: none;
}

.csh-cp-detail-pods p {
	margin: 0;
	font-size: 12px;
	line-height: 1.5;
	color: var(--csh-cp-muted);
}

@media (max-width: 820px) {
	.csh-cp-detail-grid,
	.csh-cp-detail-address-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	.csh-cp-detail-title {
		flex-direction: column;
	}

	.csh-cp-detail-line,
	.csh-cp-detail-pod-row {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}

/* v1.6.16 booking details refinements */
.csh-cp-detail-card {
	background: var(--csh-cp-white);
	border: 0;
	border-radius: 0;
	padding: 2px 0 0;
}

.csh-cp-detail-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px 28px;
	margin-bottom: 18px;
}

.csh-cp-detail-field {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}

.csh-cp-detail-field span {
	margin-bottom: 4px;
	font-size: 10px;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-field strong {
	font-size: 13px;
	font-weight: 900;
	color: var(--csh-cp-navy);
}

.csh-cp-detail-address-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 16px 0 18px;
}

.csh-cp-detail-address,
.csh-cp-detail-pods,
.csh-cp-detail-tracking {
	background: #ffffff;
	border: 1px solid var(--csh-cp-border);
	border-radius: 12px;
	padding: 14px;
}

.csh-cp-detail-address h4,
.csh-cp-detail-pods h4,
.csh-cp-detail-tracking h4 {
	margin: 0 0 10px;
	font-size: 11px;
	line-height: 1.3;
	font-weight: 900;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-line,
.csh-cp-detail-pod-row {
	grid-template-columns: 92px minmax(0, 1fr);
	font-size: 12px;
}

.csh-cp-detail-tracking {
	margin-top: 14px;
}

.csh-cp-tracking-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.csh-cp-tracking-marker-wrap {
	position: relative;
	width: 10px;
	min-height: 34px;
	padding-top: 4px;
}

.csh-cp-tracking-marker-wrap::after {
	content: '';
	position: absolute;
	top: 17px;
	bottom: -2px;
	left: 4px;
	width: 1px;
	background: var(--csh-cp-border);
}

.csh-cp-tracking-marker {
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: var(--csh-cp-teal);
}

.csh-cp-tracking-body strong,
.csh-cp-tracking-body span {
	display: block;
}

.csh-cp-tracking-body strong {
	font-size: 13px;
	font-weight: 900;
	color: var(--csh-cp-navy);
}

.csh-cp-tracking-body span {
	margin-top: 3px;
	font-size: 12px;
	color: var(--csh-cp-muted);
}

.csh-cp-detail-actions {
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid var(--csh-cp-border);
}

.csh-cp-detail-tracking-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(46, 110, 183, .25);
	border-radius: 8px;
	background: rgba(46, 110, 183, .08);
	color: var(--csh-cp-blue);
	font-family: inherit;
	font-size: 12px;
	font-weight: 900;
	padding: 9px 16px;
	cursor: not-allowed;
}

.csh-cp-detail-tracking-button::before {
	content: '↗';
	margin-right: 7px;
	font-size: 12px;
}

@media (max-width: 820px) {
	.csh-cp-detail-grid,
	.csh-cp-detail-address-grid {
		grid-template-columns: 1fr;
	}
}


/* v1.6.17 customer portal booking detail polish */
.csh-cp-detail-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csh-cp-detail-address h4 {
	margin-bottom: 12px;
}

.csh-cp-detail-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.csh-cp-detail-tracking-button,
.csh-cp-detail-pod-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 9px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.2;
	padding: 10px 18px;
	cursor: default;
	box-shadow: 0 5px 14px rgba(3, 63, 99, .12);
}

.csh-cp-detail-tracking-button {
	background: #2e6eb7;
	color: #ffffff;
}

.csh-cp-detail-tracking-button::before {
	content: '↗';
	margin-right: 7px;
	font-size: 12px;
}

.csh-cp-detail-pod-button {
	background: #0f2a5f;
	color: #ffffff;
	cursor: pointer;
}

.csh-cp-detail-pod-button::before {
	content: '↓';
	margin-right: 7px;
	font-size: 13px;
	line-height: 1;
}

.csh-cp-detail-pod-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(3, 63, 99, .16);
}

.csh-cp-detail-pod-button:disabled,
.csh-cp-detail-pod-button.is-loading {
	opacity: .72;
	cursor: wait;
	transform: none;
}

.csh-cp-detail-pod-button.is-error {
	background: #b91c1c;
}

.csh-cp-tracking-item + .csh-cp-tracking-item {
	margin-top: 8px;
}

.csh-cp-tracking-body em {
	display: block;
	margin-top: 3px;
	font-style: normal;
	font-size: 12px;
	color: var(--csh-cp-text);
}

@media (max-width: 920px) {
	.csh-cp-detail-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.csh-cp-detail-grid {
		grid-template-columns: 1fr;
	}

	.csh-cp-detail-tracking-button,
	.csh-cp-detail-pod-button {
		width: 100%;
	}
}

/* v1.6.18 customer portal pagination, date range, and rate popover */
.csh-cp-rate-stat {
	position: relative;
	cursor: help;
}

.csh-cp-rate-popover {
	position: absolute;
	left: 0;
	top: calc(100% + 10px);
	z-index: 40;
	width: min(620px, 90vw);
	max-height: 360px;
	overflow: auto;
	background: #ffffff;
	border: 1px solid var(--csh-cp-border);
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(3, 63, 99, .16);
	padding: 14px;
}

.csh-cp-rate-stat:hover .csh-cp-rate-popover,
.csh-cp-rate-stat:focus-within .csh-cp-rate-popover,
.csh-cp-rate-stat:focus .csh-cp-rate-popover {
	display: block !important;
}

.csh-cp-rate-popover-title {
	display: block;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--csh-cp-navy);
	margin-bottom: 10px;
}

.csh-cp-rate-group + .csh-cp-rate-group {
	border-top: 1px solid var(--csh-cp-border);
	margin-top: 12px;
	padding-top: 12px;
}

.csh-cp-rate-group-title {
	font-size: 12px;
	font-weight: 900;
	color: var(--csh-cp-blue);
	margin-bottom: 8px;
}

.csh-cp-rate-row {
	display: block;
	font-size: 12px;
	line-height: 1.45;
	color: var(--csh-cp-text);
	padding: 7px 0;
}

.csh-cp-rate-row + .csh-cp-rate-row {
	border-top: 1px dashed #dbe2ea;
}

.csh-cp-rate-row span,
.csh-cp-rate-row em {
	display: block;
}

.csh-cp-rate-row span {
	font-weight: 800;
	color: var(--csh-cp-navy);
}

.csh-cp-rate-row em,
.csh-cp-rate-empty {
	font-style: normal;
	font-size: 11px;
	color: var(--csh-cp-muted);
	margin: 3px 0 0;
}

.csh-cp-history-date-range {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: -4px 0 12px;
	padding: 6px 11px;
	border-radius: 999px;
	background: rgba(48, 213, 200, .12);
	color: var(--csh-cp-navy);
	font-size: 12px;
	font-weight: 800;
}

.csh-cp-history-date-range::before {
	content: '';
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: var(--csh-cp-teal);
}

.csh-cp-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	margin: 16px 0 0;
	flex-wrap: wrap;
}

.csh-cp-pagination button {
	border: 1px solid var(--csh-cp-border);
	border-radius: 10px;
	background: #ffffff;
	color: var(--csh-cp-navy);
	font-family: inherit;
	font-size: 12px;
	font-weight: 800;
	min-width: 38px;
	padding: 8px 13px;
	cursor: pointer;
	box-shadow: 0 2px 10px rgba(42,106,246,.06);
}

.csh-cp-pagination button:hover:not(:disabled) {
	border-color: var(--csh-cp-blue);
	color: var(--csh-cp-blue);
	box-shadow: 0 6px 18px rgba(42,106,246,.12);
}

.csh-cp-pagination button.is-active,
.csh-cp-pagination button.is-active:disabled {
	border-color: var(--csh-cp-blue);
	background: linear-gradient(135deg,var(--csh-cp-blue),#1a50cc);
	color: #ffffff;
	opacity: 1;
	cursor: default;
}

.csh-cp-pagination button:disabled:not(.is-active) {
	opacity: .5;
	cursor: not-allowed;
}

.csh-cp-pagination span {
	font-size: 12px;
	font-weight: 800;
	color: var(--csh-cp-muted);
}

.csh-cp-pagination-summary {
	margin-right: auto;
	padding: 8px 0;
}

.csh-cp-pagination-page-label {
	padding-left: 2px;
}

@media (max-width: 620px) {
	.csh-cp-rate-popover {
		left: auto;
		right: 0;
		width: 86vw;
	}

	.csh-cp-pagination {
		justify-content: center;
		flex-wrap: wrap;
	}
}

@media (max-width: 760px) {
	.csh-cp-nav {
		align-items: flex-start;
		flex-direction: column;
		padding: 12px 14px;
	}
	.csh-cp-nav-actions {
		width: 100%;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.csh-cp-account-switcher {
		flex: 1 1 220px;
	}
	.csh-cp-account-button {
		width: 100%;
		max-width: none;
	}
	.csh-cp-booking-link,
	.csh-cp-logout-button {
		min-height: 34px;
	}
}

.csh-cp-logout-button {
	background: rgba(255, 255, 255, .10);
	border: 1px solid rgba(255, 255, 255, .16);
	color: rgba(255, 255, 255, .76);
	font-size: 12px;
	font-weight: 700;
	padding: 7px 13px;
	border-radius: 8px;
	font-family: inherit;
	cursor: pointer;
}

.csh-cp-logout-button:hover {
	background: rgba(255, 255, 255, .18);
}

/* v1.6.21 portal nav and branded customer cards */
.csh-cp-nav-actions > .csh-cp-logout-button {
	display: none !important;
}

.csh-cp-booking-link,
.csh-cp-booking-link:visited,
.csh-cp-booking-link:hover,
.csh-cp-booking-link:focus {
	color: #ffffff !important;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat {
	background: linear-gradient(135deg, #033f63 0%, #1d4ed8 72%, #30d5c8 150%);
	border-color: rgba(48, 213, 200, .24);
	box-shadow: 0 14px 34px rgba(3, 63, 99, .18);
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat span {
	color: rgba(255, 255, 255, .78);
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong {
	font-size: 19px;
	color: #ffffff;
	letter-spacing: -.02em;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat small {
	color: rgba(255, 255, 255, .76);
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-rate-popover {
	color: #0f172a;
}

/* v1.6.22 account icons, compact rates popover, branded profile cards, and tracking line polish */
.csh-cp-account-caret,
.csh-cp-account-caret svg {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.csh-cp-account-caret {
	width: 18px;
	height: 18px;
	font-size: 0;
}

.csh-cp-account-menu-footer {
	display: flex;
	align-items: center;
	gap: 8px;
}

.csh-cp-menu-icon,
.csh-cp-menu-icon svg {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat {
	background:
		radial-gradient(circle at 92% 12%, rgba(48, 213, 200, .42), transparent 34%),
		linear-gradient(135deg, #033f63 0%, #074b73 46%, #1f63d8 100%);
	border-color: rgba(48, 213, 200, .28);
	box-shadow: 0 14px 36px rgba(3, 63, 99, .20);
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong {
	font-size: 14px;
	line-height: 1.15;
	letter-spacing: -.01em;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat small {
	font-size: 10.5px;
}

.csh-cp-rate-popover {
	width: min(420px, 86vw);
	max-height: 280px;
	padding: 10px;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(3, 63, 99, .15);
}

.csh-cp-rate-popover-title {
	font-size: 10px;
	margin-bottom: 7px;
}

.csh-cp-rate-group + .csh-cp-rate-group {
	margin-top: 8px;
	padding-top: 8px;
}

.csh-cp-rate-group-title {
	font-size: 10.5px;
	margin-bottom: 5px;
}

.csh-cp-rate-row {
	font-size: 10.5px;
	line-height: 1.35;
	padding: 5px 0;
}

.csh-cp-rate-row span {
	font-size: 10.5px;
}

.csh-cp-rate-row em,
.csh-cp-rate-empty {
	font-size: 10px;
	line-height: 1.35;
}

.csh-cp-tracking-item {
	position: relative;
	min-height: 54px;
}

.csh-cp-tracking-item:not(:last-child)::before {
	content: '';
	position: absolute;
	left: 4.5px;
	top: 16px;
	bottom: -18px;
	width: 1px;
	background: var(--csh-cp-border);
}

.csh-cp-tracking-marker-wrap {
	min-height: 0;
	padding-top: 4px;
	z-index: 1;
}

.csh-cp-tracking-marker-wrap::after {
	display: none;
}

.csh-cp-tracking-marker {
	position: relative;
	z-index: 2;
}

/* v1.7.15 Jobs-style secure portal loading screen */
.csh-cp-loader {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	background: #FFFFFF;
	opacity: 1;
	visibility: visible;
	transition: opacity .45s ease, visibility .45s ease;
}

.csh-cp-loader[hidden] {
	display: none !important;
}

.csh-cp-loader.is-hiding {
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
}

.csh-cp-loader-brand {
	margin-bottom: 32px;
	color: #2563eb;
	line-height: 0;
}

.csh-cp-loader-brand svg {
	display: block;
	height: 28px;
	width: auto;
}

.csh-cp-loader-route {
	width: 300px;
	max-width: 88vw;
}

.csh-cp-loader-road {
	position: relative;
	height: 68px;
	display: flex;
	align-items: center;
}

.csh-cp-loader-road-line {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	height: 10px;
	border-radius: 999px;
	background: repeating-linear-gradient(90deg, #d7deea 0 18px, transparent 18px 30px);
}

.csh-cp-loader-dot {
	position: absolute;
	top: 50%;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #2563eb;
	box-shadow: 0 0 0 5px rgba(37, 99, 235, .14);
	transform: translateY(-50%);
}

.csh-cp-loader-dot-start {
	left: -2px;
}

.csh-cp-loader-dot-end {
	right: -2px;
}

.csh-cp-loader-truck {
	position: absolute;
	left: 0;
	top: 50%;
	width: 90px;
	transform: translate(-10%, -50%);
	transition: left .38s cubic-bezier(.4, 0, .2, 1);
	filter: drop-shadow(0 6px 14px rgba(15, 27, 53, .18));
	z-index: 2;
}

.csh-cp-loader-truck img {
	display: block;
	width: 100%;
	height: auto;
}

.csh-cp-loader-progress {
	height: 5px;
	background: #e8eef8;
	border-radius: 999px;
	overflow: hidden;
	margin-top: 10px;
}

.csh-cp-loader-progress > div {
	width: 0;
	height: 100%;
	background: linear-gradient(90deg, #0f1b35 0%, #2563eb 100%);
	border-radius: 999px;
	transition: width .32s ease;
}

.csh-cp-loader-label {
	margin-top: 11px;
	font-size: 11px;
	font-weight: 700;
	color: #9ca3af;
	letter-spacing: .12em;
	line-height: 1.4;
	text-align: center;
	text-transform: uppercase;
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.csh-cp-loader-copy {
	margin-top: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #64748b;
	line-height: 1.45;
	text-align: center;
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

@media (prefers-reduced-motion: reduce) {
	.csh-cp-loader,
	.csh-cp-loader-truck,
	.csh-cp-loader-progress > div {
		transition: none !important;
	}
}

/* v1.6.27 active tracking link and safer disabled state */
.csh-cp-detail-tracking-button.is-active {
	cursor: pointer;
	text-decoration: none;
}

.csh-cp-detail-tracking-button.is-active:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(3, 63, 99, .16);
}

.csh-cp-detail-tracking-button.is-disabled,
.csh-cp-detail-tracking-button:disabled {
	opacity: .68;
	cursor: not-allowed;
	transform: none;
}

/* v1.6.28 force readable text for the active full tracking link */
.csh-cp-detail-tracking-button.is-active,
.csh-cp-detail-tracking-button.is-active:visited,
.csh-cp-detail-tracking-button.is-active:hover,
.csh-cp-detail-tracking-button.is-active:focus {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff;
}

/* v1.6.33 account type tags and PAYG profile cards */
.csh-cp-account-type-tag{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;line-height:1.2;white-space:nowrap;vertical-align:middle}
.csh-cp-account-type-payg{color:#075985;background:#e0f2fe;border:1px solid #bae6fd}
.csh-cp-account-type-premium{color:#442006;background:linear-gradient(135deg,#fff7d6 0%,#f8d477 44%,#fff8dc 100%);border:1px solid #f5c542;box-shadow:0 7px 18px rgba(146,93,11,.18)}
.csh-cp-page-type-tag{margin-left:10px;transform:translateY(-3px)}
.csh-cp-menu-type-tag{margin:7px 0 4px}
.csh-cp-account-company-tags{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;flex:0 0 auto;max-width:140px}
.csh-cp-account-company-option{align-items:center}
.csh-cp-account-company-option > span:first-child{min-width:0;flex:1}
.csh-cp-rate-stat-disabled{cursor:default!important}
.csh-cp-rate-stat-disabled .csh-cp-rate-popover{display:none!important}
.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong[data-csh-cp-rate-count]{font-size:16px;line-height:1.25;max-width:210px}


/* v1.7.1 Customer Portal header action and premium rate modal */
.csh-cp-page-head-copy {
	min-width: 0;
}

.csh-cp-page-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-left: auto;
	flex: 0 0 auto;
}

.csh-cp-page-booking-link {
	min-height: 40px;
	padding: 10px 18px;
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(42, 106, 246, .20);
	background: linear-gradient(135deg, var(--csh-cp-blue), #1d4ed8);
}

.csh-cp-page-booking-link.csh-cp-booking-link-attention:hover,
.csh-cp-page-booking-link.csh-cp-booking-link-attention:focus {
	transform: translateY(-1px);
	box-shadow: 0 16px 34px rgba(42, 106, 246, .26);
}

.csh-cp-rate-stat:not(.csh-cp-rate-stat-disabled) {
	cursor: pointer;
}

.csh-cp-rate-stat:not(.csh-cp-rate-stat-disabled)::after {
	content: none;
	position: absolute;
	right: 16px;
	bottom: 14px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .84);
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	padding: 4px 8px;
}

.csh-cp-rate-stat-disabled {
	cursor: default !important;
}

.csh-cp-rate-modal[hidden] {
	display: none !important;
}

.csh-cp-rate-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 22px;
	font-family: var(--csh-cp-font);
}

.csh-cp-rate-modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(13, 31, 60, .68);
	backdrop-filter: blur(7px);
}

.csh-cp-rate-modal-panel {
	position: relative;
	z-index: 1;
	width: min(920px, 94vw);
	max-height: min(760px, 90vh);
	overflow: hidden;
	background: #ffffff;
	border: 1px solid rgba(228, 232, 244, .92);
	border-radius: 28px;
	box-shadow: 0 28px 80px rgba(13, 31, 60, .34);
}

.csh-cp-rate-modal-close {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 2;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, .16);
	color: #ffffff;
	font-size: 22px;
	line-height: 1;
	font-weight: 800;
	cursor: pointer;
	font-family: inherit;
}

.csh-cp-rate-modal-hero {
	padding: 30px 34px 28px;
	background: radial-gradient(circle at top right, rgba(0, 200, 180, .32), transparent 34%), linear-gradient(135deg, #0D1F3C 0%, #1A2E4A 54%, #2A6AF6 135%);
	color: #ffffff;
}

.csh-cp-rate-modal-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	padding: 6px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .13);
	border: 1px solid rgba(255, 255, 255, .18);
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.csh-cp-rate-modal-hero h3 {
	margin: 0;
	font-size: clamp(24px, 4vw, 36px);
	line-height: 1.08;
	font-weight: 900;
	letter-spacing: -.03em;
	color: #ffffff;
}

.csh-cp-rate-modal-hero p {
	max-width: 680px;
	margin: 10px 0 0;
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255, 255, 255, .78);
}

.csh-cp-rate-modal-body {
	max-height: calc(min(760px, 90vh) - 162px);
	overflow: auto;
	padding: 24px;
	background: #F5F7FC;
}

.csh-cp-rate-modal-group {
	background: #ffffff;
	border: 1px solid #E4E8F4;
	border-radius: 22px;
	padding: 18px;
	box-shadow: 0 10px 30px rgba(42, 106, 246, .08);
}

.csh-cp-rate-modal-group + .csh-cp-rate-modal-group {
	margin-top: 16px;
}

.csh-cp-rate-modal-group-head,
.csh-cp-rate-modal-rate-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.csh-cp-rate-modal-service {
	font-size: 15px;
	font-weight: 900;
	letter-spacing: -.01em;
	color: #0D1F3C;
}

.csh-cp-rate-modal-minimum,
.csh-cp-rate-modal-rate-head span {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: rgba(42, 106, 246, .10);
	color: #1A50CC;
	font-size: 11px;
	font-weight: 900;
	padding: 6px 10px;
	white-space: nowrap;
}

.csh-cp-rate-modal-rate {
	margin-top: 14px;
	padding: 16px;
	border: 1px solid #E4E8F4;
	border-radius: 18px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.csh-cp-rate-modal-rate-head strong {
	font-size: 14px;
	font-weight: 900;
	color: #0D1F3C;
}

.csh-cp-rate-modal-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin-top: 14px;
}

.csh-cp-rate-modal-metric {
	padding: 11px 12px;
	border-radius: 14px;
	background: #F5F7FC;
	border: 1px solid #E4E8F4;
}

.csh-cp-rate-modal-metric span,
.csh-cp-rate-modal-metric strong {
	display: block;
}

.csh-cp-rate-modal-metric span {
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #7A8AAA;
}

.csh-cp-rate-modal-metric strong {
	margin-top: 4px;
	font-size: 13px;
	font-weight: 900;
	color: #0D1F3C;
}

.csh-cp-rate-modal-open {
	overflow: hidden;
}

@media (max-width: 760px) {
	.csh-cp-page-head {
		align-items: stretch;
		flex-direction: column;
	}
	.csh-cp-page-actions {
		width: 100%;
		justify-content: flex-end;
	}
	.csh-cp-page-booking-link {
		width: auto;
	}
	.csh-cp-rate-modal {
		padding: 12px;
	}
	.csh-cp-rate-modal-panel {
		border-radius: 22px;
	}
	.csh-cp-rate-modal-hero {
		padding: 26px 22px 22px;
	}
	.csh-cp-rate-modal-body {
		padding: 16px;
	}
	.csh-cp-rate-modal-group-head,
	.csh-cp-rate-modal-rate-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}
	.csh-cp-rate-modal-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 430px) {
	.csh-cp-rate-modal-grid {
		grid-template-columns: 1fr;
	}
}


/* v1.7.4 Jobs-style customer portal header, tabs, white cards, and inline tracking view */
.csh-cp {
	--csh-cp-navy: #0D1F3C;
	--csh-cp-navy-mid: #1A2E4A;
	--csh-cp-blue: #2A6AF6;
	--csh-cp-blue-dark: #1A50CC;
	--csh-cp-teal: #00C8B4;
	--csh-cp-white: #FFFFFF;
	--csh-cp-bg: #F5F7FC;
	--csh-cp-text: #0D1F3C;
	--csh-cp-muted: #7A8AAA;
	--csh-cp-border: #E4E8F4;
	--csh-cp-green: #22C55E;
	--csh-cp-red: #EF4444;
	--csh-cp-shadow: 0 2px 16px rgba(42,106,246,.10);
	--csh-cp-shadow-md: 0 6px 32px rgba(42,106,246,.14);
	font-family: 'Sora', Arial, sans-serif;
	background: #f3f4f6;
}

.csh-cp-dashboard {
	background: #f3f4f6;
}

.csh-cp-topbar {
	position: sticky;
	top: 0;
	z-index: 100;
	background: #ffffff;
	border-bottom: 1px solid #dfe5ef;
	box-shadow: 0 1px 0 rgba(13,31,60,.04);
}

.csh-cp-topbar-main {
	min-height: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 0 16px 0 46px;
	background: #ffffff;
}

.csh-cp-nav-brand {
	display: inline-flex;
	align-items: center;
	gap: 15px;
	text-decoration: none !important;
	min-width: 0;
}

.csh-cp-nav-brand:hover,
.csh-cp-nav-brand:focus {
	text-decoration: none !important;
}

.csh-cp-nav-logo {
	width: 118px;
	max-width: 118px;
	height: auto;
	display: block;
}

.csh-cp-nav-line {
	width: 1px;
	height: 42px;
	background: #d6dce8;
}

.csh-cp-nav-stack {
	line-height: 1.23;
	text-align: left;
}

.csh-cp-nav-stack span,
.csh-cp-nav-stack strong {
	display: block;
	font-style: normal;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .19em;
	text-transform: uppercase;
}

.csh-cp-nav-stack span {
	color: #3A4A6A;
}

.csh-cp-nav-stack strong {
	color: #2A6AF6;
}

.csh-cp-menu-tabs {
	display: flex;
	align-items: center;
	gap: 0;
	min-height: 45px;
	padding: 0 46px;
	background: #ffffff;
	border-top: 1px solid #eef2f7;
	overflow-x: auto;
}

.csh-cp-menu-tabs button {
	position: relative;
	border: 0;
	background: transparent;
	min-height: 45px;
	padding: 0 22px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #6f7a8d;
	white-space: nowrap;
	cursor: pointer;
}

.csh-cp-menu-tabs button::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: transparent;
}

.csh-cp-menu-tabs button:hover,
.csh-cp-menu-tabs button:focus,
.csh-cp-menu-tabs button.active {
	color: #2A6AF6;
}

.csh-cp-menu-tabs button.active::after {
	background: #2A6AF6;
}

.csh-cp-nav-actions {
	gap: 11px;
}

.csh-cp-avatar {
	background: #2A6AF6;
	color: #ffffff;
	box-shadow: inset 0 0 0 4px rgba(255,255,255,.22);
}

.csh-cp-account-button {
	min-width: 244px;
	background: #ffffff !important;
	border: 1px solid #ccd6e4 !important;
	box-shadow: none;
	color: #0D1F3C !important;
}

.csh-cp-account-copy strong {
	color: #0D1F3C;
}

.csh-cp-account-copy small {
	color: #6b7280;
}

.csh-cp-wrap {
	max-width: 1100px;
	padding: 72px 20px 48px;
}

.csh-cp-view[hidden] {
	display: none !important;
}

.csh-cp-view.active {
	display: block;
}

.csh-cp-page-head {
	align-items: flex-end;
	margin-bottom: 8px;
}

.csh-cp-page-head h2,
.csh-cp-track-head h2 {
	font-size: 25px;
	font-weight: 900;
	letter-spacing: -.03em;
	color: #0D1F3C;
}

.csh-cp-page-head p,
.csh-cp-track-head p {
	font-size: 13px;
	color: #7A8AAA;
}

.csh-cp-stats {
	gap: 12px;
	margin-bottom: 20px;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat {
	background: linear-gradient(135deg, #0D1F3C 0%, #1A2E4A 100%) !important;
	border: 1px solid rgba(228,232,244,.18);
	border-radius: 14px;
	box-shadow: 0 10px 24px rgba(13,31,60,.14);
}

.csh-cp-history-stats .csh-cp-stat {
	background: #ffffff !important;
	border: 1px solid #dce4ef;
	border-radius: 14px;
	box-shadow: none;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat span {
	color: rgba(255,255,255,.68);
}

.csh-cp-history-stats .csh-cp-stat span {
	color: #7A8AAA;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong {
	color: #FFFFFF;
	font-size: 19px;
	line-height: 1.08;
}

.csh-cp-history-stats .csh-cp-stat strong {
	color: #0D1F3C;
	font-size: 22px;
	line-height: 1.05;
}

.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat small {
	color: #00C8B4;
	font-weight: 900;
}

.csh-cp-history-stats .csh-cp-stat small {
	color: #22C55E;
	font-weight: 900;
}

.csh-cp-history-topline {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: -2px 0 16px;
}

.csh-cp-history-date-range {
	margin: 0;
	background: #ffffff;
	border: 1px solid #E4E8F4;
	box-shadow: none;
	color: #3A4A6A;
}

.csh-cp-history-topline .csh-cp-history-date-range[hidden] + .csh-cp-page-booking-link {
	margin-left: auto;
}

.csh-cp-page-booking-link {
	min-height: 44px;
	padding: 12px 20px;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(135deg, #0D1F3C 0%, #2A6AF6 58%, #00C8B4 130%);
	box-shadow: 0 14px 32px rgba(42,106,246,.24);
	font-size: 12px;
	letter-spacing: .02em;
	text-transform: uppercase;
}

.csh-cp-page-booking-link::after {
	content: '→';
	margin-left: 8px;
}

.csh-cp-page-booking-link.csh-cp-booking-link-attention:hover,
.csh-cp-page-booking-link.csh-cp-booking-link-attention:focus {
	background: linear-gradient(135deg, #08162d 0%, #1A50CC 58%, #00AFA0 130%);
	box-shadow: 0 18px 38px rgba(42,106,246,.30);
}

.csh-cp-tabs {
	border: 1px solid #E4E8F4;
	border-radius: 9px;
	background: #eef2f7;
	padding: 4px;
	gap: 4px;
	margin-bottom: 18px;
}

.csh-cp-tabs button {
	border: 0;
	border-radius: 8px;
	margin: 0;
	padding: 8px 16px;
	font-size: 12px;
	color: #697386;
}

.csh-cp-tabs button.active {
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(13,31,60,.08);
	color: #0D1F3C;
}

.csh-cp-tabs span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 26px;
	margin-left: 8px;
	padding: 3px 8px;
	border-radius: 999px;
	background: #dbeafe;
	color: #1d4ed8;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
}

.csh-cp-tabs button.active span {
	background: linear-gradient(135deg, #2A6AF6 0%, #1A50CC 100%);
	color: #FFFFFF;
	box-shadow: 0 6px 14px rgba(42,106,246,.22);
}

.csh-cp-booking-card,
.csh-cp-empty-card,
.csh-cp-branch-card {
	border-radius: 13px;
	box-shadow: none;
	border-color: #dce4ef;
}

.csh-cp-booking-ref {
	font-family: 'Sora', Arial, sans-serif;
	color: #2A6AF6;
	letter-spacing: .02em;
}

.csh-cp-track-head {
	text-align: center;
	margin: 0 auto 24px;
}

.csh-cp-track-head h2 {
	margin: 0;
	font-size: 30px;
}

.csh-cp-track-head p {
	margin: 8px 0 0;
}

.csh-cp-track-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	max-width: 520px;
	margin: 0 auto 52px;
}

.csh-cp-track-form input {
	width: 100%;
	min-height: 50px;
	border: 1px solid #d6dce8;
	border-radius: 10px;
	background: #ffffff;
	padding: 0 16px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	color: #0D1F3C;
	outline: none;
}

.csh-cp-track-form input:focus {
	border-color: #2A6AF6;
	box-shadow: 0 0 0 4px rgba(42,106,246,.12);
}

.csh-cp-track-form button {
	min-height: 50px;
	border: 0;
	border-radius: 10px;
	background: #2A6AF6;
	color: #ffffff;
	padding: 0 24px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 900;
	cursor: pointer;
}

.csh-cp-track-form button:hover,
.csh-cp-track-form button:focus {
	background: #1A50CC;
}

.csh-cp-track-form button:disabled {
	opacity: .7;
	cursor: wait;
}

.csh-cp-track-alert {
	max-width: 680px;
	margin: -28px auto 22px;
	border: 1px solid #fed7aa;
	border-radius: 12px;
	background: #fff7ed;
	color: #9a3412;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	padding: 12px 14px;
}

.csh-cp-track-result {
	max-width: 680px;
	margin: 0 auto;
}

.csh-cp-track-card {
	overflow: hidden;
	border: 1px solid #dce4ef;
	border-radius: 13px;
	background: #ffffff;
	box-shadow: 0 4px 12px rgba(13,31,60,.08);
}

.csh-cp-track-card-hero {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 22px 28px;
	background: #173867;
	color: #ffffff;
}

.csh-cp-track-kicker {
	display: block;
	margin-bottom: 6px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #7A8AAA;
}

.csh-cp-track-card-hero h3 {
	margin: 0;
	font-size: 25px;
	line-height: 1.1;
	font-weight: 900;
	letter-spacing: -.02em;
	color: #ffffff;
}

.csh-cp-track-card-hero p {
	margin: 7px 0 0;
	font-size: 13px;
	font-weight: 500;
	color: rgba(255,255,255,.78);
}

.csh-cp-track-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	padding: 7px 14px;
	background: #dcfce7;
	color: #166534;
	font-size: 12px;
	font-weight: 900;
	white-space: nowrap;
}

.csh-cp-track-card-body {
	padding: 26px 28px 0;
}

.csh-cp-track-route {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding-bottom: 22px;
	border-bottom: 1px solid #E4E8F4;
}

.csh-cp-track-route-point span {
	display: block;
	margin-bottom: 4px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #7A8AAA;
}

.csh-cp-track-route-point strong {
	display: block;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
	color: #0D1F3C;
	text-transform: uppercase;
}

.csh-cp-track-route-point small {
	display: block;
	margin-top: 3px;
	font-size: 12px;
	line-height: 1.45;
	color: #6b7280;
}

.csh-cp-track-route-arrow {
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #c3cad6;
}

.csh-cp-track-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 22px 0 28px;
}

.csh-cp-track-metric {
	min-height: 58px;
	border-radius: 9px;
	background: #eef2f7;
	padding: 12px 14px;
}

.csh-cp-track-metric span,
.csh-cp-track-metric strong {
	display: block;
}

.csh-cp-track-metric span {
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #7A8AAA;
}

.csh-cp-track-metric strong {
	margin-top: 5px;
	font-size: 13px;
	font-weight: 900;
	line-height: 1.25;
	color: #0D1F3C;
}

.csh-cp-track-history {
	margin: 0 -28px;
	border-top: 1px solid #E4E8F4;
	background: #ffffff;
}

.csh-cp-track-history h4 {
	margin: 0;
	padding: 14px 28px;
	border-bottom: 1px solid #E4E8F4;
	background: #eef2f7;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #3A4A6A;
}

.csh-cp-track-step {
	position: relative;
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr);
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid #E4E8F4;
}

.csh-cp-track-step:last-child {
	border-bottom: 0;
}

.csh-cp-track-step::before {
	content: '';
	position: absolute;
	left: 23px;
	top: 28px;
	bottom: -8px;
	width: 1px;
	background: #d7dfec;
}

.csh-cp-track-step:last-child::before {
	display: none;
}

.csh-cp-track-step-marker {
	position: relative;
	z-index: 1;
	width: 10px;
	height: 10px;
	margin-top: 4px;
	border-radius: 50%;
	background: #a8b2c1;
}

.csh-cp-track-step.is-complete .csh-cp-track-step-marker,
.csh-cp-track-step.is-current .csh-cp-track-step-marker,
.csh-cp-track-step.is-first .csh-cp-track-step-marker {
	background: #22C55E;
}

.csh-cp-track-step-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
}

.csh-cp-track-step-head strong {
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
	color: #0D1F3C;
}

.csh-cp-track-step-head span {
	font-size: 12px;
	line-height: 1.4;
	color: #7A8AAA;
	white-space: nowrap;
}

.csh-cp-track-step-body p {
	margin: 3px 0 0;
	font-size: 12px;
	line-height: 1.45;
	color: #6b7280;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0,0,0,0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@media (max-width: 840px) {
	.csh-cp-topbar-main,
	.csh-cp-menu-tabs {
		padding-left: 18px;
		padding-right: 18px;
	}
	.csh-cp-wrap {
		padding-top: 42px;
	}
	.csh-cp-track-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.csh-cp-topbar-main {
		align-items: stretch;
		flex-direction: column;
		padding-top: 12px;
		padding-bottom: 12px;
	}
	.csh-cp-nav-actions,
	.csh-cp-account-switcher,
	.csh-cp-account-button {
		width: 100%;
	}
	.csh-cp-account-button {
		max-width: none;
	}
	.csh-cp-menu-tabs {
		padding: 0 12px;
	}
	.csh-cp-menu-tabs button {
		padding: 0 14px;
		font-size: 11px;
	}
	.csh-cp-history-topline {
		align-items: stretch;
		flex-direction: column;
	}
	.csh-cp-page-booking-link,
	.csh-cp-track-form button {
		width: 100%;
	}
	.csh-cp-track-form {
		grid-template-columns: 1fr;
		margin-bottom: 34px;
	}
	.csh-cp-track-card-hero,
	.csh-cp-track-route,
	.csh-cp-track-step-head {
		grid-template-columns: 1fr;
		flex-direction: column;
	}
	.csh-cp-track-card-hero {
		align-items: flex-start;
	}
	.csh-cp-track-route-arrow {
		text-align: left;
		transform: rotate(90deg);
	}
	.csh-cp-track-metrics {
		grid-template-columns: 1fr;
	}
	.csh-cp-track-step-head span {
		white-space: normal;
	}
}

.csh-cp-track-status.is-pending { background: #fef3c7; color: #92400e; }
.csh-cp-track-status.is-picked { background: #ede9fe; color: #6d28d9; }
.csh-cp-track-status.is-transit { background: #dbeafe; color: #1d4ed8; }
.csh-cp-track-status.is-complete { background: #dcfce7; color: #166534; }
.csh-cp-track-status.is-failed { background: #fee2e2; color: #991b1b; }

@keyframes csh-cp-book-shift-attention {
	0%, 100% { transform: translateY(0) rotate(0deg) scale(1); }
	12% { transform: translateY(-2px) rotate(-1.2deg) scale(1.015); }
	24% { transform: translateY(0) rotate(1.2deg) scale(1.02); }
	36% { transform: translateY(-1px) rotate(-.8deg) scale(1.012); }
	48% { transform: translateY(0) rotate(.8deg) scale(1); }
	64% { transform: translateY(0) rotate(0deg) scale(1); }
}

.csh-cp-page-booking-link {
	position: relative;
	isolation: isolate;
}

.csh-cp-page-booking-link.csh-cp-booking-link-attention {
	animation: csh-cp-book-shift-attention 2.8s ease-in-out infinite;
}

.csh-cp-page-booking-link.csh-cp-booking-link-attention::before {
	content: '';
	position: absolute;
	inset: -5px;
	z-index: -1;
	border-radius: inherit;
	background: linear-gradient(135deg, rgba(42,106,246,.28), rgba(0,200,180,.22));
	opacity: .75;
	filter: blur(12px);
}

.csh-cp-page-booking-link.csh-cp-booking-link-attention:hover,
.csh-cp-page-booking-link.csh-cp-booking-link-attention:focus {
	animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
	.csh-cp-page-booking-link.csh-cp-booking-link-attention {
		animation: none;
	}
}

/* v1.7.7 customer portal stat refinement */
.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong,
.csh-cp-stats:not(.csh-cp-history-stats) .csh-cp-stat strong[data-csh-cp-rate-count] {
	font-size: 14px;
	line-height: 1.15;
}

/* v1.7.12 rate card detail action placement */
.csh-cp-rate-stat:not(.csh-cp-rate-stat-disabled)::after {
	content: none;
	top: 14px;
	right: 14px;
	bottom: auto;
	font-size: 7px;
	line-height: 1;
	padding: 4px 7px;
}

/* v1.7.17 grouped shift booking history */
.csh-cp-shift-card {
	border-color: rgba(42, 106, 246, .22);
}

.csh-cp-shift-consignments {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.csh-cp-shift-consignments-title {
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--csh-cp-muted);
}

.csh-cp-consignment-card.is-nested {
	box-shadow: none;
	background: #f8fafc;
	border-color: #dbe4f0;
	padding: 13px 14px;
}

.csh-cp-consignment-card.is-nested .csh-cp-booking-ref {
	font-size: 12px;
}

.csh-cp-consignment-card.is-nested .csh-cp-booking-route,
.csh-cp-consignment-card.is-nested .csh-cp-booking-meta {
	font-size: 12px;
}


/* v1.7.18 nested consignment detail background refinement */
.csh-cp-consignment-card.is-nested .csh-cp-booking-detail-panel {
	background: #f8fafc;
}

.csh-cp-consignment-card.is-nested .csh-cp-detail-card {
	background: transparent;
}

.csh-cp-consignment-card.is-nested .csh-cp-detail-address,
.csh-cp-consignment-card.is-nested .csh-cp-detail-tracking,
.csh-cp-consignment-card.is-nested .csh-cp-detail-pods {
	background: #ffffff;
}

/* v1.7.19 grouped shift consignment badges and branded count emphasis */
.csh-cp-booking-ref-line {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	margin-bottom: 5px;
}

.csh-cp-booking-ref-line .csh-cp-booking-ref {
	margin-bottom: 0;
}

.csh-cp-consignment-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-width: 46px;
	height: 27px;
	padding: 0 9px;
	border-radius: 999px;
	background: linear-gradient(135deg, #2A6AF6 0%, #1A50CC 100%);
	color: #FFFFFF;
	font-family: 'Sora', Arial, sans-serif;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	box-shadow: 0 8px 20px rgba(42, 106, 246, .22);
	flex: 0 0 auto;
}

.csh-cp-consignment-badge svg {
	display: block;
	width: 13px;
	height: 13px;
}

.csh-cp-booking-count-number {
	color: #2A6AF6;
	font-weight: 900;
}

.csh-cp-consignment-card.is-nested .csh-cp-consignment-badge {
	min-width: 42px;
	height: 25px;
	font-size: 10px;
}

/* v1.7.26 customer portal consignment copy action */
.csh-cp-copy-cn-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(42, 106, 246, .22);
	border-radius: 999px;
	background: #ffffff;
	color: #2A6AF6;
	box-shadow: 0 5px 14px rgba(42, 106, 246, .10);
	cursor: pointer;
	transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
	flex: 0 0 auto;
}

.csh-cp-copy-cn-btn:hover,
.csh-cp-copy-cn-btn:focus {
	background: #eef4ff;
	border-color: rgba(42, 106, 246, .45);
	outline: none;
	transform: translateY(-1px);
}

.csh-cp-copy-cn-btn.is-copied {
	width: auto;
	padding: 0 9px;
	background: #eafaf7;
	border-color: rgba(0, 200, 180, .36);
	color: #078273;
}

.csh-cp-copy-cn-text {
	display: none;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .02em;
}

.csh-cp-copy-cn-btn.is-copied .csh-cp-copy-cn-text {
	display: inline;
}


/* v1.7.42 customer portal impersonation dropdown */
.csh-cp-avatar svg {
	width: 18px;
	height: 18px;
	display: block;
}

.csh-cp-account-company-search-wrap {
	padding: 10px 12px;
	background: #ffffff;
	border-bottom: 1px solid #e5edf7;
}

.csh-cp-account-company-search {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #d7e1ef;
	border-radius: 999px;
	padding: 9px 12px;
	font-size: 12px;
	font-weight: 700;
	color: var(--csh-cp-navy);
	background: #f8fbff;
	outline: none;
}

.csh-cp-account-company-search:focus {
	border-color: #2A6AF6;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(42,106,246,.13);
}

.csh-cp-account-company-list {
	max-height: 340px;
}

.csh-cp-sandbox-tag {
  position: fixed;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999999;
  width: max-content;
  max-width: calc(100vw - 32px);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid rgba(42, 106, 246, .24);
  background: rgba(255, 255, 255, .94);
  color: #0D1F3C;
  box-shadow: 0 12px 30px rgba(13, 31, 60, .14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  font: 800 11px/1.2 var(--csh-cp-font, 'Sora', Arial, Helvetica, sans-serif);
  letter-spacing: .11em;
  text-transform: uppercase;
  pointer-events: none;
}

.csh-cp-sandbox-tag span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #00C8B4;
  box-shadow: 0 0 0 5px rgba(0, 200, 180, .14);
  flex: 0 0 auto;
}
body.admin-bar .csh-cp-sandbox-tag {
  top: 46px;
}

@media (max-width: 782px) {
  body.admin-bar .csh-cp-sandbox-tag {
    top: 56px;
  }
}


.csh-cp-sandbox .csh-cp-login,
.csh-cp-sandbox .csh-cp-dashboard {
  padding-top: 0;
}

/* v1.7.50 simplified customer portal impersonation dropdown */
.csh-cp-account-menu {
  width: min(420px, calc(100vw - 32px));
  min-width: min(420px, calc(100vw - 32px));
  border: 1px solid #d1d5db;
  border-radius: 12px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, .14);
  background: #ffffff;
}

.csh-cp-account-menu-head {
  padding: 12px 14px;
  background: #eef1f6;
  border-bottom: 1px solid #e5e8ef;
}

.csh-cp-account-menu-head strong {
  font-size: 13px;
  font-weight: 700;
  color: #0f1b35;
}

.csh-cp-account-menu-head small {
  font-size: 11px;
  color: #6b7280;
  margin-top: 2px;
}

.csh-cp-account-menu-head .csh-cp-account-type-tag,
.csh-cp-menu-type-tag,
.csh-cp-account-company-tags,
.csh-cp-account-company-badge {
  display: none !important;
}

.csh-cp-account-company-search-wrap {
  padding: 10px 12px;
  background: #ffffff;
  border-bottom: 1px solid #eef1f6;
}

.csh-cp-account-company-search {
  border: 1px solid #dbe3f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #0f1b35;
  font-size: 12px;
  font-weight: 600;
  padding: 9px 12px;
}

.csh-cp-account-company-search:focus {
  border-color: #2563eb;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}

.csh-cp-account-company-list {
  max-height: 340px;
  overflow-y: auto;
  background: #ffffff;
}

.csh-cp-account-company-option {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  background: transparent;
  border: 0;
  border-top: 1px solid #eef1f6;
  border-bottom: 0;
  padding: 10px 14px;
  font-size: 13px;
  color: #0f1b35;
  cursor: pointer;
  text-align: left;
}

.csh-cp-account-company-option:hover {
  background: #f8fafc;
}

.csh-cp-account-company-option.active {
  background: #eef4ff;
}

.csh-cp-account-company-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
  color: #0f1b35;
}

.csh-cp-account-company-option.active .csh-cp-account-company-name {
  font-weight: 800;
}

.csh-cp-account-company-active {
  font-size: 11px;
  color: #2563eb;
  font-weight: 800;
  flex: 0 0 auto;
}

.csh-cp-account-menu-footer {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: #ffffff;
  border-top: 1px solid #eef1f6;
  color: #dc2626;
  font-size: 13px;
  font-weight: 500;
}

.csh-cp-account-menu-footer:hover {
  background: #fffafa;
}


/* v1.7.54 reliable dropdown search filtering */
.csh-cp-account-company-option.is-filtered-out {
  display: none !important;
}

.csh-cp-account-company-empty {
  padding: 14px;
  color: #6b7280;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  border-top: 1px solid #eef1f6;
  background: #ffffff;
}

/* v1.7.66 shift-level tracking button in booking history */
.csh-cp-track-shift-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: fit-content;
	margin-top: 7px;
	padding: 5px 10px;
	border-radius: 999px;
	border: 1px solid rgba(42, 106, 246, .22);
	background: rgba(42, 106, 246, .08);
	color: #1A50CC;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 16px rgba(42, 106, 246, .08);
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.csh-cp-track-shift-btn:hover,
.csh-cp-track-shift-btn:focus {
	background: rgba(42, 106, 246, .13);
	box-shadow: 0 8px 20px rgba(42, 106, 246, .14);
	color: #0F44C8;
	text-decoration: none;
	transform: translateY(-1px);
}

.csh-cp-track-shift-btn svg {
	display: block;
}

.csh-cp-track-shift-icon,
.csh-cp-track-shift-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* v1.8.31 Live/Sandbox customer session isolation reload modal */
.csh-cp-env-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;background:rgba(13,31,60,.62);backdrop-filter:blur(8px);padding:24px}.csh-cp-env-modal.is-visible{display:flex}.csh-cp-env-modal-panel{width:min(440px,100%);background:#fff;border:1px solid #E4E8F4;border-radius:28px;box-shadow:0 24px 70px rgba(13,31,60,.28);padding:30px 32px;text-align:center;font-family:'Sora',Arial,Helvetica,sans-serif;color:#0D1F3C}.csh-cp-env-modal-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#2A6AF6;color:#fff;font-size:34px;font-weight:800;box-shadow:0 10px 28px rgba(42,106,246,.28)}.csh-cp-env-modal-kicker{display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px;padding:6px 14px;border-radius:999px;background:#E8F0FE;color:#2A6AF6;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.csh-cp-env-modal-panel h3{margin:0 0 10px;font-size:26px;line-height:1.15;font-weight:800;color:#0D1F3C}.csh-cp-env-modal-panel p{margin:0 auto 22px;max-width:350px;color:#3A4A6A;font-size:14px;line-height:1.65}.csh-cp-env-modal-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#2A6AF6;color:#fff;font-weight:800;font-size:14px;padding:14px 28px;box-shadow:0 10px 24px rgba(42,106,246,.30);cursor:pointer}.csh-cp-env-modal-button:hover{background:#1A50CC}


/* v1.8.42 superadmin-only rate details action */
.csh-cp-rate-stat-no-details-action::after {
	display: none !important;
}


/* v1.8.59 shift-level charge value in grouped booking cards */
.csh-cp-shift-card .csh-cp-booking-side {
	align-items: flex-end;
	justify-content: flex-end;
	flex-wrap: wrap;
}

.csh-cp-booking-shift-total {
	display: block;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.15;
	text-align: right;
	white-space: nowrap;
	color: var(--csh-cp-navy);
}

@media (max-width: 620px) {
	.csh-cp-booking-shift-total {
		text-align: left;
	}
}

/* v1.9.1 Pending Routes */
.csh-cp-pending-route-card .csh-cp-booking-actions,
.csh-cp-pending-route-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.csh-cp-pending-delete-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	border: 1px solid rgba(239,68,68,.22);
	background: rgba(239,68,68,.08);
	color: #b91c1c;
	font-size: 12px;
	font-weight: 800;
	padding: 7px 14px;
	cursor: pointer;
}
.csh-cp-pending-delete-btn:disabled {
	opacity: .65;
	cursor: wait;
}

	/* v1.9.4 Premium route tabs and pending route delete modal */
	.csh-cp-tabs .csh-cp-premium-route-tab {
		position: relative;
		border: 0;
		background: transparent;
		color: #7A4B00;
		font-weight: 900;
		letter-spacing: .01em;
		text-transform: none;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab:first-of-type {
		margin-left: auto;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab::before {
		content: '';
		display: inline-block;
		width: 7px;
		height: 7px;
		margin-right: 7px;
		border-radius: 50%;
		background: #D98D00;
		box-shadow: 0 0 0 4px rgba(217,141,0,.13);
		vertical-align: middle;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab span {
		background: #FFE8A3;
		color: #7A4B00;
		box-shadow: none;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab:hover,
	.csh-cp-tabs .csh-cp-premium-route-tab:focus-visible {
		background: rgba(255,248,220,.72);
		color: #5B3A00;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab.active {
		background: linear-gradient(135deg, #7A4B00 0%, #A16207 100%);
		color: #FFF7D6;
		border: 0;
		box-shadow: 0 8px 18px rgba(122,75,0,.18);
	}
	.csh-cp-tabs .csh-cp-premium-route-tab.active::before {
		background: #FFE8A3;
		box-shadow: 0 0 0 4px rgba(255,232,163,.22);
	}
	.csh-cp-tabs .csh-cp-premium-route-tab.active span {
		background: #FFF7D6;
		color: #7A4B00;
		box-shadow: none;
	}
	.csh-cp-tabs .csh-cp-premium-route-tab[hidden] {
		display: none !important;
	}

.csh-cp-pending-delete-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 18px;
	font-family: 'Sora', Arial, Helvetica, sans-serif;
}
.csh-cp-pending-delete-modal.is-visible {
	display: flex;
}
.csh-cp-pending-delete-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(13,31,60,.54);
	backdrop-filter: blur(5px);
}
.csh-cp-pending-delete-panel {
	position: relative;
	width: min(386px, 100%);
	border: 1px solid #E4E8F4;
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(13,31,60,.26);
	padding: 24px;
	text-align: center;
	color: #0D1F3C;
}
.csh-cp-pending-delete-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin-bottom: 12px;
	border-radius: 50%;
	background: #FEF2F2;
	color: #B91C1C;
	font-weight: 900;
	font-size: 22px;
}
.csh-cp-pending-delete-panel h3 {
	margin: 0 0 8px;
	font-size: 20px;
	line-height: 1.22;
	font-weight: 900;
}
.csh-cp-pending-delete-panel p {
	margin: 0 auto 18px;
	font-size: 13px;
	line-height: 1.55;
	color: #64748B;
}
.csh-cp-pending-delete-error {
	margin: 0 0 14px;
	border: 1px solid rgba(239,68,68,.22);
	border-radius: 12px;
	background: rgba(239,68,68,.08);
	color: #B91C1C;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	padding: 10px 12px;
}
.csh-cp-pending-delete-actions {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
}
.csh-cp-pending-delete-actions button {
	min-width: 124px;
	border-radius: 999px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 900;
	padding: 11px 16px;
	cursor: pointer;
}
.csh-cp-pending-delete-cancel {
	border: 1px solid #D9E1EF;
	background: #F8FAFC;
	color: #0D1F3C;
}
.csh-cp-pending-delete-confirm {
	border: 1px solid rgba(220,38,38,.22);
	background: #DC2626;
	color: #ffffff;
	box-shadow: 0 10px 22px rgba(220,38,38,.22);
}
.csh-cp-pending-delete-confirm:disabled {
	opacity: .72;
	cursor: wait;
}
@media (max-width: 760px) {
	.csh-cp-tabs .csh-cp-premium-route-tab:first-of-type {
		margin-left: 0;
	}
}

/* v1.9.5 Recurring route templates */
.csh-cp-tabs .csh-cp-premium-route-tab.active {
	background: linear-gradient(135deg, #fff7d6 0%, #f8d477 44%, #fff8dc 100%);
	color: #442006;
	border: 0;
	box-shadow: 0 7px 18px rgba(146, 93, 11, .18), inset 0 0 0 1px rgba(178, 113, 0, .16);
}
.csh-cp-tabs .csh-cp-premium-route-tab.active::before {
	background: #A16207;
	box-shadow: 0 0 0 4px rgba(161, 98, 7, .16);
}
.csh-cp-tabs .csh-cp-premium-route-tab.active span {
	background: #7A4B00;
	color: #FFF7D6;
	box-shadow: none;
}
.csh-cp-status-pill.is-template {
	background: linear-gradient(135deg, #fff7d6 0%, #fde68a 100%);
	color: #7A4B00;
}
.csh-cp-route-company-meta {
	color: #7A4B00;
	font-weight: 800;
}
.csh-cp-booking-actions a svg,
.csh-cp-booking-actions button svg {
	margin-right: 6px;
	flex: 0 0 auto;
}
.csh-cp-booking-actions button,
.csh-cp-route-template-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
}
.csh-cp-clone-route-btn {
	border: 1px solid rgba(161, 98, 7, .18);
	background: rgba(255, 247, 214, .7);
	color: #7A4B00;
	padding: 6px 10px;
	font-size: 11px;
	line-height: 1;
}
.csh-cp-clone-route-btn:hover,
.csh-cp-clone-route-btn:focus-visible {
	background: #FFF7D6;
	box-shadow: 0 5px 14px rgba(161, 98, 7, .12);
}
.csh-cp-clone-route-btn:disabled {
	opacity: .68;
	cursor: wait;
}
.csh-cp-route-template-actions,
.csh-cp-route-template-card .csh-cp-booking-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.csh-cp-schedule-route-link {
	background: linear-gradient(135deg, #123E84 0%, #2875F0 100%) !important;
	border: 1px solid rgba(40, 117, 240, .18) !important;
	color: #ffffff !important;
	padding: 8px 14px;
	box-shadow: 0 8px 18px rgba(40, 117, 240, .18);
}
.csh-cp-alert.is-success {
	border-color: rgba(22, 101, 52, .18);
	background: #dcfce7;
	color: #166534;
}

/* v1.9.6 Premium route UI polish, route scheduling preview, and card layout refinements */
.csh-cp-tabs .csh-cp-premium-route-tab.active {
	background: linear-gradient(135deg, #FFF8DC 0%, #F8D477 48%, #FFF0B8 100%);
	color: #442006;
	border: 0;
	box-shadow: 0 8px 18px rgba(146, 93, 11, .16);
}
.csh-cp-tabs .csh-cp-premium-route-tab.active::before {
	background: #A16207;
	box-shadow: 0 0 0 4px rgba(161, 98, 7, .16);
}
.csh-cp-tabs .csh-cp-premium-route-tab.active span {
	background: #7A4B00;
	color: #FFF7D6;
}
.csh-cp-booking-total-stack {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	line-height: 1;
}
.csh-cp-booking-total-stack .csh-cp-booking-items {
	display: inline-flex;
	justify-content: flex-end;
}
.csh-cp-booking-inline-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 7px;
}
.csh-cp-booking-inline-actions .csh-cp-track-shift-btn,
.csh-cp-booking-inline-actions .csh-cp-clone-route-btn {
	margin-top: 0;
}
.csh-cp-clone-route-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: fit-content;
	padding: 5px 10px;
	border-radius: 999px;
	border: 1px solid rgba(161, 98, 7, .24);
	background: rgba(255, 247, 214, .82);
	color: #7A4B00;
	font-family: inherit;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 16px rgba(161, 98, 7, .08);
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
	cursor: pointer;
}
.csh-cp-clone-route-btn:hover,
.csh-cp-clone-route-btn:focus-visible {
	background: #FFF7D6;
	color: #5B3A00;
	box-shadow: 0 8px 20px rgba(161, 98, 7, .14);
	text-decoration: none;
	transform: translateY(-1px);
}
.csh-cp-clone-route-btn[aria-disabled="true"],
.csh-cp-clone-route-btn.is-loading {
	opacity: .68;
	cursor: wait;
	pointer-events: none;
}
.csh-cp-schedule-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 18px;
	font-family: 'Sora', Arial, Helvetica, sans-serif;
}
.csh-cp-schedule-modal.is-visible {
	display: flex;
}
.csh-cp-schedule-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(13, 31, 60, .58);
	backdrop-filter: blur(6px);
}
.csh-cp-schedule-panel {
	position: relative;
	width: min(620px, 100%);
	max-height: calc(100vh - 36px);
	overflow: auto;
	border: 1px solid #E4E8F4;
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 26px 80px rgba(13, 31, 60, .28);
	padding: 26px;
	color: #0D1F3C;
}
.csh-cp-schedule-close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 34px;
	height: 34px;
	border: 1px solid #E4E8F4;
	border-radius: 50%;
	background: #F8FAFC;
	color: #0D1F3C;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}
.csh-cp-schedule-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	padding: 6px 12px;
	border-radius: 999px;
	background: linear-gradient(135deg, #FFF8DC 0%, #F8D477 100%);
	color: #7A4B00;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .03em;
	text-transform: uppercase;
}
.csh-cp-schedule-kicker span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #A16207;
	box-shadow: 0 0 0 4px rgba(161, 98, 7, .14);
}
.csh-cp-schedule-panel h3 {
	margin: 0 42px 8px 0;
	font-size: 25px;
	line-height: 1.15;
	font-weight: 900;
}
.csh-cp-schedule-copy {
	margin: 0 0 18px;
	max-width: 520px;
	font-size: 13px;
	line-height: 1.6;
	color: #64748B;
}
.csh-cp-schedule-route-preview {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
	padding: 14px 16px;
	border-radius: 18px;
	background: #F8FAFC;
	border: 1px solid #E4E8F4;
}
.csh-cp-schedule-route-preview strong {
	font-size: 13px;
	line-height: 1.4;
	color: #2A6AF6;
}
.csh-cp-schedule-route-preview span {
	font-size: 12px;
	line-height: 1.4;
	font-weight: 700;
	color: #7A4B00;
	text-align: right;
}
.csh-cp-schedule-calendar-card {
	border: 1px solid #E4E8F4;
	border-radius: 22px;
	background: #FFFFFF;
	overflow: hidden;
}
.csh-cp-schedule-calendar-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	background: #F8FAFC;
	border-bottom: 1px solid #E4E8F4;
}
.csh-cp-schedule-calendar-head button {
	width: 34px;
	height: 34px;
	border: 1px solid #D9E1EF;
	border-radius: 50%;
	background: #FFFFFF;
	color: #0D1F3C;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}
.csh-cp-schedule-calendar-head strong {
	font-size: 14px;
	font-weight: 900;
	color: #0D1F3C;
}
.csh-cp-schedule-calendar {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 6px;
	padding: 14px;
}
.csh-cp-schedule-day-head {
	padding: 5px 0;
	text-align: center;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #94A3B8;
}
.csh-cp-schedule-day {
	min-height: 42px;
	border: 1px solid #E4E8F4;
	border-radius: 14px;
	background: #FFFFFF;
	color: #0D1F3C;
	font-size: 13px;
	font-weight: 900;
	cursor: pointer;
}
.csh-cp-schedule-day:hover,
.csh-cp-schedule-day:focus-visible {
	border-color: rgba(42, 106, 246, .34);
	background: #EFF6FF;
	outline: none;
}
.csh-cp-schedule-day.is-muted {
	background: #F8FAFC;
	color: #CBD5E1;
}
.csh-cp-schedule-day.is-today {
	border-color: rgba(42, 106, 246, .38);
	box-shadow: inset 0 0 0 1px rgba(42, 106, 246, .18);
}
.csh-cp-schedule-day.is-selected {
	background: linear-gradient(135deg, #123E84 0%, #2875F0 100%);
	border-color: transparent;
	color: #FFFFFF;
	box-shadow: 0 8px 18px rgba(42, 106, 246, .22);
}
.csh-cp-schedule-time-panel {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	gap: 12px;
	align-items: end;
	margin-top: 14px;
	padding: 14px 16px;
	border-radius: 18px;
	background: linear-gradient(135deg, #FFF8DC 0%, #FFF0B8 100%);
	border: 1px solid rgba(178, 113, 0, .16);
}
.csh-cp-schedule-time-panel span,
.csh-cp-schedule-time-panel label {
	display: block;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #7A4B00;
}
.csh-cp-schedule-time-panel strong {
	display: block;
	margin-top: 5px;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0;
	text-transform: none;
	color: #0D1F3C;
}
.csh-cp-schedule-time-panel input,
.csh-cp-schedule-time-panel select {
	width: 100%;
	margin-top: 7px;
	border: 1px solid #D9E1EF;
	border-radius: 12px;
	background: #FFFFFF;
	padding: 10px 12px;
	font-size: 13px;
	font-weight: 800;
	color: #0D1F3C;
}
.csh-cp-schedule-time-panel select {
	appearance: auto;
	min-height: 42px;
}
.csh-cp-schedule-time-panel small {
	display: block;
	margin-top: 4px;
	font-size: 11px;
	font-weight: 700;
	color: #7A4B00;
}
.csh-cp-schedule-notice {
	margin-top: 14px;
	padding: 11px 13px;
	border-radius: 14px;
	background: #EFF6FF;
	border: 1px solid rgba(42, 106, 246, .18);
	color: #1A50CC;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.45;
}
.csh-cp-schedule-actions {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 18px;
}
.csh-cp-schedule-actions button {
	border-radius: 999px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 900;
	padding: 11px 18px;
	cursor: pointer;
}
.csh-cp-schedule-cancel {
	border: 1px solid #D9E1EF;
	background: #F8FAFC;
	color: #0D1F3C;
}
.csh-cp-schedule-confirm {
	border: 1px solid rgba(42, 106, 246, .18);
	background: linear-gradient(135deg, #123E84 0%, #2875F0 100%);
	color: #FFFFFF;
	box-shadow: 0 10px 24px rgba(42, 106, 246, .22);
}
.csh-cp-schedule-confirm:disabled {
	opacity: .55;
	cursor: not-allowed;
	box-shadow: none;
}
@media (max-width: 620px) {
	.csh-cp-booking-total-stack {
		align-items: flex-start;
	}
	.csh-cp-schedule-panel {
		padding: 22px;
	}
	.csh-cp-schedule-route-preview,
	.csh-cp-schedule-time-panel {
		grid-template-columns: 1fr;
		flex-direction: column;
	}
	.csh-cp-schedule-route-preview span {
		text-align: left;
	}
}

/* v1.9.7 recurring/pending route polish */
.csh-cp-schedule-kicker strong {
	font: inherit;
	font-weight: 900;
	letter-spacing: inherit;
	text-transform: uppercase;
}

.csh-cp-open-route-btn,
.csh-cp-pending-delete-btn,
.csh-cp-schedule-route-link,
.csh-cp-route-template-delete-btn,
.csh-cp-route-schedule-cancel-btn,
.csh-cp-route-schedule-download-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 5px !important;
	width: fit-content !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin-top: 0 !important;
	padding: 5px 10px !important;
	border-radius: 999px !important;
	font-family: inherit !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease !important;
}

.csh-cp-open-route-btn svg,
.csh-cp-pending-delete-btn svg,
.csh-cp-schedule-route-link svg,
.csh-cp-route-template-delete-btn svg,
.csh-cp-route-schedule-cancel-btn svg,
.csh-cp-route-schedule-download-btn svg {
	display: block;
	margin-right: 0 !important;
	flex: 0 0 auto;
}

.csh-cp-open-route-btn {
	border: 1px solid rgba(42, 106, 246, .22) !important;
	background: rgba(42, 106, 246, .08) !important;
	color: #1A50CC !important;
	box-shadow: 0 6px 16px rgba(42, 106, 246, .08) !important;
}

.csh-cp-open-route-btn:hover,
.csh-cp-open-route-btn:focus-visible {
	background: rgba(42, 106, 246, .13) !important;
	box-shadow: 0 8px 20px rgba(42, 106, 246, .14) !important;
	color: #0F44C8 !important;
	transform: translateY(-1px);
}

.csh-cp-pending-delete-btn,
.csh-cp-route-template-delete-btn {
	border: 1px solid rgba(239, 68, 68, .22) !important;
	background: rgba(239, 68, 68, .08) !important;
	color: #B91C1C !important;
	box-shadow: 0 6px 16px rgba(239, 68, 68, .08) !important;
}

.csh-cp-pending-delete-btn:hover,
.csh-cp-pending-delete-btn:focus-visible,
.csh-cp-route-template-delete-btn:hover,
.csh-cp-route-template-delete-btn:focus-visible {
	background: rgba(239, 68, 68, .13) !important;
	box-shadow: 0 8px 20px rgba(239, 68, 68, .13) !important;
	color: #991B1B !important;
	transform: translateY(-1px);
}

.csh-cp-route-schedule-cancel-btn {
	border: 1px solid rgba(245, 158, 11, .28) !important;
	background: rgba(245, 158, 11, .10) !important;
	color: #92400e !important;
	box-shadow: 0 6px 16px rgba(245, 158, 11, .08) !important;
}

.csh-cp-route-schedule-cancel-btn:hover,
.csh-cp-route-schedule-cancel-btn:focus-visible {
	background: rgba(245, 158, 11, .16) !important;
	box-shadow: 0 8px 20px rgba(245, 158, 11, .14) !important;
	color: #78350f !important;
	transform: translateY(-1px);
}

.csh-cp-schedule-route-link {
	border: 1px solid rgba(42, 106, 246, .22) !important;
	background: rgba(42, 106, 246, .08) !important;
	color: #1A50CC !important;
	box-shadow: 0 6px 16px rgba(42, 106, 246, .08) !important;
}

.csh-cp-schedule-route-link:hover,
.csh-cp-schedule-route-link:focus-visible {
	background: rgba(42, 106, 246, .13) !important;
	box-shadow: 0 8px 20px rgba(42, 106, 246, .14) !important;
	color: #0F44C8 !important;
	transform: translateY(-1px);
}

.csh-cp-route-schedule-download-btn {
	border: 1px solid rgba(0, 200, 180, .26) !important;
	background: rgba(0, 200, 180, .10) !important;
	color: #087f73 !important;
	box-shadow: 0 6px 16px rgba(0, 200, 180, .08) !important;
}

.csh-cp-route-schedule-download-btn:hover,
.csh-cp-route-schedule-download-btn:focus-visible {
	background: rgba(0, 200, 180, .16) !important;
	box-shadow: 0 8px 20px rgba(0, 200, 180, .14) !important;
	color: #066d64 !important;
	transform: translateY(-1px);
}

.csh-cp-route-schedule-download-btn.is-disabled,
.csh-cp-route-schedule-download-btn:disabled {
	border-color: rgba(122, 138, 170, .22) !important;
	background: rgba(122, 138, 170, .10) !important;
	color: #7A8AAA !important;
	box-shadow: none !important;
	cursor: not-allowed !important;
	transform: none !important;
}

.csh-cp-clone-route-btn {
	border-color: rgba(100, 116, 139, .24) !important;
	background: rgba(100, 116, 139, .08) !important;
	color: #475569 !important;
	box-shadow: 0 6px 16px rgba(100, 116, 139, .08) !important;
}

.csh-cp-clone-route-btn:hover,
.csh-cp-clone-route-btn:focus-visible {
	background: rgba(100, 116, 139, .14) !important;
	color: #334155 !important;
	box-shadow: 0 8px 20px rgba(100, 116, 139, .13) !important;
}

.csh-cp-schedule-time-panel {
	align-items: start !important;
}

.csh-cp-schedule-time-panel > div,
.csh-cp-schedule-time-panel label {
	align-self: start;
}

/* v1.9.8 Recurring scheduler and booking history polish */
.csh-cp-booking-items {
	letter-spacing: .01em;
}
.csh-cp-booking-items .csh-cp-booking-count-number {
	margin-right: 4px;
}
.csh-cp-clone-route-btn svg {
	display: none !important;
}
.csh-cp-schedule-time-panel {
	grid-template-columns: minmax(0, 1fr) minmax(190px, auto) !important;
	align-items: start !important;
}
.csh-cp-schedule-time-field {
	align-self: start;
}
.csh-cp-schedule-notice.is-success {
	background: #DCFCE7;
	border-color: rgba(22, 101, 52, .18);
	color: #166534;
}
.csh-cp-schedule-notice.is-error {
	background: #FEF2F2;
	border-color: rgba(220, 38, 38, .18);
	color: #B91C1C;
}

/* v1.9.9 Recurring scheduler status, template drilldown, and schedule process modal */
.csh-cp-status-pill.is-scheduled {
	background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
	color: #1d4ed8;
}
.csh-cp-booking-scheduled-line {
	max-width: 190px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.35;
	text-align: right;
	color: #64748b;
}
.csh-cp-route-template-head {
	width: 100%;
	border: 0;
	background: transparent;
	font: inherit;
	text-align: left;
	cursor: pointer;
}
.csh-cp-route-template-head:focus-visible {
	outline: 2px solid #2A6AF6;
	outline-offset: 4px;
	border-radius: 10px;
}
.csh-cp-route-status-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
}
.csh-cp-route-pricing-resync {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 27px;
	height: 27px;
	border: 1px solid rgba(42, 106, 246, .28);
	border-radius: 999px;
	background: #ffffff;
	color: #2A6AF6;
	padding: 0;
	box-shadow: 0 2px 8px rgba(42, 106, 246, .10);
	cursor: pointer;
}
.csh-cp-route-pricing-resync:hover,
.csh-cp-route-pricing-resync:focus-visible {
	border-color: #2A6AF6;
	background: #EAF1FF;
	color: #1A50CC;
	outline: none;
}
.csh-cp-route-pricing-resync:focus-visible {
	box-shadow: 0 0 0 3px rgba(42, 106, 246, .16);
}
.csh-cp-route-pricing-resync.is-loading {
	opacity: .72;
	cursor: wait;
}
.csh-cp-route-pricing-resync.is-loading svg {
	animation: cshCpRoutePricingSpin .8s linear infinite;
}
@keyframes cshCpRoutePricingSpin {
	to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
	.csh-cp-route-pricing-resync.is-loading svg {
		animation: none;
	}
}
.csh-cp-route-template-card .csh-cp-booking-caret {
	color: #64748b;
	font-size: 11px;
	font-weight: 900;
}
.csh-cp-route-template-detail-panel {
	margin-top: 12px;
}
.csh-cp-template-details {
	border-top: 1px solid var(--csh-cp-border);
	padding-top: 13px;
}
.csh-cp-template-route-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 12px;
}
.csh-cp-template-address-card,
.csh-cp-template-section,
.csh-cp-template-metric {
	border: 1px solid var(--csh-cp-border);
	border-radius: 14px;
	background: #f8fafc;
	padding: 12px;
}
.csh-cp-template-address-card > span,
.csh-cp-template-metric > span {
	display: block;
	margin-bottom: 6px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #7c8aa6;
}
.csh-cp-template-address-card strong,
.csh-cp-template-metric strong {
	display: block;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.45;
	color: #0d1f3c;
}
.csh-cp-template-stop-list {
	display: grid;
	gap: 7px;
}
.csh-cp-template-stop-row {
	display: grid;
	grid-template-columns: 90px minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	border: 1px solid #e4e8f4;
	border-radius: 12px;
	background: #fff;
	padding: 8px 10px;
}
.csh-cp-template-stop-row b {
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #2563eb;
}
.csh-cp-template-stop-row span {
	font-size: 11px;
	font-weight: 800;
	line-height: 1.35;
	color: #0d1f3c;
}
.csh-cp-template-stop-row em {
	font-style: normal;
	border-radius: 999px;
	background: #eef2f7;
	padding: 4px 8px;
	font-size: 10px;
	font-weight: 900;
	line-height: 1.2;
	color: #64748b;
	white-space: nowrap;
}
.csh-cp-template-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 12px;
}
.csh-cp-template-section {
	margin-top: 12px;
	padding: 0;
	overflow: hidden;
}
.csh-cp-template-section h4 {
	margin: 0;
	padding: 11px 12px;
	border-bottom: 1px solid var(--csh-cp-border);
	background: #f1f5f9;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #64748b;
}
.csh-cp-template-summary-table {
	display: grid;
}
.csh-cp-template-summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 12px;
	border-top: 1px solid #e4e8f4;
	font-size: 12px;
	line-height: 1.35;
}
.csh-cp-template-summary-row:first-child {
	border-top: 0;
}
.csh-cp-template-summary-row span {
	color: #475569;
	font-weight: 700;
}
.csh-cp-template-summary-row strong {
	color: #0d1f3c;
	font-weight: 900;
	text-align: right;
}
.csh-cp-schedule-process-modal {
	position: fixed;
	inset: 0;
	z-index: 1000000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 18px;
	font-family: 'Sora', Arial, Helvetica, sans-serif;
}
.csh-cp-schedule-process-modal.is-visible {
	display: flex;
}
.csh-cp-schedule-process-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(13, 31, 60, .62);
	backdrop-filter: blur(6px);
}
.csh-cp-schedule-process-panel {
	position: relative;
	width: min(520px, 100%);
	border: 1px solid #e4e8f4;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 26px 80px rgba(13, 31, 60, .28);
	padding: 24px;
	color: #0d1f3c;
}
.csh-cp-schedule-process-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 34px;
	height: 34px;
	border: 1px solid #e4e8f4;
	border-radius: 50%;
	background: #f8fafc;
	color: #0d1f3c;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}
.csh-cp-schedule-process-panel h3 {
	margin: 0 42px 8px 0;
	font-size: 23px;
	line-height: 1.15;
	font-weight: 900;
}
.csh-cp-schedule-process-steps {
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
	display: grid;
	gap: 9px;
}
.csh-cp-schedule-process-steps li {
	display: flex;
	align-items: center;
	gap: 10px;
	border: 1px solid #e4e8f4;
	border-radius: 14px;
	background: #f8fafc;
	padding: 10px 12px;
	color: #64748b;
	font-size: 12px;
}
.csh-cp-schedule-process-steps li span {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 2px solid #cbd5e1;
	background: #fff;
	flex: 0 0 auto;
}
.csh-cp-schedule-process-steps li.is-active {
	border-color: rgba(42, 106, 246, .28);
	background: #eff6ff;
	color: #1a50cc;
}
.csh-cp-schedule-process-steps li.is-active span {
	border-color: #2a6af6;
	box-shadow: 0 0 0 4px rgba(42, 106, 246, .12);
}
.csh-cp-schedule-process-steps li.is-done {
	border-color: rgba(22, 101, 52, .18);
	background: #dcfce7;
	color: #166534;
}
.csh-cp-schedule-process-steps li.is-done span {
	border-color: #16a34a;
	background: #16a34a;
}
.csh-cp-schedule-process-steps li.is-error {
	border-color: rgba(220, 38, 38, .18);
	background: #fef2f2;
	color: #b91c1c;
}
.csh-cp-schedule-process-output {
	margin-top: 14px;
	border-radius: 14px;
	padding: 12px 13px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.55;
}
.csh-cp-schedule-process-output.is-success {
	border: 1px solid rgba(22, 101, 52, .18);
	background: #dcfce7;
	color: #166534;
}
.csh-cp-schedule-process-output.is-error {
	border: 1px solid rgba(220, 38, 38, .18);
	background: #fef2f2;
	color: #b91c1c;
}
@media (max-width: 760px) {
	.csh-cp-template-route-grid,
	.csh-cp-template-metrics {
		grid-template-columns: 1fr;
	}
	.csh-cp-template-stop-row {
		grid-template-columns: 1fr;
		align-items: flex-start;
	}
	.csh-cp-template-stop-row em {
		white-space: normal;
	}
	.csh-cp-booking-scheduled-line {
		text-align: left;
	}
}

/* v1.9.10 Recurring route template refinement */
.csh-cp-route-template-title {
	font-size: 13px;
	font-weight: 900;
	line-height: 1.35;
	color: #2563eb;
}
.csh-cp-route-template-ref-row {
	margin-top: 3px;
}
.csh-cp-route-template-ref-row .csh-cp-route-template-ref {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
	color: #7A4B00;
}
.csh-cp-template-route-grid {
	grid-template-columns: 1fr;
}
.csh-cp-template-address-card {
	width: 100%;
}
.csh-cp-template-metrics {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
.csh-cp-route-template-actions .csh-cp-schedule-route-link,
.csh-cp-route-template-actions .csh-cp-route-template-delete-btn,
.csh-cp-route-template-actions .csh-cp-route-schedule-cancel-btn,
.csh-cp-route-template-actions .csh-cp-route-schedule-download-btn {
	padding: 6px 11px;
	font-size: 11px;
	line-height: 1;
}
@media (max-width: 720px) {
	.csh-cp-template-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* v1.9.11 Recurring route payload-backed template details */
.csh-cp-route-template-card .csh-cp-route-template-ref {
	display: block;
	width: fit-content;
	margin-bottom: 4px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
	letter-spacing: .01em;
	color: #2563eb;
}
.csh-cp-route-template-card .csh-cp-route-template-title {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
	color: #7180a1;
}
.csh-cp-template-section h4 {
	letter-spacing: .075em;
}

/* v1.9.13 Recurring scheduler records and compact schedule date panel */
.csh-cp-status-pill.is-cancelled {
	background: #f1f5f9;
	color: #475569;
}
.csh-cp-status-pill.is-completed {
	background: #dcfce7;
	color: #166534;
}
.csh-cp-status-pill.is-processing {
	background: #fef3c7;
	color: #92400e;
}
.csh-cp-status-pill.is-failed {
	background: #fee2e2;
	color: #991b1b;
}
.csh-cp-schedule-time-panel {
	padding: 10px 13px !important;
	gap: 10px !important;
}
.csh-cp-schedule-time-panel span,
.csh-cp-schedule-time-panel label {
	font-size: 9px !important;
	letter-spacing: .045em !important;
}
.csh-cp-schedule-time-panel strong {
	font-size: 12px !important;
	line-height: 1.25 !important;
	margin-top: 3px !important;
}
.csh-cp-route-template-card > .csh-cp-route-template-actions {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #e4e8f4;
}
.csh-cp-template-schedules-section {
	margin-top: 12px;
}
.csh-cp-template-schedule-list {
	display: grid;
	gap: 8px;
}
.csh-cp-template-schedule-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 9px 11px;
	border: 1px solid #e4e8f4;
	border-radius: 13px;
	background: #fff;
}
.csh-cp-template-schedule-row div {
	display: grid;
	gap: 2px;
	min-width: 0;
}
.csh-cp-template-schedule-row strong {
	font-size: 11px;
	font-weight: 900;
	color: #0d1f3c;
}
.csh-cp-template-schedule-row span {
	font-size: 10px;
	font-weight: 700;
	color: #64748b;
}
.csh-cp-schedule-status-pill {
	font-style: normal;
	border-radius: 999px;
	padding: 4px 8px;
	font-size: 10px;
	font-weight: 900;
	line-height: 1.2;
	white-space: nowrap;
	background: #dbeafe;
	color: #1d4ed8;
}
.csh-cp-schedule-status-pill.is-completed {
	background: #dcfce7;
	color: #166534;
}
.csh-cp-schedule-status-pill.is-cancelled {
	background: #f1f5f9;
	color: #475569;
}
.csh-cp-schedule-status-pill.is-processing {
	background: #fef3c7;
	color: #92400e;
}
.csh-cp-schedule-status-pill.is-failed {
	background: #fee2e2;
	color: #991b1b;
}

/* v1.9.17 Clone route success state */
.csh-cp-history-alert.is-success {
	border-color: rgba(22, 163, 74, .24);
	background: #dcfce7;
	color: #166534;
	font-size: 12px;
	line-height: 1.4;
	padding: 10px 13px;
}

/* v1.9.83 account type tags belong inside company dropdown rows only */
.csh-cp-account-button {
	position: relative;
}
.csh-cp-account-button-type-tag {
	display: none !important;
}
.csh-cp-account-company-option .csh-cp-account-company-tags {
	display: inline-flex !important;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	flex: 0 0 auto;
	margin-left: 10px;
	max-width: 148px;
}
.csh-cp-account-company-option .csh-cp-account-company-type-tag {
	display: inline-flex !important;
	font-size: 8px;
	line-height: 1;
	padding: 3px 6px;
	box-shadow: none;
}
.csh-cp-account-company-option .csh-cp-account-company-active {
	flex: 0 0 auto;
}
@media (max-width: 640px) {
	.csh-cp-account-company-option .csh-cp-account-company-tags {
		max-width: 124px;
	}
	.csh-cp-account-company-option .csh-cp-account-company-type-tag {
		font-size: 7.5px;
		padding: 3px 5px;
	}
}

/* v1.9.84 superadmin company email fallback modal */
.csh-cp-company-email-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;background:rgba(13,31,60,.58);backdrop-filter:blur(7px);padding:24px;font-family:'Sora',Arial,Helvetica,sans-serif}.csh-cp-company-email-modal.is-visible{display:flex}.csh-cp-company-email-panel{position:relative;width:min(460px,100%);background:#fff;border:1px solid #E4E8F4;border-radius:24px;box-shadow:0 24px 70px rgba(13,31,60,.26);padding:28px 30px;color:#0D1F3C}.csh-cp-company-email-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:1px solid #D7DEF0;border-radius:50%;background:#F8FAFF;color:#0D1F3C;font-size:22px;line-height:1;cursor:pointer}.csh-cp-company-email-kicker{display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px;padding:5px 11px;border-radius:999px;background:#FFF4D4;color:#8A4B00;border:1px solid #F5D27C;font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.csh-cp-company-email-panel h3{margin:0 0 10px;font-size:23px;line-height:1.18;font-weight:800;color:#0D1F3C}.csh-cp-company-email-panel p{margin:0 0 22px;color:#3A4A6A;font-size:14px;line-height:1.65}.csh-cp-company-email-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#2A6AF6;color:#fff;font-weight:800;font-size:14px;padding:12px 24px;box-shadow:0 10px 24px rgba(42,106,246,.26);cursor:pointer}.csh-cp-company-email-button:hover{background:#1A50CC}

/* v1.10.29 Customer Portal frequent list quick actions */
.csh-cp-page-head{align-items:center}
.csh-cp-frequent-actions{position:relative;margin-left:auto;display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;z-index:25}
.csh-cp-frequent-actions[hidden]{display:none!important}
.csh-cp-frequent-button{width:44px;height:44px;border:1px solid #D7E4FF;border-radius:999px;background:#F5F7FC;color:#0D1F3C;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;box-shadow:0 8px 22px rgba(13,31,60,.08);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.csh-cp-frequent-button svg{display:block;fill:currentColor}
.csh-cp-frequent-button:hover,.csh-cp-frequent-button:focus{outline:none;background:#E8F0FE;border-color:#93C5FD;color:#2A6AF6;box-shadow:0 12px 28px rgba(42,106,246,.16);transform:translateY(-1px)}
.csh-cp-frequent-actions.is-open .csh-cp-frequent-button{background:#E8F0FE;border-color:#2A6AF6;color:#2A6AF6}
.csh-cp-frequent-button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.csh-cp-frequent-menu{position:absolute;right:0;top:calc(100% + 9px);width:min(360px,calc(100vw - 36px));background:#FFFFFF;border:1px solid #D7E4FF;border-radius:18px;box-shadow:0 24px 56px rgba(13,31,60,.20),0 4px 14px rgba(42,106,246,.10);padding:10px;z-index:80}
.csh-cp-frequent-menu[hidden]{display:none!important}
.csh-cp-frequent-menu:before{content:'';position:absolute;right:17px;top:-7px;width:12px;height:12px;background:#FFFFFF;border-left:1px solid #D7E4FF;border-top:1px solid #D7E4FF;transform:rotate(45deg)}
.csh-cp-frequent-menu-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 10px;color:#0D1F3C}
.csh-cp-frequent-menu-head strong{font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.csh-cp-frequent-menu-head small{font-size:9px;font-weight:850;color:#64748B;text-transform:uppercase;letter-spacing:.08em}
.csh-cp-frequent-menu-item{position:relative;width:100%;display:flex;align-items:flex-start;gap:10px;border:0;border-radius:13px;background:#F5F7FC;color:#0D1F3C;text-align:left;padding:12px;cursor:pointer;font-family:var(--csh-cp-font);transition:background .14s ease,transform .14s ease,box-shadow .14s ease}
.csh-cp-frequent-menu-item + .csh-cp-frequent-menu-item{margin-top:8px}
.csh-cp-frequent-menu-item:hover,.csh-cp-frequent-menu-item:focus{outline:none;background:#E8F0FE;box-shadow:inset 0 0 0 1px #BFDBFE;transform:translateY(-1px)}
.csh-cp-frequent-menu-icon{width:32px;height:32px;flex:0 0 32px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:linear-gradient(145deg,#FFFFFF,#DCE7F7);border:1px solid #C7D7EE;color:#2A6AF6;font-size:15px;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.csh-cp-frequent-menu-icon-item,.csh-cp-frequent-menu-icon-admin{font-size:16px;font-weight:900}
.csh-cp-frequent-menu-item strong{display:block;font-size:13px;font-weight:900;line-height:1.2;color:#0D1F3C}
.csh-cp-frequent-menu-item small{display:block;margin-top:3px;font-size:11px;font-weight:700;line-height:1.35;color:#7A8AAA}
.csh-cp-frequent-menu-status{min-height:14px;margin-top:8px;text-align:center;font-size:11px;font-weight:800;color:#7A8AAA}
.csh-cp-frequent-menu-status.is-success{color:#15803D}.csh-cp-frequent-menu-status.is-error{color:#DC2626}.csh-cp-frequent-menu-status.is-muted{color:#7A8AAA}
.csh-cp-frequent-modal[hidden]{display:none!important}
.csh-cp-frequent-modal{position:fixed;inset:0;z-index:100001;display:flex;align-items:center;justify-content:center;padding:18px;font-family:var(--csh-cp-font)}
.csh-cp-frequent-modal-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.40);backdrop-filter:blur(3px)}
.csh-cp-frequent-modal-panel{position:relative;width:min(100%,470px);max-height:calc(100vh - 36px);overflow:auto;background:#FFFFFF;border:1px solid #D7E4FF;border-radius:24px;box-shadow:0 28px 72px rgba(13,31,60,.28);padding:24px;color:#0D1F3C}
.csh-cp-frequent-modal-close{position:absolute;right:14px;top:13px;width:30px;height:30px;border:0;border-radius:999px;background:#F5F7FC;color:#64748B;font-size:19px;font-weight:700;line-height:1;cursor:pointer}
.csh-cp-frequent-modal-close:hover,.csh-cp-frequent-modal-close:focus{outline:none;background:#E8F0FE;color:#2A6AF6}
.csh-cp-frequent-modal-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:15px;background:#F5F7FC;color:#2A6AF6;margin-bottom:13px;font-size:18px;font-weight:900}
.csh-cp-frequent-modal-icon-item{font-size:18px}
.csh-cp-frequent-modal-panel h3{margin:0 36px 7px 0;font-size:20px;line-height:1.25;font-weight:900;color:#0D1F3C}
.csh-cp-frequent-modal-panel p{margin:0 0 16px;color:#3A4A6A;font-size:13px;line-height:1.55;font-weight:600}
.csh-cp-frequent-modal-panel form{display:block}
.csh-cp-frequent-modal-panel label{display:block;margin:12px 0 6px;color:#3A4A6A;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.csh-cp-frequent-modal-panel input{width:100%;min-height:42px;border:1px solid #D7E4FF;border-radius:13px;background:#FFFFFF;color:#0D1F3C;font-family:var(--csh-cp-font);font-size:13px;font-weight:700;padding:10px 12px;box-sizing:border-box}
.csh-cp-frequent-modal-panel input:focus{outline:none;border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.13)}
.csh-cp-frequent-modal-panel form>small{display:block;margin-top:9px;color:#7A8AAA;font-size:11px;font-weight:800}
.csh-cp-frequent-item-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:2px}
.csh-cp-frequent-item-grid label{margin:10px 0 0;font-size:9.5px;line-height:1.2}
.csh-cp-frequent-item-grid input{margin-top:6px;min-height:40px;padding:9px 10px}
.csh-cp-frequent-modal-status{min-height:17px;margin-top:12px;color:#7A8AAA;font-size:12px;font-weight:800;line-height:1.4}
.csh-cp-frequent-modal-status.is-success{color:#15803D}.csh-cp-frequent-modal-status.is-error{color:#DC2626}.csh-cp-frequent-modal-status.is-muted{color:#7A8AAA}
.csh-cp-frequent-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:17px}
.csh-cp-frequent-modal-actions button{border-radius:999px;padding:10px 16px;font-family:var(--csh-cp-font);font-size:12px;font-weight:900;cursor:pointer;transition:background .14s ease,box-shadow .14s ease,transform .14s ease}
.csh-cp-frequent-modal-secondary{border:1px solid #E4E8F4;background:#FFFFFF;color:#3A4A6A}
.csh-cp-frequent-modal-primary{border:0;background:#2A6AF6;color:#FFFFFF;box-shadow:0 12px 26px rgba(42,106,246,.22)}
.csh-cp-frequent-modal-actions button:hover,.csh-cp-frequent-modal-actions button:focus{outline:none;transform:translateY(-1px)}
.csh-cp-frequent-modal-actions button:disabled{opacity:.72;cursor:not-allowed;transform:none}
.csh-cp-frequent-modal-open{overflow:hidden}
@media(max-width:760px){.csh-cp-page-head{align-items:stretch}.csh-cp-frequent-actions{justify-content:flex-start;margin-left:0}.csh-cp-frequent-menu{left:0;right:auto}.csh-cp-frequent-menu:before{left:17px;right:auto}.csh-cp-frequent-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.10.30 Customer Portal frequent list compact manager */
.csh-cp .csh-cp-frequent-menu{width:min(310px,calc(100vw - 36px));padding:8px;border-radius:16px}
.csh-cp .csh-cp-frequent-menu-item{padding:10px;border-radius:12px;gap:9px}
.csh-cp .csh-cp-frequent-menu-icon{width:30px;height:30px;flex-basis:30px;font-size:13px;border-radius:10px}
.csh-cp .csh-cp-frequent-menu-item strong{font-size:12px;line-height:1.15}
.csh-cp .csh-cp-frequent-menu-item small{font-size:10px;line-height:1.25;font-weight:700}
.csh-cp .csh-cp-frequent-modal-panel-list{width:min(100%,540px);padding:18px;border-radius:20px}
.csh-cp .csh-cp-frequent-modal-title-row{display:flex;align-items:center;gap:10px;margin:0 34px 12px 0}
.csh-cp .csh-cp-frequent-modal-title-row .csh-cp-frequent-modal-icon{margin:0;width:34px;height:34px;border-radius:12px;font-size:15px;flex:0 0 34px}
.csh-cp .csh-cp-frequent-modal-title-row h3{margin:0;font-size:17px;line-height:1.2;font-weight:900;color:#0D1F3C}
.csh-cp .csh-cp-frequent-modal-title-row p{margin:2px 0 0;font-size:11px;line-height:1.25;color:#7A8AAA;font-weight:800}
.csh-cp .csh-cp-frequent-inline-form{display:flex!important;align-items:flex-start;gap:8px;margin:0 0 8px}
.csh-cp .csh-cp-frequent-address-field-wrap{position:relative;flex:1 1 auto;min-width:0}
.csh-cp .csh-cp-frequent-inline-form input{min-height:40px;font-size:12px;border-radius:12px}
.csh-cp .csh-cp-frequent-inline-form .csh-cp-frequent-modal-primary{height:40px;min-width:70px;padding:0 15px;font-size:12px;box-shadow:none}
.csh-cp .csh-cp-frequent-address-suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:10;background:#FFFFFF;border:1px solid #D7E4FF;border-radius:14px;box-shadow:0 16px 36px rgba(13,31,60,.16);overflow:hidden;max-height:260px;overflow-y:auto}
.csh-cp .csh-cp-frequent-address-suggestions[hidden]{display:none!important}
.csh-cp .csh-cp-frequent-address-suggestions button{width:100%;border:0;border-bottom:1px solid #E4E8F4;background:#FFFFFF;text-align:left;padding:9px 11px;font-family:var(--csh-cp-font);cursor:pointer;color:#0D1F3C}
.csh-cp .csh-cp-frequent-address-suggestions button:last-child{border-bottom:0}
.csh-cp .csh-cp-frequent-address-suggestions button:hover,.csh-cp .csh-cp-frequent-address-suggestions button:focus{outline:none;background:#F5F7FC}
.csh-cp .csh-cp-frequent-address-suggestions strong{display:block;font-size:11.5px;font-weight:900;line-height:1.25;color:#0D1F3C}
.csh-cp .csh-cp-frequent-address-suggestions small{display:block;margin-top:2px;font-size:10px;font-weight:700;color:#7A8AAA;line-height:1.2}
.csh-cp .csh-cp-frequent-address-suggestion-empty{padding:10px 11px;font-size:11px;font-weight:800;color:#7A8AAA;text-align:center}
.csh-cp .csh-cp-frequent-item-row-main{display:grid;grid-template-columns:1.2fr .8fr;gap:8px;margin:0 0 8px}
.csh-cp .csh-cp-frequent-item-row-main label,.csh-cp .csh-cp-frequent-item-grid label{display:block;margin:0;color:#3A4A6A;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.csh-cp .csh-cp-frequent-item-row-main label span,.csh-cp .csh-cp-frequent-item-grid label span{display:block;margin:0 0 5px}
.csh-cp .csh-cp-frequent-item-row-main input,.csh-cp .csh-cp-frequent-item-grid input{min-height:38px;font-size:12px;border-radius:12px;padding:8px 10px}
.csh-cp .csh-cp-frequent-modal-actions-compact{margin-top:10px}
.csh-cp .csh-cp-frequent-modal-actions-compact .csh-cp-frequent-modal-primary{padding:9px 18px;font-size:12px;box-shadow:none}
.csh-cp .csh-cp-frequent-modal-status{min-height:16px;margin:7px 0 8px;font-size:11px;text-align:center}
.csh-cp .csh-cp-frequent-saved-list{display:flex;flex-direction:column;gap:7px;max-height:270px;overflow-y:auto;padding-top:2px}
.csh-cp .csh-cp-frequent-saved-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #E4E8F4;border-radius:12px;background:#F5F7FC;padding:9px 10px;color:#0D1F3C}
.csh-cp .csh-cp-frequent-saved-text{display:block;min-width:0;font-size:11.5px;font-weight:850;line-height:1.35;color:#0D1F3C;overflow-wrap:anywhere}
.csh-cp .csh-cp-frequent-saved-text strong{display:block;font-size:12px;font-weight:900;color:#0D1F3C;line-height:1.25}
.csh-cp .csh-cp-frequent-saved-text small{display:block;margin-top:2px;font-size:10px;font-weight:750;color:#7A8AAA;line-height:1.25}
.csh-cp .csh-cp-frequent-saved-row button{flex:0 0 auto;border:1px solid #FCA5A5;background:#FFF1F2;color:#EF4444;border-radius:999px;padding:6px 10px;font-family:var(--csh-cp-font);font-size:10px;font-weight:900;cursor:pointer}
.csh-cp .csh-cp-frequent-saved-row button:hover,.csh-cp .csh-cp-frequent-saved-row button:focus{outline:none;background:#FFE4E6;border-color:#EF4444}
.csh-cp .csh-cp-frequent-saved-row button:disabled{opacity:.65;cursor:not-allowed}
.csh-cp .csh-cp-frequent-empty{border:1px dashed #CFE0FF;border-radius:12px;background:#FFFFFF;padding:12px;text-align:center;color:#7A8AAA;font-size:11px;font-weight:800}
@media(max-width:560px){.csh-cp .csh-cp-frequent-inline-form{flex-direction:column}.csh-cp .csh-cp-frequent-inline-form .csh-cp-frequent-modal-primary{width:100%}.csh-cp .csh-cp-frequent-item-row-main{grid-template-columns:1fr}.csh-cp .csh-cp-frequent-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.csh-cp .csh-cp-frequent-saved-row{align-items:flex-start}.csh-cp .csh-cp-frequent-saved-row button{margin-top:1px}}

/* v1.10.31 Customer Portal frequent modal refinements */
.csh-cp .csh-cp-frequent-modal-panel select{width:100%;min-height:38px;border:1px solid #D7E4FF;border-radius:12px;background:#FFFFFF;color:#0D1F3C;font-family:var(--csh-cp-font);font-size:12px;font-weight:700;padding:8px 34px 8px 10px;box-sizing:border-box;appearance:auto}
.csh-cp .csh-cp-frequent-modal-panel select:focus{outline:none;border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.13)}
.csh-cp .csh-cp-frequent-inline-form{align-items:center;gap:8px}
.csh-cp .csh-cp-frequent-inline-form .csh-cp-frequent-modal-primary{height:40px;min-width:68px;border-radius:999px;font-size:12px;font-weight:900;box-shadow:0 10px 22px rgba(42,106,246,.20)}
.csh-cp .csh-cp-frequent-saved-list{gap:7px}
.csh-cp .csh-cp-frequent-saved-row{border:0;border-radius:11px;background:#F5F7FC;padding:9px 10px 9px 12px;min-height:40px}
.csh-cp .csh-cp-frequent-saved-text{font-size:11.5px;font-weight:850;color:#0D1F3C;line-height:1.32}
.csh-cp .csh-cp-frequent-saved-text strong{font-size:12px;line-height:1.25}
.csh-cp .csh-cp-frequent-saved-text small{font-size:10px;line-height:1.25;color:#7A8AAA}
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove{width:24px;height:24px;min-width:24px;border:1px solid #FCA5A5;background:#FFECEC;color:#EF4444;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;box-shadow:none}
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove:hover,.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove:focus{outline:none;background:#FFE4E6;border-color:#EF4444;color:#DC2626}
.csh-cp .csh-cp-frequent-empty{background:#FFFFFF;border-color:#CFE0FF;font-size:11px;min-height:36px;display:flex;align-items:center;justify-content:center}
@media(max-width:560px){.csh-cp .csh-cp-frequent-inline-form{align-items:stretch}.csh-cp .csh-cp-frequent-inline-form .csh-cp-frequent-modal-primary{width:100%}}

/* v1.10.32 Customer Portal frequent modal fixed lists and validation */
.csh-cp .csh-cp-frequent-modal-panel-list{height:min(610px,calc(100vh - 36px));max-height:calc(100vh - 36px);display:flex;flex-direction:column;overflow:hidden}
.csh-cp .csh-cp-frequent-modal-title-row{flex:0 0 auto}
.csh-cp .csh-cp-frequent-inline-form,.csh-cp .csh-cp-frequent-modal-panel-list form{flex:0 0 auto}
.csh-cp .csh-cp-frequent-list-heading{flex:0 0 auto;margin:6px 0 7px;color:#7A8AAA;font-size:9.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.csh-cp .csh-cp-frequent-saved-list{flex:1 1 auto;min-height:120px;max-height:none;overflow-y:auto;padding-right:2px}
.csh-cp .csh-cp-frequent-modal-panel input.is-invalid,.csh-cp .csh-cp-frequent-modal-panel select.is-invalid{border-color:#EF4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.12)!important;background:#FFF7F7}
.csh-cp .csh-cp-frequent-item-grid label span{font-size:9px;letter-spacing:.08em}
.csh-cp .csh-cp-frequent-item-row-main input::placeholder{color:#9CA8C1;font-weight:700}
.csh-cp .csh-cp-frequent-item-grid input::placeholder{color:transparent}
.csh-cp .csh-cp-frequent-modal-status.is-error{font-weight:900}
@media(max-width:560px){.csh-cp .csh-cp-frequent-modal-panel-list{height:min(680px,calc(100vh - 28px));padding:16px}.csh-cp .csh-cp-frequent-saved-list{min-height:110px}}

/* v1.10.33 Accounts shortcut and compact frequent modal loading */
.csh-cp .csh-cp-frequent-actions{gap:9px}
.csh-cp .csh-cp-frequent-modal-panel-list{height:min(500px,calc(100vh - 42px));max-height:calc(100vh - 42px)}
.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-modal-panel-list{height:min(480px,calc(100vh - 42px))}
.csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-modal-panel-list{height:min(540px,calc(100vh - 42px))}
.csh-cp .csh-cp-frequent-saved-list{min-height:96px;max-height:230px;overflow-y:auto}
.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-saved-list{max-height:245px}
.csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-saved-list{max-height:185px}
.csh-cp .csh-cp-frequent-loading{min-height:72px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px dashed #CFE0FF;border-radius:12px;background:#FFFFFF;color:#7A8AAA;font-size:11px;font-weight:850;text-align:center}
.csh-cp .csh-cp-frequent-loading span{width:18px;height:18px;border:2px solid #D7E4FF;border-top-color:#2A6AF6;border-radius:999px;animation:cshCpFrequentSpin .75s linear infinite;flex:0 0 auto}
@keyframes cshCpFrequentSpin{to{transform:rotate(360deg)}}
@media(max-width:560px){.csh-cp .csh-cp-frequent-modal-panel-list,.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-modal-panel-list,.csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-modal-panel-list{height:min(560px,calc(100vh - 28px))}.csh-cp .csh-cp-frequent-saved-list{max-height:190px}}

/* v1.10.41 Customer Portal frequent modal dynamic sizing */
.csh-cp .csh-cp-frequent-modal{align-items:center}
.csh-cp .csh-cp-frequent-modal-panel-list{
  height:auto!important;
  min-height:0!important;
  max-height:min(620px,calc(100vh - 42px))!important;
  overflow:hidden;
}
.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-modal-panel-list{
  height:auto!important;
  max-height:min(520px,calc(100vh - 42px))!important;
}
.csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-modal-panel-list{
  height:auto!important;
  max-height:min(600px,calc(100vh - 42px))!important;
}
.csh-cp .csh-cp-frequent-saved-list{
  flex:0 1 auto!important;
  min-height:0!important;
  overflow-y:auto;
}
.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-saved-list{max-height:220px}
.csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-saved-list{max-height:190px}
@media(max-width:560px){
  .csh-cp .csh-cp-frequent-modal-panel-list,
  .csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-modal-panel-list,
  .csh-cp [data-csh-cp-frequent-item-modal] .csh-cp-frequent-modal-panel-list{max-height:calc(100vh - 28px)!important}
}

/* v1.10.42 Customer Portal frequent controls polish */
.csh-cp .csh-cp-frequent-button,
.csh-cp .csh-cp-accounts-button,
.csh-cp .csh-cp-frequent-menu-item,
.csh-cp .csh-cp-frequent-modal-primary,
.csh-cp .csh-cp-frequent-remove{cursor:pointer}
.csh-cp .csh-cp-frequent-button{box-shadow:0 10px 26px rgba(13,31,60,.12),0 2px 8px rgba(42,106,246,.10)}
.csh-cp .csh-cp-frequent-button:hover,
.csh-cp .csh-cp-frequent-button:focus{box-shadow:0 16px 34px rgba(42,106,246,.20),0 4px 12px rgba(13,31,60,.10)}
.csh-cp .csh-cp-frequent-menu{padding:10px 10px 8px;box-shadow:0 26px 62px rgba(13,31,60,.24),0 6px 18px rgba(42,106,246,.12)}
.csh-cp .csh-cp-frequent-menu-status:empty{display:none}
.csh-cp .csh-cp-frequent-menu-status{min-height:0;margin-top:6px}
.csh-cp .csh-cp-frequent-menu-item{box-shadow:0 1px 0 rgba(13,31,60,.03)}
.csh-cp .csh-cp-frequent-menu-item:hover,
.csh-cp .csh-cp-frequent-menu-item:focus{box-shadow:inset 0 0 0 1px #BFDBFE,0 8px 18px rgba(42,106,246,.12)}
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove{width:22px;height:22px;min-width:22px;border:1px solid #FCA5A5;background:#FEE2E2;color:#EF4444;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:0;line-height:1;box-shadow:0 1px 4px rgba(239,68,68,.16);transition:background .14s ease,color .14s ease,transform .14s ease,border-color .14s ease,box-shadow .14s ease}
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove svg{width:14px;height:14px;display:block;stroke:currentColor;shape-rendering:geometricPrecision}
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove:hover,
.csh-cp .csh-cp-frequent-saved-row .csh-cp-frequent-remove:focus{outline:none;background:#EF4444;border-color:#EF4444;color:#FFFFFF;box-shadow:0 4px 10px rgba(239,68,68,.22);transform:translateY(-1px)}

/* v1.10.43 Dangerous goods icon in Customer Portal booking history */
.csh-cp-dg-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 999px;
	background: #fff7ed;
	border: 1px solid #fed7aa;
	color: #f97316;
	box-shadow: 0 4px 12px rgba(249, 115, 22, .16);
	flex: 0 0 auto;
}

.csh-cp-dg-icon svg {
	display: block;
	width: 15px;
	height: 15px;
}


/* v1.10.48 Customer Portal DG icon beside booking status */
.csh-cp-dg-icon.is-status-icon {
	width: 18px;
	height: 18px;
	margin-right: -2px;
	box-shadow: 0 3px 8px rgba(249, 115, 22, .14);
}

.csh-cp-dg-icon.is-status-icon svg {
	width: 11px;
	height: 11px;
}

.csh-cp-unallocated-sync-card .csh-cp-consignment-badge {
	min-width: 0;
	height: auto;
	min-height: 27px;
	gap: 8px;
	background: #ecfdf5;
	color: #047857;
	border: 1px solid #bbf7d0;
	box-shadow: 0 6px 16px rgba(4, 120, 87, .10);
}

.csh-cp-unallocated-sync-card .csh-cp-consignment-badge-label {
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
}

.csh-cp-unallocated-sync-card .csh-cp-consignment-badge .csh-cp-booking-ref {
	margin: 0;
	padding-left: 8px;
	border-left: 1px solid rgba(4, 120, 87, .22);
	color: #2A6AF6;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.1;
}

.csh-cp-unallocated-sync-head {
	cursor: default;
}

.csh-cp-track-mini-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 26px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #16a34a;
	color: #fff !important;
	font-size: 11px;
	font-weight: 800;
	text-decoration: none;
	box-shadow: 0 8px 18px rgba(22, 163, 74, .18);
}

.csh-cp-track-mini-link:hover,
.csh-cp-track-mini-link:focus {
	background: #15803d;
	color: #fff !important;
}

/* v1.10.56 Customer Portal history range dropdown */
.csh-cp-history-date-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.csh-cp-history-window{display:inline-flex;align-items:center;gap:7px;margin:0;padding:0;color:#7A8AAA;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.csh-cp-history-window select{min-height:32px;border:1px solid #D7E4FF;border-radius:999px;background:#FFFFFF;color:#0D1F3C;font-family:var(--csh-cp-font);font-size:12px;font-weight:850;line-height:1;padding:5px 28px 5px 11px;box-shadow:0 2px 10px rgba(13,31,60,.05);cursor:pointer}
.csh-cp-history-window select:focus{outline:none;border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
@media(max-width:640px){.csh-cp-history-topline{align-items:stretch;flex-direction:column}.csh-cp-history-date-controls{width:100%;justify-content:space-between}.csh-cp-page-booking-link{align-self:flex-end}}


/* v1.10.57 Customer Portal range dropdown polish */
.csh-cp-history-window{
	position:relative;
	display:inline-flex;
	align-items:center;
	margin:0;
	padding:0;
	color:#0D1F3C;
	font-size:0;
	line-height:1;
}
.csh-cp-history-window-shell{
	position:relative;
	display:inline-flex;
	align-items:center;
	min-width:132px;
}
.csh-cp-history-window select{
	width:100%;
	min-height:36px;
	appearance:none;
	-webkit-appearance:none;
	border:1px solid #BFD4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#0D1F3C;
	font-family:var(--csh-cp-font);
	font-size:12px;
	font-weight:900;
	line-height:1;
	padding:8px 36px 8px 13px;
	box-shadow:0 8px 20px rgba(42,106,246,.10);
	cursor:pointer;
}
.csh-cp-history-window select:hover{
	border-color:#2A6AF6;
	box-shadow:0 10px 24px rgba(42,106,246,.14);
}
.csh-cp-history-window select:focus{
	outline:none;
	border-color:#2A6AF6;
	box-shadow:0 0 0 3px rgba(42,106,246,.14),0 10px 24px rgba(42,106,246,.14);
}
.csh-cp-history-window-arrow{
	position:absolute;
	right:12px;
	top:50%;
	transform:translateY(-50%);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:16px;
	height:16px;
	color:#2A6AF6;
	pointer-events:none;
}
.csh-cp-history-window-arrow svg{
	display:block;
	width:16px;
	height:16px;
}
@media(max-width:640px){
	.csh-cp-history-window-shell{min-width:140px;}
}

/* v1.10.58 Unallocated Sync selection prep */
.csh-cp-unallocated-sync-card {
	position: relative;
}

.csh-cp-unallocated-sync-head {
	align-items: center;
	gap: 13px;
}

.csh-cp-unallocated-sync-main {
	min-width: 0;
	flex: 1 1 auto;
}

.csh-cp-unallocated-sync-select {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	margin-top: 2px;
	cursor: pointer;
}

.csh-cp-unallocated-sync-select input {
	position: absolute;
	inset: 0;
	width: 22px;
	height: 22px;
	margin: 0;
	opacity: 0;
	cursor: pointer;
}

.csh-cp-unallocated-sync-select span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border: 1.5px solid #BFDBFE;
	border-radius: 7px;
	background: #FFFFFF;
	box-shadow: 0 4px 10px rgba(42, 106, 246, .08);
	transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.csh-cp-unallocated-sync-select span::after {
	content: '';
	display: block;
	width: 9px;
	height: 5px;
	border-left: 2px solid #FFFFFF;
	border-bottom: 2px solid #FFFFFF;
	transform: rotate(-45deg) translateY(-1px);
	opacity: 0;
}

.csh-cp-unallocated-sync-select input:checked + span {
	border-color: #2A6AF6;
	background: #2A6AF6;
	box-shadow: 0 8px 16px rgba(42, 106, 246, .18);
}

.csh-cp-unallocated-sync-select input:checked + span::after {
	opacity: 1;
}

.csh-cp-unallocated-sync-select input:focus-visible + span {
	outline: 3px solid rgba(42, 106, 246, .18);
	outline-offset: 2px;
}

@media (max-width: 640px) {
	.csh-cp-unallocated-sync-head {
		align-items: flex-start;
	}
	.csh-cp-unallocated-sync-select {
		margin-top: 3px;
	}
}

/* v1.10.61 Frequent modal list search and SKU field */
.csh-cp .csh-cp-frequent-list-search{
  flex:0 0 auto;
  width:100%;
  min-height:36px;
  margin:0 0 8px;
  border:1px solid #D7E4FF;
  border-radius:12px;
  background:#FFFFFF;
  color:#0D1F3C;
  font-family:var(--csh-cp-font);
  font-size:12px;
  font-weight:800;
  padding:8px 12px;
  box-sizing:border-box;
}
.csh-cp .csh-cp-frequent-list-search::placeholder{color:#7A8AAA;font-weight:800;}
.csh-cp .csh-cp-frequent-list-search:focus{outline:none;border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.13);}
.csh-cp .csh-cp-frequent-item-row-main-sku{grid-template-columns:1.1fr .62fr .82fr;}
@media(max-width:560px){.csh-cp .csh-cp-frequent-item-row-main-sku{grid-template-columns:1fr;}}

/* v1.10.69: lightweight auto-window loading state and schedule time picker refinements */
.csh-cp-empty-card-loading {
	position: relative;
}
.csh-cp-empty-spinner {
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0 auto 10px;
	border-radius: 50%;
	border: 3px solid rgba(42,106,246,.18);
	border-top-color: #2A6AF6;
	animation: csh-cp-spin .72s linear infinite;
}
@keyframes csh-cp-spin {
	to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
	.csh-cp-empty-spinner { animation: none; }
}
.csh-cp-schedule-copy {
	max-width: 500px;
	font-size: 12px;
	line-height: 1.5;
}
.csh-cp-schedule-time-panel {
	grid-template-columns: minmax(0, 1fr) 168px;
	gap: 10px;
	padding: 11px 13px;
	border-radius: 16px;
}
.csh-cp-schedule-selected-date-box small.csh-cp-schedule-timezone-note {
	display: block;
	margin-top: 3px;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #7A8AAA;
}
.csh-cp-schedule-time-panel strong {
	font-size: 14px;
}
.csh-cp-schedule-time-field > span {
	font-size: 10px;
}
.csh-cp-schedule-time-picker {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 4px;
	margin-top: 6px;
}
.csh-cp-schedule-time-picker select {
	min-height: 34px;
	width: 100%;
	margin: 0;
	padding: 7px 6px;
	border: 1px solid #D7E4FF;
	border-radius: 9px;
	background: #FFFFFF;
	color: #0D1F3C;
	font-family: var(--csh-cp-font);
	font-size: 12px;
	font-weight: 900;
	text-align: center;
	text-align-last: center;
	box-shadow: 0 1px 5px rgba(13,31,60,.04);
	cursor: pointer;
}
.csh-cp-schedule-time-picker select:focus {
	outline: none;
	border-color: #2A6AF6;
	box-shadow: 0 0 0 3px rgba(42,106,246,.12);
}
@media (max-width: 620px) {
	.csh-cp-schedule-time-panel {
		grid-template-columns: 1fr;
	}
	.csh-cp-schedule-time-picker {
		max-width: 190px;
	}
}

/* v1.10.72 selected company highlight */
.csh-cp-user-company {
	color: #2A6AF6;
	font-weight: 800;
}
.csh-cp-account-company-option.active {
	background: #eaf1ff;
	border-left: 3px solid #2A6AF6;
}
.csh-cp-account-company-option.active .csh-cp-account-company-name {
	color: #1A50CC;
	font-weight: 900;
}

/* v1.10.86 Customer Portal frequent CSV tools */
.csh-cp .csh-cp-frequent-bulk-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:2px 0 8px;flex:0 0 auto;flex-wrap:wrap}
.csh-cp .csh-cp-frequent-template-button,.csh-cp .csh-cp-frequent-import-button{border-radius:999px;border:1px solid #CFE0FF;background:#FFFFFF;color:#2A6AF6;font-family:var(--csh-cp-font);font-size:10.5px;font-weight:900;line-height:1;padding:8px 12px;cursor:pointer;box-shadow:0 6px 16px rgba(42,106,246,.09);transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}
.csh-cp .csh-cp-frequent-import-button{background:#2A6AF6;border-color:#2A6AF6;color:#FFFFFF;box-shadow:0 10px 22px rgba(42,106,246,.20)}
.csh-cp .csh-cp-frequent-template-button:hover,.csh-cp .csh-cp-frequent-template-button:focus,.csh-cp .csh-cp-frequent-import-button:hover,.csh-cp .csh-cp-frequent-import-button:focus{outline:none;transform:translateY(-1px);box-shadow:0 12px 26px rgba(42,106,246,.18)}
.csh-cp .csh-cp-frequent-template-button:hover,.csh-cp .csh-cp-frequent-template-button:focus{background:#E8F0FE;border-color:#93C5FD;color:#1A50CC}
.csh-cp .csh-cp-frequent-import-button:hover,.csh-cp .csh-cp-frequent-import-button:focus{background:#1A50CC;border-color:#1A50CC;color:#FFFFFF}
.csh-cp .csh-cp-frequent-template-button:disabled,.csh-cp .csh-cp-frequent-import-button:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}
@media(max-width:560px){.csh-cp .csh-cp-frequent-bulk-actions{justify-content:stretch}.csh-cp .csh-cp-frequent-template-button,.csh-cp .csh-cp-frequent-import-button{flex:1 1 auto}}


/* v1.10.87 Customer Portal frequent modal CSV samples and section polish */
.csh-cp .csh-cp-frequent-modal-panel-list form{
  position:relative;
  padding:10px;
  border:1px solid #E4E8F4;
  border-radius:16px;
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FAFF 100%);
  box-shadow:0 8px 22px rgba(42,106,246,.07);
}
.csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-inline-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
}
.csh-cp .csh-cp-frequent-modal-status{
  margin-top:7px;
}
.csh-cp .csh-cp-frequent-bulk-actions{
  margin:9px 0 12px;
  padding:8px 10px;
  border:1px dashed #CFE0FF;
  border-radius:14px;
  background:#F8FAFF;
}
.csh-cp .csh-cp-frequent-list-heading{
  display:flex;
  align-items:center;
  gap:8px;
  margin:2px 0 8px;
  padding-top:13px;
  border-top:1px solid #E4E8F4;
}
.csh-cp .csh-cp-frequent-list-heading::before{
  content:'';
  width:8px;
  height:8px;
  border-radius:999px;
  background:#2A6AF6;
  box-shadow:0 0 0 4px rgba(42,106,246,.11);
  flex:0 0 auto;
}
.csh-cp .csh-cp-frequent-list-search{
  box-shadow:0 1px 8px rgba(13,31,60,.04);
}
.csh-cp .csh-cp-frequent-saved-list{
  padding:4px 3px 2px 0;
}
.csh-cp .csh-cp-frequent-saved-row{
  border:1px solid #EAF0FB;
  box-shadow:0 1px 8px rgba(13,31,60,.035);
}
@media(max-width:560px){
  .csh-cp [data-csh-cp-frequent-address-modal] .csh-cp-frequent-inline-form{grid-template-columns:1fr}
  .csh-cp .csh-cp-frequent-modal-panel-list form{padding:9px}
}

/* v1.10.88 Customer Portal frequent delete confirmation modal */
.csh-cp-frequent-delete-modal[hidden]{display:none!important}
.csh-cp-frequent-delete-modal{position:fixed;inset:0;z-index:100004;display:flex;align-items:center;justify-content:center;padding:18px;font-family:'Sora',Arial,Helvetica,sans-serif;color:#0D1F3C}
.csh-cp-frequent-delete-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.38);backdrop-filter:blur(3px)}
.csh-cp-frequent-delete-dialog{position:relative;width:min(100%,390px);background:#FFFFFF;border:1px solid #D7E4FF;border-radius:22px;box-shadow:0 30px 80px rgba(13,31,60,.28);padding:22px 22px 20px;color:#0D1F3C}
.csh-cp-frequent-delete-close{position:absolute;right:13px;top:12px;width:30px;height:30px;border:0;border-radius:999px;background:#F5F7FC;color:#64748B;font-size:19px;font-weight:800;line-height:1;cursor:pointer}
.csh-cp-frequent-delete-close:hover,.csh-cp-frequent-delete-close:focus{outline:none;background:#E8F0FE;color:#2A6AF6}
.csh-cp-frequent-delete-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#F5F7FC;color:#7A8AAA;margin-bottom:12px;font-size:17px;line-height:1}
.csh-cp-frequent-delete-dialog h3{margin:0 34px 8px 0;font-size:19px;line-height:1.25;font-weight:900;color:#0D1F3C}
.csh-cp-frequent-delete-dialog p{margin:0 0 14px;color:#3A4A6A;font-size:13px;line-height:1.55;font-weight:600}
.csh-cp-frequent-delete-summary{border:1px solid #DCE7F8;border-radius:14px;background:#F8FAFF;padding:11px 12px;color:#0D1F3C;font-size:12px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.csh-cp-frequent-delete-summary strong{display:block;font-size:13px;font-weight:900;color:#0D1F3C;line-height:1.25}
.csh-cp-frequent-delete-summary small{display:block;margin-top:3px;color:#7A8AAA;font-size:11px;font-weight:750;line-height:1.3}
.csh-cp-frequent-delete-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px}
.csh-cp-frequent-delete-actions button{border-radius:999px;padding:10px 16px;font-family:'Sora',Arial,Helvetica,sans-serif;font-size:12px;font-weight:900;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}
.csh-cp-frequent-delete-cancel{border:1px solid #DCE7F8;background:#FFFFFF;color:#3A4A6A}
.csh-cp-frequent-delete-cancel:hover,.csh-cp-frequent-delete-cancel:focus{outline:none;border-color:#93C5FD;color:#1A50CC;background:#F8FAFF;transform:translateY(-1px)}
.csh-cp-frequent-delete-confirm{border:0;background:#EF4444;color:#FFFFFF;box-shadow:0 10px 24px rgba(239,68,68,.22)}
.csh-cp-frequent-delete-confirm:hover,.csh-cp-frequent-delete-confirm:focus{outline:none;background:#DC2626;transform:translateY(-1px)}
.csh-cp-frequent-delete-actions button:disabled{opacity:.68;cursor:not-allowed;transform:none;box-shadow:none}
.csh-cp-frequent-delete-status{min-height:15px;margin-top:10px;text-align:center;color:#7A8AAA;font-size:11px;font-weight:800;line-height:1.4}
.csh-cp-frequent-delete-open{overflow:hidden}
.csh-cp .csh-cp-frequent-remove.is-busy{opacity:.6;cursor:not-allowed;transform:none!important}
@media(max-width:560px){.csh-cp-frequent-delete-dialog{padding:20px 18px}.csh-cp-frequent-delete-actions{flex-direction:column-reverse;align-items:stretch}.csh-cp-frequent-delete-actions button{width:100%}}

/* v1.10.96 remove Customer Portal Admin Panel rate-card details action */
.csh-cp-rate-stat,
.csh-cp-rate-stat:not(.csh-cp-rate-stat-disabled) {
	cursor: default !important;
}
.csh-cp-rate-stat::after,
.csh-cp-rate-stat:not(.csh-cp-rate-stat-disabled)::after,
.csh-cp-rate-stat-no-details-action::after {
	display: none !important;
	content: none !important;
}

/* v1.10.97 Customer Portal Client Config settings */
.csh-cp .csh-cp-rate-stat-with-settings{position:relative;padding-right:54px}
.csh-cp .csh-cp-rate-settings-button{position:absolute;right:13px;top:13px;width:34px;height:34px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.12);color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.csh-cp .csh-cp-rate-settings-button:hover,.csh-cp .csh-cp-rate-settings-button:focus{outline:none;background:rgba(42,106,246,.28);border-color:rgba(255,255,255,.65);transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.18)}
.csh-cp .csh-cp-rate-settings-button[hidden]{display:none!important}
.csh-cp .csh-cp-rate-stat-available small{color:#00C8B4!important}
.csh-cp .csh-cp-rate-stat-not-available small{color:#FCD34D!important}
.csh-cp .csh-cp-client-config-modal[hidden]{display:none!important}
.csh-cp-client-config-modal{position:fixed;inset:0;z-index:100006;display:flex;align-items:center;justify-content:center;padding:20px;font-family:'Sora',Arial,Helvetica,sans-serif;color:#0D1F3C}
.csh-cp-client-config-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.48);backdrop-filter:blur(4px)}
.csh-cp-client-config-panel{position:relative;width:min(100%,820px);max-height:min(88vh,760px);overflow:hidden;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #D7E4FF;border-radius:24px;box-shadow:0 30px 90px rgba(13,31,60,.32);padding:24px;color:#0D1F3C}
.csh-cp-client-config-close{position:absolute;right:16px;top:14px;width:34px;height:34px;border:0;border-radius:999px;background:#F5F7FC;color:#64748B;font-size:24px;font-weight:800;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease}
.csh-cp-client-config-close:hover,.csh-cp-client-config-close:focus{outline:none;background:#E8F0FE;color:#2A6AF6;transform:translateY(-1px)}
.csh-cp-client-config-kicker{display:inline-flex;align-items:center;width:max-content;margin:0 0 10px;padding:7px 12px;border-radius:999px;background:#E8F0FE;color:#2A6AF6;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.csh-cp-client-config-panel h3{margin:0 42px 4px 0;color:#0D1F3C;font-size:24px;line-height:1.2;font-weight:900;letter-spacing:-.02em}
.csh-cp-client-config-copy{margin:0 0 16px;color:#3A4A6A;font-size:13px;font-weight:700;line-height:1.45}
.csh-cp-client-config-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px}
.csh-cp-client-config-summary>div{border:1px solid #E4E8F4;border-radius:16px;background:#F5F7FC;padding:12px 14px}
.csh-cp-client-config-summary span{display:block;margin-bottom:4px;color:#7A8AAA;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.csh-cp-client-config-summary strong{display:block;color:#0D1F3C;font-size:14px;font-weight:900}
.csh-cp-client-config-summary strong.is-available{color:#11825F}
.csh-cp-client-config-switch,.csh-cp-client-config-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.csh-cp-client-config-switch button,.csh-cp-client-config-tabs button{border:1px solid #D7E4FF;border-radius:999px;background:#FFFFFF;color:#3A4A6A;padding:9px 13px;font-family:'Sora',Arial,Helvetica,sans-serif;font-size:12px;font-weight:900;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}
.csh-cp-client-config-switch button:hover,.csh-cp-client-config-tabs button:hover,.csh-cp-client-config-switch button:focus,.csh-cp-client-config-tabs button:focus{outline:none;border-color:#93B7FF;color:#1A50CC;background:#F8FAFF;transform:translateY(-1px)}
.csh-cp-client-config-switch button.active,.csh-cp-client-config-tabs button.active{background:#2A6AF6;border-color:#2A6AF6;color:#FFFFFF;box-shadow:0 10px 24px rgba(42,106,246,.24)}
.csh-cp-client-config-alert{margin:0 0 12px;padding:10px 12px;border-radius:14px;font-size:12px;font-weight:800;line-height:1.4;border:1px solid #D7E4FF;background:#F5F7FC;color:#3A4A6A}
.csh-cp-client-config-alert.is-success{border-color:#BBF7D0;background:#F0FDF4;color:#166534}
.csh-cp-client-config-alert.is-error{border-color:#FECACA;background:#FEF2F2;color:#991B1B}
.csh-cp-client-config-form{min-height:0;display:flex;flex-direction:column;gap:14px;overflow:hidden}
.csh-cp-client-config-body{min-height:180px;overflow:auto;border:1px solid #E4E8F4;border-radius:18px;background:#F8FAFF;padding:14px}
.csh-cp-client-config-loading{padding:26px;text-align:center;color:#7A8AAA;font-size:13px;font-weight:800}
.csh-cp-client-config-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,270px);gap:14px;align-items:center;padding:13px 14px;margin:0 0 10px;border:1px solid #E4E8F4;border-radius:16px;background:#FFFFFF}
.csh-cp-client-config-row:last-child{margin-bottom:0}
.csh-cp-client-config-row strong{display:block;color:#0D1F3C;font-size:13px;font-weight:900;line-height:1.3}
.csh-cp-client-config-row small{display:block;margin-top:3px;color:#7A8AAA;font-size:11px;font-weight:750;line-height:1.35}
.csh-cp-client-config-input-wrap{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.csh-cp-client-config-input-wrap input{width:118px;max-width:100%;border:1px solid #CFE0FF;border-radius:12px;background:#FFFFFF;color:#0D1F3C;padding:10px 11px;font-family:'Sora',Arial,Helvetica,sans-serif;font-size:13px;font-weight:800;outline:none;transition:border-color .15s ease,box-shadow .15s ease}
.csh-cp-client-config-input-wrap input:focus{border-color:#2A6AF6;box-shadow:0 0 0 4px rgba(42,106,246,.12)}
.csh-cp-client-config-input-wrap em{color:#3A4A6A;font-style:normal;font-size:11px;font-weight:800;white-space:nowrap}
.csh-cp-client-config-changed,.csh-cp-client-config-default{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.csh-cp-client-config-changed{background:#FFF7ED;border:1px solid #FDBA74;color:#C2410C}
.csh-cp-client-config-default{background:#F1F5F9;border:1px solid #E2E8F0;color:#64748B}
.csh-cp-client-config-table-wrap{overflow:auto;background:#FFFFFF;border:1px solid #E4E8F4;border-radius:16px}
.csh-cp-client-config-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px;color:#0D1F3C;font-size:12px}
.csh-cp-client-config-table th{position:sticky;top:0;z-index:1;background:#E8F0FE;color:#0D1F3C;text-align:left;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900;padding:10px 12px;border-bottom:1px solid #D7E4FF}
.csh-cp-client-config-table td{padding:11px 12px;border-bottom:1px solid #EEF3FF;vertical-align:middle;background:#FFFFFF}
.csh-cp-client-config-table tr:last-child td{border-bottom:0}
.csh-cp-client-config-table td:first-child strong{font-size:12px;font-weight:900;color:#0D1F3C;white-space:nowrap}
.csh-cp-client-config-table td:nth-child(2) span{display:inline-flex;min-width:28px;justify-content:center;border-radius:999px;padding:4px 8px;background:#E8F0FE;color:#2A6AF6;font-size:11px;font-weight:900}
.csh-cp-client-config-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:2px}
.csh-cp-client-config-secondary,.csh-cp-client-config-primary{border-radius:999px;padding:12px 18px;font-family:'Sora',Arial,Helvetica,sans-serif;font-size:13px;font-weight:900;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}
.csh-cp-client-config-secondary{border:1px solid #D7E4FF;background:#FFFFFF;color:#3A4A6A}
.csh-cp-client-config-secondary:hover,.csh-cp-client-config-secondary:focus{outline:none;border-color:#93B7FF;color:#1A50CC;background:#F8FAFF;transform:translateY(-1px)}
.csh-cp-client-config-primary{border:0;background:#2A6AF6;color:#FFFFFF;box-shadow:0 12px 28px -10px rgba(42,106,246,.5)}
.csh-cp-client-config-primary:hover,.csh-cp-client-config-primary:focus{outline:none;background:#1A50CC;transform:translateY(-1px)}
.csh-cp-client-config-primary:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}
@media(max-width:720px){.csh-cp-client-config-panel{padding:20px 16px;border-radius:20px;max-height:92vh}.csh-cp-client-config-summary{grid-template-columns:1fr}.csh-cp-client-config-row{grid-template-columns:1fr}.csh-cp-client-config-input-wrap{justify-content:flex-start;flex-wrap:wrap}.csh-cp-client-config-actions{flex-direction:column-reverse;align-items:stretch}.csh-cp-client-config-actions button{width:100%}}

/* v1.11.1 Customer Portal Client Config UI refinement */
.csh-cp .csh-cp-client-config-panel{width:min(100%,880px);padding:22px 24px;border-radius:24px}
.csh-cp .csh-cp-client-config-summary strong{font-size:13px}
.csh-cp .csh-cp-client-config-summary strong.is-available{color:#11825F}
.csh-cp .csh-cp-client-config-switch{margin-bottom:12px}
.csh-cp .csh-cp-client-config-switch button{font-size:12px;padding:9px 14px}
.csh-cp .csh-cp-client-config-tabs{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;margin:0 0 14px;padding:5px;border:1px solid #E4E8F4;border-radius:16px;background:#F5F7FC;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);scrollbar-gutter:stable}
.csh-cp .csh-cp-client-config-tabs::-webkit-scrollbar{height:8px}
.csh-cp .csh-cp-client-config-tabs::-webkit-scrollbar-track{background:#E8F0FE;border-radius:999px}
.csh-cp .csh-cp-client-config-tabs::-webkit-scrollbar-thumb{background:#AFC8FF;border-radius:999px;border:2px solid #E8F0FE}
.csh-cp .csh-cp-client-config-tabs button{flex:0 0 auto;border:0!important;border-radius:11px!important;background:transparent!important;color:#3A4A6A!important;padding:8px 11px!important;font-size:10.5px!important;font-weight:850!important;line-height:1.15;letter-spacing:-.01em;text-transform:none;box-shadow:none!important;transform:none!important;white-space:nowrap}
.csh-cp .csh-cp-client-config-tabs button:hover,.csh-cp .csh-cp-client-config-tabs button:focus{outline:none!important;background:#FFFFFF!important;color:#1A50CC!important;box-shadow:0 1px 5px rgba(13,31,60,.08)!important}
.csh-cp .csh-cp-client-config-tabs button.active{background:#FFFFFF!important;color:#0D1F3C!important;box-shadow:0 2px 10px rgba(13,31,60,.08)!important;position:relative}
.csh-cp .csh-cp-client-config-tabs button.active:after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:999px;background:#2A6AF6}
.csh-cp .csh-cp-client-config-body{padding:12px;min-height:170px;background:#F8FAFF;overflow:auto}
.csh-cp .csh-cp-client-config-row{grid-template-columns:minmax(0,1fr) minmax(190px,245px);gap:10px;padding:10px 12px;margin-bottom:8px;border-radius:14px}
.csh-cp .csh-cp-client-config-row strong{font-size:12px;line-height:1.25}
.csh-cp .csh-cp-client-config-row small{font-size:9.5px;line-height:1.25}
.csh-cp .csh-cp-client-config-input-wrap{gap:6px}
.csh-cp .csh-cp-client-config-input-wrap input{width:108px;padding:8px 9px;border-radius:11px;font-size:11.5px;font-weight:850}
.csh-cp .csh-cp-client-config-input-wrap em{font-size:9.5px;font-weight:850}
.csh-cp .csh-cp-client-config-changed,.csh-cp .csh-cp-client-config-default{padding:3px 6px;font-size:8px;letter-spacing:.04em;line-height:1.1}
.csh-cp .csh-cp-client-config-table-wrap{max-height:min(46vh,390px);overflow:auto;border-radius:16px;scrollbar-gutter:stable both-edges;background:#FFFFFF}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar{width:11px;height:11px}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-track{background:#EEF3FF;border-radius:999px}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-thumb{background:#9AA3AF;border-radius:999px;border:2px solid #EEF3FF}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-thumb:hover{background:#6B7280}
.csh-cp .csh-cp-client-config-table{min-width:940px;font-size:10.5px}
.csh-cp .csh-cp-client-config-table th{font-size:8.5px;padding:8px 10px;letter-spacing:.08em;white-space:nowrap}
.csh-cp .csh-cp-client-config-table td{padding:8px 10px;font-size:10.5px}
.csh-cp .csh-cp-client-config-table td:first-child strong{font-size:10.8px}
.csh-cp .csh-cp-client-config-table td:nth-child(2) span{min-width:24px;padding:3px 6px;font-size:9px}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap{justify-content:flex-start;gap:5px;min-width:205px}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap input{width:92px;padding:7px 8px;font-size:10.5px;border-radius:10px}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap em{font-size:9px}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-changed,.csh-cp .csh-cp-client-config-table .csh-cp-client-config-default{font-size:7.5px;padding:3px 5px}
@media(max-width:720px){.csh-cp .csh-cp-client-config-tabs{border-radius:14px}.csh-cp .csh-cp-client-config-tabs button{font-size:10px!important;padding:8px 10px!important}.csh-cp .csh-cp-client-config-table-wrap{max-height:44vh}.csh-cp .csh-cp-client-config-row{grid-template-columns:1fr}.csh-cp .csh-cp-client-config-input-wrap{justify-content:flex-start;flex-wrap:wrap}}

/* v1.11.2 Customer Portal Client Config table polish and Admin Panel profile link */
.csh-cp .csh-cp-copy-company-id svg {
	width: 15px;
	height: 15px;
}

.csh-cp .csh-cp-copy-company-id:not(:disabled):hover,
.csh-cp .csh-cp-copy-company-id:not(:disabled):focus {
	background: rgba(42,106,246,.30);
	border-color: rgba(255,255,255,.45);
	color: #FFFFFF;
}

.csh-cp .csh-cp-client-config-body.has-config-table {
	overflow: hidden;
	padding: 12px;
}

.csh-cp .csh-cp-client-config-table-wrap {
	width: 100%;
	max-width: 100%;
	display: block;
	box-sizing: border-box;
	overflow-x: auto;
	overflow-y: auto;
	padding: 0 0 8px;
	border: 1px solid #D7E4FF;
	border-radius: 16px;
	background: #FFFFFF;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}

.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-track {
	background: #EDF4FF;
	border-radius: 999px;
}

.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-thumb {
	background: #8EA5C9;
	border: 2px solid #EDF4FF;
	border-radius: 999px;
}

.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-corner {
	background: #EDF4FF;
}

.csh-cp .csh-cp-client-config-table {
	width: max-content;
	min-width: 720px;
	border-spacing: 0;
	font-size: 10px;
}

.csh-cp .csh-cp-client-config-table th {
	background: linear-gradient(180deg,#EFF5FF 0%,#E3EEFF 100%);
	color: #0D1F3C;
	font-size: 8px;
	font-weight: 950;
	letter-spacing: .08em;
	padding: 8px 8px;
	border-bottom: 1px solid #CFE0FF;
	box-shadow: inset 0 -1px 0 rgba(255,255,255,.70);
}

.csh-cp .csh-cp-client-config-table th:first-child {
	border-top-left-radius: 13px;
}

.csh-cp .csh-cp-client-config-table th:last-child {
	border-top-right-radius: 13px;
}

.csh-cp .csh-cp-client-config-table td {
	padding: 7px 8px;
	font-size: 10px;
}

.csh-cp .csh-cp-client-config-table td:first-child {
	min-width: 118px;
}

.csh-cp .csh-cp-client-config-table td:first-child strong {
	font-size: 10px;
	letter-spacing: -.01em;
}

.csh-cp .csh-cp-client-config-table td:nth-child(2) {
	width: 40px;
}

.csh-cp .csh-cp-client-config-table td:nth-child(2) span {
	min-width: 22px;
	padding: 2px 6px;
	font-size: 8px;
}

.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap {
	min-width: 150px;
	gap: 4px;
}

.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap input {
	width: 76px;
	padding: 7px 8px;
	font-size: 10px;
}

.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap em {
	font-size: 8px;
}

.csh-cp .csh-cp-client-config-table .csh-cp-client-config-changed,
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-default {
	padding: 2px 5px;
	font-size: 6.8px;
	letter-spacing: .035em;
}

/* v1.11.3 Customer Portal rate-config table and unallocated toolbar polish */
.csh-cp .csh-cp-client-config-body.has-config-table{
	overflow:visible;
	padding:12px 12px 14px;
	background:#F8FAFF;
}
.csh-cp .csh-cp-client-config-table-wrap{
	width:100%;
	max-width:100%;
	max-height:min(47vh,380px);
	overflow-x:scroll;
	overflow-y:auto;
	padding:0 0 10px;
	border:1px solid #D7E4FF;
	border-radius:18px;
	background:#FFFFFF;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 20px rgba(42,106,246,.06);
	box-sizing:border-box;
	scrollbar-gutter:stable;
}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar{width:10px;height:11px}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-track{background:#EEF3FF;border-radius:999px}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-thumb{background:#8EA5C9;border:2px solid #EEF3FF;border-radius:999px}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-thumb:hover{background:#64748B}
.csh-cp .csh-cp-client-config-table-wrap::-webkit-scrollbar-corner{background:#EEF3FF}
.csh-cp .csh-cp-client-config-table{
	width:max-content;
	min-width:820px;
	border-collapse:separate;
	border-spacing:0;
	font-size:11.5px;
	line-height:1.25;
}
.csh-cp .csh-cp-client-config-table thead th{
	position:sticky;
	top:0;
	z-index:2;
	background:linear-gradient(180deg,#F2F7FF 0%,#E6F0FF 100%);
	color:#213A63;
	font-size:9.3px;
	font-weight:950;
	letter-spacing:.075em;
	text-transform:uppercase;
	padding:10px 10px;
	border-bottom:1px solid #CFE0FF;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 0 rgba(13,31,60,.04);
	white-space:nowrap;
}
.csh-cp .csh-cp-client-config-table thead th:first-child{border-top-left-radius:16px}
.csh-cp .csh-cp-client-config-table thead th:last-child{border-top-right-radius:16px}
.csh-cp .csh-cp-client-config-table tbody td{
	padding:9px 10px;
	font-size:11.5px;
	border-bottom:1px solid #EEF3FF;
	vertical-align:middle;
}
.csh-cp .csh-cp-client-config-table tbody tr:last-child td{border-bottom:0}
.csh-cp .csh-cp-client-config-table tbody tr:nth-child(even) td{background:#FBFDFF}
.csh-cp .csh-cp-client-config-table td:first-child{min-width:132px}
.csh-cp .csh-cp-client-config-table td:first-child strong{font-size:11.5px;font-weight:900;letter-spacing:-.01em;white-space:nowrap}
.csh-cp .csh-cp-client-config-table td:nth-child(2){width:44px}
.csh-cp .csh-cp-client-config-table td:nth-child(2) span{min-width:24px;padding:3px 7px;font-size:9px;font-weight:900}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap{min-width:165px;gap:5px;justify-content:flex-start;white-space:nowrap}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap input{width:78px;padding:8px 9px;border-radius:10px;font-size:11px;font-weight:850}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap em{font-size:9px;font-weight:850}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-changed,
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-default{padding:2px 5px;font-size:7px;letter-spacing:.035em;line-height:1.05}
.csh-cp-unallocated-sync-toolbar{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	flex-wrap:wrap;
	margin:0 0 12px;
	padding:10px 12px;
	border:1px solid #D7E4FF;
	border-radius:14px;
	background:#F8FAFF;
}
.csh-cp-unallocated-sync-actions{
	display:flex;
	align-items:center;
	gap:10px;
	flex-wrap:wrap;
}
.csh-cp-unallocated-sync-select-all{
	display:inline-flex;
	align-items:center;
	gap:8px;
	min-height:36px;
	padding:7px 10px;
	border:1px solid #D7E4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#0D1F3C;
	font-size:12px;
	font-weight:900;
	cursor:pointer;
	box-shadow:0 4px 12px rgba(42,106,246,.06);
}
.csh-cp-unallocated-sync-select-all input{position:absolute;opacity:0;pointer-events:none}
.csh-cp-unallocated-sync-select-all>span{width:18px;height:18px;border:1.5px solid #BFDBFE;border-radius:6px;background:#FFFFFF;display:inline-flex;align-items:center;justify-content:center}
.csh-cp-unallocated-sync-select-all>span:after{content:'';width:8px;height:4px;border-left:2px solid #FFFFFF;border-bottom:2px solid #FFFFFF;transform:rotate(-45deg) translateY(-1px);opacity:0}
.csh-cp-unallocated-sync-select-all input:checked+span,
.csh-cp-unallocated-sync-select-all input:indeterminate+span{background:#2A6AF6;border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
.csh-cp-unallocated-sync-select-all input:checked+span:after{opacity:1}
.csh-cp-unallocated-sync-select-all input:indeterminate+span:after{opacity:1;width:8px;height:0;border-left:0;border-bottom:2px solid #FFFFFF;transform:none}
.csh-cp-unallocated-sync-select-all input:disabled+span{background:#F1F5F9;border-color:#D8E2F0;box-shadow:none}
.csh-cp-unallocated-manifest-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:36px;
	border:0;
	border-radius:999px;
	background:#2A6AF6;
	color:#FFFFFF;
	font-family:'Sora',Arial,Helvetica,sans-serif;
	font-size:12px;
	font-weight:900;
	padding:8px 16px;
	cursor:pointer;
	box-shadow:0 10px 22px rgba(42,106,246,.18);
}
.csh-cp-unallocated-manifest-button:disabled{background:#E2E8F0;color:#94A3B8;box-shadow:none;cursor:not-allowed}
.csh-cp-unallocated-filter-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:36px;
	border:1px solid #D7E4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#1A50CC;
	font-family:'Sora',Arial,Helvetica,sans-serif;
	font-size:11px;
	font-weight:900;
	padding:8px 13px;
	cursor:pointer;
	box-shadow:0 4px 12px rgba(42,106,246,.06);
}
.csh-cp-unallocated-filter-button:hover,.csh-cp-unallocated-filter-button:focus{outline:none;border-color:#93B7FF;background:#E8F0FE;color:#1A50CC}
.csh-cp-unallocated-filter-button.is-active{border-color:#2A6AF6;background:#E8F0FE;color:#1A50CC;box-shadow:0 0 0 3px rgba(42,106,246,.10)}
.csh-cp-unallocated-filter-button:disabled{border-color:#E2E8F0;background:#F8FAFC;color:#94A3B8;box-shadow:none;cursor:not-allowed}
.csh-cp-unallocated-search{
	display:flex;
	align-items:center;
	gap:8px;
	flex:1 1 320px;
	max-width:430px;
	min-height:36px;
	padding:4px 5px 4px 11px;
	border:1px solid #D7E4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#7A8AAA;
	box-shadow:0 4px 12px rgba(42,106,246,.05);
}
.csh-cp-unallocated-search:focus-within{
	border-color:#2A6AF6;
	box-shadow:0 0 0 3px rgba(42,106,246,.12);
}
.csh-cp-unallocated-search svg{flex:0 0 auto}
.csh-cp-unallocated-search input{
	min-width:0;
	flex:1 1 auto;
	border:0!important;
	outline:0!important;
	box-shadow:none!important;
	background:transparent!important;
	color:#0D1F3C;
	font-family:'Sora',Arial,Helvetica,sans-serif;
	font-size:11.5px;
	font-weight:750;
	padding:5px 0!important;
}
.csh-cp-unallocated-search input::placeholder{color:#7A8AAA}
.csh-cp-unallocated-search button{
	flex:0 0 auto;
	min-height:24px;
	border:1px solid #D7E4FF;
	border-radius:999px;
	background:#F5F7FC;
	color:#3A4A6A;
	font-family:'Sora',Arial,Helvetica,sans-serif;
	font-size:9px;
	font-weight:900;
	line-height:1;
	padding:5px 8px;
	cursor:pointer;
}
.csh-cp-unallocated-search button:hover,
.csh-cp-unallocated-search button:focus{outline:none;border-color:#93B7FF;background:#E8F0FE;color:#1A50CC}
.csh-cp-unallocated-search button[hidden]{display:none!important}
@media(max-width:720px){
	.csh-cp-unallocated-sync-toolbar{align-items:stretch;flex-direction:column}
	.csh-cp-unallocated-sync-actions{width:100%}
	.csh-cp-unallocated-sync-select-all,.csh-cp-unallocated-manifest-button,.csh-cp-unallocated-filter-button{flex:1 1 0}
	.csh-cp-unallocated-search{width:100%;max-width:none;flex-basis:auto;box-sizing:border-box}
}
@media(max-width:430px){
	.csh-cp-unallocated-sync-actions{flex-direction:column;align-items:stretch}
	.csh-cp-unallocated-sync-select-all,.csh-cp-unallocated-manifest-button,.csh-cp-unallocated-filter-button{width:100%}
}
.csh-cp-unallocated-sync-card .csh-cp-booking-side{
	align-items:flex-end;
	flex-direction:column;
	gap:7px;
}
.csh-cp-unallocated-side-top{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:11px;
}
.csh-cp-unallocated-sync-card .csh-cp-unallocated-service-meta{
	margin-top:0;
	text-align:right;
}
@media(max-width:620px){
	.csh-cp-unallocated-sync-card .csh-cp-booking-side{align-items:flex-start}
	.csh-cp-unallocated-side-top{justify-content:flex-start;flex-wrap:wrap}
	.csh-cp-unallocated-sync-card .csh-cp-unallocated-service-meta{text-align:left}
}


/* v1.11.4 Customer Portal rate-config compact table columns */
.csh-cp .csh-cp-client-config-table{
	min-width:740px;
}
.csh-cp .csh-cp-client-config-table thead th{
	padding:9px 7px;
}
.csh-cp .csh-cp-client-config-table tbody td{
	padding:8px 7px;
}
.csh-cp .csh-cp-client-config-table td:first-child{
	min-width:112px;
	max-width:130px;
}
.csh-cp .csh-cp-client-config-table td:nth-child(2){
	width:34px;
}
.csh-cp .csh-cp-client-config-table td:nth-child(2) span{
	min-width:21px;
	padding:2px 6px;
}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap{
	min-width:132px;
	gap:4px;
}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap input{
	width:68px;
	padding-left:8px;
	padding-right:8px;
}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap em{
	font-size:8.5px;
}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-changed,
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-default{
	padding:2px 4px;
	font-size:6.8px;
}
@media(min-width:880px){
	.csh-cp .csh-cp-client-config-table{
		min-width:760px;
	}
}

/* v1.11.5 Unallocated Sync route builder modal */
.csh-cp-unallocated-route-modal[hidden]{display:none!important}
.csh-cp-unallocated-route-modal{position:fixed;inset:0;z-index:99998;display:flex;align-items:center;justify-content:center;padding:24px;font-family:var(--csh-cp-font, 'Sora', Arial, sans-serif)}
.csh-cp-unallocated-route-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.48);backdrop-filter:blur(8px)}
.csh-cp-unallocated-route-panel{position:relative;width:min(940px,100%);max-height:min(92vh,860px);overflow:hidden;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #D8E3F5;border-radius:24px;box-shadow:0 28px 80px rgba(13,31,60,.30);padding:26px;color:#0D1F3C}
.csh-cp-unallocated-route-close{position:absolute;right:18px;top:16px;width:36px;height:36px;border:0;border-radius:999px;background:#F1F5FB;color:#64748B;font-size:28px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.csh-cp-unallocated-route-close:hover{background:#E4E8F4;color:#0D1F3C}
.csh-cp-unallocated-route-kicker{display:inline-flex;align-items:center;align-self:flex-start;border-radius:999px;background:#E8F0FF;color:#2A6AF6;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:7px 12px;margin-bottom:10px}
.csh-cp-unallocated-route-panel h3{font-size:26px;line-height:1.1;margin:0 42px 4px 0;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-route-copy{margin:0 42px 14px 0;color:#3A4A6A;font-size:13px;line-height:1.55}
.csh-cp-unallocated-route-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 16px}
.csh-cp-unallocated-route-summary>div{background:#F5F7FC;border:1px solid #DCE6F7;border-radius:15px;padding:13px 15px;display:flex;flex-direction:column;gap:4px}
.csh-cp-unallocated-route-summary span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7A8AAA}
.csh-cp-unallocated-route-summary strong{font-size:14px;color:#0D1F3C}
.csh-cp-unallocated-duplicate-note{margin:-2px 0 16px;padding:11px 13px;border:1px solid #BFDBFE;border-radius:14px;background:#EFF6FF;color:#0D1F3C;font-size:12px;font-weight:700;line-height:1.5}
.csh-cp-unallocated-duplicate-note strong{color:#1A50CC;font-weight:900}
.csh-cp-unallocated-duplicate-note[hidden]{display:none!important}
.csh-cp-unallocated-duplicate-message+.csh-cp-unallocated-duplicate-message{margin-top:10px;padding-top:10px;border-top:1px solid #BFDBFE}
.csh-cp-unallocated-duplicate-id-list{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:7px}
.csh-cp-unallocated-duplicate-id-separator{color:#7A8AAA;font-size:10px;font-weight:800}
.csh-cp-unallocated-duplicate-id-button{appearance:none;border:1px solid #93C5FD;border-radius:999px;background:#FFFFFF;color:#1A50CC;font:800 10px/1 var(--csh-cp-font, 'Sora', Arial, sans-serif);padding:5px 8px;cursor:pointer;box-shadow:0 1px 4px rgba(42,106,246,.08)}
.csh-cp-unallocated-duplicate-id-button:hover,.csh-cp-unallocated-duplicate-id-button:focus-visible{border-color:#2A6AF6;background:#E8F0FF;outline:none;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
.csh-cp-unallocated-duplicate-detail-modal[hidden]{display:none!important}
.csh-cp-unallocated-duplicate-detail-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;font-family:var(--csh-cp-font, 'Sora', Arial, sans-serif)}
.csh-cp-unallocated-duplicate-detail-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.48);backdrop-filter:blur(6px)}
.csh-cp-unallocated-duplicate-detail-panel{position:relative;width:min(720px,100%);max-height:min(86vh,760px);overflow:auto;background:#FFFFFF;border:1px solid #D8E3F5;border-radius:22px;box-shadow:0 28px 80px rgba(13,31,60,.30);padding:24px;color:#0D1F3C}
.csh-cp-unallocated-duplicate-detail-close{position:absolute;right:16px;top:14px;width:34px;height:34px;border:0;border-radius:999px;background:#F1F5FB;color:#64748B;font-size:26px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.csh-cp-unallocated-duplicate-detail-close:hover,.csh-cp-unallocated-duplicate-detail-close:focus-visible{background:#E4E8F4;color:#0D1F3C;outline:none;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
.csh-cp-unallocated-duplicate-detail-panel h3{font-size:23px;line-height:1.15;margin:0 42px 5px 0;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-duplicate-detail-reference{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #BFDBFE;border-radius:14px;background:#EFF6FF;padding:11px 13px;margin:14px 0}
.csh-cp-unallocated-duplicate-detail-reference span{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#7A8AAA}
.csh-cp-unallocated-duplicate-detail-reference strong{font-size:13px;color:#1A50CC;word-break:break-word}
.csh-cp-unallocated-duplicate-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.csh-cp-unallocated-duplicate-detail-row{min-width:0;border:1px solid #E4E8F4;border-radius:13px;background:#F8FAFF;padding:10px 11px;display:flex;flex-direction:column;gap:4px}
.csh-cp-unallocated-duplicate-detail-row span{font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#7A8AAA}
.csh-cp-unallocated-duplicate-detail-row strong{font-size:12px;line-height:1.45;color:#0D1F3C;overflow-wrap:anywhere}
.csh-cp-unallocated-duplicate-detail-items{margin-top:15px;border-top:1px solid #E4E8F4;padding-top:13px}
.csh-cp-unallocated-duplicate-detail-items h4{margin:0 0 9px;font-size:13px;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-duplicate-detail-item{border:1px solid #E4E8F4;border-radius:12px;background:#FFFFFF;padding:9px 11px;display:flex;flex-direction:column;gap:3px;margin-top:7px}
.csh-cp-unallocated-duplicate-detail-item strong{font-size:12px;color:#0D1F3C}
.csh-cp-unallocated-duplicate-detail-item span,.csh-cp-unallocated-duplicate-detail-empty{font-size:11px;line-height:1.45;color:#3A4A6A;margin:0}
.csh-cp-unallocated-duplicate-detail-notes{margin-top:15px;border-top:1px solid #E4E8F4;padding-top:13px}
.csh-cp-unallocated-duplicate-detail-notes h4{margin:0 0 8px;font-size:13px;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-duplicate-detail-notes p{margin:0;border:1px solid #E4E8F4;border-radius:12px;background:#F8FAFF;padding:10px 11px;color:#3A4A6A;font-size:11px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
@media (max-width:640px){.csh-cp-unallocated-duplicate-detail-grid{grid-template-columns:1fr}.csh-cp-unallocated-duplicate-detail-panel{padding:20px}.csh-cp-unallocated-duplicate-id-list{margin-top:7px}}
.csh-cp-unallocated-route-form{overflow:auto;padding-right:4px;display:flex;flex-direction:column;gap:14px}
.csh-cp-unallocated-route-section{background:#F8FAFF;border:1px solid #DCE6F7;border-radius:18px;padding:14px}
.csh-cp-unallocated-route-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px;border-bottom:1px solid #E4E8F4;padding-bottom:10px}
.csh-cp-unallocated-route-section-head strong{font-size:14px;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-route-section-head span{font-size:11px;color:#7A8AAA;font-weight:600;text-align:right}
.csh-cp-unallocated-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.csh-cp-unallocated-route-grid label,.csh-cp-unallocated-freight-row label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#7A8AAA}
.csh-cp-unallocated-route-grid label.is-wide{grid-column:1/-1}
.csh-cp-unallocated-route-grid input,.csh-cp-unallocated-route-grid textarea,.csh-cp-unallocated-freight-row input,.csh-cp-unallocated-freight-row select{width:100%;border:1px solid #BCD4FF;border-radius:12px;background:#FFFFFF;color:#0D1F3C;font-size:13px;font-weight:700;padding:10px 12px;outline:none;text-transform:none;letter-spacing:0;box-sizing:border-box}
.csh-cp-unallocated-route-grid textarea{resize:vertical;min-height:48px}
.csh-cp-unallocated-route-grid input:focus,.csh-cp-unallocated-route-grid textarea:focus,.csh-cp-unallocated-freight-row input:focus,.csh-cp-unallocated-freight-row select:focus{border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
.csh-cp-unallocated-route-options-section{padding-bottom:10px}
.csh-cp-unallocated-route-options{display:flex;flex-direction:column;gap:0;margin-top:0}
.csh-cp-unallocated-option-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #E4E8F4;cursor:pointer}
.csh-cp-unallocated-option-toggle:last-child{border-bottom:0}
.csh-cp-unallocated-option-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.csh-cp-unallocated-option-copy strong{font-size:12.5px;line-height:1.35;color:#0D1F3C;font-weight:800}
.csh-cp-unallocated-option-copy small{font-size:10.5px;line-height:1.4;color:#7A8AAA;font-weight:650}
.csh-cp-unallocated-option-copy em{display:inline-flex;align-items:center;margin-left:6px;padding:2px 7px;border-radius:999px;background:rgba(0,200,180,.12);color:#0F766E;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
.csh-cp-unallocated-option-toggle input{position:absolute;opacity:0;pointer-events:none}
.csh-cp-unallocated-option-switch{position:relative;flex:0 0 42px;width:42px;height:24px;border-radius:999px;background:#CBD5E1;box-shadow:inset 0 1px 4px rgba(13,31,60,.12);transition:background .16s ease}
.csh-cp-unallocated-option-switch::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#FFFFFF;box-shadow:0 2px 6px rgba(13,31,60,.22);transition:transform .16s ease}
.csh-cp-unallocated-option-toggle input:checked + .csh-cp-unallocated-option-switch{background:#2A6AF6}
.csh-cp-unallocated-option-toggle input:checked + .csh-cp-unallocated-option-switch::after{transform:translateX(18px)}
.csh-cp-unallocated-option-toggle input:focus-visible + .csh-cp-unallocated-option-switch{outline:3px solid rgba(42,106,246,.18);outline-offset:2px}
.csh-cp-unallocated-route-records{display:flex;flex-direction:column;gap:12px;max-height:420px;overflow:auto;padding-right:4px}
.csh-cp-unallocated-route-record{background:#FFFFFF;border:1px solid #DCE6F7;border-radius:16px;padding:13px;box-shadow:0 2px 14px rgba(42,106,246,.06)}
.csh-cp-unallocated-route-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.csh-cp-unallocated-route-record-head strong{display:block;color:#2A6AF6;font-size:13px;font-weight:800}
.csh-cp-unallocated-route-record-head span{display:block;color:#3A4A6A;font-size:12px;font-weight:700;margin-top:2px}
.csh-cp-unallocated-route-record-head em{font-style:normal;border-radius:999px;background:#EAF1FF;color:#2A6AF6;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;white-space:nowrap}
.csh-cp-unallocated-route-record-head em.is-warning{background:#FFF4D1;color:#9A5B00}
.csh-cp-unallocated-route-grid.is-stop-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.csh-cp-unallocated-route-grid.is-stop-grid .is-wide{grid-column:1/-1}
.csh-cp-unallocated-freight-row{display:grid;grid-template-columns:1.3fr 1fr .55fr .7fr .7fr .7fr .8fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #E4E8F4}
.csh-cp-unallocated-route-alert{border-radius:14px;border:1px solid #BFDBFE;background:#EFF6FF;color:#1A50CC;padding:11px 13px;font-size:12px;font-weight:700;line-height:1.45}
.csh-cp-unallocated-route-alert.is-error{border-color:#FECACA;background:#FEF2F2;color:#B91C1C}
.csh-cp-unallocated-route-alert.is-success{border-color:#BBF7D0;background:#F0FDF4;color:#15803D}
.csh-cp-unallocated-route-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;position:sticky;bottom:-1px;background:linear-gradient(180deg,rgba(255,255,255,.82),#FFFFFF 38%);padding:14px 0 0;margin-top:2px}
.csh-cp-unallocated-route-secondary,.csh-cp-unallocated-route-primary{border-radius:999px;font-size:13px;font-weight:800;padding:13px 18px;cursor:pointer}
.csh-cp-unallocated-route-secondary{border:1px solid #D8E3F5;background:#FFFFFF;color:#0D1F3C}
.csh-cp-unallocated-route-primary{border:0;background:#2A6AF6;color:#FFFFFF;box-shadow:0 10px 24px rgba(42,106,246,.24)}
.csh-cp-unallocated-route-primary:disabled{background:#AAB7CF;box-shadow:none;cursor:wait}
.csh-cp-unallocated-group-panel{width:min(720px,100%);max-height:min(88vh,720px)}
.csh-cp-unallocated-group-list{display:flex;flex-direction:column;gap:10px;overflow:auto;padding:2px 3px 4px;margin:2px 0 4px}
.csh-cp-unallocated-group-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #DCE6F7;border-radius:16px;background:#F8FAFF;padding:14px 15px;box-shadow:0 2px 12px rgba(42,106,246,.05)}
.csh-cp-unallocated-group-copy{min-width:0}
.csh-cp-unallocated-group-copy strong{display:block;color:#0D1F3C;font-size:14px;font-weight:900;line-height:1.3}
.csh-cp-unallocated-group-copy small{display:block;margin-top:4px;color:#7A8AAA;font-size:11px;font-weight:700;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.csh-cp-unallocated-group-create{border:0;border-radius:999px;background:#2A6AF6;color:#FFFFFF;font-family:var(--csh-cp-font, 'Sora', Arial, sans-serif);font-size:12px;font-weight:900;padding:11px 16px;cursor:pointer;box-shadow:0 9px 20px rgba(42,106,246,.20);white-space:nowrap;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}
.csh-cp-unallocated-group-create:hover,.csh-cp-unallocated-group-create:focus{outline:none;background:#1A50CC;transform:translateY(-1px);box-shadow:0 12px 24px rgba(42,106,246,.26)}
@media(max-width:760px){.csh-cp-unallocated-route-panel{padding:20px;border-radius:20px}.csh-cp-unallocated-route-summary,.csh-cp-unallocated-route-grid,.csh-cp-unallocated-route-grid.is-stop-grid{grid-template-columns:1fr}.csh-cp-unallocated-freight-row{grid-template-columns:1fr 1fr}.csh-cp-unallocated-route-section-head{align-items:flex-start;flex-direction:column}.csh-cp-unallocated-route-actions{flex-direction:column-reverse}.csh-cp-unallocated-route-secondary,.csh-cp-unallocated-route-primary{width:100%}.csh-cp-unallocated-group-row{grid-template-columns:1fr}.csh-cp-unallocated-group-create{width:100%}}


/* v1.11.13 Customer Portal Client Config + Route Builder refinements */
.csh-cp .csh-cp-client-config-panel{
	width:min(100%,940px);
}
.csh-cp .csh-cp-client-config-kicker{letter-spacing:.13em}
.csh-cp .csh-cp-client-config-enable-toggle{
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	gap:4px 10px;
	align-items:center;
	margin:0 0 14px;
	padding:11px 13px;
	border:1px solid #D7E4FF;
	border-radius:16px;
	background:#F8FAFF;
	cursor:pointer;
}
.csh-cp .csh-cp-client-config-enable-toggle input{position:absolute;opacity:0;pointer-events:none}
.csh-cp .csh-cp-client-config-enable-ui{grid-row:1/3;width:42px;height:24px;border-radius:999px;background:#CBD5E1;position:relative;box-shadow:inset 0 1px 4px rgba(13,31,60,.12);transition:background .15s ease}
.csh-cp .csh-cp-client-config-enable-ui:after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#FFFFFF;box-shadow:0 2px 6px rgba(13,31,60,.22);transition:transform .15s ease}
.csh-cp .csh-cp-client-config-enable-toggle input:checked + .csh-cp-client-config-enable-ui{background:#2A6AF6}
.csh-cp .csh-cp-client-config-enable-toggle input:checked + .csh-cp-client-config-enable-ui:after{transform:translateX(18px)}
.csh-cp .csh-cp-client-config-enable-toggle strong{font-size:12px;font-weight:900;color:#0D1F3C;line-height:1.2}
.csh-cp .csh-cp-client-config-enable-toggle em{font-size:10.5px;font-style:normal;color:#7A8AAA;font-weight:700;line-height:1.3}
.csh-cp .csh-cp-client-config-body.has-config-table{padding:0;border:0;background:transparent;overflow:hidden}
.csh-cp .csh-cp-client-config-table-wrap{width:100%;max-width:100%;padding:0 0 10px 0;border-radius:18px;box-sizing:border-box}
.csh-cp .csh-cp-client-config-table{width:100%;min-width:0;table-layout:auto}
.csh-cp .csh-cp-client-config-table th:last-child,
.csh-cp .csh-cp-client-config-table td:last-child{padding-right:28px}
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-input-wrap{min-width:150px}

.csh-cp-unallocated-route-progress,
.csh-cp-unallocated-route-price-loader{
	background:#FFFFFF;
	border:1px solid #D7E4FF;
	border-radius:18px;
	padding:26px 18px;
	text-align:center;
	box-shadow:0 10px 28px rgba(42,106,246,.08);
}
.csh-cp-unallocated-route-spinner{
	width:38px;height:38px;border:4px solid #E8F0FF;border-top-color:#2A6AF6;border-radius:50%;margin:0 auto 12px;animation:cshCpSpin .8s linear infinite;
}
@keyframes cshCpSpin{to{transform:rotate(360deg)}}
.csh-cp-unallocated-route-progress strong{display:block;color:#0D1F3C;font-size:18px;font-weight:900;margin-bottom:6px}
.csh-cp-unallocated-route-progress span{display:block;color:#3A4A6A;font-size:13px;font-weight:700;line-height:1.45}
.csh-cp-unallocated-route-price-loader{padding:46px 24px 42px}
.csh-cp-unallocated-price-kicker{display:inline-flex;border:1px solid #BFD4FF;border-radius:999px;background:#E8F0FF;color:#2A6AF6;font-size:11px;font-weight:900;letter-spacing:.12em;padding:8px 13px;margin-bottom:16px}
.csh-cp-unallocated-route-price-loader h4{margin:0 0 10px;color:#0D1F3C;font-size:36px;line-height:1.1;font-weight:950;letter-spacing:-.04em}
.csh-cp-unallocated-route-price-loader p{max-width:560px;margin:0 auto 18px;color:#3A4A6A;font-size:14px;line-height:1.55;font-weight:700}
.csh-cp-unallocated-route-price-loader em{display:inline-flex;border:1px solid #FDBA74;border-radius:999px;background:#FFF7ED;color:#9A3412;font-style:normal;font-size:12px;font-weight:900;padding:9px 14px;margin-bottom:20px}
.csh-cp-unallocated-price-track{width:min(640px,92%);height:13px;border-radius:999px;background:#E4E8F4;margin:0 auto 12px;overflow:hidden;position:relative}
.csh-cp-unallocated-price-track span{position:absolute;left:0;top:0;bottom:0;width:96%;background:#2A6AF6;border-radius:999px;animation:cshCpPulseBar 1.2s ease-in-out infinite alternate}
@keyframes cshCpPulseBar{from{opacity:.82}to{opacity:1}}
.csh-cp-unallocated-route-price-loader strong{font-size:13px;color:#0D1F3C;font-weight:900}
.csh-cp-unallocated-route-record.is-address-invalid{border-color:#EF4444;background:#FFF7F7;box-shadow:0 0 0 3px rgba(239,68,68,.08)}
.csh-cp-unallocated-route-record.is-address-invalid [data-field="address"]{border-color:#EF4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.csh-cp-unallocated-route-section[hidden],
.csh-cp-unallocated-route-progress[hidden],
.csh-cp-unallocated-route-price-loader[hidden],
.csh-cp-unallocated-route-actions button[hidden]{display:none!important}

/* v1.11.16 Route Builder automation polish */
.csh-cp-unallocated-hidden-data{display:none!important}
.csh-cp-unallocated-route-record:not(.is-address-review) .csh-cp-unallocated-address-review-field{display:none!important}
.csh-cp-unallocated-route-record.is-address-review .csh-cp-unallocated-address-review-field{display:flex!important}
.csh-cp-unallocated-route-progress{display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left;padding:10px 13px;border-radius:14px;box-shadow:0 4px 14px rgba(42,106,246,.07);margin:-4px 0 4px}
.csh-cp-unallocated-route-spinner{width:20px;height:20px;border-width:3px;margin:0;flex:0 0 auto}
.csh-cp-unallocated-route-progress strong{font-size:12px;margin:0;white-space:nowrap}
.csh-cp-unallocated-route-progress span{font-size:11.5px;line-height:1.35;margin:0;color:#3A4A6A}
@media(max-width:760px){.csh-cp-unallocated-route-progress{align-items:flex-start}.csh-cp-unallocated-route-progress strong{white-space:normal}}
.csh-cp-unallocated-route-progress[hidden],
.csh-cp-unallocated-route-price-loader[hidden]{display:none!important}

/* v1.11.18 Route Builder process checklist */
.csh-cp .csh-cp-unallocated-route-progress{align-items:flex-start;flex-wrap:wrap;padding:12px 14px;margin:2px 0 10px;border-color:#BFD4FF;background:#F8FBFF}
.csh-cp .csh-cp-unallocated-route-progress > .csh-cp-unallocated-route-spinner{margin-top:1px}
.csh-cp .csh-cp-unallocated-route-progress > strong{font-size:13px;line-height:1.35;color:#0D1F3C}
.csh-cp .csh-cp-unallocated-route-progress > span{font-size:11.5px;line-height:1.4;color:#3A4A6A;flex:1 1 320px}
.csh-cp .csh-cp-unallocated-process-list{flex:1 0 100%;display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;margin-top:10px}
.csh-cp .csh-cp-unallocated-process-step{display:flex;align-items:center;gap:8px;border:1px solid #D7E4FF;background:#FFFFFF;border-radius:12px;padding:9px 10px;color:#3A4A6A;font-size:11px;font-weight:900;line-height:1.25;box-shadow:0 2px 8px rgba(42,106,246,.05)}
.csh-cp .csh-cp-unallocated-process-step strong{font-size:11px;font-weight:900;color:inherit;margin:0;white-space:normal}
.csh-cp .csh-cp-unallocated-process-dot{width:15px;height:15px;flex:0 0 15px;border-radius:999px;border:2px solid #BFD4FF;background:#FFFFFF;position:relative}
.csh-cp .csh-cp-unallocated-process-step.is-active{border-color:#BFD4FF;background:#EAF2FF;color:#1A50CC}
.csh-cp .csh-cp-unallocated-process-step.is-active .csh-cp-unallocated-process-dot{border-color:#2A6AF6;animation:cshCpProcessPulse .9s ease-in-out infinite alternate}
.csh-cp .csh-cp-unallocated-process-step.is-done{border-color:#A7F3D0;background:#DCFCE7;color:#166534}
.csh-cp .csh-cp-unallocated-process-step.is-done .csh-cp-unallocated-process-dot{border-color:#22C55E;background:#22C55E}
.csh-cp .csh-cp-unallocated-process-step.is-done .csh-cp-unallocated-process-dot:after{content:"";position:absolute;left:3px;top:1px;width:5px;height:8px;border:solid #FFFFFF;border-width:0 2px 2px 0;transform:rotate(45deg)}
@keyframes cshCpProcessPulse{from{box-shadow:0 0 0 0 rgba(42,106,246,.20)}to{box-shadow:0 0 0 5px rgba(42,106,246,.10)}}
@media(max-width:900px){.csh-cp .csh-cp-unallocated-process-list{grid-template-columns:1fr 1fr}.csh-cp .csh-cp-unallocated-process-step{font-size:10.5px}}
@media(max-width:520px){.csh-cp .csh-cp-unallocated-process-list{grid-template-columns:1fr}}

/* v1.11.21 Customer Portal admin-user manager and Client Config change markers */
.csh-cp .csh-cp-copy-company-id[hidden]{display:none!important}
.csh-cp .csh-cp-admin-user-panel{width:min(100%,540px)}
.csh-cp .csh-cp-admin-user-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 4px}
.csh-cp .csh-cp-admin-user-fields label{margin:0;color:#3A4A6A;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.csh-cp .csh-cp-admin-user-fields label span{display:block;margin:0 0 5px}
.csh-cp .csh-cp-admin-user-fields input{min-height:38px;font-size:12px;border-radius:12px;padding:8px 10px}
.csh-cp .csh-cp-admin-user-list{min-height:120px}
.csh-cp .csh-cp-admin-user-saved-row .csh-cp-frequent-saved-text small{letter-spacing:0;text-transform:none}
.csh-cp .csh-cp-client-config-switch button,
.csh-cp .csh-cp-client-config-tabs button{display:inline-flex;align-items:center;gap:6px;position:relative}
.csh-cp .csh-cp-client-config-change-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;border-radius:999px;background:linear-gradient(135deg,#00C8B4 0%,#2A6AF6 100%);color:#FFFFFF;font-size:10px;font-weight:950;line-height:1;box-shadow:0 4px 10px rgba(42,106,246,.22)}
.csh-cp .csh-cp-client-config-switch button.active .csh-cp-client-config-change-icon{background:linear-gradient(135deg,#22C55E 0%,#00C8B4 100%);box-shadow:0 4px 10px rgba(0,200,180,.28)}
.csh-cp .csh-cp-client-config-tabs button.active .csh-cp-client-config-change-icon{background:linear-gradient(135deg,#22C55E 0%,#2A6AF6 100%)}
@media(max-width:560px){.csh-cp .csh-cp-admin-user-fields{grid-template-columns:1fr}}

/* v1.11.22 Jobs → Shifts unmatched PAYG notice and subtle Client Config markers */
.csh-cp .csh-cp-client-config-change-icon{width:7px!important;height:7px!important;min-width:7px!important;padding:0!important;border-radius:999px;background:#86EFAC!important;color:transparent!important;font-size:0!important;line-height:0!important;box-shadow:0 0 0 2px rgba(134,239,172,.28)!important}
.csh-cp .csh-cp-client-config-switch button.active .csh-cp-client-config-change-icon,
.csh-cp .csh-cp-client-config-tabs button.active .csh-cp-client-config-change-icon{background:#BBF7D0!important;box-shadow:0 0 0 2px rgba(187,247,208,.32)!important}
.csh-cp-jobs-premium-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;background:rgba(13,31,60,.58);backdrop-filter:blur(7px);padding:24px;font-family:'Sora',Arial,Helvetica,sans-serif}.csh-cp-jobs-premium-modal.is-visible{display:flex}.csh-cp-jobs-premium-panel{position:relative;width:min(500px,100%);background:#fff;border:1px solid #FECACA;border-radius:24px;box-shadow:0 24px 70px rgba(13,31,60,.26);padding:28px 30px;color:#0D1F3C}.csh-cp-jobs-premium-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:1px solid #D7DEF0;border-radius:50%;background:#F8FAFF;color:#0D1F3C;font-size:22px;line-height:1;cursor:pointer}.csh-cp-jobs-premium-kicker{display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px;padding:5px 11px;border-radius:999px;background:#FEF2F2;color:#991B1B;border:1px solid #FECACA;font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.csh-cp-jobs-premium-panel h3{margin:0 0 10px;font-size:23px;line-height:1.18;font-weight:800;color:#0D1F3C}.csh-cp-jobs-premium-panel p{margin:0 0 18px;color:#3A4A6A;font-size:14px;line-height:1.65}.csh-cp-jobs-premium-contact{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #D7E4FF;border-radius:16px;background:#F5F7FC}.csh-cp-jobs-premium-contact strong{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#7A8AAA}.csh-cp-jobs-premium-contact a{color:#2A6AF6;font-size:14px;font-weight:900;text-decoration:none}.csh-cp-jobs-premium-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#2A6AF6;color:#fff;font-weight:800;font-size:14px;padding:12px 24px;box-shadow:0 10px 24px rgba(42,106,246,.26);cursor:pointer}.csh-cp-jobs-premium-button:hover{background:#1A50CC}
@media(max-width:560px){.csh-cp-jobs-premium-panel{padding:24px 22px}.csh-cp-jobs-premium-contact{align-items:flex-start;flex-direction:column}}

/* v1.11.23 Jobs → Shifts superadmin notice refinement */
.csh-cp-jobs-premium-contact[hidden]{display:none!important}

/* v1.11.26 Customer Portal admin-list and rate-table visibility polish */
.csh-cp .csh-cp-client-config-table-wrap{
	border-bottom-left-radius:0!important;
	border-bottom-right-radius:0!important;
	padding-bottom:0!important;
}
.csh-cp .csh-cp-admin-user-locked{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;background:#F1F5F9;color:#64748B;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;padding:0 10px;white-space:nowrap}

/* v1.11.27 Customer Portal rate-table footer separation */
.csh-cp .csh-cp-client-config-panel{
	max-height:calc(100vh - 40px);
}
.csh-cp .csh-cp-client-config-form{
	flex:1 1 auto;
	min-height:0;
	display:flex;
	flex-direction:column;
	overflow:hidden;
	gap:12px;
}
.csh-cp .csh-cp-client-config-body.has-config-table{
	flex:1 1 auto;
	min-height:0;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	overflow:hidden!important;
}
.csh-cp .csh-cp-client-config-body.has-config-table .csh-cp-client-config-table-wrap{
	max-height:min(40vh,360px)!important;
	min-height:0;
	overflow:auto!important;
	border-bottom-left-radius:0!important;
	border-bottom-right-radius:0!important;
	padding-bottom:0!important;
}
.csh-cp .csh-cp-client-config-actions{
	position:relative!important;
	z-index:3;
	flex:0 0 auto;
	margin-top:0;
	padding:14px 0 0;
	border-top:1px solid rgba(228,232,244,.85);
	background:#FFFFFF;
}
@supports (height: 1dvh){
	.csh-cp .csh-cp-client-config-panel{
		max-height:calc(100dvh - 40px);
	}
	.csh-cp .csh-cp-client-config-body.has-config-table .csh-cp-client-config-table-wrap{
		max-height:min(40dvh,360px)!important;
	}
}
@media(max-width:720px){
	.csh-cp .csh-cp-client-config-body.has-config-table .csh-cp-client-config-table-wrap{
		max-height:38vh!important;
	}
	@supports (height: 1dvh){
		.csh-cp .csh-cp-client-config-body.has-config-table .csh-cp-client-config-table-wrap{
			max-height:38dvh!important;
		}
	}
}

.csh-cp-unallocated-route-record-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.csh-cp-unallocated-edit-items-button{border:1px solid #BFD4FF;background:#FFFFFF;color:#1A50CC;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.csh-cp-unallocated-edit-items-button:hover{background:#EFF6FF}
.csh-cp-unallocated-route-item-summary{margin:0 0 10px;border-radius:12px;background:#F8FAFF;border:1px dashed #D8E3F5;padding:10px 12px;color:#3A4A6A;font-size:11.5px;font-weight:700;line-height:1.5}
.csh-cp-unallocated-route-item-summary.is-warning{border-color:#FCA5A5;background:#FFF7F7;color:#B91C1C}
.csh-cp-unallocated-route-record.is-freight-missing{border-color:#FCA5A5;box-shadow:0 0 0 3px rgba(239,68,68,.08)}
.csh-cp-unallocated-alert-copy{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.csh-cp-unallocated-alert-copy strong{font-size:13px;color:inherit}
.csh-cp-unallocated-alert-copy span{font-size:12px;line-height:1.45;color:inherit;font-weight:700}
.csh-cp-unallocated-alert-buttons{display:flex;flex-wrap:wrap;gap:8px}
.csh-cp-unallocated-alert-record{border:1px solid currentColor;background:rgba(255,255,255,.7);color:inherit;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800;cursor:pointer}
.csh-cp-unallocated-freight-modal[hidden]{display:none!important}
.csh-cp-unallocated-freight-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;font-family:var(--csh-cp-font, 'Sora', Arial, sans-serif)}
.csh-cp-unallocated-freight-backdrop{position:absolute;inset:0;background:rgba(13,31,60,.48);backdrop-filter:blur(8px)}
.csh-cp-unallocated-freight-panel{position:relative;width:min(1040px,100%);max-height:min(92vh,860px);overflow:auto;background:#FFFFFF;border:1px solid #D8E3F5;border-radius:24px;box-shadow:0 28px 80px rgba(13,31,60,.30);padding:26px;color:#0D1F3C}
.csh-cp-unallocated-freight-close{position:absolute;right:18px;top:16px;width:36px;height:36px;border:0;border-radius:999px;background:#F1F5FB;color:#64748B;font-size:28px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.csh-cp-unallocated-freight-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.csh-cp-unallocated-frequent-picker{position:relative;display:inline-flex;flex-direction:column;gap:8px}
.csh-cp-unallocated-frequent-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #BCD4FF;background:#FFFFFF;color:#1A50CC;border-radius:14px;padding:12px 16px;font-size:13px;font-weight:800;min-width:260px;cursor:pointer}
.csh-cp-unallocated-frequent-trigger svg{width:18px;height:18px;flex:0 0 18px}
.csh-cp-unallocated-frequent-menu{position:absolute;top:100%;left:0;z-index:5;width:min(440px,calc(100vw - 64px));margin-top:8px;border:1px solid #DCE6F7;border-radius:18px;background:#FFFFFF;box-shadow:0 18px 38px rgba(13,31,60,.18);padding:14px}
.csh-cp-unallocated-frequent-head{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7A8AAA;margin-bottom:10px}
.csh-cp-unallocated-frequent-list{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow:auto}
.csh-cp-unallocated-frequent-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid #DCE6F7;background:#F8FAFF;color:#0D1F3C;border-radius:14px;padding:10px 12px;cursor:pointer;text-align:left}
.csh-cp-unallocated-frequent-option strong{font-size:12px}
.csh-cp-unallocated-frequent-option small{font-size:11px;line-height:1.45;color:#3A4A6A}
.csh-cp-unallocated-frequent-empty{border:1px dashed #DCE6F7;border-radius:14px;padding:14px;color:#7A8AAA;font-size:12px;font-weight:700;background:#F8FAFF}
.csh-cp-unallocated-item-table-wrap{overflow:auto;border:1px solid #DCE6F7;border-radius:16px;background:#FFFFFF}
.csh-cp-unallocated-item-table{width:100%;min-width:840px;border-collapse:separate;border-spacing:0}
.csh-cp-unallocated-item-table thead th{position:sticky;top:0;background:#F5F7FC;color:#7A8AAA;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;padding:11px 10px;border-bottom:1px solid #E4E8F4;text-align:left;white-space:nowrap}
.csh-cp-unallocated-item-table tbody td{padding:10px;border-bottom:1px solid #EEF3FB;vertical-align:top}
.csh-cp-unallocated-item-table tbody tr:last-child td{border-bottom:0}
.csh-cp-unallocated-item-table input,.csh-cp-unallocated-item-table select{width:100%;border:1px solid #BCD4FF;border-radius:12px;background:#FFFFFF;color:#0D1F3C;font-size:12px;font-weight:700;padding:9px 10px;outline:none;box-sizing:border-box}
.csh-cp-unallocated-item-table input:focus,.csh-cp-unallocated-item-table select:focus{border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.12)}
.csh-cp-unallocated-delete-item{width:34px;height:34px;border:1px solid #FCA5A5;border-radius:12px;background:#FFF7F7;color:#B91C1C;font-size:18px;font-weight:900;cursor:pointer}
.csh-cp-unallocated-freight-presets{margin:12px 0 0}
.csh-cp-unallocated-freight-presets-label{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7A8AAA;margin-bottom:10px}
.csh-cp-unallocated-freight-presets-row{display:flex;flex-wrap:wrap;gap:8px}
.csh-cp-unallocated-preset-btn,.csh-cp-unallocated-add-item{border:1px solid #BCD4FF;background:#FFFFFF;color:#2A6AF6;border-radius:12px;padding:10px 14px;font-size:12px;font-weight:800;cursor:pointer}
.csh-cp-unallocated-preset-btn:hover,.csh-cp-unallocated-add-item:hover{background:#EFF6FF}
.csh-cp-unallocated-add-item{margin-top:12px}
.csh-cp-unallocated-freight-summary{margin-bottom:14px}
@media(max-width:760px){.csh-cp-unallocated-route-record-actions{align-items:flex-start}.csh-cp-unallocated-freight-panel{padding:20px;border-radius:20px}.csh-cp-unallocated-freight-toolbar{flex-direction:column;align-items:stretch}.csh-cp-unallocated-frequent-trigger{width:100%;min-width:0}.csh-cp-unallocated-frequent-menu{position:static;width:100%;margin-top:10px}.csh-cp-unallocated-item-table{min-width:720px}}


/* v1.11.57 mobile-only account company dropdown containment */
@media (max-width: 620px) {
  .csh-cp-account-switcher .csh-cp-account-menu {
    left: 50%;
    right: auto;
    width: calc(100vw - 24px);
    min-width: 0;
    max-width: calc(100vw - 24px);
    transform: translateX(-50%);
    box-sizing: border-box;
  }

  .csh-cp-account-company-option,
  .csh-cp-account-menu-head,
  .csh-cp-account-company-search-wrap,
  .csh-cp-account-menu-footer {
    box-sizing: border-box;
  }

  .csh-cp-account-company-name {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}

/* v1.11.64 Create Route freight detail preloader */
.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-route-progress{
	min-height:190px;
	margin:14px 0 8px;
	padding:34px 24px;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	text-align:center;
	border-color:#BFD4FF;
	background:#F8FBFF;
}
.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-route-spinner{
	width:42px;
	height:42px;
	border-width:4px;
	margin:0 0 4px;
}
.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-route-progress > strong{
	font-size:17px;
	line-height:1.3;
	white-space:normal;
}
.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-route-progress > span{
	max-width:560px;
	flex:0 1 auto;
	font-size:13px;
	line-height:1.55;
}
.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-process-list{
	display:none!important;
}
@media(max-width:620px){
	.csh-cp .csh-cp-unallocated-route-modal.is-fetching-freight-items .csh-cp-unallocated-route-progress{
		min-height:160px;
		padding:28px 18px;
	}
}

/* v1.11.73 Customer Config audit attribution */
.csh-cp .csh-cp-client-config-actions{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
}
.csh-cp .csh-cp-client-config-last-modified{
	margin:0;
	min-width:0;
	color:#7A8AAA;
	font-size:10.5px;
	font-weight:750;
	line-height:1.35;
}
.csh-cp .csh-cp-client-config-last-modified strong{
	color:#0D1F3C;
	font-weight:900;
}
.csh-cp .csh-cp-client-config-action-buttons{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:10px;
	flex:0 0 auto;
}
@media(max-width:720px){
	.csh-cp .csh-cp-client-config-actions{
		flex-direction:column;
		align-items:stretch;
	}
	.csh-cp .csh-cp-client-config-last-modified{
		order:2;
		text-align:left;
	}
	.csh-cp .csh-cp-client-config-action-buttons{
		order:1;
		width:100%;
	}
	.csh-cp .csh-cp-client-config-action-buttons button{
		width:100%;
	}
}

/* v1.11.81 Superadmin and Premium portal controls refinement */
.csh-cp .csh-cp-page-head-tools{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;position:relative;z-index:30}
.csh-cp .csh-cp-page-head-tools .csh-cp-frequent-actions{margin-left:0}
.csh-cp .csh-cp-superadmin-actions{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 auto;z-index:32}
.csh-cp .csh-cp-superadmin-actions[hidden],.csh-cp .csh-cp-superadmin-button[hidden],.csh-cp .csh-cp-superadmin-menu[hidden]{display:none!important}
.csh-cp .csh-cp-superadmin-button{position:relative;width:44px;height:44px;border:1px solid #D7E4FF;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#0D1F3C;background:#F5F7FC;box-shadow:0 10px 26px rgba(13,31,60,.12),0 2px 8px rgba(42,106,246,.10);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease,color .16s ease}
.csh-cp .csh-cp-superadmin-button:before{content:none}
.csh-cp .csh-cp-superadmin-button:hover,.csh-cp .csh-cp-superadmin-button:focus,.csh-cp .csh-cp-superadmin-actions.is-open .csh-cp-superadmin-button{outline:none;transform:translateY(-1px);color:#2A6AF6;border-color:#93C5FD;background:#E8F0FE;box-shadow:0 16px 34px rgba(42,106,246,.20),0 4px 12px rgba(13,31,60,.10)}
.csh-cp .csh-cp-superadmin-menu{position:absolute;top:58px;right:0;width:min(310px,calc(100vw - 36px));padding:10px;border:1px solid #CBD5E1;border-radius:18px;background:linear-gradient(160deg,#F8FAFC 0%,#E2E8F0 38%,#FFFFFF 100%);box-shadow:0 22px 54px rgba(13,31,60,.24);z-index:100;overflow:visible}
.csh-cp .csh-cp-superadmin-menu:before{content:"";position:absolute;right:16px;top:-7px;width:13px;height:13px;background:#EEF2F7;border-left:1px solid #CBD5E1;border-top:1px solid #CBD5E1;transform:rotate(45deg)}
.csh-cp .csh-cp-superadmin-menu-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px 10px;color:#0D1F3C}
.csh-cp .csh-cp-superadmin-menu-head strong{font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.csh-cp .csh-cp-superadmin-menu-head small{font-size:9px;font-weight:850;color:#64748B;text-transform:uppercase;letter-spacing:.08em}
.csh-cp .csh-cp-superadmin-menu-item{position:relative;width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;text-align:left;border:1px solid rgba(203,213,225,.78);border-radius:14px;background:rgba(255,255,255,.82);color:#0D1F3C;padding:11px 12px;margin:0 0 8px;cursor:pointer;font-family:'Sora',Arial,Helvetica,sans-serif;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
.csh-cp .csh-cp-superadmin-menu-item:last-of-type{margin-bottom:0}
.csh-cp .csh-cp-superadmin-menu-item:hover,.csh-cp .csh-cp-superadmin-menu-item:focus{outline:none;transform:translateY(-1px);border-color:#93B7FF;background:#FFFFFF;box-shadow:0 9px 20px rgba(42,106,246,.12)}
.csh-cp .csh-cp-superadmin-menu-icon{width:32px;height:32px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;color:#1A50CC;background:linear-gradient(145deg,#FFFFFF,#DCE7F7);border:1px solid #C7D7EE;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.csh-cp .csh-cp-superadmin-menu-item>span:last-child strong{display:block;font-size:12px;font-weight:950;line-height:1.25;color:#0D1F3C}
.csh-cp .csh-cp-superadmin-menu-item>span:last-child small{display:block;margin-top:3px;font-size:10px;font-weight:700;line-height:1.35;color:#64748B}
.csh-cp .csh-cp-superadmin-menu-status{min-height:0;padding:0 8px;color:#64748B;font-size:10px;font-weight:750}
.csh-cp .csh-cp-superadmin-menu-status.is-error{padding-top:8px;color:#B91C1C}
.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-panel{border-color:#B8C4D4;background:linear-gradient(180deg,#EEF2F7 0,#FFFFFF 128px);box-shadow:0 32px 94px rgba(13,31,60,.36),0 0 0 1px rgba(255,255,255,.8) inset}
.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-kicker{color:#0D1F3C;background:linear-gradient(135deg,#FFFFFF 0%,#CBD5E1 65%,#E8F0FE 100%);border:1px solid #B8C4D4;box-shadow:0 7px 18px rgba(13,31,60,.12)}
.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-summary>div{background:rgba(255,255,255,.84);border-color:#CBD5E1}
.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-primary{background:linear-gradient(135deg,#64748B 0%,#334155 45%,#2A6AF6 100%);box-shadow:0 12px 28px -10px rgba(51,65,85,.55)}
.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-primary:hover,.csh-cp .csh-cp-client-config-modal.is-global-config .csh-cp-client-config-primary:focus{background:linear-gradient(135deg,#475569 0%,#1E293B 46%,#1A50CC 100%)}
.csh-cp .csh-cp-client-config-enable-toggle[hidden]{display:none!important}
@media(max-width:760px){.csh-cp .csh-cp-page-head-tools{margin-left:0;justify-content:flex-start}.csh-cp .csh-cp-superadmin-menu{left:0;right:auto}.csh-cp .csh-cp-superadmin-menu:before{left:16px;right:auto}}

/* v1.11.88 Combined booking-history range and MachShip range notice */
.csh-cp .csh-cp-history-window.is-disabled .csh-cp-history-window-shell{opacity:.66}
.csh-cp .csh-cp-history-window select:disabled{cursor:not-allowed;background:#F1F5F9;border-color:#CBD5E1;color:#64748B;box-shadow:none}
.csh-cp .csh-cp-history-window.is-disabled .csh-cp-history-window-arrow{color:#94A3B8}
.csh-cp .csh-cp-history-window-notice{flex:1 0 100%;display:flex;align-items:center;max-width:760px;margin-top:1px;padding:8px 11px;border:1px solid #F4D38A;border-radius:12px;background:#FFF8E7;color:#7A4B00;font-size:10.5px;font-weight:800;line-height:1.45;box-sizing:border-box}
.csh-cp .csh-cp-history-window-notice[hidden]{display:none!important}

/* v1.11.89 Booking-history range, MachShip notice, and delayed loader */
.csh-cp .csh-cp-history-status-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.csh-cp .csh-cp-machship-window-tag{display:inline-flex;align-items:center;border:1px solid #F4D38A;border-radius:999px;background:#FFF8E7;color:#7A4B00;padding:3px 7px;font-size:9px;font-weight:900;line-height:1.2;letter-spacing:.02em;white-space:nowrap}
.csh-cp .csh-cp-machship-window-tag[hidden]{display:none!important}
.csh-cp .csh-cp-history-loading{display:inline-flex;align-items:center;gap:6px;border:1px solid #BFDBFE;border-radius:999px;background:#FFFFFF;color:#2A6AF6;padding:4px 8px;font-size:9px;font-weight:900;line-height:1;white-space:nowrap;box-shadow:0 5px 14px rgba(42,106,246,.10)}
.csh-cp .csh-cp-history-loading[hidden]{display:none!important}
.csh-cp .csh-cp-history-loading-spinner{width:11px;height:11px;border:2px solid rgba(42,106,246,.20);border-top-color:#2A6AF6;border-radius:50%;animation:csh-cp-history-spin .7s linear infinite}
@keyframes csh-cp-history-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.csh-cp .csh-cp-history-loading-spinner{animation:none}}
@media(max-width:640px){.csh-cp .csh-cp-history-toolbar{align-items:flex-start}.csh-cp .csh-cp-history-status-line{gap:6px}.csh-cp .csh-cp-machship-window-tag{white-space:normal}}

/* v1.11.91 Premium customer vehicle availability */
.csh-cp .csh-cp-client-config-table .csh-cp-client-config-availability-head,
.csh-cp .csh-cp-client-config-table td.csh-cp-client-config-availability-cell{
	width:64px;
	min-width:64px;
	max-width:64px;
	text-align:center;
}
.csh-cp .csh-cp-client-config-table td.csh-cp-client-config-vehicle-cell{
	width:auto;
	min-width:112px;
	max-width:150px;
}
.csh-cp .csh-cp-client-config-table td.csh-cp-client-config-vehicle-cell strong{
	display:block;
	font-size:11.5px;
	font-weight:900;
	letter-spacing:-.01em;
	white-space:nowrap;
	color:#0D1F3C;
}
.csh-cp .csh-cp-client-config-table td.csh-cp-client-config-id-cell{
	width:42px;
	min-width:42px;
	max-width:42px;
	text-align:center;
}
.csh-cp .csh-cp-client-config-table td.csh-cp-client-config-id-cell span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:22px;
	padding:3px 7px;
	border-radius:999px;
	background:#E8F0FE;
	color:#2A6AF6;
	font-size:9px;
	font-weight:900;
}
.csh-cp .csh-cp-client-config-availability-check{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:20px;
	height:20px;
	cursor:pointer;
}
.csh-cp .csh-cp-client-config-availability-check input{
	position:absolute;
	opacity:0;
	width:1px;
	height:1px;
	pointer-events:none;
}
.csh-cp .csh-cp-client-config-availability-check span{
	display:block;
	width:16px;
	height:16px;
	box-sizing:border-box;
	border:1.5px solid #9BB8EB;
	border-radius:5px;
	background:#FFFFFF;
	box-shadow:inset 0 1px 2px rgba(13,31,60,.06);
	transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.csh-cp .csh-cp-client-config-availability-check input:checked + span{
	border-color:#2A6AF6;
	background:#2A6AF6;
	box-shadow:0 2px 7px rgba(42,106,246,.22);
}
.csh-cp .csh-cp-client-config-availability-check input:checked + span:after{
	content:'✓';
	display:block;
	color:#FFFFFF;
	font-size:12px;
	font-weight:900;
	line-height:13px;
	text-align:center;
}
.csh-cp .csh-cp-client-config-availability-check input:focus-visible + span{
	outline:2px solid #2A6AF6;
	outline-offset:2px;
}
.csh-cp .csh-cp-client-config-availability-note{
	margin:10px 2px 0;
	padding:9px 11px;
	border:1px solid #D7E4FF;
	border-radius:12px;
	background:#F5F7FC;
	color:#3A4A6A;
	font-size:10.5px;
	font-weight:750;
	line-height:1.45;
}

/* v1.12.23 Compact Route Builder sizing for smaller laptop viewports. */
@media (max-height:850px) and (min-width:761px){
  .csh-cp-unallocated-route-panel{max-height:95vh;padding:20px 22px;border-radius:22px}
  .csh-cp-unallocated-route-kicker{font-size:9px;padding:6px 10px;margin-bottom:7px}
  .csh-cp-unallocated-route-panel h3{font-size:22px;margin-bottom:3px}
  .csh-cp-unallocated-route-copy{font-size:11.5px;line-height:1.45;margin-bottom:10px}
  .csh-cp-unallocated-route-summary{gap:10px;margin-bottom:12px}
  .csh-cp-unallocated-route-summary>div{padding:10px 12px;border-radius:13px}
  .csh-cp-unallocated-route-summary span{font-size:8.5px}
  .csh-cp-unallocated-route-summary strong{font-size:12.5px}
  .csh-cp-unallocated-route-form{gap:10px}
  .csh-cp-unallocated-route-section{padding:11px 12px;border-radius:16px}
  .csh-cp-unallocated-route-section-head{margin-bottom:8px;padding-bottom:8px}
  .csh-cp-unallocated-route-section-head strong{font-size:12.5px}
  .csh-cp-unallocated-route-section-head span{font-size:9.5px}
  .csh-cp-unallocated-route-grid{gap:8px 10px}
  .csh-cp-unallocated-route-grid label,.csh-cp-unallocated-freight-row label{font-size:8.5px;gap:4px}
  .csh-cp-unallocated-route-grid input,.csh-cp-unallocated-route-grid textarea,.csh-cp-unallocated-freight-row input,.csh-cp-unallocated-freight-row select{font-size:11.5px;padding:8px 10px;border-radius:10px}
  .csh-cp-unallocated-route-grid textarea{min-height:42px}
  .csh-cp-unallocated-option-toggle{padding:8px 0}
  .csh-cp-unallocated-option-copy{gap:2px}
  .csh-cp-unallocated-option-copy strong{font-size:11px}
  .csh-cp-unallocated-option-copy small{font-size:9px}
  .csh-cp-unallocated-option-copy em{font-size:7px;padding:2px 6px}
  .csh-cp-unallocated-option-switch{flex-basis:38px;width:38px;height:22px}
  .csh-cp-unallocated-option-switch::after{width:16px;height:16px}
  .csh-cp-unallocated-option-toggle input:checked + .csh-cp-unallocated-option-switch::after{transform:translateX(16px)}
  .csh-cp-unallocated-route-actions{padding-top:10px}
  .csh-cp-unallocated-route-secondary,.csh-cp-unallocated-route-primary{font-size:11.5px;padding:11px 16px}
}

/* v1.12.26 Global Vehicle Selection settings. */
.csh-cp .csh-cp-client-config-tabs[hidden]{display:none!important}
.csh-cp .csh-cp-client-config-body.has-vehicle-selection{
  flex:1 1 auto;
  min-height:0;
  padding:14px;
  overflow:auto;
}
.csh-cp .csh-cp-vehicle-selection-settings{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.csh-cp .csh-cp-vehicle-selection-control{
  min-width:0;
  border:1px solid #DCE6F7;
  border-radius:14px;
  background:#F8FAFF;
  padding:12px 14px;
}
.csh-cp .csh-cp-vehicle-selection-control>span:first-child strong{font-size:11.5px}
.csh-cp .csh-cp-vehicle-selection-control>span:first-child small{font-size:9.5px;line-height:1.45}
.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap{justify-content:flex-end;min-width:142px}
.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap input{width:72px}
.csh-cp .csh-cp-vehicle-selection-table-wrap{
  max-height:min(36vh,340px);
  overflow:auto;
  border:1px solid #DCE6F7;
  border-radius:16px!important;
  padding:0!important;
}
.csh-cp .csh-cp-vehicle-selection-table{min-width:620px;table-layout:auto}
.csh-cp .csh-cp-vehicle-selection-table th,
.csh-cp .csh-cp-vehicle-selection-table td{padding:9px 12px;text-align:right;white-space:nowrap}
.csh-cp .csh-cp-vehicle-selection-table th:first-child,
.csh-cp .csh-cp-vehicle-selection-table td:first-child{text-align:left;min-width:132px}
.csh-cp .csh-cp-vehicle-selection-table th:nth-child(3),
.csh-cp .csh-cp-vehicle-selection-table td:nth-child(3),
.csh-cp .csh-cp-vehicle-selection-table th:nth-child(5),
.csh-cp .csh-cp-vehicle-selection-table td:nth-child(5){background:#EFF6FF;color:#1A50CC;font-weight:850}
.csh-cp .csh-cp-vehicle-selection-note{
  margin:12px 0 0;
  padding:10px 12px;
  border-left:3px solid #2A6AF6;
  border-radius:10px;
  background:#F5F7FC;
  color:#3A4A6A;
  font-size:10px;
  font-weight:700;
  line-height:1.5;
}
@media(max-width:720px){
  .csh-cp .csh-cp-client-config-body.has-vehicle-selection{padding:10px}
  .csh-cp .csh-cp-vehicle-selection-settings{grid-template-columns:1fr}
  .csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap{justify-content:flex-start}
  .csh-cp .csh-cp-vehicle-selection-table-wrap{max-height:42vh}
}
.csh-cp .csh-cp-vehicle-selection-table td:nth-child(2){width:auto}
.csh-cp .csh-cp-vehicle-selection-table td:nth-child(2) span{min-width:0;padding:0;background:transparent}

/* v1.12.27 Vehicle Selection validation hardening. */
.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap input.is-invalid{
  border-color:#EF4444!important;
  background:#FFF7F7;
  box-shadow:0 0 0 3px rgba(239,68,68,.12)!important;
}


/* v1.12.29 Vehicle Selection aligned with the Client charge vehicle table. */
.csh-cp .csh-cp-client-config-body.has-vehicle-selection{display:flex;flex-direction:column;gap:10px;padding:0!important;overflow:hidden!important}
.csh-cp .csh-cp-vehicle-selection-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0}
.csh-cp .csh-cp-vehicle-selection-control{min-width:0;min-height:58px;margin:0;border:1px solid #D7E4FF;border-radius:14px;background:#FFFFFF;padding:10px 12px;box-shadow:0 2px 10px rgba(42,106,246,.05)}
.csh-cp .csh-cp-vehicle-selection-control>span:first-child strong{color:#0D1F3C;font-size:10.5px;font-weight:900;letter-spacing:.015em}
.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap{min-width:150px;justify-content:flex-end;gap:5px;white-space:nowrap}
.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap input{width:76px;padding:8px 9px;border-radius:10px;font-size:11px;font-weight:850}
.csh-cp .csh-cp-vehicle-selection-table-wrap{flex:1 1 auto;min-height:0;width:100%;max-height:min(43vh,365px)!important;overflow:auto!important;border:1px solid #D7E4FF!important;border-radius:0!important;background:#FFFFFF;padding:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 20px rgba(42,106,246,.06)}
.csh-cp .csh-cp-vehicle-selection-table{width:100%;min-width:900px;table-layout:auto;border-collapse:separate;border-spacing:0}
.csh-cp .csh-cp-vehicle-selection-table th,.csh-cp .csh-cp-vehicle-selection-table td{padding:9px 10px;text-align:left;white-space:nowrap}
.csh-cp .csh-cp-vehicle-selection-table th:first-child,.csh-cp .csh-cp-vehicle-selection-table td:first-child{min-width:132px;text-align:left}
.csh-cp .csh-cp-vehicle-selection-table th:nth-child(2),.csh-cp .csh-cp-vehicle-selection-table td:nth-child(2){width:48px;min-width:48px;text-align:center}
.csh-cp .csh-cp-vehicle-selection-table th:nth-child(3),.csh-cp .csh-cp-vehicle-selection-table td:nth-child(3),.csh-cp .csh-cp-vehicle-selection-table th:nth-child(5),.csh-cp .csh-cp-vehicle-selection-table td:nth-child(5){background:inherit;color:inherit;font-weight:inherit}
.csh-cp .csh-cp-vehicle-selection-table th:nth-child(4),.csh-cp .csh-cp-vehicle-selection-table td:nth-child(4),.csh-cp .csh-cp-vehicle-selection-table th:nth-child(6),.csh-cp .csh-cp-vehicle-selection-table td:nth-child(6){background:#F8FBFF}
.csh-cp .csh-cp-vehicle-selection-capacity{display:inline-flex;align-items:center;gap:5px;min-width:95px;color:#0D1F3C}
.csh-cp .csh-cp-vehicle-selection-capacity strong{font-size:11px;font-weight:900}
.csh-cp .csh-cp-vehicle-selection-capacity em{color:#3A4A6A;font-size:9px;font-style:normal;font-weight:850}
.csh-cp .csh-cp-vehicle-selection-display{min-width:170px!important;justify-content:flex-start!important;gap:5px!important}
.csh-cp .csh-cp-vehicle-selection-value{display:inline-flex;align-items:center;min-width:76px;min-height:34px;padding:7px 9px;border:1px solid #BFD4FF;border-radius:10px;background:#FFFFFF;color:#0D1F3C;font-size:11px;font-weight:900;line-height:1;box-sizing:border-box}
.csh-cp .csh-cp-vehicle-selection-display>em{font-size:9px;font-weight:850}
.csh-cp .csh-cp-vehicle-selection-display .csh-cp-client-config-default{background:#EEF3F8;color:#64748B;border-color:#DCE5EF}
.csh-cp .csh-cp-vehicle-selection-note{flex:0 0 auto;margin:0;padding:8px 11px;border:1px solid #D7E4FF;border-left:3px solid #2A6AF6;border-radius:10px;background:#F8FAFF;color:#3A4A6A;font-size:9.5px;font-weight:700;line-height:1.45}
@media(max-width:720px){.csh-cp .csh-cp-client-config-body.has-vehicle-selection{overflow:auto!important}.csh-cp .csh-cp-vehicle-selection-settings{grid-template-columns:1fr}.csh-cp .csh-cp-vehicle-selection-control .csh-cp-client-config-input-wrap{justify-content:flex-start}.csh-cp .csh-cp-vehicle-selection-table-wrap{min-height:260px;max-height:42vh!important}}
.csh-cp .csh-cp-vehicle-selection-table td.csh-cp-client-config-id-cell span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:3px 7px;border-radius:999px;background:#E8F0FE;color:#2A6AF6;font-size:9px;font-weight:900;line-height:1.2}


/* v1.12.30 Vehicle Selection read-only output consistency. */
.csh-cp .csh-cp-vehicle-selection-table td{
  border-left:0!important;
  border-right:0!important;
}
.csh-cp .csh-cp-vehicle-selection-output{
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  min-width:92px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#0D1F3C;
  box-shadow:none;
  cursor:default;
}
.csh-cp .csh-cp-vehicle-selection-output strong{
  color:#0D1F3C;
  font-size:11.5px;
  font-weight:900;
  letter-spacing:-.01em;
  line-height:1.2;
}
.csh-cp .csh-cp-vehicle-selection-output em{
  color:#3A4A6A;
  font-size:9px;
  font-style:normal;
  font-weight:850;
  line-height:1.2;
}
.csh-cp .csh-cp-vehicle-selection-output small{
  margin-left:3px;
  padding:0;
  border:0;
  background:transparent;
  color:#7A8AAA;
  font-size:7.5px;
  font-weight:850;
  letter-spacing:.035em;
  line-height:1.2;
  text-transform:uppercase;
}
.csh-cp .csh-cp-vehicle-selection-table .csh-cp-vehicle-selection-value,
.csh-cp .csh-cp-vehicle-selection-table .csh-cp-vehicle-selection-display{
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* v1.12.43 staging-only All Booking History search */
.csh-cp .csh-cp-all-history-search-row{display:flex;justify-content:flex-end;margin:12px 0 10px}
.csh-cp .csh-cp-all-history-search-row[hidden]{display:none!important}
.csh-cp .csh-cp-all-history-search{position:relative;display:flex;align-items:center;width:min(100%,430px);min-height:40px;margin:0;border:1px solid #D7E4FF;border-radius:14px;background:#FFFFFF;box-shadow:0 4px 14px rgba(42,106,246,.07);text-transform:none;letter-spacing:0}
.csh-cp .csh-cp-all-history-search:focus-within{border-color:#2A6AF6;box-shadow:0 0 0 3px rgba(42,106,246,.12),0 7px 18px rgba(42,106,246,.09)}
.csh-cp .csh-cp-all-history-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:#2A6AF6;pointer-events:none}
.csh-cp .csh-cp-all-history-search-icon svg{width:18px;height:18px;display:block}
.csh-cp .csh-cp-all-history-search input{width:100%;min-height:38px;margin:0;padding:8px 40px 8px 42px;border:0;border-radius:14px;background:transparent;color:#0D1F3C;font-family:inherit;font-size:12px;font-weight:700;outline:none;box-shadow:none}
.csh-cp .csh-cp-all-history-search input::placeholder{color:#8A93A8;font-weight:600}
.csh-cp .csh-cp-all-history-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:999px;background:#F5F7FC;color:#64748B;font-family:inherit;font-size:18px;line-height:1;cursor:pointer}
.csh-cp .csh-cp-all-history-search-clear:hover,.csh-cp .csh-cp-all-history-search-clear:focus-visible{background:#E8F0FE;color:#1A50CC;outline:none}
.csh-cp .csh-cp-all-history-search-clear[hidden]{display:none!important}
@media(max-width:640px){.csh-cp .csh-cp-all-history-search-row{justify-content:stretch}.csh-cp .csh-cp-all-history-search{width:100%}}

/* v1.12.46 staging-only multi-depot history route context */
.csh-cp-history-depot-group{
	display:flex;
	flex-direction:column;
	gap:9px;
	padding:0 0 4px;
}
.csh-cp-history-depot-group + .csh-cp-history-depot-group{
	margin-top:4px;
	padding-top:12px;
	border-top:1px solid #dbe4f0;
}
.csh-cp-history-depot-header{
	display:flex;
	align-items:center;
	gap:10px;
	min-height:48px;
	padding:9px 11px;
	border:1px solid #cfe0ff;
	border-radius:13px;
	background:#f3f7ff;
	color:#0d1f3c;
}
.csh-cp-history-depot-header.is-route-point{
	border-color:#b7efe6;
	background:#effcf9;
}
.csh-cp-history-depot-icon{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 30px;
	width:30px;
	height:30px;
	border-radius:9px;
	background:#2a6af6;
	color:#fff;
}
.csh-cp-history-depot-header.is-route-point .csh-cp-history-depot-icon{
	background:#00aF9f;
}
.csh-cp-history-depot-copy{
	display:flex;
	flex-direction:column;
	gap:2px;
	min-width:0;
	flex:1 1 auto;
}
.csh-cp-history-depot-copy strong{
	font-size:11px;
	font-weight:900;
	letter-spacing:.04em;
	text-transform:uppercase;
	color:#0d1f3c;
}
.csh-cp-history-depot-copy span{
	font-size:11px;
	font-weight:650;
	color:#64748b;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.csh-cp-history-depot-header em{
	font-style:normal;
	font-size:9px;
	font-weight:900;
	letter-spacing:.05em;
	text-transform:uppercase;
	color:#047857;
	background:#dff9f2;
	border:1px solid #a7f3d0;
	border-radius:999px;
	padding:4px 8px;
	white-space:nowrap;
}
.csh-cp-history-return-tag{
	display:inline-flex;
	align-items:center;
	border:1px solid #99f6e4;
	border-radius:999px;
	background:#ecfdf5;
	color:#047857;
	padding:3px 7px;
	font-size:8px;
	font-weight:900;
	letter-spacing:.05em;
	text-transform:uppercase;
	white-space:nowrap;
}
@media(max-width:640px){
	.csh-cp-history-depot-header{align-items:flex-start}
	.csh-cp-history-depot-header em{display:none}
	.csh-cp-history-depot-copy span{white-space:normal}
}


/* v1.12.49 staging-only booking count and detail controls */
.csh-cp-booking-items.has-route-counts{
	display:inline-flex;
	align-items:center;
	justify-content:flex-end;
	gap:5px;
	flex-wrap:wrap;
}
.csh-cp-booking-count-part{display:inline-flex;align-items:center;white-space:nowrap}
.csh-cp-booking-count-divider{color:#94A3B8;font-weight:800}


/* Unallocated Sync route-builder address review */
.csh-cp .csh-cp-unallocated-route-grid input.is-address-invalid,
.csh-cp .csh-cp-unallocated-route-record input.is-address-invalid{border-color:#EF4444;box-shadow:0 0 0 3px rgba(239,68,68,.12);background:#FFF7F7}
.csh-cp .csh-cp-route-address-suggestions{display:flex;flex-direction:column;gap:7px;margin-top:5px;padding:10px;border:1px solid #FECACA;border-radius:12px;background:#FFF7F7}
.csh-cp .csh-cp-route-address-message{color:#B91C1C;font-size:10.5px;font-weight:800;line-height:1.45;text-transform:none;letter-spacing:0}
.csh-cp .csh-cp-route-address-suggestion-list{display:flex;flex-direction:column;gap:6px}
.csh-cp .csh-cp-route-address-suggestion{width:100%;border:1px solid #BFD4FF;border-radius:10px;background:#FFFFFF;color:#1A50CC;padding:9px 10px;text-align:left;font-family:var(--csh-cp-font,'Sora',Arial,sans-serif);font-size:10.5px;font-weight:800;line-height:1.35;cursor:pointer}
.csh-cp .csh-cp-route-address-suggestion:hover,.csh-cp .csh-cp-route-address-suggestion:focus{border-color:#2A6AF6;background:#EFF6FF;outline:none;box-shadow:0 0 0 3px rgba(42,106,246,.12)}


/* v1.12.97 customer portal route editor UI prototype */
.csh-cp-shift-consignments-title{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
}
.csh-cp-shift-consignments-title>span{
	min-width:0;
}
.csh-cp-edit-route-btn{
	flex:0 0 auto;
	border-color:rgba(42,106,246,.24)!important;
	background:rgba(42,106,246,.08)!important;
	color:#1A50CC!important;
	letter-spacing:0!important;
	text-transform:none!important;
}
.csh-cp-edit-route-btn:hover,.csh-cp-edit-route-btn:focus-visible{
	background:rgba(42,106,246,.14)!important;
	color:#0F44C8!important;
	box-shadow:0 8px 20px rgba(42,106,246,.14)!important;
}
.csh-cp-edit-route-btn svg{
	display:block!important;
	flex:0 0 auto;
}
.csh-cp-edit-route-btn.is-disabled{
	border-color:#CDD4E0!important;
	background:#F1F3F7!important;
	color:#8A93A8!important;
	box-shadow:none!important;
	cursor:not-allowed!important;
	opacity:.82;
}
.csh-cp-edit-route-btn.is-disabled:hover,.csh-cp-edit-route-btn.is-disabled:focus-visible{
	border-color:#B8C0CE!important;
	background:#EAEEF4!important;
	color:#687386!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.10)!important;
}
.csh-cp-edit-route-disabled-popover{
	position:absolute;
	z-index:100000;
	box-sizing:border-box;
	padding:16px 42px 15px 16px;
	border:1px solid #E4E8F4;
	border-radius:14px;
	background:#FFFFFF;
	box-shadow:0 14px 36px rgba(13,31,60,.18);
	font-family:'Sora',Arial,sans-serif;
	color:#0D1F3C;
}
.csh-cp-edit-route-disabled-popover strong{display:block;margin:0 0 6px;font-size:13px;line-height:1.35}
.csh-cp-edit-route-disabled-popover p{margin:0;color:#3A4A6A;font-size:12px;line-height:1.55}
.csh-cp-edit-route-disabled-popover-close{position:absolute;top:8px;right:9px;width:28px;height:28px;border:0;border-radius:999px;background:#F5F7FC;color:#3A4A6A;font-size:20px;line-height:26px;cursor:pointer}
.csh-cp-edit-route-disabled-popover-close:hover,.csh-cp-edit-route-disabled-popover-close:focus-visible{background:#E8F0FE;color:#1A50CC;outline:2px solid rgba(42,106,246,.18)}
html.csh-cp-route-editor-open,
html.csh-cp-route-editor-open body{
	overflow:hidden!important;
}
.csh-cp-route-editor-modal,
.csh-cp-route-editor-modal *{
	box-sizing:border-box;
}
.csh-cp-route-editor-modal{
	position:fixed;
	inset:0;
	z-index:1000000;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:22px;
	font-family:'Sora',Arial,Helvetica,sans-serif;
	color:#0D1F3C;
}
.csh-cp-route-editor-backdrop{
	position:absolute;
	inset:0;
	background:rgba(13,31,60,.68);
	backdrop-filter:blur(8px);
}
.csh-cp-route-editor-panel{
	position:relative;
	z-index:1;
	display:flex;
	flex-direction:column;
	width:min(960px,100%);
	max-height:calc(100vh - 44px);
	background:#F7F9FC;
	border:1px solid rgba(255,255,255,.72);
	border-radius:24px;
	box-shadow:0 28px 90px rgba(13,31,60,.34);
	overflow:hidden;
}
.csh-cp-route-editor-header{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:20px;
	padding:23px 26px 20px;
	background:#FFFFFF;
	border-bottom:1px solid #E4E8F4;
}
.csh-cp-route-editor-kicker{
	display:block;
	margin-bottom:5px;
	color:#2A6AF6;
	font-size:10px;
	font-weight:900;
	letter-spacing:.11em;
	text-transform:uppercase;
}
.csh-cp-route-editor-header h2{
	margin:0;
	color:#0D1F3C;
	font-size:24px;
	font-weight:900;
	line-height:1.15;
}
.csh-cp-route-editor-header p{
	margin:6px 0 0;
	max-width:720px;
	color:#64748B;
	font-size:11px;
	font-weight:650;
	line-height:1.45;
}
.csh-cp-route-editor-close{
	display:flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	flex:0 0 36px;
	margin:0;
	padding:0;
	border:1px solid #DDE4EF;
	border-radius:50%;
	background:#FFFFFF;
	color:#64748B;
	font:500 24px/1 Arial,sans-serif;
	cursor:pointer;
}
.csh-cp-route-editor-close:hover,.csh-cp-route-editor-close:focus{
	outline:none;
	border-color:#93C5FD;
	background:#EFF6FF;
	color:#1D4ED8;
}
.csh-cp-route-editor-body{
	padding:20px 22px 26px;
	overflow:auto;
	overscroll-behavior:contain;
}
.csh-cp-route-editor-api-note{
	display:flex;
	align-items:center;
	gap:10px;
	margin-bottom:14px;
	padding:11px 13px;
	border:1px solid #BFDBFE;
	border-radius:12px;
	background:#EFF6FF;
	color:#1E3A8A;
	font-size:11px;
	line-height:1.45;
}
.csh-cp-route-editor-api-note strong{
	flex:0 0 auto;
	padding:3px 8px;
	border-radius:999px;
	background:#2A6AF6;
	color:#FFFFFF;
	font-size:9px;
	font-weight:900;
	letter-spacing:.07em;
	text-transform:uppercase;
}
.csh-cp-route-editor-notice{
	margin-bottom:14px;
	padding:11px 13px;
	border:1px solid #BFDBFE;
	border-radius:12px;
	background:#EFF6FF;
	color:#1D4ED8;
	font-size:11px;
	font-weight:750;
	line-height:1.45;
}
.csh-cp-route-editor-notice.is-success{
	border-color:#A7F3D0;
	background:#ECFDF5;
	color:#047857;
}
.csh-cp-route-editor-order-card,
.csh-cp-route-editor-price-card{
	margin-bottom:16px;
	border:1px solid #DDE5F1;
	border-radius:16px;
	background:#FFFFFF;
	box-shadow:0 5px 16px rgba(13,31,60,.04);
	overflow:hidden;
}
.csh-cp-route-editor-order-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:15px 16px;
	border-bottom:1px solid #D7E4FF;
	background:linear-gradient(180deg,#FFFFFF 0%,#F5F9FF 100%);
}
.csh-cp-route-editor-order-head h3{
	margin:0 0 3px;
	color:#0D1F3C;
	font-size:12px;
	font-weight:900;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.csh-cp-route-editor-order-head p{
	margin:0;
	max-width:530px;
	color:#7A8AAA;
	font-size:10.5px;
	font-weight:650;
	line-height:1.45;
}
.csh-cp-route-editor-order-head [data-csh-route-editor-count]{
	display:inline-flex;
	margin-top:6px;
	color:#2A6AF6;
	font-size:10px;
	font-weight:900;
}
.csh-cp-route-editor-toolbar{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
	flex-wrap:wrap;
}
.csh-cp-route-editor-toolbar button,
.csh-cp-route-editor-form-actions button,
.csh-cp-route-editor-footer button,
.csh-cp-route-editor-delete-card button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	min-height:34px;
	margin:0;
	padding:7px 13px;
	border:1px solid #BFD4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#1A50CC;
	font-family:inherit;
	font-size:10.5px;
	font-weight:900;
	line-height:1;
	cursor:pointer;
}
.csh-cp-route-editor-toolbar button:hover,
.csh-cp-route-editor-form-actions button:hover,
.csh-cp-route-editor-footer button:hover,
.csh-cp-route-editor-delete-card button:hover{
	border-color:#2A6AF6;
	background:#EFF6FF;
}
.csh-cp-route-editor-toolbar button.is-primary,
.csh-cp-route-editor-form-actions button.is-primary,
.csh-cp-route-editor-footer button.is-primary{
	border-color:#2A6AF6;
	background:linear-gradient(135deg,#2A6AF6,#1A50CC);
	color:#FFFFFF;
	box-shadow:0 8px 18px rgba(42,106,246,.22);
}
.csh-cp-route-editor-toolbar button.is-primary:hover,
.csh-cp-route-editor-form-actions button.is-primary:hover,
.csh-cp-route-editor-footer button.is-primary:hover{
	background:linear-gradient(135deg,#1F5DEA,#123EAA);
}
.csh-cp-route-editor-list{
	padding:0 12px 6px;
}
.csh-cp-route-editor-stop{
	display:grid;
	grid-template-columns:24px minmax(0,1fr) auto;
	align-items:center;
	gap:10px;
	min-height:61px;
	padding:9px 7px;
	border-bottom:1px solid #E4E8F4;
	transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease;
}
.csh-cp-route-editor-stop:last-child{
	border-bottom:0;
}
.csh-cp-route-editor-stop.is-editable{
	cursor:grab;
}
.csh-cp-route-editor-stop.is-editable:hover{
	border-radius:12px;
	background:#F8FAFF;
	box-shadow:0 4px 14px rgba(42,106,246,.06);
}
.csh-cp-route-editor-stop.is-dragging{
	opacity:.55;
	cursor:grabbing;
	background:#E8F0FE;
}
.csh-cp-route-editor-stop.is-drop-target{
	border-radius:12px;
	border-color:#2A6AF6;
	background:#EEF5FF;
	box-shadow:inset 0 0 0 1px #93C5FD;
}
.csh-cp-route-editor-stop.is-new{
	background:#F0FDFA;
}
.csh-cp-route-editor-stop.is-depot{
	margin:4px 0;
	border:1px solid #D7E4FF;
	border-radius:12px;
	background:#F5F9FF;
}
.csh-cp-route-editor-stop-badge{
	display:flex;
	align-items:center;
	justify-content:center;
	width:22px;
	height:22px;
	border-radius:50%;
	background:#2A6AF6;
	color:#FFFFFF;
	font-size:10px;
	font-weight:900;
}
.csh-cp-route-editor-stop.is-depot .csh-cp-route-editor-stop-badge{
	background:#0D1F3C;
}
.csh-cp-route-editor-stop.is-locked:not(.is-depot) .csh-cp-route-editor-stop-badge{
	background:#00AF9F;
}
.csh-cp-route-editor-stop-content{
	display:flex;
	flex-direction:column;
	gap:2px;
	min-width:0;
}
.csh-cp-route-editor-stop-content>strong,
.csh-cp-route-editor-stop-top strong{
	color:#0D1F3C;
	font-size:11.5px;
	font-weight:900;
}
.csh-cp-route-editor-stop-top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
}
.csh-cp-route-editor-address{
	color:#475569;
	font-size:10.5px;
	font-weight:650;
	line-height:1.4;
}
.csh-cp-route-editor-stop-meta{
	color:#94A3B8;
	font-size:9.5px;
	font-weight:650;
	line-height:1.35;
}
.csh-cp-route-editor-eta{
	display:inline-flex;
	align-items:center;
	flex:0 0 auto;
	padding:3px 8px;
	border:1px solid #86EFAC;
	border-radius:6px;
	background:#F0FDF4;
	color:#15803D;
	font-size:9px;
	font-weight:900;
	white-space:nowrap;
}
.csh-cp-route-editor-eta::before{
	content:'⏱';
	margin-right:4px;
}
.csh-cp-route-editor-eta.is-complete{
	border-color:#99F6E4;
	background:#ECFDF5;
	color:#047857;
}
.csh-cp-route-editor-controls{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:5px;
}
.csh-cp-route-editor-drag{
	display:flex;
	align-items:center;
	justify-content:center;
	width:21px;
	height:25px;
	color:#7A8AAA;
	cursor:grab;
}
.csh-cp-route-editor-order-btn,
.csh-cp-route-editor-delete-btn{
	display:flex;
	align-items:center;
	justify-content:center;
	width:26px;
	height:26px;
	min-width:26px;
	margin:0;
	padding:0;
	border:1px solid #D7E4FF;
	border-radius:50%;
	background:#FFFFFF;
	color:#2A6AF6;
	font:900 12px/1 'Sora',Arial,sans-serif;
	cursor:pointer;
}
.csh-cp-route-editor-order-btn:hover,.csh-cp-route-editor-order-btn:focus{
	outline:none;
	border-color:#2A6AF6;
	background:#E8F0FE;
}
.csh-cp-route-editor-order-btn:disabled{
	opacity:.34;
	cursor:not-allowed;
}
.csh-cp-route-editor-delete-btn{
	border-color:#FECACA;
	color:#DC2626;
}
.csh-cp-route-editor-delete-btn:hover,.csh-cp-route-editor-delete-btn:focus{
	outline:none;
	border-color:#EF4444;
	background:#FEF2F2;
}
.csh-cp-route-editor-lock{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:5px;
	padding:4px 8px;
	border:1px solid #DDE4EF;
	border-radius:999px;
	background:#FFFFFF;
	color:#64748B;
	font-size:8.5px;
	font-weight:900;
	letter-spacing:.03em;
	text-transform:uppercase;
	white-space:nowrap;
}
.csh-cp-route-editor-add-form{
	margin:12px;
	padding:14px;
	border:1px solid #BFD4FF;
	border-radius:14px;
	background:#F8FAFF;
	box-shadow:0 8px 24px rgba(42,106,246,.08);
}
.csh-cp-route-editor-add-form[hidden]{display:none!important}
.csh-cp-route-editor-form-head{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
	margin-bottom:12px;
}
.csh-cp-route-editor-form-head>div{
	display:flex;
	flex-direction:column;
	gap:2px;
}
.csh-cp-route-editor-form-head strong{
	color:#0D1F3C;
	font-size:12px;
	font-weight:900;
}
.csh-cp-route-editor-form-head span{
	color:#7A8AAA;
	font-size:10px;
	font-weight:650;
}
.csh-cp-route-editor-form-head button{
	width:28px;
	height:28px;
	padding:0;
	border:0;
	background:transparent;
	color:#64748B;
	font:500 22px/1 Arial,sans-serif;
	cursor:pointer;
}
.csh-cp-route-editor-form-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
}
.csh-cp-route-editor-form-grid label{
	display:flex;
	flex-direction:column;
	gap:5px;
	margin:0;
}
.csh-cp-route-editor-form-grid label.is-wide{
	grid-column:1/-1;
}
.csh-cp-route-editor-form-grid label>span{
	color:#475569;
	font-size:9px;
	font-weight:900;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.csh-cp-route-editor-form-grid input{
	width:100%!important;
	height:38px!important;
	min-height:38px!important;
	margin:0!important;
	padding:8px 10px!important;
	border:1px solid #D8E0EC!important;
	border-radius:9px!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:11px!important;
	font-weight:650!important;
}
.csh-cp-route-editor-form-grid input:focus{
	outline:none!important;
	border-color:#2A6AF6!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-form-hint{
	margin:9px 0 0;
	color:#7A8AAA;
	font-size:9.5px;
	font-weight:650;
	line-height:1.4;
}
.csh-cp-route-editor-form-error{
	margin-top:9px;
	padding:8px 10px;
	border:1px solid #FECACA;
	border-radius:9px;
	background:#FEF2F2;
	color:#B91C1C;
	font-size:10px;
	font-weight:800;
}
.csh-cp-route-editor-form-actions{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
	margin-top:12px;
}
.csh-cp-route-editor-price-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:14px 16px;
	border-bottom:1px solid #DDE5F1;
	background:#F1F5F9;
	color:#64748B;
	font-size:11px;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
}
.csh-cp-route-editor-price-head em{
	padding:4px 9px;
	border-radius:999px;
	background:#DCFCE7;
	color:#166534;
	font-size:8.5px;
	font-style:normal;
	font-weight:900;
	letter-spacing:.05em;
}
.csh-cp-route-editor-price-row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	min-height:53px;
	padding:10px 16px;
	border-bottom:1px solid #E4E8F4;
}
.csh-cp-route-editor-price-row.is-shaded{
	background:#F1F5F9;
}
.csh-cp-route-editor-price-row>div{
	display:flex;
	flex-direction:column;
	gap:2px;
	min-width:0;
}
.csh-cp-route-editor-price-row strong{
	color:#0D1F3C;
	font-size:11px;
	font-weight:750;
}
.csh-cp-route-editor-price-row span{
	color:#64748B;
	font-size:9.5px;
	font-weight:600;
	line-height:1.35;
}
.csh-cp-route-editor-price-row>b{
	flex:0 0 auto;
	color:#0D1F3C;
	font-size:12px;
	font-weight:900;
	text-align:right;
}
.csh-cp-route-editor-price-row>b.is-surcharge{
	color:#E46F00;
}
.csh-cp-route-editor-total{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	padding:16px;
	background:#E8F0FE;
}
.csh-cp-route-editor-total>div{
	display:flex;
	flex-direction:column;
	gap:2px;
}
.csh-cp-route-editor-total strong{
	color:#0D1F3C;
	font-size:12px;
	font-weight:900;
}
.csh-cp-route-editor-total span{
	color:#64748B;
	font-size:9.5px;
	font-weight:650;
}
.csh-cp-route-editor-total>b{
	color:#2A6AF6;
	font-size:27px;
	font-weight:950;
	letter-spacing:-1px;
}
.csh-cp-route-editor-footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	padding:14px 22px;
	border-top:1px solid #DDE5F1;
	background:#FFFFFF;
}
.csh-cp-route-editor-footer>span{
	color:#7A8AAA;
	font-size:9.5px;
	font-weight:700;
}
.csh-cp-route-editor-footer>div{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
}
.csh-cp-route-editor-delete-modal{
	position:absolute;
	inset:0;
	z-index:4;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:22px;
	background:rgba(13,31,60,.64);
	backdrop-filter:blur(5px);
}
.csh-cp-route-editor-delete-modal[hidden]{display:none!important}
.csh-cp-route-editor-delete-card{
	width:min(400px,100%);
	padding:25px;
	border-radius:18px;
	background:#FFFFFF;
	box-shadow:0 24px 70px rgba(13,31,60,.3);
	text-align:center;
}
.csh-cp-route-editor-delete-icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:48px;
	height:48px;
	margin:0 auto 12px;
	border-radius:50%;
	background:#FEF2F2;
	color:#DC2626;
}
.csh-cp-route-editor-delete-icon svg{width:20px;height:20px}
.csh-cp-route-editor-delete-card h3{
	margin:0 0 7px;
	color:#0D1F3C;
	font-size:18px;
	font-weight:900;
}
.csh-cp-route-editor-delete-card p{
	margin:0 0 8px;
	color:#64748B;
	font-size:11px;
	font-weight:650;
	line-height:1.5;
}
.csh-cp-route-editor-delete-card>strong{
	display:block;
	margin:0 0 17px;
	padding:9px 10px;
	border-radius:9px;
	background:#F8FAFC;
	color:#334155;
	font-size:10.5px;
	font-weight:800;
	line-height:1.4;
}
.csh-cp-route-editor-delete-card>div{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
}
.csh-cp-route-editor-delete-card button.is-danger{
	border-color:#DC2626;
	background:#DC2626;
	color:#FFFFFF;
}
.csh-cp-route-editor-delete-card button.is-danger:hover{
	border-color:#B91C1C;
	background:#B91C1C;
}
@media(max-width:720px){
	.csh-cp-route-editor-modal{padding:0}
	.csh-cp-route-editor-panel{width:100%;height:100%;max-height:none;border-radius:0;border:0}
	.csh-cp-route-editor-header{padding:18px}
	.csh-cp-route-editor-header h2{font-size:21px}
	.csh-cp-route-editor-body{padding:14px}
	.csh-cp-route-editor-order-head{align-items:flex-start;flex-direction:column}
	.csh-cp-route-editor-toolbar{width:100%;justify-content:flex-start}
	.csh-cp-route-editor-stop{grid-template-columns:23px minmax(0,1fr);gap:9px;padding:10px 5px}
	.csh-cp-route-editor-stop .csh-cp-route-editor-controls,
	.csh-cp-route-editor-stop>.csh-cp-route-editor-lock{grid-column:2;justify-content:flex-start}
	.csh-cp-route-editor-stop-top{align-items:flex-start;flex-direction:column;gap:4px}
	.csh-cp-route-editor-drag{display:none}
	.csh-cp-route-editor-form-grid{grid-template-columns:1fr}
	.csh-cp-route-editor-form-grid label.is-wide{grid-column:auto}
	.csh-cp-route-editor-footer{align-items:flex-start;flex-direction:column;padding:12px 14px}
	.csh-cp-route-editor-footer>div{width:100%}
	.csh-cp-route-editor-footer button{flex:1}
	.csh-cp-shift-consignments-title{align-items:flex-start;flex-direction:column}
	.csh-cp-edit-route-btn{align-self:flex-end}
}
@media(prefers-reduced-motion:reduce){
	.csh-cp-route-editor-stop{transition:none}
}


/* v1.12.98 route editor layout hardening against theme-level form/content rules */
.csh-cp-route-editor-modal{
	overflow:hidden!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-panel{
	display:flex!important;
	flex-direction:column!important;
	height:min(900px,calc(100vh - 36px));
	height:min(900px,calc(100dvh - 36px));
	max-height:calc(100vh - 36px)!important;
	max-height:calc(100dvh - 36px)!important;
	overflow:hidden!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-header,
.csh-cp-route-editor-modal .csh-cp-route-editor-footer{
	flex:0 0 auto!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-body{
	flex:1 1 auto!important;
	min-height:0!important;
	max-height:none!important;
	overflow-x:hidden!important;
	overflow-y:auto!important;
	overscroll-behavior-y:contain;
	scrollbar-gutter:stable;
	-webkit-overflow-scrolling:touch;
}
.csh-cp-route-editor-modal button{
	-webkit-appearance:none!important;
	appearance:none!important;
	box-sizing:border-box!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
	text-transform:none!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-api-note{
	display:flex!important;
	align-items:center!important;
	column-gap:10px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-api-note strong{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	margin:0 2px 0 0!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-head{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) auto!important;
	align-items:center!important;
	column-gap:18px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:9px!important;
	width:auto!important;
	margin-left:auto!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:7px!important;
	width:auto!important;
	min-width:0!important;
	height:36px!important;
	min-height:36px!important;
	margin:0!important;
	padding:0 14px!important;
	border-width:1px!important;
	border-style:solid!important;
	border-radius:999px!important;
	line-height:1!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button:not(.is-primary){
	border-color:#BFD4FF!important;
	background:#FFFFFF!important;
	color:#1A50CC!important;
	box-shadow:0 4px 12px rgba(42,106,246,.08)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button:not(.is-primary):hover,
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button:not(.is-primary):focus{
	border-color:#2A6AF6!important;
	background:#EFF6FF!important;
	box-shadow:0 6px 16px rgba(42,106,246,.13)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button.is-primary{
	border-color:#2A6AF6!important;
	background:linear-gradient(135deg,#2A6AF6,#1A50CC)!important;
	color:#FFFFFF!important;
	box-shadow:0 8px 18px rgba(42,106,246,.22)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button svg{
	display:block!important;
	flex:0 0 auto!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-list{
	display:flex!important;
	flex-direction:column!important;
	width:100%!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
	display:grid!important;
	grid-template-columns:30px minmax(0,1fr) 142px!important;
	align-items:center!important;
	column-gap:12px!important;
	width:100%!important;
	min-width:0!important;
	min-height:66px!important;
	margin:0!important;
	padding:10px 8px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-depot{
	margin:5px 0!important;
	padding:11px 10px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-badge{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	align-self:center!important;
	justify-self:center!important;
	width:26px!important;
	min-width:26px!important;
	height:26px!important;
	min-height:26px!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:50%!important;
	background:#2A6AF6!important;
	color:#FFFFFF!important;
	font-size:10px!important;
	font-weight:900!important;
	line-height:26px!important;
	text-align:center!important;
	box-shadow:0 5px 12px rgba(42,106,246,.18)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-depot .csh-cp-route-editor-stop-badge{
	background:#0D1F3C!important;
	box-shadow:0 5px 12px rgba(13,31,60,.16)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked:not(.is-depot) .csh-cp-route-editor-stop-badge{
	background:#00AF9F!important;
	box-shadow:0 5px 12px rgba(0,175,159,.18)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-badge svg{
	display:block!important;
	width:13px!important;
	height:13px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-content{
	display:flex!important;
	flex-direction:column!important;
	align-items:stretch!important;
	justify-content:center!important;
	gap:3px!important;
	min-width:0!important;
	width:100%!important;
	margin:0!important;
	padding:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-top{
	display:flex!important;
	flex-direction:row!important;
	align-items:center!important;
	justify-content:flex-start!important;
	gap:9px!important;
	min-width:0!important;
	width:100%!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-content>strong,
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-top>strong{
	display:block!important;
	margin:0!important;
	padding:0!important;
	line-height:1.3!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-address,
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-meta{
	display:block!important;
	width:100%!important;
	margin:0!important;
	padding:0!important;
	overflow:hidden!important;
	text-overflow:ellipsis!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:auto!important;
	margin:0!important;
	line-height:1.2!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:6px!important;
	justify-self:end!important;
	align-self:center!important;
	width:142px!important;
	min-width:142px!important;
	margin:0!important;
	padding:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-drag{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:25px!important;
	height:30px!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	color:#7A8AAA!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn,
.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 30px!important;
	width:30px!important;
	min-width:30px!important;
	height:30px!important;
	min-height:30px!important;
	margin:0!important;
	padding:0!important;
	border-width:1px!important;
	border-style:solid!important;
	border-radius:50%!important;
	line-height:1!important;
	box-shadow:none!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn{
	border-color:#C9DAFF!important;
	background:#FFFFFF!important;
	color:#2A6AF6!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn:hover,
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn:focus{
	border-color:#2A6AF6!important;
	background:#E8F0FE!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.10)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn:disabled{
	border-color:#E2E8F0!important;
	background:#F8FAFC!important;
	color:#CBD5E1!important;
	opacity:1!important;
	cursor:not-allowed!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn{
	border-color:#FECACA!important;
	background:#FFF7F7!important;
	color:#DC2626!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn:hover,
.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn:focus{
	border-color:#EF4444!important;
	background:#FEF2F2!important;
	box-shadow:0 0 0 3px rgba(239,68,68,.09)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn svg,
.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn svg,
.csh-cp-route-editor-modal .csh-cp-route-editor-drag svg{
	display:block!important;
	margin:0!important;
	padding:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-lock{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	justify-self:end!important;
	width:auto!important;
	min-width:0!important;
	max-width:142px!important;
	margin:0!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls .csh-cp-route-editor-lock{
	margin-left:auto!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-head,
.csh-cp-route-editor-modal .csh-cp-route-editor-price-row,
.csh-cp-route-editor-modal .csh-cp-route-editor-total{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) auto!important;
	align-items:center!important;
	column-gap:18px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-row>div,
.csh-cp-route-editor-modal .csh-cp-route-editor-total>div{
	display:flex!important;
	flex-direction:column!important;
	align-items:flex-start!important;
	gap:2px!important;
	min-width:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-row strong,
.csh-cp-route-editor-modal .csh-cp-route-editor-price-row span,
.csh-cp-route-editor-modal .csh-cp-route-editor-total strong,
.csh-cp-route-editor-modal .csh-cp-route-editor-total span{
	display:block!important;
	margin:0!important;
	padding:0!important;
	line-height:1.35!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-row>b,
.csh-cp-route-editor-modal .csh-cp-route-editor-total>b{
	display:block!important;
	justify-self:end!important;
	margin:0!important;
	white-space:nowrap!important;
	text-align:right!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer{
	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;
	min-height:66px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer>div{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:9px!important;
	margin-left:auto!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer button{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:auto!important;
	min-width:116px!important;
	height:38px!important;
	min-height:38px!important;
	margin:0!important;
	padding:0 17px!important;
	border-radius:999px!important;
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-panel{
		height:100vh!important;
		height:100dvh!important;
		max-height:100vh!important;
		max-height:100dvh!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-order-head{
		grid-template-columns:1fr!important;
		row-gap:12px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar{
		justify-content:flex-start!important;
		margin-left:0!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
		grid-template-columns:28px minmax(0,1fr) 104px!important;
		column-gap:8px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop .csh-cp-route-editor-controls,
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop>.csh-cp-route-editor-lock{
		grid-column:3!important;
		grid-row:1!important;
		justify-content:flex-end!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
		width:104px!important;
		min-width:104px!important;
		gap:4px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-drag{
		display:none!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop-top{
		flex-direction:column!important;
		align-items:flex-start!important;
		gap:4px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-address,
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop-meta{
		white-space:normal!important;
		overflow-wrap:anywhere!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer{
		align-items:stretch!important;
		flex-direction:column!important;
		gap:9px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer>div{
		width:100%!important;
		margin-left:0!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer button{
		flex:1 1 50%!important;
		min-width:0!important;
	}
}
@media(max-width:480px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar{
		display:grid!important;
		grid-template-columns:1fr 1fr!important;
		width:100%!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-toolbar button{
		width:100%!important;
		padding:0 10px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
		grid-template-columns:26px minmax(0,1fr) 96px!important;
		column-gap:6px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
		width:96px!important;
		min-width:96px!important;
		gap:3px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-order-btn,
	.csh-cp-route-editor-modal .csh-cp-route-editor-delete-btn{
		flex-basis:28px!important;
		width:28px!important;
		min-width:28px!important;
		height:28px!important;
		min-height:28px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-lock span{
		display:none!important;
	}
}
/* v1.13.20 route editor: staging hydration, booking-form stop fields and ETA editor. */
.csh-cp-route-editor-api-note.is-loading{
	border-color:#BFDBFE;
	background:#EFF6FF;
	color:#1E3A8A;
}
.csh-cp-route-editor-api-note.is-loading strong::before{
	content:'';
	display:inline-block;
	width:9px;
	height:9px;
	margin-right:5px;
	border:2px solid rgba(255,255,255,.45);
	border-top-color:#FFFFFF;
	border-radius:50%;
	vertical-align:-1px;
	animation:cshCpRouteEditorSpin .72s linear infinite;
}
.csh-cp-route-editor-api-note.is-success{
	border-color:#A7F3D0;
	background:#ECFDF5;
	color:#047857;
}
.csh-cp-route-editor-api-note.is-success strong{background:#22C55E}
.csh-cp-route-editor-api-note.is-error{
	border-color:#FECACA;
	background:#FEF2F2;
	color:#991B1B;
}
.csh-cp-route-editor-api-note.is-error strong{background:#EF4444}
.csh-cp-route-editor-notice.is-error{
	border-color:#FECACA;
	background:#FEF2F2;
	color:#B91C1C;
}
@keyframes cshCpRouteEditorSpin{to{transform:rotate(360deg)}}

.csh-cp-route-editor-eta{
	font-family:inherit;
	line-height:1;
}
.csh-cp-route-editor-eta::before{content:none!important}
.csh-cp-route-editor-eta svg{display:block;flex:0 0 auto}
.csh-cp-route-editor-eta.is-editable{
	margin:0;
	cursor:pointer;
	appearance:none;
	-webkit-appearance:none;
}
.csh-cp-route-editor-eta.is-editable:hover,
.csh-cp-route-editor-eta.is-editable:focus-visible{
	outline:none;
	border-color:#22C55E;
	background:#DCFCE7;
	box-shadow:0 0 0 3px rgba(34,197,94,.12);
}

.csh-cp-route-editor-add-form{
	padding:16px;
	background:#F5F7FC;
}
.csh-cp-route-editor-depot-select{
	display:flex;
	align-items:center;
	gap:10px;
	margin:0 0 12px;
	padding:10px 12px;
	border:1px solid #D4E2FD;
	border-radius:14px;
	background:#FFFFFF;
}
.csh-cp-route-editor-depot-select[hidden]{display:none!important}
.csh-cp-route-editor-field-icon,
.csh-cp-route-editor-item-tools>span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:32px;
	flex:0 0 32px;
	border-radius:10px;
	background:#E8F0FE;
	color:#2A6AF6;
}
.csh-cp-route-editor-depot-select label{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	gap:5px;
	min-width:0;
	margin:0;
}
.csh-cp-route-editor-depot-select label>span,
.csh-cp-route-editor-booking-grid label>span,
.csh-cp-route-editor-address-block label>span,
.csh-cp-route-editor-presets>strong{
	color:#475569;
	font-size:9px;
	font-weight:900;
	letter-spacing:.06em;
	text-transform:uppercase;
}
.csh-cp-route-editor-booking-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:10px;
}
.csh-cp-route-editor-booking-grid label{
	display:flex;
	flex-direction:column;
	gap:5px;
	min-width:0;
	margin:0;
}
.csh-cp-route-editor-booking-grid label.is-wide{grid-column:1/-1}
.csh-cp-route-editor-booking-grid em{
	display:inline-flex;
	margin-left:4px;
	padding:1px 5px;
	border:1px solid #BFD4FF;
	border-radius:999px;
	background:#EFF6FF;
	color:#2A6AF6;
	font-size:7.5px;
	font-style:normal;
	font-weight:900;
	letter-spacing:.08em;
	vertical-align:1px;
}
.csh-cp-route-editor-add-form input[type="text"],
.csh-cp-route-editor-add-form input[type="email"],
.csh-cp-route-editor-add-form input[type="tel"],
.csh-cp-route-editor-add-form input[type="number"],
.csh-cp-route-editor-add-form select,
.csh-cp-route-editor-eta-card input{
	width:100%!important;
	height:38px!important;
	min-height:38px!important;
	margin:0!important;
	padding:8px 10px!important;
	border:1px solid #D8E0EC!important;
	border-radius:9px!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:10.5px!important;
	font-weight:650!important;
}
.csh-cp-route-editor-add-form input:focus,
.csh-cp-route-editor-add-form select:focus,
.csh-cp-route-editor-eta-card input:focus{
	outline:none!important;
	border-color:#2A6AF6!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-return{
	display:flex;
	align-items:center;
	gap:10px;
	margin:12px 0;
	padding:10px 12px;
	border:1px solid #D8E0EC;
	border-radius:14px;
	background:#FFFFFF;
	cursor:pointer;
}
.csh-cp-route-editor-return input{
	width:22px!important;
	height:22px!important;
	min-height:22px!important;
	flex:0 0 22px;
	margin:0!important;
	accent-color:#2A6AF6;
}
.csh-cp-route-editor-return>span{
	display:flex;
	flex-direction:column;
	gap:2px;
}
.csh-cp-route-editor-return strong{color:#0D1F3C;font-size:10.5px;font-weight:900}
.csh-cp-route-editor-return small{color:#7A8AAA;font-size:9px;font-weight:650;line-height:1.35}
.csh-cp-route-editor-address-block{position:relative;margin-bottom:10px}
.csh-cp-route-editor-address-block label{display:block;margin:0}
.csh-cp-route-editor-address-row{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(190px,30%);
	gap:8px;
	margin-top:5px;
}
.csh-cp-route-editor-address-block label>small{
	display:block;
	margin-top:4px;
	color:#7A8AAA;
	font-size:8px;
	text-align:right;
}
.csh-cp-route-editor-address-suggestions{
	position:absolute;
	z-index:15;
	left:0;
	right:calc(30% + 8px);
	top:61px;
	max-height:210px;
	overflow:auto;
	border:1px solid #D4E2FD;
	border-radius:12px;
	background:#FFFFFF;
	box-shadow:0 14px 34px rgba(13,31,60,.16);
}
.csh-cp-route-editor-address-suggestions[hidden]{display:none!important}
.csh-cp-route-editor-address-suggestions button{
	display:flex;
	flex-direction:column;
	gap:2px;
	width:100%;
	margin:0;
	padding:9px 11px;
	border:0;
	border-bottom:1px solid #EEF2F7;
	background:#FFFFFF;
	color:#0D1F3C;
	font-family:inherit;
	text-align:left;
	cursor:pointer;
}
.csh-cp-route-editor-address-suggestions button:last-child{border-bottom:0}
.csh-cp-route-editor-address-suggestions button:hover,
.csh-cp-route-editor-address-suggestions button:focus-visible{outline:none;background:#EFF6FF}
.csh-cp-route-editor-address-suggestions strong{font-size:9.5px;font-weight:800;line-height:1.35}
.csh-cp-route-editor-address-suggestions small{color:#7A8AAA;font-size:8px;line-height:1.3}
.csh-cp-route-editor-address-empty{padding:10px;color:#7A8AAA;font-size:9px;font-weight:650;line-height:1.4}
.csh-cp-route-editor-item-tools{
	display:inline-flex;
	align-items:center;
	gap:0;
	max-width:300px;
	margin:0 0 10px;
	border:1px solid #BFD4FF;
	border-radius:999px;
	background:#FFFFFF;
	overflow:hidden;
}
.csh-cp-route-editor-item-tools>span{width:30px;height:30px;flex-basis:30px;border-radius:0;background:#EFF6FF}
.csh-cp-route-editor-item-tools select{
	height:32px!important;
	min-height:32px!important;
	border:0!important;
	border-radius:0!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	font-size:9.5px!important;
}
.csh-cp-route-editor-items-table-wrap{
	width:100%;
	overflow-x:auto;
	border:1px solid #D8E0EC;
	border-radius:12px;
	background:#FFFFFF;
}
.csh-cp-route-editor-items-table{
	width:100%;
	min-width:820px;
	border-collapse:collapse;
	table-layout:fixed;
}
.csh-cp-route-editor-items-table th{
	padding:8px 6px;
	border-bottom:1px solid #D8E0EC;
	background:#F1F5F9;
	color:#64748B;
	font-size:8px;
	font-weight:900;
	letter-spacing:.08em;
	text-align:left;
	text-transform:uppercase;
}
.csh-cp-route-editor-items-table th:nth-child(1){width:17%}
.csh-cp-route-editor-items-table th:nth-child(2){width:11%}
.csh-cp-route-editor-items-table th:nth-child(3){width:13%}
.csh-cp-route-editor-items-table th:nth-child(n+4):nth-child(-n+8){width:10%}
.csh-cp-route-editor-items-table th:last-child{width:4%}
.csh-cp-route-editor-items-table td{padding:5px;border-bottom:1px solid #EEF2F7;vertical-align:middle}
.csh-cp-route-editor-items-table tr:last-child td{border-bottom:0}
.csh-cp-route-editor-items-table input,
.csh-cp-route-editor-items-table select{
	height:34px!important;
	min-height:34px!important;
	padding:6px 7px!important;
	font-size:9px!important;
}
.csh-cp-route-editor-items-table button{
	width:24px;
	height:24px;
	margin:0;
	padding:0;
	border:0;
	border-radius:50%;
	background:transparent;
	color:#94A3B8;
	font:700 16px/1 Arial,sans-serif;
	cursor:pointer;
}
.csh-cp-route-editor-items-table button:hover{background:#FEF2F2;color:#EF4444}
.csh-cp-route-editor-presets{margin-top:10px}
.csh-cp-route-editor-presets>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.csh-cp-route-editor-presets button{
	min-height:30px;
	margin:0;
	padding:6px 11px;
	border:1px solid #BFD4FF;
	border-radius:8px;
	background:#F5F9FF;
	color:#1A50CC;
	font-family:inherit;
	font-size:8.5px;
	font-weight:750;
	cursor:pointer;
}
.csh-cp-route-editor-presets button:hover{border-color:#2A6AF6;background:#E8F0FE}
.csh-cp-route-editor-add-item{
	width:100%;
	min-height:34px;
	margin:10px 0 0;
	border:1px dashed #CBD5E1;
	border-radius:9px;
	background:rgba(255,255,255,.5);
	color:#64748B;
	font-family:inherit;
	font-size:9.5px;
	font-weight:750;
	cursor:pointer;
}
.csh-cp-route-editor-add-item:hover{border-color:#2A6AF6;background:#EFF6FF;color:#1A50CC}

.csh-cp-route-editor-eta-modal{
	display:flex;
	position:fixed;
	z-index:1000002;
	inset:0;
	align-items:center;
	justify-content:center;
	padding:20px;
	background:rgba(13,31,60,.28);
	backdrop-filter:blur(2px);
}
.csh-cp-route-editor-eta-modal[hidden]{display:none!important}
.csh-cp-route-editor-eta-card{
	display:flex;
	position:relative;
	flex-direction:column;
	gap:10px;
	width:min(390px,100%);
	padding:22px;
	border:1px solid #D4E2FD;
	border-radius:18px;
	background:#FFFFFF;
	box-shadow:0 24px 70px rgba(13,31,60,.28);
}
.csh-cp-route-editor-eta-icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:38px;
	height:38px;
	border-radius:12px;
	background:#E8F0FE;
	color:#2A6AF6;
}
.csh-cp-route-editor-eta-icon svg{width:18px;height:18px}
.csh-cp-route-editor-eta-card h3{margin:0;color:#0D1F3C;font-size:16px;font-weight:900}
.csh-cp-route-editor-eta-card>p{margin:0;color:#64748B;font-size:10px;font-weight:650;line-height:1.45}
.csh-cp-route-editor-eta-card>strong{padding:9px 10px;border-radius:9px;background:#F5F7FC;color:#334155;font-size:10px;line-height:1.4}
.csh-cp-route-editor-eta-card label{display:flex;flex-direction:column;gap:5px;margin:0}
.csh-cp-route-editor-eta-card label>span{color:#475569;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.csh-cp-route-editor-eta-card>div:last-child{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}
.csh-cp-route-editor-eta-card>div:last-child button{
	min-height:34px;
	margin:0;
	padding:7px 13px;
	border:1px solid #BFD4FF;
	border-radius:999px;
	background:#FFFFFF;
	color:#1A50CC;
	font-family:inherit;
	font-size:10px;
	font-weight:900;
	cursor:pointer;
}
.csh-cp-route-editor-eta-card>div:last-child button.is-primary{border-color:#2A6AF6;background:#2A6AF6;color:#FFFFFF}
.csh-cp-route-editor-eta-close{
	position:absolute;
	top:12px;
	right:12px;
	width:28px;
	height:28px;
	margin:0;
	padding:0;
	border:0;
	border-radius:50%;
	background:#F5F7FC;
	color:#64748B;
	font:500 20px/1 Arial,sans-serif;
	cursor:pointer;
}
.csh-cp-route-editor-eta-close:hover{background:#E8F0FE;color:#1A50CC}

@media(max-width:760px){
	.csh-cp-route-editor-booking-grid{grid-template-columns:1fr}
	.csh-cp-route-editor-booking-grid label.is-wide{grid-column:auto}
	.csh-cp-route-editor-address-row{grid-template-columns:1fr}
	.csh-cp-route-editor-address-suggestions{right:0;top:101px}
	.csh-cp-route-editor-item-tools{max-width:100%;width:100%}
	.csh-cp-route-editor-stop-top{align-items:flex-start;flex-direction:column;gap:5px}
}
@media(prefers-reduced-motion:reduce){
	.csh-cp-route-editor-api-note.is-loading strong::before{animation-duration:1.6s}
}
/* v1.13.23 route editor: booking picker parity, ETA/status side rail, add-stop modal and repricing actions. */
.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
	grid-template-columns:30px minmax(0,1fr) minmax(230px,270px)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-side{
	display:flex!important;
	flex-direction:column!important;
	align-items:flex-end!important;
	justify-content:center!important;
	gap:7px!important;
	width:100%!important;
	min-width:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-facts{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:6px!important;
	width:100%!important;
	min-width:0!important;
	flex-wrap:wrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	min-height:22px!important;
	padding:3px 8px!important;
	border:1px solid #DDE4EF!important;
	border-radius:999px!important;
	background:#F8FAFC!important;
	color:#64748B!important;
	font-size:8px!important;
	font-weight:900!important;
	letter-spacing:.035em!important;
	line-height:1.1!important;
	text-transform:uppercase!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status.is-completed{
	border-color:#86EFAC!important;
	background:#DCFCE7!important;
	color:#166534!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status.is-progress{
	border-color:#99F6E4!important;
	background:#CCFBF1!important;
	color:#0F766E!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status.is-new{
	border-color:#BFDBFE!important;
	background:#E8F0FE!important;
	color:#1A50CC!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status.is-depot{
	border-color:#CBD5E1!important;
	background:#FFFFFF!important;
	color:#334155!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-status.is-pending{
	border-color:#FDE68A!important;
	background:#FFFBEB!important;
	color:#92400E!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta{
	min-height:22px!important;
	padding:3px 8px!important;
	border-color:#BFD4FF!important;
	background:#F5F9FF!important;
	color:#1A50CC!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-readonly{
	cursor:default!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
	width:auto!important;
	min-width:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-side>.csh-cp-route-editor-lock{
	align-self:flex-end!important;
}

.csh-cp-route-editor-add-modal{
	position:fixed;
	inset:0;
	z-index:1000003;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:22px;
}
.csh-cp-route-editor-add-modal[hidden]{display:none!important}
.csh-cp-route-editor-add-backdrop{
	position:absolute;
	inset:0;
	background:rgba(13,31,60,.54);
	backdrop-filter:blur(5px);
}
.csh-cp-route-editor-add-dialog{
	position:relative;
	z-index:1;
	width:min(920px,100%);
	max-height:calc(100vh - 44px);
	max-height:calc(100dvh - 44px);
	overflow:auto;
	border:1px solid #D4E2FD;
	border-radius:22px;
	background:#FFFFFF;
	box-shadow:0 28px 90px rgba(13,31,60,.34);
	scrollbar-gutter:stable;
}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-add-form{
	margin:0!important;
	padding:20px!important;
	border:0!important;
	border-radius:0!important;
	background:#F5F7FC!important;
	box-shadow:none!important;
}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-head{
	position:sticky;
	top:-20px;
	z-index:25;
	margin:-20px -20px 16px!important;
	padding:18px 20px 14px!important;
	border-bottom:1px solid #E4E8F4;
	background:#FFFFFF;
}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-head strong{font-size:15px}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-head span{font-size:10.5px}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-head button{
	display:flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:32px;
	border:1px solid #DDE4EF;
	border-radius:50%;
	background:#FFFFFF;
}
.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-actions{
	position:sticky;
	bottom:-20px;
	z-index:20;
	margin:16px -20px -20px!important;
	padding:13px 20px!important;
	border-top:1px solid #E4E8F4;
	background:rgba(255,255,255,.97);
	backdrop-filter:blur(7px);
}

.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row{
	grid-template-columns:minmax(0,1fr) 245px;
	align-items:start;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-item-tools{
	display:block;
	max-width:none;
	margin:0 0 10px;
	border:0;
	border-radius:0;
	background:transparent;
	overflow:visible;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-frequent-picker{
	position:relative!important;
	inset:auto!important;
	transform:none!important;
	z-index:35!important;
	max-width:100%!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-picker{width:100%!important}
.csh-cp-route-editor-add-form .custm-frequent-item-picker{width:255px!important}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger{
	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;
	gap:8px!important;
	width:100%!important;
	min-height:38px!important;
	margin:0!important;
	padding:6px 11px!important;
	border:1px solid #BFD4FF!important;
	border-radius:14px!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	box-shadow:0 4px 14px rgba(42,106,246,.08)!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
	font-size:10px!important;
	font-weight:800!important;
	line-height:1.2!important;
	text-align:left!important;
	cursor:pointer!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger:hover,
.csh-cp-route-editor-add-form .custm-frequent-address-trigger:focus-visible,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger:hover,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger:focus-visible{
	outline:none!important;
	border-color:#2A6AF6!important;
	background:#F8FBFF!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger-text,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger-main{
	display:inline-flex!important;
	align-items:center!important;
	gap:7px!important;
	min-width:0!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-trigger-icon{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 22px!important;
	width:22px!important;
	height:22px!important;
	border-radius:999px!important;
	background:#E8F0FE!important;
	color:#2A6AF6!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-trigger-icon svg{width:14px!important;height:14px!important;display:block!important}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger-caret,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger-caret{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 16px!important;
	color:#2A6AF6!important;
	transition:transform .16s ease!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger-caret svg,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger-caret svg{width:15px!important;height:15px!important;display:block!important}
.csh-cp-route-editor-add-form .csh-cp-route-editor-frequent-picker.is-open .custm-frequent-address-trigger-caret,
.csh-cp-route-editor-add-form .csh-cp-route-editor-frequent-picker.is-open .custm-frequent-item-trigger-caret{transform:rotate(180deg)!important}
.csh-cp-route-editor-add-form .custm-frequent-address-menu,
.csh-cp-route-editor-add-form .custm-frequent-item-menu{
	position:absolute!important;
	left:0!important;
	right:auto!important;
	top:calc(100% + 7px)!important;
	z-index:80!important;
	display:flex!important;
	flex-direction:column!important;
	width:min(385px,calc(100vw - 54px))!important;
	max-height:min(430px,calc(100vh - 130px))!important;
	margin:0!important;
	padding:8px!important;
	overflow:hidden!important;
	border:1px solid #BFD4FF!important;
	border-radius:16px!important;
	background:#FFFFFF!important;
	box-shadow:0 18px 42px rgba(13,31,60,.22),0 2px 10px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-menu[hidden],
.csh-cp-route-editor-add-form .custm-frequent-item-menu[hidden]{display:none!important}
.csh-cp-route-editor-add-form .custm-frequent-address-menu{left:auto!important;right:0!important}
.csh-cp-route-editor-add-form .custm-frequent-item-menu{left:0!important;right:auto!important}
.csh-cp-route-editor-add-form .custm-frequent-address-menu-head,
.csh-cp-route-editor-add-form .custm-frequent-item-head{
	padding:7px 9px!important;
	color:#7A8AAA!important;
	font-size:9px!important;
	font-weight:900!important;
	letter-spacing:.10em!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-search-wrap,
.csh-cp-route-editor-add-form .custm-frequent-item-search-wrap{
	flex:0 0 auto!important;
	padding:0 1px 8px!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-search,
.csh-cp-route-editor-add-form .custm-frequent-item-search{
	width:100%!important;
	height:35px!important;
	min-height:35px!important;
	margin:0!important;
	padding:8px 11px!important;
	border:1px solid #D7E4FF!important;
	border-radius:12px!important;
	background:#F8FBFF!important;
	color:#0D1F3C!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
	font-size:10px!important;
	font-weight:750!important;
	line-height:1.2!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-search:focus,
.csh-cp-route-editor-add-form .custm-frequent-item-search:focus{
	outline:none!important;
	border-color:#2A6AF6!important;
	background:#FFFFFF!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-list,
.csh-cp-route-editor-add-form .custm-frequent-item-list{
	display:flex!important;
	flex:1 1 auto!important;
	flex-direction:column!important;
	gap:7px!important;
	min-height:0!important;
	max-height:265px!important;
	padding-right:2px!important;
	overflow-x:hidden!important;
	overflow-y:auto!important;
	scrollbar-gutter:stable!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-item{
	position:relative!important;
	display:flex!important;
	align-items:center!important;
	width:100%!important;
	min-height:42px!important;
	margin:0!important;
	padding:8px 9px!important;
	border:1px solid transparent!important;
	border-radius:12px!important;
	background:#F5F7FC!important;
	color:#0D1F3C!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-item:hover,
.csh-cp-route-editor-add-form .custm-frequent-address-item:focus-within{
	border-color:#93C5FD!important;
	background:#E8F0FE!important;
	transform:translateY(-1px)!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-item-main{
	display:flex!important;
	align-items:flex-start!important;
	gap:8px!important;
	width:100%!important;
	min-width:0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
	color:inherit!important;
	box-shadow:none!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
	font-size:10px!important;
	font-weight:800!important;
	line-height:1.35!important;
	text-align:left!important;
	cursor:pointer!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-item-main:focus-visible{outline:2px solid #2A6AF6!important;outline-offset:3px!important}
.csh-cp-route-editor-add-form .custm-frequent-address-item-icon{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 22px!important;
	width:22px!important;
	height:22px!important;
	border-radius:999px!important;
	background:#E8F0FE!important;
	color:#2A6AF6!important;
	font-size:12px!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-item-text{min-width:0!important;word-break:break-word!important}
.csh-cp-route-editor-add-form .custm-frequent-item-entry{
	position:relative!important;
	display:flex!important;
	align-items:flex-start!important;
	padding:9px!important;
	border:1px solid transparent!important;
	border-radius:12px!important;
	background:#F5F7FC!important;
	color:#0D1F3C!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-entry:hover{
	border-color:#93C5FD!important;
	background:#E8F0FE!important;
	transform:translateY(-1px)!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-main{
	display:block!important;
	width:100%!important;
	min-width:0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
	color:inherit!important;
	box-shadow:none!important;
	font-family:'Sora',Arial,Helvetica,sans-serif!important;
	font-size:10.5px!important;
	font-weight:800!important;
	line-height:1.35!important;
	text-align:left!important;
	cursor:pointer!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-main:focus-visible{outline:2px solid #2A6AF6!important;outline-offset:3px!important}
.csh-cp-route-editor-add-form .custm-frequent-item-name{display:block!important;color:#0D1F3C!important;font-size:inherit!important;font-weight:inherit!important}
.csh-cp-route-editor-add-form .custm-frequent-item-specs{display:block!important;margin-top:2px!important;color:#7A8AAA!important;font-size:9px!important;font-weight:700!important;line-height:1.35!important}
.csh-cp-route-editor-add-form .custm-frequent-address-empty,
.csh-cp-route-editor-add-form .custm-frequent-item-empty{padding:12px!important;color:#7A8AAA!important;font-size:9.5px!important;font-weight:700!important;text-align:center!important}
.csh-cp-route-editor-add-form [data-csh-search][hidden]{display:none!important}

.csh-cp-route-editor-modal .csh-cp-route-editor-price-status{
	padding:4px 9px!important;
	border-radius:999px!important;
	font-size:8px!important;
	font-style:normal!important;
	font-weight:900!important;
	letter-spacing:.05em!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-status.is-current{background:#E8F0FE!important;color:#1A50CC!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-status.is-stale{background:#FEF3C7!important;color:#92400E!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-status.is-pricing{background:#E8F0FE!important;color:#1A50CC!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-status.is-ready{background:#DCFCE7!important;color:#166534!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer button:disabled{
	border-color:#DDE4EF!important;
	background:#F1F5F9!important;
	color:#94A3B8!important;
	box-shadow:none!important;
	cursor:not-allowed!important;
	opacity:1!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer button.is-reprice.is-loading::before{
	content:'';
	width:11px;
	height:11px;
	border:2px solid rgba(255,255,255,.48);
	border-top-color:#FFFFFF;
	border-radius:50%;
	animation:cshCpRouteEditorSpin .72s linear infinite;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-footer button.is-submit:not(:disabled){
	background:linear-gradient(135deg,#0D1F3C,#1A2E4A)!important;
	border-color:#0D1F3C!important;
	box-shadow:0 8px 18px rgba(13,31,60,.2)!important;
}

@media(max-width:860px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr) 190px!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row{grid-template-columns:1fr 220px}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer>div{flex-wrap:wrap!important}
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr)!important;align-items:start!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-side{grid-column:2!important;align-items:flex-start!important;margin-top:6px!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop-facts{justify-content:flex-start!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls{justify-content:flex-start!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-side>.csh-cp-route-editor-lock{align-self:flex-start!important}
	.csh-cp-route-editor-add-modal{padding:0}
	.csh-cp-route-editor-add-dialog{width:100%;height:100%;max-height:none;border:0;border-radius:0}
	.csh-cp-route-editor-add-dialog .csh-cp-route-editor-add-form{min-height:100%;padding:18px!important}
	.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-head{top:-18px;margin:-18px -18px 14px!important;padding:16px 18px 13px!important}
	.csh-cp-route-editor-add-dialog .csh-cp-route-editor-form-actions{bottom:-18px;margin:14px -18px -18px!important;padding:12px 18px!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row{grid-template-columns:1fr}
	.csh-cp-route-editor-add-form .custm-frequent-address-picker,
	.csh-cp-route-editor-add-form .custm-frequent-item-picker{width:100%!important}
	.csh-cp-route-editor-add-form .custm-frequent-address-menu,
	.csh-cp-route-editor-add-form .custm-frequent-item-menu{left:0!important;right:0!important;width:auto!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer>div{display:grid!important;grid-template-columns:1fr 1fr!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer button:last-child{grid-column:1/-1!important}
}
@media(max-width:430px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop-facts{align-items:flex-start!important;flex-direction:column!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer>div{grid-template-columns:1fr!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-footer button:last-child{grid-column:auto!important}
}
@media(prefers-reduced-motion:reduce){
	.csh-cp-route-editor-add-form .custm-frequent-address-trigger-caret,
	.csh-cp-route-editor-add-form .custm-frequent-item-trigger-caret{transition:none!important}
}


/* v1.13.24 route editor: compact stop facts and two-stage repricing flow. */
.csh-cp-route-editor-modal [data-csh-route-editor-step][hidden],
.csh-cp-route-editor-modal [data-csh-route-editor-footer][hidden]{display:none!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-address-line{
	display:flex!important;
	align-items:center!important;
	gap:7px!important;
	min-width:0!important;
	margin-top:1px!important;
	flex-wrap:wrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-address-line .csh-cp-route-editor-address{
	display:inline!important;
	min-width:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-address-line .csh-cp-route-editor-status{
	flex:0 0 auto!important;
	margin:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
	grid-template-columns:30px minmax(0,1fr) minmax(250px,310px)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-side{
	align-items:flex-end!important;
	justify-content:center!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:7px!important;
	width:100%!important;
	min-width:0!important;
	flex-wrap:wrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls.is-depot-controls{
	justify-content:flex-end!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-stop-eta{
	border-color:#86EFAC!important;
	background:#DCFCE7!important;
	color:#166534!important;
}
.csh-cp-route-editor-modal button.csh-cp-route-editor-eta.is-stop-eta:hover,
.csh-cp-route-editor-modal button.csh-cp-route-editor-eta.is-stop-eta:focus-visible{
	border-color:#22C55E!important;
	background:#F0FDF4!important;
	color:#15803D!important;
	box-shadow:0 0 0 3px rgba(34,197,94,.14)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-depot-eta{
	border-color:#CBD5E1!important;
	background:#F1F5F9!important;
	color:#64748B!important;
	cursor:default!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-lock{
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal [data-csh-route-editor-step="price"]{
	animation:cshCpRouteEditorPriceIn .2s ease-out both;
}
.csh-cp-route-editor-modal [data-csh-route-editor-step="price"] .csh-cp-route-editor-price-card{
	margin:0!important;
}
.csh-cp-route-editor-pricing-frame{display:none!important;width:0!important;height:0!important;border:0!important}
@keyframes cshCpRouteEditorPriceIn{
	from{opacity:0;transform:translateY(5px)}
	to{opacity:1;transform:translateY(0)}
}
@media(max-width:860px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr) minmax(220px,270px)!important}
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr)!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-side{grid-column:2!important;width:100%!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls{justify-content:flex-start!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls.is-depot-controls{justify-content:flex-start!important}
}
@media(prefers-reduced-motion:reduce){
	.csh-cp-route-editor-modal [data-csh-route-editor-step="price"]{animation:none!important}
}


/* v1.13.25 route editor: booking-style add-stop card, depot recovery, and compact stop facts. */
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-title-row{
	display:flex!important;
	align-items:center!important;
	justify-content:flex-start!important;
	gap:8px!important;
	min-width:0!important;
	flex-wrap:wrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-title-row>strong{
	color:#0D1F3C!important;
	font-size:11.5px!important;
	font-weight:900!important;
	line-height:1.25!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop-title-row .csh-cp-route-editor-status{
	flex:0 0 auto!important;
	margin:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-address-line{
	margin-top:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-address-line .csh-cp-route-editor-status{
	display:none!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls.is-depot-controls{
	justify-content:flex-end!important;
	flex-wrap:nowrap!important;
	gap:7px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls.is-depot-controls .csh-cp-route-editor-lock{
	margin-left:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-depot .csh-cp-route-editor-stop-badge svg{
	width:15px!important;
	height:15px!important;
}

.csh-cp-route-editor-add-dialog .csh-cp-route-editor-add-form{
	background:#FFFFFF!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-card{
	overflow:visible;
	margin:0;
	border:1px solid #D8E0EC;
	border-radius:14px;
	background:#F1F5F9;
	box-shadow:none;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-head{
	display:flex;
	align-items:center;
	gap:11px;
	min-height:52px;
	padding:10px 14px;
	border-bottom:1px solid #D8E0EC;
	border-radius:14px 14px 0 0;
	background:#FFFFFF;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-number{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 28px;
	width:28px;
	height:28px;
	border-radius:50%;
	background:#2A6AF6;
	color:#FFFFFF;
	font-size:11px;
	font-weight:900;
	box-shadow:0 5px 13px rgba(42,106,246,.18);
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-preview{
	min-width:0;
	overflow:hidden;
	color:#94A3B8;
	font-size:12px;
	font-style:italic;
	font-weight:650;
	line-height:1.35;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-preview.has-value{
	color:#475569;
	font-style:normal;
	font-weight:750;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-stop-body{
	display:flex;
	flex-direction:column;
	gap:11px;
	padding:13px 14px 15px;
	border-radius:0 0 14px 14px;
	background:#F1F5F9;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid{
	display:grid!important;
	grid-template-columns:1.15fr 1fr .9fr!important;
	gap:9px!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid .is-wide{
	grid-column:1/-1!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid label,
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-block label{
	display:flex!important;
	flex-direction:column!important;
	gap:5px!important;
	min-width:0!important;
	margin:0!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid label>span,
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-block label>span{
	color:#475569!important;
	font-size:8.5px!important;
	font-weight:900!important;
	letter-spacing:.07em!important;
	line-height:1.2!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid label>span em{
	display:inline-flex!important;
	margin-left:5px!important;
	padding:1px 6px!important;
	border:1px solid #A9C7FF!important;
	border-radius:999px!important;
	background:#EFF6FF!important;
	color:#2A6AF6!important;
	font-size:7.5px!important;
	font-style:normal!important;
	font-weight:900!important;
	letter-spacing:.08em!important;
	vertical-align:middle!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid input,
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>input,
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table input,
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table select{
	border:1px solid #CBD5E1!important;
	border-radius:9px!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:10.5px!important;
	font-weight:650!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid input{
	height:38px!important;
	min-height:38px!important;
	padding:8px 10px!important;
}
.csh-cp-route-editor-add-form input:focus,
.csh-cp-route-editor-add-form select:focus{
	outline:none!important;
	border-color:#2A6AF6!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-add-form .is-invalid{
	border-color:#EF4444!important;
	box-shadow:0 0 0 3px rgba(239,68,68,.11)!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-return{
	margin:0!important;
	border:1px solid #CBD5E1!important;
	border-radius:13px!important;
	background:#FFFFFF!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-block{
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) 215px!important;
	gap:0!important;
	align-items:stretch!important;
	position:relative!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>input{
	height:38px!important;
	min-height:38px!important;
	padding:8px 222px 8px 10px!important;
	grid-column:1/-1!important;
	grid-row:1!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>.custm-frequent-address-picker{
	position:absolute!important;
	top:4px!important;
	right:5px!important;
	bottom:auto!important;
	width:210px!important;
	max-width:42%!important;
	z-index:8!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-item-tools{
	margin:0!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table-wrap{
	overflow-x:auto!important;
	margin:0!important;
	border:1px solid #D8E0EC!important;
	border-radius:11px!important;
	background:#FFFFFF!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table{
	min-width:720px!important;
	border-collapse:collapse!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table thead{
	background:#F1F5F9!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table th{
	padding:8px 8px!important;
	color:#64748B!important;
	font-size:8px!important;
	font-weight:900!important;
	letter-spacing:.08em!important;
	text-align:left!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table td{
	padding:6px 5px!important;
	border-top:1px solid #E4E8F4!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table input,
.csh-cp-route-editor-add-form .csh-cp-route-editor-items-table select{
	min-height:34px!important;
	padding:6px 7px!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-presets{
	margin:0!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-presets>strong{
	display:block!important;
	margin-bottom:6px!important;
	color:#64748B!important;
	font-size:8.5px!important;
	font-weight:900!important;
	letter-spacing:.08em!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-add-item{
	width:100%!important;
	min-height:34px!important;
	border:1px dashed #CBD5E1!important;
	border-radius:10px!important;
	background:rgba(255,255,255,.45)!important;
	color:#64748B!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-form-error{
	margin-top:12px!important;
	border:1px solid #FECACA!important;
	border-radius:10px!important;
	background:#FEF2F2!important;
	color:#B91C1C!important;
	font-size:10px!important;
	font-weight:800!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-form-error.is-info{
	border-color:#BFDBFE!important;
	background:#EFF6FF!important;
	color:#1D4ED8!important;
}
.csh-cp-route-editor-add-form button:disabled{
	cursor:not-allowed!important;
	opacity:.68!important;
}
@media(max-width:720px){
	.csh-cp-route-editor-add-form .csh-cp-route-editor-booking-grid{grid-template-columns:1fr!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row{grid-template-columns:1fr!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>input{padding-right:10px!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>.custm-frequent-address-picker{position:relative!important;top:auto!important;right:auto!important;width:100%!important;max-width:none!important;margin-top:7px!important}
}


/* v1.13.26 route editor: compact status pills and locked-stop ETA alignment. */
.csh-cp-route-editor-modal .csh-cp-route-editor-status{
	min-height:10px!important;
	font-size:7px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-side{
	justify-content:center!important;
	align-items:flex-end!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-controls{
	width:100%!important;
	justify-content:flex-end!important;
	flex-wrap:nowrap!important;
	gap:7px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-eta.is-stop-eta{
	margin-left:auto!important;
	order:1!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-lock{
	order:2!important;
	margin-left:0!important;
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-controls{
		justify-content:flex-start!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop.is-locked .csh-cp-route-editor-eta.is-stop-eta{
		margin-left:0!important;
	}
}

/* v1.13.27 route editor: grouped depots, constrained ETAs, route repricing comparison, and add-stop validation. */
.csh-cp-route-editor-modal [hidden]{display:none!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-stop{
	grid-template-columns:30px minmax(0,1fr) minmax(330px,390px)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-date{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	min-height:22px!important;
	padding:3px 7px!important;
	border:1px solid #D8E0EC!important;
	border-radius:7px!important;
	background:#F8FAFC!important;
	color:#64748B!important;
	font-size:8px!important;
	font-weight:800!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-return-tag{
	display:inline-flex!important;
	align-items:center!important;
	min-height:18px!important;
	padding:2px 7px!important;
	border:1px solid #BFDBFE!important;
	border-radius:999px!important;
	background:#EFF6FF!important;
	color:#1D4ED8!important;
	font-size:7px!important;
	font-weight:900!important;
	letter-spacing:.03em!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-controls{
	flex-wrap:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-depot-eta.is-editable{
	border-color:#86EFAC!important;
	background:#DCFCE7!important;
	color:#166534!important;
	cursor:pointer!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-depot-eta.is-editable:hover,
.csh-cp-route-editor-modal .csh-cp-route-editor-eta.is-depot-eta.is-editable:focus-visible{
	border-color:#22C55E!important;
	background:#F0FDF4!important;
	box-shadow:0 0 0 3px rgba(34,197,94,.14)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary{
	display:grid!important;
	grid-template-columns:minmax(0,1fr)!important;
	gap:10px!important;
	margin:0 0 12px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{
	grid-template-columns:minmax(0,1.55fr) minmax(180px,.45fr)!important;
	align-items:stretch!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) auto!important;
	align-items:center!important;
	gap:12px!important;
	margin:0!important;
	padding:10px 12px!important;
	border:1px solid #BFDBFE!important;
	border-radius:14px!important;
	background:#EFF6FF!important;
	min-height:68px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule>div:first-child{
	display:flex!important;
	flex-direction:column!important;
	gap:2px!important;
	justify-content:center!important;
	align-self:stretch!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule strong{
	color:#0D1F3C!important;
	font-family:inherit!important;
	font-size:9px!important;
	font-weight:900!important;
	line-height:1.2!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule>div:first-child span{
	color:#64748B!important;
	font-family:inherit!important;
	font-size:7.25px!important;
	font-weight:650!important;
	line-height:1.35!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule-fields{
	display:grid!important;
	grid-template-columns:128px 108px!important;
	align-items:end!important;
	gap:8px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule label{
	display:flex!important;
	flex-direction:column!important;
	gap:3px!important;
	margin:0!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule label>span{
	color:#475569!important;
	font-family:inherit!important;
	font-size:8.5px!important;
	font-weight:900!important;
	line-height:1.1!important;
	letter-spacing:.05em!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input,
.csh-cp-route-editor-modal input[name="route_editor_job_date"],
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]{
	box-sizing:border-box!important;
	width:100%!important;
	min-height:25px!important;
	height:25px!important;
	padding:2px 5px!important;
	border:1px solid #B8C8E3!important;
	border-radius:8px!important;
	background:#FFFFFF!important;
	color:#0D1F3C!important;
	font-family:Arial,Helvetica,sans-serif!important;
	font-size:12px!important;
	font-weight:700!important;
	font-style:normal!important;
	line-height:1!important;
	letter-spacing:0!important;
	text-transform:none!important;
	-webkit-text-size-adjust:100%!important;
}
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-fields-wrapper,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-fields-wrapper,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-text,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-text,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-day-field,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-month-field,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-year-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-hour-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-minute-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-ampm-field{
	font-family:Arial,Helvetica,sans-serif!important;
	font-size:12px!important;
	font-weight:700!important;
	line-height:1!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input:focus{
	outline:none!important;
	border-color:#2A6AF6!important;
	box-shadow:0 0 0 3px rgba(42,106,246,.12)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader{
	display:grid!important;
	grid-template-columns:100px minmax(0,1fr)!important;
	grid-template-rows:auto auto!important;
	align-items:center!important;
	column-gap:14px!important;
	row-gap:3px!important;
	margin:0 0 14px!important;
	padding:13px 16px!important;
	border:1px solid #BFDBFE!important;
	border-radius:14px!important;
	background:linear-gradient(135deg,#F8FBFF,#EFF6FF)!important;
	box-shadow:0 2px 16px rgba(42,106,246,.08)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader strong{
	grid-column:2!important;
	grid-row:1!important;
	color:#0D1F3C!important;
	font-size:11px!important;
	font-weight:900!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader>span{
	grid-column:2!important;
	grid-row:2!important;
	color:#64748B!important;
	font-size:9px!important;
	font-weight:650!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-road{
	position:relative!important;
	grid-column:1!important;
	grid-row:1/3!important;
	height:34px!important;
	overflow:hidden!important;
	border-radius:8px!important;
	background:linear-gradient(to bottom,transparent 16px,#CBD5E1 16px,#CBD5E1 18px,transparent 18px)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-road::after{
	content:""!important;
	position:absolute!important;
	left:0!important;
	right:0!important;
	top:16px!important;
	height:2px!important;
	background:repeating-linear-gradient(90deg,#FFFFFF 0 8px,transparent 8px 15px)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-road img{
	position:absolute!important;
	z-index:2!important;
	top:3px!important;
	left:0!important;
	width:42px!important;
	height:28px!important;
	object-fit:contain!important;
	animation:cshCpRouteEditorTruck 1.55s ease-in-out infinite!important;
}
@keyframes cshCpRouteEditorTruck{
	0%{transform:translateX(-45px)}
	55%,75%{transform:translateX(55px)}
	100%{transform:translateX(105px)}
}

.csh-cp-route-editor-modal .csh-cp-route-editor-booked-price{
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	gap:6px!important;
	min-height:68px!important;
	margin:0!important;
	padding:10px 14px!important;
	border:1px solid #D8E0EC!important;
	border-radius:14px!important;
	background:#FFFFFF!important;
	text-align:center!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-booked-price span{
	color:#64748B!important;
	font-size:7.5px!important;
	font-weight:900!important;
	letter-spacing:.06em!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-booked-price strong{
	color:#0D1F3C!important;
	font-size:18px!important;
	font-weight:900!important;
	line-height:1!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-audit{
	margin:0!important;
	padding:10px 16px!important;
	border-top:1px solid #D8E0EC!important;
	font-size:8.5px!important;
	font-weight:750!important;
	line-height:1.45!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-audit.is-valid{
	background:#F0FDF4!important;
	color:#166534!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-price-audit.is-warning{
	background:#FFF7ED!important;
	color:#9A3412!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-eta-availability{
	display:block!important;
	margin:-2px 0 2px!important;
	color:#64748B!important;
	font-size:8.5px!important;
	font-weight:700!important;
	line-height:1.4!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>.custm-frequent-address-picker{
	top:4px!important;
	transform:none!important;
}
.csh-cp-route-editor-add-form .custm-frequent-address-trigger{
	min-height:25px!important;
	height:25px!important;
	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;
	padding-top:3px!important;
	padding-bottom:3px!important;
}
.csh-cp-route-editor-add-form input.is-invalid,
.csh-cp-route-editor-add-form select.is-invalid,
.csh-cp-route-editor-add-form textarea.is-invalid,
.csh-cp-route-editor-add-form .custm-frequent-address-trigger.is-invalid,
.csh-cp-route-editor-add-form .custm-frequent-item-trigger.is-invalid{
	border-color:#EF4444!important;
	box-shadow:0 0 0 3px rgba(239,68,68,.12)!important;
	background:#FFF7F7!important;
}
.csh-cp-route-editor-add-form input.is-invalid{
	border:1px solid #EF4444!important;
	box-shadow:none!important;
	background:#FFFFFF!important;
}
@media(max-width:920px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr) minmax(280px,330px)!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{grid-template-columns:minmax(0,1.4fr) minmax(170px,.6fr)!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule-fields{grid-template-columns:118px 100px!important}
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-stop{grid-template-columns:28px minmax(0,1fr)!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-controls{flex-wrap:wrap!important;justify-content:flex-start!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{grid-template-columns:1fr!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule{grid-template-columns:1fr!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule-fields{grid-template-columns:1fr 1fr!important;width:100%!important}
	.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader{grid-template-columns:82px minmax(0,1fr)!important}
	.csh-cp-route-editor-add-form .csh-cp-route-editor-address-row>.custm-frequent-address-picker{
		position:relative!important;
		top:auto!important;
		right:auto!important;
		transform:none!important;
		width:100%!important;
		max-width:none!important;
		margin-top:7px!important;
	}
}
@media(prefers-reduced-motion:reduce){
	.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-road img{animation:none!important;left:28px!important}
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader[hidden]{display:none!important}


/* v1.13.48 Edit Route topology and workflow UI hardening */
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule strong{
	font-size:11px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule>div:first-child span{
	font-size:9.25px!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-block{
	position:relative!important;
	z-index:120!important;
	overflow:visible!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-address-suggestions{
	z-index:180!important;
}
.csh-cp-route-editor-add-form .csh-cp-route-editor-item-tools{
	position:relative!important;
	z-index:20!important;
}
.csh-cp-route-editor-add-form .custm-frequent-item-picker,
.csh-cp-route-editor-add-form .custm-frequent-item-menu{
	z-index:30!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader{
	position:absolute!important;
	inset:0!important;
	z-index:95!important;
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	gap:8px!important;
	width:100%!important;
	height:100%!important;
	margin:0!important;
	padding:32px!important;
	border:0!important;
	border-radius:0!important;
	background:rgba(247,249,252,.96)!important;
	box-shadow:none!important;
	backdrop-filter:blur(4px)!important;
	text-align:center!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader .csh-cp-route-editor-reprice-road{
	grid-column:auto!important;
	grid-row:auto!important;
	flex:0 0 auto!important;
	width:180px!important;
	height:52px!important;
	margin:0 auto 4px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader strong{
	grid-column:auto!important;
	grid-row:auto!important;
	font-size:14px!important;
	line-height:1.3!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader>span{
	grid-column:auto!important;
	grid-row:auto!important;
	max-width:440px!important;
	font-size:10px!important;
	line-height:1.5!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-road img{
	width:54px!important;
	height:36px!important;
}
@keyframes cshCpRouteEditorTruck{
	0%{transform:translateX(-58px)}
	55%,75%{transform:translateX(92px)}
	100%{transform:translateX(188px)}
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader{
		padding:24px!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-reprice-loader .csh-cp-route-editor-reprice-road{
		width:150px!important;
	}
}

/* v1.13.49 Edit Route schedule visibility hardening. */
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule[hidden]{
	display:none!important;
}


/* v1.13.57 Customer Portal stale-version protection and Edit Route loading gate. */
html.csh-cp-refresh-required,
html.csh-cp-refresh-required body{overflow:hidden!important}
.csh-cp-route-editor-modal.is-loading-details [data-csh-route-editor-step],
.csh-cp-route-editor-modal.is-loading-details .csh-cp-route-editor-footer,
.csh-cp-route-editor-modal.is-loading-details .csh-cp-route-editor-api-note,
.csh-cp-route-editor-modal.is-loading-details .csh-cp-route-editor-notice{
	visibility:hidden!important;
	pointer-events:none!important;
}
.csh-cp-route-editor-modal.is-loading-details .csh-cp-route-editor-panel{
	min-height:min(620px,calc(100dvh - 36px))!important;
}
.csh-cp-route-editor-modal.is-loading-details .csh-cp-route-editor-body{
	min-height:420px!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="date"],
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="time"],
.csh-cp-route-editor-modal input[name="route_editor_job_date"],
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"],
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="date"]::-webkit-datetime-edit,
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="time"]::-webkit-datetime-edit,
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="date"]::-webkit-datetime-edit-fields-wrapper,
.csh-cp-route-editor-modal .csh-cp-route-editor-reschedule input[type="time"]::-webkit-datetime-edit-fields-wrapper{
	font-size:12px!important;
	font-weight:700!important;
	line-height:1.2!important;
}

/* v1.13.56 Native date/time text must retain the requested +2px size in Chromium. */
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-text,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-text,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-day-field,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-month-field,
.csh-cp-route-editor-modal input[name="route_editor_job_date"]::-webkit-datetime-edit-year-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-hour-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-minute-field,
.csh-cp-route-editor-modal input[name="route_editor_job_start_time"]::-webkit-datetime-edit-ampm-field{
	font-size:12px!important;
	font-weight:700!important;
	line-height:1.2!important;
}

/* v1.13.56 Reload-required modal must sit above Edit Route and other portal overlays. */
.csh-cp-env-modal{z-index:1000100!important}

/* v1.13.69 Edit Route Admin Panel vehicle assignment. */
.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary{
	grid-template-columns:minmax(0,1fr) minmax(180px,.45fr)!important;
	align-items:stretch!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{
	grid-template-columns:minmax(0,1.35fr) minmax(165px,.38fr) minmax(170px,.4fr)!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle{
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	gap:5px!important;
	min-width:0!important;
	min-height:68px!important;
	margin:0!important;
	padding:10px 12px!important;
	border:1px solid #D8E0EC!important;
	border-radius:14px!important;
	background:#FFFFFF!important;
	text-align:center!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle>span{
	color:#64748B!important;
	font-size:7.5px!important;
	font-weight:900!important;
	letter-spacing:.06em!important;
	text-transform:uppercase!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle>div{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:5px!important;
	min-width:0!important;
	max-width:100%!important;
	flex-wrap:wrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle strong{
	max-width:100%!important;
	color:#0D1F3C!important;
	font-size:13px!important;
	font-weight:900!important;
	line-height:1.15!important;
	word-break:break-word!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle em{
	dis:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	padding:2px 5px!important;
	border:1px solid #99F6E4!important;
	border-radius:999px!important;
	background:#ECFDF5!important;
	color:#047857!important;
	font-size:6.5px!important;
	font-style:normal!important;
	font-weight:900!important;
	line-height:1.2!important;
	letter-spacing:.025em!important;
	white-space:nowrap!important;
}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle em[hidden]{display:none!important}
.csh-cp-route-editor-modal .csh-cp-route-editor-vehicle small{
	color:#7A8AAA!important;
	font-size:7.25px!important;
	font-weight:700!important;
	line-height:1.2!important;
}
@media(max-width:920px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{
		grid-template-columns:minmax(0,1fr) minmax(170px,.5fr)!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule .csh-cp-route-editor-reschedule{
		grid-column:1/-1!important;
	}
}
@media(max-width:720px){
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary,
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule{
		grid-template-columns:1fr!important;
	}
	.csh-cp-route-editor-modal .csh-cp-route-editor-route-summary.has-reschedule .csh-cp-route-editor-reschedule{
		grid-column:auto!important;
	}
}

/* v1.13.70: compact inline ETA validation, directly below the time input. */
.csh-cp-route-editor-modal .csh-cp-route-editor-eta-card .csh-cp-route-editor-form-error{
	margin:-2px 0 0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	background:transparent!important;
	color:#DC2626!important;
	font-size:8.5px!important;
	font-weight:800!important;
	line-height:1.35!important;
}


/* v1.13.72 Edit Route confirmation-email completion step. */
.csh-cp-route-editor-modal [data-csh-route-editor-step="confirmation"]{animation:cshCpRouteEditorPriceIn .2s ease-out both}
.csh-cp-route-editor-confirmation{max-width:680px;margin:12px auto 0;padding:34px 30px;border:1px solid #A7F3D0;border-radius:20px;background:#FFFFFF;box-shadow:0 8px 28px rgba(13,31,60,.08);text-align:center}
.csh-cp-route-editor-confirmation.is-warning{border-color:#FED7AA}
.csh-cp-route-editor-confirmation-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#DCFCE7;color:#15803D;font-size:26px;font-weight:900}
.csh-cp-route-editor-confirmation.is-warning .csh-cp-route-editor-confirmation-icon{background:#FFF7ED;color:#C2410C}
.csh-cp-route-editor-confirmation h3{margin:16px 0 8px;color:#0D1F3C;font-size:21px;font-weight:900}
.csh-cp-route-editor-confirmation>p{max-width:520px;margin:0 auto 18px;color:#3A4A6A;font-size:13px;line-height:1.65}
.csh-cp-route-editor-confirmation-recipient{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 auto 14px;padding:13px 15px;border:1px solid #E4E8F4;border-radius:14px;background:#F5F7FC;text-align:left}
.csh-cp-route-editor-confirmation-recipient small{color:#7A8AAA;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.csh-cp-route-editor-confirmation-recipient strong{min-width:0;color:#0D1F3C;font-size:12px;word-break:break-word}
.csh-cp-route-editor-confirmation-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.csh-cp-route-editor-confirmation-files>div{display:flex;align-items:center;gap:9px;padding:12px 13px;border:1px solid #BBF7D0;border-radius:12px;background:#ECFDF5;color:#047857;font-size:11px;font-weight:800;text-align:left}
.csh-cp-route-editor-confirmation-files>div.is-unavailable{border-color:#FED7AA;background:#FFF7ED;color:#9A3412}
.csh-cp-route-editor-confirmation-files b{font-size:14px}
.csh-cp-route-editor-confirmation-note{display:block;margin-top:16px;color:#7A8AAA;font-size:10.5px;line-height:1.55}
.csh-cp-route-editor-footer.is-confirmation>div{margin-left:auto}
@media(max-width:640px){.csh-cp-route-editor-confirmation{padding:26px 18px}.csh-cp-route-editor-confirmation-files{grid-template-columns:1fr}.csh-cp-route-editor-confirmation-recipient{align-items:flex-start;flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){.csh-cp-route-editor-modal [data-csh-route-editor-step="confirmation"]{animation:none!important}}
