/*
    VETERINARIAXX
    DESENVOLVIDO POR DIALWEB.COM.BR
*/

@import url(//fonts.googleapis.com/css?family=Poppins:400,600);

html, body {
    height: 100%;
}

/* Fatura-recibo */
body.app-page .invoice-form,
body.app-page .invoice-preview {
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	overflow: hidden;
}

.invoice-form__intro,
.invoice-preview__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 28px 30px;
	background: linear-gradient(135deg, #3d303a 0%, #5a3a4b 100%);
	color: #fff;
}

.invoice-form__intro h2,
.invoice-preview__header h2 {
	margin: 4px 0 5px;
	color: #fff;
	font-size: 28px;
	line-height: 1.15;
}

.invoice-form__intro p,
.invoice-preview__header p {
	max-width: 590px;
	margin: 0;
	color: #eadfe5;
	font-size: 13px;
	line-height: 1.5;
}

.invoice-eyebrow {
	display: block;
	color: #ff9bcf;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.invoice-status {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	padding: 7px 11px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.invoice-status--draft {
	border: 1px solid rgba(255, 255, 255, .24);
	background: rgba(255, 255, 255, .1);
	color: #fff;
}

.invoice-status--paid {
	background: #e0f5e8;
	color: #207744;
}

.invoice-form__section {
	padding: 25px 30px 27px;
	border-bottom: 1px solid #e7ecee;
	background: #fff;
}

.invoice-form__section--last {
	border-bottom: 0;
}

.invoice-section-heading {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 18px;
}

.invoice-section-heading__number {
	display: grid;
	place-items: center;
	flex: 0 0 29px;
	height: 29px;
	border-radius: 8px;
	background: #f9e8f1;
	color: #a72a68;
	font-size: 10px;
	font-weight: 700;
}

.invoice-section-heading h3 {
	margin: 0 0 2px;
	color: #354149;
	font-size: 15px;
	line-height: 1.25;
}

.invoice-section-heading p {
	margin: 0;
	color: #7b888f;
	font-size: 11px;
}

.invoice-form__grid {
	display: grid;
	gap: 18px;
}

.invoice-form__grid--emission {
	grid-template-columns: 180px minmax(0, 1fr);
}

.invoice-form__grid--payment {
	grid-template-columns: minmax(160px, .8fr) minmax(220px, 1.2fr);
}

.invoice-field,
.invoice-client-field,
.invoice-item-search {
	min-width: 0;
}

body.app-page .invoice-form label {
	display: block;
	margin: 0;
}

body.app-page .invoice-form label > span {
	font-weight: 600;
}

.invoice-form label > span small {
	margin-left: 5px;
	color: #9aa4a9;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.invoice-client-field .selecionado {
	min-height: 67px;
	margin-top: 0;
	padding: 11px 14px;
	border: 1px solid #d7e0e3;
	border-radius: 8px;
	background: #fbfcfc;
	color: #68777e;
	font-size: 12px;
}

.invoice-client-field .selecionado strong {
	color: #354149;
	font-size: 13px;
}

.invoice-client-field .selecionado br + a,
.invoice-client-field .selecionado > br {
	display: none;
}

.invoice-client-field .selecionado a {
	display: inline-block;
	margin-top: 5px;
	font-size: 11px;
	font-weight: 600;
}

.invoice-item-search {
	margin-bottom: 17px;
}

.invoice-item-search .recibo-item-feedback {
	margin: 8px 0 0;
}

.receipt-items-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 20px 0 10px;
}

.receipt-items-toolbar strong,
.receipt-items-toolbar span {
	display: block;
}

.receipt-items-toolbar > div {
	flex: 1 1 auto;
	min-width: 0;
}

.receipt-items-toolbar strong {
	color: #354149;
	font-size: 12px;
}

.receipt-items-toolbar span {
	margin-top: 2px;
	color: #7d898f;
	font-size: 10px;
}

body.app-page .receipt-add-manual {
	flex: 0 0 auto;
	width: auto;
	height: 34px;
	margin: 0;
	padding: 0 13px;
	border: 1px solid #d9b2c5;
	border-radius: 7px;
	background: #fff;
	color: #9b3568;
	font-size: 9px;
	font-weight: 700;
	line-height: 32px;
}

.receipt-line-items {
	display: grid;
	gap: 10px;
}

.receipt-line-items__empty {
	margin: 0;
	padding: 18px;
	border: 1px dashed #ccd6da;
	border-radius: 9px;
	background: #fafcfc;
	color: #7d898f;
	font-size: 11px;
	text-align: center;
}

.receipt-line-item {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 420px;
	gap: 14px;
	padding: 14px;
	border: 1px solid #dfe6e8;
	border-left: 3px solid #d84d91;
	border-radius: 9px;
	background: #fbfcfc;
}

.receipt-line-item__main {
	display: grid;
	grid-template-columns: minmax(150px, .9fr) minmax(190px, 1.1fr);
	gap: 10px;
	min-width: 0;
}

.receipt-line-item__numbers {
	display: grid;
	grid-template-columns: 68px 140px 130px 34px;
	gap: 8px;
	align-items: end;
	min-width: 0;
}

.receipt-line-item__total {
	display: flex;
	justify-content: center;
	flex-direction: column;
	height: 39px;
	padding: 4px 10px;
	border-radius: 7px;
	background: #f7eaf1;
	text-align: right;
}

.receipt-line-item__total span,
.receipt-line-item__total strong {
	display: block;
}

.receipt-line-item__total span {
	color: #9b5c7b;
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.receipt-line-item__total strong {
	color: #8f2d5d;
	font-size: 12px;
	white-space: nowrap;
}

body.app-page .receipt-line-item__remove {
	width: 34px;
	height: 39px;
	margin: 0;
	padding: 0;
	border: 1px solid #e3c7cd;
	border-radius: 7px;
	background: #fff;
	color: #ad4658;
	font-size: 12px;
	line-height: 37px;
}

.invoice-form__grid--payment-method {
	grid-template-columns: 1fr;
}

.invoice-payment-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 245px;
	gap: 22px;
	align-items: stretch;
}

.invoice-total-preview {
	display: flex;
	justify-content: center;
	flex-direction: column;
	min-height: 92px;
	padding: 18px 20px;
	border-radius: 11px;
	background: #3d303a;
	color: #fff;
}

.invoice-total-preview span,
.invoice-total-preview small {
	color: #dbcbd3;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.invoice-total-preview strong {
	display: block;
	margin: 4px 0;
	color: #fff;
	font-size: 23px;
	line-height: 1.2;
}

body.app-page .invoice-form .invoice-form__actions,
body.app-page .invoice-preview .invoice-preview__actions {
	margin: 0;
	padding: 17px 30px;
	border-top: 1px solid #e7ecee;
	background: #f8fafb;
}

.invoice-preview__parties {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-bottom: 1px solid #e7ecee;
}

.invoice-preview__parties section {
	min-height: 120px;
	padding: 24px 30px;
}

.invoice-preview__parties section + section {
	border-left: 1px solid #e7ecee;
}

.invoice-preview__label,
.invoice-preview__notes > span,
.invoice-preview__summary span {
	display: block;
	margin-bottom: 6px;
	color: #8a969c;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.invoice-preview__parties strong {
	color: #354149;
	font-size: 15px;
}

.invoice-preview__parties p {
	margin: 6px 0 0;
	color: #748087;
	font-size: 12px;
	line-height: 1.55;
}

.invoice-preview__table-wrap {
	overflow-x: auto;
	padding: 26px 30px 0;
}

.invoice-preview__table {
	width: 100%;
	border-collapse: collapse;
}

.invoice-preview__table th {
	padding: 10px 12px;
	border-bottom: 2px solid #e1e7e9;
	background: #f6f8f9;
	color: #738087;
	font-size: 9px;
	letter-spacing: .07em;
	text-align: left;
	text-transform: uppercase;
}

.invoice-preview__table th:not(:first-child),
.invoice-preview__table td:not(:first-child) {
	text-align: right;
	white-space: nowrap;
}

.invoice-preview__table td {
	padding: 17px 12px;
	border-bottom: 1px solid #e7ecee;
	color: #58666d;
	font-size: 12px;
	vertical-align: top;
}

.invoice-preview__table td:first-child {
	width: 52%;
}

.invoice-preview__table td > strong,
.invoice-preview__table td > span {
	display: block;
}

.invoice-preview__table td > strong {
	color: #354149;
}

.invoice-preview__table td > span {
	margin-top: 4px;
	color: #7d898f;
	line-height: 1.5;
}

.invoice-preview__summary {
	display: grid;
	grid-template-columns: 1fr 245px;
	gap: 24px;
	align-items: center;
	padding: 18px 30px 24px;
}

.invoice-preview__summary strong {
	color: #354149;
	font-size: 13px;
}

.invoice-preview__total {
	padding: 15px 18px;
	border-radius: 10px;
	background: #f8edf3;
	text-align: right;
}

.invoice-preview__total span {
	color: #9a4770;
}

.invoice-preview__total strong {
	color: #9b235e;
	font-size: 22px;
}

.invoice-preview__notes,
.invoice-preview__receipt-copy {
	margin: 0 30px 22px;
	padding: 15px 17px;
	border: 1px solid #e4eaec;
	border-radius: 9px;
	background: #fafcfc;
}

.invoice-preview__notes p,
.invoice-preview__receipt-copy {
	color: #657279;
	font-size: 11px;
	line-height: 1.6;
}

.invoice-preview__notes p {
	margin: 0;
}

.invoice-preview__receipt-copy {
	border-left: 3px solid #d74d91;
}

.invoice-preview__signature {
	width: 230px;
	margin: 28px 30px 28px auto;
	text-align: center;
}

.invoice-preview__signature img {
	display: block;
	width: 135px;
	margin: 0 auto -3px;
}

.invoice-preview__signature > div {
	height: 1px;
	margin-bottom: 6px;
	background: #bfc8cc;
}

.invoice-preview__signature strong,
.invoice-preview__signature span {
	display: block;
}

.invoice-preview__signature strong {
	color: #354149;
	font-size: 12px;
}

.invoice-preview__signature span {
	margin-top: 2px;
	color: #7c898f;
	font-size: 10px;
}

@media screen and (max-width: 760px) {
	.invoice-form__intro,
	.invoice-preview__header,
	.invoice-form__section,
	.invoice-preview__parties section,
	.invoice-preview__table-wrap,
	.invoice-preview__summary {
		padding-right: 18px;
		padding-left: 18px;
	}

	.invoice-form__grid--emission,
	.invoice-form__grid--payment,
	.invoice-payment-grid,
	.receipt-line-item,
	.receipt-line-item__main,
	.invoice-preview__parties,
	.invoice-preview__summary {
		grid-template-columns: 1fr;
	}

	.receipt-line-item__numbers {
		grid-template-columns: 80px minmax(0, 1fr) 34px;
	}

	.receipt-line-item__numbers > label:first-child {
		grid-column: 1;
	}

	.receipt-line-item__numbers > label:nth-child(2) {
		grid-column: 2 / 4;
	}

	.receipt-line-item__total {
		grid-column: 1 / 3;
		text-align: left;
	}

	body.app-page .receipt-line-item__remove {
		grid-column: 3;
	}

	.invoice-preview__parties section + section {
		border-top: 1px solid #e7ecee;
		border-left: 0;
	}

	.invoice-preview__total {
		text-align: left;
	}

	.invoice-preview__table {
		min-width: 650px;
	}

	.invoice-preview__notes,
	.invoice-preview__receipt-copy {
		margin-right: 18px;
		margin-left: 18px;
	}

	.invoice-preview__signature {
		margin-right: 18px;
	}
}

@media screen and (max-width: 480px) {
	.receipt-items-toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	body.app-page .receipt-add-manual {
		width: 100%;
	}
}

/* GOOGLE CALENDAR */
.config-metric--google .config-metric__icon {
	background: #e8f0fe;
	color: #1a73e8;
}

.google-settings {
	display: grid;
	gap: 20px;
}

.google-connection-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	padding: 24px;
	border: 1px solid #e0e3e7;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(60, 64, 67, .08);
}

