/* Nowoczesne style formularzy zgodne z system.css */
.formularz {
  max-width: 420px;
  width: 100%;
  margin: 36px auto;
  padding: 28px 22px;
  background: var(--win-bg);
  border-radius: var(--win-radius);
  box-shadow: var(--win-shadow);
  border: 1.5px solid var(--win-border);
  backdrop-filter: var(--blur);
  transition: box-shadow var(--transition), border var(--transition);
  max-height: 80vh;
  overflow-y: auto;
@media (max-width: 600px) {
  .formularz {
    max-width: 98vw;
    padding: 16px 6px;
  }
}
}

.formularz::-webkit-scrollbar {
  width: 8px;
}
.formularz::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.08);
  border-radius: 4px;
}
.formularz::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,0.16);
}

.formularz:hover {
  box-shadow: 0 12px 40px rgba(0,0,0,0.12);
  border-color: var(--win-accent-light);
}
.formularz-title {
  margin-bottom: 22px;
  font-size: 1.35em;
  font-weight: 600;
  text-align: center;
  color: var(--win-accent);
  letter-spacing: 0.02em;
}
.formularz-form {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.formularz-label {
  font-weight: 500;
  margin-bottom: 0.5em;
  color: var(--win-text-dim);
}
.formularz-input,
.formularz-select,
.formularz-textarea {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid var(--win-border);
  border-radius: var(--win-radius-sm);
  font-size: 1em;
  margin-top: 2px;
  box-sizing: border-box;
  background: #f7f9fb;
  color: var(--win-text);
  transition: border var(--transition), background var(--transition);
}
.formularz-input:focus,
.formularz-select:focus,
.formularz-textarea:focus {
  border-color: var(--win-accent);
  background: #fff;
  outline: none;
}
.formularz-select {
  appearance: none;
  background: #f7f9fb url('data:image/svg+xml;utf8,<svg fill="%232563eb" height="16" viewBox="0 0 24 24" width="16" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat right 12px center/18px;
}
.formularz-textarea {
  min-height: 70px;
  resize: vertical;
}
.formularz-btn {
  min-width: 120px;
  padding: 10px 28px;
  border-radius: var(--win-radius-sm);
  font-size: 1rem;
  font-weight: 500;
  border: 1.5px solid var(--win-border);
  background: var(--win-accent);
  color: #fff;
  cursor: pointer;
  outline: none;
  transition: background 0.16s, border 0.16s, color 0.16s;
  margin: 0 2px;
  letter-spacing: 0.01em;
}
.formularz-btn:hover,
.formularz-btn:focus {
  background: var(--win-accent-light);
  color: var(--win-accent);
  border-color: var(--win-accent);
}
.formularz-btn.cancel {
  background: #f7f9fb;
  color: #444;
  border-color: #bdbdbd;
}
.formularz-btn.cancel:hover,
.formularz-btn.cancel:focus {
  background: #b71c1c;
  color: #fff;
  border-color: #b71c1c;
}
