/* Customer login additions to the shared participant area styles. */
.login-clienti-page .area-dashboard { max-width: 860px; margin: 0 auto; }
.login-clienti-page .area-grid { grid-template-columns: minmax(0, 1fr); }
.login-main-column { min-width: 0; }
.login-clienti-page .area-dashboard > .area-notice { margin: 0 0 24px; }
.login-panel { position: relative; }
.login-panel .area-section-heading { padding-bottom: 22px; border-bottom: 1px solid var(--area-line); }
.login-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 20px; }
.login-field { min-width: 0; }
.login-field-wide { grid-column: 1 / -1; }
.login-clienti-page .login-field > input { width: 100%; height: 46px; padding: 0 13px; border: 1px solid #ccd6e1; border-radius: 6px; margin: 0; font: inherit; font-size: 15px; background: #fff; color: var(--area-ink); box-sizing: border-box; }
.login-clienti-page .login-field > input:focus { outline: none; border-color: var(--area-blue); box-shadow: 0 0 0 3px #e7eff7; }
.login-clienti-page .login-field > input::placeholder { color: #788697; opacity: 1; }
.login-clienti-page .login-field > .dtpicker { cursor: pointer; }
.login-clienti-page .picker__box { overflow: hidden; border-radius: 10px; }
.login-clienti-page .picker__date-display { background: var(--area-blue); }
.login-clienti-page .picker__weekday-display { background: #002f5c; }
.login-clienti-page .picker__year-display { color: #c6d7e7; }
.login-clienti-page .picker__day--today:not(.picker__day--selected), .login-clienti-page .picker__close, .login-clienti-page .picker__today { color: var(--area-blue); }
.login-clienti-page .picker__day--selected:not(.picker__day--disabled) { background: var(--area-blue); color: #fff; }
.login-clienti-page .picker__nav--prev:hover, .login-clienti-page .picker__nav--next:hover, .login-clienti-page .picker__footer button:focus { background: #edf3f9; }
.login-clienti-page .area-field-hint { font-size: 12px; }
.login-clienti-page .login-course-options { min-width: 0; border: 1px solid var(--area-line); border-radius: 8px; margin: 24px 0 0; padding: 17px; }
.login-course-options legend { padding: 0 7px; color: var(--area-blue); font-size: 14px; font-weight: 700; }
.login-clienti-page .cont-radio-corso { display: flex; align-items: flex-start; gap: 10px; padding: 11px 0; }
.login-clienti-page .cont-radio-corso + .cont-radio-corso { border-top: 1px solid var(--area-line); }
.login-clienti-page .cont-radio-corso input[type=radio] { position: static; opacity: 1; pointer-events: auto; width: 18px; height: 18px; margin: 3px 0 0; flex-shrink: 0; accent-color: var(--area-blue); }
.login-clienti-page .cont-radio-corso label { height: auto; padding: 0; color: var(--area-ink) !important; font-size: 14px; line-height: 1.6; }
.login-clienti-page .cont-radio-corso label::before, .login-clienti-page .cont-radio-corso label::after { display: none; }
.login-clienti-page .login-course-error .field-validation-error { margin-top: 17px; }
.login-actions { display: flex; gap: 12px; margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--area-line); }
.login-actions .area-button { flex: 1; }
.login-panel .blur { border-radius: inherit; z-index: 5; }
.login-clienti-page .loader-campo-corso { margin-bottom: 14px; color: var(--area-muted); font-size: 13px; }
.login-clienti-page .loader-campo-corso .progress { margin: 8px 0 0; height: 4px; background: #dce8f3; border-radius: 4px; }
.login-clienti-page .loader-campo-corso .indeterminate { background: var(--area-blue); }
@media (max-width: 600px) {
    .login-clienti-page .area-header-inner { gap: 12px; }
    .login-clienti-page .area-header-label { display: none; }
    .login-fields { grid-template-columns: minmax(0, 1fr); gap: 19px; }
    .login-actions { flex-direction: column; }
}
