/*













 */
@layer reset, bootstrap, base, layout, components;
/* Reset and Bootstrap stay imported so their rules can be assigned to cascade layers. */
@import url(/assets/portal_v2/reset-b1fa82424f3c6500b7fea5df696278dc8969ecc8e9d27a0dec276a544f516e8b.css) layer(reset);
@import url(/assets/bootstrap/dist/css/bootstrap.min-76cd52a9f5bf2378ed3bddab7253a8d2ee4a1fb9de52d1bb69612a5b0c308b79.css) layer(bootstrap);

@layer base {
  html {
    height: 100%;
    /* Fixed root size. The whole UI is rem-based, so this is the single lever for
       overall size. We deliberately do NOT tie this to viewport units (vw): a
       vw-based root font fights browser/OS zoom (zoom shrinks the CSS viewport). With a fixed
       root, zoom and OS display scaling behave naturally and predictably — the whole
       interface scales uniformly. Tune overall size by changing this one value. */
		font-size: 0.95rem;
  }

  body {
    height: 100%;
    margin: 0;
    font-family: Geist;
    background-color: var(--gray-100);
    /* `clip` (not `hidden`) prevents horizontal overflow without forcing
       overflow-y to compute to `auto`, which would otherwise turn <body> into a
       scroll container and clip elements that intentionally overflow upward
       (e.g. the header notification count badge). */
    overflow-x: clip;
  }

	h1 {
		font-size: 1.5rem;
	}

	a {
		text-decoration: none;
		color: var(--eggplant-300);
		&:visited {
			color: var(--eggplant-600);
		}
	}


	:root {
		accent-color: var(--orange-600);
		--text-size-base: 1rem;

		--sidebar-w: 13rem;
		--header-h: 3.5rem;

		--white: white;
		--bg-shade-white: var(--white);
		--text-secondary: #808080;
		--red-100: #fcbbbb;
		--red-600: #9c1111;
		--gray-100: #f6f4f4;
		--gray-150: #f2f0f0;
		--gray-200: #F0F0F0;
		--gray-300: #e1e1e1;
		--gray-500: #949494;
		--gray-800: #2A2D34;
		--gray-999: #101010;
		--brown-200: #fbe0bb;
		--brown-600: #9c5211;
		--green-200: #c8e6c9;
		--green-600: #3d7a42;
		--orange-100: #F15822;
		--orange-300: #ff7f52;
		--orange-600: #f05822;
		--orange-800: #da5223;
		--eggplant-100: #d9b8d6;
		--eggplant-300: #7a3f72;
		--eggplant-600: #421a48;
		--eggplant-800: #2d0134;
		--gold-100: #FFF7E2;
		--gold-900: #F1E595;
		--gold-950: #F4B02C;
		--blue-600: #266AF2;

		/* Bootstrap overrides */
		--bs-border-width: 1px;
		--bs-border-radius: 0.375rem;
		--bs-border-color: var(--gray-300);
		--bs-body-font-family: Geist, sans-serif;
		--bs-body-font-size: var(--text-size-base);
		--bs-body-color: var(--gray-999);
		--bs-primary: var(--orange-600);
		--bs-blue: var(--orange-600);
	}
}
@layer layout {
	div.env-banner {
		background-color: var(--orange-600);
		color: var(--white);
		text-align: center;
		font-weight: bold;
		padding: 0.25rem 0;
	}
	body {
		#wrapper {
			display: grid;
			min-height: 100vh;
			grid-template-columns: var(--sidebar-w) minmax(0, 1fr);
			grid-template-rows:
				[header-start] minmax(var(--header-h), auto)
				[header-end main-start] minmax(0, 1fr)
				[main-end footer-start] min-content
				[footer-end];

			#sidebar {
				position: fixed;
				top: 0;
				left: 0;
				bottom: 0;
				width: var(--sidebar-w);
				overflow-y: auto;
				overflow-x: hidden;
				z-index: 1000;
			}

			> header,
			> main,
			> footer {
				grid-column: 2;
			}

			> footer {
				grid-row: footer-start / footer-end;
			}
		}
	}
}
@layer layout {
	@layer sidebar {
		#sidebar {
			background-color: #3B1B4B;
			padding: 1rem 0.75rem;
			display: fixed;

			#logo_button {
				display: block;

				img {
					width: 11rem;
					max-width: 100%;
					height: auto;
				}
			}

			.button_text {
				font-size: 0.8rem;
				white-space: nowrap;
			}

			.sidebar-actions {
				padding: 0 1rem;
			}

			.selected_v2 {
				color: #ff5f0f;
				font-size: 0.85rem;

				svg {
					color: #E35205;
				}
			}

			.sidebar_link {
				font-size: 0.85rem;
			}


			a {
				color: white;
			}

			nav {
				font-size: var(--text-size-base);
				h2 {
					margin-top: 1.5rem;
					text-transform: uppercase;
					font-size: 0.8rem;
					color: var(--white);
					opacity: 0.4;
				}
				menu {
					list-style: none;

					li {
						padding: 0.5rem 1rem;
						a {
							display: flex;
							align-items: center;
							gap: 0.5rem;
						}
					}
				}
			}
		}
	}
}


.portal-sidebar__label {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.portal-sidebar__count {
	background-color: #E35205;
	color: #fff;
	border-radius: 999px;
	padding: 0 0.35rem;
	font-size: 0.7rem;
	font-weight: 600;
	line-height: 1.4;
	vertical-align: middle;
	text-align: center;
}
.ui_feedback {
	#feedback_modal {
		position: fixed;
		z-index: 10000;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.modal_overlay {
		background-color: rgba(0, 0, 0, 0.6);
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.modal_box {
		background: white;
		padding: 25px;
		border-radius: 8px;
		width: 450px;
		max-width: 90%;
		box-shadow: 0 5px 15px rgba(0,0,0,0.3);

		p {
			font-size: medium;
		}

		textarea {
			width: 100%;
			margin-bottom: 15px;
			padding: 10px;
			border: 1px solid #ddd;
			border-radius: 4px;
		}

		.modal_buttons {
			display: flex;
			justify-content: center;
			gap: 10px;

			.btn_primary {
				border: 1px solid #5B1C69;
				background-color: #5B1C69;
				color: var(--white);
				width: 35%;
			}

			.btn_primary:hover {
				background-color: color-mix(in srgb, #5B1C69 90%, black);
				border-color: color-mix(in srgb, #5B1C69 90%, black);
			}
		}
	}
}
@layer components {
	@layer header {
		body >header, #wrapper > header {
			.portal-header__count {
				font-size: 0.75em;
				font-weight: 400;
				line-height: 1.5;
				color: var(--text-secondary);
			}

			.portal-header__actions {
				display: flex;
				align-items: flex-end;
				gap: 1rem;
			}

			.portal-header__icon {
				padding: 0;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				border: none;
				background: none;
				cursor: pointer;
				position: relative;
				appearance: none;
				-webkit-appearance: none;
			}

			.portal-header__icon:focus-visible {
				outline: 2px solid var(--eggplant-300);
				outline-offset: 2px;
			}

			.portal-header__icon-image {
				display: block;
			}


		.header_notification_bell {
			position: relative;
		}

		.portal-header__notification-count {
			position: absolute;
			top: 0;
			right: 0;
			/* Ease the upward pull so the badge keeps clearance from the page top
			   (the header sits at y=0) and never clips. Pairs with the rem-based
			   bell height so the proportion holds at every zoom level. */
			transform: translate(50%, -35%);
			min-width: 1rem;
			height: 1rem;
			padding: 0 0.25rem;
			border-radius: 999px;
			background-color: #DE5614;
			color: var(--white);
			font-size: 0.625rem;
			font-weight: 600;
			text-align: center;

			display: flex;
			align-items: center;
			justify-content: center;
			line-height: 0;
		}


			.portal-header__popover-mark-read:disabled,
			.portal-header__popover-mark-read[aria-disabled="true"] {
				cursor: default;
				opacity: 0.6;
			}

			.portal-header__popover-mark-read:hover,
			.portal-header__popover-mark-read:focus-visible {
				text-decoration: none;
			}

			.portal-header__popover-mark-read:focus-visible {
				outline: 2px solid var(--eggplant-300);
				outline-offset: 2px;
			}

			ul {
				margin: 0;
				padding: 0;
				list-style: none;

				li + li {
					border-top: 1px solid var(--border-100);
				}

				li {
					padding-left: 1rem;
					position: relative;

					&.new:before {
						content: '•';
						color: var(--orange-600);
						display: inline-block;
						position: absolute;
						left: 1rem;
						top: 40%;
					}

					.portal-header__popover-content {
						display: flex;
						flex-direction: column;
						gap: 0.5rem;
						padding: 10px 20px;
						color: inherit;
						text-decoration: none;
						transition: background-color 120ms ease-in-out;

						.portal-header__popover-item-title {
							color: var(--gray-999);
							font-size: 1em;
							font-weight: 500;
						}
						.portal-header__popover-item-message {
							font-size: 0.875em;
							font-weight: 400;
							line-height: 1.25;
							color: var(--gray-999);
						}
						.portal-header__popover-item-meta {
							font-size: 0.875em;
							color: var(--gray-500);
						}
					}

					.portal-header__popover-link:hover,
					.portal-header__popover-link:focus-visible {
						background-color: var(--gray-100);
						outline: 2px solid var(--eggplant-300);
						outline-offset: -2px;
					}
				}
			}

			.portal-header__account {
				position: relative;
			}

			button {
				background-color: transparent;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				cursor: pointer;
				color: var(--gray-999);

				&:hover,
				&:focus-visible {
					border-color: var(--eggplant-300);
					outline: none;
				}
			}
		}
			.header_notification_bell:focus,
			.header_notification_bell:active,
			.header_notification_bell:active,
			.header_notification_bell.show {
				outline: none;
				box-shadow: none;
				background-color: var(--gray-100);
				border-radius: 0.375rem;
			}

			.header_notification_bell + .dropdown-menu {
				overflow: hidden;
			}

			.header_notification_bell + .dropdown-menu .dropdown-item:active,
			.header_notification_bell + .dropdown-menu .dropdown-item:focus {
				background-color: var(--gray-100);
				color: var(--gray-999);
				outline: none;
			}

			.notification-dropdown__empty-state {
				display: block;
				padding: 1.25rem 1rem 0.75rem;
				text-align: center;
				color: var(--gray-500);
				font-size: 0.8125rem;
				letter-spacing: 0.02em;
				list-style: none;
				pointer-events: none;
				cursor: default;
			}
		}
	}
}
@layer base {
	@layer content {
		main {
			header {
				font-size: 2rem;
				line-height: 1.5;
			}
			h1, h2, h3 {
				font-weight: 600;
				color: var(--gray-999);
			}
			h1 {
				font-size: 1rem;
				line-height: 2;
			}
			h2 {
				font-size: 1rem;
				font-weight: 500;
				line-height: 2;
			}
			h3 {
				font-size: 1rem;
				line-height: 1.75;
				font-weight: 400;
			}
			p {
				color: var(--text-primary);
				line-height: 1.75;
			}
			menu, ul {
				list-style: none;
				li {
					line-height: 2;
				}
			}
			pre {
				background-color: var(--gray-800);
				color: var(--gold-900);
				padding: 1.5rem;
				white-space: pre-wrap;
			}
		}
	}
}

@layer layout {
	@layer content {
		.slidingpane-wrap {
			display: none;
		}
		main {
			grid-row: main-start / main-end;
			display: flex;
			flex-direction: column;
			gap: 0.25rem;
			padding: 1rem 1rem;

			> section {
				background-color: var(--white);
				box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
				padding: 2rem;
				border-radius: 0.825rem;
			}

			pre {
				margin: 1rem 0;
			}

			fieldset {
				margin-top: 1rem;
			}

			label {
				font-weight: 400;
				line-height: 1.5rem;
			}

			.sidebar-detail {
				display: flex;
				align-items: stretch;
				flex: 1 1 16rem;
				gap: 0;
				padding-top: 1rem;
				&, &.sidebar-left {
					.sidebar {
						border-top-left-radius: 0.825rem;
						border-bottom-left-radius: 0.825rem;
					}
					.detail {
						border-top-right-radius: 0.825rem;
						border-bottom-right-radius: 0.825rem;
					}
				}
				&.sidebar-right {
					flex-direction: row-reverse;
					.sidebar {
						border-top-right-radius: 0.825rem;
						border-bottom-right-radius: 0.825rem;
					}
					.detail {
						border-top-left-radius: 0.825rem;
						border-bottom-left-radius: 0.825rem;
					}
				}
				.sidebar, nav {
					flex: 0 0 var(--sidebar-w);
					background-color: var(--white);
					padding: 1.5rem;
					&.no-background {
						background-color: transparent;
					}
					&.full-bleed {
						padding: 0;
					}
				}

				.detail, .sidebar + div, nav + div {
					padding: 1rem;
					background-color: var(--gray-150);
					flex: 1 1 calc(3 * var(--sidebar-w));
					overflow: hidden;
					display: flex;
					flex-direction: column;
					gap: 1rem;
					border-top: solid 1px var(--gray-300);
					border-right: solid 1px var(--gray-300);
					border-bottom: solid 1px var(--gray-300);
					&.scroll {
						overflow-y: scroll;
					}
				}

				&.equal-width {
					.sidebar, nav {
						flex: 1 1 0;
					}
					.detail {
						flex: 1 1 0;
					}
				}
			}
		}
	}
}

@layer components {
	@layer content {
		.sidebar-detail {
			nav {
				li:hover {
					background-color: var(--white);
				}
				a {
					color: var(--gray-999);
				}
			}
		}
	}
}

@layer base {
	@layer footer {
		footer {
			text-align: center;
			color: var(--gray-500);
			font-size: 0.875rem;
		}

		footer .spacer {
			display: inline-block;
			width: 25px;
		}

		.producer_portal_service_request.v2 {
			position: fixed;
			bottom: 40px;
			right: 40px;
			width: 56px;
			height: 56px;
			background-color: var(--eggplant-800);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			z-index: 1000;
			cursor: pointer;
			box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
		}

		.producer_portal_service_request_close.v2 {
			position: fixed;
			bottom: 40px;
			right: 40px;
			width: 56px;
			height: 56px;
			background-color: var(--eggplant-800);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			z-index: 1000;
			cursor: pointer;
			box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
		}

		.hidden {
			display: none !important;
		}
	}
}
/*











*/
@layer components {
	@layer content {
		.breadcrumbs, .step_container {
			font-size: 1rem;
			line-height: 2;
			display: flex;
			flex-direction: column;
			gap: 1rem;

			.current {
				color: var(--eggplant-600);
				font-weight: 600;
			}
			.upcoming {
				color: var(--text-secondary);
			}
		}
	}
}
button.action-link {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	border-radius: 0;
}

a.button, button:not(.dropdown-item) {
	padding: 0.5rem;
	border: none;
	border-radius: 0.5rem;
	&.orange_button,&.btn-primary,&.primary {
		background-color: #DE5614;
		color: var(--white);
		padding-left: 1rem;
		padding-right: 1rem;

		&:hover {
			background-color: #c24e12;
		}
	}
	&.btn-secondary,&.secondary {
		background-color: #3B1B4B;
		color: var(--gray-500);
	}
}

@layer components {
	button[popovertarget] {
    background-color: transparent;
	}
	@layer sidebar {
		#wrapper > #sidebar {
			a.button, button {
				width: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
				font-size: 0.75rem;
				gap: 0.5rem;
				margin-top: 1rem;
				padding: 0.5rem;
				&.btn-primary,&.primary {
					background-color: #DE5614;
					color: var(--white);
				}
				&.btn-secondary,&.secondary {
					background-color: #3B1B4B;
					color: var(--gray-500);
				}
			}
		}
	}

	@layer content {
		#wrapper > main {
			button.copy {
				width: 2rem;
				height: 2rem;
				padding: 0.5rem;
				background-color: rgba(255, 255, 255, 0.1);
				background-image: url(/assets/v2/copy-79fdcb94712eef2c7f6931bb973ab57a7f66806331940408586f2b2b022daeaa.svg);
				background-repeat: no-repeat;
				background-position: center;
				background-size: 24px 24px;
				outline: 2px solid transparent;
				transition: outline-color 2s ease-out 1s,
					background-color 2s ease-out 1s;
				position: relative;
				&::after {
					content: attr(data-copy-confirmation, "Copied to clipboard");
					position: absolute;
					top: calc(100% + 0.5rem);
					border: solid 1px var(--gray-300);
					background-color: var(--gray-100);
					transform: translateX(-50%);
					width: max-content;
					display: none;
					opacity: 0;
					transition:
						opacity 2s ease-out 1s allow-discrete,
						display 2s ease-out 1s allow-discrete;
					padding: 0.25rem 0.5rem;
					font-size: 0.625rem;
					border-radius: 4px;
				}

				&:active {
          outline-color: var(--gold-900);
					background-color: var(--gold-100);
					transition: none;
					&::after {
						display: inline-block;
						opacity: 1;
						transition: none;
					}
				}
			}
		}
	}
}
@layer components {
	@layer content {
		#wrapper > main {
			.callout, .flash {
				padding: 0.8rem;
				border-left-width: 4px;
				border-left-style: solid;
				font-size: 0.875rem;
				line-height: 1.5;

				header {
					font-size: 1rem;
					font-weight: 600;
				}

				small {
					font-size: 0.75rem;
					color: var(--text-secondary);
				}

				&.alert, &.error {
					border-left: 4px solid #e74c3c;
					background-color: #f9e6e6;
					padding: 10px 15px;
					a {
						color: var(--red-600);
					}
				}

				&.caution, &.info {
					border-left-color: var(--gold-950);
					background-color: #fef5e6;
					padding: 10px 15px;
					a {
						color: var(--orange-100);
					}
				}

			}
		}
	}
}
@layer base {
	@layer content {
		dialog {
			max-width: 50%;
			max-height: 70%;
			header {
				display: flex;
				justify-content: space-between;
			}
		}
		dialog::backdrop {
			background-color: rgba(0, 0, 0, 0.5);
		}

		.v2-modal {
			border: none;
			border-radius: 0.75rem;
			padding: 0;
			width: min(35rem, 92vw);
			max-width: 92vw;
			max-height: 85vh;
			box-shadow: 0 1.5rem 4rem rgba(15, 23, 42, 0.18);
			background: #ffffff;
			color: #0f172a;
			overflow: hidden;
		}

		.v2-modal--wide {
			width: min(55rem, 95vw);
		}

		.v2-modal::backdrop {
			background-color: rgba(15, 23, 42, 0.45);
		}

		.v2-modal__header {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 1.25rem 1.5rem;
			border-bottom: 0.0625rem solid #e2e8f0;
		}

		.v2-modal__title {
			margin: 0;
			font-size: 1.125rem;
			font-weight: 600;
			color: #0f172a;
		}

		.v2-modal__close {
			background: transparent;
			border: none;
			font-size: 1.5rem;
			line-height: 1;
			color: #64748b;
			cursor: pointer;
			padding: 0.25rem 0.5rem;
			border-radius: 0.375rem;
		}

		.v2-modal__close:hover {
			background: #f1f5f9;
			color: #0f172a;
		}

		.v2-modal__body {
			padding: 1.25rem 1.5rem;
			overflow-y: auto;
			max-height: calc(85vh - 8.75rem);
		}

		.v2-modal__footer {
			display: flex;
			justify-content: flex-end;
			gap: 0.75rem;
			padding: 1rem 1.5rem;
			border-top: 0.0625rem solid #e2e8f0;
			background: #f8fafc;
		}

		.v2-modal__footer .button[disabled] {
			opacity: 0.55;
			cursor: not-allowed;
		}

		.find-policy-search-row {
			margin-bottom: 1rem;
		}

		.find-policy-search-wrapper {
			position: relative;
			display: flex;
			align-items: center;
		}

		.find-policy-search-icon {
			position: absolute;
			left: 0.65rem;
			width: 1rem;
			height: 1rem;
			pointer-events: none;
			opacity: 0.5;
		}

		.find-policy-search-input {
			width: 100%;
			padding-left: 2.25rem;
			border-radius: 0.5rem;
			border: 0.0625rem solid #d1d5db;
		}

		.find-policy-empty-state {
			padding: 2rem 1rem;
			text-align: center;
			color: #64748b;
		}

		.find-policy-results-table {
			border: 0.0625rem solid #e5e7eb;
			border-radius: 0.5rem;
			overflow: hidden;
		}

		.find-policy-table {
			width: 100%;
			border-collapse: collapse;
			margin: 0;

			thead th {
				background-color: #F0F0F0;
				border-bottom: 0.0625rem solid #e5e7eb;
				font-size: 0.9rem;
				letter-spacing: normal;
				text-transform: none;
				font-weight: 600;
				color: #4b5563;
				padding: 1rem 1.5rem;
				text-align: left;
			}

		}

		.endorsement-table__header-content {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 0.5rem;
		}

		.endorsements-table-row--selected {
			background-color: rgba(249, 115, 22, 0.12);
			outline: 0.125rem solid rgba(249, 115, 22, 0.5);
			outline-offset: -0.125rem;
		}

		.endorsements-table-row[data-eligible="true"] {
			cursor: pointer;
		}
	}
}

/* Segmented control — generic Yes/No or option pill button */
.segmented-control {
	display: inline-flex;
	align-items: stretch;
	align-self: flex-start;
	background-color: #F0F0F0;
	border-radius: 0.5625rem;
	padding: 0.125rem;
	height: 2rem;
	box-sizing: border-box;
	margin-top: 0.25rem;
}

.segmented-control__option {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.1875rem 1.25rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: #101010;
	background-color: #F0F0F0;
	border: none;
	border-radius: 0;
	cursor: pointer;
	text-align: center;
	white-space: nowrap;
	line-height: 1;
}

.segmented-control__option--active {
	background-color: #FFFFFF;
	border-radius: 0.4375rem;
}

/* These overrides must live outside @layer to win against global unlayered and base-layer rules */
#find-policy-modal .modal-dialog {
	max-width: min(60rem, 95vw);
}

#find-policy-modal .modal-header,
#start-endorsement-modal .modal-header {
	padding: 0.6rem 1rem;
}

#find-policy-modal .modal-title,
#start-endorsement-modal .modal-title {
	color: #808080;
	font-weight: 600;
	font-size: 0.95rem;
}

#find-policy-modal .btn-close,
#start-endorsement-modal .btn-close {
	width: 0.65em;
	height: 0.65em;
	font-size: 0.75rem;
}

#find-policy-modal .modal-body,
#start-endorsement-modal .modal-body {
	font-size: 0.8125rem;
	padding-bottom: 0.125rem;
}

#find-policy-modal .modal-footer {
	border-top: none;
	padding-top: 0.125rem;
}

#find-policy-modal .find-policy-table thead th {
	background-color: #F0F0F0;
	color: #111827;
	font-size: 0.8125rem;
}

#find-policy-modal .find-policy-table thead th:not(:last-child),
#find-policy-modal .find-policy-table tbody td:not(:last-child) {
	border-right: 0.0625rem solid #e5e7eb;
}

#find-policy-modal .modal-footer button.secondary,
#start-endorsement-modal .modal-footer button.secondary {
	background-color: #ffffff;
	color: #111827;
	border: 0.0625rem solid #9ca3af;
	padding: 0.375rem 2.5rem;
}

#find-policy-modal .modal-footer button.secondary:hover,
#start-endorsement-modal .modal-footer button.secondary:hover {
	background-color: #f9fafb;
}

#find-policy-modal .modal-footer button.orange_button,
#start-endorsement-modal .modal-footer button.orange_button {
	padding: 0.375rem 2.5rem;
}

#find-policy-modal #find-policy-start-button:disabled,
#find-policy-modal #find-policy-start-button[disabled] {
	opacity: 0.45;
	cursor: not-allowed;
}

#find-policy-modal .endorsements-table-row--ineligible td .endorsements-table-cell__text {
	color: #9ca3af;
}

#find-policy-modal .find-policy-ineligible-icon {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
}

#find-policy-modal .find-policy-tooltip-trigger {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem;
	margin: -0.25rem;
	cursor: pointer;
}

#find-policy-modal .find-policy-table td:first-child .endorsements-table-cell__link {
	flex-wrap: wrap;
	row-gap: 0.25rem;
}

#find-policy-modal .endorsements-table-cell__link .badge.blitz-badge-ineligible {
	margin-left: 0.375rem;
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
}

.find-policy-search-input:focus,
.find-policy-search-input:focus-visible {
	outline: none;
	box-shadow: none;
	border-color: #d1d5db;
}

#start-endorsement-modal .modal-footer {
	border-top: none;
	padding-top: 0.125rem;
}

