/* @import "bootstrap-italia/dist/css/bootstrap-italia.min.css"; */
@import url("https://fonts.googleapis.com/css2?family=Titillium+Web:wght@400;600;700&display=swap");

:root {
	--primary-active: #475b67;
	--primary-light: #dddddd;
	--secondary-lighter: #d9dadb;
	--secondary-active: #17324d;
	--secondary-stepper: #003354;
	--neutral-dark-grey: #5e7887;
	--icon-secondary: #5c6f82;
	--icon-disabled: #768594;
	--error: #cc334d;
	--error-lighter: #f3ced4;
	--text-disabled: #5c6f82;
}

/* ::-webkit-calendar-picker-indicator {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 24 24"><path fill="%23297a38" d="M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z"/></svg>');
} */

.accordion-body {
	padding: 0.5rem 3rem 1.5rem;
}

.accordion-header {
	color: #2f475e;
}

.accordion-header .accordion-button:hover {
	text-decoration: none;
}

.accordion-header .accordion-button {
	border: none;
	padding: 1.5rem;
}

.autocomplete-disabled {
	color: #5c6f82;
	background-color: #d9dadb;
	border: none;
	opacity: 1;
}

.autocomplete-disabled:hover {
	cursor: not-allowed;
}

.background-color-primary {
	background-color: var(--bs-primary);
}

.background-color-primary-active {
	background-color: var(--primary-active);
}

.badge.rounded-pill.badge-action-done {
	height: 2.5rem;
	display: flex;
	flex-grow: 1;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0 1rem;
	max-height: 2.5rem;
	width: 100%;
	color: var(--secondary-active);
}

.bg-primary-light {
	background-color: var(--primary-light);
}

.bg-secondary-lighter {
	background-color: var(--secondary-lighter);
}

body {
	background-color: #f5f5f5;
}

.bordered {
	border-radius: 0.25rem !important;
	border: 1px solid #5c6f82 !important;
}

.bordered-disabled {
	border-radius: 0.25rem !important;
	border: 1px solid #d9dadb !important;
}

.bordered-invalid {
	border-radius: 0.25rem;
	border: 1px solid var(--error);
}

.bordered-primary {
	border-radius: 0.25rem !important;
	border: 1px solid var(--bs-primary) !important;
}

.btn-icon {
	padding: 0;
}

.btn-icon .icon {
	margin-right: 0.25rem;
	width: 1.125rem;
	height: 1.25rem;
}

.btn-no-padding {
	padding: 0;
}

.btn-outline-primary.disabled {
	box-shadow: inset 0 0 0 2px #d9dadb;
	color: var(--text-disabled);
}

.content-container {
	border-radius: 0.5rem;
	background-color: white;
	display: flex;
	flex-direction: column;
	padding: 1rem 1.5rem;
	gap: 1rem;
}

.document-card {
	background-color: white;
	border-radius: 0.5rem;
	max-width: 300px;
	cursor: pointer;
}

.it-card.document-card.document-card-selected {
	background-color: #dddddd;
}

.dropdown-menu[data-bs-popper] {
	top: 110%;
}

.font-weight-400 {
	font-weight: 400;
}

.font-weight-700 {
	font-weight: 700;
}

/* .form-check [type="radio"] {
    position: static;
} */

@media (min-width: 576px) {
	.form-check [type="checkbox"] + label,
	.form-check [type="radio"] + label {
		font-size: 1rem;
	}
}

.form-check {
	margin-bottom: 0;
}

.form-check + .form-check {
	margin-top: 0;
}

.form-check [type="checkbox"] + label,
.form-check [type="radio"] + label {
	font-weight: inherit;
}

.form-check [type="checkbox"]:disabled:checked + label::after {
	background-color: #d9dadb;
	border-color: #d9dadb;
}

.form-check [type="checkbox"]:disabled:checked + label::before {
	border-color: rgba(0, 0, 0, 0) #5c6f82 #5c6f82 rgba(0, 0, 0, 0);
}

.form-check [type="checkbox"]:disabled:not(:checked) + label::after {
	border-color: #e6e9f2;
	background-color: #f5f5f5;
}

.form-check [type="checkbox"]:disabled + label {
	color: #5c6f82;
}

.form-check-input:disabled {
	opacity: 0;
}

.form-control {
	border-radius: 0.25rem !important;
	border: 1px solid #5c6f82;
	color: hsl(209, 33%, 28%);
}

.form-control:disabled {
	background-color: #d9dadb;
	border: 1px solid #d9dadb;
}

.form-control.is-invalid {
	border-color: #cc334c;
}

.form-group {
	margin-bottom: 0;
}

