/* ===== KHOORK – Corporate Forms (all shortcodes) ===== */
:root{
  --kcr-primary:#d4af37;      /* KHOORK gold */
  --kcr-text:#111;
  --kcr-muted:#6b7280;
  --kcr-bg:#ffffff;
  --kcr-soft:#f7f7f8;
  --kcr-border:#e5e7eb;
  --kcr-ok:#16a34a;
  --kcr-danger:#b00020;
  --kcr-radius:14px;
  --kcr-shadow:0 6px 20px rgba(0,0,0,.06);
}

/* Centered card wrapper */
.khoork-form-wrapper{
  --gap:18px;
  color:var(--kcr-text);
  max-width: 600px;               /* keep forms compact & centered */
  margin: 40px auto;
  padding: clamp(16px,2.5vw,28px);
  background: var(--kcr-bg);
  border: 1px solid var(--kcr-border);
  border-radius: var(--kcr-radius);
  box-shadow: var(--kcr-shadow);
  font-size: 14px;                /* base font for entire form */
  line-height: 1.4;
}

/* --- Fieldset blocks --- */
.khoork-form-wrapper fieldset{
  border:1px solid var(--kcr-border);
  background:#fff;
  border-radius: var(--kcr-radius);
  padding: clamp(14px,2.2vw,22px);
  margin: 0 0 18px;
  box-shadow: var(--kcr-shadow);
}

/* Section headings (smaller, normalized) */
.khoork-form-wrapper h3,
.khoork-form-wrapper fieldset h3,
.khoork-info h3{
  font-size: clamp(14px,1.5vw,16px);
  font-weight:600;
  margin: 0 0 8px;
  line-height:1.3;
}

/* --- Labels & inputs (normalized smaller) --- */
.khoork-form-wrapper label{
  display:block;
  font-weight:500;
  font-size: 13px;
  margin: 6px 0 4px;
  line-height:1.3;
}

.khoork-form-wrapper input[type="text"],
.khoork-form-wrapper input[type="email"],
.khoork-form-wrapper input[type="number"],
.khoork-form-wrapper input[type="tel"],
.khoork-form-wrapper select,
.khoork-form-wrapper textarea{
  width:100%;
  border:1px solid var(--kcr-border);
  border-radius:10px;
  background: var(--kcr-soft);
  padding: 9px 11px;              /* tighter to match smaller labels */
  font-size: 13.5px;
  line-height:1.35;
  outline: none;
  transition: box-shadow .15s ease, border-color .15s ease, background .15s ease;
}
.khoork-form-wrapper textarea{ min-height: 110px; resize: vertical; }

.khoork-form-wrapper input:focus,
.khoork-form-wrapper select:focus,
.khoork-form-wrapper textarea:focus{
  border-color: var(--kcr-primary);
  background:#fff;
  box-shadow: 0 0 0 3px rgba(212,175,55,.18);
}

/* --- Checkbox rows (normalized) --- */
.khoork-form-wrapper .kcr-checks{
  display:flex; flex-wrap:wrap; gap:10px 18px; margin: 8px 0 6px;
}
.khoork-form-wrapper .kcr-checks label{
  display:inline-flex; align-items:center; gap:8px;
  font-weight:500; margin:0; font-size:13px;
}
.khoork-form-wrapper input[type="checkbox"]{ transform: translateY(1px); }