#start-endorsement-modal .endorsement-form-standalone-submit {
	display: none;
}
@layer components {
	@layer content {

		.form-check-input:checked {
			/* Override Bootstrap's check color */
			background-color: var(--orange-600);
			border-color: var(--orange-600);
		}

		/* Override Bootstrap's blue focus ring */
		.form-control:focus,
		.form-select:focus {
			border-color: #e5753c;
			box-shadow: 0 0 0 0.25rem rgba(229, 117, 60, 0.25);
		}

		#wrapper > main {
			input[type="radio"] {
				width: 1rem;
				height: 1rem;
				margin-right: 0.25rem;
			}

			.question_group {
				.smart_address {
					position: relative;

					.suggestions_wrapper {
						position: absolute;
						top: 4.5rem;
						left: 0;
						z-index: 100;
						font-size: 0.875rem;
						min-width: 20rem;

						.close_button {
							position: absolute;
							right: -0.75rem;
							top: -0.5rem;
							width: 1.375rem;
							height: 1.375rem;
							border-radius: 50%;
							text-align: center;
							font-family: sans-serif;
							cursor: pointer;
							color: var(--gray-500);
							background-color: var(--white);
							box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
							display: flex;
							align-items: center;
							justify-content: center;
							line-height: 1;
						}

						.suggestions {
							overflow: hidden;
							box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.1);
							border-radius: 0.5rem;
							background-color: var(--white);
							border: 1px solid var(--gray-200);

							.address_suggestion {
								padding: 0.5rem 1rem;
								cursor: pointer;

								&.hovered,
								&.focused {
									background-color: var(--gray-100);
								}
							}
						}
					}
				}
			}

			/* Legacy styles for the journey React app */
			.individual_question,.question_group {
				display: flex;
				flex-direction: column;
				gap: 1rem;
				margin-bottom: 1.25rem;
				padding: 1rem;
				padding-bottom: 0.50rem;
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				background-color: var(--white);
				.card {
					border: none;
				}
				.question_block {
					display: flex;
					flex-direction: column;
					gap: 0.5rem;
				}
			}
			.question_group_label_wrapper {
				font-size: 1.125rem;
				font-weight: 600;
				line-height: 2;
			}
			.question_group_entry_header {
				display: flex;
				justify-content: flex-end;
			}
			.multiple_entry_container > .question_group_entry_header {
				display: none;
			}
			.question_group_entry .remove_button.btn {
				padding: 0;
				border: 0;
				border-radius: 50%;
				width: 1.5rem;
				height: 1.5rem;
				background: transparent;
				display: flex;
				align-items: center;
				justify-content: center;
			}
			.question_group_entry .remove_button.btn img {
				width: 1.5rem;
				height: 1.5rem;
				border-radius: 50%;
				background-color: #fbfbfb;
				box-shadow: 0 0 5px 1px color-mix(in srgb, var(--orange-600) 25%, transparent);
			}
			.question_group_entry .remove_button:focus {
				box-shadow: 0 0 0 0.25rem color-mix(in srgb, var(--orange-600) 12.5%, transparent);
			}
			.question_group_entry .remove_button_legacy.btn {
				display: none;
			}
			.question-group-multi-entry {
				padding: 0;
				border: none;
				background-color: transparent;
				.question_group_label_wrapper {
					display: flex;
					align-items: center;
					justify-content: space-between;
					gap: 1rem;
				}
				.multiple_entry_add_button_wrapper {
					margin-left: auto;
					button.btn {
						display: inline-flex;
						align-items: center;
						gap: 0.4rem;
						padding: 0.35rem 1rem !important;
						border: 1px solid var(--orange-600) !important;
						border-radius: 999px !important;
						background-color: transparent !important;
						color: var(--orange-600) !important;
						box-shadow: none;
						font-weight: 600;
						transition: background-color 0.2s ease, color 0.2s ease;
						img {
							width: 1rem;
							height: 1rem;
						}
						&:hover {
							background-color: var(--orange-600) !important;
							color: var(--white) !important;
							img {
								filter: brightness(0) invert(1);
							}
						}
						&:focus {
							box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--orange-600) 25%, transparent);
						}
					}
				}
				.multiple_entry_container {
					display: flex;
					flex-direction: column;
					gap: 1rem;
					padding: 0;
					border: none;
					background-color: transparent;
				}
				.multiple_entry_container > .question_group_entry_header {
					display: none;
				}
				.question_group_entry.card {
					position: relative;
					padding: 1.75rem 1.5rem 1.5rem;
					border: 1px solid var(--gray-300);
					border-radius: 0.75rem;
					background-color: var(--white);
					box-shadow: 0 8px 20px rgba(16, 16, 16, 0.06);
				}
				.question_group_entry.card.question_group_entry--no-remove {
					padding-top: 1.5rem;
				}
				.question_group_entry > .question_group_entry_header {
					position: absolute;
					top: 0.5rem;
					right: 0.5rem;
					z-index: 1;
					justify-content: flex-end;
					button.remove_button {
						padding: 0;
						background: transparent;
					}
				}
			}
			.individual_question {
				.question_block.boolean {
					display: flex;
					flex-direction: column;
					gap: 1rem;
					margin-bottom: 0rem !important;
				}
			}
			.boolean_toggle {
				display: flex;
				align-items: flex-start;
				gap: 1rem;
			}
		}
	}
}
@layer components {
	@layer content {
		#wrapper > main {
			.badge, .pill {
				border-radius: 9999px;
				padding: 0.25rem 0.75rem;
				font-size: 0.875rem;
				font-weight: 500;
			}
			.badge.blitz-badge-primary {
				background-color: #385F1E;
				color: white;
				border: solid var(--bs-border-width) var(--green-600);
			}
			.badge.blitz-badge-secondary {
				background-color: var(--gray-100);
				color: var(--gray-500);
				border: solid var(--bs-border-width) var(--gray-500);
			}
			.badge.blitz-badge-ineligible {
				background-color: var(--gray-100);
				color: var(--gray-500);
				border: solid var(--bs-border-width) var(--gray-300, #cbd5e1);
				font-weight: 500;
			}

		}
	}
}
@layer base {
	@layer content {
		[popover] {
			font-size: 0.875rem;
			line-height: 1.25rem;
			border-radius: 0.5rem;
			background-color: var(--white);
			border: 1px solid var(--gray-200);
			box-shadow: 0px 1px 4px rgba(12, 12, 13, 0.10), 0px 1px 4px rgba(12, 12, 13, 0.05);
			&:popover-open {
				color: var(--gray-999);
				min-width: min(310px, calc(100vw - 32px));
				max-width: 25rem;
				overflow: hidden;
				z-index: 10;
				&.anchor--bottom {
					justify-self: anchor-center !important;
					top: calc(anchor(bottom) + 0.5rem) !important;
				}
				&.anchor--top {
					justify-self: anchor-center !important;
					top: auto !important;
					bottom: calc(anchor(top) + 0.5rem) !important;
				}
			}
		}

		.popover-header {
			display: flex;
			gap: 0.5rem;
			align-items: center;
			justify-content: space-between;
			padding: 0.875rem 1.25rem;
			background-color: var(--gray-100);
			border-bottom: 1px solid var(--gray-100);
			min-height: 40px;
			box-sizing: border-box;

			a {
				font-size: 0.75em;
			}
		}
		.popover-title {
			font-size: 0.875rem;
			line-height: 1.25;
			color: var(--gray-999);
		}
		.popover-body {
			padding: 0.875rem 1.25rem;
			max-height: 360px;
			overflow-y: auto;
			background-color: var(--bg-shade-white);
		}
		.popover-empty {
			font-size: 0.875em;
			line-height: 1.25;
			color: var(--text-secondary);
			text-align: center !important;
		}
		.popover-footer {
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 0.875rem 1.25rem;
			border-top: 1px solid var(--border-100);
			border-top: 1px solid var(--gray-100);
			background-color: var(--bg-shade-white);

			a {
				font-size: 0.875em;
				line-height: 1.25;
				color: var(--gray-999);
				font-weight: 500;

				&:focus-visible {
					outline: 2px solid var(--eggplant-300);
					outline-offset: 2px;
				}
			}
		}
	}
}

@layer components {
	@layer header {
		#wrapper > header {
			#header-account-menu-popover-toggle {
				anchor-name: --header-account-popover-toggle;
			}

			#header-account-menu-popover {
				position-anchor: --header-account-popover-toggle;
			}

			#header-notifications-popover-toggle {
				anchor-name: --notifications-popover-toggle;
			}

			#header-notifications-popover {
				position-anchor: --notifications-popover-toggle;
			}
		}
	}

	@layer content {
		#wrapper > main {
			#effective-date-help-popover-toggle {
				anchor-name: --effective-date-help-popover-toggle;
			}
			#effective-date-help-popover {
				position-anchor: --effective-date-help-popover-toggle;
			}
		}
	}
}
@layer base {
	table {
		line-height: 1.5;
		border-collapse: collapse;
		margin: 1rem 0;
		font-size: 0.875rem;

		th, td {
			border: 1px solid var(--gray-300);
			padding: 0.375rem 0.75rem;
			text-align: left;
			font-size: 0.875rem;
		}
		td {
			font-weight: 400;
			background-color: var(--white);
		}

		th {
			font-weight: 500;
			white-space: nowrap;
			background-color: var(--gray-200);
		}

		tbody {
		}
	}

	section:has(table.datagrid) {
		background-color: unset !important;
		padding: unset !important;
		box-shadow: unset !important;

		table.datagrid {
			background-color: var(--white);
		}
	}
}

@layer components {
	@layer content {
		table.compact {
			line-height: 1;
		}

		.search_row {
			display: flex;
			font-size: 1.2rem;
			.scope_row {
				display: flex;
				gap: 2rem;
				a {
					color: var(--gray-500);
					padding-bottom: 0.5rem;
					&.selected {
						color: var(--text-primary);
						border-bottom: 2px solid var(--orange-600);
					}
				}
				margin-right: 1rem;
				flex: 1 1 0%;
			}

			input[type="search"] {
				background-image: url(/assets/search-5214a92feac41c1ffded70db475bcc26fe6929857d948846ee7a18dd0ae11e8a.svg);
				background-repeat: no-repeat;
				background-position: left 0.5rem center;
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				padding: 0.5rem 0 0.5rem 2rem;
				justify-self: flex-end;
				min-width: 0;
				flex-shrink: 1;
				width: 25em;
			}
		}

		.table_wrapper {
			overflow-x: auto;
			width: 100%;

			table thead tr:first-child th,
			table thead tr:first-child td {
				border-top: none;
			}
		}

		.table_wrapper .pagination,
		.pagination_wrapper .pagination {
			margin-top: 0;
			display: flex;
			justify-content: flex-start;
			gap: 0.5rem;
		}

		.pagination_wrapper {
			display: flex;
			justify-content: flex-start;
			margin: 0.25rem 0 1rem 1rem;
		}

		.pagination_wrapper .pagination span.current {
			color: #41144B;
			font-weight: 600;
		}

		.pagination_wrapper .pagination a {
			color: #E35205;
			text-decoration: none;

			&:hover {
				color: darken(#E35205, 10%);
			}
		}

		.pagination_wrapper--carets {
			display: inline-flex;
			align-items: center;
			gap: 0.25rem;
			justify-content: center;
			margin: 0.75rem auto 0;
			font-size: 0.9rem;
		}

		.pagination_wrapper--carets-container {
			display: flex;
			justify-content: center;
			margin-top: 1rem;
		}

		.pagination_wrapper--carets .page {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 1.75rem;
			height: 1.75rem;
		}

		.pagination_wrapper--carets .pagination-page {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 1.75rem;
			height: 1.75rem;
			padding: 0 0.5rem;
			color: #475569;
			text-decoration: none;
			border-radius: 0.375rem;
		}

		.pagination_wrapper--carets .pagination-page:hover {
			background-color: #f1f5f9;
			color: #0f172a;
		}

		.pagination_wrapper--carets .pagination-page--current {
			background-color: #E35205;
			color: #ffffff;
			font-weight: 600;
		}

		.pagination_wrapper--carets .pagination-caret--inactive {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 1.75rem;
			height: 1.75rem;
			padding: 0 0.4rem;
			color: #cbd5e1;
			font-weight: 600;
			cursor: default;
		}

		.pagination_wrapper--carets .pagination-caret {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 1.75rem;
			height: 1.75rem;
			padding: 0 0.4rem;
			color: #64748b;
			text-decoration: none;
			border-radius: 0.375rem;
			font-weight: 600;
		}

		.pagination_wrapper--carets .pagination-caret:hover {
			background-color: #f1f5f9;
			color: #0f172a;
		}

		.pagination_wrapper--carets .pagination-gap {
			color: #94a3b8;
			padding: 0 0.25rem;
		}
	}
}
@layer components {
	.producer_portal_service_request.v2.expanded {
		width: 26.25rem;
		height: auto;
		min-height: 38rem;
		max-height: 95vh;
		padding: 1rem;
		bottom: 1.25rem;
		right: 0.625rem;
		border-radius: 1rem;
		background-color: white;
		border: 0.1rem solid var(--gray-300);
		cursor: default;
		align-items: flex-start;
		/*justify-content: flex-start;*/
		overflow: hidden;

		#sr_close_btn {
			position: absolute;
			top: 0.75rem;
			right: 0.75rem;
			width: 1.25rem;
			height: 1.25rem;
			display: flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
			background-color: white;
			border: 1.5px solid black !important;
			border-radius: 50% !important;
			cursor: pointer;
			font-size: 1.1rem;
			color: black;
			line-height: 0;
			padding: 0;
			transition: background-color 0.15s;
			z-index: 10;

			&:hover {
				background-color: var(--gray-200);
			}
		}

		.have_a_question {
			margin-top: 0.625rem;
		}

		h3 {
			margin-top: -10%;
			color: var(--eggplant-800);
		}

		h3.have_a_question--v2 {
			width: 100%;
			align-self: stretch;
			text-align: center;
			color: var(--eggplant-800);
		}

		.service_request_subheader {
			margin-bottom: 0.25rem;
			font-size: 0.9rem;
			color: var(--gray-800);
			text-align: left;
		}

		.btn.submit_service_request {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 1.25em;
			background-color: var(--orange-600);
			color: white;
			font-weight: bold;
			font-size: 115%;
			padding: 0.625em 1.25em;
			width: 100%;
			border: none;
			border-radius: 0.3125rem;
			cursor: pointer;
		}

		.btn.submit_service_request .icon {
			width: 2em;
			height: 2em;
		}

		.btn.submit_service_request--v2 {
			width: 33%;
			background-color: var(--orange-600);
			color: white;
			font-weight: bold;
			font-size: 1rem;
			border: none;
			border-radius: 0.3125rem;
			padding: 0.5em 1em;
			cursor: pointer;

			&:hover {
				background-color: color-mix(in srgb, var(--orange-600) 90%, black);
			}
		}

		.btn.submit_service_request--v2.submit_service_request--v2-success {
			width: 100%;
		}

		.service_request_form {
			width: 80%;
			display: flex;
			flex-direction: column;
			justify-content: center;
			gap: 1.875em;

			.form-control {
				margin-bottom: 1rem;
			}
		}

		#service_request_form {
			flex: 1;
			display: flex;
			flex-direction: column;
			min-height: 34rem;
		}

		.d-flex.flex-column.mb-3 {
			width: 100%;
		}

		select:focus,
		textarea:focus,
		input:focus {
			outline: 1.5px solid var(--eggplant-800);
			outline-offset: 0;
			box-shadow: none;
		}

		.question_block_select_input__control--is-focused {
			border-color: var(--eggplant-800) !important;
			box-shadow: 0 0 0 1px var(--eggplant-800) !important;
		}

		.direct-bill-btn {
			background-color: #3B1B4B;
			color: white;
			border-color: #3B1B4B;

			&:hover {
				background-color: color-mix(in srgb, #3B1B4B 90%, black);
				border-color: color-mix(in srgb, #3B1B4B 90%, black);
				color: white;
			}
		}

		.sr-disabled {
			pointer-events: none;
		}

		.sr-disabled .service_request_subheader {
			color: var(--gray-400);
		}

		.sr-disabled select,
		.sr-disabled input,
		.sr-disabled textarea,
		.sr-disabled button,
		.sr-disabled .question_block_select_input {
			opacity: 0.45;
			color: var(--gray-400);
		}

		.sr-disabled .question_block_select_input__control {
			background-color: var(--gray-200) !important;
		}

		.service_request_success .btn-primary {
			background-color: var(--eggplant-800);
			border-color: var(--eggplant-800);
			color: white;

			&:hover {
				background-color: color-mix(in srgb, var(--eggplant-800) 90%, black);
				border-color: color-mix(in srgb, var(--eggplant-800) 90%, black);
			}
		}
	}
}
@layer base {
	@layer content {
		#v2_welcome_modal {
			position: fixed;
			inset: 0;
			background: rgba(0, 0, 0, 0);
			backdrop-filter: blur(0px);
			-webkit-backdrop-filter: blur(0px);
			opacity: 0;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 2rem 1rem;
			z-index: 1050;
			transition: background-color 0.5s cubic-bezier(0, 0, 0.2, 1), backdrop-filter 0.8s cubic-bezier(0, 0, 0.2, 1), opacity 0.8s cubic-bezier(0, 0, 0.2, 1);

			&.open {
				background: rgba(0, 0, 0, 0.45);
				backdrop-filter: blur(6px);
				-webkit-backdrop-filter: blur(6px);
				opacity: 1;
			}

			.welcome-modal-card {
				background: #fff;
				border-radius: 1rem;
				width: 100%;
				max-width: 32.5rem;
				overflow: visible;
				position: relative;
			}

			.welcome-modal-header {
				background: #3B1B4B;
				padding: 2rem 2rem 1.75rem;
				border-radius: 1rem 1rem 0 0;
				overflow: hidden;

				h1 {
					font-size: 1rem;
					font-weight: 500;
					color: #fff;
					margin: 0 0 0.375rem;
					line-height: 1.3;
				}

				p {
					font-size: 0.875rem;
					color: rgba(255, 255, 255, 0.6);
					margin: 0;
					line-height: 1.5;
				}
			}

			.welcome-modal-close {
				position: absolute;
				top: 0.25rem;
				right: 0.25rem;
				background: #3B1B4B;
				border: 0.125rem solid rgba(255, 255, 255, 0.3);
				border-radius: 50%;
				width: 1.75rem;
				height: 1.75rem;
				cursor: pointer;
				color: rgba(255, 255, 255, 0.85);
				font-size: 0.875rem;
				display: flex;
				align-items: center;
				justify-content: center;
				padding: 0;
				z-index: 1;

				&:hover {
					background: color-mix(in srgb, #3B1B4B, white 15%);
					border-color: rgba(255, 255, 255, 0.6);
				}
			}

			.welcome-modal-grid {
				display: grid;
				grid-template-columns: 1fr 1fr;
				border-bottom: 0.125rem solid #e5e5e5;
			}

			.welcome-modal-col {
				padding: 1.25rem 1.5rem;

				&.welcome-modal-col--border {
					border-right: 0.125rem solid #e5e5e5;
				}
			}

			.welcome-modal-col-label {
				font-size: 0.875rem;
				font-weight: 500;
				color: #6b7280;
				text-transform: uppercase;
				letter-spacing: 0.06rem;
				margin: 0 0 0.625rem;
			}

			.welcome-modal-list {
				list-style: none;
				margin: 0;
				padding: 0;
				display: flex;
				flex-direction: column;
				gap: 0.4375rem;

				li {
					display: flex;
					align-items: flex-start;
					gap: 0.5rem;
				}
			}

			.welcome-modal-dot {
				width: 0.3125rem;
				height: 0.3125rem;
				border-radius: 50%;
				flex-shrink: 0;
				margin-top: 0.375rem;

				&.welcome-modal-dot--changed {
					background: rgba(59, 31, 107, 0.5);
				}

				&.welcome-modal-dot--same {
					background: #0f6e56;
				}
			}

			.welcome-modal-item-title {
				font-size: 0.875rem;
				font-weight: 500;
				color: #1a1a1a;
				margin: 0 0 0.0625rem;
			}

			.welcome-modal-item-desc {
				font-size: 0.875rem;
				color: #6b7280;
				margin: 0;
				line-height: 1.4;
			}

			.welcome-modal-switchback {
				padding: 1.25rem 1.5rem;
				border-bottom: 0.125rem solid #e5e5e5;
			}

			.welcome-modal-steps {
				list-style: none;
				margin: 0;
				padding: 0;
				display: flex;
				flex-direction: column;
				gap: 0.5rem;

				li {
					display: flex;
					align-items: flex-start;
					gap: 0.625rem;
				}

				p {
					font-size: 0.875rem;
					color: #1a1a1a;
					margin: 0;
					line-height: 1.5;
				}
			}

			.welcome-modal-step-num {
				width: 1.25rem;
				height: 1.25rem;
				border-radius: 50%;
				background: #3B1B4B;
				color: #fff;
				font-size: 0.875rem;
				font-weight: 500;
				line-height: 1;
				display: flex;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
				margin-top: 0.0625rem;
			}

			.welcome-modal-note {
				font-size: 0.875rem;
				color: #6b7280;
				margin: 0.625rem 0 0;
				line-height: 1.5;
			}

			.welcome-modal-footer {
				padding: 1.25rem 1.5rem;
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 1rem;
			}

			.welcome-modal-help {
				text-align: left;

				p {
					font-size: 0.875rem;
					color: #6b7280;
					margin: 0 0 0.125rem;

					&:last-child {
						color: #1a1a1a;
						margin: 0;
					}
				}

				a {
					color: #1a1a1a;
					text-decoration: none;
					font-weight: 500;
				}
			}

			.welcome-modal-continue {
				background: #f05822;
				border: none;
				border-radius: 50%;
				padding: 0.5625rem 1.125rem;
				font-size: 0.875rem;
				font-weight: 500;
				color: #fff;
				cursor: pointer;
				flex-shrink: 0;

				&:hover {
					background: #d44d1e;
				}
			}
		}
	}
}
/*














*/
@layer components {
	@layer content {
		#wrapper > main {
			#apply_index_container {
				height: auto;
				font-size: 0.875rem;
				margin: 0 1.5rem;
				.detail {
					ul {
						list-style: disc;
					}
					section {
						header {
							font-size: 0.875rem;
							font-weight: 600;
							text-transform: uppercase;
						}
					}
				}
			}
		}
	}
