.lag-form-wrapper,
.lag-form-wrapper *{
  box-sizing:border-box;
}

.lag-form-wrapper{
  max-width:920px;
  margin:24px auto;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
}

.lag-form{
  width:100%;
  margin:0;
  padding:28px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  box-shadow:none;
}

.lag-form h3{
  margin:0 0 12px;
  font-size:2rem;
  line-height:1.15;
  font-weight:700;
  color:#111827;
}

.lag-form-intro,
.lag-form-note,
.lag-form-section-note{
  margin:0 0 12px;
  font-size:0.98rem;
  line-height:1.65;
  color:#4b5563;
}

.lag-form-note{
  margin-bottom:18px;
}

.lag-form-section-title{
  margin:20px 0 8px;
  padding:0;
  border:0;
  font-size:1.25rem;
  line-height:1.3;
  font-weight:700;
  color:#111827;
}

.lag-form-readiness,
.lag-form-wizard__progress,
.lag-form-step-helper{
  display:none !important;
}

.lag-form-error-global{
  display:none;
  margin:0 0 16px;
  padding:12px 14px;
  border:1px solid #fecaca;
  border-radius:8px;
  background:#fff;
  color:#991b1b;
  font-size:0.92rem;
  line-height:1.5;
}

.lag-form-error-global:not(:empty){
  display:block;
}

.lag-form-wizard{
  margin-top:20px;
}

.lag-form-wizard__steps{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 20px;
}

.lag-form-wizard__step{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  color:#111827;
  font:inherit;
  line-height:1.2;
  cursor:pointer;
  box-shadow:none;
}

.lag-form-wizard__step-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#fff;
  font-size:0.82rem;
  font-weight:600;
  color:#374151;
}

.lag-form-wizard__step-label{
  font-size:0.95rem;
  font-weight:600;
}

.lag-form-wizard__step.is-active{
  border-color:#111827;
}

.lag-form-wizard__step.is-active .lag-form-wizard__step-number,
.lag-form-wizard__step.is-complete .lag-form-wizard__step-number{
  border-color:#111827;
  background:#111827;
  color:#fff;
}

.lag-form-step-panel[hidden],
.lag-form-accordion-panel[hidden],
.lag-progress[hidden]{
  display:none !important;
}

.lag-form-step-panel{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}

.lag-form-section-card,
.lag-industry-templates,
.lag-form-accordion,
.lag-form-review,
.lag-form-submit-panel,
.lag-admin-advanced{
  margin:0 0 20px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.lag-industry-templates__header{
  margin:0 0 12px;
}

.lag-industry-templates__header strong{
  display:block;
  margin:0 0 4px;
  font-size:1rem;
  color:#111827;
}

.lag-field-hint-inline,
.lag-form .lag-field-hint,
.lag-form .lag-field-group__hint{
  margin:6px 0 0;
  font-size:0.92rem;
  line-height:1.55;
  color:#6b7280;
}

.lag-form label,
.lag-form .lag-field{
  display:block;
  width:100%;
  margin:0 0 18px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  font-size:0.98rem;
  line-height:1.45;
  font-weight:600;
  color:#111827;
}

.lag-form label.lag-col-6,
.lag-form label.lag-col-12,
.lag-form label.lag-field-key,
.lag-form label.lag-field-key-main,
.lag-form label.lag-field-key-secondary{
  width:100%;
  max-width:none;
}

.lag-form input[type=text],
.lag-form input[type=email],
.lag-form input[type=number],
.lag-form select,
.lag-form textarea,
.lag-chips-input{
  display:block;
  width:100%;
  margin-top:8px;
  padding:11px 12px;
  border:1px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  color:#111827;
  font:inherit;
  line-height:1.4;
  box-shadow:none;
}

.lag-form textarea{
  min-height:108px;
  resize:vertical;
}

.lag-form select{
  appearance:auto;
}

.lag-form input::placeholder,
.lag-form textarea::placeholder{
  color:#9ca3af;
}

.lag-form input:focus,
.lag-form select:focus,
.lag-form textarea:focus,
.lag-chips-input:focus{
  outline:0;
  border-color:#111827;
  box-shadow:0 0 0 1px #111827;
}

.lag-char-counter,
.lag-item-counter{
  display:block;
  margin-top:6px;
  text-align:right;
  font-size:0.82rem;
  color:#6b7280;
  font-weight:400;
}

.lag-char-counter.is-over,
.lag-item-counter.is-over{
  color:#b91c1c;
}

.lag-form .lag-field-error{
  margin:6px 0 0;
  font-size:0.88rem;
  line-height:1.45;
  color:#b91c1c;
  font-weight:400;
}

.lag-form input.is-invalid,
.lag-form textarea.is-invalid,
.lag-form select.is-invalid,
.lag-chips-input.is-invalid{
  border-color:#b91c1c;
  box-shadow:0 0 0 1px #b91c1c;
}

.lag-form input.is-valid,
.lag-form textarea.is-valid,
.lag-form select.is-valid{
  border-color:#9ca3af;
  box-shadow:none;
}

.lag-industry-template-select-wrap{
  display:block;
  margin:0 0 8px;
  padding:0;
  border:0;
  background:transparent;
}

.lag-industry-template-select-label{
  display:block;
  margin:0 0 4px;
  font-size:0.92rem;
  font-weight:600;
  color:#111827;
}

.lag-industry-template-select-hint{
  margin-bottom:10px;
}

.lag-industry-template-preview,
.lag-industry-template-applied-notice,
.lag-form-review{
  padding:14px;
  border:1px solid #e5e7eb;
  border-radius:8px;
  background:#fff;
}

.lag-industry-template-preview strong,
.lag-form-review__head strong,
.lag-form-submit-panel__copy strong{
  display:block;
  margin:0 0 8px;
  color:#111827;
}

.lag-industry-template-preview p,
.lag-form-review__head p,
.lag-form-submit-panel__copy p{
  margin:0 0 8px;
  color:#4b5563;
  line-height:1.55;
  font-weight:400;
}

.lag-industry-template-preview__badges,
.lag-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0;
}

