.elementor-306 .elementor-element.elementor-element-e06dc59{--display:flex;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:80px;--padding-bottom:80px;--padding-left:80px;--padding-right:80px;}.elementor-306 .elementor-element.elementor-element-dac7527{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-306 .elementor-element.elementor-element-ba93861 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:40px;font-weight:500;line-height:140%;letter-spacing:-2px;color:var( --e-global-color-primary );}.elementor-306 .elementor-element.elementor-element-c8f5729{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--border-radius:16px 16px 16px 16px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-306 .elementor-element.elementor-element-c8f5729:not(.elementor-motion-effects-element-type-background), .elementor-306 .elementor-element.elementor-element-c8f5729 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FEC3004D;}.elementor-306 .elementor-element.elementor-element-947ec11 .elementor-icon-wrapper{text-align:start;}.elementor-306 .elementor-element.elementor-element-947ec11 .elementor-icon{font-size:24px;}.elementor-306 .elementor-element.elementor-element-947ec11 .elementor-icon svg{height:24px;}.elementor-306 .elementor-element.elementor-element-55a920d .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:500;line-height:140%;color:#1A1B25B2;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-306 .elementor-element.elementor-element-e06dc59{--content-width:1440px;}}/* Start custom CSS for icon, class: .elementor-element-947ec11 */.elementor-306 .elementor-element.elementor-element-947ec11 {
    height: 24px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04f4cd1 */* {
  font-family: "DM Sans", sans-serif;
}

.form-section-container {
  border-bottom: 1px solid #c1c7d0;
  padding-bottom: 32px;
  padding-top: 24px;
  gap: 16px;
  display: flex;
  flex-direction: column;
}

.no-border-bottom-container {
  border-bottom: none !important;
}

.form-section-container:first-child {
  padding-top: 0;
}

.form-section-container:nth-child(4) {
  padding-bottom: 16px;
}

.section-title {
  font-family: DM Sans;
  font-size: 24px;
  font-weight: 500;
  color: #000000;
  line-height: 150%;
  letter-spacing: -2%;
}

.section-title span {
  font-size: 18px;
  line-height: 140%;
  color: #aaaaaa;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select,
input[type="date"],
input[type="password"] {
  width: 100%;
  padding: 11px 12px;
  border-radius: 8px;
  border: 1px solid #c1c7d0;
  color: #1a1b25;
  outline: none !important;
  font-size: 16px;
  font-weight: 500;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
select::placeholder,
input[type="date"]::placeholder,
input[type="password"]::placeholder {
  font-weight: 400;
}

label {
  color: #1a1b25;
  font-size: 16px;
  font-weight: 500;
}

.inputs-wrapper {
  display: flex;
  gap: 24px;
}

.inputs-wrapper > div {
  width: 50%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.two-part {
  display: flex;
  gap: 8px;
  align-items: center;
}

.two-part > select {
  width: 100px;
}

.checkboxes-wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.checkboxes-wrapper label {
  font-size: 16px;
  font-weight: 400;
  color: #1a1b25;
  line-height: 160%;
  display: flex;
  gap: 16px;
  align-items: center;
}

input[type="checkbox"] {
  width: 24px;
  height: 24px;
  accent-color: #fec300;
  cursor: pointer;
  border-radius: 4px;
}

/* ===== participants / entry form styles (external CSS) ===== */

.hidden {
  display: none !important;
}

.participants {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

/* preview card */
.preview-card {
  background: #aaaaaa1a;
  border-radius: 4px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-weight: 500;
  color: #1a1b25;
}

.preview-card.editing {
  background-color: #fec3004d;
}

.preview-index {
  font-size: 20px;
  line-height: 140%;
  font-weight: 500;
  letter-spacing: -2%;
}

.preview-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 16px;
  border-bottom: 1px solid #c1c7d0;
}

.preview-name {
  font-size: 16px;
}
.preview-meta {
  color: #444;
  font-size: 13px;
}

.dob-wrapper {
  display: flex;
  gap: 16px;
  font-size: 14px;
}

.preview-dob {
  font-weight: 400;
  color: #818898;
}

.meta-wrapper {
  display: flex;
  gap: 24px;
}

.meta-wrapper-item {
  font-size: 14px;
  display: flex;
  gap: 8px;
}

.meta-wrapper-item div {
  display: flex;
  align-items: center;
}

.icon-meta {
  width: 24px;
  height: 24px;
}

.preview-bottom {
  display: flex;
  gap: 8px;
  flex-direction: column;
}