@layer components {
	@layer content {

		.question-tooltip-trigger {
			display: inline-block;
			cursor: pointer;
		}

		.question-tooltip-icon {
			width: 1.25rem;
			margin-left: 0.3125rem;
		}

		.question_block_input:focus {
			outline: none;
			border: 1px solid #e5753c;
			box-shadow: 0 0 0 2px rgba(229, 117, 60, 0.25);
		}

		.blitz-select__control--is-focused {
			border-color: #e5753c !important;
			box-shadow: 0 0 0 0.25rem rgba(229, 117, 60, 0.25) !important;
		}

		.v2_back_button {
			margin-bottom: 1rem;
			padding-bottom: 1rem;
			border-bottom: 1px solid var(--border-100, #e5e5e5);

			a {
				svg {
					display: block;
					position: relative;
				}
				border-radius: 6px;
				font-size: 1rem;
				line-height: 1;
				background-color: #de5614;
				color: white !important;
				padding-right: 12px;
				padding-left: 8px;
				padding-top: 0.5rem;
				padding-bottom: 0.5rem;

				display: inline-flex;
				align-items: center;
				gap: 4px;

				&:hover {
					background-color: #c24e12;
					cursor: pointer;
				}
			}
		}
		.application_journey_header_wrapper {
			display: flex;
			flex-direction: row;
			align-items: stretch;
		}

		.application_journey_header {
			background-color: var(--white);
			padding: 0.75rem 1rem;
			border-radius: 0.5rem;
			display: flex;
			flex-direction: column;
			flex: 1 1 0;
			gap: 0.625rem;
			width: 100%;

		}

		.application_journey_header--top {
			display: flex;
			flex-direction: row;
			align-items: center;
			justify-content: space-between;
			gap: 1rem;
		}

		.application_journey_header--heading {
			flex: 1 1 0;
			min-width: 0;

			h1 {
				margin: 0;
				font-size: 1.125rem;
				font-weight: 700;
				line-height: 1.3;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
			}

			h2 {
				margin: 0.375rem 0 0 0;
				font-size: 0.875rem;
				font-weight: 400;
				color: var(--text-secondary);
				line-height: 1.3;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
			}
		}

		.application_journey_header--controls {
			display: flex;
			flex-direction: row;
			align-items: center;
			gap: 0.5rem;
			flex-shrink: 0;

			.overview-btn.dropdown-toggle {
				width: 110px;
				justify-content: space-between;
			}

			#copy-digital-app-link-btn.overview-btn {
				width: 180px;
				justify-content: center;
			}
		}

		.overview-btn {
			display: inline-flex;
			align-items: center;
			gap: 0.375rem;
			padding: 0.4rem 0.75rem;
			background-color: var(--white);
			color: var(--text-primary);
			border: 1px solid #d1d5db !important;
			border-radius: 0.5rem !important;
			font-size: 0.8125rem;
			font-weight: 500;
			cursor: pointer;
			white-space: nowrap;
			transition: background-color 0.15s ease, border-color 0.15s ease;

			&:hover {
				background-color: var(--gray-100);
				border-color: #9ca3af !important;
			}

			&.dropdown-toggle::after {
				margin-left: 0.125rem;
			}

			svg {
				width: 14px;
				height: 14px;
				flex-shrink: 0;
			}
		}

		.overview-badge {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 1.25rem;
			height: 1.25rem;
			padding: 0 0.3rem;
			background-color: #E35205;
			color: white;
			border-radius: 9999px;
			font-size: 0.6875rem;
			font-weight: 700;
			line-height: 1;
		}

		.overview-dropdown-item--with-badge {
			display: flex !important;
			align-items: center;
			justify-content: space-between;
			gap: 0.75rem;
		}

		.application_journey_header--controls .dropdown-menu {
			border: 1px solid var(--gray-300);
			border-radius: 0.5rem;
			box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
			padding: 0.375rem;

			.dropdown-item {
				border-radius: 0.325rem;
				font-size: 0.8125rem;

				&:hover,
				&:focus,
				&:active {
					color: var(--gray-999);
					background-color: var(--gray-100);
				}
			}

			.dropdown-divider {
				margin: 0.25rem 0;
			}

			&.downloads-dropdown-menu {
				max-width: 320px;
				max-height: 320px;
				overflow-y: auto;
			}

			.downloads-document-link {
				overflow: hidden;
				text-overflow: ellipsis;
				white-space: nowrap;
			}
		}

		.application_journey_header--attrs {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			gap: 0;
			border-top: 1px solid var(--gray-200);
			padding-top: 0.625rem;
		}

		.application-attr {
			display: flex;
			flex-direction: column;
			gap: 0.2rem;
			padding-right: 1.5rem;
			margin-right: 1.5rem;
			border-right: 1px solid var(--gray-200);

			&:last-child {
				border-right: none;
				padding-right: 0;
				margin-right: 0;
			}
		}

		.application-attr--label {
			font-size: 0.6875rem;
			font-weight: 400;
			color: var(--text-secondary);
			text-transform: uppercase;
			letter-spacing: 0.03em;
			white-space: nowrap;
		}

		.application-attr--value {
			font-size: 0.875rem;
			color: var(--text-primary);
			display: flex;
			align-items: center;
			gap: 0.375rem;
			white-space: nowrap;

			.button_icon {
				display: inline-flex;
				align-items: center;
				background: none;
				border: none;
				padding: 0;
				margin: 0;
				cursor: pointer;
				opacity: 0.5;
				transition: opacity 0.15s ease;

				&:hover {
					opacity: 1;
				}

				img {
					width: 14px;
					height: 14px;
					display: block;
				}
			}

			#edit_producer_button img,
			#edit_support_producer_button img {
				filter: invert(40%) sepia(90%) saturate(800%) hue-rotate(355deg) brightness(100%) contrast(95%);
				opacity: 1;
			}
		}

		.application-attr--value .button_icon {
			height: 1em;
			overflow: hidden;
		}

		.application-attr--value .button_icon img {
			display: block;
			width: 14px;
			height: 14px;
		}

		.close-application-modal {
			position: fixed;
			inset: 0;
			background: rgba(0, 0, 0, 0.5);
			z-index: 1050;
			display: flex;
			align-items: center;
			justify-content: center;
		}

		.close-application-modal--content {
			background: var(--white);
			border-radius: 0.5rem;
			padding: 1.5rem;
			width: 440px;
			max-width: 90vw;
			box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
		}

		.close-application-modal--title {
			font-size: 1.125rem;
			font-weight: 700;
			color: var(--text-primary);
			margin-bottom: 0.5rem;
		}

		.close-application-modal--subtitle {
			font-size: 0.875rem;
			color: var(--text-secondary);
			margin-bottom: 1rem;
		}

		.close-application-modal--field {
			margin-bottom: 0.75rem;
		}

		.close-application-modal--actions {
			display: flex;
			gap: 0.75rem;
			justify-content: flex-end;
			margin-top: 1.25rem;
		}

		.button_icon {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: none;
			border: none;
			padding: 0.125rem;
			cursor: pointer;
			border-radius: 0.25rem;
			margin-left: 0.375rem;

			img {
				width: 0.875rem;
				height: 0.875rem;
				opacity: 0.6;
			}

			&:hover img {
				opacity: 1;
			}
		}

		.change-producer-modal {
			position: fixed;
			inset: 0;
			background: rgba(0, 0, 0, 0.5);
			z-index: 1050;
			display: flex;
			align-items: center;
			justify-content: center;
		}

		.change-producer-modal--content {
			background: var(--white);
			border-radius: 0.5rem;
			padding: 1.5rem;
			width: 440px;
			max-width: 90vw;
			box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
		}

		.change-producer-modal--title {
			font-size: 1.125rem;
			font-weight: 700;
			color: var(--text-primary);
			margin-bottom: 0.5rem;
		}

		.change-producer-modal--subtitle {
			font-size: 0.875rem;
			color: var(--text-secondary);
			margin-bottom: 1rem;
		}

		.change-producer-modal--field {
			margin-bottom: 0.75rem;
		}

		.change-producer-modal--actions {
			display: flex;
			gap: 0.75rem;
			justify-content: flex-end;
			margin-top: 1.25rem;

			[type="submit"] {
				background-color: #DE5614;
				border-color: #DE5614;
				color: #fff;

				&:hover {
					background-color: #c24e12;
					border-color: #c24e12;
				}

				&:active {
					background-color: #a84310;
					border-color: #a84310;
				}
			}
		}

		#customerLoginTokenModal [type="submit"] {
			background-color: #DE5614;
			color: #fff;
			padding-left: 1rem;
			padding-right: 1rem;

			&:hover {
				background-color: #c24e12;
			}

			&:active {
				background-color: #a84310;
			}
		}

		a.back {
			display: flex;
			align-items: center;
			gap: 0.25rem;
			color: var(--text-secondary);
			font-size: 0.875rem;
			margin-bottom: -0.5rem;
		}

		#product_selection {
			max-width: 90ch;
			display: flex;
			flex-direction: column;
			gap: 1rem;

			& > header {
				display: flex;
				justify-content: space-between;
				align-items: center;

				.product_count {
					color: #DE5614;
					font-weight: 400;
					font-size: 1rem;
				}
			}

			form {
				display: contents;
			}

			input[type="checkbox"] {
				height: 1.125rem;
				width: 1.125rem;
			}

			.product_group {
				display: flex;
				flex-direction: column;
				gap: 0.75rem;

				label.product_button,
				label.product_checkbox,
				label.coverage_button {
					display: flex;
					gap: 1rem;
					align-items: flex-start;
					width: 100%;
				}

				div.product_button,
				label.product_checkbox {
					padding: 1.25rem;
					border-radius: 0.65rem;
					background-color: var(--white);
					border: 1px solid var(--gray-300);
				}

				div.product_button {
					display: flex;
					flex-direction: column;
					gap: 0.75rem;

					.product_button_label {
						display: flex;
						gap: 1rem;
						align-items: flex-start;
						width: 100%;
						cursor: pointer;
					}
				}

				div.product_button.selected {
					box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
				}

				label.product_checkbox.disabled {
					background-color: var(--gray-100);
					opacity: 0.8;
				}

				.coverage_toggle_button {
					align-self: flex-start;
					display: inline-flex;
					align-items: center;
					gap: 0.625rem;
					padding: 0.375rem 0.625rem;
					border-radius: 999px;
					border: solid 1px var(--gray-300);
					background-color: var(--gray-100);
					color: var(--gray-999);
					font-size: 0.75rem;
					font-weight: 400;
					line-height: 1;
					cursor: pointer;

					&:disabled {
						opacity: 0.4;
						cursor: not-allowed;
					}

					.coverage_toggle_button__label--hide {
						display: none;
					}

					&.open {
						background-color: #5B1C69;
						border-color: #5B1C69;
						color: var(--white);

						.coverage_toggle_button__label--show {
							display: none;
						}
						.coverage_toggle_button__label--hide {
							display: inline;
						}
					}

					&.open .coverage_toggle_button__icon {
						transform: rotate(180deg);
					}
				}

				.detail {
					background-color: unset;
					border: none;
					flex: 1 1 auto;
					display: flex;
					flex-direction: column;
					gap: 0.25rem;
					min-width: 0;
				}

				.selection_control {
					flex: 0 0 auto;
					min-width: 2.75rem;
					display: flex;
					justify-content: flex-end;
					align-items: flex-start;
					margin-left: auto;
				}

				.coverage_overview {
					display: flex;
					flex-direction: column;
					gap: 0;

					.product_description {
						margin-bottom: 0;
						line-height: 1.4;
					}
				}

				label.coverage_button p {
					color: var(--text-secondary);
					margin-bottom: 0;
				}

				label.coverage_button .selection_control,
				label.product_button .selection_control {
					align-self: stretch;
				}
				.coverage_toggle_button {
					align-self: flex-start;
					display: inline-flex;
					align-items: center;
					gap: 0.625rem;
					padding: 0.375rem 0.625rem;
					border-radius: 999px;
					border: solid 1px var(--gray-300);
					background-color: var(--gray-100);
					color: var(--gray-999);
					font-size: 0.75rem;
					font-weight: 400;
					line-height: 1;
					cursor: pointer;
				}
				.coverage_toggle_button__icon {
					display: block;
					height: 1.0625rem;
					width: 1.0625rem;
					transition: transform 0.2s ease;
				}
				.coverage_container {
					display: flex;
					flex-direction: column;
					gap: 0.75rem;
					&.hidden {
						display: none;
					}
				}

				label.coverage_button.coverage_card {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 0.875rem 0.875rem;
					margin-left: 0;
					margin-top: 0;

					&.selected {
						background-color: var(--white);
						box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
					}

					&.disabled {
						background-color: var(--gray-100);
						opacity: 0.8;
					}

					.coverage_switch:disabled {
						opacity: 1;
						filter: none;
					}

					p {
						margin-bottom: 0;
						color: var(--text-secondary);
						font-size: 0.875rem;
						line-height: 1.4;
					}

					.coverage_label {
						font-size: larger;
						margin-bottom: 0.125rem;
					}

					&.nested_coverage_1 {
						margin-left: 1.5rem;
						width: calc(100% - 1.5rem);
					}
					&.nested_coverage_2 {
						margin-left: 3rem;
						width: calc(100% - 3rem);
					}
					&.nested_coverage_3 {
						margin-left: 4.5rem;
						width: calc(100% - 4.5rem);
					}
				}

				details.coverage_details {
					display: flex;
					flex-direction: column;
					gap: 0.75rem;
					padding-left: 1.5rem;

					summary[hidden] {
						display: none;
					}

					.coverage_container {
						display: flex;
						flex-direction: column;
						gap: 0.75rem;
						padding-bottom: 1rem;
						label {
							display: flex;
						}
						p {
							font-size: 0.9em;
							color: var(--text-secondary);
						}
					}
				}

				.coverage_bullets {
					li {
						list-style: disc;
					}
				}
			}
		}

		#offer_wrapper, #indication_wrapper {
			h4.fw-bold {
				font-size: 1.5rem;
				font-weight: 500;
				margin-bottom: 1rem;
			}

			form > .row {
				display: flex;
				flex-wrap: nowrap;
			}

			.main_column.col-8 {
				flex: 1 1 66.666667%;
				min-width: 0;
				padding-right: 1.5rem;
			}

			.main_column.col-4 {
				flex: 0 0 33.333333%;
				min-width: 0;
			}

			.product_block {
				background-color: var(--white);
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				padding: 1.25rem;
				margin-bottom: 1rem;

				h5.fw-bold {
					font-size: 1.125rem;
					font-weight: 600;
					margin-bottom: 0.75rem;
				}
			}

			.offer_coverage_block {
				padding-left: 0;

				&::before, &::after {
					display: none;
				}

				&.nested_coverage_0,
				&.nested_coverage_1,
				&.nested_coverage_2 {
					padding-left: 0;

					.coverage_wrapper::before,
					.coverage_wrapper::after {
						display: none;
					}
				}
			}

			.coverage_wrapper {
				background-color: var(--white);
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				padding: 1rem;
				margin-bottom: 0.75rem;
				box-shadow: none;

				.main_table {
					.coverage_label {
						font-size: 1rem;
						font-weight: 600;
						margin-bottom: 0.5rem;
					}

					.coverage_description {
						color: var(--text-secondary);
						font-size: 0.875rem;
						margin-bottom: 0.75rem;
					}

						.attribute_table_wrapper {
						margin-top: 0.75rem;

						table.attribute_table {
							border-collapse: separate;
							border-spacing: 0.5rem;
							width: calc(100% + 1rem);
							margin-left: -0.5rem;
							margin-right: -0.5rem;

							td {
								background-color: var(--gray-100);
								padding: 0.5rem 0.75rem;
								border-radius: 0.375rem;
								overflow: hidden;

								.attribute_wrapper {
									display: flex;
									justify-content: space-between;
									align-items: center;
									flex-wrap: wrap;
									gap: 0.5rem;
								}

								.attribute_label {
									font-size: 0.875rem;
									font-weight: 500;
									color: var(--gray-800);
								}

								.attribute_content {
									display: flex;
									align-items: center;
									gap: 0.25rem;
								}

								.attribute_tooltip {
									padding: 0;
									line-height: 1;
									display: inline-flex;
									align-items: center;

									img {
										width: 1rem;
										height: 1rem;
									}
								}

								.attribute_value {
									font-size: 0.875rem;
									font-weight: 600;
								}

								select.form-select {
									background-color: transparent;
									border: none;
									font-weight: 600;
									color: #DE5614;
									padding: 0;
									padding-right: 1.5rem;
									width: auto;
									min-width: 5rem;

									&:focus {
										box-shadow: none;
										outline: 2px solid #DE5614;
										outline-offset: 2px;
									}
								}
							}
						}
					}
				}

					.coverage_entity_table_wrapper {
					border-top: 1px solid var(--gray-300);
					margin-top: 1rem;
					padding-top: 0.75rem;
					overflow-x: auto;

					table {
						width: 100%;

						thead {
							th {
								font-size: 0.75rem;
								font-weight: 600;
								color: var(--text-secondary);
								text-transform: uppercase;
								padding: 0.5rem 0.75rem;
								border-bottom: 1px solid var(--gray-300);
							}
						}

						tbody {
							tr {
								border-bottom: 1px solid var(--gray-200);

								&:last-child {
									border-bottom: none;
								}
							}

							td {
								font-size: 0.875rem;
								padding: 0.75rem;
								vertical-align: middle;
							}
						}
					}

					.form-select {
						font-size: 0.875rem;
						padding: 0.25rem 1.5rem 0.25rem 0.5rem;
						border-color: var(--gray-300);

						&:focus {
							border-color: #DE5614;
							box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
						}
					}
				}
			}

			.offer_coverage_block.selected .coverage_wrapper {
				.attribute_table_wrapper table.attribute_table td {
					background-color: #fff1ea;
					border: 1px solid #DE5614;
					color: var(--gray-999);

					.attribute_label {
						color: var(--gray-800);
					}

					.attribute_value {
						color: var(--gray-999);
					}

					select.form-select {
						color: #DE5614;

						option {
							color: var(--gray-999);
							background-color: var(--white);
						}
					}
				}
			}

			.offer_coverage_block:not(.selected) .coverage_wrapper {
				opacity: 0.7;

				.attribute_table_wrapper table.attribute_table td {
					background-color: var(--gray-200);
				}
			}

			label.switch {
				position: relative;
				display: inline-block;
				width: 3rem;
				height: 1.5rem;

				input.switch_input {
					opacity: 0;
					width: 0;
					height: 0;

					&:checked + .slider {
						background-color: #DE5614;
					}

					&:checked + .slider::before {
						transform: translateX(1.5rem);
					}

					&:focus + .slider {
						box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
					}

					&:disabled + .slider {
						opacity: 0.5;
						cursor: not-allowed;
					}
				}

				.slider {
					position: absolute;
					cursor: pointer;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					background-color: var(--gray-300);
					transition: 0.3s;
					border-radius: 1.5rem;

					&::before {
						position: absolute;
						content: "";
						height: 1.125rem;
						width: 1.125rem;
						left: 0.1875rem;
						bottom: 0.1875rem;
						background-color: var(--white);
						transition: 0.3s;
						border-radius: 50%;
					}
				}

				&.round .slider {
					border-radius: 1.5rem;

					&::before {
						border-radius: 50%;
					}
				}
			}

			.effective_date_selector > label {
				line-height: 2rem;
			}

			.declined_tag {
				background-color: var(--red-600);
				color: var(--white);
				font-size: 0.75rem;
				font-weight: 600;
				padding: 0.25rem 0.75rem;
				border-radius: 1rem;
				position: static;
			}

			label.fold_button {
				cursor: pointer;
				display: inline-flex;
				align-items: center;
				gap: 0.25rem;

				input {
					width: 0;
					height: 0;
					opacity: 0;
					position: absolute;
				}

				img {
					width: 0.75rem;
					height: 0.75rem;
					transition: transform 0.3s ease;
				}

				input:checked + img {
					transform: rotate(-90deg);
				}
			}
		}

		#offer_summary, #indication_summary {
			.summary-heading {
				font-size: 1.5rem;
				font-weight: 600;
				margin-bottom: 0.75rem;
				color: var(--text-primary);
			}

			.card {
				background-color: var(--white);
				border: 1px solid var(--gray-300);
				border-radius: 0.75rem;
				padding: 0.75rem 1rem 0.5rem;
			}

			.summary-section {
				margin-bottom: 0.25rem;
			}

			.summary-section__header {
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 0.75rem;
				padding: 0.25rem 0;
			}

			.summary-section__title {
				font-size: 1rem;
				font-weight: 600;
				color: var(--text-primary);
				display: inline-flex;
				align-items: center;
				gap: 0.35rem;
			}

			.summary-section__value {
				font-weight: 700;
				font-size: 1rem;
				color: var(--text-primary);
				text-align: right;
				white-space: nowrap;
			}

			.fold_button {
				display: inline-flex;
				align-items: center;
				gap: 0.375rem;
				cursor: pointer;

				img {
					width: 0.65rem;
					height: 0.65rem;
					transition: transform 0.2s ease;
				}

				input:checked + img {
					transform: rotate(-90deg);
				}
			}

			.coverages_wrapper {
				margin: 0 0 0.5rem 0;
			}

			.summary-line-items {
				padding: 0.25rem 0;
				background-color: var(--gray-50);
			}

			.summary-line-item {
				display: flex;
				align-items: center;
				justify-content: space-between;
				padding: 0.5rem 0.75rem;
				border-bottom: 1px solid var(--gray-200);
				font-size: 0.875rem;

				&:last-child {
					border-bottom: none;
				}
			}

			.summary-line-item__name {
				color: var(--text-secondary);
			}

			.summary-line-item__value {
				font-weight: 600;
				color: var(--text-primary);
			}

			.total_annual_premium_wrapper {
				margin-top: 0.25rem;
				padding-top: 0.75rem;
				border-top: 1px solid var(--gray-300);
			}

			.total-row {
				display: flex;
				align-items: center;
				justify-content: space-between;
				font-size: 1rem;
				font-weight: 600;
				margin-bottom: 0.25rem;
			}

			.total-row__value {
				font-size: 1.25rem;
				font-weight: 700;
			}

			.additional-fees {
				text-align: center;
				font-size: 0.875rem;
				font-style: italic;
				color: var(--text-secondary);
				margin: 0;
				padding-bottom: 0.25rem;
			}
		}

		.sticky_wrapper {
			position: sticky;
			top: 1.5rem;
		}

		#offer_submit_button, #indication_submit_button {
			width: 100%;
			background-color: #DE5614;
			border: none;
			color: var(--white);
			padding: 0.75rem 1.5rem;
			border-radius: 0.375rem;
			font-weight: 600;
			font-size: 1rem;
			margin-top: 1rem;
			cursor: pointer;
			transition: background-color 0.2s ease;

			&:hover {
				background-color: var(--orange-800);
			}

			&:focus {
				outline: 2px solid #DE5614;
				outline-offset: 2px;
			}
		}

		#download_indication_letter_button,
		#download_supplemental_application_button {
			display: block;
			width: 100%;
			text-align: center;
			padding: 0.5rem 1rem;
			margin-top: 0.75rem;
			color: #DE5614;
			background-color: transparent;
			border: none;
			font-size: 0.875rem;
			font-weight: 500;
			text-decoration: underline;
			cursor: pointer;

			&:hover {
				color: var(--orange-800);
			}

			img {
				display: none;
			}
		}

		#taxes_and_fees_wrapper {
			max-width: 90ch;

			h4.fw-bold {
				font-size: 1.5rem;
				font-weight: 500;
				margin-bottom: 0.5rem;
				display: flex;
				align-items: center;
				gap: 0.25rem;

				.hover_icon {
					display: flex;
					align-items: center;
				}
			}

			p.fw-bold {
				font-size: 0.875rem;
				font-weight: 500;
				color: var(--text-secondary);
				margin-bottom: 1.5rem;
			}

			#taxes_and_fees {
				.card {
					width: 100%;
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem;
					padding-bottom: 0.875rem;

					.product_table {
						width: 100%;
						margin-bottom: 0;

						thead {
							tr {
								background-color: transparent;
							}

							tr th {
								padding: 0.75rem 0;
								background-color: transparent;
								border: none;

								h4 {
									font-size: 1.125rem !important;
									font-weight: 600;
									margin: 0;
								}

								h5 {
									font-size: 1.125rem !important;
									font-weight: 600;
									margin: 0;
								}
							}
						}

						tbody {
							tr {
								border-bottom: 1px dotted var(--gray-200);

								&:last-child {
									border-bottom: none;
								}

								td, th {
									padding: 0.25rem 0;
									font-size: 0.875rem;
									background-color: transparent;
									border: none;
								}

								td.line_item {
									color: var(--text-secondary);
								}
							}
						}
					}

					.fold_button {
						display: inline-flex;
						align-items: center;
						gap: 0.375rem;
						cursor: pointer;

						input {
							position: absolute;
							width: 0;
							height: 0;
							opacity: 0;
						}

						img {
							width: 0.5rem;
							height: 0.5rem;
							transition: transform 0.2s ease;
						}

						input:checked + img {
							transform: rotate(-90deg);
						}
					}

					.coverages_wrapper {
						margin-bottom: 0.5rem;
						padding-left: 1rem;
					}

					hr {
						border-color: var(--gray-300);
						margin: 1rem 0;
					}

					#fees_header_wrapper {
						display: flex;
						justify-content: space-between;
						align-items: center;

						h5 {
							font-size: 1.5rem;
							font-weight: 600;
							margin: 0;
							display: flex;
							align-items: center;
							gap: 0.5rem;
						}

						.add_button_wrapper {
							padding: 0 !important;

							.btn {
								display: flex;
								align-items: center;
								gap: 0.25rem;
								color: #DE5614;
								font-size: 0.875rem;
								font-weight: 500;
								padding: 0.25rem 0.5rem;
								background: transparent;
								border: 1px solid #DE5614 !important;
								border-radius: 0.75rem;
								&:hover {
									color: white;
									background-color: #DE5614;
								}

								img {
									width: 1rem;
									height: 1rem;
								}

								&:hover {
									color: #DE5614;
									&:hover {
										color: white;
									}
								}
							}
						}
					}

					#fees, #taxes {
						.form-row {
							display: flex;
							flex-wrap: nowrap !important;
							gap: 0.75rem;
							align-items: flex-end;
							margin: 0.5rem 0 !important;

							.form-group {
								flex: 1;
								max-width: none !important;
								width: auto !important;

								label {
									font-size: 1rem;
									font-weight: 500;
									color: var(--text-secondary);
									margin-bottom: 0.20rem;
								}

								.form-control {
									border: 1px solid var(--gray-300);
									border-radius: 0.375rem;
									padding: 0.5rem 0.75rem;
									font-size: 0.875rem;

									&:focus {
										border-color: #DE5614;
										box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
									}
								}
							}

							.remove_button_wrapper {
								flex: 0 0 auto !important;
								width: auto !important;
								max-width: none !important;
								display: flex;
								align-items: center;
								justify-content: center;
								padding: 0;
								margin-bottom: 0.5rem;

								.remove_button {
									padding: 0;
									cursor: pointer;
									background: none;
									border: none;

									img {
										width: 1.25rem;
										height: 1.25rem;
										content: url(/assets/subtract_orange-a866a610157827e508b8fa93e5e94f1ca3366ad3fc43b6b349e9f1cd3ec9329e.svg);
									}

									&:hover img {
										opacity: 0.8;
									}
								}
							}
						}
					}

					#taxes_header_wrapper {
						display: flex;
						justify-content: space-between;
						align-items: center;
						margin-bottom: 0.75rem;

						h5 {
							font-size: 1rem;
							font-weight: 600;
							margin: 0;
						}
					}

					.submit_row {
						margin: 0px;
						button.btn {
							background-color: #DE5614;
							border: none;
							color: var(--white);
							padding: 0.75rem 1.5rem;
							border-radius: 0.375rem;
							font-weight: 600;
							font-size: 1rem;
							cursor: pointer;
							transition: background-color 0.2s ease;

							&:hover {
								background-color: var(--orange-800);
							}

							&:focus {
								outline: 2px solid #DE5614;
								outline-offset: 2px;
							}
						}
					}
				}
			}
		}

		#schedule_table_form {
			#schedule_table_wrapper > table {
				border-collapse: separate;
				border-spacing: 0;
				border-radius: 0.5rem;

				thead tr:first-child th:first-child { border-top-left-radius: 0.5rem; }
				thead tr:first-child th:last-child { border-top-right-radius: 0.5rem; }
				tbody tr:last-child td:first-child { border-bottom-left-radius: 0.5rem; }
				tbody tr:last-child td:last-child { border-bottom-right-radius: 0.5rem; }
			}

			.with_entity_identifier > tr > td.entity_identifier.hidden_cell {
				display: none;
			}
		}

		#checkout, #checkout_wrapper {
			h4.fw-bold {
				font-size: 1.5rem;
				font-weight: 500;
				margin-bottom: 1rem;
			}

			.row {
				display: flex;
				flex-wrap: nowrap;
			}

			.main_column.col-9,
			.main_column.col-8 {
				flex: 1 1 66.666667%;
				min-width: 0;
				padding-right: 1.5rem;
			}

			.main_column.col-3,
			.main_column.col-4 {
				flex: 0 0 33.333333%;
				min-width: 0;
			}

			#checkout_table {
				background-color: var(--white);
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				overflow: hidden;

				thead.product_header {
					tr {
						background-color: var(--gray-100);
						border-bottom: 1px solid var(--gray-200);
					}

					th {
						padding: 1rem;
						background-color: transparent;
						border: none;

						h5 {
							font-size: 1.125rem;
							font-weight: 600;
							margin: 0;
						}
					}
				}

				thead.coverage_headers {
					tr {
						background-color: var(--gray-100);
						border-bottom: 1px solid var(--gray-200);
					}

					th {
						padding: 0.75rem 1rem;
						font-size: 0.75rem;
						font-weight: 600;
						text-transform: uppercase;
						color: var(--text-secondary);
						background-color: transparent;
						border: none;
					}
				}

				thead.coverage, tbody.entities {
					tr {
						border-bottom: 1px solid var(--gray-200);

						&:last-child {
							border-bottom: none;
						}
					}

					td {
						padding: 0.75rem 1rem;
						font-size: 0.875rem;
						background-color: transparent;
						border: none;
						vertical-align: middle;
					}

					.fold_button {
						display: inline-flex;
						align-items: center;
						gap: 0.375rem;
						cursor: pointer;
						margin-left: 0.5rem;

						input {
							position: absolute;
							width: 0;
							height: 0;
							opacity: 0;
						}

						img {
							width: 0.625rem;
							height: 0.625rem;
							transition: transform 0.2s ease;
						}

						input:checked + img {
							transform: rotate(-90deg);
						}
					}

					.cell_contents_wrapper {
						padding-left: 1.5rem;
						font-size: 0.8125rem;
						color: var(--text-secondary);
					}
				}

				thead.spacer_row {
					tr {
						height: 0.25rem;
					}

					td {
						padding: 0;
						border: none;
						background-color: transparent;
					}
				}

				tbody.entities {
					tr {
						background-color: var(--gray-100);
					}
				}
			}

			/* Checkout Page v2 Redesign - Product Cards */
			> .row > .main_column.col-4 > .sticky_wrapper {
				margin-top: 5rem;
			}

			.checkout-header {
				margin-bottom: 1.75rem;
				margin-top: 1.5rem;

				h4 {
					font-size: 1.5rem;
					font-weight: 700;
					color: var(--text-primary);
					margin: 0;
					letter-spacing: -0.01em;
				}
			}

			.checkout-products {
				display: flex;
				flex-direction: column;
				gap: 1.25rem;
			}

			.product-card {
				background: var(--white);
				border-radius: 0.625rem;
				overflow: hidden;
				box-shadow: 0 1px 4px rgba(12, 12, 13, 0.1), 0 1px 4px rgba(12, 12, 13, 0.05);

				.product-card__header {
					display: flex;
					justify-content: space-between;
					align-items: center;
					padding: 1.25rem;
					background: var(--white);
					cursor: pointer;
					user-select: none;

					h5 {
						font-size: 1rem;
						font-weight: 600;
						margin: 0;
						color: var(--text-primary);
					}

					.chevron {
						width: 1.0625rem;
						height: 1.0625rem;
						transition: transform 0.2s ease;
						color: var(--text-primary);
					}

					&.collapsed .chevron {
						transform: rotate(-90deg);
					}
				}

				.product-card__body {
					padding: 1rem 1.25rem 1.25rem;

					&.hidden {
						display: none;
					}
				}
			}

			/* Coverage List - Replaces table structure */
			.coverage-list {
				display: flex;
				flex-direction: column;
				gap: 0.625rem;

				.coverage-list__header {
					display: flex;
					align-items: center;
					padding: 0 calc(0.875rem + 1px);
					font-size: 0.75rem;
					font-weight: 600;
					text-transform: uppercase;
					color: var(--gray-500);

					.col-coverage {
						flex: 1;
						min-width: 0;

						&.toggle-all-entities {
							display: flex;
							align-items: center;
							gap: 0.5rem;
							cursor: pointer;
							user-select: none;

							&:hover {
								color: var(--gray-700);
							}

							.header-chevron {
								width: 1rem;
								height: 1rem;
								transition: transform 0.2s ease;
								transform: rotate(-90deg);
							}

							&.expanded .header-chevron {
								transform: rotate(0deg);
							}
						}
					}

					.col-limit,
					.col-deductible,
					.col-premium {
						width: 6.875rem;
						flex-shrink: 0;
					}
				}

				.coverage-item {
					border: 1px solid var(--gray-200);
					border-radius: 0.375rem;
					overflow: hidden;
					box-shadow: 0 1px 4px rgba(12, 12, 13, 0.05);
				}

				/* Parent coverage row - gray background, clickable */
				.coverage-item__parent {
					display: flex;
					align-items: center;
					padding: 0.375rem 0.875rem;
					min-height: 1.875rem;
					background: var(--gray-100);
					cursor: pointer;
					font-size: 0.75rem;
					font-weight: 500;
					color: var(--text-primary);

					.col-coverage {
						flex: 1;
						min-width: 0;
						display: flex;
						align-items: center;
						gap: 0.625rem;

						.dropdown-chevron {
							width: 1rem;
							height: 1rem;
							flex-shrink: 0;
							color: var(--text-primary);
							transition: transform 0.2s ease;
							transform: rotate(-90deg);
						}
					}

					.col-limit,
					.col-deductible,
					.col-premium {
						width: 6.875rem;
						flex-shrink: 0;
					}

					.col-premium {
						font-weight: 500;
					}

					&.expanded .dropdown-chevron {
						transform: rotate(0deg);
					}
				}

				/* Simple coverage row - no entities */
				.coverage-item__simple {
					display: flex;
					align-items: center;
					padding: 0.375rem 0.875rem;
					min-height: 1.875rem;
					background: var(--gray-100);
					font-size: 0.75rem;
					font-weight: 500;
					color: var(--text-primary);

					.col-coverage {
						flex: 1;
						min-width: 0;
					}

					.col-limit,
					.col-deductible,
					.col-premium {
						width: 6.875rem;
						flex-shrink: 0;
					}

					.col-premium {
						font-weight: 500;

						&.included {
							color: var(--gray-400);
						}
					}
				}

				/* Entity rows container */
				.coverage-item__entities {
					padding: 0.625rem 0;
					display: flex;
					flex-direction: column;
					gap: 0.625rem;

					&.hidden {
						display: none;
					}
				}

				/* Individual entity row */
				.entity-row {
					display: flex;
					align-items: center;
					padding: 0 0.875rem;
					font-size: 0.875rem;
					color: var(--text-primary);

					.col-coverage {
						flex: 1;
						min-width: 0;
					}

					.col-limit,
					.col-deductible,
					.col-premium {
						width: 6.875rem;
						flex-shrink: 0;
					}
				}
			}

			/* Premium Charges Card */
			.charges-card {
				background: var(--white);
				border: 1px solid var(--gray-200);
				border-radius: 0.75rem;
				overflow: hidden;
				margin-top: 1rem;
				box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);

				.charges-card__header {
					padding: 1.125rem 1.5rem;
					background: var(--white);
					border-bottom: 1px solid var(--gray-200);

					h5 {
						font-size: 1.0625rem;
						font-weight: 600;
						margin: 0;
						color: var(--text-primary);
					}
				}

				.charges-table {
					width: 100%;
					border-collapse: collapse;
					background: var(--gray-50);

					thead th {
						padding: 0.75rem 1.5rem;
						font-size: 0.6875rem;
						font-weight: 600;
						text-transform: uppercase;
						letter-spacing: 0.025em;
						color: var(--gray-500);
						background: var(--gray-50);
						border-bottom: 1px solid var(--gray-200);
						text-align: left;

						&:last-child {
							text-align: right;
							width: 15%;
						}
					}

					tbody tr {
						border-bottom: 1px solid var(--gray-150);

						&:last-child {
							border-bottom: none;
						}

						td {
							padding: 0.875rem 1.5rem;
							font-size: 0.875rem;
							vertical-align: middle;
							font-weight: 500;
							color: var(--text-primary);

							&:last-child {
								text-align: right;
								font-weight: 600;
							}
						}
					}
				}
			}

			.product_block.card {
				background-color: var(--white);
				border: 1px solid var(--gray-300);
				border-radius: 0.5rem;
				padding: 1.25rem;
				margin-bottom: 1rem;
				position: relative;

				.corner_display {
					position: absolute;
					top: 1rem;
					right: 1rem;
					display: flex;
					align-items: center;
					gap: 0.5rem;

					.premium_display {
						font-size: 0.875rem;
						font-weight: 600;
						color: #DE5614;
					}

					.selection_display img {
						width: 1.25rem;
						height: 1.25rem;
					}
				}

				h5 {
					font-size: 1.125rem;
					font-weight: 600;
					margin-bottom: 0.5rem;
					padding-right: 10rem;
				}

				p {
					color: var(--text-secondary);
					font-size: 0.875rem;
					margin-bottom: 1rem;
				}

				.attribute_row {
					display: flex;
					align-items: center;
					gap: 0.5rem;
					margin-bottom: 0.25rem;

					.attribute_label {
						font-size: 0.875rem;
						color: var(--text-secondary);
					}

					.spacer.dotted {
						flex: 1;
						border-bottom: 1px dotted var(--gray-300);
					}

					.attribute_value {
						font-size: 0.875rem;
						font-weight: 600;
					}
				}
			}

			.item_block_wrapper {
				margin-bottom: 0.5rem;

				.item_block.card {
					display: block;
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem;
					text-decoration: none;
					color: inherit;
					transition: border-color 0.2s ease, box-shadow 0.2s ease;

					&:hover {
						border-color: #DE5614;
						box-shadow: 0 0 0 1px #DE5614;
					}

					&.included {
						border-left: 3px solid var(--green-600);
					}

					&.not_included {
						opacity: 0.6;
					}
				}
			}

			#summary_wrapper {
				margin: 0.5rem;
				.summary-title {
					font-size: 1.25rem;
					font-weight: 600;
					color: var(--text-primary);
					margin-bottom: 0.75rem;
					text-align: center;
				}

				.card {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem 1.25rem;

					.summary-lines {
						display: grid;
						grid-template-columns: 1fr auto;
						gap: 0.5rem 0.5rem;
						align-items: start;
					}

					.summary-line {
						display: contents;
						font-size: 1rem;

						.line-name {
							font-weight: 400;
							color: var(--text-primary);
							word-wrap: break-word;
							overflow-wrap: break-word;
						}

						.line-value {
							font-weight: 400;
							color: var(--text-primary);
							white-space: nowrap;
							text-align: right;
						}

						&.total-line {
							.line-name,
							.line-value {
								padding-top: 0.625rem;
								margin-top: 0.25rem;
								border-top: 1px solid var(--gray-200);
							}

							.line-name {
								font-weight: 600;
								font-size: 0.9375rem;
							}

							.line-value {
								font-size: 1.125rem;
								font-weight: 600;
								color: var(--text-primary);
							}
						}
					}

					.taxes-note {
						font-size: 0.75rem;
						color: var(--text-secondary);
						margin: 0.625rem 0 0 0;
						text-align: center;
					}
				}
			}

      #finance_estimate_wrapper {
        .card {
          margin: 0.5rem;
          padding: 1rem 1.25rem;
          border-radius: 0.5rem;
          table {
              margin: 0.5rem 0rem;
          }
          .downpayment {
            font-weight: 500;
          }
          .monthly_payment {
            font-size: 1.5rem;
            font-weight: 500;
          }
          .astrix {
            font-size: 0.75rem;
            color: #808080;
          }
        }
      }

			#download_completed_submissions_button,
			#download_quote_proposal_button {
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 0.5rem;
				width: 100%;
				padding: 0.75rem 1rem;
				margin-top: 0.75rem;
				background-color: transparent;
				border: 1px solid #3d7a42;
				border-radius: 0.375rem;
				background-color:  #3d7a42;
				border-radius: 0.375rem;
				color: white;
				font-size: 0.875rem;
				font-weight: 500;
				text-decoration: none;
				transition: background-color 0.2s ease;

				img {
					width: 1rem;
					height: 1rem;
				}

				.download_icon {
					display: inline-block;
					width: 1rem;
					height: 1rem;
					background-color: currentColor;
					mask-image: url(/assets/download_transparent-b5042a56228574f5a2c61b53c35359c7be47553b49c48231dbdd95ebfd44174e.svg);
					mask-repeat: no-repeat;
					mask-position: center;
					mask-size: contain;
					-webkit-mask-image: url(/assets/download_transparent-b5042a56228574f5a2c61b53c35359c7be47553b49c48231dbdd95ebfd44174e.svg);
					-webkit-mask-repeat: no-repeat;
					-webkit-mask-position: center;
					-webkit-mask-size: contain;
				}

				&:hover {
					background-color: color-mix(in srgb, #3d7a42 90%, black);
				}

				&.loading {
					opacity: 0.6;
					cursor: wait;
				}
			}

			#download_quote_proposal_button {
				width: calc(100% - 1rem);
				margin-left: 0.5rem;
				margin-right: 0.5rem;
			}

			#change_options_button {
				display: block;
				width: 100%;
				text-align: center;
				padding: 0.5rem 1rem;
				margin-top: 0.5rem;
				color: var(--eggplant-600);
				background-color: transparent;
				border: none;
				font-size: 0.875rem;
				font-weight: 600;
				text-decoration: underline;

				&:hover {
					color: var(--eggplant-800);
				}
			}

			#checkout_summary_form {
				margin-top: 1rem;

				.effective_date_selector {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem 1.25rem;
					margin-bottom: 1rem;

					.effective_date_title {
						font-size: 0.75rem;
						font-weight: 600;
						text-transform: uppercase;
						letter-spacing: 0.03em;
						color: var(--text-secondary);
						margin: 0 0 0.375rem 0;
					}

					.effective_date_value {
						font-size: 1.125rem;
						font-weight: 600;
						color: var(--text-primary);
						margin: 0;
					}

					.effective_date_instructions {
						font-size: 0.75rem;
						line-height: 1.4;
						color: var(--text-secondary);
						margin: 0.625rem 0 0 0;
					}
				}

				button.btn {
					width: 100%;
					background-color: #DE5614;
					border: none;
					color: var(--white);
					padding: 0.75rem 1.5rem;
					border-radius: 0.375rem;
					font-weight: 600;
					font-size: 1rem;
					cursor: pointer;
					transition: background-color 0.2s ease;
					position: relative;

					&:hover {
						background-color: var(--orange-800);
					}

					&:focus {
						outline: 2px solid #DE5614;
						outline-offset: 2px;
					}

					&.loading {
						opacity: 0.6;
						cursor: wait;
						pointer-events: none;

						&::before {
							content: "";
							position: absolute;
							left: 1rem;
							top: 50%;
							transform: translateY(-50%);
							width: 20px;
							height: 20px;
							background-image: url(/assets/spinner_v2-1c6d98b7ad99f257443422859be3f14097139c8715eaa4f21c68d3d68fdaf043.svg);
							background-size: contain;
							background-repeat: no-repeat;
							filter: brightness(0) invert(1);
						}
					}
				}
			}

			.sticky_wrapper {
				position: sticky;
				top: 1.5rem;
			}
		}

		#confirmationModal {
			.modal-dialog {
				max-width: 600px;
			}

			.modal-content {
				padding: 2rem;
				border-radius: 0.5rem;
				border: 1px solid var(--gray-300);
			}

			.modal-header {
				padding: 0;
				border-bottom: none;
				margin-bottom: 0.5rem;

				.modal-title {
					font-size: 1.25rem;
					font-weight: 600;
				}
			}

			.modal-body {
				padding: 0;

				.modal-subtitle {
					font-size: 0.875rem;
					color: var(--text-secondary);
					margin-bottom: 1.5rem;
				}

				.pricing-card {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem;
					margin-bottom: 1rem;

					table {
						width: 100%;

						tr {
							&:not(:last-child) {
								border-bottom: 1px dotted var(--gray-300);
							}
						}

						th, td {
							padding: 0.625rem 0;
							font-size: 0.875rem;
							background-color: transparent;
							border: none;
						}

						th {
							font-weight: 500;
							color: var(--text-primary);
						}

						td {
							font-weight: 500;
							text-align: right;
						}

						tr.total-row {
							border-top: 1px solid var(--gray-300);

							th, td {
								padding-top: 0.75rem;
								font-weight: 600;
								font-size: 1rem;
							}

							td {
								color: #DE5614;
							}
						}
					}
				}

				.payment-info-callout {
					background-color: #fef5e6;
					border-left: 4px solid var(--gold-950);
					padding: 0.75rem 1rem;
					margin-bottom: 1rem;
					font-size: 0.8125rem;
					color: var(--text-secondary);
					border-radius: 0 0.25rem 0.25rem 0;
				}

				.npn-section {
					margin-top: 1.5rem;
					padding-top: 1.5rem;
					border-top: 1px solid var(--gray-200);

					h4 {
						font-size: 1rem;
						font-weight: 600;
						margin-bottom: 1rem;
					}

					.form-group {
						margin-bottom: 1rem;

						label {
							display: block;
							font-size: 0.75rem;
							font-weight: 500;
							color: var(--text-secondary);
							margin-bottom: 0.25rem;
						}

						.form-control {
							width: 100%;
							border: 1px solid var(--gray-300);
							border-radius: 0.375rem;
							padding: 0.5rem 0.75rem;
							font-size: 0.875rem;

							&:focus {
								border-color: #DE5614;
								box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
								outline: none;
							}
						}
					}

					.callout.alert {
						border-left: 4px solid #e74c3c;
						background-color: #f9e6e6;
						padding: 0.75rem 1rem;
						font-size: 0.875rem;
						font-weight: 500;
						margin-bottom: 1rem;
						border-radius: 0 0.25rem 0.25rem 0;
					}

					.help-links {
						font-size: 0.8125rem;
						color: var(--text-secondary);

						p {
							margin-bottom: 0.5rem;
						}

						a {
							color: #DE5614;

							&:hover {
								color: var(--orange-800);
							}
						}
					}
				}
			}

			.modal-footer {
				padding: 0;
				border-top: none;
				margin-top: 1.5rem;
				display: flex;
				gap: 0.75rem;
				justify-content: flex-end;

				.btn {
					padding: 0.625rem 1.5rem !important;
					border-radius: 0.375rem !important;
					font-size: 0.875rem !important;
					font-weight: 500 !important;
					cursor: pointer;
					transition: all 0.2s ease;

					&.btn-secondary {
						background-color: var(--white) !important;
						border: 1px solid var(--gray-300) !important;
						color: var(--text-primary) !important;

						&:hover {
							background-color: var(--gray-100) !important;
						}
					}

					&.btn-primary {
						background-color: #DE5614 !important;
						border: none !important;
						color: var(--white) !important;

						&:hover {
							background-color: var(--orange-800) !important;
						}
					}
				}
			}
		}

		#cannot_continue_container {
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			text-align: center;
			padding: 3rem 2rem 0;

			p {
				margin-bottom: 0.5rem;
				font-size: 1rem;
			}

			h3 {
				margin-bottom: 0.5rem;
				font-size: 1.5rem;
			}
		}

		.sidebar-detail.journey--layout {
			gap: 1.5rem;

			section.journey_content {
				display: flex;
				flex-direction: column;
				gap: 0.75rem;
			}

			> section {
				flex: 1 1 auto;
			}

			#closed_declined {
				display: flex;
				flex-direction: column;
				gap: 1.5rem;
				max-width: clamp(65ch, 100ch, 120ch);
				margin: 0 auto;
				padding-top: 0rem;
				width: 100%;

				.declined_header {
					background-color: var(--white);
					border-radius: 0.5rem;
					padding: 1.5rem;
					display: flex;
					flex-direction: column;
					gap: 1rem;

					h1 {
						font-size: 1.5rem;
						font-weight: 600;
						color: var(--gray-999);
						margin-bottom: 0;
					}

					.declined_info {
						font-size: 0.9375rem;
						color: var(--text-secondary);
						line-height: 1.6;
						margin: 0;

						a {
							color: #DE5614;
							text-decoration: none;

							&:hover {
								color: var(--orange-800);
								text-decoration: underline;
							}
						}
					}

					.callout.alert {
					}

					.callout.alert ul {
						margin: 0.5rem 0 0 1.25rem;
						list-style: disc;
					}
				}

				.declined_actions {
					display: flex;
					justify-content: flex-end;
					gap: 0.75rem;
					flex-wrap: wrap;

					.btn {
						display: inline-flex;
						align-items: center;
						justify-content: center;
						padding: 0.625rem 1.25rem;
						border-radius: 0.375rem;
						font-weight: 500;
						font-size: 0.875rem;
						text-decoration: none;
						cursor: pointer;

						&.btn-primary {
							background-color: #DE5614;
							color: var(--white);
							border: none;

						}

						&.btn-secondary {
							background-color: #5B1C69;
							color: var(--white);
						}
					}
				}

				.declined_details {
					display: flex;
					flex-direction: column;
					gap: 1rem;

					> header {
						h2 {
							font-size: 1.25rem;
							font-weight: 600;
							color: var(--gray-999);
						}
					}

					.product_block {
						background-color: var(--white);
						border: 1px solid var(--gray-300);
						border-radius: 0.5rem;
						padding: 1.25rem;
						display: flex;
						flex-direction: column;
						gap: 1rem;

						.product_header, .coverage_header {
							display: flex;
							align-items: center;
							justify-content: space-between;
							gap: 1rem;
						}

						h3 {
							font-size: 1.125rem;
							font-weight: 600;
							color: var(--gray-999);
							margin: 0;
						}

						h4 {
							font-size: 1rem;
							font-weight: 500;
							color: var(--gray-800);
							margin: 0;
						}

						h5 {
							font-size: 0.9375rem;
							font-weight: 500;
							color: var(--gray-800);
							margin: 0;
						}

						h6 {
							font-size: 0.875rem;
							font-weight: 500;
							color: var(--text-secondary);
							margin: 0;
						}
					}

					.coverage_wrapper {
						background-color: var(--gray-100);
						border: 1px solid var(--gray-200);
						border-radius: 0.375rem;
/*						padding: 1rem;*/
						display: flex;
						flex-direction: column;
						gap: 0.5rem;
					}

					.decline_reasons {
						margin: 0;
						padding-left: 1.25rem;
						color: var(--text-secondary);
						font-size: 0.875rem;

						li {
							list-style: disc;
							line-height: 1.5;
						}
					}

					.entity_section {
						display: flex;
						flex-direction: column;
						gap: 0.75rem;
						margin-top: 0.5rem;

						&.nested {
							padding-left: 1rem;
							border-left: 2px solid var(--gray-200);
						}
					}

					.entity_item {
						display: flex;
						flex-direction: column;
						gap: 0.25rem;

						.entity_name {
							font-weight: 500;
							color: var(--gray-800);
							font-size: 0.875rem;
						}
					}

					.coverages_section {
						display: flex;
						flex-direction: column;
						gap: 0.75rem;
						margin-top: 0.5rem;
						padding-top: 0.75rem;
						border-top: 1px solid var(--gray-200);
					}
				}

				.declined_footer {
					text-align: center;
					padding: 1rem;
					color: var(--text-secondary);

					a {
						color: #DE5614;

						&:hover {
							color: var(--orange-800);
						}
					}
				}
			}

			#closed_expired {
				display: flex;
				justify-content: center;
				align-items: center;

				.expired_container {
					background-color: var(--white);
					border-radius: 0.5rem;
					padding: 2rem;
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 1.5rem;

					.expired_heading {
						font-size: 1.75rem;
						font-weight: 600;
						color: var(--gray-999);
						text-align: center;
					}

					.expired_actions {
						display: flex;
						gap: 0.75rem;
						flex-wrap: wrap;
						justify-content: center;

						.btn {
							padding: 0.625rem 1.25rem;
							border-radius: 0.375rem;
							font-weight: 500;
							font-size: 0.875rem;
							text-decoration: none;
							cursor: pointer;
							border: none;
							color: var(--white);

							&.expired_btn_restart {
								background-color: var(--eggplant-600);

								&:hover {
									background-color: var(--eggplant-800);
									color: var(--white);
								}
							}

							&.expired_btn_new {
								background-color: var(--orange-600);

								&:hover {
									background-color: var(--orange-800);
									color: var(--white);
								}
							}
						}
					}
				}
			}

			#closed_cancelled {
				display: flex;
				justify-content: center;
				align-items: center;

				.cancelled_container {
					background-color: var(--white);
					border-radius: 0.5rem;
					padding: 2rem;
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 1.5rem;

					.cancelled_heading {
						font-size: 1.75rem;
						font-weight: 600;
						color: var(--gray-999);
						text-align: center;
					}

					.cancelled_actions {
						display: flex;
						gap: 0.75rem;
						flex-wrap: wrap;
						justify-content: center;

						.btn {
							padding: 0.625rem 1.25rem;
							border-radius: 0.375rem;
							font-weight: 500;
							font-size: 0.875rem;
							text-decoration: none;
							cursor: pointer;
							border: none;
							color: var(--white);

							&.cancelled_btn_restart {
								background-color: var(--eggplant-600);

								&:hover {
									background-color: var(--eggplant-800);
									color: var(--white);
								}
							}

							&.cancelled_btn_new {
								background-color: var(--orange-600);

								&:hover {
									background-color: var(--orange-800);
									color: var(--white);
								}
							}
						}
					}
				}
			}

			nav#application_journey--progress_bar {
				padding: 1rem;
				padding-top: 0rem;
				flex-basis: calc(1.35 * var(--sidebar-w));

        a {
          color: var(--text-primary);
        }

        li.current ~ li a {
          color: var(--text-secondary);
        }

				menu {
					list-style: numbered;
					list-style-position: inside;
					li {
						padding-right: 1em;
						display: block;
						min-inline-size: max-content;
						max-inline-size: 100%;
						min-block-size: max-content;
						max-block-size: 100%;
					}

					& > li {
						padding: 0.5rem 1rem;
						font-size: 1rem;
						border-radius: 0.5rem;
						position: relative;
						& > a {
							display: block;
							margin: -0.5rem -1rem;
							padding: 0.5rem 1rem;
							border-radius: inherit;
							text-decoration: none;
							color: inherit;
						}
						&:hover {
							background-color: unset;
						}
						&:has(ul) {
							border-bottom-left-radius: 0;
							border-bottom-right-radius: 0;
						}
						&.progress_bar_step {
							background: url(/assets/v2/check-32e1d01ee500e8cccd71cfcb9a9f65ddcac48b2efa18d97a21335e3e86834c21.svg) no-repeat right 0.5rem center;
							&.completed {
								cursor: pointer;
								&:hover {
									background-color: var(--white);
								}
							}
							&.current {
								background-color: white !important;
								background-image: unset;
								& ~ li {
									color: var(--text-secondary);
									background-color: transparent;
									background-image: unset;
								}
								& ~ li.current{
									background: url(/assets/v2/check-32e1d01ee500e8cccd71cfcb9a9f65ddcac48b2efa18d97a21335e3e86834c21.svg) no-repeat right 0.5rem center;
									ul > li:not('.current') ~ li.current
									background: url(/assets/v2/check-32e1d01ee500e8cccd71cfcb9a9f65ddcac48b2efa18d97a21335e3e86834c21.svg) no-repeat right 0.5rem center;
								}
								padding-bottom: 0;
								ul {
									margin: 0.5rem -1rem 0 -1rem;
									background-color: var(--gray-100);
									li {
										margin-left: 1rem;
									}
								}
							}
						}
						ul {
							list-style-position: outside;
							padding-left: 0;
							background-color: transparent;
							margin-bottom: 0;
							li {
								padding-left: 1rem;
								font-size: 0.875em;
								border-left: solid 1px var(--gray-300);
								position: relative;
								& > a {
									display: block;
									margin-left: -1rem;
									padding: 0.25rem 0 0.25rem 1rem;
									color: inherit;
									text-decoration: none;
								}
								&.current {
									color: var(--eggplant-300);
									border-left: solid 2px var(--eggplant-300);
								}
								&:hover {
									background-color: var(--white);
								}
							}
						}
					}
				}
				& + div, & + section {
					flex: 1 1 auto;
					padding-right: 2rem;
				}
			}

			.regression-confirm-modal {
				display: contents;
			}

			#submissions_data_container {
				max-width: 90ch;

			.question_block.boolean {
				margin-bottom: 1rem;
			}

			.question_block.select {
				margin-bottom: 1.2rem;
			}

			.question_block.integer {
				margin-bottom: 1.2rem;
			}

			.question_block.text {
				margin-bottom: 1.2rem;
			}

			.question_block.currency {
				margin-bottom: 1.2rem;
			}

		.question_block.attestation {
			.attestation_container {
				.attestation_label {
					font-size: 1.5em;
					border-bottom: 1px solid #3B1B4B;
				}
			}
		}

		.question_block.checkbox {

			.form-check {
				display: flex;
				align-items: center;
				margin-bottom: 12px;
				padding: 0;
			}

			.switch {
				position: relative;
				display: inline-block;
				width: 24px;
				height: 24px;
				margin-right: 12px;
				flex-shrink: 0;
			}

			.switch_input {
				position: absolute;
				opacity: 0;
				cursor: pointer;
				height: 100%;
				width: 100%;
				z-index: 2;
				margin: 0;
			}

			.slider.checkbox {
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: #ffffff;
				border: 2px solid #adb5bd;
				transition: all 0.2s ease;
				z-index: 1;
			}

			.slider.round {
				border-radius: 0.1875rem !important;
			}

			.switch_input:checked + .slider.checkbox {
				background-color: #3B1B4B;
				border-color: #3B1B4B;
			}

			.slider.checkbox:after {
				content: "";
				position: absolute;
				display: none;
				left: 7px;
				top: 3px;
				width: 6.5px;
				height: 12px;
				border: solid white;
				border-width: 0 2px 2px 0;
				transform: rotate(45deg);
			}

			.switch_input:checked + .slider.checkbox:after {
				display: block;
			}

			.switch_input:disabled + .slider.checkbox {
				background-color: #f2f2f2;
				border-color: #d1d1d1;
				cursor: not-allowed;
				opacity: 0.7;
			}

			.question_block_checkbox_label {
				cursor: pointer;
				font-size: 16px;
				line-height: 22px;
				color: #333;
				user-select: none;
			}
		}

			.boolean_toggle {
				display: inline-flex;
				position: relative;
				border-radius: 20px;
				width: max-content;
				border: 1px solid #ddd;
				overflow: hidden;
				user-select: none;
				gap: 0;
			}

			.toggle_label {
				position: relative;
				padding: 8px 20px;
				cursor: pointer;
				z-index: 1;
				font-weight: 600;
				transition: color 0.3s ease;
				display: flex;
				align-items: center;
				justify-content: center;
				min-width: 60px;
			}

			.switch input[type="radio"] {
				height: 24px;
				width: 24px;
				margin-top: 0rem;
				border: 2px solid #adb5bd;
			}

			.switch input[type="radio"]:checked {
				background-color: #3B1B4B;
				border: 0;
			}

			.toggle_label input[type="radio"] {
				position: absolute;
				cursor: pointer;
			}

			.slider {
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				z-index: -1;
				transition: background-color 0.2s ease;
				border-radius: 18px;
			}

			.toggle_label:has(input:checked) {
				color: #fff;
			}

			.toggle_label:has(input:checked) .slider {
				background-color: #3B1B4B;
			}

			.toggle_label:not(.disabled):not(:has(input:checked)):hover .slider {
				background-color: rgba(0, 0, 0, 0.05);
			}

			.toggle_label.disabled {
				cursor: not-allowed;
				color: #999;
			}

			.toggle_label.disabled:has(input:checked) .slider {
				background-color: #ccc;
			}

			.toggle_label.left {
				border-radius: 18px 0 0 18px;
			}

			.toggle_label.right {
				border-radius: 0 18px 18px 0;
			}

				.form-check {
					display: flex;
					align-items: center;
					margin-bottom: 20px;
					padding-left: 14px;
				}

				label.switch {
					position: relative;
					display: inline-flex;
					align-items: center;
					justify-content: center;
					width: 24px;
					height: 24px;
					margin-right: 0;
					flex-shrink: 0;
				}

				.boolean_toggle {
					input[type="radio"] {
						position: absolute;
						opacity: 0;
						cursor: pointer;
						height: 100%;
						width: 100%;
						z-index: 2;
						margin: 0;
					}
				}

				.slider.round.radio {
					position: absolute;
					cursor: pointer;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					background-color: #ccc;
					transition: 0.4s;
					border-radius: 2rem;
				}

				.slider.round.radio:before {
					position: absolute;
					content: "";
					height: 1rem;
					width: 1rem;
					left: 0.17rem;
					bottom: 0.17rem;
					background-color: white;
					transition: 0.4s;
					border-radius: 50%;
				}

				.question_block_radio_input:checked + .slider.round.radio {
					background-color: #3B1B4B;
				}

				.question_block_radio_input:checked + .slider.round.radio:before {
					transform: translateX(1.45rem);
				}

				.question_block_radio_input:focus + .slider.round.radio {
					box-shadow: 0 0 0.05rem #3B1B4B;
				}

				.question_block_radio_input:disabled + .slider.round.radio {
					background-color: #e0e0e0;
					cursor: not-allowed;
				}

				.question_block_radio_label {
					cursor: pointer;
					font-size: 1rem;
					color: #333;
					user-select: none;
				}

				.question_block_radio_input[style*="border"] + .slider.round.radio {
					box-shadow: 0 0 0 0.11rem #ff0000;
				}
				.attestation_container {
					ul {
						list-style: disc;
					}
				}
			}

			/* Styles for React app markup */
			#schedule_page_container {
				.schedule_header_layout {
					display: flex;
					flex-wrap: wrap;
					gap: 1rem;
					align-items: center;
					margin-bottom: 0;
				}
				.schedule_header_layout #schedule_header_wrapper {
					flex: 0 0 auto;
					align-self: flex-start;
				}
				.schedule_header_spacer {
					flex: 1 1 auto;
				}
				#schedule_header_wrapper {
					h6, div.add_button_wrapper { display: none; }
					h3 {
						font-weight: 500;
						font-size: 1.125rem;
						line-height: 1.4;
						position: relative;
						top: 0;
						margin-top: 0;
						margin-bottom: 0;
					}
				}
				.schedule_import_wrapper {
					flex: 0 0 auto;
					display: flex;
					justify-content: flex-end;
				}
				.schedule_import_wrapper #schedule_drop_box_wrapper {
					margin-top: 0;
					padding-top: 0;
					padding-bottom: 0;
					width: 100%;
				}
				.schedule_import_wrapper #drag_and_drop_wrapper {
					display: flex;
					align-items: center;
					text-align: left;
					padding: 0;
					gap: 0.375rem;
				}
				.schedule_import_wrapper #drag_and_drop_wrapper .row {
					align-items: center;
				}
				.schedule_import_wrapper .vertical_center_container {
					display: flex;
					align-items: flex-start;
					justify-content: flex-start;
				}
				@media (max-width: 900px) {
					.schedule_import_wrapper {
						justify-content: flex-start;
					}
					.schedule_import_wrapper #schedule_drop_box_wrapper {
						margin-top: 0.75rem;
					}
				}
				#schedule_drop_box_wrapper {
					margin-top: 0.5rem;
					padding-top: 0.5rem;
					padding-bottom: 0.75rem;
				}
				#drag_and_drop_wrapper {
					display: flex;
					flex-direction: column;
					align-items: flex-end;
					gap: 0.5rem;
					padding: 0.75rem 1rem;
				}
				#schedule_box_wrapper {
					text-align: right;
				}
				label.hidden_file_input_label {
					background-color: #DE5614;
					color: white;
					padding: 2px 8px;
					border-radius: 999px;
					cursor: pointer;
					font-size: 0.625rem;
					font-weight: 500;
				}
				a.schedule_csv_example_link {
					font-size: 0.625rem;
					color: #DE5614;
					text-decoration: underline;
				}
				input.hidden_file_input {
					display: none;
				}
				#schedule_table_wrapper {
					thead {
						min-width: 80vw;
					}

					td {
						padding: 0.25rem 0.375rem;
					}

					th {
						background-color: #E9E9E9;
						padding-top: 0.5rem;
					}

					tbody tr:first-child td:last-child {
						border-radius: 0 0.5rem 0.5rem 0;
					}

					.question_block_input {
						padding: 0.375rem 0.25rem;
					}

					.question_block_select {
						padding: 0.375rem 1.75rem 0.375rem 0.25rem;
					}

					.smart_address {
						position: relative;

						.suggestions_wrapper {
							position: absolute;
							top: 2.5rem;
							left: 0;
							z-index: 100;
							font-size: 0.875rem;
							min-width: 20rem;

							.close_button {
								position: absolute;
								right: -0.75rem;
								top: -0.5rem;
								width: 1.375rem;
								height: 1.375rem;
								border-radius: 50%;
								text-align: center;
								font-family: sans-serif;
								cursor: pointer;
								color: var(--gray-500);
								background-color: var(--white);
								box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
								display: flex;
								align-items: center;
								justify-content: center;
								line-height: 1;
							}

							.suggestions {
								overflow: hidden;
								box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.1);
								border-radius: 0.5rem;
								background-color: var(--white);
								border: 1px solid var(--gray-200);

								.address_suggestion {
									padding: 0.5rem 1rem;
									cursor: pointer;

									&.hovered,
									&.focused {
										background-color: var(--gray-100);
									}
								}
							}
						}
					}
				}
				#schedule_table_wrapper.location_schedule_table {
					td, th {
						font-size: 0.75rem;
					}
					td input, td select {
						font-size: 0.75rem;
					}
					th {
						font-size: 0.6875rem;
						padding: 0.5rem 0.375rem 0.25rem;
						white-space: normal;
						line-height: 1.2;
					}
					th.col_address_1      { width: 24%; }
					table { min-width: 60rem; }
				}
				input.form-control {
					font-size: inherit;
				}
				div.add_button_wrapper {
					display: flex;
					align-items: center;
					justify-content: flex-start;
					border-bottom: solid var(--bs-border-width) var(--bs-border-color);
					padding-bottom: 2rem;
					margin-bottom: 2rem;
					button {
						display: flex;
						gap: 0.5rem;
						justify-content: space-around;
						align-items: center;
						color: #DE5614;
					}
				}
			}

			#binding {
				max-width: 90ch;

				.binding_container {
					width: 100%;
					margin: 0;
				}

				.binding_label {
					margin-bottom: 1rem;

					.binding_label_text {
						font-size: 1.25rem;
						font-weight: 600;
						font-family: inherit;
						margin-bottom: 0.5rem;

						strong {
							font-weight: 600;
						}
					}

					p.text-muted {
						font-size: 0.875rem;
						color: var(--text-secondary);
						margin-bottom: 0.25rem;
					}
				}

				.binding_card {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1.25rem;
					margin-bottom: 1rem;
					box-shadow: none;

					.binding_card_label {
						font-size: 1rem;
						font-weight: 600;
						padding-bottom: 0.75rem;
						margin-bottom: 1rem;
						border-bottom: 1px solid var(--gray-200);
					}

					.form-row {
						margin-bottom: 1rem;

						&:last-of-type {
							margin-bottom: 0;
						}
					}

					.form-group {
						display: flex;
						flex-direction: column;
						gap: 0.25rem;

						label {
							font-size: 0.75rem;
							font-weight: 500;
							color: var(--text-secondary);
							margin: 0;
						}

						.form-control {
							border: 1px solid var(--gray-300);
							border-radius: 0.375rem;
							padding: 0.5rem 0.75rem;
							font-size: 0.875rem;

							&:focus {
								border-color: #DE5614;
								box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
								outline: none;
							}
						}
					}
				}

				footer {
					margin-top: 1.25rem;

					#save_binding_info_button {
						background-color: #DE5614;
						border: none;
						color: var(--white);
						padding: 0.75rem 1.5rem;
						border-radius: 0.375rem;
						font-weight: 600;
						font-size: 1rem;
						cursor: pointer;
						transition: background-color 0.2s ease;

						&:hover {
							background-color: var(--orange-800);
						}

						&:focus {
							outline: 2px solid #DE5614;
							outline-offset: 2px;
						}
					}
				}
			}

			#esign_container {
				max-width: 90ch;
				display: flex;
				flex-direction: column;
				gap: 0.625rem;
				flex: 1;

				.ajax_wrapper {
					display: flex;
					flex-direction: column;
					gap: 0.625rem;
				}

				.error_container {
					list-style: none;
					padding: 0;
					margin: 0;
					display: flex;
					flex-direction: column;
					gap: 0.5rem;

					li {
						background-color: var(--red-100);
						border-left: 4px solid var(--red-600);
						padding: 0.75rem 1rem;
						border-radius: 0 0.25rem 0.25rem 0;
						font-size: 0.875rem;
						color: var(--red-600);
					}
				}

				.esign_header {
					display: flex;
					align-items: center;
					justify-content: space-between;
					margin-bottom: 0;

					h1 {
						font-size: 1rem;
						font-weight: 500;
						color: var(--gray-999);
						margin: 0;
					}

					.esign_header_actions {
						display: flex;
						gap: 0.625rem;
						align-items: center;
					}

					.header_btn {
						display: inline-flex;
						align-items: center;
						gap: 0.5rem;
						padding: 0.3125rem 0.625rem;
						background-color: var(--white);
						border: none;
						border-radius: 0.375rem;
						font-size: 0.875rem;
						font-weight: 500;
						color: var(--gray-999);
						cursor: pointer;
						transition: all 0.2s ease;
						text-decoration: none;

						&:hover:not(.loading) {
							background-color: var(--gray-100);
							outline: 1px solid #999;
							outline-offset: -1px;
						}

						svg, img {
							width: 1.0625rem;
							height: 1.0625rem;
						}

						&.loading {
							opacity: 0.6;
							cursor: not-allowed;
						}
					}

					.error_message {
						background-color: var(--red-100);
						border-left: 4px solid var(--red-600);
						padding: 0.75rem 1rem;
						border-radius: 0 0.25rem 0.25rem 0;
						color: var(--red-600);
						font-size: 0.875rem;
						margin-top: 0.625rem;
					}
				}

				.esign_table {
					width: 100%;
					border: 1px solid var(--gray-300);
					border-radius: 0.375rem;
					border-collapse: separate;
					border-spacing: 0;
					overflow: hidden;
					box-shadow: 0 1px 4px 0 rgba(12, 12, 13, 0.05);

					thead {
						th {
							background-color: var(--gray-200);
							padding: 0 0.875rem;
							height: 2.5rem;
							vertical-align: middle;
							font-size: 0.875rem;
							font-weight: 500;
							color: var(--gray-999);
							text-align: left;
							border-bottom: 1px solid var(--gray-300);
							border-right: 1px solid var(--gray-300);

							&:last-child {
								border-right: none;
							}

							&.col_order {
								width: 4.9375rem;
								text-align: center;
							}

							&.col_status {
								width: 10.9375rem;
							}

							&.col_remind {
								width: 9.125rem;
							}
						}
					}

					tbody {
						td {
							background-color: var(--white);
							padding: 0.75rem 0.875rem;
							font-size: 0.875rem;
							font-weight: 400;
							color: var(--gray-999);
							border-bottom: 1px solid var(--gray-300);
							border-right: 1px solid var(--gray-300);
							vertical-align: middle;

							&:last-child {
								border-right: none;
							}

							&.col_order {
								text-align: center;
							}
						}

						tr:last-child td {
							border-bottom: none;
						}
					}

					.signer_name_cell {
						.name {
							font-size: 0.875rem;
							font-weight: 400;
							color: var(--gray-999);
							letter-spacing: -0.0175rem;
						}

						.email {
							font-size: 0.875rem;
							font-weight: 400;
							color: var(--text-secondary);
							letter-spacing: -0.0175rem;
						}
					}

					.status_badge {
						display: inline-flex;
						align-items: center;
						justify-content: center;
						padding: 0.125rem 0.875rem;
						border-radius: 1.5rem;
						font-size: 0.75rem;
						font-weight: 600;
						border: 1px solid;

						&.done {
							background-color: var(--green-200);
							border-color: var(--green-600);
							color: var(--green-600);
						}

						&.awaiting {
							background-color: var(--brown-200);
							border-color: var(--brown-600);
							color: var(--brown-600);
						}
					}

					.reminder_btn {
						display: inline-flex;
						align-items: center;
						gap: 0.375rem;
						padding: 0.25rem 0.5rem;
						background-color: var(--green-100);
						border: 1px solid var(--green-600);
						border-radius: 0.375rem;
						font-size: 0.75rem;
						font-weight: 500;
						color: var(--green-600);
						cursor: pointer;
						transition: all 0.2s ease;
						white-space: nowrap;

						img {
							width: 0.875rem;
							height: 0.875rem;
							filter: brightness(0) saturate(100%) invert(36%) sepia(61%) saturate(463%) hue-rotate(93deg) brightness(92%) contrast(87%);
						}

						&:hover {
							background-color: var(--green-200);
						}
					}
				}

				.esign_actions {
					display: flex;
					flex-wrap: wrap;
					gap: 0.75rem;
					margin-top: 0.5rem;
					justify-content: flex-end;

					.btn {
						padding: 0.625rem 1.25rem;
						border-radius: 0.375rem;
						font-weight: 500;
						font-size: 0.875rem;
						cursor: pointer;
						transition: all 0.2s ease;

						&.btn-primary {
							background-color: #DE5614;
							color: var(--white);
							border: none;

							&:hover {
								background-color: var(--orange-800);
							}

							&:disabled, &.loading {
								opacity: 0.6;
								cursor: not-allowed;
							}
						}

						&.btn-secondary {
							background-color: transparent;
							color: var(--gray-800);
							border: 1px solid var(--gray-300);

							&:hover {
								background-color: var(--gray-100);
							}

							&.loading {
								opacity: 0.6;
								cursor: not-allowed;
							}
						}
					}
				}

				.esign_notice {
					background-color: var(--brown-200);
					border-left: 4px solid var(--brown-600);
					padding: 0.75rem 1rem;
					border-radius: 0 0.25rem 0.25rem 0;
					font-size: 0.875rem;
					color: var(--brown-600);
				}

				.signers_section {
					display: flex;
					flex-direction: column;
					gap: 1rem;

					> h2 {
						font-size: 1rem;
						font-weight: 500;
						color: var(--gray-999);
						margin: 0;
					}
				}

				.signer_card {
					background-color: var(--white);
					border: 1px solid var(--gray-300);
					border-radius: 0.5rem;
					padding: 1rem 1.25rem;
					display: flex;
					align-items: flex-start;
					gap: 1rem;

					.signer_order {
						width: 2rem;
						height: 2rem;
						background-color: var(--gray-100);
						border-radius: 50%;
						display: flex;
						align-items: center;
						justify-content: center;
						font-size: 0.875rem;
						font-weight: 600;
						color: var(--gray-500);
						flex-shrink: 0;
					}

					.signer_form_fields {
						flex: 1;
						display: flex;
						flex-direction: column;
						gap: 0.75rem;

						.signer_title {
							font-size: 0.875rem;
							font-weight: 500;
							color: var(--gray-999);
							margin-bottom: 0.25rem;
						}

						.form_row {
							display: flex;
							gap: 1rem;

							.form_group {
								flex: 1;
								display: flex;
								flex-direction: column;
								gap: 0.25rem;

								label {
									font-size: 0.75rem;
									font-weight: 500;
									color: var(--text-secondary);
								}

								input {
									border: 1px solid var(--gray-300);
									border-radius: 0.375rem;
									padding: 0.5rem 0.75rem;
									font-size: 0.875rem;

									&:focus {
										border-color: #DE5614;
										box-shadow: 0 0 0 0.2rem color-mix(in srgb, #DE5614 25%, transparent);
										outline: none;
									}
								}
							}
						}
					}
				}

				.signers_list {
					display: flex;
					flex-direction: column;
					gap: 0.75rem;
				}
			}

			#issued_container {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 1.25rem;
				width: 100%;
				padding-top: 3rem;

				.issued_content {
					display: flex;
					flex-direction: column;
					align-items: center;
					text-align: center;
					gap: 0.75rem;
					width: 100%;
					max-width: 900px;
					padding: 0 1.5rem;
				}

				.issued_heading {
					font-size: 1.625rem;
					font-weight: 500;
					color: var(--gray-999);
					margin: 0;
				}

				.issued_policy_number {
					font-size: 1.25rem;
					font-weight: 600;
					color: var(--eggplant-300);
					margin: 0;
				}

				.issued_requirement_message {
					color: var(--red-600);
				}

				.issued_card .issued_policy_number {
					margin: 0 0 0.5rem;
				}

				.issued_card {
					background-color: var(--white);
					border-radius: 0.625rem;
					padding: 1.25rem;
					width: 100%;
					display: flex;
					flex-direction: column;
					gap: 1.5rem;
				}

				.issued_actions {
					display: flex;
					flex-direction: row;
					flex-wrap: wrap;
					gap: 0.625rem;
					justify-content: center;
					width: 100%;

					.btn {
						display: flex;
						align-items: center;
						justify-content: center;
						gap: 0.5rem;
						padding: 0.375rem 0.625rem;
						border-radius: 0.375rem;
						font-weight: 500;
						font-size: 0.875rem;
						text-decoration: none;
						transition: background-color 0.2s ease;
						background-color: var(--white);
						border: 1px solid var(--gray-300);

						img {
							width: 1.0625rem;
							height: 1.0625rem;
						}
					}

					.btn-link {
						color: #DE5614;

						&:hover {
							background-color: color-mix(in srgb, #DE5614 5%, transparent);
						}

						&:focus {
							outline: 2px solid #DE5614;
							outline-offset: 2px;
						}
					}

					.btn-secondary {
						color: var(--gray-999);

						&:hover {
							background-color: var(--gray-100);
						}

						&:focus {
							outline: 2px solid var(--gray-500);
							outline-offset: 2px;
						}
					}
				}

				.issued_followup {
					border-top: 1px solid var(--gray-200);
					padding-top: 1.5rem;
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 0.625rem;
					text-align: center;

					.issued_followup_heading {
						font-size: 1rem;
						font-weight: 500;
						color: var(--gray-999);
						margin: 0;
					}

					.issued_followup_text {
						font-size: 0.875rem;
						font-weight: 400;
						color: var(--text-secondary);
						margin: 0;
					}
				}

				.issued_customer_message {
					padding: 1rem 1.5rem;
					background-color: var(--gray-100);
					border-radius: 0.375rem;
					width: 100%;
					max-width: 400px;

					p {
						margin: 0;
						color: var(--text-secondary);
						font-size: 0.875rem;
					}
				}
			}

			.workflow_message #issued_container {
				padding-top: 0.75rem;
			}

			#under_review_container {
				display: flex;
				gap: 3.125rem;
				width: 100%;
				align-items: flex-start;

				.under_review_content {
					flex: 1 1 600px;
					display: flex;
					flex-direction: column;
					align-items: center;
					text-align: center;
					gap: 0.625rem;
					padding: 2rem 1.5rem;
				}

				.under_review_heading {
					font-size: 1.5rem;
					font-weight: 600;
					color: var(--gray-999);
					margin: 0;
					line-height: 2.25rem;
				}

				.under_review_text {
					font-size: 1rem;
					font-weight: 400;
					color: var(--text-secondary);
					margin: 0;
					line-height: 1.625rem;
					max-width: 600px;
				}

				.under_review_summary {
					flex: 0 0 auto;
					min-width: 280px;
					max-width: 320px;

					.summary-heading {
						font-size: 1rem;
						font-weight: 500;
						color: var(--gray-999);
						margin-bottom: 0.75rem;
					}

					.card {
						background-color: var(--white);
						border: 1px solid var(--gray-300);
						border-radius: 0.625rem;
						padding: 1.25rem;
						box-shadow: 0 1px 4px 0 rgba(12, 12, 13, 0.1), 0 1px 4px 0 rgba(12, 12, 13, 0.05);
					}

					.summary_product {
						margin-bottom: 1rem;

						&:last-of-type {
							margin-bottom: 0;
						}
					}

					.summary_product_row {
						display: flex;
						justify-content: space-between;
						align-items: center;
						margin-bottom: 0.5rem;
					}

					.summary_product_name {
						font-size: 0.875rem;
						font-weight: 400;
						color: var(--gray-999);
					}

					.summary_product_premium {
						font-size: 0.875rem;
						font-weight: 400;
						color: var(--gray-999);
					}

					.summary_coverage_row {
						display: flex;
						justify-content: space-between;
						align-items: center;
						padding-left: 1rem;
						margin-bottom: 0.25rem;
					}

					.summary_coverage_name {
						font-size: 0.875rem;
						font-weight: 400;
						color: var(--gray-999);
					}

					.summary_coverage_premium {
						font-size: 0.875rem;
						font-weight: 400;
						color: var(--gray-999);
					}

					.total_annual_premium_wrapper {
						border-top: 1px solid var(--gray-300);
						padding-top: 1.25rem;
						margin-top: 1.25rem;
					}

					.summary_total_row {
						display: flex;
						justify-content: space-between;
						align-items: center;
					}

					.summary_total_label {
						font-size: 1rem;
						font-weight: 600;
						color: var(--gray-999);
					}

					.summary_total_value {
						font-size: 1.125rem;
						font-weight: 600;
						color: var(--gray-999);
					}

					.summary_disclaimer {
						font-size: 0.75rem;
						font-weight: 400;
						color: var(--text-secondary);
						text-align: center;
						margin: 0.75rem 0 0 0;
					}
				}

				@media (max-width: 1024px) {
					flex-direction: column;

					.under_review_content {
						flex: 1 1 auto;
					}

					.under_review_summary {
						width: 100%;
						max-width: 100%;
					}
				}
			}

			.workflows_container:has(#issued_container) {
				margin-top: 0;
			}

			.workflows_container {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 1.25rem;
				width: 100%;
				margin-top: 0.5rem;

				#under_review_container {
					width: 100%;
				}

				.workflow_message {
					width: 90%;
					background: var(--white);
					border-radius: 0.625rem;
					padding: 1.25rem;
					box-shadow: 0px 1px 4px rgba(12, 12, 13, 0.1),
								0px 1px 4px rgba(12, 12, 13, 0.05);
					text-align: center;
					max-width: 852px;

					h2 {
						font-size: 1.625rem;
						font-weight: 500;
						margin-bottom: 0.75rem;
						line-height: 1.625;
					}

					p {
						font-size: 1rem;
						margin-bottom: 0.5rem;
					}

					ul, ol {
						margin-bottom: 0.75rem;
						padding-left: 1.75rem;
						font-size: 0.875rem;
						color: var(--text-primary);

						li {
							margin-bottom: 0.125rem;
							list-style: disc;
							line-height: 1.43;
						}
					}

					a {
						color: #DE5614;

						&:hover {
							color: var(--orange-800);
						}
					}
				}

				.workflow_message:has(#issued_container) {
					width: 100%;
					max-width: none;
					padding: 0;
					background: transparent;
					box-shadow: none;
					border-radius: 0;
					text-align: unset;
				}

				.workflows_questions {
					width: 100%;

					#submissions_data_form {
						display: flex;
						flex-direction: column;
						gap: 1.25rem;

						.individual_question {
							background: var(--white);
							border-radius: 0.625rem;
							padding: 1.25rem;
							border: none;
							box-shadow: 0px 1px 4px rgba(12, 12, 13, 0.1),
										0px 1px 4px rgba(12, 12, 13, 0.05);
						}

						.multi_file_field_wrapper {
							padding: 0;
							margin: 0;

							.drag_and_drop_wrapper {
								border: 2px dashed #ccc;
								border-radius: 0.625rem;
								padding: 2rem;
								margin: 0;
								text-align: center;
								background-color: var(--white);
								transition: all 0.2s ease;

								&.highlighted {
									border-color: #266af2;
									background-color: rgba(38, 106, 242, 0.05);
								}

								.row {
									justify-content: center;
								}

								.vertical_center_container {
									display: flex;
									align-items: center;
									justify-content: center;
									flex-wrap: wrap;
									gap: 0.25rem;
								}

								.hidden_file_input_label {
									color: #266af2;
									cursor: pointer;
									font-weight: 600;
									text-decoration: underline;

									&:hover {
										color: #1a4fc9;
									}
								}

								.hidden_file_input {
									display: none;
								}
							}

							.uploaded_files_wrapper {
								margin-top: 1rem;
								padding: 0;
								display: flex;
								flex-direction: column;
								gap: 0.5rem;

								.uploaded_file {
									display: flex;
									justify-content: space-between;
									align-items: center;
									padding: 0.5rem 1rem;
									margin: 0;
									background-color: var(--gray-100);
									border: 1px solid #DE5614;
									border-radius: 0.375rem;

									a {
										color: var(--text-primary);
										text-decoration: none;
										padding: 0;
										display: block;

										&:hover {
											color: #DE5614;
										}
									}

									.delete_file_button {
										position: static;
										padding: 0.25rem;
										width: auto;
										height: auto;
										background: transparent;
										border: none;
										cursor: pointer;
										opacity: 0.6;

										&:hover {
											opacity: 1;
										}

										img {
											width: 1.25rem;
											height: 1.25rem;
											position: static;
											box-shadow: none;
										}
									}
								}
							}
						}

						textarea.form-control {
							min-height: 6rem;
							resize: vertical;
						}

						.submit_row {
							margin-top: 0;
						}
					}
				}

				.workflows_validations {
					width: 100%;
				}
			}
		}
	}
}
@layer components {
  @layer content {
    #wrapper > main {

      .integrations-intro {
        padding: 0.25rem 0 0.75rem;

        h2 {
          font-size: 1.5rem;
          font-weight: 600;
          color: var(--gray-999);
          margin-bottom: 0.375rem;
          line-height: 1.3;
        }

        p {
          font-size: 0.9rem;
          color: var(--gray-500);
          line-height: 1.65;
          max-width: 72ch;
          margin-bottom: 0;
        }
      }

      .partner--integrations {
        nav.sidebar {
          position: sticky;
          top: 0;
          align-self: flex-start;
          max-height: calc(100vh - var(--header-h) - 1rem);
          overflow-y: auto;
          padding: 1rem 0.875rem;
          border-left: 1px solid var(--gray-300);
          border-top: 1px solid var(--gray-300);
          border-bottom: 1px solid var(--gray-300);

          .nav-title {
            font-size: 0.625rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            color: var(--gray-500);
            margin: 0 0 0.5rem 0.375rem;
            padding: 0;
          }

          menu.ul {
            padding: 0;
            margin: 0;

            li {
              line-height: 1;
              margin-bottom: 1px;

              a {
                display: block;
                padding: 0.325rem 0.5rem;
                border-radius: 0.3rem;
                font-size: 0.775rem;
                line-height: 1.35;
                color: var(--gray-800);
                transition: background-color 0.1s ease, color 0.1s ease;

                &:hover {
                  background-color: #f3f0f7;
                  color: #3B1B4B;
                  text-decoration: none;
                }

                &.active {
                  background-color: #ede3f5;
                  color: #3B1B4B;
                  font-weight: 600;
                }
              }
            }
          }
        }

        .detail {
          min-width: 0;

          section,
          .api_key {
            background-color: var(--white);
            border-radius: 0.5rem;
            padding: 1.5rem;
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
            overflow-x: auto;
          }

          .api_key {
            .card {
              border: none;
              background: transparent;
              padding: 0;
            }
          }
        }

        .detail section h3,
        .detail .api_key h5 {
          font-size: 0.975rem;
          font-weight: 600;
          color: #3B1B4B;
          margin-bottom: 1rem;
          padding-bottom: 0.5rem;
          border-bottom: 2px solid #e8ddf0;
          line-height: 1.3;
        }

        .integration-section__body {
          p {
            display: flex;
            flex-wrap: wrap;
            align-items: baseline;
            gap: 0.35rem;
            margin-bottom: 0.5rem;
            line-height: 1.6;

            strong {
              font-size: 0.7rem;
              font-weight: 700;
              text-transform: uppercase;
              letter-spacing: 0.04em;
              color: #3B1B4B;
              background-color: #f4eff7;
              border: 1px solid #dfd0ea;
              padding: 0.1rem 0.4rem;
              border-radius: 0.25rem;
              white-space: nowrap;
            }
          }

          ul {
            list-style: disc;
            padding-left: 1.5rem;
            margin: 0.25rem 0 0.75rem;

            li {
              font-size: 0.875rem;
              line-height: 1.65;
              color: var(--gray-800);
            }
          }
        }

        table {
          width: 100%;
          border-collapse: separate;
          border-spacing: 0;
          border: 1px solid var(--gray-300);
          border-radius: 0.5rem;

          thead th {
            background-color: #f9f7fa;
            color: #3B1B4B;
            font-size: 0.7rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            padding: 0.65rem 1rem;
            border-bottom: 2px solid #dfd0ea;
          }

          tbody {
            tr {
              &:hover {
                background-color: #faf9fb;
              }

              &:last-child td {
                border-bottom: none;
              }
            }

            td {
              padding: 0.6rem 1rem;
              border-bottom: 1px solid var(--gray-200);
              font-size: 0.875rem;
              color: var(--gray-800);

              &:nth-child(2) {
                font-family: monospace;
                color: #3B1B4B;
                font-size: 0.8rem;
              }
            }
          }
        }

        figure {
          position: relative;
          margin: 0.75rem 0 0;

          pre {
            padding-right: 3.5rem;
            border-radius: 0.5rem;
            margin: 0;
          }

          .clipboard-copy-btn {
            position: absolute;
            top: 0.6rem;
            right: 0.6rem;
            background: transparent;
            border: none;
            border-radius: 0.3rem;
            padding: 0.25rem;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: background-color 0.12s ease;

            &:hover {
              background-color: rgba(255, 255, 255, 0.15);
            }

            img {
              display: block;
            }
          }

          figcaption {
            font-size: 0.8rem;
            color: var(--gray-500);
            margin-top: 0.5rem;
            font-style: italic;
          }
        }

        #api_key_clipboard_button {
          &.btn-outline-secondary {
            border-color: #dfd0ea;
            color: #3B1B4B;
            background: transparent;
            transition: all 0.15s ease;

            &:hover {
              background-color: #f4eff7;
              border-color: #c4a8d8;
              color: #3B1B4B;
            }
          }
        }

        textarea.form-control {
          font-size: 0.8rem;
          background-color: var(--gray-100);
          border-color: var(--gray-300);
          border-radius: 0.375rem;
          color: var(--gray-800);

          &:focus {
            border-color: #3B1B4B;
            box-shadow: 0 0 0 2px #f4eff7;
            outline: none;
          }
        }
      }
    }
  }
}

