/* Darek-Bus form presentation */
.influencja-generated-form { --form-accent: #e30016; --form-ink: #211c1a; --form-muted: #6e6865; --form-line: #ded9d7; width: 100%; margin: 0; color: var(--form-ink); font-family: 'Google Sans', Arial, sans-serif; }
.influencja-generated-form form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 18px; }
.influencja-generated-form form > p, .influencja-generated-form form > .influencja-generated-form__group { grid-column: 1 / -1; margin: 0; }
.influencja-generated-form label, .influencja-generated-form__choice legend { display: block; margin: 0 0 8px; color: var(--form-ink); font-size: 15px; font-weight: 400; line-height: 1.35; }
.influencja-generated-form__label-row { display: flex; align-items: center; gap: 8px; }
.influencja-generated-form__label-row > label { margin-bottom: 0; }
.influencja-generated-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { display: block; width: 100%; min-height: 54px; padding: 14px 16px; color: var(--form-ink); background: #fff; border: 1px solid var(--form-line); border-radius: 10px; box-shadow: none; font: inherit; font-size: 16px; line-height: 1.35; transition: border-color .2s ease, box-shadow .2s ease; }
.influencja-generated-form textarea { min-height: 150px !important; resize: vertical; }
.influencja-generated-form :is(input, select, textarea)::placeholder { color: #aaa4a1; opacity: 1; }
.influencja-generated-form :is(input, select, textarea):focus-visible { border-color: var(--form-accent); outline: 0;  }
.influencja-generated-form__group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 18px; padding: 30px; background: #F3F3F3; border: 0; border-radius: 16px; }
.influencja-generated-form__group[hidden] { display: none; }
.influencja-generated-form__group > header { grid-column: 1 / -1; padding: 0 0 16px; border-bottom: 1px solid #ddd7d4; }
.influencja-generated-form__group > header:has(h3:empty) { display: none; }
.influencja-generated-form__group > header h3 { margin: 0; color: var(--form-ink); font-family: inherit; font-size: 28px; font-weight: 600; letter-spacing: -.03em; line-height: 1.1; }
.influencja-generated-form__group > header p { margin: 8px 0 0; color: var(--form-muted); font-size: 15px; }
.influencja-generated-form__group > :is(.influencja-generated-form__field, .influencja-generated-form__checkbox, .influencja-generated-form__choice) { grid-column: 1 / -1; margin: 0; }
.influencja-generated-form__group > .influencja-generated-form__field--half, .influencja-generated-form__group > .influencja-generated-form__choice.influencja-generated-form__field--half { grid-column: auto; }
.influencja-generated-form__choice { padding: 0; border: 0; }
.influencja-generated-form__choice label { display: flex; align-items: center; gap: 9px; margin: 9px 0; color: var(--form-muted); font-weight: 400; }
.influencja-generated-form :is(input[type="checkbox"], input[type="radio"]) { width: 18px; height: 18px; margin: 0; accent-color: var(--form-accent); }
.influencja-generated-form__checkbox { padding: 17px 18px; background: #F3F3F3; border-radius: 10px; }
.influencja-generated-form__checkbox label { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 10px; align-items: start; margin: 0; color: var(--form-muted); font-size: 14px; font-weight: 400; line-height: 1.45; }
.influencja-generated-form__checkbox input { margin-top: 1px; }
.influencja-generated-form .wp-element-button, .influencja-generated-form button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-width: 174px; min-height: 54px; padding: 14px 28px; color: #fff; background: var(--form-accent); border: 1px solid var(--form-accent); border-radius: 999px; font: 600 16px/1.2 'Google Sans', Arial, sans-serif; text-decoration: none; cursor: pointer; transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
.influencja-generated-form form > p:last-child { margin-top: 4px; text-align: left; }
.influencja-generated-form .wp-element-button:hover, .influencja-generated-form .wp-element-button:focus-visible, .influencja-generated-form button[type="submit"]:hover, .influencja-generated-form button[type="submit"]:focus-visible { color: #fff; background: #a90011; border-color: #a90011; outline: 0; transform: translateY(-2px); }
.influencja-generated-form button[type="submit"].is-loading { color: transparent; cursor: wait; }
.influencja-generated-form button[type="submit"].is-loading::after { width: 18px; height: 18px; border: 2px solid rgba(255, 255, 255, .45); border-top-color: #fff; border-radius: 50%; content: ''; animation: influencja-forms-spinner .7s linear infinite; }
.influencja-generated-form .has-validation-error { border-color: #b91c1c !important; box-shadow: 0 0 0 3px rgba(185, 28, 28, .12) !important; }
.influencja-generated-form__field-error { display: block; margin-top: 7px; color: #b91c1c; font-size: 13px; line-height: 1.35; }
.influencja-generated-form__notice { padding: 15px 18px; margin: 0 0 22px; border-radius: 10px; font-size: 15px; line-height: 1.45; }
.influencja-generated-form__notice.is-success { color: #14532d; background: #dcfce7; }
.influencja-generated-form__notice.is-error { color: #7f1d1d; background: #fee2e2; }
.influencja-generated-form__hp, .influencja-file-upload__input { position: absolute; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0 !important; }
.influencja-file-upload { display: block; }
.influencja-file-upload__dropzone { display: grid; min-height: 128px; padding: 22px; color: var(--form-muted); text-align: center; background: #fff; border: 1px dashed #d5a1a8; border-radius: 10px; cursor: pointer; place-content: center; }
.influencja-file-upload__dropzone strong { color: var(--form-ink); }
.influencja-file-upload.is-dragover .influencja-file-upload__dropzone, .influencja-file-upload__input:focus-visible + .influencja-file-upload__dropzone { border-color: var(--form-accent); background: #fff4f5; outline: 3px solid rgba(227, 0, 22, .13); }
.influencja-file-upload__list { display: grid; gap: 7px; margin-top: 10px; }
.influencja-file-upload__item { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; color: var(--form-muted); background: #fff; border: 1px solid var(--form-line); border-radius: 8px; font-size: 14px; }
.influencja-file-upload__remove { padding: 0; color: var(--form-accent); background: transparent; border: 0; font: inherit; font-weight: 700; cursor: pointer; }
.influencja-field-help { position: relative; display: inline-flex; }
.influencja-field-help__toggle { width: 20px; height: 20px; padding: 0; color: var(--form-accent); background: #fff; border: 1px solid currentColor; border-radius: 50%; font: 700 12px/1 Arial, sans-serif; cursor: help; }
.influencja-field-help__tooltip { position: absolute; z-index: 10; top: calc(100% + 8px); left: 0; width: min(280px, calc(100vw - 48px)); padding: 11px 13px; color: #fff; background: #211c1a; border-radius: 8px; font-size: 13px; line-height: 1.4; opacity: 0; pointer-events: none; transform: translateY(-4px); transition: opacity .16s ease, transform .16s ease; visibility: hidden; }
.influencja-field-help:hover .influencja-field-help__tooltip, .influencja-field-help:focus-within .influencja-field-help__tooltip, .influencja-field-help.is-open .influencja-field-help__tooltip { opacity: 1; pointer-events: auto; transform: translateY(0); visibility: visible; }
@keyframes influencja-forms-spinner { to { transform: rotate(360deg); } }
@media (max-width: 720px) { .influencja-generated-form form, .influencja-generated-form__group { grid-template-columns: 1fr; gap: 18px; } .influencja-generated-form__group { padding: 22px; border-radius: 12px; } .influencja-generated-form__group > .influencja-generated-form__field--half, .influencja-generated-form__group > .influencja-generated-form__choice.influencja-generated-form__field--half { grid-column: 1 / -1; } .influencja-generated-form__group > header h3 { font-size: 24px; } .influencja-generated-form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { font-size: 16px; } .influencja-generated-form button[type="submit"] { width: 100%; } }