.form-group input {
	color: hsl(209, 33%, 28%);
}

.form-group label {
	padding: 0;
	transform: translateY(-100%);
	color: #2f475e;
	font-size: 1rem;
}

.form-group label.active {
	transform: translateY(-100%);
	color: #2f475e;
	font-size: 1rem;
}

.form-label {
	color: #2f475e;
	margin-bottom: 0;
}

.form-text {
	margin-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-bottom: 0;
}

h6 {
	line-height: 28px;
}

.hide {
	width: 0;
	height: 0;
	opacity: 0;
}

hr {
	margin: 0.5rem 0;
}

.icon-disabled {
	fill: var(--icon-disabled);
}

.icon-warning {
	fill: #995c00;
}

.icon-error {
	fill: var(--error);
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="time"],
select {
	border: 1px solid #5c6f82;
	display: inline-block;
}

.input-group > span:not(:first-child) {
	border-radius: 0.25rem;
	border: 1px solid #5c6f82;
	border-left: 0;
	color: hsl(209, 33%, 28%);
}

.input-row {
	display: flex;
	flex-direction: row;
	padding: 0 0.75rem;
	gap: 1rem;
	align-items: start;
}

.invalid-feedback,
.valid-feedback,
.warning-feedback {
	margin-left: 0;
}

.is-invalid + .input-group-text.align-buttons {
	border: 1px solid var(--error);
	border-left: 0;
	border-right: 0;
	border-radius: 0;
}

.it-card,
article.it-card {
	padding: 2rem 1rem;
	border: 1px solid var(--bs-primary);
}

.it-card .it-card-title,
article.it-card .it-card-title {
	padding: 0px;
}

.it-card .it-card-body,
article.it-card .it-card-body {
	padding: 0px;
}

label {
	font-size: 1rem;
	line-height: 1.5rem;
	color: #2f475e;
}

li {
	font-weight: 400;
}

.main-container {
	padding: 2.5rem 4.5rem;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	background-color: #f5f5f5;
	align-items: center;
}

.max-width-1440 {
	max-width: 1440px;
	width: 100%;
}

.min-h-screen {
	min-height: 100vh;
}

.modal .modal-dialog .modal-content .modal-header .h5 {
	font-weight: 700;
	color: #2f475e;
}

.modal .modal-dialog .modal-content .modal-header {
	padding: 2.5rem 2.5rem 0;
}

.modal .modal-dialog .modal-content .modal-body {
	padding: 1.5rem 2.5rem 0;
}

.modal .modal-dialog .modal-content .modal-footer {
	padding: 1.5rem 2.5rem 2.5rem;
}

.modal-content {
	border-radius: 1rem;
}

.modal-footer > * {
	margin: 0;
}

.modal-title {
	font-weight: 700;
	color: #2f475e;
	font-size: 2rem;
	width: 100%;
}

.nav-item {
	height: 4.5rem;
	display: flex;
	align-items: center;
}

.nav-tabs .nav-link {
	display: flex;
	gap: 1rem;
	height: 100%;
	margin: 0;
	padding: 0;
	color: var(--secondary-active);
	border-color: transparent !important;
}

.nav-tabs .nav-link:hover {
	color: var(--secondary-active);
}

.nav-tabs .nav-link .icon.icon-error {
	fill: var(--error);
}

.nav-tabs .nav-link.active {
	color: var(--primary-active);
	border-color: var(--bs-primary) !important;
	background-color: var(--primary-light);
}

.nav-tabs .nav-link.active.nav-invalid .icon {
	fill: var(--error);
}

.nav-tabs .nav-invalid {
	color: var(--error);
}

.nav-tabs .nav-link.nav-invalid {
	color: var(--error);
}

.nav-tabs .nav-link.active.nav-invalid {
	color: var(--error);
}

.page-link {
	padding: 0.5rem;
}

.pagination .page-item {
	margin-right: 0;
}

.password-icon {
	background-color: transparent;
}

.progress {
	height: 8px;
	border-radius: 40px;
}

.progress-bar {
	background-color: var(--bs-primary);
}

.progress.progress-color {
	background-color: #fafafa;
}

.progress-spinner.progress-spinner-active:not(.progress-spinner-double) {
	border-color: var(--bs-primary);
	border-bottom-color: var(--bs-primary);
	border-bottom-color: #d8d9da;
}

.react-tel-input .country-list .country:hover,
.react-tel-input .country-list .country.highlight {
	background-color: #f1f1f1;
	border-radius: 4px;
}

.react-tel-input .flag-dropdown + .bordered-invalid {
	border-radius: 0.25rem;
	border: 1px solid var(--error);
}

