
*
{
 margin:0px;
 padding:0px;
}

html { 
position: relative;
min-height: 100%;
}


body { 
background: #ffffff;
font-family: "Nunito", sans-serif;
font-optical-sizing: auto;
font-size: 18px;
font-weight: 400;
text-align: left;
color:#000000;
}

select {
/* for Firefox */
-moz-appearance: none;
/* for Chrome */
-webkit-appearance: none;
}

/* For IE10 */
select::-ms-expand {
display: none;
}

input:-webkit-autofill {
-webkit-box-shadow: 0 0 0px 1000px white inset;
}

input:focus{
outline: none;
}

:root {
            --bg: #f4f6f8;
            --overlay: rgba(0, 0, 0, 0.55);
            --card: #ffffff;
            --text: #1f2937;
            --muted: #6b7280;
            --border: #d1d5db;
            --primary: #0f62fe;
            --primary-hover: #0b57e3;
            --danger: #b42318;
            --focus: #111827;
            --radius: 16px;
            --shadow: 0 20px 50px rgba(0,0,0,.18);
        }

        * {
            box-sizing: border-box;
        }

        html, body {
            height: 100%;
            margin: 0;
            font-family: Arial, Helvetica, sans-serif;
            color: var(--text);
            background: var(--bg);
        }

        body {
            min-height: 100vh;
        }

        .page {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 24px;
        }

        .overlay {
            position: fixed;
            inset: 0;
            background: var(--overlay);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 16px;
        }

        .modal {
            width: 100%;
            max-width: 520px;
            background: var(--card);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
            padding: 24px;
        }

        .modal h1 {
            margin: 0 0 20px 0;
            font-size: 1.2rem;
            line-height: 1.5;
            text-transform: uppercase;
        }

        .form-group {
            margin-bottom: 18px;
        }

        label {
            display: inline-block;
            margin-bottom: 8px;
            font-weight: 700;
        }

        input[type="text"],
        input[type="password"] {
            width: 100%;
            min-height: 48px;
            padding: 12px 14px;
            border: 1px solid var(--border);
            border-radius: 10px;
            font-size: 1rem;
            color: var(--text);
            background: #fff;
        }

        input[type="text"]:focus,
        input[type="password"]:focus,
        button:focus {
            outline: 3px solid var(--focus);
            outline-offset: 2px;
        }

        .error {
            margin-bottom: 16px;
            padding: 12px 14px;
            border: 1px solid #f5c2c7;
            border-radius: 10px;
            background: #fef3f2;
            color: var(--danger);
            font-weight: 700;
        }

        .actions {
            display: flex;
            justify-content: flex-end;
            gap: 12px;
            margin-top: 24px;
            flex-wrap: wrap;
        }

        .btn {
            min-width: 120px;
            min-height: 44px;
            padding: 10px 18px;
            border-radius: 10px;
            border: 1px solid transparent;
            font-size: 1rem;
            font-weight: 700;
            cursor: pointer;
        }

        .btn-primary {
            background: var(--primary);
            color: #fff;
        }

        .btn-primary:hover {
            background: var(--primary-hover);
        }

        .btn-secondary {
            background: #fff;
            color: var(--text);
            border-color: var(--border);
        }

        .btn-secondary:hover {
            background: #f9fafb;
        }

        .visually-hidden {
            position: absolute !important;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0px none;
        }

img.centro
{
display:block;
margin:auto;
}

.corpo_err {
font-size: 20px;
font-weight: 700;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-bottom:20px;
line-height:1;
text-decoration: underline;
}


.err {
font-size: 20px;
font-weight: 700;
text-align: center;
margin-left:15px;
margin-right:15px;
margin-bottom:20px;
line-height:1;
text-decoration: underline;
}


.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0px none;
}


#capatcha {
margin:auto;
display: block
}

.g-recaptcha{
margin: 15px auto !important;
width: auto !important;
height: auto !important;
text-align: -webkit-center;
text-align: -moz-center;
text-align: -o-center;
text-align: -ms-center;
}

label {
display: block;
margin-bottom: 4px;
font-weight: 400;
}

select {
width: 100%; /* o una larghezza fissa se preferisci */
max-width: 360px;
padding: 5px;
}




A:LINK, A:VISITED, A:ACTIVE, A:HOVER {
color: #000000;
text-decoration: none;
}

A.privlink:LINK, A.privlink:VISITED, A.privlink:ACTIVE, A.privlink:HOVER{
color: #000000;
text-decoration: underline;
}






A.anc { color: inherit; }


img {border:0px none;}

td img {display: block;}