.google-connection-card.is-connected {
	border-color: #b7dfc7;
	background: linear-gradient(135deg, #fff 0%, #f3fbf6 100%);
}

.google-connection-card__icon {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border-radius: 14px;
	background: #f1f3f4;
	color: #4285f4;
	font-size: 25px;
}

.google-connection-card.is-connected .google-connection-card__icon {
	background: #e6f4ea;
	color: #188038;
}

.google-connection-card__eyebrow {
	display: block;
	margin-bottom: 3px;
	color: #5f6368;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.google-connection-card__content h2,
.google-preferences-form__header h2 {
	margin: 0 0 6px;
	color: #202124;
	font-size: 20px;
	font-weight: 500;
}

.google-connection-card__content p {
	margin: 0;
	color: #3c4043;
	line-height: 1.5;
}

.google-connection-card__content small {
	display: block;
	margin-top: 4px;
	color: #6f7579;
}

.google-status-pill {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-left: 8px;
	padding: 4px 8px;
	border-radius: 999px;
	background: #e6f4ea;
	color: #137333;
	font-size: 10px;
	font-weight: 700;
}

.google-connection-card__actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.google-connection-card__actions form {
	margin: 0;
}

.google-connection-card__actions button {
	min-height: 42px;
	margin: 0;
	border-radius: 7px;
}

.google-connect-button {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 42px;
	padding: 0 18px;
	border: 1px solid #dadce0;
	border-radius: 6px;
	background: #fff;
	color: #3c4043;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 1px 2px rgba(60, 64, 67, .12);
}

.google-connect-button:hover {
	border-color: #d2e3fc;
	background: #f8fbff;
	color: #174ea6;
	text-decoration: none;
}

.google-connect-button .fa-google {
	color: #4285f4;
	font-size: 17px;
}

.google-connect-button.is-disabled {
	cursor: not-allowed;
	opacity: .5;
}

.google-disconnect-button {
	border: 1px solid #dadce0 !important;
	background: #fff !important;
	color: #5f6368 !important;
}

.google-setup-notice {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px 20px;
	border: 1px solid #f5d687;
	border-radius: 10px;
	background: #fff8e1;
	color: #594a20;
}

.google-setup-notice > .fas {
	margin-top: 2px;
	color: #e0a800;
	font-size: 18px;
}

.google-setup-notice p {
	margin: 4px 0;
	line-height: 1.5;
}

.google-setup-notice code,
.google-template-help code {
	padding: 2px 5px;
	border-radius: 4px;
	background: rgba(60, 64, 67, .08);
	font-family: Consolas, monospace;
	font-size: 11px;
}

.google-sync-metrics {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.google-sync-metrics > div {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px;
	border: 1px solid #e0e3e7;
	border-radius: 10px;
	background: #fff;
}

.google-sync-metrics strong {
	color: #3c4043;
	font-size: 24px;
	font-weight: 500;
}

.google-sync-metrics span {
	color: #6b7075;
	font-size: 11px;
}

.google-sync-metrics .is-synced strong { color: #188038; }
.google-sync-metrics .is-pending strong { color: #e37400; }
.google-sync-metrics .is-failed strong { color: #d93025; }

.google-preferences-form.bgBox {
	margin: 0;
	padding: 24px;
}

.google-preferences-form__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid #eceff1;
}

.google-toggle {
	display: inline-flex !important;
	width: auto !important;
	align-items: center;
	gap: 9px;
	margin: 0 !important;
	color: #3c4043;
	font-size: 11px;
	font-weight: 600;
}

.google-toggle input {
	position: absolute;
	opacity: 0;
}

.google-toggle > span {
	position: relative;
	width: 38px;
	height: 22px;
	border-radius: 999px;
	background: #bdc1c6;
	transition: background .2s;
}

.google-toggle > span::after {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(60, 64, 67, .35);
	content: '';
	transition: transform .2s;
}

.google-toggle input:checked + span { background: #1a73e8; }
.google-toggle input:checked + span::after { transform: translateX(16px); }

.google-template-help {
	margin: 0 0 20px;
	color: #5f6368;
	font-size: 11px;
	line-height: 1.8;
}

.google-preferences-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.google-preferences-grid label {
	position: relative;
	width: auto !important;
}

.google-color-preview {
	position: absolute;
	right: 38px;
	bottom: 14px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--event-color);
	pointer-events: none;
}

/* AGENDA NO ESTILO GOOGLE CALENDAR */
.agenda-settings-form {
	max-width: 720px;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	overflow: hidden;
}

.agenda-settings-form__header {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 22px 24px;
	border-bottom: 1px solid #e3e8eb;
	background: #fff;
}

.agenda-settings-form__icon {
	display: grid;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	place-items: center;
	border-radius: 13px;
	background: #e8f0fe;
	color: #1a73e8;
	font-size: 20px;
}

.agenda-settings-form__header > div:last-child > span {
	color: #73818a;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
}

.agenda-settings-form__header h2 {
	margin: 2px 0 3px;
	color: #27343b;
	font-size: 20px;
}

.agenda-settings-form__header p,
.agenda-settings-form__note {
	margin: 0;
	color: #718089;
	font-size: 12px;
}

.agenda-settings-form__fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: end;
	gap: 16px;
	padding: 24px;
}

.agenda-settings-form__fields label {
	width: auto !important;
	margin: 0;
}

.agenda-settings-form__fields input {
	width: 100%;
	box-sizing: border-box;
}

.agenda-settings-form__fields > span {
	padding-bottom: 16px;
	color: #9aa0a6;
}

.agenda-settings-form__note {
	margin: 0 24px 20px;
	padding: 12px 14px;
	border-radius: 7px;
	background: #f1f3f4;
}

.agenda-settings-form__note span {
	margin-right: 6px;
	color: #1a73e8;
}

.agenda-settings-form__section-heading {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 4px 24px 0;
	padding-top: 20px;
	border-top: 1px solid #e3e8eb;
}

.agenda-settings-form__section-heading > span {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 10px;
	background: #e6f4ea;
	color: #137333;
}

.agenda-settings-form__section-heading h3,
.agenda-settings-form__section-heading p {
	margin: 0;
}

.agenda-settings-form__section-heading h3 { color: #27343b; font-size: 14px; }
.agenda-settings-form__section-heading p { margin-top: 2px; color: #718089; font-size: 11px; }

.agenda-settings-form__lunch-grid {
	display: grid;
	grid-template-columns: 125px minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: end;
	gap: 13px;
	padding: 20px 24px 24px;
}

.agenda-settings-form__lunch-grid strong { align-self: center; color: #526168; font-size: 11px; }
.agenda-settings-form__lunch-grid label { width: auto !important; margin: 0; }
.agenda-settings-form__lunch-grid input { width: 100%; box-sizing: border-box; }
.agenda-settings-form__lunch-grid > span { padding-bottom: 16px; color: #9aa0a6; }

.agenda-settings-form .btnCenter {
	margin: 0;
	padding: 0 24px 24px;
}

.agenda-calendar-shell {
	border: 1px solid #dadce0;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(60, 64, 67, .06);
	overflow: hidden;
}

.agenda-google-toolbar {
	display: flex;
	min-height: 66px;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 0 18px;
	border-bottom: 1px solid #dadce0;
}

.agenda-google-toolbar__navigation {
	display: flex;
	align-items: center;
	gap: 5px;
}

.agenda-google-toolbar__actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.agenda-view-switcher {
	display: inline-flex;
	padding: 3px;
	border: 1px solid #dadce0;
	border-radius: 7px;
	background: #f8f9fa;
}

.agenda-view-switcher a {
	display: inline-flex;
	min-height: 29px;
	align-items: center;
	padding: 0 11px;
	border-radius: 5px;
	color: #5f6368;
	font-size: 10px;
	font-weight: 600;
	text-decoration: none;
}

.agenda-view-switcher a:hover,
.agenda-view-switcher a:focus {
	background: #e8eaed;
	color: #202124;
	text-decoration: none;
}

.agenda-view-switcher a.is-active {
	background: #1a73e8;
	color: #fff;
	box-shadow: 0 1px 2px rgba(26, 115, 232, .24);
}

.agenda-google-toolbar__today {
	display: inline-flex;
	min-height: 36px;
	align-items: center;
	margin-right: 6px;
	padding: 0 14px;
	border: 1px solid #dadce0;
	border-radius: 5px;
	color: #3c4043;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none;
}

.agenda-google-toolbar__today:hover,
.agenda-google-toolbar__arrow:hover {
	background: #f1f3f4;
	color: #202124;
	text-decoration: none;
}

.agenda-google-toolbar__arrow {
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border-radius: 50%;
	color: #5f6368;
	text-decoration: none;
}

.agenda-google-toolbar h2 {
	margin: 0 0 0 8px;
	color: #3c4043;
	font-size: 21px;
	font-weight: 400;
}

.agenda-google-toolbar__sync {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 11px;
	border-radius: 999px;
	background: #f1f3f4;
	color: #5f6368;
	font-size: 10px;
	font-weight: 600;
	text-decoration: none;
}

.agenda-google-toolbar__sync.is-connected {
	background: #e6f4ea;
	color: #137333;
}

#agenda.agenda-google-grid {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0;
	min-width: 760px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
}

#agenda.agenda-weekly {
	display: block;
	min-width: 960px;
	padding: 0;
	background: #fff;
}

.agenda-weekly__header {
	position: sticky;
	top: 0;
	z-index: 5;
	display: grid;
	grid-template-columns: 64px repeat(7, minmax(0, 1fr));
	border-bottom: 1px solid #dadce0;
	background: #fff;
}

.agenda-weekly__time-heading,
.agenda-weekly__day-heading {
	min-width: 0;
	padding: 9px 5px;
	border-right: 1px solid #dadce0;
	color: #70757a;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: .04em;
	text-align: center;
}

.agenda-weekly__time-heading {
	position: sticky;
	left: 0;
	z-index: 4;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding-bottom: 7px;
	background: #fff;
	font-size: 8px;
}

.agenda-weekly__day-heading:last-child {
	border-right: 0;
}

.agenda-weekly__day-heading > .agenda-weekly__weekday-label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin-bottom: 4px;
}

.agenda-holiday-badge {
	display: inline-flex;
	min-height: 12px;
	align-items: center;
	padding: 0 4px;
	border-radius: 999px;
	background: #d93025;
	color: #fff;
	font-size: 6px;
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 12px;
	text-transform: none;
}

.agenda-weekly__day-heading a {
	display: grid;
	width: 28px;
	height: 28px;
	margin: 0 auto;
	place-items: center;
	border-radius: 50%;
	color: #3c4043;
	font-size: 12px;
	text-decoration: none;
}

.agenda-weekly__day-heading a:hover,
.agenda-weekly__day-heading a:focus {
	background: #e8eaed;
	text-decoration: none;
}

.agenda-weekly__day-heading.is-today {
	color: #1a73e8;
}

.agenda-weekly__day-heading.is-today a {
	background: #1a73e8;
	color: #fff;
}

.agenda-weekly__scroll {
	max-height: 660px;
	overflow-y: auto;
}

.agenda-weekly__body {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
}

.agenda-weekly__times {
	position: sticky;
	left: 0;
	z-index: 3;
	border-right: 1px solid #dadce0;
	background: #fff;
}

.agenda-weekly__times span {
	position: absolute;
	right: 8px;
	transform: translateY(-50%);
	color: #70757a;
	font-size: 9px;
	line-height: 1;
}

.agenda-weekly__times span:first-child {
	transform: translateY(2px);
}

.agenda-weekly__times span:last-child {
	transform: translateY(calc(-100% - 2px));
}

.agenda-weekly__days {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.agenda-weekly__day-column {
	position: relative;
	min-width: 0;
	border-right: 1px solid #dadce0;
	background-color: #fff;
	background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 59px, #e8eaed 59px, #e8eaed 60px);
}

.agenda-weekly__day-column:last-child {
	border-right: 0;
}

.agenda-weekly__day-column.is-today {
	background-color: #f8fbff;
}

.agenda-weekly__day-column.is-holiday,
.agenda-weekly__day-column.is-holiday.is-today {
	background-color: #d7dadd;
	background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 59px, #c2c6ca 59px, #c2c6ca 60px);
}

.agenda-weekly__event {
	position: absolute;
	right: 4px;
	left: 4px;
	z-index: 1;
	min-height: 24px;
	padding: 4px 5px;
	border-left: 3px solid #1a73e8;
	border-radius: 4px;
	background: #d2e3fc;
	color: #174ea6;
	font-size: 9px;
	line-height: 1.15;
	text-align: left;
	text-decoration: none;
	overflow: hidden;
	box-sizing: border-box;
}

.agenda-weekly__event:hover,
.agenda-weekly__event:focus {
	z-index: 2;
	background: #aecbfa;
	color: #0b57d0;
	text-decoration: none;
}

.agenda-weekly__event strong {
	display: block;
	font-weight: 700;
}

.agenda-weekly__event span {
	display: block;
	margin-top: 2px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.agenda-weekly__event.has-sync-error {
	border-left-color: #c5221f;
	background: #fce8e6;
	color: #c5221f;
}

.agenda-weekly__event--lunch {
	z-index: 0;
	pointer-events: none;
	border-left-color: #188038;
	background: #ceead6;
	color: #0d652d;
}

.agenda-google-grid__weekday {
	padding: 10px 8px 8px;
	border-right: 1px solid #dadce0;
	color: #70757a;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: .06em;
	text-align: center;
}

.agenda-google-grid__weekday:nth-child(7) {
	border-right: 0;
}

.agenda-google-grid__day {
	display: flex;
	min-width: 0;
	min-height: 128px;
	align-items: center;
	flex-direction: column;
	padding: 6px 5px;
	border-top: 1px solid #dadce0;
	border-right: 1px solid #dadce0;
	background: #fff;
	color: #3c4043;
	text-decoration: none;
	overflow: hidden;
}

.agenda-google-grid__day:nth-child(7n) {
	border-right: 0;
}

.agenda-google-grid__day:hover {
	background: #f8f9fa;
	text-decoration: none;
}

.agenda-google-grid__day.is-other-month {
	background: #fafafa;
}

.agenda-google-grid__day.is-holiday,
.agenda-google-grid__day.is-holiday:hover { background: #d7dadd; }

.agenda-google-grid__day.is-holiday .agenda-google-grid__day-number,
.agenda-google-grid__day.is-holiday.is-other-month .agenda-google-grid__day-number { color: #3c4043; }

.agenda-google-grid__day.is-holiday .agenda-google-grid__more { color: #3c4043; }

.agenda-google-grid__date-heading {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	gap: 4px;
}

.agenda-google-grid__day-number {
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	color: #3c4043;
	font-size: 11px;
	font-weight: 500;
	text-decoration: none;
}

.agenda-google-grid__day-number:hover,
.agenda-google-grid__day-number:focus {
	background: #e8eaed;
	color: #202124;
	text-decoration: none;
}

.agenda-google-grid__day.is-other-month .agenda-google-grid__day-number {
	color: #9aa0a6;
}

.agenda-google-grid__day.is-today .agenda-google-grid__day-number {
	background: #1a73e8;
	color: #fff;
}

.agenda-google-grid__events {
	display: flex;
	width: 100%;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
	margin-top: 4px;
}

.agenda-google-grid__event {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 4px;
	padding: 4px 6px;
	border-radius: 4px;
	background: #e8f0fe;
	color: #1967d2;
	font-size: 9px;
	line-height: 1.2;
	text-align: left;
	text-decoration: none;
}

.agenda-google-grid__event:hover,
.agenda-google-grid__event:focus {
	background: #d2e3fc;
	color: #174ea6;
	text-decoration: none;
}

.agenda-google-grid__event strong {
	flex: 0 0 auto;
	font-weight: 700;
}

.agenda-google-grid__event > span {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.agenda-google-grid__event.has-sync-error {
	background: #fce8e6;
	color: #c5221f;
}

.agenda-google-grid__event--lunch {
	background: #ceead6;
	color: #0d652d;
}

.agenda-google-grid__more {
	width: 100%;
	padding: 2px 6px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #5f6368;
	cursor: pointer;
	font-family: inherit;
	font-size: 9px;
	font-weight: 600;
	text-align: left;
}

.agenda-google-grid__more:hover,
.agenda-google-grid__more:focus {
	background: #e8eaed;
	color: #202124;
}

.visualizacao-modal.agenda-day-modal {
	width: min(640px, 100%);
}

.visualizacao-modal.agenda-create-modal {
	width: min(820px, 100%);
}

.visualizacao-modal.agenda-holidays-modal { width: min(560px, 100%); }

.agenda-holidays-content { display: grid; gap: 18px; }

.agenda-holidays-add {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	padding-bottom: 18px;
	border-bottom: 1px solid #e3e8eb;
}

.agenda-holidays-add label,
.agenda-holidays-add label > span { display: block; }
.agenda-holidays-add label { width: auto !important; margin: 0; }
.agenda-holidays-add label > span { margin-bottom: 6px; color: #5f6368; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.agenda-holidays-add input { width: 100%; box-sizing: border-box; }
.agenda-holidays-add button { width: auto; height: 39px; margin: 0; }

.agenda-holidays-list { display: grid; max-height: 310px; gap: 7px; overflow-y: auto; }
.agenda-holidays-empty { margin: 0; padding: 22px; border-radius: 8px; background: #f1f3f4; color: #70757a; text-align: center; }
.agenda-holidays-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid #e1e5e8; border-radius: 8px; background: #fff; color: #5f6368; }
.agenda-holidays-item > span { color: #70757a; }
.agenda-holidays-item strong { color: #3c4043; font-size: 12px; }
.agenda-holidays-item form { margin: 0; }
.agenda-holidays-item button { display: grid; width: 30px; height: 30px; margin: 0; padding: 0; place-items: center; border: 0; border-radius: 50%; background: transparent; color: #c5221f; line-height: 30px; }
.agenda-holidays-item button:hover { background: #fce8e6; }

.agenda-day-list__item--lunch { border-left-color: #188038; background: #f3fbf5; }

.agenda-create-form {
	display: flex;
	min-height: 0;
	flex: 1;
	flex-direction: column;
}

.agenda-create-form .visualizacao-modal__conteudo {
	display: grid;
	min-height: 0;
	flex: 1;
	gap: 14px;
}

.agenda-create-form label,
.agenda-create-form label > span {
	display: block;
}

.agenda-create-form label > span {
	margin-bottom: 6px;
	color: #5f6368;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.agenda-create-form label > small {
	display: block;
	margin: -2px 0 7px;
	color: #70757a;
}

.agenda-create-form input,
.agenda-create-form select,
.agenda-create-form textarea {
	width: 100%;
	box-sizing: border-box;
}

.agenda-create-form__grid {
	display: grid;
	grid-template-columns: 1.2fr .8fr 1fr;
	gap: 12px;
}

.agenda-create-patient .selecionado {
	display: none;
}

.agenda-weekly__day-column,
.agenda-google-grid__day {
	cursor: pointer;
}

@media (max-width: 700px) {
	.agenda-create-form__grid {
		grid-template-columns: 1fr;
	}
}

.agenda-day-list {
	display: grid;
	gap: 8px;
}

.agenda-day-list__item {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	padding: 13px 14px;
	border: 1px solid #dfe3e7;
	border-left: 4px solid #1a73e8;
	border-radius: 8px;
	background: #fff;
	color: #3c4043;
	text-decoration: none;
}

.agenda-day-list__item:hover,
.agenda-day-list__item:focus {
	border-color: #a8c7fa;
	border-left-color: #1a73e8;
	background: #f8faff;
	text-decoration: none;
}

.agenda-day-list__time {
	color: #1967d2;
	font-size: 13px;
	font-weight: 700;
}

.agenda-day-list__details {
	min-width: 0;
}

.agenda-day-list__details strong,
.agenda-day-list__details small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.agenda-day-list__details strong {
	color: #202124;
	font-size: 13px;
}

.agenda-day-list__details small {
	margin-top: 3px;
	color: #70757a;
	font-size: 11px;
}

.agenda-day-list__arrow {
	color: #5f6368;
	font-size: 11px;
}

@media screen and (max-width: 900px) {
	.google-connection-card {
		grid-template-columns: auto 1fr;
	}

	.google-connection-card__actions {
		grid-column: 1 / -1;
		padding-left: 72px;
	}

	.google-sync-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.agenda-calendar-shell {
		overflow-x: auto;
	}

	.agenda-google-toolbar {
		min-width: 760px;
	}

	#agenda.agenda-google-grid {
		grid-template-columns: repeat(7, minmax(108px, 1fr));
	}
}

@media screen and (max-width: 650px) {
	.agenda-settings-form__fields {
		grid-template-columns: 1fr;
	}

	.agenda-settings-form__lunch-grid {
		grid-template-columns: 1fr 1fr;
	}

	.agenda-settings-form__lunch-grid strong {
		grid-column: 1 / -1;
	}

	.agenda-settings-form__lunch-grid > span {
		display: none;
	}

	.agenda-settings-form__fields > span {
		display: none;
	}

	.google-connection-card {
		grid-template-columns: 1fr;
		padding: 18px;
		text-align: center;
	}

	.google-connection-card__icon {
		margin: 0 auto;
	}

	.google-connection-card__actions {
		align-items: stretch;
		flex-direction: column;
		grid-column: auto;
		padding-left: 0;
	}

	.google-connection-card__actions form,
	.google-connection-card__actions button,
	.google-connect-button {
		width: 100%;
		justify-content: center;
	}

	.google-sync-metrics,
	.google-preferences-grid {
		grid-template-columns: 1fr;
	}

	.google-preferences-form__header,
	.agenda-google-toolbar {
		align-items: flex-start;
		flex-direction: column;
	}

	.google-preferences-form__header {
		padding-bottom: 16px;
	}

	.agenda-google-toolbar {
		min-width: 0;
		gap: 8px;
		padding: 12px 14px;
	}

	.agenda-google-toolbar__navigation {
		width: 100%;
		flex-wrap: wrap;
	}

	.agenda-google-toolbar__actions {
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.agenda-google-toolbar h2 {
		font-size: 17px;
	}

	#agenda.agenda-google-grid {
		grid-template-columns: repeat(7, minmax(0, 1fr));
		min-width: 0;
	}

	.agenda-google-grid__weekday {
		padding: 8px 2px 6px;
		font-size: 7px;
	}

	.agenda-google-grid__day {
		min-height: 78px;
		padding: 3px 2px;
	}

	.agenda-google-grid__day-number {
		width: 22px;
		height: 22px;
		font-size: 9px;
	}

	.agenda-google-grid__events {
		align-items: center;
		gap: 2px;
	}

	.agenda-google-grid__event {
		width: 5px;
		height: 5px;
		padding: 0;
		border-radius: 50%;
		font-size: 0;
	}

	.agenda-google-grid__event strong,
	.agenda-google-grid__event > span {
		display: none;
	}

	.agenda-google-grid__more {
		width: auto;
		padding: 1px 3px;
		font-size: 7px;
		text-align: center;
	}

	.agenda-day-list__item {
		grid-template-columns: 46px minmax(0, 1fr) auto;
		gap: 8px;
		padding: 11px 10px;
	}

	.agenda-holidays-add { grid-template-columns: 1fr; }
	.agenda-holidays-add button { width: 100%; }
}

body {
    font-family: Poppins, Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 400;
	color: #666;
    background: #E5E5E5;
}

body.open {
	overflow: hidden;
}



/* FORMULARIO */
form label, form .label {
    display: block;
    margin-top: 10px;
}

form .label > label {
	margin-top: 0;
}

form label > span, form .label > span {
    font-weight: bold;
}

form input, form select, form textarea {
    display: block;
    height: 45px;
    border: 1px solid #CCC;
    padding: 0 10px;
    width: 100%;
    -webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

form textarea {
    height: auto;
    padding: 10px;
    resize: none;
}

form input[type=checkbox], form input[type=radio] {
    display: inline;
    padding: 0;
    width: auto;
    height: auto;
}

form button {
    display: block;
    width: 100%;
    height: 45px;
    margin: 20px auto 0 auto;
    padding: 0 35px;
    border: 0;
    background: #DDD;
	border-radius: 3px;
}

form button:hover {
    background: #CCC;
}

form button.green {
    color: #FFF;
    background: #FD9EC5;
}

form button.green:hover {
	background: #59BD60;
}

form button.red {
	color: #FFF;
	background: #b42318;
}

form button.red:hover {
	background: #8f1c13;
}

form label.col, form .label.col {
    float: left;
    width: 50%;
    margin-left: 2%;
}

form label.rel {
	position: relative;
}

form label.rel > .abs {
	position: absolute;
	bottom: 1px;
	right: 1px;
	background: #DDD;
	line-height: 43px;
	padding: 0 10px;
	font-size: 13px;
	border-radius: 0 3px 3px 0;
}

form label.col.f, form .label.col.f {
    margin-left: 0;
}

form label.col.small, form .label.col.small {
    width: 18%;
}

form label.col.medium, form .label.col.medium {
    width: 49%;
}

form label.col.large, form .label.col.large {
    width: 80%;
}

form label.col.three, form label.col.smallThree, form .label.col.three {
    width: 32%;
}

form label.col.four, form label.col.smallFour {
    width: 23.5%;
}

form label.col.largeFour {
    width: 74.5%;
}

form label.col.mediumFour {
    width: 49%;
}

form label.col.largeThree {
    width: 66%;
}


form label.col.five {
    width: 18.4%;
}

form label.col.six {
    width: 15%;
}

form .btnCenter {
    text-align: center;
}

form .btnCenter > button {
    display: inline-block;
    width: auto;
    margin: 20px 1% 0 1%;
}

#frmBuscar {
	margin-bottom: 30px;
}

.buscaInput > .result > a, .buscaInputAdicionar > .result > a {
	display: block;
	padding: 10px;
}

.buscaInput > .result > a:hover, .buscaInputAdicionar > .result > a:hover {
	background: #EEE;
	text-decoration: none;
}

.buscaInput > .selecionado {
	display: none;
	position: relative;
	padding: 10px;
	background: #EEE;
}



/* ALINHAMENTOS */
.alCenter {
    text-align: center;
}

.alRight {
	text-align: right;
}



/* ALERTA */
.alerta {
    color: #1B1E21;
    background-color: #D6D8D9;
    border: 1px solid #C6C8CA;
    margin-bottom: 10px;
    padding: 10px 25px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.alerta.erro {
    color: #721C24;
    background-color: #F8D7DA;
    border-color: #F5C6CB;
}

.alerta.erro > .badge {
    color: #FFF;
    background: #DC3545;
}

.alerta.sucesso {
    color: #155724;
    background: #D4EDDA;
    border-color: #C3E6CB;
}

.alerta.sucesso > .badge {
    color: #FFF;
    background: #28A745;
}

.alerta.atencao {
    color: #856404;
    background: #FFF3CD;
    border-color: #FFEEBA;
}

.alerta.atencao > .badge {
    color: #212529;
    background: #FFC107;
}

.alerta > .badge {
    display: inline-block;
    padding: 2px 8px;
    font-size: 12px;
    line-height: 14px;
    font-weight: bold;
    text-align: center;
    vertical-align: baseline;
    text-transform: capitalize;
    margin-right: 5px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}



/* ESTRUTURA */
#carregando {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../imagens/ico_carregando.gif) center center no-repeat rgba(255, 255, 255, .9);
	z-index: 998;
}

h1 {
    margin: 0;
    font-size: 32px;
    font-weight: bold;
    letter-spacing: -1px;
}

h2 {
    margin: 0;
    padding: 0;
    font-size: 24px;
    font-weight: 400;
    letter-spacing: -1px;
}

h2 > span {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: normal;
}

strong {
    font-weight: bold;
}

a {
    color: #666;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

#content {
    padding: 100px 35px 100px 335px;
}

#content.w100p {
	width: 100%;
	margin: 0;
	padding: 3%;
}

#content.w100p.max {
	max-width: 1100px;
	margin: 0 auto;
}

#content > .boxTitulo {
    line-height: 45px;
    margin-bottom: 20px;
}

#content > .boxTitulo > h1 {
    float: left;
}

#content > .boxTitulo > a {
    float: right;
    background: #CCC;
    padding: 0 35px;
    text-decoration: none;
    text-transform: uppercase;
	margin-left: 10px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

#content > .boxTitulo > a:hover {
    background: #BBB;
}

#content > .boxTitulo > a.blue {
    background: #A349A3;
    color: #FFF;
}

#content > .boxTitulo > a.blue:hover {
    background: #873D87;
}

#content > .boxTitulo > a > span {
    font-size: 12px;
    margin-right: 5px;
}

.cardio-pdf-selector {
    align-items: center;
    display: flex;
    float: right;
    gap: 8px;
    line-height: normal;
    margin-left: 10px;
}

.cardio-pdf-selector label {
    color: #666;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.cardio-pdf-selector select {
    background: #FFF;
    border: 1px solid #CCC;
    border-radius: 3px;
    box-sizing: border-box;
    height: 45px;
    max-width: 330px;
    padding: 0 34px 0 12px;
}

.cardio-pdf-selector > a {
    background: #A349A3;
    border-radius: 3px;
    color: #FFF;
    display: block;
    font-weight: 700;
    line-height: 45px;
    padding: 0 25px;
    text-decoration: none;
    white-space: nowrap;
}

.cardio-pdf-selector > a:hover {
    background: #873D87;
}

@media (max-width: 1050px) {
    .cardio-pdf-selector {
        clear: both;
        float: none;
        margin: 10px 0 0;
    }
}

@media (max-width: 650px) {
    .cardio-pdf-selector {
        align-items: stretch;
        flex-direction: column;
    }

    .cardio-pdf-selector select {
        max-width: none;
        width: 100%;
    }

    .cardio-pdf-selector > a {
        text-align: center;
    }
}

#content > .boxBotoes {
	margin-bottom: 30px;
}

#content > .boxBotoes > a {
	float: left;
	line-height: 30px;
	padding: 0 15px;
	margin-right: 20px;
	background: #CCC;
}

#content > .boxBotoes > select {
	width: 100%;
	height: 45px;
	text-align: center;
	padding: 0 20px;
}

#content > .boxBotoes > a:hover, #content > .boxBotoes > a.atual {
	background: #4272D7;
	color: #FFF;
	text-decoration: none;
}

.config-list-toolbar {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 24px;
}

.config-list-toolbar > .boxBotoes {
	align-items: center;
	flex: 1;
	gap: 8px;
	margin: 0;
}

.config-list-toolbar > .boxBotoes.mobHide {
	display: flex !important;
}

.config-list-toolbar > .boxBotoes > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 50px;
	padding: 0 19px;
	border: 1px solid #d8e0e4;
	border-radius: 8px;
	background: #fff;
	color: #52616a;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	transition: background .15s, border-color .15s, color .15s;
}

.config-list-toolbar > .boxBotoes > a:hover,
.config-list-toolbar > .boxBotoes > a.atual {
	border-color: #4272d7;
	background: #4272d7;
	color: #fff;
}

.config-list-toolbar > .boxBotoes > select {
	width: 100%;
	height: 50px;
	padding: 0 16px;
	border: 1px solid #d8e0e4;
	border-radius: 8px;
	background: #fff;
}

.config-list-toolbar > .listing-filter-bar {
	flex: 0 0 auto;
	margin: 0 0 0 auto;
}

.config-list-toolbar .listing-filter-open {
	min-height: 50px;
	padding: 0 19px;
	font-size: 12px;
}

.config-list-toolbar--options-only > .boxBotoes {
	flex: 0 1 auto;
}

.config-result-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.config-result-header .config-table-add {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: stretch;
	gap: 8px;
	min-height: 60px;
	margin-left: auto;
	padding: 0 24px;
	background: #fff;
	color: #9f4b69;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
}

.config-result-header .config-table-add:hover,
.config-result-header .config-table-add:focus {
	background: #8f3f5c;
	color: #fff;
}

.config-metrics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.config-metric {
	display: grid;
	grid-template-columns: 54px 1fr auto;
	align-items: center;
	gap: 16px;
	min-height: 112px;
	padding: 22px;
	border: 1px solid #e0e7ea;
	border-radius: 12px;
	background: #fff;
	color: #5f6d75;
	text-decoration: none;
	box-shadow: 0 4px 14px rgba(42, 58, 66, .05);
	transition: transform .15s, box-shadow .15s, border-color .15s;
}

.config-metric:hover {
	border-color: #b9c9cf;
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(42, 58, 66, .1);
}

.config-metric > .config-metric__icon {
	width: 54px;
	height: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	background: #eef3fb;
	color: #4272d7;
	font-size: 21px;
}

.config-metric strong {
	display: block;
	margin-bottom: 2px;
	color: #29373e;
	font-size: 27px;
	line-height: 1;
}

.config-metric > .fa-arrow-right {
	color: #a4b0b6;
	font-size: 13px;
}

.config-metric--medicamentos .config-metric__icon {
	background: #eef8f5;
	color: #2b9b86;
}

.config-metric--termos .config-metric__icon {
	background: #fff4e9;
	color: #d8883a;
}

.config-metric--exames .config-metric__icon {
	background: #f7effa;
	color: #9559aa;
}

.config-metric--recibos .config-metric__icon {
	background: #fff1f4;
	color: #b84f72;
}

.config-form-overlay {
	display: none;
	position: fixed;
	inset: 0;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(19, 25, 31, .74);
	backdrop-filter: blur(4px);
	z-index: 1200;
}

.config-form-overlay.is-open {
	display: flex;
}

.config-form-modal {
	width: min(520px, 100%);
	max-height: calc(100vh - 48px);
	display: flex;
	flex-direction: column;
	border-radius: 15px;
	background: #f7f9fa;
	box-shadow: 0 24px 75px rgba(0, 0, 0, .3);
	overflow: hidden;
}

.config-form-modal--wide {
	width: min(1040px, 100%);
}

.config-form-modal__header {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px 24px;
	border-bottom: 1px solid #e2e8eb;
	background: #fff;
}

.config-form-modal__icon {
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	display: grid;
	place-items: center;
	border-radius: 12px;
	background: #edf3fd;
	color: #4272d7;
	font-size: 18px;
}

.config-form-modal__titles {
	flex: 1;
	min-width: 0;
}

.config-form-modal__eyebrow {
	display: block;
	margin-bottom: 2px;
	color: #7c8990;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .14em;
}

.config-form-modal__header h2 {
	margin: 0;
	color: #2c3a41;
	font-size: 21px;
}

.config-form-modal__close {
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #edf1f3;
	color: #54636b;
	font: 300 29px/38px Arial, sans-serif;
	cursor: pointer;
}

.config-form-modal__body {
	padding: 24px;
	overflow-y: auto;
}

.config-form-modal__body > .alerta {
	margin-bottom: 16px;
}

.config-modal-form.bgBox {
	margin: 0;
	padding: 24px;
	box-shadow: none;
}

.config-form-modal--wide .config-modal-form textarea {
	min-height: 260px;
}

.config-form-loading,
.config-form-error {
	min-height: 220px;
	display: grid;
	place-items: center;
	color: #718087;
	text-align: center;
}

.config-form-loading span,
.config-form-error span {
	display: block;
	margin-bottom: 10px;
	color: #4272d7;
	font-size: 26px;
}

.bgBox {
    background: #FFF;
    padding: 35px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

#assinatura {
	display: block;
	border: 1px solid #666;
}



/* RESULTADOS */
.bgBox.resultados {
    background: transparent;
    padding: 0;
}

.bgBox.resultados > header {
    color: #666;
    background: #FEAEC9;
    line-height: 60px;
    text-transform: uppercase;
}

.bgBox.resultados > footer {
    background: #F5F5F5;
    line-height: 60px;
    border-top: 1px solid #E5E5E5;
    padding: 0 35px;
    text-align: center;
    font-size: 14px;
}

.bgBox.resultados > .resultado {
    background: #FFF;
    padding: 10px 0;
}

.bgBox.resultados > .resultado:hover {
    background: #F5F5F5;
}

.bgBox.resultados > .resultado span {
    font-size: 14px;
}

.bgBox.resultados > .noResult {
    padding: 10px 35px;
    text-align: center;
    background: #FFF;
}

.bgBox.resultados > .resultado > .acoes {
    float: right;
    padding-right: 35px;
}

.bgBox.resultados > .resultado > .acoes > a {
    margin-left: 10px;
    text-decoration: none;
}

.whatsapp-link,
.bgBox.resultados > .resultado > .acoes > a.whatsapp-link {
	color: #1fa855;
}

.historico-compacto {
	background: #f8faf9;
	border: 1px solid #dbe7df;
	border-radius: 6px;
	margin: 8px 0 20px;
	padding: 16px;
}

.historico-compacto__cabecalho {
	align-items: center;
	border-bottom: 1px solid #dbe7df;
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
	padding-bottom: 10px;
}

.historico-compacto__cabecalho strong,
.historico-compacto__cabecalho span {
	display: block;
}

.historico-compacto__grade {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.historico-compacto__grade > div > span {
	color: #777;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
}

.historico-compacto__grade p {
	margin: 4px 0 0;
}

.historico-compacto__texto {
	max-height: 260px;
	overflow: auto;
}

.historico-compacto__acoes {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
}

.historico-completo {
	padding: 18px;
}

.historico-completo__secao + .historico-completo__secao {
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid #dbe7df;
}

.historico-completo__secao h3 {
	margin: 0 0 12px;
	color: #52615a;
	font-size: 13px;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.historico-completo__grade {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 13px 18px;
}

.historico-completo__grade > div {
	min-width: 0;
	padding: 11px 12px;
	border-radius: 7px;
	background: #fff;
}

.historico-completo__grade span {
	display: block;
	color: #768079;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.historico-completo__grade p {
	margin: 4px 0 0;
	color: #35413b;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.historico-receita-completa {
	max-height: none;
	overflow: visible;
	padding: 12px;
	border-radius: 7px;
	background: #fff;
	line-height: 1.6;
}

form .historico-anteriores-button,
.historico-anteriores-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: auto;
	height: 38px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid #82afa6;
	border-radius: 8px;
	background: #edf8f5;
	color: #287d6d;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
}

form .historico-anteriores-button:hover,
.historico-anteriores-button:hover {
	background: #287d6d;
	color: #fff;
}

form .historico-anteriores-button:disabled,
.historico-anteriores-button:disabled {
	border-color: #d4dadd;
	background: #f1f3f4;
	color: #9aa3a8;
	cursor: not-allowed;
	opacity: .8;
}

.historico-anterior-modal {
	width: min(760px, 100%);
}

.historico-modal-lista {
	display: grid;
	gap: 9px;
}

.historico-modal-lista > a {
	display: grid;
	grid-template-columns: 38px 1fr 18px;
	align-items: center;
	gap: 12px;
	padding: 13px 15px;
	border: 1px solid #e0e7e9;
	border-radius: 9px;
	background: #fff;
	color: #35434a;
	text-decoration: none;
}

.historico-modal-lista > a:hover {
	border-color: #82b9ae;
	background: #f7fcfb;
}

.historico-modal-lista > a > .fa-file-medical {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 9px;
	background: #eaf6f3;
	color: #287d6d;
}

.historico-modal-lista strong,
.historico-modal-lista small {
	display: block;
}

.historico-modal-lista small {
	margin-top: 3px;
	color: #75828a;
}

.historico-modal-lista .fa-chevron-right {
	color: #9aa5aa;
}

.historico-modal-vazio {
	margin: 0;
	padding: 30px;
	color: #718087;
	text-align: center;
}

form .ai-summary-button,
.ai-summary-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: auto;
	height: 38px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid #a993ca;
	border-radius: 8px;
	background: #f4effb;
	color: #65458d;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
}

form .ai-summary-button:hover,
.ai-summary-button:hover {
	border-color: #7653a4;
	background: #7653a4;
	color: #fff;
}

form .ai-summary-button:disabled,
.ai-summary-button:disabled {
	cursor: wait;
	opacity: .7;
}

.ai-summary-result {
	display: none;
	margin-top: 14px;
	padding: 14px 16px;
	border-radius: 9px;
	font-size: 13px;
	line-height: 1.65;
	white-space: pre-wrap;
}

.ai-summary-result.is-loading,
.ai-summary-result.is-ready,
.ai-summary-result.is-error {
	display: block;
}

.ai-summary-result.is-loading {
	background: #f1eef8;
	color: #675b76;
}

.ai-summary-result.is-ready {
	border: 1px solid #cfe4d8;
	background: #f4faf7;
	color: #344d40;
}

.ai-summary-result.is-error {
	border: 1px solid #efd0d0;
	background: #fff5f5;
	color: #8a3e3e;
}

.ai-summary-result strong,
.ai-summary-result div,
.ai-summary-result small {
	display: block;
}

.ai-summary-result strong {
	margin-bottom: 6px;
	color: #2c4036;
	font-size: 14px;
}

.ai-summary-result small {
	margin-top: 10px;
	color: #6d7e75;
	font-size: 11px;
}

.weight-history {
	clear: both;
	margin: 18px 0 6px;
	padding: 16px;
	border: 1px solid #dfe7e9;
	border-radius: 10px;
	background: #f7f9fa;
}

.weight-history__header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.weight-history__header h3 {
	margin: 0;
	color: #344249;
	font-size: 16px;
}

.weight-history__header span {
	color: #839098;
	font-size: 11px;
}

.weight-history__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.weight-history__item {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 2px 10px;
	padding: 10px 12px;
	border: 1px solid #e1e8ea;
	border-radius: 8px;
	background: #fff;
}

.weight-history__item time {
	color: #7a878e;
	font-size: 11px;
}

.weight-history__item strong {
	color: #98536e;
	font-size: 13px;
	text-align: right;
}

.weight-history__item span {
	grid-column: 1 / -1;
	color: #69777e;
	font-size: 11px;
}

.weight-history__empty {
	grid-column: 1 / -1;
	margin: 0;
	color: #7b878d;
	font-size: 12px;
}

/* Padrão visual das views internas */
body.app-page {
	background: #edf1f2;
	color: #536169;
	font-size: 14px;
}

body.app-page #content {
	width: calc(100% - 300px);
	max-width: none;
	margin: 0 0 0 300px;
	padding: 92px max(24px, calc((100vw - 300px) * .05)) 80px;
}

body.app-page #content > .boxTitulo {
	margin-bottom: 14px;
}

body.app-page #content > .boxTitulo > h1 {
	color: #27363d;
	font-size: 27px;
	letter-spacing: -.6px;
}

body.app-page #content > .boxTitulo > a {
	min-height: 40px;
	padding: 0 20px;
	border-radius: 8px;
	font-size: 11px;
	line-height: 40px;
}