.react-tel-input .flag-dropdown.open .selected-flag {
	background: #fff;
	border-radius: 4px;
}

.react-tel-input .selected-flag {
	border-radius: 4px;
}

.row-height-100 {
	min-height: 100px;
}

.select-wrapper label {
	color: #2f475e;
	font-size: 1rem;
	font-weight: 600;
	padding: 0 0 0.5rem 0;
}

.select-wrapper select {
	font-weight: 400;
	color: #2f475e;
	border-radius: 0.25rem;
	border: 1px solid #5c6f82;
}

.select-wrapper select:disabled {
	color: #5c6f82;
	background-color: #d9dadb;
	border: 1px solid #d9dadb;
}

small {
	font-size: 0.75rem;
	line-height: 0.75rem;
}

span {
	font-size: 1rem;
	line-height: 1.5rem;
}

.steppers .steppers-header {
	padding: 0;
	margin: 0;
	box-shadow: none;
}

.steppers .steppers-header .steppers-line {
	position: absolute;
	top: 50%;
	left: 2.5rem;
	right: 2.5rem;
	height: 1px;
	background: var(--neutral-dark-grey);
	z-index: 0;
	transform: translateY(-50%);
	border-radius: 2px;
}

.steppers .steppers-header ul li {
	display: flex;
	font-size: 1.125rem;
	font-weight: 600;
	color: #5d7083;
	list-style-type: none;
	height: auto !important;
}

.steppers .steppers-header li {
	padding: 0px 12px;
	flex-grow: 0;
	border-left: 0;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.steppers .steppers-header li .steppers-number {
	width: 1.875rem;
	height: 1.875rem;
	border: 1px solid var(--neutral-dark-grey);
	background: white;
	border-radius: 50%;
	text-align: center;
	vertical-align: middle;
	margin-right: 0;
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.steppers .steppers-header ul li .steppers-number::after {
	content: "";
}

.steppers .steppers-header li.active .steppers-number {
	color: #fff;
	background: var(--secondary-stepper);
	border-color: var(--secondary-stepper);
	width: 2.5rem;
	height: 2.5rem;
}

.steppers .steppers-header li.confirmed .steppers-number {
	color: #fff;
	background: var(--secondary-stepper);
	border-color: var(--secondary-stepper);
	stroke-width: 1px;
	stroke: white;
	stroke-linecap: round;
}

.steppers .steppers-header li.confirmed .steppers-number::after {
	content: "";
	height: 0;
	width: 0;
}

.steppers .steppers-header li:nth-last-child(1) {
	border-right: 0;
}

.table-responsive {
	width: 100%;
}

.table-spaced {
	margin: 0;
	border-spacing: 0.25rem 0.5rem;
	border-collapse: separate;
	background-color: #f5f5f5;
}

.table-spaced > thead {
	box-shadow: 0px 0px 0px 8px var(--bs-primary);
}

.table-spaced > thead > tr {
	height: 2.75rem;
}

.table-spaced > thead > tr > th {
	padding-left: 2rem;
	padding-right: 2rem;
	vertical-align: middle;
	box-shadow: 0px 0px 0px 8px var(--bs-primary);
}

.table-spaced > tbody {
	border-width: 0;
}

.table-spaced > tbody > tr {
	height: 4.5rem;
}

.table-spaced > tbody > tr > td {
	background-color: white;
	padding-left: 2rem;
	padding-right: 2rem;
	vertical-align: middle;
}

td {
	font-weight: 400;
}

.text-base {
	color: #191919;
}

.text-default {
	color: #0b0b0b;
}

.text-divider {
	display: flex;
	align-items: center;
}

.text-divider::before,
.text-divider::after {
	content: "";
	flex: 1;
	padding: 1px;
	background-color: #e7e7e7;
	margin: 15px;
	width: 64.5px;
	margin-top: 16px;
}

.text-interactive-secondary-default {
	color: #454d56;
}

.text-primary-active {
	color: #143120;
}

.text-secondary {
	color: #2f475e !important;
}

.text-secondary-default {
	color: #6d6d6d;
}

.text-white {
	color: #ffffff;
}

th {
	color: white;
}

thead {
	border-bottom: 2px solid #5c6f82;
}

.upload-dragdrop-container {
	background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%23297A38FF' stroke-width='4' stroke-dasharray='6%2c 6' stroke-dashoffset='0' stroke-linecap='butt'/%3e%3c/svg%3e");
	border-radius: 0.5rem;
}

* {
	font-family: "Titillium Web", sans-serif;
	font-weight: 600;
	color: #2f475e;
}
