@charset "utf-8";
/*
 * Fonte padrão dos campos de formulário (carregado automaticamente em todas as telas)
 */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

input,
select,
textarea {
	font-family: 'Montserrat', Verdana, Arial !important;
	font-weight: 600 !important;
}

/*
 * Select customizado (init_select() em tools.js)
 */
.custom-select-wrapper {
	position: relative;
	display: block;
	width: 100%;
}

.custom-select-input {
	width: 100%;
	height: 44px;
	box-sizing: border-box;
	padding: 0 40px 0 12px;
	color: var(--color-text, #3B4458);
	background-color: #FFFFFF;
	border: 3px solid var(--color-outline, #4A5468);
	border-radius: 10px;
	outline: none;
	cursor: pointer;
	text-overflow: ellipsis;
	transition: box-shadow 0.12s ease, border-color 0.12s ease;
}

.cm-input .custom-select-input { padding-left: 42px; }

.custom-select-input:focus,
.custom-select-wrapper.open .custom-select-input {
	border-color: var(--comic-accent, #12A8C3);
	box-shadow: 4px 4px 0 var(--comic-accent, #12A8C3);
}

select.input-error ~ .custom-select-wrapper .custom-select-input {
	border-color: var(--comic-red, #db4551);
	box-shadow: 3px 3px 0 var(--comic-red, #db4551);
}

.custom-select-arrow {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 24px;
	color: var(--color-outline, #4A5468);
	cursor: pointer;
	user-select: none;
}

.custom-select-wrapper.disabled { opacity: 0.6; cursor: not-allowed; }
.custom-select-wrapper.disabled .custom-select-input,
.custom-select-wrapper.disabled .custom-select-arrow { cursor: not-allowed; }
.custom-select-wrapper.disabled .custom-select-input { background-color: #E9ECF2; }

.custom-select-dropdown {
	position: fixed;
	display: none;
	max-height: 230px;
	overflow-y: auto;
	z-index: 100000;
	padding: 6px;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border: 3px solid var(--color-outline, #4A5468);
	border-radius: 10px;
	box-shadow: 4px 4px 0 var(--color-outline, #4A5468);
}

.custom-select-item {
	padding: 8px 10px;
	border-radius: 7px;
	cursor: pointer;
}

.custom-select-item + .custom-select-item { margin-top: 2px; }

.custom-select-item:hover { background-color: var(--comic-yellow, #FFD21F); }

.custom-select-item.selected {
	color: #FFFFFF;
	background-color: var(--comic-accent, #12A8C3);
}

.custom-select-item-content {
	display: flex;
	align-items: center;
	gap: 8px;
}

.custom-select-item-icon i { display: block; font-size: 22px; }

.custom-select-item-text {
	font-size: 14px;
	font-weight: 600;
	color: var(--color-text, #3B4458);
}

.custom-select-item-type {
	margin-top: -1px;
	font-size: 12px;
	font-weight: 500;
	opacity: 0.75;
}

.custom-select-item.selected .custom-select-item-text { color: #FFFFFF; }

.custom-select-group {
	padding: 8px 10px 4px 10px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--color-outline, #4A5468);
	opacity: 0.7;
	cursor: default;
}

.custom-select-empty { padding: 8px 10px; text-align: center; opacity: 0.5; }