.partner--integrations #compare_submissions_data_differences_button {
  width: auto !important;
}
#information_requests_overview .btn-primary {
  background-color: var(--orange-600);
  border-color: var(--orange-600);
  color: white;
}

#information_requests_overview .btn-primary:hover {
  background-color: var(--orange-600);
  border-color: var(--orange-600);
  color: white;
}

#information_request {
  font-family: sans-serif;
  max-width: 1200px;
  margin: 0 auto;

  .card.section {
    background: #fff;
    border: 1px solid #e1e4e8;
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  }

  .blitz-badge-primary {
    color: #004085;
    background-color: #cce5ff;
    border-color: #b8daff;
  }

  .blitz-badge-warning {
    color: black;
    background-color: #F2976C;
    border-color: #F2976C;
  }

  .blitz-badge-secondary {
    color: #383d41;
    background-color: #e2e3e5;
    border-color: #d6d8db;
  }

  .chat {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 24px 0;
    padding: 10px;
    background: #fdfdfd;
    border-radius: 8px;
    overflow-y: auto;

    &::-webkit-scrollbar {
      width: 5px;
    }

    &::-webkit-scrollbar-thumb {
      background: #ccc;
      border-radius: 10px;
    }
  }

  .messages {
    display: flex;
    flex-direction: column;
    max-width: 80%;
  }

  .message {
    padding: 10px 16px;
    border-radius: 15px;
    font-size: 16px;
    line-height: 1.5;
    position: relative;
  }

  .mine {
    align-self: flex-end;
    align-items: flex-end;

    .message {
      background-color: #DDC3E9;
      color: black;
      border-bottom-right-radius: 2px;
    }
  }

  .yours {
    align-self: flex-start;
    align-items: flex-start;

    .message {
      background-color: #e9ecef;
      color: #212529;
      border-bottom-left-radius: 2px;
    }
  }

  .message-username {
    font-size: 12px;
    font-weight: 600;
    color: #6c757d;
    margin-top: 4px;
  }

  .message-time {
    font-size: 11px;
    color: #adb5bd;
    margin-top: 2px;
  }

  .message-image {
    max-width: 250px;
    border-radius: 8px;
    margin-top: 8px;
    display: block;
    border: 1px solid #dee2e6;
  }

  .message-input textarea {
    width: 100%;
    min-height: 80px;
    padding: 12px;
    border: 1px solid #ced4da;
    border-radius: 6px;
    resize: vertical;
  }

  .message-send-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: 12px;
    gap: 10px;
  }

  .message-file-input {
    flex: 1;

    label {
      font-size: 13px;
      font-weight: 600;
      display: block;
      margin-bottom: 4px;
    }
  }

  .message-submit .btn {
    padding: 8px 20px;
    font-weight: 500;
    background-color: #385F1E;
    border-color: #385F1E;
  }

  hr {
    border: 0;
    border-top: 1px solid #eee;
    margin: 20px 0;
  }
}
.esign_status_modal {
  padding: 2rem 1rem;
  font-size: 1em;
  min-width: 600px;
  display: none;
  position: fixed;
  top: 20%;
  left: 70%;
  transform: translate(-40%, 2.5em);
  border: 1px solid #DE5614;
  border-radius: 8px;
  z-index: 1001;
  background-color: white;
  margin: 0 auto;
  box-shadow: 0 4px 12px rgba(222, 86, 20, 0.3);

  .esign_edit_wrapper{
    text-align: center;
    margin-top: 1em;
  }

  .distribution_esign_table_wrapper {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #ddd;
  }

  .esign_row_label,
  .esign_row_data {
    padding: 0.5rem;
    border-bottom: 1px solid #ddd;
  }

  .esign_row_label {
    height: 2.5em;
    font-weight: bold;
    color: #333;
    width: 30%;
    display: inline-block;
    vertical-align: top;
    text-align: left;
  }

  .esign_row_data {
    height: 2.5em;
    width: 70%;
    display: inline-block;
    color: #555;
    vertical-align: top;
    text-align: right;
    overflow: auto;
  }

  .esign_status_modal > .esign_row_label,
  .esign_status_modal > .esign_row_data {
    margin-bottom: 3rem;
  }

  .esign_edit_button {
    background-color: #DE5614;
    color: white;
    padding: 8px 0px;
    width: 8rem;
    &:hover {
      background-color: #ff5f0f;
      transform: translateY(-1px);
    }
  }


  .esign_reminder_wrapper {
    position: relative;
    .esign_reminder_button {
      background-color: #C0CFBC;
      border: 1px solid #0E5F0F;
      color: #0E5F0F;
      white-space: nowrap;
      font-weight: bold;
      width: 55%;
      padding: 1px 0px;
      height: 100%;
      display: inline-block;
    }

    .esign_reminder_button:hover {
      background-color: transparent;
    }
  }
}


