#core360-toast-root {
  position: fixed !important;
  z-index: 2147483647 !important;
  right: 20px !important;
  bottom: 20px !important;
  display: grid !important;
  gap: 10px !important;
  width: min(420px, calc(100vw - 40px)) !important;
  pointer-events: none !important;
}

.core360-toast {
  padding: 15px 18px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 16px !important;
  background: rgba(13,16,27,.96) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.36) !important;
  color: #fff !important;
  font: 700 14px/1.45 Arial,Helvetica,sans-serif !important;
  opacity: 0 !important;
  transform: translateY(12px) scale(.98) !important;
  transition: opacity .24s ease, transform .24s ease !important;
  backdrop-filter: blur(16px) !important;
}

.core360-toast-visible {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

.core360-toast-success { border-color: rgba(50,232,117,.48) !important; }
.core360-toast-error { border-color: rgba(255,79,120,.62) !important; }

.core360-success {
  padding: 42px !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(16,20,32,.14) !important;
  color: #151927 !important;
  text-align: center !important;
}

.core360-success h3 {
  margin: 14px 0 10px !important;
  color: #151927 !important;
  font-size: clamp(1.8rem,3vw,2.6rem) !important;
}

.core360-success p {
  max-width: 600px !important;
  margin: 0 auto !important;
  color: #5d667c !important;
}

.core360-success-icon {
  display: grid !important;
  place-items: center !important;
  width: 62px !important;
  height: 62px !important;
  margin: 0 auto !important;
  border-radius: 50% !important;
  background: rgba(50,232,117,.16) !important;
  color: #148a43 !important;
  font-size: 30px !important;
  font-weight: 900 !important;
}

/* Validazione accessibile con errore inline. */
form[data-core360-form] input.core360-field-invalid:not([type="checkbox"]),
form[data-core360-form] select.core360-field-invalid,
form[data-core360-form] textarea.core360-field-invalid {
  border-color: #d92d20 !important;
  background: #fff5f4 !important;
  color: #7a1a14 !important;
  box-shadow: 0 0 0 3px rgba(217,45,32,.12) !important;
}

form[data-core360-form] input.core360-field-invalid:not([type="checkbox"]):focus,
form[data-core360-form] select.core360-field-invalid:focus,
form[data-core360-form] textarea.core360-field-invalid:focus {
  outline: 2px solid #d92d20 !important;
  outline-offset: 1px !important;
  box-shadow: 0 0 0 5px rgba(217,45,32,.15) !important;
}

form[data-core360-form] input[type="checkbox"].core360-field-invalid {
  outline: 2px solid #d92d20 !important;
  outline-offset: 3px !important;
  accent-color: #d92d20 !important;
}

form[data-core360-form] .core360-field-wrapper-invalid > label,
form[data-core360-form] label.core360-field-wrapper-invalid,
form[data-core360-form] .core360-field-wrapper-invalid a {
  color: #b42318 !important;
}

.core360-field-error {
  display: block !important;
  margin: 6px 0 0 !important;
  color: #b42318 !important;
  font: 700 13px/1.4 Arial,Helvetica,sans-serif !important;
  letter-spacing: 0 !important;
}

#core360-form-status {
  min-height: 20px !important;
  margin-top: 2px !important;
  font: 700 13px/1.45 Arial,Helvetica,sans-serif !important;
}

#core360-form-status.core360-status-error {
  color: #b42318 !important;
}

#core360-form-status.core360-status-success {
  color: #148a43 !important;
}

#core360-submit[disabled] {
  cursor: wait !important;
  opacity: .65 !important;
}

form[data-core360-form][hidden] {
  display: none !important;
}

@media (max-width: 600px) {
  #core360-toast-root {
    right: 12px !important;
    bottom: 12px !important;
    width: calc(100vw - 24px) !important;
  }
}