.lag-industry-template-badge,
.lag-chip,
.lag-form-review__label{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border:1px solid #d1d5db;
  border-radius:999px;
  background:#fff;
  color:#4b5563;
  font-size:0.82rem;
  line-height:1.2;
  font-weight:500;
}

.lag-chips-wrapper,
.lag-field-group{
  margin-top:8px;
}

.lag-chip{
  gap:6px;
}

.lag-chip button,
.lag-chip .lag-chip__remove{
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  color:#6b7280;
  cursor:pointer;
  font:inherit;
}

.lag-field-group{
  display:grid;
  gap:12px;
}

.lag-field-group__item{
  display:block;
}

.lag-field-group__title{
  display:block;
  margin:0 0 4px;
  font-size:0.92rem;
  font-weight:600;
  color:#111827;
}

.lag-form-accordion{
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.lag-form-accordion-toggle{
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  text-align:left;
  cursor:pointer;
}

.lag-form-accordion-toggle__title{
  display:block;
  margin:0 0 4px;
  font-size:1rem;
  font-weight:700;
  color:#111827;
}

.lag-form-accordion-toggle__meta{
  display:block;
  font-size:0.92rem;
  font-weight:400;
  color:#6b7280;
}

.lag-form-accordion-panel{
  padding-top:14px;
}

.lag-form-review__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}

.lag-form-review__item{
  padding:12px;
  border:1px solid #e5e7eb;
  border-radius:8px;
  background:#fff;
}

.lag-form-review__item.is-missing{
  background:#fafafa;
}

.lag-form-review__label{
  margin-bottom:8px;
}

.lag-form-review__value{
  color:#111827;
  font-size:0.95rem;
  line-height:1.55;
  font-weight:400;
}

.lag-form-review__item.is-missing .lag-form-review__value{
  color:#6b7280;
}

.lag-form-captcha-card{
  display:block;
  margin:18px 0;
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.lag-form-captcha-card input{
  max-width:180px;
}

.lag-form-submit-panel{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:12px;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.lag-form-submit-panel__copy{
  display:none;
}

.lag-form-step-nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin:24px 0 0;
  padding-top:16px;
  border-top:1px solid #e5e7eb;
}

.lag-form-step-btn,
.lag-form .lag-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 16px;
  border:1px solid #111827;
  border-radius:8px;
  background:#111827;
  color:#fff;
  font:inherit;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  box-shadow:none;
}

.lag-form-step-btn--secondary{
  border-color:#d1d5db;
  background:#fff;
  color:#111827;
}

.lag-form-step-btn--primary,
.lag-form .lag-btn{
  margin-left:auto;
}

.lag-form-step-btn:hover,
.lag-form .lag-btn:hover,
.lag-form-step-btn:focus,
.lag-form .lag-btn:focus{
  opacity:1;
  transform:none;
}

.lag-form-step-feedback{
  margin-top:16px;
  padding:10px 12px;
  border:1px solid #e5e7eb;
  border-radius:8px;
  background:#fafafa;
  color:#4b5563;
  font-size:0.92rem;
  line-height:1.5;
}

.lag-form-step-feedback.is-error{
  border-color:#fecaca;
  color:#991b1b;
  background:#fff;
}

.lag-form-step-feedback.is-success{
  border-color:#d1d5db;
  color:#374151;
  background:#fff;
}

.lag-admin-advanced{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.lag-hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

.lag-progress{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:9999;
  width:min(360px,calc(100vw - 32px));
  padding:16px;
  border:1px solid #d1d5db;
  border-radius:10px;
  background:#fff;
  box-shadow:0 12px 28px rgba(17,24,39,0.12);
}

.lag-progress-close{
  position:absolute;
  top:8px;
  right:8px;
  width:28px;
  height:28px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#6b7280;
  font-size:18px;
  line-height:1;
  cursor:pointer;
}

.lag-progress-inner{
  height:8px;
  border-radius:999px;
  background:#111827;
  width:0;
}

.lag-progress-text{
  display:block;
  margin-top:8px;
  font-size:0.85rem;
  color:#4b5563;
}

.lag-progress-msg{
  margin:8px 0 0;
  color:#111827;
  font-size:0.94rem;
  line-height:1.5;
}

.lag-progress-msg-detail,
.lag-progress-msg-note{
  display:block;
  margin-top:4px;
  color:#6b7280;
  font-size:0.88rem;
}

.lag-progress-actions{
  margin-top:10px;
}

@media (max-width: 782px){
  .lag-form-wrapper{
    margin:16px auto;
  }

  .lag-form{
    padding:18px;
    border-radius:10px;
  }

  .lag-form h3{
    font-size:1.7rem;
  }

  .lag-form-wizard__steps{
    flex-direction:column;
  }

  .lag-form-wizard__step,
  .lag-form-step-btn,
  .lag-form .lag-btn{
    width:100%;
  }

  .lag-form-step-nav,
  .lag-form-submit-panel{
    flex-direction:column-reverse;
    align-items:stretch;
  }

  .lag-form-step-btn--primary,
  .lag-form .lag-btn{
    margin-left:0;
  }

  .lag-form-review__grid{
    grid-template-columns:1fr;
  }
}