.license_is_being_verified {
  display: flex;
  justify-content: center;
  padding: 24px 16px;
}

.license_is_being_verified .card {
  width: 100%;
  max-width: 800px;
  background: #ffffff;
  border: 1px solid #e6e8ee;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(16, 24, 40, 0.08);
  overflow: hidden;
}

.license_is_being_verified .section_header {
  padding: 18px 20px 10px 20px;
  border-bottom: 1px solid #eef0f4;
}

.license_is_being_verified .section_header h5 {
  margin: 0;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 650;
  color: #101828;
  letter-spacing: 0.2px;
}

.license_is_being_verified .section_content {
  padding: 14px 20px 20px 20px;
  font-size: 18px;
  line-height: 1.6;
  color: #344054;
}

.license_is_being_verified .section_content a {
  color: #0b63f6;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid rgba(11, 99, 246, 0.35);
}

.license_is_being_verified .section_content a:hover,
.license_is_being_verified .section_content a:focus {
  color: #084ec2;
  border-bottom-color: rgba(8, 78, 194, 0.5);
  outline: none;
}

.license_is_being_verified .section_content a:focus-visible {
  outline: 3px solid rgba(11, 99, 246, 0.25);
  outline-offset: 3px;
  border-radius: 6px;
}

.api_key {
  .hidden {
    display: none;
  }
}

