.accesso-cinzia {
	--ac-red: #b42318;
	--ac-border: #d8ddd8;
	max-width: 1180px;
	margin: 30px auto;
	color: var(--ac-text-color, #232823);
	font-family: inherit;
}

.accesso-cinzia * { box-sizing: border-box; }

.accesso-cinzia .ac-card {
	max-width: 520px;
	margin: 60px auto;
	padding: 36px;
	background: var(--ac-card-bg, #fff);
	border: 1px solid var(--ac-card-border, #d8ddd8);
	border-radius: var(--ac-card-radius, 14px);
	box-shadow: 0 12px 35px rgba(25, 43, 28, .09);
}

.accesso-cinzia .ac-card h2 {
	margin: 0 0 20px;
	color: var(--ac-title-color, #111);
	text-align: center;
}

.accesso-cinzia .ac-card form { display: grid; gap: 12px; }
.accesso-cinzia .ac-card label { color: var(--ac-label-color, #111); font-weight: 600; }

.accesso-cinzia .ac-card input,
.accesso-cinzia .ac-modal__panel input {
	width: 100%;
	min-height: 48px;
	padding: 10px 14px;
	background: var(--ac-input-bg, #fff);
	color: var(--ac-input-text, #111);
	border: 1px solid var(--ac-input-border, #c9d0ca);
	border-radius: var(--ac-input-radius, 7px);
	font-size: 16px;
}

.accesso-cinzia .ac-button,
.accesso-cinzia .ac-tile {
	border: 0;
	cursor: pointer;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}

.accesso-cinzia .ac-button {
	display: inline-block;
	padding: 13px 22px;
	background: var(--ac-login-bg, #5d7d61) !important;
	color: var(--ac-login-text, #fff) !important;
	border-radius: var(--ac-login-radius, 50px);
	font-size: 16px;
}

.accesso-cinzia .ac-button:hover {
	background: var(--ac-login-hover-bg, #405c44) !important;
	color: var(--ac-login-hover-text, #fff) !important;
}

.accesso-cinzia .ac-login .ac-link {
	display: block;
	width: 100%;
	margin: 20px auto 0;
	padding: 0 !important;
	background: transparent !important;
	color: var(--ac-forgot-color, #4a4a4a) !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	cursor: pointer;
	font-weight: 400;
	text-align: center !important;
	text-decoration: none;
}

.accesso-cinzia .ac-login .ac-link:hover {
	background: transparent !important;
	color: var(--ac-forgot-hover, #2f2f2f) !important;
	text-decoration: underline;
}

.accesso-cinzia .ac-notice {
	max-width: 720px;
	margin: 20px auto;
	padding: 14px 18px;
	border-left: 4px solid;
	border-radius: 7px;
}

.accesso-cinzia .ac-notice--error { background: #fff1f0; border-color: var(--ac-red); color: var(--ac-red); }
.accesso-cinzia .ac-notice--success { background: #edf8ef; border-color: #27863b; color: #185d27; }
.accesso-cinzia .ac-notice--warning { background: #fff7e6; border-color: #c27803; color: #794d08; }

.accesso-cinzia .ac-toolbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 24px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--ac-border);
	font-weight: 700;
}

.accesso-cinzia .ac-toolbar-actions { display: inline-flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.accesso-cinzia .ac-reset-order,
.accesso-cinzia .ac-add-separator { padding: 0; background: transparent; color: var(--ac-text-color, #232823); border: 0; cursor: pointer; font: inherit; font-weight: 400; text-decoration: underline; }

.accesso-cinzia .ac-logout {
	padding: 8px 14px;
	background: var(--ac-logout-bg, #fff) !important;
	color: var(--ac-logout-text, #405c44) !important;
	border: var(--ac-logout-border-width, 1px) solid var(--ac-logout-border-color, #405c44) !important;
	border-radius: var(--ac-logout-radius, 7px);
	font-weight: 400;
	text-decoration: none;
}

.accesso-cinzia .ac-logout:hover {
	background: var(--ac-logout-hover-bg, #405c44) !important;
	color: var(--ac-logout-hover-text, #fff) !important;
}

.accesso-cinzia .ac-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.accesso-cinzia .ac-layout-item { min-width: 0; }
.accesso-cinzia .ac-tile-wrap { position: relative; display: flex; }
.accesso-cinzia .ac-tile-wrap .ac-tile { width: 100%; }
.accesso-cinzia .ac-front-drag-handle {
	position: absolute;
	z-index: 2;
	top: 6px;
	left: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	background: rgba(255, 255, 255, .9);
	color: #333;
	border: 0;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .16);
	cursor: grab;
	touch-action: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity .16s ease, visibility .16s ease;
}

.accesso-cinzia .ac-tile-wrap:hover > .ac-front-drag-handle,
.accesso-cinzia .ac-tile-wrap:focus-within > .ac-front-drag-handle,
.accesso-cinzia .ac-separator-wrap:hover > .ac-front-drag-handle,
.accesso-cinzia .ac-separator-wrap:focus-within > .ac-front-drag-handle,
.accesso-cinzia .ac-layout-item.ac-controls-visible > .ac-front-drag-handle { opacity: .5; visibility: visible; }
.accesso-cinzia .ac-layout-item > .ac-front-drag-handle:hover,
.accesso-cinzia .ac-layout-item > .ac-front-drag-handle:focus-visible,
.accesso-cinzia .ac-layout-item.is-dragging > .ac-front-drag-handle { opacity: 1; visibility: visible; }

.accesso-cinzia .ac-front-drag-handle svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.accesso-cinzia .ac-drag-tooltip {
	position: absolute;
	z-index: 30;
	top: calc(100% + 2px);
	left: 0;
	width: 300px;
	max-width: calc(100vw - 48px);
	padding: 6px 9px;
	background: #252825;
	color: #fff;
	border-radius: 6px;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .2);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.25;
	white-space: nowrap !important;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-3px);
	transition: .15s ease;
}
.accesso-cinzia .ac-drag-tooltip > span { display: block; }
.accesso-cinzia .ac-front-drag-handle:hover .ac-drag-tooltip,
.accesso-cinzia .ac-front-drag-handle:focus-visible .ac-drag-tooltip { opacity: 1; transform: none; }
.accesso-cinzia .ac-front-drag-handle.ac-tooltip-suppressed .ac-drag-tooltip { display: none !important; }
.ac-is-dragging .accesso-cinzia .ac-drag-tooltip { display: none !important; }
.accesso-cinzia .ac-front-drag-handle:active { cursor: grabbing; }
.accesso-cinzia .ac-layout-item.is-dragging { opacity: .24; outline: 2px dashed #687268; outline-offset: 3px; }
.accesso-cinzia .ac-drag-ghost { position: fixed !important; z-index: 1000001 !important; margin: 0 !important; opacity: 1; pointer-events: none !important; filter: drop-shadow(0 16px 20px rgba(0, 0, 0, .24)); }
.ac-drag-ghost .ac-drag-tooltip { display: none; }
.accesso-cinzia .ac-drag-ghost > .ac-front-drag-handle,
.accesso-cinzia .ac-drag-group-ghost .ac-front-drag-handle,
.accesso-cinzia .ac-drag-group-ghost .ac-remove-separator { display: none !important; }
.accesso-cinzia .ac-drag-group-ghost { position: fixed; z-index: 1000001; margin: 0; pointer-events: none; filter: drop-shadow(0 16px 20px rgba(0, 0, 0, .2)); }
.accesso-cinzia .ac-drag-group-ghost .ac-grid { width: 100%; }

.accesso-cinzia .ac-tile {
	justify-content: center;
	min-height: 88px;
	padding: 20px;
	background: var(--ac-tile-bg, #5d7d61) !important;
	color: var(--ac-tile-text, #fff) !important;
	border: var(--ac-tile-border-width, 0) solid var(--ac-tile-border-color, #5d7d61);
	border-radius: var(--ac-tile-radius-tl, 7px) var(--ac-tile-radius-tr, 7px) var(--ac-tile-radius-br, 7px) var(--ac-tile-radius-bl, 7px);
	box-shadow: 0 7px 18px rgba(36, 65, 40, .12);
	font-size: 18px;
}

.accesso-cinzia .ac-tile:hover {
	background: var(--ac-tile-hover-bg, #405c44) !important;
	color: var(--ac-tile-hover-text, #fff) !important;
}

.accesso-cinzia .ac-with-icon { display: inline-flex; align-items: center; gap: 9px; }
.accesso-cinzia .ac-logout.ac-with-icon { gap: var(--ac-logout-icon-gap, 7px); }
.accesso-cinzia .ac-tile.ac-with-icon { gap: var(--ac-tile-icon-gap, 9px); }
.accesso-cinzia .ac-button-icon { width: 22px; height: 22px; object-fit: contain; flex: 0 0 auto; }
.accesso-cinzia .ac-logout .ac-button-icon { width: var(--ac-logout-icon-size, 22px); height: var(--ac-logout-icon-size, 22px); }
.accesso-cinzia .ac-tile .ac-button-icon { width: var(--ac-tile-icon-size, 22px); height: var(--ac-tile-icon-size, 22px); }
.accesso-cinzia .ac-empty { grid-column: 1 / -1; text-align: center; }

.accesso-cinzia .ac-separator-wrap {
	position: relative;
	grid-column: 1 / -1;
	min-height: 52px;
	display: flex;
	align-items: center;
	padding: 6px 42px;
	transition: opacity .2s ease, transform .2s ease;
}
.accesso-cinzia .ac-separator-wrap hr { width: 100%; margin: 0; border: 0; border-top: 2px solid var(--ac-border); }
.accesso-cinzia .ac-separator-wrap .ac-front-drag-handle { top: 11px; }
.accesso-cinzia .ac-remove-separator { position: absolute; right: 6px; top: 11px; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; background: #fff; color: #8b201a; border: 1px solid #d9b5b2; border-radius: 50%; cursor: pointer; font-size: 20px; line-height: 1; opacity: 0; visibility: hidden; transition: opacity .16s ease, visibility .16s ease; }
.accesso-cinzia .ac-remove-separator svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.accesso-cinzia .ac-separator-wrap:hover > .ac-remove-separator,
.accesso-cinzia .ac-separator-wrap:focus-within > .ac-remove-separator,
.accesso-cinzia .ac-separator-wrap.ac-controls-visible > .ac-remove-separator { opacity: 1; visibility: visible; }
.accesso-cinzia .ac-new-separator { opacity: 0; transform: scaleY(.5); }

.accesso-cinzia .ac-modal[hidden] { display: none; }
.accesso-cinzia .ac-modal {
	position: fixed;
	z-index: 999999;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.accesso-cinzia .ac-modal__backdrop { position: absolute; inset: 0; background: rgba(12, 18, 13, .72); }
.accesso-cinzia .ac-modal__panel {
	position: relative;
	z-index: 1;
	width: min(520px, 100%);
	max-height: 90vh;
	overflow: auto;
	padding: 34px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 20px 70px rgba(0, 0, 0, .3);
}

.accesso-cinzia .ac-modal__panel form { display: grid; gap: 12px; }
.accesso-cinzia .ac-modal__close {
	position: absolute;
	right: 12px;
	top: 8px;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 32px;
	line-height: 1;
	cursor: pointer;
}

.accesso-cinzia .ac-help { margin: 18px 0 0; color: var(--ac-text-color, #606760); font-size: 13px; }
.accesso-cinzia .ac-reset-confirm .ac-modal__panel { text-align: center; }
.accesso-cinzia .ac-reset-confirm h2 { margin-top: 0; }
.accesso-cinzia .ac-confirm-actions { display: flex; justify-content: center; gap: 12px; margin-top: 24px; flex-wrap: wrap; }
.accesso-cinzia .ac-confirm-actions button { padding: 11px 18px; border-radius: 7px; cursor: pointer; font: inherit; font-weight: 700; }
.accesso-cinzia .ac-reset-confirm .ac-confirm-yes { background: #fff !important; color: #4d534d !important; border: 1px solid #9da49d !important; box-shadow: none !important; }
.accesso-cinzia .ac-reset-confirm .ac-confirm-yes:hover,
.accesso-cinzia .ac-reset-confirm .ac-confirm-yes:focus-visible { background: #f1f2f1 !important; color: #272b27 !important; border-color: #747b74 !important; }
.accesso-cinzia .ac-reset-confirm .ac-confirm-no { background: #d7e83f !important; color: #202700 !important; border: 1px solid #aebd20 !important; box-shadow: 0 3px 10px rgba(91, 103, 0, .18) !important; }
.accesso-cinzia .ac-reset-confirm .ac-confirm-no:hover,
.accesso-cinzia .ac-reset-confirm .ac-confirm-no:focus-visible { background: #c4d52c !important; color: #151a00 !important; }
.accesso-cinzia .ac-viewer { padding: 3vh 3vw; }
.accesso-cinzia .ac-viewer__panel { width: 94vw; height: 94vh; max-height: none; padding: 56px 10px 10px; overflow: hidden; }
.accesso-cinzia .ac-viewer iframe { display: block; width: 100%; height: 100%; border: 0; background: #fff; opacity: 0; transition: opacity .2s ease; }
.accesso-cinzia .ac-viewer__panel.is-loaded iframe { opacity: 1; }
.accesso-cinzia .ac-viewer-loader { position: absolute; z-index: 2; inset: 56px 10px 10px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 24px; background: #fff; color: #303630; text-align: center; transition: opacity .2s ease, visibility .2s ease; }
.accesso-cinzia .ac-viewer__panel.is-loaded .ac-viewer-loader { opacity: 0; visibility: hidden; pointer-events: none; }
.accesso-cinzia .ac-loader-spinner { width: 48px; height: 48px; border: 5px solid #dfe5df; border-top-color: #5d7d61; border-radius: 50%; animation: ac-spin .8s linear infinite; }
.accesso-cinzia .ac-viewer-loader strong { font-size: 18px; }
.accesso-cinzia .ac-loader-track { width: min(420px, 80%); height: 12px; overflow: hidden; background: #e7ebe7; border-radius: 50px; }
.accesso-cinzia .ac-loader-track span { display: block; width: 0; height: 100%; background: #5d7d61; border-radius: inherit; transition: width .25s ease; }
.accesso-cinzia .ac-loader-percent { font-size: 15px; font-variant-numeric: tabular-nums; }
@keyframes ac-spin { to { transform: rotate(360deg); } }

.accesso-cinzia .ac-viewer .ac-modal__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--ac-close-box, 44px);
	height: var(--ac-close-box, 44px);
	background: var(--ac-close-bg, #fff) !important;
	color: var(--ac-close-text, #232823) !important;
	border-radius: var(--ac-close-radius, 50px);
	font-size: var(--ac-close-size, 32px);
}
.accesso-cinzia .ac-viewer .ac-modal__close svg { width: var(--ac-close-size, 32px); height: var(--ac-close-size, 32px); max-width: 80%; max-height: 80%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }

.accesso-cinzia .ac-viewer .ac-modal__close:hover {
	background: var(--ac-close-hover-bg, #405c44) !important;
	color: var(--ac-close-hover-text, #fff) !important;
}

.ac-modal-open { overflow: hidden; }
body.accesso-cinzia-lightbox-page { margin: 0; background: #fff; }

@media (max-width: 767px) {
	.accesso-cinzia .ac-grid { grid-template-columns: 1fr; }
	.accesso-cinzia .ac-card { margin: 25px auto; padding: 24px; }
	.accesso-cinzia .ac-modal { padding: 12px; }
	.accesso-cinzia .ac-viewer { padding: 0; }
	.accesso-cinzia .ac-viewer__panel { width: 100vw; height: 100vh; border-radius: 0; }
	.accesso-cinzia .ac-toolbar { align-items: flex-start; gap: 12px; }
	.accesso-cinzia .ac-toolbar-actions { gap: 9px; }
	.accesso-cinzia .ac-front-drag-handle::after { left: -4px; width: 250px; }
}