body.app-page form.bgBox {
	padding: 22px 24px;
	border: 1px solid #dde5e8;
	border-radius: 14px;
	box-shadow: 0 7px 22px rgba(42, 57, 65, .06);
}

body.app-page form.bgBox > h2 {
	clear: both;
	margin: 18px 0 10px;
	padding: 10px 13px;
	border-left: 4px solid #a349a3;
	border-radius: 0 8px 8px 0;
	background: #f7f2f7;
	color: #3c4850;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
}

body.app-page form.bgBox > h2:first-child {
	margin-top: 0;
}

body.app-page form label,
body.app-page form .label {
	margin-top: 7px;
}

body.app-page form label > span,
body.app-page form .label > span {
	display: inline-block;
	margin-bottom: 4px;
	color: #5b6870;
	font-size: 11px;
	letter-spacing: .02em;
}

body.app-page form input,
body.app-page form select {
	height: 39px;
	border-color: #d7e0e3;
	border-radius: 7px;
	background: #fbfcfc;
	font-size: 13px;
}

body.app-page form textarea {
	min-height: 74px;
	border-color: #d7e0e3;
	border-radius: 7px;
	background: #fbfcfc;
	font-size: 13px;
	line-height: 1.45;
}

/* Formulário de nova consulta */
body.app-page .consulta-form label {
	margin-bottom: 12px;
}