.welcome_new_producer {
  .btn.btn-primary {
    background-color: #5B1C69;
    border-color: #5B1C69;
    color: #fff;
  }

  .btn.btn-primary:hover {
    background-color: #45154f;
    border-color: #45154f;
  }
}


.btn-primary-action, .btn-secondary-outline {
  left: 5%;
  margin-left: 7px;
  margin-right: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 0.625rem;
  border-radius: 0.625rem;
  font-weight: 500;
  font-size: 1rem;
  transition: all 0.2s ease;
  text-decoration: none;
  gap: 0.5rem;

}

.btn-primary-action {
  background: #E35205;
  color: white;
  box-shadow: 0 4px 12px rgba(227, 82, 5, 0.2);
}

.btn-primary-action:hover {
  background: #ff5f0f;
  transform: translateY(-1px);
}

.btn-secondary-outline {
  background-color: #847090;
  color: rgba(255, 255, 255, 0.9);
}

.btn-secondary-outline:hover {
  transform: translateY(-1px);
  background-color: #white;
}

.btn-icon {
  width: 1.125rem;
  height: 1.125rem;
}
#application_content_wrapper.portal_content_wrapper {
		padding: 0;
		a#back {
			display: inline-flex;
			align-items: center;
			text-decoration: none;
			font-size: 16px;
			font-weight: 500;
			color: #3B1B4B;
			margin-bottom: 15px;
			transition: color 0.2s ease;

			img {
				width: 20px;
				height: 20px;
				margin-right: 8px;
				filter: invert(31%) sepia(13%) saturate(2251%) hue-rotate(256deg) brightness(91%) contrast(85%);
			}

			&:hover {
				color: #5b1c69;
				text-decoration: underline;

				img {
					transform: translateX(-3px);
					transition: transform 0.2s ease;
				}
			}
		}
	}

	#application_sidebar.sidebar {
      display: flex;
      align-items: center;
      padding: 10px 10px 0 10px;
      background-color: white;
      flex-shrink: 0;

      #applicationModules {
        display: flex;
        margin: 0;
        padding: 0;
        list-style: none;
        align-items: flex-end;
        flex-wrap: nowrap;
      }

			.nav-item {
				list-style: none;

				.nav-link {
					display: flex;
					align-items: center;
					padding: 1rem 0.8rem;
					text-decoration: none;
					font-family: inherit;
					font-size: 1rem;
					color: #3B1B4B;
					transition: background-color 0.1s ease;
					border-radius: 4px 4px 0 0;

					img, svg, i {
						margin-right: 6px;
						width: 1.2rem;
						height: 1.2rem;
					}

					&:hover {
						background-color: #f0f0f0;
					}

					&.selected {
						background-color: #3B1B4B;
						font-weight: 500;
						color: white;
					}
				}
			}
		}
.apply_documents_tab {
    .btn.btn-primary {
    background-color: #5B1C69;
    border-color: #5B1C69;
    color: #fff;
  }

  .btn.btn-primary:hover {
    background-color: #45154f;
    border-color: #45154f;
  }

  .section_title, .section_header h5 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #333;
    border-bottom: 2px solid #5B1C69;
    padding-bottom: 8px;
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .section_header {
    font-size: 0.85rem;
    font-weight: 800;
    color: #888;
    letter-spacing: 0.05rem;
    margin-top: 10px;
    margin-bottom: 5px;
  }

  .section_content, .section-content {
    font-size: 1.1rem;
		font-weight: 400;
    color: #444;
    margin-bottom: 10px;
  }

	.section {
    padding: 15px;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    margin-bottom: 0;
  }
}

.application-overview-page {
  .overview_table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border: none !important;

    tr, td {
      border: none !important;
      border-top: 0 !important;
      border-bottom: 0 !important;
      background-color: transparent !important;
    }

    .hover-row {
      transition: background-color 0.15s ease;

      &:hover td {
        background-color: #f8f9fa !important;
      }
    }

    td {
      padding: 12px 10px;
      vertical-align: top;
      word-wrap: break-word;
      overflow: hidden;
    }
  }
}

.application-overview-page {
  padding: 20px;

  .row.mt-4.mb-4 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .row .col-2 {
    display: flex;
    flex-direction: column;
  }

  .section.card {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 100%;
    margin-bottom: 0;
  }

  .card-text {
    margin-top: auto;
    padding-top: 10px;
  }

	.section {
    padding: 15px;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    margin-bottom: 0;
  }

  .card.d-block.section {
    width: 100%;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0;
  }

  .policy_banner {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border-radius: 4px;
    margin-bottom: 1rem;
    transition: background-color 0.3s ease;
  }

  .section_title, .section_header h5 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #333;
    border-bottom: 2px solid #5B1C69;
    padding-bottom: 8px;
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .section_header {
    font-size: 0.85rem;
    font-weight: 800;
    color: #888;
    letter-spacing: 0.05rem;
    margin-top: 10px;
    margin-bottom: 5px;
  }

  .section_content, .section-content {
    font-size: 1.1rem;
		font-weight: 400;
    color: #444;
    margin-bottom: 10px;
  }

  .status-open, .product-status-complete {
    color: #28a745;
    font-weight: bold;
  }

  .status-closed, .product-phase-bound {
    color: #d73a49;
    font-weight: bold;
  }

  .blitz-text-color-secondary {
    color: #666;
    font-size: 0.85rem;
  }

  .overview_table {
    width: 100%;
    margin-top: 10px;
  }

  .overview_table .header_row th {
    background-color: #f1f1f1;
    font-size: 0.7rem;
    padding: 8px;
    color: #555;
  }

  .overview_table td {
    padding: 12px 8px;
    vertical-align: middle;
    border-bottom: 1px solid #eee;
  }

  .btn.btn-primary {
    background-color: #5B1C69;
    border-color: #5B1C69;
    color: #fff;
  }

  .btn.btn-primary:hover {
    background-color: #45154f;
    border-color: #45154f;
  }

  .btn.disabled, .btn:disabled {
    background-color: #cccccc !important;
    border-color: #bbbbbb !important;
    color: #666666 !important;
    cursor: not-allowed;
  }

  .text-muted {
    color: #6c757d;
    font-size: 0.8rem;
  }

  .btn.absolute-zero {
    background-color: #5B1C69;
    color: white;
    border: none;
    padding: 8px 12px;
    font-size: 1rem;
		border-radius: 0px;
		font-weight: 400;
  }

  .btn.absolute-zero:hover {
    background-color: #45154f;
    color: #fff;
  }

  .continue_application_link {
    display: inline-block;
    background-color: #FF6315;
    color: white !important;
    padding: 10px 15px;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
    margin-top: 10px;
  }

  .continue_application_link:hover {
    background-color: #e55a13;
    text-decoration: none;
  }
}


#policy_sidebar.sidebar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 10px 0 10px;
  background-color: white;

  #applicationModules {
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: flex-end;
  }

  .nav-item {
    list-style: none;

    .nav-link {
      display: flex;
      align-items: center;
      padding: 12px 16px;
      text-decoration: none;
      font-family: inherit;
      font-size: 17px;
      color: #3B1B4B;
      transition: background-color 0.1s ease;
      border-radius: 4px 4px 0 0;

      img, svg, i {
        margin-right: 8px;
        font-size: 1.3rem;
      }

      &:hover {
        background-color: #f0f0f0;
      }

      &.selected {
        background-color: #3B1B4B;
        font-weight: 500;
        color: white;
      }
    }
  }
}

#portal_policy_container,
#portal_policy_overview_container {
  padding: 20px;
  background-color: #f4f4f4;
  min-height: 100vh;

  .card {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 0.85rem;
    margin-bottom: 25px;
    box-shadow: none;
    overflow: hidden;

    h5 {
      margin: 0;
      padding: 15px 20px;
      font-size: 1.1rem;
      font-weight: 700;
      color: #333;
      border-bottom: 2px solid #3B1B4B;
    }
  }

  .section_content {
    padding: 20px;

    .summary-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 15px;

      .summary-item {
        border: 1px solid #eee;
        padding: 15px;
        border-radius: 4px;

        label {
          display: block;
          text-transform: uppercase;
          font-size: 0.7rem;
          font-weight: 700;
          color: #666;
          margin-bottom: 5px;
        }
        span {
          font-size: 1rem;
          color: #333;
        }
      }
    }
  }

  .policy-table-wrapper {
    border-radius: 0.85rem;
    overflow: hidden;
    background-color: #fff;
    margin-bottom: 12px;
    box-shadow: 0 0 0 1px #e0e0e0;
  }

  .table,
  .policy-data-table {
    width: 100%;

    thead {
      background: #f8f8fb;
    }

    th,
    td {
      text-transform: uppercase;
      font-size: 0.75rem;
      color: #666;
      padding: 12px;
      text-align: left;
      border: 0 !important;
    }

    td {
      text-transform: none;
      font-size: 0.9rem;
      color: #1f2937;
    }
  }

  .policy-data-table {
    border-spacing: 0;
    border-collapse: separate;
  }

  .policy-table-wrapper tbody tr:not(:last-child) > * {
    box-shadow: inset 0 -1px 0 #f0f0f0;
  }

  .policy-table-wrapper tr > *:not(:last-child) {
    box-shadow: inset -1px 0 0 #e0e0e0;
  }

  #portal_policy_container .policy-table-wrapper tbody tr:last-child td,
  #portal_policy_overview_container .policy-table-wrapper tbody tr:last-child td {
    border-bottom: 0 !important;
  }

  #portal_policy_container .policy-table-wrapper thead tr:first-child th,
  #portal_policy_overview_container .policy-table-wrapper thead tr:first-child th {
    border-top: 0 !important;
  }

  #portal_policy_container .policy-table-wrapper tr > *:first-child,
  #portal_policy_overview_container .policy-table-wrapper tr > *:first-child {
      border-left: 0 !important;
  }

  #portal_policy_container .policy-table-wrapper tr > *:last-child,
  #portal_policy_overview_container .policy-table-wrapper tr > *:last-child {
      border-right: 0 !important;
  }

  .btn-primary {
    background-color: #5B1C69 !important;
    border: none !important;
    padding: 8px 16px;
    font-size: 0.85rem;
    border-radius: 4px;
    color: white;
    text-transform: none;
    font-weight: 500;

    &:hover {
      background-color: #3B1B4B !important;
      opacity: 0.9;
    }
  }

  .status-tag {
    color: #28a745;
    font-weight: 700;
  }
}




.ascend_policies_container {
  padding: 5px 30px 5px 30px;
  background-color: #f4f4f4;
  min-height: 100vh;

  .datagrid_wrapper {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
  }

  .display-6 {
    font-weight: 400;
  }

  .search_row {
    display: flex;
    align-items: flex-end;
    gap: 15px;
    margin-bottom: 20px;
    flex-wrap: wrap;

    .filter {
      flex-grow: 1;

      label.row_label {
        display: block;
        font-size: 0.75rem;
        font-weight: 700;
        text-transform: uppercase;
        color: #666666;
        margin-bottom: 8px;
      }

      .search_wrapper {
        position: relative;
        display: flex;
        align-items: center;

        .search_icon {
          position: absolute;
          left: 12px;
          width: 16px;
          height: 16px;
          opacity: 0.5;
        }

        .search_bar {
          width: 100%;
          padding: 10px 10px 10px 40px;
          border: 1px solid #e0e0e0;
          border-radius: 4px;
          font-size: 0.9rem;

          &:focus {
            outline: none;
            border-color: #3B1B4B;
            box-shadow: 0 0 0 2px rgba(122, 62, 125, 0.1);
          }
        }
      }
    }
  }

  .scope_row {
    display: flex;
    gap: 10px;
    margin-top: 10px;
    border-bottom: 1px solid #e0e0e0;
    width: 100%;
    padding-bottom: 15px;

    .scope_button_dynamic {
      background: transparent;
      border: 1px solid #e0e0e0;
      padding: 8px 16px;
      border-radius: 20px;
      font-size: 0.85rem;
      color: #666666;
      cursor: pointer;
      transition: all 0.2s;

      &:hover {
        background-color: #f8f9fa;
      }

      &.selected {
        background-color: #3B1B4B;
        border-color: #3B1B4B;
        color: #ffffff;
        font-weight: 500;
      }
    }
  }

  .table_wrapper {
    margin-top: 20px;

    .disclaimer_content {
      background-color: #fff9db;
      padding: 10px 15px;
      border-radius: 4px;
      margin-bottom: 15px;
      font-size: 0.85rem;
      color: #856404;
      border: 1px solid #ffeeba;
    }

    .table {
      width: 100%;
      border-collapse: collapse;

      thead th {
        background-color: #ffffff;
        border-bottom: 2px solid #3B1B4B;
        color: #666666;
        text-transform: uppercase;
        font-size: 0.75rem;
        letter-spacing: 0.05em;
        padding: 15px 12px;
      }

      tbody td {
        padding: 12px;
        font-size: 0.9rem;
        border-bottom: 1px solid #f0f0f0;
        vertical-align: middle;
      }

      &.table-striped tbody tr:nth-of-type(odd) {
        background-color: rgba(0, 0, 0, 0.02);
      }
    }
  }

  .pagination_wrapper {
    display: flex;
    justify-content: flex-end;
    padding: 15px 0;

    .pagination {
      display: flex;
      list-style: none;
      gap: 5px;

      a, span {
        padding: 6px 12px;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        text-decoration: none;
        color: #3B1B4B;
        font-size: 0.85rem;
      }

      .current {
        background-color: #3B1B4B;
        color: #ffffff;
        border-color: #3B1B4B;
      }
    }
  }

  .datagrid-submit {
    background-color: #5B1C69 !important;
    color: white !important;
    border: none;
    padding: 10px 20px;
    font-weight: 500;

    &:hover {
      opacity: 0.9;
    }
  }

  .datagrid-reset {
    color: #666666;
    text-decoration: none;
    font-size: 0.9rem;
    margin-left: 10px;

    &:hover {
      text-decoration: underline;
    }
  }
}

#portal_policy_container {
  .section_content {
    padding: 0px 20px 0px 20px;
  }
}

#portal_policy_overview_container {
  #policy_banner {
    margin-top: 0;
    margin-bottom: 0;

    .policy_banner {
      width: 100%;
      box-sizing: border-box;
      border-radius: 0;
    }
  }
}

#portal_policy_container {
  padding-top: 0;
}
.onboarding_landing_page {
  max-width: 1500px;
  margin: 0 auto;
  padding: 12px 1em 20px;
  box-sizing: border-box;
  font-family: inherit;
}

.onboarding_landing_page .header {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 14px;
  padding: 22px 22px 18px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}

.onboarding_landing_page .header h2 {
  margin: 0 0 10px;
  font-size: 2em;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

.onboarding_landing_page .header p {
  margin: 0;
  font-size: 1em;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.78);
}

.onboarding_landing_page .header b {
  font-weight: 650;
}

.onboarding_landing_page .header .textbox {
  margin-top: 10px;
  padding: 14px 14px;
  background: rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 12px;
  color: rgba(0, 0, 0, 0.78);
}

.onboarding_landing_page .header .textbox a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.onboarding_landing_page .header .textbox a:hover,
.onboarding_landing_page .header .textbox a:focus {
  opacity: 0.85;
}

.onboarding_landing_page .center {
  text-align: center;
  margin: 28px 0 16px;
}

.onboarding_landing_page .center img {
  display: inline-block;
  height: auto;
  max-width: 100%;
}

.onboarding_landing_page .center h2 {
  margin: 10px 0 0;
  font-size: 1.5em;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.onboarding_landing_page .steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3em;
  align-items: stretch;
  margin-top: 18px;
}

.onboarding_landing_page .step {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 14px;
  padding: 18px 18px 12px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 210px;
}

.onboarding_landing_page .step .text h2 {
  margin: 0 0 8px;
  font-size: 1.5em;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.onboarding_landing_page .step .text p {
  margin: 0;
  font-size: 0.9em;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.72);
}

.onboarding_landing_page .step br {
  display: none;
}

.onboarding_landing_page a.btn {
  width: 100%;
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 650;
  letter-spacing: 0.01em;
  text-transform: none;
  box-sizing: border-box;
}

.onboarding_landing_page .orange_button {
  background: #ff6a00;
  border-color: #ff6a00;
  color: #ffffff;
}

.onboarding_landing_page .orange_button:hover,
.onboarding_landing_page .orange_button:focus {
  background: #e85f00;
  border-color: #e85f00;
  color: #ffffff;
}

.onboarding_landing_page .orange_button:active {
  background: #d75700;
  border-color: #d75700;
  color: #ffffff;
}

.onboarding_landing_page .orange_button:focus-visible {
  outline: 3px solid rgba(255, 106, 0, 0.35);
  outline-offset: 2px;
}

