/* ---------- Login ---------- */
.box.login { max-width: 380px; margin: 40px auto; }
.login label { display: block; margin: 14px 0 4px; font-size: 14px; color: #37474f; }
.login input[type=text], .login input[type=password] {
    width: 100%; padding: 10px; border: 1px solid #b0bec5; border-radius: 6px; font-size: 16px;
}
.login input:focus { outline: 2px solid #64b5f6; border-color: #1565c0; }
.login button {
    width: 100%; margin-top: 20px; padding: 11px; border: 0; border-radius: 6px;
    background: #1565c0; color: #fff; font-size: 16px; cursor: pointer;
}
.login button:hover { background: #0d47a1; }
.login-error {
    background: #fdecea; border: 1px solid #f5c6cb; color: #b71c1c;
    padding: 9px 12px; border-radius: 6px; margin-bottom: 4px; font-size: 14px;
}

/* ---------- Barra: Accedi / Esci ---------- */
.topbar nav { display: flex; align-items: center; flex-wrap: wrap; }
.topbar nav a.login-link {
    border: 1px solid #90a4ae; padding: 5px 12px; border-radius: 6px;
}
.topbar nav a.login-link:hover { border-color: #64b5f6; }
/* "Esci" sembra un link ma e' un form POST (con CSRF) */
.topbar nav form.logout { display: inline; margin: 0 0 0 25px; }
.topbar nav form.logout button {
    background: none; border: 1px solid #90a4ae; color: #fff; padding: 5px 12px;
    border-radius: 6px; cursor: pointer; font: inherit;
}
.topbar nav form.logout button:hover { color: #64b5f6; border-color: #64b5f6; }

/* ---------- Widget riservati (visibili solo dopo il login) ---------- */
.box.is-private { border-top: 3px solid #1565c0; }
.box ul.links { margin: 8px 0 0; padding-left: 20px; }

@media (max-width: 750px) {
    .topbar nav form.logout { margin-left: 0; }
    .topbar nav a.login-link { margin-left: 0; }
}