body.app-page .consulta-form .col {
	box-sizing: border-box;
}

body.app-page .consulta-form .col.f {
	margin-left: 0;
}

body.app-page .consulta-form .col.rel {
	position: relative;
}

body.app-page .consulta-form .consulta-sintomas {
	display: grid;
	grid-template-columns: minmax(120px, 15%) minmax(220px, 33%) minmax(120px, 15%) minmax(220px, 33%);
	gap: 0 1.333%;
	clear: both;
}

body.app-page .consulta-form .consulta-sintomas > .col {
	float: none;
	width: auto;
	margin-left: 0;
}

body.app-page .consulta-form .consulta-sintomas > .clear {
	display: none;
}

body.app-page .consulta-form select[name^="anamnese_sintomas"],
body.app-page .consulta-form select[name="anamnese_avaliacaocardiologicaanterior"] {
	transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

body.app-page .consulta-form select.opcao-sim {
	border-color: #72c28a;
	background-color: #dcf5e4;
	color: #176b35;
	font-weight: 600;
}

body.app-page .consulta-form select.opcao-nao {
	border-color: #e2bd54;
	background-color: #fff2bf;
	color: #765713;
	font-weight: 600;
}

body.app-page .consulta-form select option[value="1"] {
	background-color: #dcf5e4;
	color: #176b35;
}

body.app-page .consulta-form select option[value="0"] {
	background-color: #fff2bf;
	color: #765713;
}

body.app-page form input:focus,
body.app-page form select:focus,
body.app-page form textarea:focus {
	border-color: #a349a3;
	background: #fff;
	outline: 3px solid rgba(163, 73, 163, .1);
}

body.app-page form label.rel > .abs {
	line-height: 37px;
	border-radius: 0 7px 7px 0;
}

@media screen and (min-width: 1201px) {
	body.app-page .consulta-form > label.col.small,
	body.app-page .consulta-form > .label.col.small {
		width: 24%;
	}

	body.app-page .consulta-form > label.col.large,
	body.app-page .consulta-form > .label.col.large {
		width: 74%;
	}

	body.app-page .consulta-form > label.col.medium,
	body.app-page .consulta-form > .label.col.medium {
		width: 49%;
	}

	body.app-page .consulta-form > label.col.four {
		width: 23.5%;
	}
}

@media screen and (max-width: 1200px) {
	body.app-page .consulta-form .consulta-sintomas {
		grid-template-columns: minmax(140px, 28%) minmax(0, 72%);
		gap: 0;
	}
}

@media screen and (max-width: 650px) {
	body.app-page .consulta-form .consulta-sintomas {
		grid-template-columns: 1fr;
	}
}

body.app-page .buscaInput > .selecionado {
	padding: 12px 14px;
	border: 1px solid #e0e6e8;
	border-radius: 8px;
	background: #f7f9fa;
}

body.app-page .bgBox.resultados {
	overflow: hidden;
	border: 1px solid #dde5e8;
	border-radius: 12px;
	box-shadow: 0 5px 16px rgba(42, 57, 65, .05);
}

body.app-page .bgBox.resultados > header {
	background: #f3d6e2;
	color: #664d57;
	font-size: 11px;
	font-weight: 600;
	line-height: 48px;
}

body.app-page .bgBox.resultados > .resultado {
	min-height: 54px;
	padding: 7px 0;
	border-bottom: 1px solid #edf1f2;
}

body.app-page .bgBox.resultados > .resultado:hover {
	background: #faf7fa;
}

.bgBox.resultados.agenda-lista > header,
.bgBox.resultados.agenda-lista > .resultado.mobHide {
	display: grid !important;
	align-items: center;
	column-gap: 18px;
	padding-right: 145px;
}

.bgBox.resultados.agenda-lista > .resultado.mobHide {
	position: relative;
}

.bgBox.resultados.agenda-lista > .resultado.mobHide > .acoes {
	position: absolute;
	right: 24px;
	padding-right: 0;
}

.bgBox.resultados.agenda-lista--busca > header,
.bgBox.resultados.agenda-lista--busca > .resultado.mobHide {
	grid-template-columns: 100px 70px minmax(110px, .75fr) minmax(140px, 1fr) minmax(180px, 1.4fr);
}

.bgBox.resultados.agenda-lista--dia > header,
.bgBox.resultados.agenda-lista--dia > .resultado.mobHide {
	grid-template-columns: 150px minmax(110px, .75fr) minmax(140px, 1fr) minmax(180px, 1.4fr);
}

.bgBox.resultados.agenda-lista > header > .col,
.bgBox.resultados.agenda-lista > .resultado.mobHide > .col {
	float: none;
	box-sizing: border-box;
	width: auto;
	padding-left: 24px;
}

.bgBox.resultados.agenda-lista > header > .clear,
.bgBox.resultados.agenda-lista > .resultado.mobHide > .clear {
	display: none;
}

.bgBox.resultados.consultas-lista > header,
.bgBox.resultados.consultas-lista > .resultado.mobHide {
	display: grid !important;
	grid-template-columns:
		120px
		minmax(140px, 1fr)
		minmax(110px, .7fr)
		minmax(150px, 1fr)
		120px;
	align-items: center;
	column-gap: 20px;
	padding-right: 24px;
	padding-left: 24px;
}

.bgBox.resultados.consultas-lista > header > .col,
.bgBox.resultados.consultas-lista > .resultado.mobHide > .col {
	float: none;
	width: auto;
	padding-left: 0;
}

.bgBox.resultados.consultas-lista > .resultado.mobHide > .acoes {
	float: none;
	padding-right: 0;
	white-space: nowrap;
}

.bgBox.resultados.consultas-lista .consulta-secundaria {
	font-size: 12px;
	line-height: 1.35;
}

body.app-page form .btnCenter {
	position: static;
	margin: 22px -24px -22px;
	padding: 12px 24px;
	border-top: 1px solid #e2e8ea;
	background: #fff;
}

body.app-page form .btnCenter > button {
	height: 40px;
	margin-top: 0;
	border-radius: 8px;
	font-size: 11px;
	font-weight: 600;
}

body.app-page form .form-section {
	margin: 18px 0;
	border: 1px solid #dfe6e9;
	border-radius: 10px;
	background: #fbfcfd;
	overflow: hidden;
}

body.app-page form .form-section > h3 {
	margin: 0;
	padding: 13px 18px;
	border-bottom: 1px solid #dfe6e9;
	background: #f1f6f5;
	color: #47605a;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
}

body.app-page form .form-section > h3 > span {
	margin-right: 8px;
	color: #2e917b;
}

body.app-page form .form-section__content {
	padding: 18px;
}

body.app-page form .form-section__content > label:first-child {
	margin-top: 0;
}

.bgBox.resultados > .noResult > a {
    font-weight: bold;
}

.listing-date-fields {
	display: flex;
	gap: 20px;
}

.listing-date-fields > label {
	flex: 1;
}

.listing-filter-bar {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 18px;
}

.listing-filter-open {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 16px;
	border: 1px solid #d6dfe3;
	border-radius: 8px;
	background: #fff;
	color: #46565f;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.listing-filter-open:hover,
.listing-filter-open:focus,
.listing-filter-open--active {
	border-color: #2b9b86;
	color: #287f6e;
}

.listing-filter-active {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #2b8c79;
	font-size: 12px;
	font-weight: 700;
}

.listing-filter-overlay {
	display: none;
	position: fixed;
	inset: 0;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(19, 25, 31, .72);
	backdrop-filter: blur(4px);
	z-index: 1150;
}

.listing-filter-overlay.is-open {
	display: flex;
}

.listing-filter-modal {
	width: min(560px, 100%);
	margin: 0;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
	overflow: hidden;
}

.listing-filter-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 21px 24px;
	border-bottom: 1px solid #e3e8eb;
}

.listing-filter-modal__eyebrow {
	display: block;
	margin-bottom: 3px;
	color: #7a8890;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .14em;
}

.listing-filter-modal__header h2 {
	margin: 0;
	color: #2d3b43;
	font-size: 21px;
}

.listing-filter-close {
	width: 38px;
	height: 38px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #eef2f4;
	color: #53616a;
	font: 300 28px/36px Arial, sans-serif;
	cursor: pointer;
}

.listing-filter-modal__body {
	padding: 24px;
	background: #f7f9fa;
}

.listing-filter-modal__body > p {
	margin: 0 0 18px;
	color: #6c7a82;
	font-size: 13px;
}

.listing-filter-modal__body .listing-date-fields {
	margin: 0;
}

.listing-filter-modal__body label {
	margin-bottom: 0;
}

.listing-filter-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 16px 24px;
	border-top: 1px solid #e3e8eb;
}

.listing-filter-modal__footer > div {
	display: flex;
	gap: 9px;
}

.listing-filter-modal__footer button,
.listing-filter-clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 16px;
	border: 0;
	border-radius: 8px;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.listing-filter-modal__footer button:not(.green) {
	background: #eef2f4;
	color: #53616a;
}

.listing-filter-clear {
	color: #77858d;
}

.listing-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 18px;
	background: #FFF;
	color: #666;
	font-size: 13px;
}

.listing-pagination--top {
	margin: 0;
	border-bottom: 1px solid #E8E8E8;
}

.listing-pagination--bottom {
	justify-content: center;
	margin-top: 12px;
	border: 1px solid #E8E8E8;
	border-top: 3px solid #FEAEC9;
	border-radius: 4px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.06);
}

.listing-pagination form {
	margin: 0;
}

.listing-pagination form label {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	white-space: nowrap;
}

.listing-pagination select {
	width: 68px;
	height: 34px;
	margin: 0;
	padding: 5px 25px 5px 9px;
	border-color: #DDD;
	background-color: #FAFAFA;
	font-weight: bold;
	color: #555;
}

.listing-range {
	display: flex;
	align-items: baseline;
	gap: 3px;
	padding: 7px 12px;
	border-radius: 20px;
	background: #F6F6F6;
	white-space: nowrap;
}

.listing-range strong {
	color: #ED145B;
}

.listing-pagination nav {
	display: flex;
	align-items: center;
	gap: 5px;
}

.listing-pagination nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	padding: 0 8px;
	border: 1px solid #E1E1E1;
	border-radius: 50%;
	background: #FFF;
	color: #666;
	font-weight: bold;
	text-decoration: none;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.listing-pagination nav a:hover,
.listing-pagination nav a.current {
	background: #ED145B;
	border-color: #ED145B;
	color: #FFF;
}

.listing-pagination nav a.pagination-arrow {
	font-size: 20px;
	font-weight: normal;
}

.pagination-ellipsis {
	padding: 0 3px;
	color: #AAA;
}

.pagination-single {
	padding: 7px 0;
	color: #999;
}

.bgBox.resultados .col {
    float: left;
    padding-left: 35px;
}

.bgBox.resultados .col.w65 {
    width: 65px;
}

.bgBox.resultados .col.w100 {
    width: 100px;
}

.bgBox.resultados .col.w100p {
	float: none;
    width: 100%;
	padding: 0 35px;
}

.bgBox.resultados .col.w150 {
    width: 150px;
}

.bgBox.resultados .col.w200 {
    width: 200px;
}

.bgBox.resultados .col.w250 {
    width: 250px;
}

.bgBox.resultados .col.w300 {
    width: 300px;
}

.bgBox.resultados .col.w400 {
    width: 400px;
}

.bgBox.resultados .col.w500 {
    width: 500px;
}

.bgBox.resultados.lista-colunas-fixas > header,
.bgBox.resultados.lista-colunas-fixas > .resultado.mobHide {
	display: grid !important;
	align-items: center;
	column-gap: 16px;
	padding-right: 22px;
	padding-left: 22px;
}