/* --- Progress --- */
.khoork-form-wrapper .kcr-progress{
  width:100%; height:8px; border-radius:999px;
  background: var(--kcr-soft);
  overflow:hidden; margin:0 0 12px;
}
.khoork-form-wrapper .kcr-progress .kcr-bar{
  height:100%; width:0%;
  background: linear-gradient(90deg,var(--kcr-primary),#f2c95e);
  transition: width .35s ease;
}

/* --- Buttons (normalized size + spacing) --- */
.khoork-form-wrapper .kcr-nav{
  display:flex; gap:10px; margin-top: 12px;
}
.khoork-form-wrapper .kcr-nav .kcr-next,
.khoork-form-wrapper .kcr-nav .kcr-prev,
.khoork-form-wrapper .kcr-submit,
.khoork-form-wrapper button[type="submit"],
.kcr-btn-check{
  appearance:none;
  border:none;
  border-radius: 999px;
  padding: 9px 16px;
  font-size: 13.5px;
  font-weight:700; letter-spacing:.2px;
  cursor:pointer;
  transition: transform .05s ease, box-shadow .2s ease, background .2s ease;
  margin-top: 16px;              /* breathing room from inputs */
}
.khoork-form-wrapper .kcr-nav .kcr-next,
.khoork-form-wrapper .kcr-submit,
.khoork-form-wrapper button[type="submit"],
.kcr-btn-check{
  background: var(--kcr-primary);
  color:#1b1b1b;
  box-shadow: 0 6px 16px rgba(212,175,55,.35);
}
.khoork-form-wrapper .kcr-nav .kcr-prev{
  background:#fff; color:#111; border:1px solid var(--kcr-border);
}
.khoork-form-wrapper .kcr-nav button:active,
.khoork-form-wrapper .kcr-submit:active{ transform: translateY(1px); }

/* --- Success & error messages --- */
.khoork-form-wrapper .kcr-success{
  border:1px solid #dcfce7; background:#f0fdf4; color:#064e3b;
  padding:14px; border-radius:12px; box-shadow: var(--kcr-shadow);
  font-size:13.5px;
}
.khoork-form-wrapper .kcr-error{
  border:1px solid #fee2e2; background:#fef2f2; color:var(--kcr-danger);
  padding:14px; border-radius:12px; box-shadow: var(--kcr-shadow);
  font-size:13.5px;
}

/* --- Honeypot --- */
.khoork-form-wrapper .kcr-honeypot{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; }

/* --- File input --- */
.khoork-form-wrapper input[type="file"]{
  display:block; width:100%; padding:8px; background:#fff;
  border:1px dashed var(--kcr-border); border-radius:10px;
  font-size:13px;
}

/* --- Tables (used in status/success blocks) --- */
.khoork-form-wrapper table{ width:100%; border-collapse: collapse; }
.khoork-form-wrapper td, .khoork-form-wrapper th{
  border:1px solid var(--kcr-border); padding:8px; font-size:13.5px;
}

/* Form titles (top of each form) */
.khoork-form-wrapper .kcr-form-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 20px;
  text-align: center;
  color: var(--kcr-text);
}

/* Show one step at a time */
.khoork-form-wrapper .kcr-step { display:none; }
.khoork-form-wrapper .kcr-step.kcr-active { display:block; }

/* Optional: highlight invalid field briefly */
.khoork-form-wrapper .kcr-invalid {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,.15) !important;
}


/* ===== Responsive layout ===== */
@media (min-width: 640px){
  .khoork-form-wrapper fieldset{ padding: 22px 22px; }
}
@media (min-width: 768px){
  .khoork-form-wrapper fieldset{
    display:grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: auto;
    gap: var(--gap);
  }
  .khoork-form-wrapper fieldset h3{ grid-column: 1 / -1; margin-bottom: 4px; }
  .khoork-form-wrapper fieldset > label,
  .khoork-form-wrapper fieldset > .kcr-checks,
  .khoork-form-wrapper fieldset > input,
  .khoork-form-wrapper fieldset > select,
  .khoork-form-wrapper fieldset > textarea{
    grid-column: span 6;
  }
  .khoork-form-wrapper fieldset > .kcr-checks,
  .khoork-form-wrapper fieldset > textarea,
  .khoork-form-wrapper fieldset[data-step="4"] input[type="file"]{
    grid-column: 1 / -1;
  }
  .khoork-form-wrapper fieldset .kcr-nav{ grid-column: 1 / -1; justify-content: flex-end; }
}
@media (max-width: 389px){
  .khoork-form-wrapper{ --gap:14px; }
  .khoork-form-wrapper .kcr-nav{ flex-wrap:wrap; }
}
