.uzz-audyt-form{
  --error:#C0392B;
  --success:#1E7B45;

  font-family:var(--sans);
  color:var(--ink);
  max-width:480px;
  margin:0 auto;
  padding:32px;
  background:#FFFFFF;
  border:1px solid var(--border);
  border-radius:var(--radius);
}

.uzz-form-row{
  margin-bottom:20px;
  display:flex;
  flex-direction:column;
}

.uzz-audyt-form label{
  font-weight:600;
  font-size:15px;
  color:var(--navy);
  margin-bottom:6px;
}

.uzz-optional{
  font-weight:400;
  color:var(--ink-light);
  font-size:13px;
}

.uzz-audyt-form input[type="text"],
.uzz-audyt-form input[type="email"],
.uzz-audyt-form input[type="tel"],
.uzz-audyt-form input[type="number"],
.uzz-audyt-form textarea{
  font-family:var(--sans);
  font-size:16px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  color:var(--ink);
  background:#fff;
}

.uzz-audyt-form textarea{
  resize:vertical;
  min-height:96px;
}

.uzz-audyt-form input:focus,
.uzz-audyt-form textarea:focus{
  outline:none;
  border-color:var(--navy);
  box-shadow:0 0 0 3px rgba(10,42,87,0.12);
}

.uzz-audyt-form input.uzz-invalid,
.uzz-audyt-form textarea.uzz-invalid{
  border-color:var(--error);
}

.uzz-error{
  color:var(--error);
  font-size:13px;
  margin-top:6px;
  min-height:0;
}

.uzz-potrzeba-info{
  font-size:14px;
  color:var(--navy);
  background:#F4F5F7;
  border-left:3px solid var(--orange);
  padding:10px 14px;
  border-radius:4px;
  margin:-4px 0 20px;
}

.uzz-potrzeba-info[hidden]{
  display:none;
}

/* Honeypot — ukryte wizualnie i dla czytników ekranu, ale obecne w DOM dla botów */
.uzz-honeypot{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.uzz-checkbox{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-weight:400 !important;
  font-size:14px;
  color:var(--ink) !important;
  cursor:pointer;
}

.uzz-checkbox input[type="checkbox"]{
  margin-top:3px;
  width:18px;
  height:18px;
  flex-shrink:0;
}

.uzz-checkbox a{
  color:var(--navy);
  text-decoration:underline;
}

/* .uzz-btn-cta bazowy styl jest już w global.css — tu tylko stany specyficzne dla formularza */
.uzz-btn-cta{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:none;
}

.uzz-btn-cta:disabled{
  opacity:0.7;
  cursor:not-allowed;
}

.uzz-btn-spinner{
  width:16px;
  height:16px;
  border:2px solid rgba(255,255,255,0.5);
  border-top-color:#fff;
  border-radius:50%;
  animation:uzz-spin 0.7s linear infinite;
}

.uzz-btn-spinner[hidden]{
  display:none;
}

@keyframes uzz-spin{
  to{ transform:rotate(360deg); }
}

@media (prefers-reduced-motion: reduce){
  .uzz-btn-spinner{ animation:none; }
}

.uzz-form-status{
  margin-top:16px;
  font-size:15px;
  text-align:center;
  min-height:0;
}

.uzz-form-status.uzz-status-error{
  color:var(--error);
}

.uzz-form-status.uzz-status-success{
  color:var(--success);
}

/* :focus-visible jest już zdefiniowany globalnie w global.css — nie powtarzamy tutaj */