.bgBox.resultados.lista-colunas-fixas > header > .col,
.bgBox.resultados.lista-colunas-fixas > .resultado.mobHide > .col {
	float: none;
	width: auto;
	min-width: 0;
	padding-right: 0;
	padding-left: 0;
	overflow-wrap: anywhere;
}

.bgBox.resultados.lista-colunas-fixas > header > .clear,
.bgBox.resultados.lista-colunas-fixas > .resultado.mobHide > .clear {
	display: none;
}

.bgBox.resultados.lista-colunas-fixas > .resultado.mobHide > .acoes {
	position: static;
	float: none;
	width: auto;
	padding: 0;
	text-align: right;
	white-space: nowrap;
}

.bgBox.resultados.lista-recibos > header,
.bgBox.resultados.lista-recibos > .resultado.mobHide {
	grid-template-columns: 12fr 22fr 13fr 37fr 16fr;
}

.bgBox.resultados.lista-config-recibos > header,
.bgBox.resultados.lista-config-recibos > .resultado.mobHide {
	grid-template-columns: minmax(180px, 2fr) minmax(240px, 3fr) minmax(110px, 1fr) minmax(96px, auto);
}

.recibo-item-busca {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	border-bottom: 1px solid #edf0f2;
}

.recibo-item-busca__texto {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.recibo-item-busca__texto small {
	color: #77858c;
}

.recibo-item-busca__acao {
	display: grid;
	flex: 0 0 auto;
	gap: 4px;
	text-align: right;
}

.recibo-item-busca__acao small {
	color: #9f4b69;
	font-weight: 600;
	text-transform: uppercase;
}

.recibo-item-feedback {
	margin: 8px 0 0;
	color: #27835f;
	font-size: 12px;
	font-weight: 600;
}

.recibo-item-feedback.is-error {
	color: #b33d4b;
}

.bgBox.resultados.lista-exames > header,
.bgBox.resultados.lista-exames > .resultado.mobHide {
	grid-template-columns: 12fr 12fr 20fr 40fr 16fr;
}

.bgBox.resultados.lista-cardiologico > header,
.bgBox.resultados.lista-cardiologico > .resultado.mobHide {
	grid-template-columns: 13fr 29fr 18fr 24fr 16fr;
}

.bgBox.resultados.lista-cardiologico .col small {
	color: #77858c;
}

.bgBox.resultados.lista-consultas-retorno > header,
.bgBox.resultados.lista-consultas-retorno > .resultado.mobHide,
.bgBox.resultados.lista-receitas > header,
.bgBox.resultados.lista-receitas > .resultado.mobHide {
	grid-template-columns: 13fr 22fr 19fr 30fr 16fr;
}

.bgBox.resultados.lista-termos > header,
.bgBox.resultados.lista-termos > .resultado.mobHide {
	grid-template-columns: 13fr 21fr 27fr 23fr 16fr;
}



/* DIALOG */
#dialog {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, .9);
	z-index: 998;
}

#dialog > .box {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 90%;
	max-width: 600px;
	background: #FFF;
	overflow: hidden;
	border: 1px solid #CCC;
	border-radius: 5px;
	box-shadow: 0 0 3px #CCC;
	transform: translate(-50%, -50%);
}

#dialog > .box > header {
	padding: 0 5%;
	line-height: 60px;
	font-weight: bold;
	background: #DDD;
}

#dialog > .box > .ctt {
	padding: 5%;
}

#dialog > .box .btnGreen {
	float: left;
	width: 49%;
	height: 60px;
	background: #FD9EC5;
	color: #FFF;
	line-height: 60px;
	margin: 20px 0 0 2%;
	text-decoration: none;
	text-align: center;
}

#dialog > .box .btnGreen:hover {
    background: #59BD60;
	text-decoration: none;
}

#dialog > .box .btnCancelar {
	float: left;
	width: 49%;
	height: 60px;
	background: #CCC;
	line-height: 60px;
	margin-top: 20px;
	text-decoration: none;
	text-align: center;
}

#dialog > .box .btnCancelar:hover {
	background: #BBB;
	text-decoration: none;
}



/* LOGIN.PHP */
body.login {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-height: 100vh;
	margin: 0;
	padding: 20px;
	box-sizing: border-box;
	background: url(../imagens/bgLogin.jpg) no-repeat center center fixed;
	background-size: cover;
}

body.login #login {
	position: relative;
	top: auto;
	left: auto;
	width: 100%;
	max-width: 440px;
	margin-right: 8%;
	padding: 40px 35px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 20px;
	background: rgba(255, 255, 255, .7);
	box-shadow: 0 15px 35px rgba(0, 0, 0, .1);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	text-align: center;
	transform: none;
}

body.login #login > .logo {
	width: 100%;
	max-width: 220px;
	height: auto;
	margin: 0 auto 15px;
	background: none;
	text-indent: 0;
	overflow: visible;
}

body.login #login > .logo img {
	display: block;
	width: 100%;
	height: auto;
}

body.login #login > h1 {
	margin-bottom: 12px;
	color: #795267;
	font-size: 22px;
	font-weight: 700;
	text-align: center;
}

body.login #login > p {
	margin-bottom: 25px;
	color: #4a3842;
	font-size: 13.5px;
	line-height: 1.45;
}

body.login #login label {
	display: block;
	margin-top: 15px;
	text-align: left;
}

body.login #login label > span {
	display: block;
	margin-bottom: 6px;
	color: #4a3842;
	font-size: 13px;
	font-weight: 600;
}

body.login .input-group {
	position: relative;
	display: flex;
	align-items: center;
}

body.login .input-group i {
	position: absolute;
	left: 15px;
	color: #9c8090;
	font-size: 16px;
}

body.login #login input[type="text"],
body.login #login input[type="password"] {
	width: 100%;
	height: 50px;
	padding-left: 45px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .6);
	border-radius: 10px;
	background: rgba(230, 235, 240, .6);
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, .02);
	color: #333;
	font-size: 15px;
	transition: all .3s;
}

body.login #login input[type="text"]:focus,
body.login #login input[type="password"]:focus {
	border-color: #fd9ec5;
	outline: none;
	background: rgba(255, 255, 255, .95);
	box-shadow: 0 0 0 3px rgba(253, 158, 197, .25);
}

body.login .form-extras {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 18px;
	font-size: 13px;
}

body.login .forgot-password-link {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #4a3842;
	font: inherit;
	line-height: 16px;
	text-decoration: underline;
	cursor: pointer;
}

body.login .forgot-password-link:hover {
	color: #e46b9a;
}

body.login #login .form-extras label {
	display: flex;
	align-items: center;
	flex-direction: row;
	margin: 0;
	line-height: 16px;
	white-space: nowrap;
	cursor: pointer;
	font-weight: normal;
}

body.login #login .form-extras input[type="checkbox"] {
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin: 0 6px 0 0;
	cursor: pointer;
}

body.login #login button.green {
	width: 100%;
	height: 50px;
	margin-top: 25px;
	border: 0;
	border-radius: 25px;
	background: linear-gradient(135deg, #fb9bc1 0%, #f46c9f 100%);
	box-shadow: 0 6px 15px rgba(244, 108, 159, .3);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: transform .2s, box-shadow .2s;
}

body.login #login button.green:hover {
	background: linear-gradient(135deg, #fc8bb7 0%, #f25591 100%);
	box-shadow: 0 8px 20px rgba(244, 108, 159, .45);
	transform: translateY(-2px);
}

body.login #login button.green:disabled,
body.login #login button.green:disabled:hover {
	background: linear-gradient(135deg, #d9b7c5 0%, #c99baa 100%);
	box-shadow: none;
	transform: none;
	cursor: wait;
	opacity: .8;
}

body.login .dev-credit {
	margin-top: 25px;
	color: #795267;
	font-size: 11px;
}

body.login .legal-links {
	margin-top: 5px;
	font-size: 9px;
	line-height: 1.25;
}

body.login .legal-links a {
	color: #795267;
	text-decoration: underline;
}

body.login .legal-links a:hover {
	color: #e46b9a;
}

body.login .login-recovery-overlay {
	position: fixed;
	inset: 0;
	z-index: 1200;
	display: none;
	padding: 20px;
	background: rgba(54, 34, 46, .58);
	backdrop-filter: blur(5px);
}

body.login .login-recovery-modal {
	width: min(480px, 100%);
	margin: 6vh auto 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .9);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(53, 26, 42, .3);
}

body.login .login-recovery-modal > header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 22px;
	border-bottom: 1px solid #eee2e8;
	background: #fff8fb;
}

body.login .login-recovery-modal > header span {
	display: block;
	margin-bottom: 3px;
	color: #ad6d8b;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
}

body.login .login-recovery-modal > header h2 {
	margin: 0;
	color: #654657;
	font-size: 21px;
}

body.login .login-recovery-modal > main {
	padding: 22px;
}

body.login .login-recovery-modal > main > p {
	margin: 0 0 18px;
	color: #685761;
	font-size: 13px;
	line-height: 1.5;
}

body.login .login-recovery-modal label {
	display: block;
	margin-top: 14px;
	text-align: left;
}

body.login .login-recovery-modal label span {
	display: block;
	margin-bottom: 6px;
	color: #4a3842;
	font-size: 13px;
	font-weight: 600;
}

body.login .login-recovery-modal input {
	width: 100%;
	height: 48px;
	padding: 0 14px;
	box-sizing: border-box;
	border: 1px solid #dfd3d9;
	border-radius: 9px;
	background: #f8f5f7;
	font-size: 15px;
}

body.login .login-recovery-modal input:focus {
	border-color: #fd9ec5;
	outline: none;
	box-shadow: 0 0 0 3px rgba(253, 158, 197, .2);
}

body.login .login-recovery-modal > footer {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	padding: 15px 22px;
	border-top: 1px solid #eee2e8;
	background: #fff;
}

body.login .login-recovery-modal > footer button {
	min-height: 42px;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: #eee9ec;
	color: #66545e;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

body.login .login-recovery-modal > footer button.green {
	background: #ee74a3;
	color: #fff;
}

body.login .login-recovery-modal > footer button.login-recovery-cancel {
	background: #d9534f;
	color: #fff;
}

body.login .login-recovery-modal > footer button.login-recovery-cancel:hover {
	background: #c9302c;
}

body.login .login-recovery-modal > footer button:disabled {
	background: #d2bdc6;
	color: #fff;
	cursor: wait;
	opacity: .85;
}

@media screen and (max-width: 900px) {
	body.login {
		justify-content: center;
		padding: 15px;
	}

	body.login #login {
		margin-right: 0;
		padding: 30px 20px;
		background: rgba(255, 255, 255, .85);
		backdrop-filter: blur(15px);
	}

	body.login .login-recovery-overlay {
		padding: 10px;
	}

	body.login .login-recovery-modal {
		margin-top: 2vh;
	}

	body.login .login-recovery-modal > footer {
		align-items: stretch;
		flex-direction: column-reverse;
	}
}



/* HEADER */
#header {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: url(../imagens/topo.jpg) center top repeat-x #f8dedb;
    background-size: auto 65px;
    min-height: 65px;
    padding: 4px 35px;
    border-bottom: 1px solid rgba(255, 255, 255, .45);
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 4px 18px rgba(76, 33, 72, .16);
    z-index: 998;
}

#header > .marca {
    display: flex;
    align-items: center;
    gap: 18px;
}

#header .logo {
    display: block;
    width: 165px;
    height: 45px;
    background: url(../imagens/logo.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    text-indent: -999px;
    overflow: hidden;
}

#header .marca-subtitulo {
    padding-left: 18px;
    border-left: 1px solid rgba(99, 53, 94, .25);
    color: #63355e;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#header > .usuario {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 5px 12px 5px 6px;
    background: rgba(255, 255, 255, .38);
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 28px;
}

#header > .usuario > .foto {
    width: 42px;
    height: 42px;
}

#header > .usuario > .foto > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 50%;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, .75);
}

#header > .usuario > .nome {
    color: #583052;
    line-height: 1.15;
    font-weight: bold;
}

#header > .usuario > .nome > small {
    display: block;
    margin-top: 4px;
    color: #7e5b79;
    font-size: 11px;
    font-weight: 400;
}



/* MENU */
#menu {
    position: fixed;
    width: 300px;
    height: calc(100% - 65px);
    top: 65px;
    left: 0;
    background: #FFF;
    padding: 50px 35px;
	overflow-y: auto;
}

#menu > a {
    display: block;
    position: relative;
    line-height: 46px;
    margin: 2px 0;
    padding: 0 12px;
    border-radius: 7px;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease, transform .2s ease;
}

#menu > a:hover {
    color: #873D87;
    background: #f9edf5;
    transform: translateX(2px);
}

#menu > a.ativo {
    color: #FFF;
    background: linear-gradient(135deg, #A349A3, #d36f9c);
    box-shadow: 0 5px 14px rgba(163, 73, 163, .24);
    font-weight: 600;
}

#menu > a.ativo::before {
    content: "";
    position: absolute;
    top: 11px;
    bottom: 11px;
    left: -35px;
    width: 4px;
    background: #A349A3;
    border-radius: 0 4px 4px 0;
}

#menu > a > span {
    min-width: 20px;
    text-align: center;
    margin-right: 10px;
}

/* Mantém o nome extenso alinhado ao ícone na largura fixa do menu lateral. */
#menu > a[href*="cardiologico"] {
    display: flex;
    min-height: 46px;
    align-items: center;
    font-size: 12px;
    line-height: 1.15;
    white-space: nowrap;
}

#icoMobMenu {
	display: none;
	position: fixed;
	top: 12px;
	right: 35px;
	width: 40px;
	height: 40px;
	background: url(../imagens/ico_mobMenu.png);
	text-indent: -999px;
	overflow: hidden;
	z-index: 999;
}

#icoMobMenu.open {
	background-position: 0 -40px;
}



/* INDEX.PHP */
#pgIndex .colA {
	float: left;
	width: 49%;
}

#pgIndex .colB {
	float: left;
	width: 49%;
	margin-left: 2%;
}

.dashboard-metricas {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 28px;
}

.dashboard-metrica {
	display: flex;
	align-items: center;
	gap: 15px;
	min-height: 98px;
	padding: 18px;
	border: 1px solid #e3e8eb;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(38, 53, 62, .06);
}

.dashboard-metrica > span {
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	display: grid;
	place-items: center;
	border-radius: 12px;
	background: #edf7f5;
	color: #258878;
	font-size: 19px;
}

.dashboard-metrica small,
.dashboard-metrica em {
	display: block;
	color: #707b82;
	font-size: 11px;
	font-style: normal;
	line-height: 1.25;
}

.dashboard-metrica strong {
	display: block;
	margin: 3px 0;
	color: #2d3940;
	font-size: 27px;
	line-height: 1;
}

.dashboard-metrica a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: 4px;
	color: #397d70;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
}

.dashboard-metrica a:hover {
	color: #205e53;
	text-decoration: underline;
}

.dashboard-metrica a > span {
	font-size: 8px;
}

.dashboard-metrica--pacientes > span {
	background: #f3edf7;
	color: #87529a;
}

.dashboard-metrica--consultas > span {
	background: #eef4fb;
	color: #477cb2;
}

.dashboard-metrica--agenda > span {
	background: #fff4df;
	color: #b47717;
}

@media (max-width: 1050px) {
	.dashboard-metricas {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.dashboard-metricas {
		grid-template-columns: 1fr;
	}
}

#pgIndex .resultado.is-today {
	border-left: 4px solid #2e9b78;
	background: #eaf8f2;
	box-shadow: inset 0 0 0 1px rgba(46, 155, 120, .12);
}

.dashboard-hoje {
	display: inline-block;
	margin-left: 6px;
	padding: 2px 5px;
	border-radius: 999px;
	background: #2e9b78;
	color: #fff;
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .04em;
	vertical-align: middle;
}



/* AGENDA.PHP */
#agenda {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 6px;
	padding: 18px;
}

#agenda > .desc {
	display: grid;
	grid-template-columns: auto 1fr auto;
	grid-column: 1 / -1;
	align-items: center;
	gap: 18px;
	margin-bottom: 8px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e1e7e9;
	text-align: center;
	font-size: 13px;
}

#agenda > .desc > .mes {
	margin: 0;
	color: #334148;
	font-size: 19px;
	font-weight: bold;
}

#agenda > .desc > .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 13px;
	border: 1px solid #d9e1e4;
	border-radius: 7px;
	background: #f7f9fa;
	font-size: 10px;
	font-weight: 600;
	text-decoration: none;
}

#agenda > .desc > .btn:hover {
	border-color: #a349a3;
	background: #f9edf5;
	color: #873d87;
}

#agenda > .dia {
	position: relative;
	float: none;
	width: auto;
	min-width: 0;
	min-height: 88px;
	margin: 0;
	border: 1px solid #dbe3e6;
	border-radius: 8px;
	background: #fbfcfc;
	text-align: center;
	overflow: hidden;
}

#agenda > .dia.noBorder {
	border-color: transparent;
	background: transparent;
}

