.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-radio { margin: 4px 0 10px; font-size: .95em; }
.we-miesiac { display: grid; grid-template-columns: 1.3fr .8fr 1fr 1.3fr auto; gap: 8px 10px; align-items: end; padding: 8px 0; border-bottom: 1px dashed var(--we-border); }
.we-m-usun { background: none; border: 1px solid var(--we-border); border-radius: 6px; color: var(--we-err); cursor: pointer; padding: 8px 10px; line-height: 1; }
.we-miesiac:only-child .we-m-usun { visibility: hidden; }
.we-btn-small { padding: 6px 12px; font-size: .9em; margin-top: 10px; }
.we-u-suma { margin-left: 12px; font-weight: 700; }
@media (max-width: 640px) { .we-miesiac { grid-template-columns: 1fr 1fr; } .we-m-usun { justify-self: start; } }
.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; } }

.we-tabs { max-width: 820px; margin: 0 auto 20px; display: flex; flex-wrap: wrap; gap: 8px; border-bottom: 2px solid #1f4e79; }
.we-tab { padding: 10px 18px; border: 1px solid #c9d1da; border-bottom: none; border-radius: 8px 8px 0 0; background: #f6f8fa; color: #1f4e79 !important; text-decoration: none !important; font-weight: 600; margin-bottom: -2px; }
.we-tab:hover { background: #e8eef4; }
.we-tab.we-tab-active { background: #1f4e79; border-color: #1f4e79; color: #fff !important; }
@media (max-width: 640px) { .we-tab { flex: 1 1 100%; border-radius: 6px; margin-bottom: 4px; border-bottom: 1px solid #c9d1da; } .we-tabs { border-bottom: none; } }

.we-subhead { margin: 20px 0 4px; font-size: 1em; }
.we-zal-row { display: flex; gap: 8px; margin-bottom: 8px; }
.we-zal-row input { flex: 1; }
