.we-wrap { --we-accent: #1f4e79; --we-border: #c9d1da; --we-bg: #f6f8fa; --we-err: #b3261e; max-width: 820px; margin: 0 auto; font-size: 16px; line-height: 1.45; }
.we-form * { box-sizing: border-box; }
.we-info { background: var(--we-bg); border-left: 4px solid var(--we-accent); padding: 12px 16px; margin: 0 0 24px; }
.we-section { border: 1px solid var(--we-border); border-radius: 8px; padding: 16px 20px 20px; margin: 0 0 20px; }
.we-section legend { font-weight: 700; font-size: 1.1em; padding: 0 8px; color: var(--we-accent); }
.we-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
.we-full { grid-column: 1 / -1; }
.we-form label { display: block; font-size: .92em; font-weight: 600; }
.we-form label > input:not([type=checkbox]):not([type=radio]), .we-form label > select, .we-form label > textarea { display: block; margin-top: 4px; }
.we-form label.we-check, .we-radio-row label { display: flex; }
.we-form label.we-check { flex-direction: row; align-items: flex-start; gap: 8px; font-weight: 400; margin: 6px 0; }
.we-form label.we-check input { margin-top: 4px; flex: none; }
.we-form input[type=text], .we-form input[type=email], .we-form input[type=tel], .we-form input[type=date], .we-form select, .we-form textarea {
	width: 100%; padding: 8px 10px; border: 1px solid var(--we-border); border-radius: 6px; font: inherit; font-weight: 400; background: #fff; color: #1a1a1a; }
.we-form input:focus, .we-form select:focus, .we-form textarea:focus { outline: 2px solid var(--we-accent); outline-offset: 0; border-color: var(--we-accent); }
.we-form .we-invalid { border-color: var(--we-err) !important; background: #fff6f5 !important; }
.we-req { color: var(--we-err); }
.we-radio-row { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-bottom: 12px; }
.we-radio-row label { flex-direction: row !important; align-items: center; gap: 6px !important; font-weight: 400 !important; }
.we-hint { font-size: .88em; color: #555; margin: 8px 0; }
.we-hidden { display: none !important; }
.we-mt { margin-top: 16px; }
.we-naleznosc { position: relative; background: var(--we-bg); border-radius: 6px; padding: 12px; margin-bottom: 12px; }
.we-usun { margin-top: 8px; background: none; border: none; color: var(--we-err); cursor: pointer; padding: 0; font-size: .9em; text-decoration: underline; }
.we-naleznosc:only-child .we-usun { display: none; }
.we-sposoby { margin: 8px 0 0 24px; }
.we-sposoby.we-disabled { opacity: .45; pointer-events: none; }
.we-sub { margin: 0 0 8px 26px; width: calc(100% - 26px) !important; }
.we-btn, .we-btn-secondary { font: inherit; border-radius: 6px; cursor: pointer; padding: 10px 20px; }
.we-btn { background: var(--we-accent); color: #fff; border: none; font-weight: 700; font-size: 1.05em; }
.we-btn:hover { filter: brightness(1.12); }
.we-btn-secondary { background: #fff; color: var(--we-accent); border: 1px solid var(--we-accent); }
.we-actions { text-align: center; margin: 24px 0; }
.we-errors { border: 1px solid var(--we-err); background: #fff6f5; color: var(--we-err); border-radius: 6px; padding: 12px 16px; }
.we-errors ul { margin: 4px 0 0 18px; }
.we-done { border: 1px solid #2e7d32; background: #f1f8f1; border-radius: 8px; padding: 16px 20px; }
.we-done h3 { margin-top: 0; color: #2e7d32; }
@media (max-width: 640px) { .we-grid { grid-template-columns: 1fr; } .we-section { padding: 12px; } }