#agenda > a.dia:hover {
	border-color: #c3d0d5;
	background: #f3f6f7;
	text-decoration: none;
}

#agenda > .dia > .ext {
	background: #e9eef0;
	color: #69777e;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: .08em;
	line-height: 23px;
}

#agenda > .dia > .infos {
	display: flex;
	position: static;
	min-height: 64px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 6px;
	transform: none;
}

#agenda > .dia > .infos > .dia {
	color: #344249;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.1;
}

#agenda > .dia > .infos > .desc {
	margin-top: 4px;
	color: #7a878e;
	font-size: 9px;
	line-height: 1.25;
}

#agenda .cor {
	border-color: #e8b5ca;
	background: #fbe3ed !important;
}

#agenda .cor:hover {
	background: #f7d3e2 !important;
}

#agenda > .clear {
	display: none;
}

.resultados .cor {
	background: #FEC5D8 !important;
}

.resultados .cor:hover {
	background: #FEAEC9 !important;
}



/* CONFIGURACOES.PHP */
#pgConfiguracoes #campos > div > label.small {
	width: 11%;
}

#pgConfiguracoes #campos > div > a {
	float: left;
	margin-top: 35px;
	margin-left: 2%;
	width: 5%;
	background: #C1392B;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	line-height: 45px;
}

#pgConfiguracoes #campos > div > a:hover {
	background: #A23124;
	text-decoration: none;
}

#pgConfiguracoes #campos > div > a.noRemove {
	background: #CCC;
}



/* EXAMES.PHP */
#pgExames #anexos > div > label.large {
	width: 93%;
}

#pgExames #anexos > div > a {
	float: left;
	margin-top: 10px;
	margin-left: 2%;
	width: 5%;
	background: #C1392B;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	line-height: 45px;
}

#pgExames #anexos > div > a:hover {
	background: #A23124;
	text-decoration: none;
}

#pgExames #anexos > div > a.noRemove {
	background: #CCC;
}



/* PACIENTES.PHP */
#pgPacientes .fotosProd {
	float: left;
	width: 10%;
	margin-top: 10px;
}

#pgPacientes .camposProd {
	float: left;
	width: 88%;
	margin-left: 2%;
}

#boxFoto {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .8);
	z-index: 999;
}

#boxFoto > a {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 48px;
	color: #FFF;
	text-decoration: none;
	opacity: .8;
}

#boxFoto > a:hover {
	text-decoration: none;
	opacity: 1;
}

#boxFoto > .foto {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 900px;
	max-height: 90%;
	padding: 50px;
	background: #FFF;
	transform: translate(-50%, -50%);
	border-radius: 10px;
}

#boxFoto > .foto > img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

#pgPacientes .visualizarPaciente {
	position: relative;
}

#pgPacientes .visualizarPaciente > .foto {
	position: absolute;
	right: 35px;
	top: 35px;
	width: 267px;
	height: 150px;
	overflow: hidden;
}

#pgPacientes .visualizarPaciente > .foto > a {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
}

#pgPacientes .visualizarPaciente > .foto > a > img {
	display: block;
	width: 100%;
}



/* IFRAME */
#boxIframe {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .8);
	z-index: 1000;
}

#boxIframe > a {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 48px;
	color: #FFF;
	text-decoration: none;
	opacity: .8;
}

#boxIframe > a:hover {
	text-decoration: none;
	opacity: 1;
}

#boxIframe > .iframe {
	position: absolute;
	top: 5%;
	left: 50%;
	width: 900px;
	height: 90%;
	background: #FFF;
	transform: translateX(-50%);
	border-radius: 10px;
}

#boxIframe > .iframe > iframe {
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 10px;
}

body.modalAberto {
	overflow: hidden;
}

/* MODAL DE VISUALIZAÇÃO */
.visualizacao-overlay {
	display: none;
	position: fixed;
	inset: 0;
	padding: 4vh 20px;
	background: rgba(19, 25, 31, .72);
	backdrop-filter: blur(4px);
	z-index: 1100;
	overflow-y: auto;
}

.nova-consulta-modal {
	max-width: 720px;
}

.nova-consulta-modal main {
	padding: 28px;
}

.nova-consulta-modal .buscaInput {
	min-height: 170px;
	margin: 0;
}

.nova-consulta-modal .buscaInput label {
	margin-top: 0;
}

.nova-consulta-modal .buscaInput input[type="text"] {
	width: 100%;
	min-height: 54px;
	padding: 0 16px;
	border-radius: 9px;
	font-size: 16px;
}

.nova-consulta-modal .buscaInput .result {
	margin-top: 8px;
	font-size: 14px;
}

.nova-consulta-modal footer {
	padding: 16px 28px;
}

.consulta-status-rascunho {
	display: inline-block;
	margin-left: 10px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #fff3cd;
	color: #7a5a00;
	font-size: 12px;
	font-weight: 700;
	vertical-align: middle;
}

.consultas-rascunhos {
	margin-bottom: 18px;
	padding: 18px 22px;
	border-left: 4px solid #e3ad20;
}

.consultas-rascunhos__titulo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 12px;
}

.consultas-rascunhos__titulo h2,
.consultas-rascunhos__titulo p {
	margin: 0;
}

.consultas-rascunhos__titulo p {
	margin-top: 3px;
	color: #6c7480;
	font-size: 13px;
}

.consultas-rascunhos__titulo > span {
	min-width: 28px;
	padding: 5px 8px;
	border-radius: 999px;
	background: #fff3cd;
	color: #7a5a00;
	text-align: center;
	font-weight: 700;
}

.consultas-rascunhos__lista {
	display: grid;
	gap: 8px;
}

.consultas-rascunhos__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	padding: 12px 14px;
	border: 1px solid #eadfbf;
	border-radius: 8px;
	background: #fffdf7;
	color: #3d4248;
	text-decoration: none;
}

.consultas-rascunhos__item:hover {
	border-color: #d4a82d;
	background: #fff9e8;
}

.consultas-rascunhos__item > a {
	min-width: 0;
	flex: 1;
	color: #3d4248;
	text-decoration: none;
}

.consultas-rascunhos__lista small {
	display: block;
	margin-top: 3px;
	color: #747b83;
}

.consultas-rascunhos__acoes {
	display: flex;
	align-items: center;
	gap: 12px;
}

.consultas-rascunhos__acoes > a,
.consultas-rascunhos__acoes > button {
	color: #8a680a;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}

.consultas-rascunhos__acoes > button {
	padding: 4px 0;
	border: 0;
	background: transparent;
	color: #b42318;
	cursor: pointer;
}

@media (max-width: 640px) {
	.consultas-rascunhos__item,
	.consultas-rascunhos__acoes {
		align-items: flex-start;
	}

	.consultas-rascunhos__item {
		flex-direction: column;
	}
}

.visualizacao-modal {
	width: min(920px, 100%);
	max-height: 92vh;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	background: #f7f9fa;
	border-radius: 16px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
	overflow: hidden;
}

.visualizacao-modal__header {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 22px 26px;
	background: #fff;
	border-bottom: 1px solid #e3e8eb;
}

.visualizacao-modal__icone {
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	display: grid;
	place-items: center;
	border-radius: 13px;
	background: #e7f5f2;
	color: #248b78;
	font-size: 21px;
}

.visualizacao-modal__titulos {
	min-width: 0;
	flex: 1;
}

.visualizacao-modal__eyebrow {
	display: block;
	margin-bottom: 2px;
	color: #73818a;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .14em;
}

.visualizacao-modal__titulos h2 {
	margin: 0;
	color: #27343b;
	font-size: 23px;
	line-height: 1.2;
}

.visualizacao-modal__titulos p {
	margin: 4px 0 0;
	color: #718089;
	font-size: 13px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.visualizacao-modal__fechar {
	width: 42px;
	height: 42px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #eef2f4;
	color: #53616a;
	font: 300 30px/40px Arial, sans-serif;
	cursor: pointer;
}

.visualizacao-modal__fechar:hover,
.visualizacao-modal__fechar:focus {
	background: #dde5e8;
	color: #25323a;
}

.visualizacao-modal__conteudo {
	padding: 24px 26px 30px;
	overflow-y: auto;
}

.paciente-peso-alterar {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 9px;
	padding: 8px 12px;
	border: 0;
	border-radius: 7px;
	background: #2b9b86;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
}

.paciente-peso-alterar:hover,
.paciente-peso-alterar:focus {
	background: #217c6b;
}

.paciente-peso-acao {
	padding-top: 17px;
	box-sizing: border-box;
}

.paciente-peso-acao .paciente-peso-alterar {
	margin-top: 0;
}

.peso-modal {
	width: min(560px, 100%);
}

.peso-modal__conteudo label,
.peso-modal__conteudo label > span {
	display: block;
}

.peso-modal__conteudo label > span {
	margin-bottom: 8px;
	color: #53616a;
	font-size: 13px;
	font-weight: 700;
}

.peso-modal__conteudo input[type="text"] {
	width: 100%;
	box-sizing: border-box;
	min-height: 50px;
	padding: 0 14px;
	border: 1px solid #ccd6da;
	border-radius: 8px;
	background: #fff;
	font-size: 18px;
}

.peso-modal__mensagem {
	display: none;
	margin-top: 14px;
	padding: 10px 12px;
	border-radius: 7px;
	font-size: 13px;
}

.peso-modal__mensagem.is-error,
.peso-modal__mensagem.is-success {
	display: block;
}

.peso-modal__mensagem.is-error {
	background: #fce8e8;
	color: #a12d2d;
}

.peso-modal__mensagem.is-success {
	background: #e6f5ef;
	color: #23745f;
}

.peso-modal__salvar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: #2b9b86;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.peso-modal__salvar:disabled {
	cursor: wait;
	opacity: .6;
}

.resumo-ia-modal__resultado {
	min-height: 180px;
	padding: 22px;
	border: 1px solid #e4e8eb;
	border-radius: 10px;
	background: #f8fafb;
	line-height: 1.65;
	white-space: normal;
}

.resumo-ia-modal__resultado small {
	display: block;
}

.resumo-ia-modal__saldo {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 12px;
	padding: 8px 12px;
	border: 1px solid #d8e4dc;
	border-radius: 999px;
	background: #f0f8f3;
	color: #317249;
	font-size: 12px;
}

.resumo-ia-modal__saldo.is-empty,
.resumo-ia-modal__saldo.is-error {
	border-color: #efd0d0;
	background: #fff5f5;
	color: #8a3e3e;
}

.resumo-ia-confirmacao {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 12px 4px;
}

.resumo-ia-confirmacao > .fas {
	display: grid;
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	place-items: center;
	border-radius: 13px;
	background: #fff0bf;
	color: #a87400;
	font-size: 19px;
}

.resumo-ia-confirmacao strong {
	display: block;
	margin-bottom: 5px;
	color: #344249;
	font-size: 17px;
}

.resumo-ia-confirmacao p {
	margin: 0;
	color: #66757d;
}

.resumo-ia-modal__resultado small {
	display: block;
	margin-top: 18px;
	padding-top: 12px;
	border-top: 1px solid #dfe6e9;
	color: #777;
	white-space: normal;
}

.resumo-ia-conteudo h3 {
	margin: 0 0 10px;
	color: #63355e;
	font-size: 17px;
	line-height: 1.35;
}

.resumo-ia-conteudo p {
	margin: 0 0 10px;
}

.resumo-ia-conteudo ul,
.resumo-ia-conteudo ol {
	margin: 0 0 12px;
	padding-left: 22px;
}

.resumo-ia-conteudo li + li {
	margin-top: 5px;
}

.resumo-ia-conteudo strong {
	display: inline;
	margin: 0;
	color: inherit;
	font-size: inherit;
}

.resumo-ia-conteudo hr {
	height: 1px;
	margin: 18px 0;
	border: 0;
	background: #dfe5e8;
}

.visualizacao-secao {
	margin-bottom: 20px;
	padding: 20px;
	background: #fff;
	border: 1px solid #e4e9ec;
	border-radius: 12px;
}

.visualizacao-secao h3 {
	margin: 0 0 16px;
	color: #2d3b43;
	font-size: 15px;
}

.visualizacao-grade {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 24px;
}

.visualizacao-campo {
	min-width: 0;
}

.visualizacao-campo--largo {
	grid-column: 1 / -1;
}

.visualizacao-campo span {
	display: block;
	margin-bottom: 4px;
	color: #7a8890;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.visualizacao-campo strong {
	display: block;
	color: #2d3940;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.visualizacao-documento__texto {
	color: #344249;
	font-size: 14px;
	line-height: 1.65;
}

.visualizacao-aviso {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	padding: 13px 16px;
	border-radius: 10px;
	background: #fff7df;
	color: #79601e;
	font-size: 13px;
}

.visualizacao-anexos {
	display: grid;
	gap: 8px;
}

.visualizacao-anexos a {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 13px;
	border-radius: 8px;
	background: #f1f5f6;
	color: #287d6d;
	text-decoration: none;
}

.visualizacao-assinatura {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 26px 0 4px;
	color: #56646c;
	font-size: 12px;
	text-align: center;
}

.visualizacao-assinatura img {
	width: 150px;
	max-height: 70px;
	object-fit: contain;
	margin-bottom: 5px;
}

.visualizacao-assinatura strong {
	color: #344249;
	font-size: 13px;
}

.visualizacao-modal__rodape {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 26px;
	background: #fff;
	border-top: 1px solid #e3e8eb;
}

.visualizacao-modal__acoes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.visualizacao-acao,
.visualizacao-modal__cancelar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.visualizacao-acao {
	background: #2b9b86;
	color: #fff;
	min-height: 34px;
	padding: 0 12px;
	font-size: 11px;
	line-height: 1;
	white-space: nowrap;
}

.visualizacao-acao--danger {
	background: #c5221f;
}

.visualizacao-acao--danger:hover,
.visualizacao-acao--danger:focus {
	background: #a50e0e;
	color: #fff;
}

.visualizacao-modal__cancelar {
	background: #eef2f4;
	color: #506069;
}

.resumo-ia-modal__gerar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: #7653a4;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.resumo-ia-modal__gerar:hover {
	background: #65458d;
}

.resumo-ia-modal__gerar:disabled {
	cursor: not-allowed;
	opacity: .55;
}

.visualizacao-carregando,
.visualizacao-erro {
	min-height: 250px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	color: #6f7e86;
	text-align: center;
}

.visualizacao-carregando > span,
.visualizacao-erro > span {
	color: #2b9b86;
	font-size: 28px;
}

@media screen and (max-width: 700px) {
	.config-form-overlay {
		align-items: flex-end;
		padding: 0;
	}

	.config-form-modal,
	.config-form-modal--wide {
		width: 100%;
		max-height: 96vh;
		border-radius: 15px 15px 0 0;
	}

	.config-form-modal__body {
		padding: 16px;
	}

	.config-modal-form.bgBox {
		padding: 18px;
	}

	.config-metrics {
		grid-template-columns: 1fr;
	}

	.config-metric {
		min-height: 96px;
		padding: 18px;
	}

	.listing-filter-overlay {
		align-items: flex-end;
		padding: 0;
	}

	.listing-filter-modal {
		width: 100%;
		border-radius: 14px 14px 0 0;
	}

	.listing-filter-modal__body .listing-date-fields {
		flex-direction: column;
		gap: 14px;
	}

	.listing-filter-modal__footer {
		align-items: stretch;
		flex-direction: column-reverse;
	}

	.listing-filter-modal__footer > div {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.visualizacao-overlay {
		padding: 0;
	}

	.visualizacao-modal {
		width: 100%;
		min-height: 100%;
		max-height: none;
		border-radius: 0;
	}

	.visualizacao-modal__header,
	.visualizacao-modal__conteudo,
	.visualizacao-modal__rodape {
		padding-left: 18px;
		padding-right: 18px;
	}

	.visualizacao-modal__rodape {
		align-items: stretch;
		flex-direction: column;
	}

	.visualizacao-modal__acoes {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.visualizacao-modal__icone {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
	}

	.visualizacao-modal__titulos h2 {
		font-size: 20px;
	}

	.visualizacao-grade {
		grid-template-columns: 1fr;
	}

	.visualizacao-campo--largo {
		grid-column: auto;
	}
}

body.iframe {
	background: transparent;
}

body.iframe > #header, body.iframe > #menu, body.iframe #icoMobMenu {
	display: none;
}

body.iframe > #content {
	width: 100%;
	margin: 0;
	padding: 50px;
}

body.iframe > #content > .boxTitulo > a {
	display: none;
}

body.iframe .bgBox {
	box-shadow: none;
	padding: 0;
	border-radius: 0;
}

body.iframe .bgBox.resultados {
	display: none;
}



/* CLIENTE */
body.cliente > #header, body.cliente > #menu {
	display: none;
}

body.cliente > #content {
	width: 90%;
	padding: 50px;
	max-width: 1200px;
	margin: 0 auto;
}



/* FOOTER */
#footer {
    position: fixed;
	bottom: 0;
	left: 0;
    width: 100%;
	height: 30px;
    background: url(../imagens/bgFooter.jpg) center center no-repeat #FEAEC9;
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    z-index: 998;
}