.onboarding_landing_page_footer {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  text-align: center;
}

.onboarding_landing_page_footer p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.72);
}
.modal-backdrop {
  width: 200vw !important;
  height: 200vh !important;
}

.distribution_subproducers_page {
  padding: 1.5rem;

  table {
    margin: 0px;
    width: 100%;

    .email {
      word-break: break-all;
      overflow-wrap: break-word;
    }
  }

  .no_wrap {
    white-space: nowrap;
    display: flex;
    align-items: center;
  }

  .producer_edit_modal {
    .modal-dialog {
      max-width: 700px;
      margin: 1.75rem auto;
    }

    .modal-content {
      border-radius: 0.5rem;
      border: none;
      box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    }

    .modal-header {
      background-color: #f8f9fa;
      border-bottom: 1px solid #dee2e6;
      padding: 1rem 1.5rem;

      .modal-title {
        font-weight: 600;
        color: #212529;
      }
    }

    .modal-body {
      padding: 1.5rem;
      text-align: left;
      white-space: normal;

      form {
        .field_with_errors {
          color: #dc3545;
          input, select, textarea {
            border-color: #dc3545;
          }
        }
      }
    }

    .modal-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 1rem 1.5rem;
      background-color: #f8f9fa;
      border-top: 1px solid #dee2e6;

      .btn-block {
      }

      .col {
        flex: 1;
        margin-right: 1rem;
      }

      .btn-primary {
        min-width: 100px;
        margin-left: 2rem;
      }
    }
  }

#update_producer_modal_button {
  transition: all 0.2s ease-in-out;

  &:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
}


  .btn.btn-primary {
    background-color: #5B1C69;
    border-color: #5B1C69;
    color: #fff;
  }

  .btn.btn-primary:hover {
    background-color: #45154f;
    border-color: #45154f;
  }

  .datagrid_wrapper {
    .search_row {
      form {
        display: flex;
        align-items: flex-end;
        gap: 1rem;
        flex-wrap: wrap;
      }
    }
  }

  .filter.datagrid-filter {
    flex: 1;
    min-width: 400px;

    .row_label {
      font-size: 1.2em;
      display: block;
      margin-bottom: 0.5rem;
      font-weight: 600;
      color: #374151;
    }

    .search_wrapper {
      position: relative;
      display: flex;
      align-items: center;

      .search_icon {
        position: absolute;
        left: 0.75rem;
        width: 1rem;
        height: 1rem;
        pointer-events: none;
      }

      .search_bar {
        width: 100%;
        padding: 8px 0.75rem 8px 2.25rem;
        border: 2px solid #D1D5DB;
        border-radius: 6px;
        font-size: 14px;
        line-height: 1.5;
        outline: none;
        transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;

        &::-webkit-search-cancel-button,
        &::-webkit-search-decoration,
        &::-webkit-search-results-button,
        &::-webkit-search-results-decoration,
        &::-ms-clear {
          display: none !important;
        }

        &:focus {
          outline: none;
          border: 2px solid #5B1C69;
          box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
        }
      }
    }
  }

.datagrid-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-bottom: 2px;

    .datagrid-reset {
      color: #6b7280;
      text-decoration: none;
      font-size: 0.875rem;

      &:hover {
        color: #111827;
        text-decoration: underline;
      }
    }
  }

  .table_wrapper {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    overflow: hidden;

    .datagrid.table {
      width: 100%;
      margin-bottom: 0;

      thead th {
        background-color: #f9fafb;
        padding: 0.75rem 1rem;
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: #4b5563;
        border-bottom: 1px solid #e5e7eb;
      }

      tbody td {
        padding: 0.75rem 1rem;
        vertical-align: middle;
        border-bottom: 1px solid #f3f4f6;
      }
    }
  }

  .pagination_wrapper {
    display: flex;
    justify-content: flex-start;
    margin: 0.5rem 0 0 1rem;

    &.top {
      border-bottom: 1px solid #e5e7eb;
    }
  }
}

.renewal_ready_notice {
  margin: 1rem 2rem;
  padding: 0;
}

.renewal_ready_notice__card {
  background-color: #3B1B4B;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  width: 100%;
  color: #fff;
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 1rem;
}

.renewal_ready_notice__column {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.renewal_ready_notice__column.renewal_ready_notice__copy-column {
  align-items: center;
  text-align: center;
}

.renewal_ready_notice__icon {
  align-items: center;
}

.renewal_ready_notice__icon img {
  width: 52px;
  height: 52px;
}

.renewal_ready_notice__title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}

.renewal_ready_notice__copy {
  margin: 0;
  color: #fff;
  font-size: 0.95rem;
  line-height: 1.4;
  text-align: center;
}

.renewal_ready_notice__card strong {
  color: #fff;
}

@media (max-width: 768px) {
  .renewal_ready_notice__card {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .renewal_ready_notice__icon {
    align-items: center;
  }
}

#new_producer_modal {
  .modal-content {
    border-radius: 0.75rem;
    border: none;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  }

  .modal-header {
    border-bottom: 1px solid #f3f4f6;
    padding: 1.25rem 1.5rem;
  }

  .modal-body {
    padding: 1.5rem;
  }

  .modal-footer {
    background-color: #f9fafb;
    border-top: 1px solid #f3f4f6;
    padding: 1rem 1.5rem;
    border-bottom-right-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
  }
}
.distribution_producers_page {
  padding: 1.5rem;

  table {
    margin: 0px;
    width: 100%;

    .email {
      word-break: break-all;
      overflow-wrap: break-word;
    }
  }

  .no_wrap {
    white-space: nowrap;
    display: flex;
    align-items: center;
  }

  .producer_edit_modal {
    .modal-dialog {
      max-width: 700px;
      margin: 1.75rem auto;
    }

    .modal-content {
      border-radius: 0.5rem;
      border: none;
      box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    }

    .modal-header {
      background-color: #f8f9fa;
      border-bottom: 1px solid #dee2e6;
      padding: 1rem 1.5rem;

      .modal-title {
        font-weight: 600;
        color: #212529;
      }
    }

    .modal-body {
      padding: 1.5rem;
      text-align: left;
      white-space: normal;

      form {
        .field_with_errors {
          color: #dc3545;
          input, select, textarea {
            border-color: #dc3545;
          }
        }
      }
    }

    .modal-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 1rem 1.5rem;
      background-color: #f8f9fa;
      border-top: 1px solid #dee2e6;

      .btn-block {
      }

      .col {
        flex: 1;
        margin-right: 1rem;
      }

      .btn-primary {
        min-width: 100px;
        margin-left: 2rem;
      }
    }
  }

#update_producer_modal_button {
  transition: all 0.2s ease-in-out;

  &:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
}


  .btn.btn-primary {
    background-color: #5B1C69;
    border-color: #5B1C69;
    color: #fff;
  }

  .btn.btn-primary:hover {
    background-color: #45154f;
    border-color: #45154f;
  }

  .datagrid_wrapper {
    .search_row {
      form {
        display: flex;
        align-items: flex-end;
        gap: 1rem;
        flex-wrap: wrap;
      }
    }
  }

  .filter.datagrid-filter {
    flex: 1;
    min-width: 400px;

    .row_label {
      font-size: 1.2em;
      display: block;
      margin-bottom: 0.5rem;
      font-weight: 600;
      color: #374151;
    }

    .search_wrapper {
      position: relative;
      display: flex;
      align-items: center;

      .search_icon {
        position: absolute;
        left: 0.75rem;
        width: 1rem;
        height: 1rem;
        pointer-events: none;
      }

      .search_bar {
        width: 100%;
        padding: 8px 0.75rem 8px 2.25rem;
        border: 2px solid #D1D5DB;
        border-radius: 6px;
        font-size: 14px;
        line-height: 1.5;
        outline: none;
        transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;

        &::-webkit-search-cancel-button,
        &::-webkit-search-decoration,
        &::-webkit-search-results-button,
        &::-webkit-search-results-decoration,
        &::-ms-clear {
          display: none !important;
        }

        &:focus {
          outline: none;
          border: 2px solid #5B1C69;
          box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
        }
      }
    }
  }

  .datagrid-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-bottom: 2px;

    .datagrid-reset {
      color: #6b7280;
      text-decoration: none;
      font-size: 0.875rem;

      &:hover {
        color: #111827;
        text-decoration: underline;
      }
    }
  }

  .table_wrapper {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    overflow: hidden;

    .datagrid.table {
      width: 100%;
      margin-bottom: 0;

      thead th {
        background-color: #f9fafb;
        padding: 0.75rem 1rem;
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: #4b5563;
        border-bottom: 1px solid #e5e7eb;
      }

      tbody td {
        padding: 0.75rem 1rem;
        vertical-align: middle;
        border-bottom: 1px solid #f3f4f6;
      }
    }
  }

  .pagination_wrapper {
    display: flex;
    justify-content: flex-start;
    margin: 0.5rem 0 0 1rem;

    &.top {
      border-bottom: 1px solid #e5e7eb;
    }
  }
}

#new_producer_modal {
  .modal-content {
    border-radius: 0.75rem;
    border: none;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  }

  .modal-header {
    border-bottom: 1px solid #f3f4f6;
    padding: 1.25rem 1.5rem;
  }

  .modal-body {
    padding: 1.5rem;
  }

  .modal-footer {
    background-color: #f9fafb;
    border-top: 1px solid #f3f4f6;
    padding: 1rem 1.5rem;
    border-bottom-right-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
  }
}

.apply-start__helper-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #5B1C69;
  color: #fff;
  border: 1px solid #5B1C69;
  border-radius: 9999px;
  padding: 0.05rem 0.5rem;
  font-size: 0.7rem;
  line-height: 1.1;
  font-weight: 400;
  font-family: inherit;
  text-decoration: none;
  margin-left: 0.25rem;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  white-space: nowrap;
}

.apply-start__helper-btn:hover,
.apply-start__helper-btn:focus {
  background-color: #4a1556;
  color: #fff;
}

.apply-start__helper-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(91, 28, 105, 0.35);
}

.apply-start__digital-app-btn {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  font-size: 0.8rem;
  background-color: #f3f4f6;
  border-width: 0.125rem;
  border-style: solid;
  border-color: transparent;

  &:hover,
  &:focus,
  &:active {
      border-style: solid;
      border-color: #3B1B4B;
      box-shadow: 0 0 0 0.125rem rgba(122, 62, 125, 0.1);
  }

  .copy_icon, .checkmark_icon {
    padding: 0;
    margin-right: 0.4rem;
    position: relative;
    width: 1.25rem;
    top: -0.0625rem;
    filter: brightness(0) saturate(100%) invert(48%) sepia(0%) saturate(1682%) hue-rotate(140deg) brightness(103%) contrast(87%);

    img {
      width: 80%;
      height: auto;
    }
  }
}

.apply-start__field-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}

.apply-start__field-header .apply-start__digital-app-btn {
  padding: 0.15rem 0.75rem;
}

.apply-start__field-header .apply-start__field-title {
  margin-bottom: 0;
}

.apply-start__field-title {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-weight: 600;
  font-size: 0.95rem;
  color: #111827;
  margin-bottom: 0.35rem;
}

.apply-start__tooltip-icon {
    width: 70%;
    height: auto;
}

.apply-start__field-title .apply-start__tooltip-trigger {
  cursor: pointer;
}

.apply-start__helper-text {
    font-size: 0.8rem;
    padding-left: 0.25rem;
    margin-top: 0.5rem;
}

.apply-start__field-group .form-control {
    margin-bottom: 0.25rem;
}

#program_state_modal {
  border: none;
  border-radius: 0.85rem;
  padding: 0;
  width: min(640px, 90vw);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
  font-size: 0.9rem;

  header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background-color: #f9f7fb;
  }

  header {
    border-bottom: 1px solid #e5e7eb;
  }

  header button {
    border: none;
    background: transparent;
    font-size: 1.5rem;
    font-weight: 500;
    padding: 0.1rem 0.35rem;
    cursor: pointer;
  }
}

#apply_index_container.sidebar-detail {
  border-radius: 0.825rem;
}

.sidebar-detail .detail.apply-start__summary-pane,
.sidebar-detail .sidebar + .detail.apply-start__summary-pane{
  background-color: var(--white);
  border-top-right-radius: 0.825rem;
  border-bottom-right-radius: 0.825rem;
  border-top: none;
  border-right: none;
  border-bottom: none;

  .apply-start__summary-card {
    border-top-right-radius: inherit;
    border-bottom-right-radius: inherit;
  }

  h3 {
    font-weight: 600;
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.4;

    &.apply-start__summary-placeholder {
      font-size: 2rem;
      font-weight: 350;
      color: #6b7280;
      padding-top: 5rem;
      text-align: center;
      margin: 4rem auto;
    }
  }

  a {
    text-align: center;
    font-size: 120%;
    display: block;

    &.apply-start__flyer-link {
      align-self: center;
      background-color: #5B1C69;
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.35rem 1.25rem;
      font-size: 1rem;
      font-weight: 600;
      text-decoration: none;
      box-shadow: 0 4px 12px rgba(91, 28, 105, 0.2);
      transition: background-color 0.2s ease, box-shadow 0.2s ease;

      &:hover,
      &:focus {
        background-color: #4a1556;
        color: #fff;
      }

      &:focus-visible {
        outline: none;
        box-shadow: 0 0 0 3px rgba(91, 28, 105, 0.35);
      }
    }
  }
}

.apply-start__summary-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
  flex-wrap: nowrap;
}

.apply-start__summary-header .apply-start__summary-title {
  margin: 0;
  flex: 1 1 auto;
  text-align: left;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
}

.apply-start__summary-header .apply-start__flyer-link {
  margin-left: auto;
  align-self: center;
  flex-shrink: 0;
}
#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 25rem;
  padding: 8px 35px 8px 40px;
  font-size: 14px;
  border: 2px solid #D1D5DB;
  border-radius: 6px;
  outline: none;
  transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
}

#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter::-webkit-search-cancel-button,
#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter::-webkit-search-decoration,
#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter::-webkit-search-results-button,
#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter::-webkit-search-results-decoration,
#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter::-ms-clear {
  display: none !important;
}

#new_broker_applications_grid_v2_broker_applications_grid_v2 .search_bar.string_filter:focus {
  border: 2px solid #5B1C69;
  box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
  padding: 8px 35px 8px 40px;
}

#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter,
#portal_renewals_container .search_bar.string_filter {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 25rem;
  padding: 8px 35px 8px 40px;
  font-size: 14px;
  border: 2px solid #D1D5DB;
  border-radius: 6px;
  outline: none;
  transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
}

#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter::-webkit-search-cancel-button,
#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter::-webkit-search-decoration,
#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter::-webkit-search-results-button,
#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter::-webkit-search-results-decoration,
#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter::-ms-clear,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter::-webkit-search-cancel-button,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter::-webkit-search-decoration,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter::-webkit-search-results-button,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter::-webkit-search-results-decoration,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter::-ms-clear,
#portal_renewals_container .search_bar.string_filter::-webkit-search-cancel-button,
#portal_renewals_container .search_bar.string_filter::-webkit-search-decoration,
#portal_renewals_container .search_bar.string_filter::-webkit-search-results-button,
#portal_renewals_container .search_bar.string_filter::-webkit-search-results-decoration,
#portal_renewals_container .search_bar.string_filter::-ms-clear {
  display: none !important;
}

#new_policies_grid_v2_policies_grid_v2 .search_bar.string_filter:focus,
#new_endorsement_policies_grid_v2_endorsement_policies_grid_v2 .search_bar.string_filter:focus,
#portal_renewals_container .search_bar.string_filter:focus {
  border: 2px solid #5B1C69;
  box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
  padding: 8px 35px 8px 40px;
}

#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 25rem;
  padding: 8px 35px 8px 40px;
  font-size: 14px;
  border: 2px solid #D1D5DB;
  border-radius: 6px;
  outline: none;
  transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
}

#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter::-webkit-search-cancel-button,
#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter::-webkit-search-decoration,
#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter::-webkit-search-results-button,
#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter::-webkit-search-results-decoration,
#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter::-ms-clear {
  display: none !important;
}

#new_endorsements_grid_v2_endorsements_grid_v2 .search_bar.string_filter:focus {
  border: 2px solid #5B1C69;
  box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
  padding: 8px 35px 8px 40px;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 {
  display: flex;
  justify-content: center;
}

main > section.portal_endorsement_start_v2 {
  background: transparent;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement_start_cards {
  width: min(100%, 780px);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card {
  background: var(--white);
  border: 1px solid var(--gray-300);
  border-radius: 0.75rem;
  padding: 0.2rem 1rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .hidden {
  display: none !important;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-policy-info {
  padding: 0.5rem 0 0.5rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card--form {
  padding-top: 1rem;
  min-width: 28rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-row-pair {
  display: flex;
  align-items: flex-start;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-entry {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-separator {
  width: 0.0625rem;
  background: var(--gray-300);
  align-self: stretch;
  margin: 0 1.25rem;
  flex-shrink: 0;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-entry dt {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--gray-500);
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .policy-info-entry dd {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--gray-999);
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card__field {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.85rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card__field:last-of-type {
  margin-bottom: 1rem;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card__field .form-label {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gray-999);
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card__field .form-control {
  margin-top: 0.25rem;
  padding: 0.45rem 0.65rem;
  font-size: 0.875rem;
  line-height: 1.4;
  border-radius: 0.5rem;
  border: 1px solid var(--gray-300);
  color: var(--gray-999);
  outline: none;
  box-shadow: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, border-width 0.15s ease;
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 .endorsement-card__field .form-control:focus {
  outline: none;
  border: 1px solid #3B1B4B;
  box-shadow: 0 0 0 2px rgba(139, 107, 155, 1);
}

#partners_application_new_endorsement_container.portal_endorsement_start_v2 textarea.form-control {
  min-height: 6.25rem;
  line-height: 1.4;
}
#portal_policies_container,
#portal_policy_overview_container,
#portal_renewals_container {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin: 0 2rem;


  .policies-page-title {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--gray-999);
  }

  .search_row {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    width: 100%;
  }

  .table_wrapper,
  .policy-table-wrapper {
    background: var(--white);
    border: 1px solid var(--gray-300);
    border-radius: 0.85rem;
    overflow: hidden;
  }

  table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin: 0;
  }

  .policies-table,
  #portal_policy_overview_container .policy-data-table {
    border: none;
    table-layout: fixed;
    thead th {
      background-color: #f3f4f6;
      border-bottom: 1px solid #e5e7eb;
      font-size: 0.9rem;
      letter-spacing: normal;
      text-transform: none;
      font-weight: 600;
      color: #4b5563;
      padding: 1rem 1.5rem;
    }

    .policies-table__header-content {
      display: inline-flex;
      align-items: center;
      gap: 0.25rem;
    }

    .policies-table__header-content .order {
      margin-left: 0;
    }

    tbody td {
      border-bottom: 1px solid #f3f4f6;
    }

    th,
    td {
      border-left: none;
      border-right: none;
    }

    td {
      padding: 1.25rem 1.5rem;
      font-size: 0.9rem;
      line-height: 1.6;
      color: #1f2937;
      vertical-align: middle;
      word-break: break-word;
      overflow-wrap: anywhere;
    }

    tbody tr:last-child td {
      border-bottom: none;
    }

    tr:hover td {
      background-color: #f7f7f8 !important;
    }

    .policies-table-row {
      cursor: pointer;
      transition: background-color 0.2s ease;
    }

    .policies-table-cell__link {
      display: flex;
      align-items: center;
      gap: 0.25rem;
      width: 100%;
      color: inherit;
      text-decoration: none;
    }

    .policies-table-cell__link:focus-visible {
      outline: 2px solid var(--eggplant-300);
      outline-offset: 2px;
      border-radius: 0.25rem;
    }

    .policies-table-cell__link span {
      width: 100%;
    }

    .renewals-table thead th,
    .renewals-table tbody td {
      width: 20%;
    }

  }

  #renewal-info-requested-badge {
    padding: 0.25rem 0rem !important;
  }

  .action_required a {
    color: #E35205;
    text-decoration: none;
  }

  .action_required a:hover {
    color: #b54204;
    cursor: pointer;
    text-decoration: underline;
  }
}
#portal_endorsements_container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin: 0 2rem;

    .endorsements-page-header {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 1rem;
        margin-bottom: 0.5rem;
    }

    .endorsements-page-title {
        margin: 0;
        font-size: 1.5rem;
        font-weight: 600;
        color: var(--gray-999);
    }

    .endorsements-top-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;

        form {
            margin: 0;

            .search_row {
                width: auto;
            }
        }
    }

    .section_header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
    }

    .section_header__title {
        font-size: 1.25rem;
        font-weight: 600;
        color: var(--gray-900, #111827);
    }

    .search_row {
        display: flex;
        align-items: flex-end;
        justify-content: flex-start;
        width: 100%;
    }

    .table_wrapper {
        background: var(--white);
        border: 1px solid var(--gray-300);
        border-radius: 0.85rem;
        overflow: hidden;
    }

    table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
        margin: 0;
    }

    .endorsements-table {
        border: none;
        table-layout: fixed;
        thead th {
            background-color: #f3f4f6;
            border-bottom: 1px solid #e5e7eb;
            font-size: 0.9rem;
            letter-spacing: normal;
            text-transform: none;
            font-weight: 600;
            color: #4b5563;
            padding: 1rem 1.5rem;
            text-align: left;
        }

        thead th,
        tbody td {
            width: 20%;
        }

        .endorsement-table__header-content {
            display: inline-flex;
            align-items: center;
            gap: 0.25rem;
        }

        .endorsement-table__header-content .order {
            margin-left: 0;
            position: static;
            top: auto;
            right: auto;
            transform: none;
        }

        tbody td {
            border-bottom: 1px solid #f3f4f6;
        }

        th,
        td {
            border-left: none;
            border-right: none;
        }

        td {
            padding: 1.25rem 1.5rem;
            font-size: 0.9rem;
            line-height: 1.6;
            color: #1f2937;
            vertical-align: middle;
            word-break: break-word;
            overflow-wrap: anywhere;
        }

        tbody tr:last-child td {
            border-bottom: none;
        }

        tr:hover td {
            background-color: #f7f7f8 !important;
        }

        .endorsements-table-row {
            cursor: pointer;
            transition: background-color 0.2s ease;
        }

        .endorsements-table-row--ineligible td {
            opacity: 0.55;
        }

        .endorsements-table-row--ineligible td .badge.blitz-badge-ineligible {
            opacity: 1;
        }

        .endorsements-table-row--ineligible {
            cursor: not-allowed;
        }

        .endorsements-table-row--ineligible td > div,
        .endorsements-table-row--ineligible td > span:not(.badge) {
            pointer-events: none;
        }

        .endorsements-table-cell__link {
            display: flex;
            align-items: center;
            gap: 0.25rem;
            width: 100%;
            color: inherit;
            text-decoration: none;
        }

        .endorsements-table-cell__link:focus-visible {
            outline: 2px solid var(--eggplant-300);
            outline-offset: 2px;
            border-radius: 0.25rem;
        }

        .endorsements-table-cell__link span {
            width: 100%;
        }
    }
}
@layer components {
  @layer content {
    #wrapper > main {
      #appetite_checker_v2 {
        .try_again_button {
          --bg-color: #3B1B4B;
          background-color: var(--bg-color);
          color: white;
          border: none;

          &:hover {
            background-color: color-mix(in srgb, var(--bg-color) 90%, black);
          }
        }
        .submit_risk_button {
          --bg-color: #E35205;
          background-color: var(--bg-color);
          color: white;
          border: none;

          &:hover {
            background-color: color-mix(in srgb, var(--bg-color) 90%, black);
          }
        }

        #appetite_check_complete {
          .btn-group .appetite-tab-btn {
            font-size: 1.25rem;
            border: 1px #e0e0e0 solid !important;
            background-color: #3B1B4B;
            color: #fff !important;

            &:not(:last-child) {
              margin-right: 0.5rem;
            }

            &:focus,
            &:focus-visible {
              outline: none;
              box-shadow: none !important;
            }
          }

          .btn-group .appetite-tab-btn:not(.btn-light):hover,
          .btn-group .appetite-tab-btn.btn-secondary:hover {
            background-color: #e0e0e0 !important;
            color: #000 !important;
            border-color: #e0e0e0 !important;
          }

          .btn-group .appetite-tab-btn.btn-secondary {
            background-color: #3B1B4B;
            color: #fff !important;
            border-color: transparent !important;
          }

          .btn-group .appetite-tab-btn.btn-light {
            background-color: #e0e0e0;
            color: #000 !important;
          }
        }
      }

      .appetite-checker {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        padding: 1.5rem;
        margin: 1rem;
      }

      .appetite-checker__logo {
        display: flex;
        justify-content: center;
      }

      .appetite-checker > header {
        display: flex;
        flex-direction: column;
        max-width: 60rem;
        margin: 0 auto;
        text-align: center;
      }

      .appetite-checker > header p {
        margin: 0;
        text-align: center;
        font-size: 1.25rem;
        color: black;
      }

      .appetite-checker > header p.subtitle {
          margin: 0;
          text-align: center;
          font-size: 1rem;
          color: grey;
      }

      .appetite-checker__eyebrow {
        font-weight: 600;
        font-size: 2rem;
        color: #3B1B4B;
        text-align: center;
      }

      .appetite-checker__grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 1.5rem;
        align-items: flex-start;
      }

      @media (max-width: 1200px) {
        .appetite-checker__grid {
          grid-template-columns: 1fr;
        }
      }

      .appetite-checker article {
        background-color: var(--white);
        border: 1px solid var(--gray-300);
        border-radius: 1rem;
        padding: 1rem;
        box-shadow: 0 20px 40px rgba(16, 16, 16, 0.03);
        display: flex;
        flex-direction: column;
        gap: 1rem;
      }

      .appetite-checker__tooltip {
        border: none;
        background: transparent;
        padding: 0.125rem;
        cursor: pointer;
      }

      .appetite-checker form {
        display: flex;
        flex-direction: column;
        gap: 1rem;
      }

      .appetite-checker fieldset {
        border: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
      }

      .appetite-checker label {
        font-weight: 600;
        font-size: 1.5rem;
        line-height: 1.5rem;
        padding-bottom: 0.33rem;
        color: #3B1B4B;
      }

      .appetite-checker .form-control {
        border-radius: 0.75rem;
        border: 1px solid var(--gray-300);
        background: var(--gray-100);
      }

      .appetite-checker .form-control:focus {
        border-color: var(--eggplant-300);
        box-shadow: 0 0 0 3px rgba(66, 26, 72, 0.15);
      }

      .appetite-checker textarea {
        resize: vertical;
      }

      .appetite-checker__actions {
        margin-top: 0.5rem;
      }

      .appetite-checker__submit {
        background-color: var(--eggplant-600);
        border-color: var(--eggplant-600);
        font-weight: 600;
      }

      .appetite-checker__submit:hover {
        background-color: #2d0134;
        border-color: #2d0134;
      }

      .appetite-checker footer p {
        font-size: 0.875rem;
        color: var(--gray-500);
        margin: 1rem 0 0;
      }

      .appetite-checker__grid aside {
        align-self: stretch;
        display: flex;
      }

      .appetite-checker__guides-card {
        border: 1px solid var(--gray-200);
        border-radius: 1rem;
        background: var(--gray-150);
        display: flex;
        flex-direction: column;
        padding: 1rem;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3);
        flex: 1;
      }

      .appetite-checker__guides-card header {
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0;
      }

      .appetite-checker__guides-card h3 {
        font-weight: 600;
        font-size: 1.5rem;
        line-height: 1.5rem;
        padding-bottom: 0.33rem;
        color: #3B1B4B;
      }

      .appetite-checker__guides-card p {
        margin: 0;
        color: black;
        font-weight: 500;
      }
      .appetite-checker__guides-card a:hover p {
          color: white;
      }

      .appetite-checker__guides-card ul {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 0.4rem;
      }

      .appetite-checker__guides-card li {
        display: flex;
        width: 100%;
      }

      .appetite-checker__guides-card li a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0.1rem 0.1rem 0.1rem 1rem;
        border: 1px solid var(--gray-200);
        border-radius: 0.75rem;
        color: inherit;
        background: var(--white);
        font-weight: 600;
        transition: transform 0.15s ease, border-color 0.15s ease;
        width: 100%;
      }

      .appetite-checker__guides-card li a:hover {
        transform: translateY(-1px);
        background-color: #E35205;
      }

      .appetite-checker__guides-card li span {
        font-size: 0.875rem;
        color: #E35205;
      }

      .appetite-checker__guides-card li strong {
        font-size: 1rem;
      }

      .appetite-checker__cta {
        margin-top: 0.5rem;
        display: flex;
        justify-content: center;
      }
    }
  }
}
.customer {
  .program_summary_card {
    padding: 1rem;
    margin-top: 1.5rem;
  }

  .apply-start__summary-placeholder {
    font-size: 2rem;
    font-weight: 350;
    color: #6b7280;
    padding-top: 5rem;
    text-align: center;
    margin: 4rem auto;
  }

  ul {
    list-style: disc;
  }

  apply-start__summary-title {
    h3 {
      margin: 0;
      flex: 1 1 auto;
      text-align: left;
      font-weight: 600;
      font-size: 1rem;
      line-height: 1.4;
    }
  }

  header {
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
  }

  .apply-start__flyer-link {
    align-self: center;
    background-color: #5B1C69;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 1.25rem;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(91, 28, 105, 0.2);
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
  }

  .left_side {
    flex: 1;
  }

  .right_side {
    flex: 1;
  }

  .apply-start__summary-card {
    border-top-right-radius: inherit;
    border-bottom-right-radius: inherit;
  }

  h3 {
    font-weight: 600;
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.4;

    &.apply-start__summary-placeholder {
      font-size: 2rem;
      font-weight: 350;
      color: #6b7280;
      padding-top: 5rem;
      text-align: center;
      margin: 4rem auto;
    }
  }
}
@layer components {
	@layer content {
		#wrapper > main {
			.resource-center-frame {
				flex: 1 1 auto;
				width: 100%;
				min-height: calc(100vh - var(--header-h) - 2rem);
				border: 0;
			}
		}
	}
}
#bell_notifications_grid,
#service_requests_grid {
  background: #ffffff;
  border: 1px solid #e1e4e8;
  border-radius: 8px;
  padding: 24px;
  margin-bottom: 32px;

  .status {
    width: revert;
  }

  .search_row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 20px;
    align-items: flex-end;

    form {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: flex-end;
      width: 100%;
    }
  }

  .datagrid-filter {
    display: flex;
    flex-direction: column;
    gap: 18px;

    .row_label {
      font-weight: 700;
      font-size: 1.5rem;
    }

    .search_wrapper {
      position: relative;
      display: flex;
      align-items: center;
      max-width: 400px;

      .search_icon {
        position: absolute;
        left: 12px;
        width: 14px;
        opacity: 0.5;
      }

      .search_bar {
        width: 100%;
        padding: 10px 12px 10px 38px;
        border: 1px solid #d1d5db;
        border-radius: 6px;

        &:focus {
          outline: none;
          border-color: #3B1B4B;
          box-shadow: 0 0 0 1px #3B1B4B;
        }
      }
    }
  }

  .datagrid-submit.btn-outline-primary {
    color: #3B1B4B;
    border-color: #3B1B4B;
    background: transparent;
    height: 50px;

    &:hover {
      background-color: #3B1B4B;
      color: #ffffff;
    }
  }

  .scope_row {
    display: flex;
    gap: 10px;

    .scope_button {
      padding: 8px 20px;
      border-radius: 25px;
      border: 1px solid #e2e8f0;
      background: #fdfbff;
      color: #3B1B4B;
      font-weight: 600;
      transition: all 0.2s ease;

      &.selected {
        background: #3B1B4B;
        color: #ffffff;
        border-color: #3B1B4B;
      }

      &:hover:not(.selected) {
        background: #f3f0f7;
        border-color: #3B1B4B;
      }
    }
  }

  .table_wrapper {
    margin-top: 25px;

    .datagrid.table {
      width: 100%;
      border-collapse: collapse;

      th {
        background: #f9f7fa;
        color: #3B1B4B;
        font-size: 13px;
        text-transform: uppercase;
        padding: 15px;
        border-bottom: 2px solid #3B1B4B;

        .order img {
          width: 12px;
          filter: brightness(0) saturate(100%) invert(11%) sepia(37%) saturate(3660%) hue-rotate(253deg) brightness(91%) contrast(100%);
        }
      }

      td {
        padding: 15px;
        border-bottom: 1px solid #eee;

        a {
          color: #3B1B4B;
          text-decoration: none;
          font-weight: 600;

          &:hover {
            text-decoration: underline;
          }
        }
      }
    }
  }

  .badge {
    &.blitz-badge-primary {
      background: #3B1B4B;
      color: #ffffff;
      border-color: #3B1B4B;
    }

    &.blitz-badge-warning {
      background: #f4eff7;
      border: 1px solid #3B1B4B;
      color: #3B1B4B;
    }
  }

  .datagrid-reset {
    color: #666;
    text-decoration: none;
    font-size: 14px;

    &:hover {
      color: #3B1B4B;
      text-decoration: underline;
    }
  }
}
.invoice_page {
  margin-top: -1rem;

  h2 {
    font-size: 2.5rem;
    margin-bottom: -1rem;
    font-weight: 400;
  }

  .table.table-striped {
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 2.5rem;
  }

  .table.table-striped td,
  .table.table-striped th {
    border-left: none;
    border-right: none;
    border-top: 1px solid #dee2e6;
    padding: 12px 15px;
    vertical-align: middle;
  }

  .table.table-striped thead th {
    background-color: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
    color: #3B1B4B;
  }

  .table-striped tbody tr:nth-of-type(odd) {
    background-color: #ffffff;
  }

  .table-striped tbody tr:nth-of-type(even) {
    background-color: #f2f2f2;
  }

  #invoice_email_message_modal_button,
  #payment_reminder_email_message_modal_button,
  .btn-orange-download {
    background-color: #DE5614 !important;
    border-color: #DE5614 !important;
    color: #ffffff !important;
    padding: 4px 12px !important;
    font-size: 0.8rem !important;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    border-radius: 4px;
    transition: opacity 0.2s ease;
  }

  #invoice_email_message_modal_button:hover,
  #payment_reminder_email_message_modal_button:hover,
  .btn-orange-download:hover {
    opacity: 0.85;
    color: #ffffff !important;
  }

  .modal-body iframe {
    border: none;
    border-radius: 8px;
  }

  #invoice_email_message_modal_button,
  #payment_reminder_email_message_modal_button {
    margin-right: 8px;
  }

  #invoice_email_message_modal_button:last-child,
  #payment_reminder_email_message_modal_button:last-child {
    margin-right: 0;
  }
}
.distribution_ascend_container .back_button_row_link {
  color: #3B1B4B;
  font-size: 1.5rem;
  font-weight: 700;
  text-decoration: none;
}

