/* Pagina di accesso nella nuova grafica (D-043): scheda centrata sul fondo petrolio/ciano. Il modulo resta quello di Clean Login. */
body.sh-login { margin: 0; min-height: 100vh; font-family: 'Manrope', sans-serif; color: #1F2A30;
	background: radial-gradient(circle at 15% 15%, rgba(43, 208, 154, .18), transparent 40%), linear-gradient(135deg, #0F2A30 0%, #0B4F57 45%, #00838F 100%); }
body.sh-login::before { display: none; }
.sh-login-pagina { min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 32px 16px; box-sizing: border-box; }
.sh-login-scheda { width: 100%; max-width: 420px; background: #FFFFFF; border-radius: 1.25rem; box-shadow: 0 24px 60px rgba(4, 30, 35, .35); overflow: hidden; }
.sh-login-testa { background: linear-gradient(120deg, #00BCD4, #00838F); padding: 28px 32px 22px; text-align: center; }
.sh-login-testa img { width: 128px; height: auto; display: inline-block; }
.sh-login-corpo { padding: 28px 32px 30px; }
.sh-login-corpo h1 { font-size: 1.35rem; font-weight: 800; margin: 0 0 .25rem; color: #0F2A30; text-transform: none; letter-spacing: 0; }
.sh-login-sotto { margin: 0 0 1.4rem; color: #5B6B73; font-size: .95rem; }
.sh-login-piede { margin: 22px 0 0; color: rgba(255, 255, 255, .75); font-size: .85rem; }

/* contenuto della pagina (shortcode dentro un elenco): niente puntini né corsivo */
body.sh-login .sh-login-corpo ul, body.sh-login .sh-login-corpo li { list-style: none; margin: 0; padding: 0; }
body.sh-login .sh-login-corpo em { font-style: normal; }

/* modulo Clean Login */
body.sh-login .cleanlogin-container { max-width: none; padding: 0; margin: 0; border: 0; box-shadow: none; border-radius: 0; overflow: visible; }
body.sh-login .cleanlogin-form label { text-align: left; text-transform: none; font-size: .88rem; font-weight: 700; color: #3A474D; margin: 0 0 .4rem; font-style: normal; }
body.sh-login .cleanlogin-field { position: relative; margin-bottom: 1.1rem; }
body.sh-login .cleanlogin-form input[type="text"], body.sh-login .cleanlogin-form input[type="password"] {
	height: 3rem; width: 100%; border: 1px solid #DCE3E6; border-radius: .75rem; background-color: #F9FBFB; background-position: 14px center;
	padding: 0 44px 0 42px !important; font-size: 1rem; font-family: inherit; color: #1F2A30; box-shadow: none; transition: border-color .15s, box-shadow .15s; }
body.sh-login .cleanlogin-form input[type="text"]:focus, body.sh-login .cleanlogin-form input[type="password"]:focus {
	outline: none; border-color: #00BCD4; background-color: #FFFFFF; box-shadow: 0 0 0 4px rgba(0, 188, 212, .18); }
body.sh-login .cleanlogin-form i.bi { position: absolute; right: 14px; bottom: .95rem; margin: 0; color: #5B6B73; font-size: 1.1rem; }
body.sh-login .cleanlogin-form input[type="submit"] {
	height: 3rem; width: 100%; margin: .4rem 0 1rem; border: 0; border-radius: .75rem; background: #00838F; color: #FFFFFF;
	font-family: inherit; font-size: 1rem; font-weight: 800; cursor: pointer; transition: background .15s; }
body.sh-login .cleanlogin-form input[type="submit"]:hover { background: #006A75; }
body.sh-login .cleanlogin-form input[type="submit"]:disabled { opacity: .7; }
body.sh-login .cleanlogin-field-remember { float: none; text-align: left; display: flex; align-items: center; gap: .5rem; margin: 0; }
body.sh-login .cleanlogin-field-remember label { display: inline; margin: 0; font-weight: 600; color: #5B6B73; }
body.sh-login .cleanlogin-field-remember input { accent-color: #00838F; width: 1.05rem; height: 1.05rem; }
body.sh-login .cleanlogin-form-bottom { height: auto; padding: 0; }
body.sh-login .cleanlogin-notification { box-shadow: none; border-radius: .75rem; font-size: .92rem; padding: .8rem 1rem; margin: 0 0 1.1rem; text-align: left; }
body.sh-login .cleanlogin-notification.error { background: #FBE9E9; border-color: #F2B8B8; color: #8E1B1B; }
body.sh-login .cleanlogin-notification.success { background: #E6F4EA; border-color: #A9DDBA; color: #1E6B2A; }

@media (max-width: 480px) {
	.sh-login-testa, .sh-login-corpo { padding-left: 22px; padding-right: 22px; }
}

/* icone dei campi come quelle del menu (tratto), al posto delle immagini del plugin */
body.sh-login .cleanlogin-form input.cleanlogin-field-username { background: #F9FBFB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235B6B73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") no-repeat 14px center; }
body.sh-login .cleanlogin-form input.cleanlogin-field-password { background: #F9FBFB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235B6B73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") no-repeat 14px center; }
body.sh-login .cleanlogin-form input.cleanlogin-field-username:focus, body.sh-login .cleanlogin-form input.cleanlogin-field-password:focus { background-color: #FFFFFF; }

/* password dimenticata / nuova password (sh-account-front) */
body.sh-login .sh-login-link { margin: .9rem 0 0; font-size: .92rem; }
body.sh-login .sh-login-link a { color: #00838F; font-weight: 700; text-decoration: none; border: 0; }
body.sh-login .sh-login-link a:hover { text-decoration: underline; }
body.sh-login a.sh-login-bottone { display: block; text-align: center; padding: .8rem 1rem; border-radius: .75rem; background: #00838F; color: #FFFFFF; }
body.sh-login a.sh-login-bottone:hover { background: #006A75; text-decoration: none; }
body.sh-login .sh-form-password input[type="submit"] { margin-top: .2rem; }
body.sh-login .sh-nota-password { margin: -.3rem 0 1rem; color: #5B6B73; font-size: .85rem; }
/* avvisi delle pagine password (classe propria: quelli di Clean Login spariscono da soli dopo pochi secondi) */
body.sh-login .sh-login-avviso { border: 1px solid; border-radius: .75rem; font-size: .92rem; line-height: 1.45; padding: .8rem 1rem; margin: 0 0 1.1rem; }
body.sh-login .sh-login-avviso.error { background: #FBE9E9; border-color: #F2B8B8; color: #8E1B1B; }
body.sh-login .sh-login-avviso.success { background: #E6F4EA; border-color: #A9DDBA; color: #1E6B2A; }
/* password dimenticata: per gli operatori la assegna l'amministratore; il recupero via email resta solo per gli amministratori */
body.sh-login .sh-login-aiuto { margin: 1rem 0 0; padding: .75rem .9rem; border-radius: .75rem; background: #F2FCFD; border: 1px solid #B8D9DD; color: #3A474D; font-size: .88rem; line-height: 1.45; }
body.sh-login .sh-login-link-piccolo { margin-top: .6rem; font-size: .8rem; text-align: right; }
body.sh-login .sh-login-link-piccolo a { font-weight: 600; color: #5B6B73; }