.mobHide {
	display: block !important;
}

.mobShow {
	display: none !important;
}










@media screen and (max-width: 1200px) {
	.bgBox.resultados.agenda-lista > header,
	.bgBox.resultados.agenda-lista > .resultado.mobHide {
		display: none !important;
	}

	.bgBox.resultados.lista-colunas-fixas > header,
	.bgBox.resultados.lista-colunas-fixas > .resultado.mobHide {
		display: none !important;
	}

	.bgBox.resultados.consultas-lista > header,
	.bgBox.resultados.consultas-lista > .resultado.mobHide {
		display: none !important;
	}

	.config-list-toolbar > .boxBotoes.mobHide {
		display: none !important;
	}

	.config-list-toolbar > .boxBotoes.mobShow {
		display: block !important;
	}

	.listing-date-fields {
		display: block;
	}

	.listing-date-fields > label + label {
		margin-top: 15px;
	}

	.listing-pagination {
		flex-wrap: wrap;
	}

	.listing-pagination nav {
		display: flex;
		flex-wrap: wrap;
	}

	.mobHide {
		display: none  !important;
	}
	
	.mobShow {
		display: block !important;
	}
	
	#icoMobMenu {
		display: block;
	}
	
	form label.col, form .label.col {
		float: none;
		width: 100% !important;
		margin-left: 0 !important;
	}

	.paciente-peso-espaco {
		display: none;
	}

	.paciente-peso-acao {
		padding-top: 4px;
	}
	
	form .btnCenter > button {
		display: block;
		width: 100%;
		margin: 20px 0 0 0;
	}
	
	.bgBox.resultados > header, .bgBox.resultados > footer {
		display: none;
	}

	.bgBox.resultados > header.config-result-header {
		display: flex;
		padding: 10px 0 10px 20px;
		line-height: 1;
	}

	.config-result-header .col {
		display: block;
		width: auto !important;
		padding: 0;
	}
	
	.bgBox.resultados > .resultado {
		border-bottom: 1px solid #CCC;
	}
	
	#header > .usuario {
		display: none;
	}

	#header .marca-subtitulo {
		display: none;
	}
	
	#menu {
		display: none;
		width: 100%;
		overflow-y: scroll;
		padding: 35px;
		z-index: 998;
	}

	#menu > a[href*="cardiologico"] {
		font-size: inherit;
	}
	
	#content {
		padding: 100px 3% 35px 3%;
	}

	body.app-page #content {
		width: 100%;
		margin: 0;
		padding: 88px 3% 45px;
	}
	
	#content > .boxTitulo > h1 {
		float: none;
		text-align: center;
	}
	
	#content > .boxTitulo > a {
		float: none;
		display: block;
		width: 100%;
		margin: 10px 0;
		text-align: center;
	}
	
	body.login #login {
		width: 94%;
	}
	
	#pgIndex .colA, #pgIndex .colB {
		float: none;
		width: 100%;
		margin-left: 0;
	}
	
	#pgIndex .colB {
		margin-top: 30px;
	}
	
	#pgExames #anexos > div > a {
		float: none;
		display: block;
		width: 100%;
	}
	
	#boxIframe > .iframe {
		width: 94%;
	}
	
	#boxIframe > a {
		top: 6%;
		right: 15px;
		padding: 5px;
		background: #FFF;
		z-index: 1;
		color: #666;
		opacity: 1;
	}
	#agenda > .desc {
		grid-template-columns: auto 1fr auto;
		font-size: 13px;
	}
	
	#agenda > .desc > .mes {
		margin: 0;
	}
	
	#agenda {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	#agenda > .dia.noBorder {
		display: none;
	}

	#agenda > .dia {
		float: none;
		display: block;
		margin: 0;
		width: 100%;
	}
	
	#agenda > .dia > .infos {
		position: static;
		padding: 6px;
		transform: none;
	}
	
}

@media screen and (max-width: 650px) {
	#agenda {
		grid-template-columns: 1fr;
		padding: 12px;
	}

	#agenda > .desc {
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}

	#agenda > .desc > .mes {
		grid-column: 1 / -1;
		grid-row: 1;
		margin-bottom: 3px;
	}

	#agenda > .desc > .btn:first-child {
		grid-column: 1;
		grid-row: 2;
	}

	#agenda > .desc > .btn:last-child {
		grid-column: 2;
		grid-row: 2;
	}

	#agenda > .dia {
		display: grid;
		grid-template-columns: 78px 1fr;
		min-height: 0;
	}

	#agenda > .dia > .ext {
		display: grid;
		place-items: center;
	}

	#agenda > .dia > .infos {
		min-height: 54px;
		align-items: center;
		justify-content: flex-start;
		flex-direction: row;
		gap: 10px;
		padding: 8px 12px;
	}

	#agenda > .dia > .infos > .desc {
		margin-top: 0;
		font-size: 10px;
	}

	.historico-compacto__cabecalho {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.historico-compacto__grade {
		grid-template-columns: 1fr;
	}

	.historico-completo__grade {
		grid-template-columns: 1fr;
	}

	.historico-compacto__acoes {
		width: 100%;
		align-items: stretch;
		flex-direction: column;
	}

	.historico-compacto__acoes .ai-summary-button {
		width: 100%;
	}

	.historico-compacto__acoes .historico-anteriores-button,
	.historico-compacto__cabecalho > .historico-anteriores-button {
		width: 100%;
	}

	.weight-history__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.weight-history__list {
		grid-template-columns: 1fr;
	}

	body.app-page form.bgBox {
		padding: 16px;
	}

	body.app-page form .btnCenter {
		bottom: 30px;
		margin: 20px -16px -16px;
		padding: 10px 16px;
	}

	.listing-pagination {
		flex-direction: column;
		align-items: stretch;
		padding: 12px;
	}

	.listing-pagination form label,
	.listing-pagination nav {
		justify-content: center;
	}

	.listing-range {
		justify-content: center;
	}

	.listing-pagination nav a {
		min-width: 32px;
		height: 32px;
	}
}

/* Exame cardiológico */
#pgCardiologico .cardio-local-note {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin: 0 0 20px;
    padding: 16px 18px;
    border: 1px solid #b9e0d2;
    border-radius: 8px;
    background: #effaf6;
    color: #275f4d;
}

#pgCardiologico .cardio-local-note > .fas {
    margin-top: 2px;
    color: #278365;
    font-size: 24px;
}

#pgCardiologico .cardio-local-note p,
#pgCardiologico .cardio-help,
#pgCardiologico .cardio-approval p,
#pgCardiologico .cardio-approved-note p {
    margin: 4px 0 0;
}

#pgCardiologico .cardio-local-note--compact {
    margin-bottom: 16px;
    padding: 12px 14px;
}

#pgCardiologico .cardio-list {
    display: grid;
    gap: 10px;
}

#pgCardiologico .cardio-list__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0;
    color: inherit;
    text-decoration: none;
    transition: border-color .15s ease, transform .15s ease;
}

#pgCardiologico .cardio-list__item:hover {
    border-color: #d98ab5;
    transform: translateY(-1px);
}

#pgCardiologico .cardio-list__item strong,
#pgCardiologico .cardio-list__item small {
    display: block;
}

#pgCardiologico .cardio-list__item small {
    margin-top: 4px;
    color: #756873;
}

#pgCardiologico .cardio-id {
    display: inline-block;
    min-width: 48px;
    color: #a34983;
    font-size: 12px;
    font-weight: bold;
}

#pgCardiologico .cardio-list__meta {
    display: flex;
    align-items: center;
    gap: 16px;
    white-space: nowrap;
}

#pgCardiologico .cardio-status {
    display: inline-block;
    padding: 5px 9px;
    border-radius: 999px;
    background: #eee;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
}

#pgCardiologico .cardio-status--conferencia {
    background: #fff1c9;
    color: #805d08;
}

#pgCardiologico .cardio-status--aprovado {
    background: #d8f2e8;
    color: #176448;
}

#pgCardiologico .cardio-status--cancelado {
    background: #f4dddd;
    color: #8b3434;
}

#pgCardiologico .cardio-grid {
    display: grid;
    gap: 14px;
}

#pgCardiologico .cardio-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

#pgCardiologico .cardio-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

#pgCardiologico .cardio-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

#pgCardiologico .cardio-summary .bgBox {
    margin: 0;
    padding: 12px 14px;
}

#pgCardiologico .cardio-summary small,
#pgCardiologico .cardio-summary strong,
#pgCardiologico .cardio-source small,
#pgCardiologico .cardio-source strong {
    display: block;
}

#pgCardiologico .cardio-summary small,
#pgCardiologico .cardio-source small {
    margin-bottom: 5px;
    color: #786a75;
    font-size: 11px;
    text-transform: uppercase;
}

#pgCardiologico .cardio-summary__date {
    display: block;
}

#pgCardiologico .cardio-summary__date input {
    width: 100%;
    min-height: 34px;
    margin: 0;
    padding: 6px 8px;
    border: 1px solid #d6dfe2;
    border-radius: 6px;
    background: #fff;
    color: #33444c;
    font-weight: 600;
}

#pgCardiologico .cardio-summary__date input:disabled {
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    opacity: 1;
}

#pgCardiologico .cardio-delete-exam {
    color: #b13c49;
}

body.app-page #content > .boxTitulo > a.cardio-delete-exam--header {
    background: #b13c49;
    color: #fff;
}

body.app-page #content > .boxTitulo > a.cardio-delete-exam--header:hover {
    background: #912f3a;
}

#pgCardiologico .cardio-source code {
    font-size: 12px;
}

#pgCardiologico details.cardio-source {
    margin-bottom: 12px;
    padding: 0;
}

#pgCardiologico .cardio-registration {
    margin-bottom: 12px;
    padding: 0;
}

#pgCardiologico .cardio-registration .cardio-source__heading {
    padding: 9px 14px;
}

#pgCardiologico .cardio-source summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 13px 16px;
    cursor: pointer;
    list-style: none;
}

#pgCardiologico .cardio-source__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 13px 16px;
}

#pgCardiologico .cardio-source__heading > span {
    font-weight: 600;
}

#pgCardiologico .cardio-source__heading > small {
    min-width: 0;
    margin: 0 0 0 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

#pgCardiologico .cardio-source summary::-webkit-details-marker {
    display: none;
}

#pgCardiologico .cardio-source summary::after {
    color: #a34983;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f078";
    transition: transform .18s ease;
}

#pgCardiologico .cardio-source[open] summary::after {
    transform: rotate(180deg);
}

#pgCardiologico .cardio-source summary > span {
    font-weight: 600;
}

#pgCardiologico .cardio-source summary > small {
    min-width: 0;
    margin: 0 0 0 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

#pgCardiologico .cardio-source > .cardio-grid {
    margin: 0 16px;
    padding: 14px 0 16px;
    border-top: 1px solid #eadfe5;
}

#pgCardiologico .cardio-registration__section {
    grid-column: 1 / -1;
    margin: 0;
    color: #684260;
    font-size: 11px;
    line-height: 1.2;
    text-transform: uppercase;
}

#pgCardiologico .cardio-registration > .cardio-grid {
    gap: 8px 14px;
    padding: 9px 0 11px;
}

#pgCardiologico .cardio-registration .cardio-grid p {
    min-width: 0;
    margin: 0;
}

#pgCardiologico .cardio-registration .cardio-grid small {
    margin-bottom: 2px;
    font-size: 10px;
}

#pgCardiologico .cardio-registration .cardio-grid strong {
    overflow-wrap: anywhere;
    font-size: 12px;
    line-height: 1.25;
}

#pgCardiologico .cardio-registration__span-2 {
    grid-column: span 2;
}

#pgCardiologico .cardio-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 10px;
}

#pgCardiologico .cardio-panel-heading h2 {
    margin: 0;
}

#pgCardiologico .cardio-panel-heading > span {
    flex: 0 0 auto;
    padding: 5px 9px;
    border-radius: 999px;
    background: #f3eaf0;
    color: #765467;
    font-size: 11px;
    font-weight: 600;
}

#pgCardiologico .cardio-report-heading {
    align-items: center;
}

#pgCardiologico .cardio-report-actions {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}

#pgCardiologico .cardio-ai-button {
    display: inline-flex;
    width: auto;
    min-height: 44px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0 19px;
    border: 1px solid #755075;
    border-radius: 7px;
    background: #684260;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    cursor: pointer;
}

#pgCardiologico .cardio-clear-button {
    display: inline-flex;
    width: auto;
    min-height: 44px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0 19px;
    border: 1px solid #b36a75;
    border-radius: 7px;
    background: #fff;
    color: #9b3f4d;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    cursor: pointer;
}

#pgCardiologico .cardio-clear-button:hover {
    background: #f9edf0;
}

#pgCardiologico .cardio-ai-button:hover {
    background: #56364f;
}

#pgCardiologico .cardio-ai-button:disabled {
    cursor: wait;
    opacity: .65;
}

#pgCardiologico .cardio-ai-button.is-loading .fas {
    animation: cardio-ai-spin .8s linear infinite;
}

#pgCardiologico .cardio-ai-status {
    flex: 0 1 auto;
    max-width: 440px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #f3eaf0;
    color: #765467;
    font-size: 11px;
    font-weight: 600;
    white-space: normal;
    text-align: right;
}

#pgCardiologico .cardio-ai-status:empty {
    display: none;
}

#pgCardiologico .cardio-ai-status.is-success {
    background: #e9f6ef;
    color: #2f7652;
}

#pgCardiologico .cardio-ai-status.is-error {
    background: #fff0f0;
    color: #a23d3d;
}

#pgCardiologico .cardio-ai-overlay {
    z-index: 1300;
}

#pgCardiologico .cardio-ai-modal {
    width: min(620px, 100%);
}

#pgCardiologico .cardio-ai-modal__icon {
    background: #f0e9f7;
    color: #684260;
}

#pgCardiologico .cardio-ai-modal__content > p {
    margin: 0 0 16px;
    color: #4f5c63;
    font-size: 14px;
    line-height: 1.6;
}

#pgCardiologico .cardio-ai-modal__content ul {
    margin: 0;
    padding: 14px 18px 14px 36px;
    border-radius: 9px;
    background: #f6f2f8;
    color: #584b55;
}

#pgCardiologico .cardio-ai-modal__content li + li {
    margin-top: 8px;
}

#pgCardiologico .cardio-ai-modal__warning {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 16px;
    padding: 12px 14px;
    border: 1px solid #ecd69b;
    border-radius: 8px;
    background: #fff9e9;
    color: #6e5718;
    font-size: 12px;
    line-height: 1.5;
}

#pgCardiologico .cardio-ai-modal__warning .fas {
    margin-top: 2px;
    color: #b8860b;
}

#pgCardiologico .cardio-ai-modal__confirm {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 20px;
    border: 0;
    border-radius: 8px;
    background: #684260;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

#pgCardiologico .cardio-ai-modal__confirm:hover,
#pgCardiologico .cardio-ai-modal__confirm:focus {
    background: #56364f;
}

@keyframes cardio-ai-spin {
    to {
        transform: rotate(360deg);
    }
}

#pgCardiologico .cardio-measure-panel,
#pgCardiologico .cardio-report-editor,
#pgCardiologico .cardio-image-gallery {
    padding: 14px;
}

#pgCardiologico .cardio-image-gallery__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(135px, 1fr));
    gap: 10px;
}

#pgCardiologico .cardio-image-card {
    min-width: 0;
    overflow: hidden;
    border: 2px solid #ded7db;
    border-radius: 9px;
    background: #f8f6f7;
    opacity: .62;
    transition: border-color .15s ease, box-shadow .15s ease, opacity .15s ease;
}

#pgCardiologico .cardio-image-card.is-selected {
    border-color: #4da775;
    box-shadow: 0 0 0 2px rgba(77, 167, 117, .12);
    opacity: 1;
}

#pgCardiologico .cardio-image-card__preview {
    display: block;
    position: relative;
    height: 112px;
    overflow: hidden;
    background: #171b1d;
    text-decoration: none;
}

#pgCardiologico .cardio-image-card__preview img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#pgCardiologico .cardio-image-card__preview > .fas {
    display: inline-flex;
    position: absolute;
    right: 7px;
    bottom: 7px;
    width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    color: #684260;
    font-size: 11px;
}

#pgCardiologico .cardio-image-card__selection {
    display: grid;
    width: auto;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 8px;
    cursor: pointer;
}

#pgCardiologico .cardio-image-card__selection input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #3e9566;
}

#pgCardiologico .cardio-image-card__selection > span {
    color: #5f686c;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
}

#pgCardiologico .cardio-image-gallery__empty {
    margin: 0;
    color: #788389;
}

#pgCardiologico .cardio-image-modal-overlay {
    z-index: 1400;
    align-items: center;
    justify-content: center;
}

#pgCardiologico .cardio-image-modal {
    width: min(1050px, 96vw);
    overflow: hidden;
    border-radius: 10px;
    background: #111517;
    box-shadow: 0 20px 65px rgba(0, 0, 0, .38);
}