/* participant entry (form) */
.participant-entry {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.section-subtitle {
  font-weight: 500;
  font-size: 18px;
  line-height: 140%;
  letter-spacing: -2%;
  color: #000000;
}

.flex-row {
  display: flex;
  gap: 16px;
  margin-bottom: 12px;
}
.flex-1 {
  flex: 1;
}

.entry-row input[type="text"],
.entry-row input[type="email"],
.entry-row input[type="tel"],
.entry-row select,
.entry-row input[type="date"] {
  border: 1px solid #c1c7d0;
  padding: 9px;
  border-radius: 8px;
  width: 100%;
  font-weight: 500;
  box-sizing: border-box;
}

.participant-phone {
  display: flex;
  gap: 8px;
  align-items: center;
}
.participant-phone select {
  width: 100px;
}

.id-type-row {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.check-type-row {
  gap: 0px;
}

.check-radio {
  height: 48px;
}

.flex-direction-row {
  flex-direction: row !important;

  gap: 24px;
}

.id-radio {
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: 0%;
}

.small-note {
  color: #818898;
  font-size: 13px;
}

/* actions area in entry */
.entry-actions {
  padding-top: 24px;
  display: flex;
  gap: 16px;
}
.add-btn {
  background: transparent;
  border: 1px solid #fec300;
  color: #1a1b25;
  padding: 10px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 600;
}

.add-btn:hover {
  border-color: #04a200;
  transition: 1s;
}

/* form submit */
.form-actions {
  display: flex;
}

.form-actions button {
  width: 100%;
}

input[type="date"] {
  height: 48px;
}

.submit-btn {
  background: #111827;
  color: #fff;
  border: none;
  padding: 12px 18px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 700;
}

/* icon buttons in preview (you will replace svg with your icons if needed) */
.icon-btn {
  background: transparent;
  border: 0;
  padding: 6px;
  cursor: pointer;
  border-radius: 6px;
}

/* responsive */
@media (max-width: 900px) {
  .participants {
    grid-template-columns: 1fr;
  }
  .flex-row {
    flex-direction: column;
  }
  .entry-actions {
    justify-content: flex-start;
  }
}

/* przyciski akcji: tylko ikona, без widocznego przycisku */
.icon-btn {
  background: transparent !important;
  border: 0 !important; /* klikalny obszar */
  margin: 0;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 6px;
}

/* efekt focus/hover - delikatny */
.icon-btn:focus,
.icon-btn:hover svg path {
  stroke: #fec300;
}

/* obrazek ikony wewnątrz buttona */
.action-icon {
  width: 24px;
  height: 24px;
  display: block;
  object-fit: contain;
  pointer-events: none; /* klik trafia w button, nie w obrazek */
}

.right-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.add-btn {
  background: transparent !important;
  color: #1a1b25 !important;
}

/* (opcjonalnie) większy obszar klikalny na mobile:
.icon-btn { padding: 10px; }
*/

.small-btn {
  background: transparent;
  border: 1px solid #fec300;
  padding: 6px 10px;
  border-radius: 8px;
  font-size: 14px;
  cursor: pointer;
}

.import-label {
  font-size: 18px !important;
  line-height: 140% !important;
  font-weight: 500 !important;
}

#csvImportResult {
  max-width: 420px;
}

.title-wrapper {
  display: flex;
  justify-content: space-between;
}

.csv-actions {
  display: flex;
  gap: 16px;
}

.check-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.check-small-text {
  font-size: 14px;
  color: #818898;
}

.check-dates {
  display: flex;
  background: #fec30029;
  border-radius: 16px;
  padding: 16px;
  gap: 16px;
  color: #1a1b25b2;
  font-size: 14px;
  font-weight: 500;
}

.expiry-row {
  display: flex;
  gap: 16px;
  align-items: center;
}

.expiry-icon {
  display: flex;
}

.attachments-drop {
  border: 1px dashed #c1c7d0;
  border-radius: 6px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 16px !important;
  dashes: 2, 2;
  align-items: center;
  justify-content: center;
}

.attachments-drop-wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px 0;
  align-items: center;
  justify-content: center;
  color: #04a200;
}

.attachments-drop-text {
  color: #c1c7d0;
  font-size: 14px;
  font-weight: 400;
}

.attachment-trash {
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  display: flex;
}

.attachment-trash:hover svg path {
  stroke: #fec300;
}

.attachment-count {
  color: #c1c7d0;
  font-size: 16px;
  font-weight: 400;
}

.attachments-area {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.form-tabs {
  display: flex;
  gap: 40px;
  border-bottom: 1px solid #C1C7D0;
  margin-bottom: 32px;
}

.form-tabs button {
  background: transparent;
  border: none;
  font-size: 24px;
  font-weight: 500;
  color: #818898;
  line-height: 150%;
  letter-spacing: -2%;
  cursor: pointer;
  padding: 8px 16px !important;
  border-radius: 0;
}

.form-tabs button.active,
.form-tabs button:hover {
  border-radius: 0;
  background: transparent;
  color: #fec300;
  border: none;
  border-bottom: 2px solid #fec300;
}

.login-panel {
  padding-top: 0;
}

.login-panel-btn{
  
}/* End custom CSS */