/* Design Tokens — condivisi tra admin.css e voter.css */

/* Forms */
.form-group { margin-bottom: 16px; }
.form-group label { display: block; font-size: 16px; font-weight: 400; margin-bottom: 4px; color: #374151; }
.form-control { width: 100%; padding: 8px 12px; border: 1px solid #d1d5db; border-radius: 8px; font-size: 16px; box-sizing: border-box; transition: outline-color 150ms ease; }
.form-control:focus { outline: 2px solid #0055a4; outline-offset: -1px; }

/* Alerts */
.alert { padding: 12px 16px; border-radius: 8px; font-size: 14px; margin-bottom: 16px; border-left: 4px solid; }
.alert-success { background: #f0fdf4; border-color: #16a34a; color: #166534; }
.alert-error { background: #fef2f2; border-color: #dc2626; color: #991b1b; }
.alert-warning { background: #fffbeb; border-color: #d97706; color: #854d0e; }
.alert-info { background: #eff6ff; border-color: #0055a4; color: #1e40af; }

/* Password toggle */
.password-wrapper { position: relative; }
.password-wrapper .form-control { padding-right: 44px; }
.password-toggle { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); background: none; border: none; cursor: pointer; padding: 4px; color: #9ca3af; display: flex; align-items: center; justify-content: center; border-radius: 4px; transition: color 150ms ease; }
.password-toggle:hover { color: #374151; }