#back {
  color: #3B1B4B;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
}

#back img {
  width: 18px;
  height: 18px;
}

.section_content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 20px;
}

.section_content .btn-primary,
.mt-3 .btn-primary {
  background-color: #DE5614 !important;
  border-color: #DE5614 !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 8px 16px;
  border-radius: 4px;
  transition: opacity 0.2s ease;
}

.section_content .btn-secondary {
  background-color: #3B1B4B !important;
  border-color: #3B1B4B !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 8px 16px;
  border-radius: 4px;
}

.section_content .btn:hover,
.mt-3 .btn-primary:hover {
  opacity: 0.85;
}

.copy_customer_portal_link {
  margin-top: -3rem;
}

#ascend_portal_link_button,
#copy_ascend_customer_portal_link_button {
  --bg-color: #DE5614;
  background-color: var(--bg-color) !important;
  border: 2px solid var(--bg-color) !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 8px 16px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  width: fit-content;
}

#ascend_portal_link_button:hover,
#copy_ascend_customer_portal_link_button:hover {
  background-color: color-mix(in srgb, var(--bg-color) 90%, black) !important;
  border-color: color-mix(in srgb, var(--bg-color) 90%, black) !important;
  text-decoration: none;
}

.hidden {
  display: none !important;
}

.ascend_policies .h4 {
  font-size: 2.25rem;
  color: #3B1B4B;
  font-weight: 700;
  margin-bottom: 1.5rem;
}

.ascend_policies .search_row {
  display: flex;
  align-items: flex-end;
  gap: 15px;
  margin-bottom: 20px;
}

.ascend_policies .search_wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.ascend_policies .search_icon {
  position: absolute;
  left: 10px;
  width: 16px;
  height: 16px;
}

.ascend_policies .search_bar {
  padding: 8px 12px 8px 35px;
  border: 1px solid #dee2e6;
  border-radius: 6px;
  width: 350px;
}

.ascend_policies .datagrid-submit {
  background-color: #DE5614 !important;
  border-color: #DE5614 !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 8px 20px;
}

.ascend_policies .datagrid-reset {
  color: #3B1B4B;
  text-decoration: underline;
  font-weight: 600;
  margin-left: 10px;
  line-height: 2.5;
}

.ascend_policies .scope_button_dynamic {
  background-color: #ffffff;
  border: 1px solid #dee2e6;
  color: #3B1B4B;
  padding: 6px 18px;
  border-radius: 20px;
  font-weight: 500;
  transition: all 0.2s ease;
}

.ascend_policies .scope_button_dynamic.selected {
  background-color: #3B1B4B !important;
  border-color: #3B1B4B !important;
  color: #ffffff !important;
}

.ascend_policies .scope_button_dynamic:hover:not(.selected) {
  border-color: #DE5614;
  color: #DE5614;
}

.ascend_policies .disclaimer_content {
  background-color: #f8f9fa;
  border-left: 4px solid #DE5614;
  padding: 12px;
  margin-bottom: 20px;
  color: #3B1B4B;
}

.ascend_policies .table.table-striped {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #dee2e6;
  border-radius: 12px;
  overflow: hidden;
}

.ascend_policies .table.table-striped thead th {
  background-color: #f8f9fa;
  color: #3B1B4B;
  border-bottom: 2px solid #dee2e6;
  padding: 15px;
  font-weight: 600;
}

.ascend_policies .pagination .page-item.active .page-link {
  background-color: #3B1B4B;
  border-color: #3B1B4B;
}

.ascend_policies .pagination .page-link {
  color: #3B1B4B;
}

.ascend_account_details .display-6 {
  color: #3B1B4B;
  font-weight: 600;
  margin-bottom: -2rem;
}

.ascend_account_details .card.section {
  border: 1px solid #dee2e6;
  border-top: 5px solid #3B1B4B;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

.ascend_account_details .card-body {
  padding: 2.5rem;
}

.ascend_account_details strong {
  color: #3B1B4B;
  font-weight: 600;
}

.ascend_account_details .badge.bg-success {
  background-color: #28a745 !important;
  font-weight: 500;
  padding: 6px 12px;
}

.ascend_account_details .badge.bg-danger {
  background-color: #dc3545 !important;
  font-weight: 500;
  padding: 6px 12px;
}

.ascend_account_details .alert-danger {
  background-color: white;
  border-color: #f5c6cb;
  color: #721c24;
  border-radius: 8px;
  padding: 1.5rem;
  margin-top: 1rem;
}

.ascend_account_details .alert-info {
  background-color: #f0f7ff;
  border-color: #bee5eb;
  color: #0c5460;
  border-radius: 8px;
  padding: 1.5rem;
  margin-top: 1rem;
}

.ascend_account_details .alert .btn-danger,
.ascend_account_details .alert .btn-primary {
  background-color: #DE5614 !important;
  border-color: #DE5614 !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 4px 12px;
  font-size: 0.85rem;
  margin-left: 5px;
  border-radius: 4px;
  transition: opacity 0.2s ease;
}

.ascend_account_details .alert .btn:hover {
  opacity: 0.9;
  color: #ffffff !important;
}

.ascend_account_details a {
  color: #DE5614;
  text-decoration: none;
  font-weight: 500;
}

.ascend_account_details a:hover {
  text-decoration: underline;
}

.ascend_account_details .ascend-details-table {
  margin-top: 0;
  margin-bottom: 0;
}

.ascend_account_details .ascend-details-table td {
  padding: 0.75rem 1rem;
  vertical-align: middle;
  border: none;
}

.ascend_account_details .ascend-details-table .ascend-details-label {
  white-space: nowrap;
  width: 1%;
  padding-right: 0.5rem;
}

.ascend_account_details .ascend-details-table .ascend-details-value {
  padding-right: 2rem;
}

#copy_ascend_customer_portal_link_button .copy_icon img,
#copy_ascend_customer_portal_link_button .checkmark_icon img {
  filter: brightness(0) invert(1);
  width: 16px;
  height: 16px;
}

.ascend_account_details .ascend-details-buttons {
  flex-shrink: 0;
  align-self: center;
  margin-right: 8rem;
  gap: 2rem !important;
}

.ascend_account_details .ascend-details-buttons .btn {
  width: 100%;
  justify-content: center;
  white-space: nowrap;
  min-width: 280px;
}

.actions-container {
  display: flex;
  flex-direction: column;
  gap: 0.33rem;
  align-items: stretch;
}

.actions-container .btn {
  background-color: #5B1C69;
  color: white;
  border-color: #5B1C69;
  width: 110%;
  font-size: 75%;
}

.actions-container .btn:hover {
  background-color: color-mix(in srgb, #5B1C69 90%, black);
  border-color: color-mix(in srgb, #5B1C69 90%, black);
  color: white;
}

.actions-container .btn:focus,
.actions-container .btn:focus-visible {
  border-color: #e5753c;
  box-shadow: 0 0 0 0.15rem rgba(229, 117, 60, 0.5);
  outline: none;
}

[id^="partners_ascend_policy_payments_modal"] .modal-footer .btn-secondary,
[id^="partners_ascend_policy_payments_modal"] .btn-success {
  --modal-btn-color: #5B1C69;
  background-color: var(--modal-btn-color) !important;
  border-color: var(--modal-btn-color) !important;
  color: #ffffff !important;
}

[id^="partners_ascend_policy_payments_modal"] .modal-footer .btn-secondary:hover,
[id^="partners_ascend_policy_payments_modal"] .btn-success:hover {
  --bs-btn-hover-bg: #52195F;
  --bs-btn-hover-border-color: #52195F;
  background-color: #52195F !important;
  border-color: #52195F !important;
  color: #ffffff !important;
}
/* Consolidated v2 Billing page (DES-178): Agency Bill + Direct Bill Policies */

.billing_page {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	padding: 0.5rem 0;
}

.billing_page .billing_section_heading {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gray-999);
	margin-bottom: 1rem;
}

/* Filter chips row: chips on the left, search on the right */
.billing_page .search_row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
	font-size: inherit;
}

.billing_page .search_row .scope_row {
	display: flex;
	gap: 0.75rem;
	margin-right: 0;
	flex: 0 1 auto;
}

.billing_page .scope_button_dynamic {
	background-color: var(--white);
	border: 1px solid var(--gray-300);
	color: var(--gray-999);
	padding: 6px 18px;
	border-radius: 20px;
	font-weight: 500;
	transition: all 0.2s ease;
}

.billing_page .scope_button_dynamic.selected {
	background-color: var(--gold-100);
	border-color: var(--orange-600);
	color: var(--orange-600);
}

.billing_page .scope_button_dynamic:hover:not(.selected) {
	border-color: var(--orange-600);
	color: var(--orange-600);
}

.billing_page .search_wrapper {
	position: relative;
	display: flex;
	align-items: center;
}

.billing_page .search_icon {
	position: absolute;
	left: 10px;
	width: 16px;
	height: 16px;
}

.billing_page .search_bar {
	padding: 8px 12px 8px 35px;
	border: 1px solid var(--gray-300);
	border-radius: 0.5rem;
	width: 320px;
	background-color: var(--white);
	background-image: none;
	appearance: none;
	-webkit-appearance: none;
}

/* Hide the native type="search" magnifier/clear glyphs so only the custom search.svg shows */
.billing_page .search_bar::-webkit-search-cancel-button,
.billing_page .search_bar::-webkit-search-decoration,
.billing_page .search_bar::-webkit-search-results-button,
.billing_page .search_bar::-webkit-search-results-decoration,
.billing_page .search_bar::-ms-clear {
	display: none !important;
}

/* Card-style table wrapper */
.billing_page .billing_table_wrapper {
	background-color: var(--white);
	border: 1px solid var(--gray-300);
	border-radius: 0.85rem;
	padding: 0.75rem;
	overflow-x: visible;
}

.billing_page .billing_table_wrapper .disclaimer_content {
	color: var(--gray-500);
	font-size: 0.875rem;
	padding: 0.25rem 0.5rem 0.75rem;
}

.billing_page .billing_table_wrapper .no_results_message {
	color: var(--gray-500);
	text-align: center;
	padding: 1.5rem 0;
}

.billing_page table.billing_table {
	width: 100%;
	margin: 0;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--gray-300);
	border-radius: 0.5rem;
	overflow: hidden;
}

.billing_page table.billing_table th,
.billing_page table.billing_table td {
	border: none;
	border-bottom: 1px solid var(--gray-300);
	padding: 0.875rem 1rem;
}

.billing_page table.billing_table th {
	background-color: #f8f9fa;
	color: var(--gray-999);
	font-weight: 600;
}

.billing_page table.billing_table td {
	border-right: 1px solid var(--gray-200);
}

.billing_page table.billing_table td:last-child {
	border-right: none;
}

.billing_page table.billing_table tbody tr:last-child td {
	border-bottom: none;
}

.billing_page table.billing_table .actions_cell,
.billing_page table.billing_table td:has(.actions_menu) {
	text-align: center;
	width: 1%;
}

.billing_page .pagination_wrapper {
	margin: 0.75rem 0 0.25rem 0.5rem;
}

/* Kebab actions menu + popover */
.billing_page .actions_menu {
	display: inline-flex;
}

.billing_page .kebab-toggle {
	background: none;
	border: none;
	border-radius: 0.375rem;
	padding: 0.25rem 0.375rem;
	color: var(--gray-999);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
}

.billing_page .kebab-toggle:hover {
	background-color: var(--gray-200);
}

.billing_page .actions-popover:popover-open {
	min-width: 220px;
	max-width: 280px;
}

.billing_page .actions-popover ul.actions-popover__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.billing_page .actions-popover .action-item {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding: 0.5rem 0.25rem;
	color: var(--gray-999);
	text-decoration: none;
	font-weight: 500;
	white-space: nowrap;
}

.billing_page .actions-popover .action-item:hover {
	color: var(--orange-600);
}

.billing_page .actions-popover .action-item__icon {
	color: var(--orange-600);
	flex-shrink: 0;
}

/* Ascend account info popover (info "i" next to the Past Due chip) */
.billing_page .ascend-info {
	display: inline-flex;
	align-items: center;
}

.billing_page .ascend-info__trigger {
	background: none;
	border: none;
	padding: 0.25rem;
	color: var(--gray-500);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	border-radius: 9999px;
	transition: color 0.2s ease;
}

.billing_page .ascend-info__trigger:hover {
	color: var(--eggplant-300);
}

.billing_page .ascend-info__trigger:focus-visible {
	color: var(--eggplant-300);
	outline: 2px solid var(--eggplant-300);
	outline-offset: 2px;
}

.billing_page .ascend-info__card:popover-open {
	min-width: 280px;
	max-width: 280px;
}

.billing_page .ascend-info__subtitle {
	font-size: 0.75rem;
	color: var(--text-secondary);
	margin-top: 0.125rem;
}

.billing_page .ascend-info__section + .ascend-info__section {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid var(--gray-200);
}

.billing_page .ascend-info__section-label {
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin-bottom: 0.5rem;
}

.billing_page .ascend-info__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.25rem 0;
}

.billing_page .ascend-info__key {
	color: var(--text-secondary);
	font-size: 0.8125rem;
}

.billing_page .ascend-info__val {
	color: var(--gray-999);
	font-size: 0.8125rem;
	font-weight: 500;
	text-align: right;
}

.billing_page .ascend-info__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	justify-content: flex-end;
}

.billing_page .ascend-info__footer {
	gap: 0.5rem;
	justify-content: flex-start;
	background-color: var(--eggplant-100);
	border-top: 1px solid var(--eggplant-100);
}

.billing_page .ascend-info__footer a {
	color: var(--eggplant-600);
}

.billing_page .ascend-info__footer-icon {
	color: var(--eggplant-600);
	flex-shrink: 0;
}
/* line 1, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container {
  margin: 0 2rem !important;
}

/* line 4, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table {
  border-collapse: collapse;
}

/* line 7, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table th,
.portal_collection_container table td {
  padding: 0.4rem;
  font-size: 0.9rem;
  border-left: none;
  border-right: none;
}

/* line 16, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table.datagrid {
  width: 100%;
  table-layout: fixed;
  overflow-wrap: break-word;
}

/* line 22, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table.datagrid thead th {
  background-color: rgba(59, 27, 75, 0.2);
  font-size: 0.9rem !important;
}

/* line 28, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table.datagrid td {
  word-break: break-word;
  overflow-wrap: break-word;
}

/* line 33, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container table.datagrid tr:hover td {
  background-color: var(--gray-200) !important;
}

/* line 39, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin: 0 2rem !important;
  padding: 0;
  overflow: visible;
}

/* line 47, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid form {
  width: 100%;
}

/* line 52, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .requested_effective_date {
  width: auto;
  min-width: 10ch;
}

/* line 57, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .program_name {
  width: 20ch;
  min-width: 20ch;
}

/* line 62, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .application_number {
  width: 18ch;
  min-width: 18ch;
  max-width: 23ch;
}

/* line 68, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .submitter,
.portal_collection_container.portal-applications-grid table.datagrid .external_stage {
  width: 16ch;
  min-width: 16ch;
  max-width: 16ch;
}

/* line 75, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .first_named_insured {
  width: 32ch;
  min-width: 32ch;
}

/* line 80, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table.datagrid .status {
  width: 10ch;
  min-width: 9ch;
}

/* line 86, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .search_row {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 100%;
}

/* line 93, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 25rem;
  padding: 8px 35px 8px 40px;
  font-size: 14px;
  border: 2px solid #D1D5DB;
  border-radius: 6px;
  outline: none;
  transition: border 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
  background-color: var(--white);
  background-image: url(/assets/search-5214a92feac41c1ffded70db475bcc26fe6929857d948846ee7a18dd0ae11e8a.svg);
  background-repeat: no-repeat;
  background-position: 12px center;
}

/* line 110, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter::-webkit-search-cancel-button,
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter::-webkit-search-decoration,
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter::-webkit-search-results-button,
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter::-webkit-search-results-decoration,
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter::-ms-clear {
  display: none !important;
}

/* line 118, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .search_row .search_bar.string_filter:focus {
  border: 2px solid #5B1C69;
  box-shadow: 0 0 0 3px rgba(147, 112, 219, 0.3);
}

/* line 123, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .table_wrapper {
  background: var(--white);
  border: 1px solid var(--gray-300);
  border-radius: 0.85rem;
  overflow-x: auto;
}

/* line 133, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
}

/* line 140, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table {
  border: none;
  table-layout: fixed;
}

/* line 144, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table thead th {
  background-color: #f3f4f6;
  border-bottom: 1px solid #e5e7eb;
  font-size: 0.9rem;
  letter-spacing: normal;
  text-transform: none;
  font-weight: 600;
  color: #4b5563;
  padding: 1rem;
}

/* line 155, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table .applications-table__header-content {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

/* line 161, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table .applications-table__header-label {
  flex: 0 1 auto;
  min-width: 0;
  font-weight: inherit;
}

/* line 167, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table .applications-table__header-content .order {
  margin-left: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
  flex-shrink: 0;
  position: static;
  transform: none;
  right: auto;
  top: auto;
}

/* line 179, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table tbody td {
  border-bottom: 1px solid #f3f4f6;
}

/* line 183, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table th,
.portal_collection_container.portal-applications-grid .applications-table td {
  border-left: none;
  border-right: none;
}

/* line 189, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table td {
  padding: 1.25rem 1rem;
  font-size: 0.9rem;
  line-height: 1.6;
  color: #1f2937;
  vertical-align: middle;
  word-break: break-word;
  overflow-wrap: anywhere;
}

/* line 199, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table tbody tr:last-child td {
  border-bottom: none;
}

/* line 203, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table tr:hover td {
  background-color: #f7f7f8 !important;
}

/* line 207, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table a {
  color: black;
  text-decoration: none;
}

/* line 211, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table a:hover {
  text-decoration: underline;
}

/* line 216, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table .applications-table-row {
  cursor: pointer;
  transition: background-color 0.2s ease;
}

/* line 221, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.portal_collection_container.portal-applications-grid .applications-table .badge {
  font-weight: 400;
}

/* line 227, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.status-pill {
  display: inline-block;
  padding: 0.2rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.4;
}

/* line 236, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.status-pill--open {
  background-color: #166534;
  color: #ffffff;
}

/* line 241, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.applications-filter-tabs {
  display: flex;
  gap: 0.5rem;
}

/* line 246, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.applications-filter-tab {
  padding: 0.4rem 1rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 500;
  color: #4b5563;
  text-decoration: none;
  border: 0.0625rem solid #d1d5db;
  transition: all 0.15s ease;
}

/* line 256, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.applications-filter-tab:hover {
  background-color: color-mix(in srgb, #4B5563 10%, transparent);
  text-decoration: none;
  color: #4b5563;
}

/* line 262, app/assets/stylesheets/portal_v2/pages/broker_applications_grid.scss */
.applications-filter-tab--active {
  background-color: #3B1B4B;
  color: #ffffff;
  border-color: #3B1B4B;
}
