.vhs-user-portal {
	min-width: 0;
}

.vhs-up-nav,
.vhs-up-filters,
.vhs-up-checkboxes {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.vhs-up-nav {
	margin-bottom: 2rem;
}

.vhs-user-portal .vhs-up-filters > label {
	min-width: 0;
	flex: 0 1 155px;
}

.vhs-user-portal .vhs-up-filters > label:first-of-type {
	flex: 1 1 340px;
}

.vhs-user-portal .vhs-up-filters > label:nth-of-type(3) {
	flex-basis: 180px;
}

.vhs-up-fields label {
	display: grid;
	gap: .4rem;
}

.vhs-up-form input:not([type="checkbox"]):not([type="hidden"]),
.vhs-up-form select {
	width: 100%;
	max-width: 100%;
	min-height: 44px;
	padding: .55rem .7rem;
	border: 1px solid #aeb9c6;
	border-radius: .45rem;
	background: #fff;
	color: #122744;
	font: inherit;
}

.vhs-user-portal input[readonly],
.vhs-user-portal input:disabled {
	background: #edf1f5;
}

.vhs-up-table-wrap {
	position: relative;
	max-width: 100%;
	overflow-x: auto;
}

.vhs-up-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	min-width: 90px;
}

.vhs-up-table th a {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	color: inherit;
	text-decoration: none;
}

.vhs-up-table th a:hover {
	text-decoration: underline;
}

.vhs-up-icon,
.vhs-up-danger > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	padding: .6rem;
	border: 1px solid var(--vhs-line);
	border-radius: .45rem;
	background: #fff;
	color: var(--vhs-blue);
	cursor: pointer;
	text-decoration: none;
}

.vhs-up-icon svg,
.vhs-up-danger > summary svg {
	width: 22px;
	height: 22px;
}

.vhs-up-icon:hover,
.vhs-up-danger > summary:hover {
	border-color: var(--vhs-blue);
	background: #eef3f8;
}

.vhs-up-icon:focus-visible,
.vhs-up-danger > summary:focus-visible {
	outline: 3px solid var(--vhs-teal);
	outline-offset: 3px;
}

.vhs-up-icon--danger,
.vhs-up-danger > summary {
	color: #b32d2e;
}

.vhs-up-danger > summary::-webkit-details-marker {
	display: none;
}

.vhs-up-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.vhs-up-form,
.vhs-up-danger {
	padding: 1rem;
	margin: 1.5rem 0;
	border: 1px solid #dce3eb;
	border-radius: 10px;
	background: #f8fafc;
	scroll-margin-top: 6rem;
}

.vhs-up-form .vhs-button {
	max-width: 100%;
	white-space: normal;
	overflow-wrap: anywhere;
}

.vhs-up-form fieldset {
	margin: 1rem 0;
	padding: 1rem;
	border: 1px solid #dce3eb;
}

.vhs-up-form legend {
	font-weight: 700;
}

.vhs-up-notice,
.vhs-up-error {
	padding: 1rem;
	border-left: 4px solid #168a45;
	background: #edf7f0;
}

.vhs-up-error,
.vhs-up-danger {
	border-color: #b32d2e;
}

.vhs-up-error {
	background: #fff0ef;
}

.vhs-up-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

@media (max-width: 640px) {
	.vhs-user-portal .vhs-up-filters > label,
	.vhs-user-portal .vhs-up-filters > label:first-of-type,
	.vhs-user-portal .vhs-up-filters > label:nth-of-type(3) {
		flex: 1 1 100%;
	}

	.vhs-up-fields {
		grid-template-columns: 1fr;
	}
}