#pgCardiologico .cardio-image-modal__header {
    display: flex;
    min-height: 48px;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 8px 14px;
    background: #fff;
}

#pgCardiologico .cardio-image-modal__header h2 {
    margin: 0;
    color: #59444f;
    font-size: 15px;
}

#pgCardiologico .cardio-image-modal__close {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f0e8ec;
    color: #684260;
    font-size: 24px;
    line-height: 34px;
    cursor: pointer;
}

#pgCardiologico .cardio-image-modal__body {
    display: flex;
    min-height: 220px;
    align-items: center;
    justify-content: center;
    padding: 12px;
}

#pgCardiologico .cardio-image-modal__body img {
    display: block;
    max-width: 100%;
    max-height: calc(92vh - 90px);
    object-fit: contain;
}

#pgCardiologico .cardio-measure-groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 10px;
}

#pgCardiologico .cardio-measure-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 10px;
}

#pgCardiologico .cardio-measure-group {
    --cardio-group-color: #8d5b78;
    --cardio-group-border: #dfcbd6;
    --cardio-group-background: #faf3f7;
    align-self: start;
    margin: 0;
    overflow: visible;
    border: 2px solid var(--cardio-group-border);
    border-radius: 9px;
    background: #fff;
    transition: border-color .15s ease, box-shadow .15s ease;
}

#pgCardiologico .cardio-measure-group--2 {
    --cardio-group-color: #3f6f9f;
    --cardio-group-border: #c8d9ea;
    --cardio-group-background: #f1f7fc;
}

#pgCardiologico .cardio-measure-group--3 {
    --cardio-group-color: #9a671f;
    --cardio-group-border: #ead5b5;
    --cardio-group-background: #fff8ec;
}

#pgCardiologico .cardio-measure-group--4 {
    --cardio-group-color: #397b75;
    --cardio-group-border: #bdded9;
    --cardio-group-background: #eff9f7;
}

#pgCardiologico .cardio-measure-group--5 {
    --cardio-group-color: #a55364;
    --cardio-group-border: #e8c7cf;
    --cardio-group-background: #fdf3f5;
}

#pgCardiologico .cardio-measure-group--6 {
    --cardio-group-color: #6658a3;
    --cardio-group-border: #d4cdef;
    --cardio-group-background: #f6f3fc;
}

#pgCardiologico .cardio-measure-group--7 {
    --cardio-group-color: #7d6835;
    --cardio-group-border: #dfd2ae;
    --cardio-group-background: #fbf8ed;
}

#pgCardiologico .cardio-measure-group--8 {
    --cardio-group-color: #39788e;
    --cardio-group-border: #c4dde6;
    --cardio-group-background: #f0f8fa;
}

#pgCardiologico .cardio-measure-group--9 {
    --cardio-group-color: #59666b;
    --cardio-group-border: #ccd5d8;
    --cardio-group-background: #f3f6f7;
}

#pgCardiologico .cardio-measure-group.is-checked {
    border-color: #4da775;
    box-shadow: 0 0 0 2px rgba(77, 167, 117, .12);
}

#pgCardiologico .cardio-measure-group__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 10px;
    border-bottom: 1px solid #eadfe5;
    background: var(--cardio-group-background);
}

#pgCardiologico .cardio-measure-group__header h3 {
    margin: 0;
    color: var(--cardio-group-color);
    font-size: 14px;
}

#pgCardiologico .cardio-measure-group__header small {
    color: #8a7882;
    font-size: 10px;
}

#pgCardiologico .cardio-measure-group__header .cardio-group-check {
    display: flex;
    width: auto;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 0;
    border: 0;
    cursor: pointer;
}

#pgCardiologico .cardio-measure-group__header .cardio-group-check > span {
    margin: 0;
    color: #725d69;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
}

#pgCardiologico .cardio-group-check input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--cardio-group-color);
}

#pgCardiologico .cardio-measure-group.is-checked .cardio-group-check input[type="checkbox"] {
    accent-color: #3e9566;
}

#pgCardiologico .cardio-measure-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    padding: 7px;
}

#pgCardiologico .cardio-measure-item {
    display: block;
    position: relative;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 7px;
    border: 1px solid #eee5ea;
    border-radius: 7px;
    background: #fdfbfc;
}

#pgCardiologico .cardio-measure-item__label {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    margin: 0 0 6px;
    overflow: visible;
    color: #66535e;
    font-size: 10px;
    font-weight: 600;
    white-space: nowrap;
}

#pgCardiologico .cardio-measure-item__name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

#pgCardiologico .cardio-measure-item__edited {
    margin-left: auto;
}

#pgCardiologico .cardio-measure-item__label .fas {
    flex: 0 0 auto;
    color: #a34983;
    font-size: 9px;
}

#pgCardiologico .cardio-measure-item__fields {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(52px, .8fr);
    gap: 5px;
}

#pgCardiologico .cardio-measure-item__fields input {
    width: 100%;
    min-width: 0;
    height: 36px;
    padding: 8px;
}

#pgCardiologico .cardio-reference__status {
    flex: 0 0 auto;
    padding: 2px 5px;
    border-radius: 999px;
    background: #e8edf0;
    color: #52616a;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

#pgCardiologico .cardio-reference__status.cardio-reference--referencia {
    background: #dff3e7;
    color: #28704a;
}

#pgCardiologico .cardio-reference__status.cardio-reference--abaixo,
#pgCardiologico .cardio-reference__status.cardio-reference--acima {
    background: #fff0d8;
    color: #9a5b08;
}

#pgCardiologico .cardio-reference-popover {
    position: relative;
    flex: 0 0 auto;
}

#pgCardiologico .cardio-reference-popover__trigger {
    display: inline-flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 1px solid #cfc1c9;
    border-radius: 50%;
    color: #7a6571;
    background: #fff;
    font-size: 8px;
    cursor: help;
}

#pgCardiologico .cardio-reference-popover__trigger:hover,
#pgCardiologico .cardio-reference-popover__trigger:focus {
    border-color: #a34983;
    color: #a34983;
    outline: none;
}

#pgCardiologico .cardio-reference-popover__content {
    display: none;
    position: absolute;
    z-index: 30;
    top: calc(100% + 7px);
    right: -7px;
    width: 270px;
    max-width: 78vw;
    padding: 9px 10px;
    border: 1px solid #d8cbd2;
    border-radius: 7px;
    box-shadow: 0 8px 24px rgba(66, 42, 56, .18);
    color: #574a51;
    background: #fff;
    font-size: 9px;
    font-weight: 400;
    line-height: 1.4;
    white-space: normal;
}

#pgCardiologico .cardio-reference-popover__content::before {
    position: absolute;
    top: -5px;
    right: 11px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #d8cbd2;
    border-left: 1px solid #d8cbd2;
    background: #fff;
    content: '';
    transform: rotate(45deg);
}

#pgCardiologico .cardio-reference-popover__content strong,
#pgCardiologico .cardio-reference-popover__content small {
    display: block;
}

#pgCardiologico .cardio-reference-popover__content small {
    margin-top: 5px;
    color: #786a71;
    font-size: 8px;
}

#pgCardiologico .cardio-reference-popover:hover .cardio-reference-popover__content,
#pgCardiologico .cardio-reference-popover:focus-within .cardio-reference-popover__content {
    display: block;
}

#pgCardiologico .cardio-measure-item:hover,
#pgCardiologico .cardio-measure-item:focus-within {
    z-index: 31;
}

#pgCardiologico .cardio-derived-parameter {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 10px;
    padding: 9px 11px;
    border: 1px solid #cddce8;
    border-radius: 8px;
    background: #f4f8fb;
    color: #405b70;
}

#pgCardiologico .cardio-derived-parameter > .fas {
    margin-top: 2px;
    color: #497fa5;
}

#pgCardiologico .cardio-derived-parameter strong,
#pgCardiologico .cardio-derived-parameter small {
    display: block;
}

#pgCardiologico .cardio-derived-parameter small {
    margin-top: 2px;
    color: #6c7f8d;
    font-size: 9px;
}

#pgCardiologico .cardio-derived-parameter p {
    margin: 3px 0 0;
    color: #5b6c77;
    font-size: 9px;
}

#pgCardiologico .cardio-derived-parameter--warning {
    border-color: #e6d0a8;
    background: #fff9ee;
    color: #835b17;
}

#pgCardiologico .cardio-derived-parameter--warning > .fas {
    color: #b57915;
}

#pgCardiologico .cardio-auto-draft {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 8px;
    border: 1px solid #badbc9;
    border-radius: 999px;
    background: #edf8f2;
    color: #347153;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

#pgCardiologico .cardio-auto-draft--ai {
    border-color: #d9c7e9;
    background: #f6f0fa;
    color: #76528e;
}

#pgCardiologico .cardio-clinical-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 12px;
    margin-top: 8px;
}

#pgCardiologico .cardio-clinical-field--wide {
    grid-column: 1 / -1;
}

#pgCardiologico fieldset {
    display: grid;
    min-width: 0;
    gap: 12px;
    margin: 0;
    padding: 0;
    border: 0;
}

#pgCardiologico fieldset:disabled {
    opacity: .82;
}

#pgCardiologico .cardio-table-wrap {
    overflow-x: auto;
}

#pgCardiologico .cardio-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

#pgCardiologico .cardio-table th,
#pgCardiologico .cardio-table td {
    padding: 10px 9px;
    border-bottom: 1px solid #eadfe5;
    vertical-align: middle;
}

#pgCardiologico .cardio-table th {
    color: #74606c;
    background: #fff7fb;
    font-size: 11px;
    text-transform: uppercase;
}

#pgCardiologico .cardio-table td small {
    display: block;
    max-width: 560px;
    margin-top: 4px;
    color: #7a6e76;
}

#pgCardiologico .cardio-measures input,
#pgCardiologico .cardio-measures select {
    width: 100%;
    min-width: 90px;
}

#pgCardiologico .cardio-measures td:first-child {
    min-width: 240px;
}

#pgCardiologico .cardio-origin {
    padding: 4px 7px;
    border-radius: 4px;
    background: #f2edf0;
    font-family: monospace;
    font-size: 11px;
}

#pgCardiologico .cardio-section-title {
    margin: 22px 0 0;
    padding: 8px 10px;
    border-left: 4px solid #d75e9e;
    background: #faf3f7;
    color: #694b5c;
}

#pgCardiologico .cardio-template-select {
    float: none;
    width: 100%;
    margin: 5px 0 7px;
}

#pgCardiologico .cardio-clinical-field {
    min-width: 0;
    margin: 0;
}

#pgCardiologico .cardio-report-editor label,
#pgCardiologico .cardio-report-editor .cardio-clinical-field label {
    margin-top: 0;
    padding: 6px 0 8px;
    border-top: 0;
}

#pgCardiologico .cardio-report-editor input,
#pgCardiologico .cardio-report-editor select {
    height: 40px;
}

#pgCardiologico .cardio-clinical-field textarea {
    clear: both;
}

#pgCardiologico .cardio-model-form .cardio-check {
    display: flex;
    align-items: center;
    gap: 8px;
}

#pgCardiologico .cardio-model-form .cardio-check input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}

#pgCardiologico .cardio-confirmations {
    display: grid;
    gap: 8px;
    margin: 0 0 12px;
}

#pgCardiologico .cardio-confirmations .cardio-check {
    display: grid;
    width: 100%;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #dce3e6;
    border-radius: 7px;
    background: #f8fafb;
    box-sizing: border-box;
}

#pgCardiologico .cardio-confirmations .cardio-check input[type="checkbox"] {
    display: block;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    padding: 0;
    accent-color: #a34983;
}

#pgCardiologico .cardio-confirmations .cardio-check > span {
    display: block;
    margin: 0;
    color: #5b6870;
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
}

#pgCardiologico .cardio-approval {
    border: 1px solid #e1c1d2;
}

#pgCardiologico .cardio-archive-warning {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
    padding: 13px 14px;
    border: 1px solid #efcf78;
    border-radius: 8px;
    background: #fff8df;
    color: #66501c;
}

#pgCardiologico .cardio-archive-warning > .fas {
    margin-top: 2px;
    color: #bb8712;
    font-size: 22px;
}

#pgCardiologico .cardio-archive-warning p {
    margin: 4px 0 8px;
}

#pgCardiologico .cardio-archive-warning a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #8a5d00;
    font-size: 11px;
    font-weight: 700;
}

#pgCardiologico .cardio-archive-warning.is-error {
    border-color: #e3abab;
    background: #fff3f3;
    color: #8b3434;
}

#pgCardiologico .cardio-confirmations .cardio-archive-confirm {
    margin: 0;
    border-color: #efcf78;
    background: #fff8df;
}

#pgCardiologico .cardio-approval button:disabled {
    cursor: not-allowed;
    opacity: .5;
}

#pgCardiologico form .btnCenter > a.button {
    display: inline-block;
    margin: 0 1%;
    padding: 12px 28px;
    border-radius: 8px;
    color: #62555e;
    background: #ece7ea;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
}

#pgCardiologico form .btnCenter > a.button:hover {
    background: #ded5da;
}

#pgCardiologico .cardio-upload-progress {
    margin: 18px 0 4px;
    padding: 14px 16px;
    border: 1px solid #ead9e3;
    border-radius: 8px;
    background: #fff8fc;
}

#pgCardiologico .cardio-upload-progress[hidden] {
    display: none;
}

#pgCardiologico .cardio-upload-progress__track {
    height: 12px;
    overflow: hidden;
    border-radius: 999px;
    background: #eadfe5;
}

#pgCardiologico .cardio-upload-progress__bar {
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #a34983, #dd67a6);
    transition: width .2s ease;
}

#pgCardiologico .cardio-upload-progress__label {
    display: block;
    margin-top: 9px;
    color: #694b5c;
    font-size: 12px;
}

#pgCardiologico .cardio-upload-progress.is-processing .cardio-upload-progress__bar {
    background-size: 200% 100%;
    animation: cardio-upload-processing 1.2s linear infinite;
}

#pgCardiologico .cardio-upload-progress.is-error {
    border-color: #e3abab;
    background: #fff3f3;
}

#pgCardiologico .cardio-upload-progress.is-error .cardio-upload-progress__bar {
    background: #b94747;
}

#pgCardiologico .cardio-upload-progress.is-error .cardio-upload-progress__label {
    color: #8b3434;
}

#pgCardiologico .cardio-import-form button:disabled {
    cursor: wait;
    opacity: .65;
}

@keyframes cardio-upload-processing {
    from { background-position: 100% 0; }
    to { background-position: -100% 0; }
}

#pgCardiologico .cardio-approved-note {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 12px;
    border: 1px solid #b9e0d2;
    background: #effaf6;
}

#pgCardiologico .cardio-approved-note > .fas {
    color: #278365;
    font-size: 27px;
}

@media (max-width: 1100px) {
    #pgCardiologico .cardio-measure-groups {
        grid-template-columns: 1fr;
    }

    #pgCardiologico .cardio-measure-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    #pgCardiologico .cardio-summary,
    #pgCardiologico .cardio-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #pgCardiologico .cardio-measure-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    #pgCardiologico .cardio-report-heading,
    #pgCardiologico .cardio-report-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    #pgCardiologico .cardio-report-actions,
    #pgCardiologico .cardio-ai-button,
    #pgCardiologico .cardio-clear-button {
        width: 100%;
    }

    #pgCardiologico .cardio-ai-status {
        max-width: 100%;
        text-align: left;
    }

    #pgCardiologico .cardio-list__item,
    #pgCardiologico .cardio-list__meta {
        align-items: flex-start;
        flex-direction: column;
    }

    #pgCardiologico .cardio-summary,
    #pgCardiologico .cardio-grid--2,
    #pgCardiologico .cardio-grid--3,
    #pgCardiologico .cardio-clinical-grid,
    #pgCardiologico .cardio-measure-grid {
        grid-template-columns: 1fr;
    }

    #pgCardiologico .cardio-measure-group__header {
        align-items: stretch;
        flex-direction: column;
    }

    #pgCardiologico .cardio-measure-group__header .cardio-group-check {
        align-self: flex-start;
    }

    #pgCardiologico .cardio-source summary > small {
        display: none;
    }

    #pgCardiologico .cardio-source__heading > small {
        display: none;
    }

    #pgCardiologico .cardio-registration__span-2 {
        grid-column: auto;
    }

    #pgCardiologico .cardio-template-select {
        float: none;
        width: 100%;
        margin: 7px 0;
    }

    #pgCardiologico .cardio-image-gallery__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #pgCardiologico .cardio-image-card__preview {
        height: 100px;
    }
}

@media screen and (max-width: 650px) {
	body.app-page form.bgBox.invoice-form,
	body.app-page .invoice-preview {
		padding: 0;
	}

	body.app-page .invoice-form .invoice-form__actions,
	body.app-page .invoice-preview .invoice-preview__actions {
		margin: 0;
		padding: 14px 18px;
	}
}
