/* GV Wizard 0.4 TEST -- combined compact accordion + Rules Engine v2.
 * ONLY applies to .variations.gv-wizard-v2. No JTL inputs are duplicated.
 */
.variations.gv-wizard-v2 {
  --gvw-primary: var(--color-primary, #6CABDD);
  --gvw-navy: var(--color-navy, #1C2C5B);
  --gvw-deep: var(--color-deep-blue, #001E50);
  --gvw-accent: var(--color-accent, #DB0A40);
  --gvw-highlight: var(--color-highlight, #FFCC00);
  --gvw-white: var(--color-white, #FFFFFF);
  --gvw-grey: var(--color-grey, #F5F7FA);
  --gvw-track: #d8dce4;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:0 !important;
  min-width:0;
}
.variations.gv-wizard-v2 .gvw-step {
  width:100% !important;
  min-width:0;
  box-sizing:border-box;
  padding:0 !important;
  margin:0 !important;
  background:var(--gvw-white);
  border:1px solid #d9e2ee !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible;
}
.variations.gv-wizard-v2 .gvw-step:first-of-type {border-radius:8px 8px 0 0 !important}
.variations.gv-wizard-v2 .gvw-step.gvw-is-current {
  border:1px solid var(--gvw-primary) !important;
  border-radius:8px !important;
  margin:4px 0 10px !important;
  box-shadow:0 2px 10px rgba(0,30,80,.06) !important;
}
.variations.gv-wizard-v2 .gvw-header {
  display:flex;
  width:100%;
  box-sizing:border-box;
  gap:12px;
  justify-content:space-between;
  align-items:center;
  padding:13px 15px;
  min-height:48px;
  background:var(--gvw-white);
  border:0;
  font:inherit;
  font-size:.92rem;
  font-weight:650;
  line-height:1.45;
  text-align:left;
  color:var(--gvw-deep);
  cursor:pointer;
}
.variations.gv-wizard-v2 .gvw-header-title {flex:0 1 auto;min-width:0}
.variations.gv-wizard-v2 .gvw-header-value {
  flex:1 1 auto;
  min-width:0;
  color:var(--gvw-deep);
  text-align:right;
  font-weight:600;
  overflow-wrap:anywhere;
}
.variations.gv-wizard-v2 .gvw-header-value[hidden] {display:none !important}
.variations.gv-wizard-v2 .gvw-step.gvw-is-current > .gvw-header {
  color:var(--gvw-white) !important;
  background:var(--gvw-deep) !important;
  border-radius:6px 6px 0 0;
  cursor:default;
}
.variations.gv-wizard-v2 .gvw-step.gvw-locked > .gvw-header {
  color:#a3adb9 !important;
  background:#fafbfc !important;
  cursor:not-allowed;
}
.variations.gv-wizard-v2 .gvw-header:focus-visible,
.variations.gv-wizard-v2 .gvw-btn:focus-visible,
.variations.gv-wizard-v2 .gvw-choice-tile:focus-within {outline:3px solid var(--gvw-primary);outline-offset:2px}
.variations.gv-wizard-v2 .gvw-original-title {display:none !important}
/* Collapses the original JTL group contents without moving or changing inputs. */
.variations.gv-wizard-v2 .gvw-step:not(.gvw-open) > :not(.gvw-header) {display:none !important}
.variations.gv-wizard-v2 .gvw-step.gvw-open > :not(.gvw-header):not(.gvw-original-title) {
  margin-left:14px;
  margin-right:14px;
}
.variations.gv-wizard-v2 .gvw-step.gvw-open > :last-child:not(.gvw-header) {margin-bottom:14px}
.variations.gv-wizard-v2 .gvw-step.gvw-open:not(.gvw-is-current) > .gvw-header {background:#eef4fa}
/* Progress meter: desktop before the active step, mobile immediately below it. */
.variations.gv-wizard-v2 .gvw-meter {width:100%;min-width:0;box-sizing:border-box}
.variations.gv-wizard-v2 .gvw-meter-desktop {display:block;margin:14px 0 12px}
.variations.gv-wizard-v2 .gvw-meter-mobile {display:none}
.variations.gv-wizard-v2 .gvw-meter-line {
  display:flex;justify-content:space-between;gap:8px;align-items:center;
  font-size:.82rem;font-weight:650;line-height:1.5;
  color:var(--gvw-deep);margin-bottom:5px;
}
.variations.gv-wizard-v2 .gvw-meter-total {color:#9aa5b5}
.variations.gv-wizard-v2 .gvw-meter-track {height:7px;border-radius:20px;overflow:hidden;background:var(--gvw-track)}
.variations.gv-wizard-v2 .gvw-meter-fill {
  width:0;height:100%;background:var(--gvw-accent);border-radius:20px;
  transition:width .22s ease, background-color .22s ease;
}
.variations.gv-wizard-v2 .gvw-meter.gvw-finished .gvw-meter-fill {background:var(--gvw-highlight)}
/* Native radios: tile appearance only when 1 or 2 are available. */
.variations.gv-wizard-v2 .gvw-tiles {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px}
.variations.gv-wizard-v2 .gvw-choice-tile {
  position:relative;min-width:0;margin:0;padding:0 !important;
  background:var(--gvw-white);border:1px solid #cbd7e4;border-radius:7px;
}
.variations.gv-wizard-v2 .gvw-choice-tile input[type="radio"] {
  position:absolute !important;width:1px !important;height:1px !important;
  opacity:0 !important;overflow:hidden;pointer-events:none;
}
.variations.gv-wizard-v2 .gvw-choice-tile label,
.variations.gv-wizard-v2 .gvw-choice-tile .custom-control-label {
  display:flex !important;align-items:center;justify-content:center;
  min-height:48px;margin:0 !important;padding:12px 13px !important;
  text-align:center;font-weight:650 !important;color:var(--gvw-deep) !important;cursor:pointer;
}
.variations.gv-wizard-v2 .gvw-choice-tile .custom-control-label::before,
.variations.gv-wizard-v2 .gvw-choice-tile .custom-control-label::after {display:none !important}
.variations.gv-wizard-v2 .gvw-choice-tile:has(input:checked) {background:#eaf4fb;border-color:var(--gvw-primary);box-shadow:0 0 0 1px var(--gvw-primary)}
.variations.gv-wizard-v2 .gvw-choice-tile:has(input:disabled) {display:none !important}
.variations.gv-wizard-v2 .gvw-footer {padding:13px 0 7px;margin:12px 0 18px;border-top:1px solid #d9e2ee}
.variations.gv-wizard-v2 .gvw-actions {display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.variations.gv-wizard-v2 .gvw-btn {
  border:1px solid #cbd7e4;border-radius:6px;background:var(--gvw-white);color:var(--gvw-deep);
  min-height:40px;padding:9px 15px;font:inherit;font-size:.91rem;font-weight:650;cursor:pointer;
}
.variations.gv-wizard-v2 .gvw-expand {border-color:transparent;background:transparent;color:var(--gvw-navy)}
.variations.gv-wizard-v2 .gvw-btn:disabled {opacity:.4;cursor:not-allowed}
.variations.gv-wizard-v2 .gvw-message {font-size:.85rem;color:var(--gvw-deep);margin-bottom:7px}
.variations.gv-wizard-v2 .gvw-message:empty {display:none}
@media (max-width:640px) {
  .variations.gv-wizard-v2 .gvw-header {padding:12px;gap:8px;align-items:flex-start}
  .variations.gv-wizard-v2 .gvw-header-title {flex-shrink:0}
  .variations.gv-wizard-v2 .gvw-header-value {font-size:.85rem}
  .variations.gv-wizard-v2 .gvw-meter-desktop {display:none}
  .variations.gv-wizard-v2 .gvw-meter-mobile {display:block;margin:4px 0 16px;padding:0 1px}
  .variations.gv-wizard-v2 .gvw-btn.gvw-back {flex:0 1 auto}
}
@media (prefers-reduced-motion:reduce) {
  .variations.gv-wizard-v2 *, .variations.gv-wizard-v2 *::before, .variations.gv-wizard-v2 *::after {transition:none !important;scroll-behavior:auto !important}
}
