    :root {
      --conf-primary-dark: #0f172a;
      --conf-primary-light: #ffffff;
      --conf-accent-green: #7a805c;
      --conf-border-color: #94a3b8;
      --conf-bg-color: #f1f5f9;
      --conf-text-dark: #1e293b;
      --conf-card-bg: #f8fafc;
    }


    .wiz-container {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      padding: 2rem 0 0 1rem;
      overflow-x: hidden;
      background:white;
    }

    /* CENTERED TABS */
    .model-tabs-stacked-wrapper {
      display: flex;
      justify-content: center;
      background: #cbd5e1;
      border: 1px solid var(--conf-border-color);
      border-bottom: none;
      border-top-left-radius: 12px;
      border-top-right-radius: 12px;
      overflow: hidden;
      width: 320px;
      margin-bottom: -1px;
      z-index: 10;
      position: relative;
    }

    .tab-btn {
      flex: 1;
      padding: 1rem;
      background: #cbd5e1;
      color: #475569;
      font-weight: 600;
      border: none;
      cursor: pointer;
      transition: all 0.2s ease;
      font-size: 0.85rem;
      letter-spacing: 1px;
    }

    .tab-btn.active {
      background: var(--conf-primary-dark);
      color: var(--conf-primary-light);
      font-weight: 700;
    }

    /* FLUID CONTAINER ARCHITECTURE */
    .wizard-container.fluid-format {
      background: var(--conf-primary-light);
      border-top: 1px solid var(--conf-border-color);
      border-bottom: 1px solid var(--conf-border-color);
      padding: 2.5rem 0 1.5rem 0;
      width: 100%;
      max-width: 100%;
      min-height: 680px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      z-index: 5;
      position: relative;
      box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
    }

    #configuratorForm {
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      overflow: hidden;
    }

    /* Step Progress Header Elements */
    .progress-bar {
      position: relative;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      margin-bottom: 2.5rem;
      max-width: 720px;
      width: calc(100% - 4rem);
      margin-left: auto;
      margin-right: auto;
    }

    .progress-bar::before,
    .progress {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      height: 4px;
      width: 100%;
      background-color: #cbd5e1;
      z-index: 1;
    }
    html[dir="rtl"] .progress-bar::before,
    html[dir="rtl"] .progress {
      right: 0;
    }

    .progress {
      background-color: var(--conf-accent-green);
      width: 0%;
      transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .progress-step {
      width: 36px;
      height: 36px;
      background-color: #e2e8f0;
      color: #475569;
      border: 2px solid #cbd5e1;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      font-weight: 700;
      font-size: 0.9rem;
      position: relative;
      z-index: 2;
      transition: all 0.4s ease;
    }

    .progress-step.active {
      background-color: var(--conf-accent-green);
      border-color: var(--conf-accent-green);
      color: var(--conf-primary-light);
    }

    .progress-step::after {
      content: attr(data-title);
      position: absolute;
      top: 42px;
      font-size: 0.8rem;
      color: #334155;
      font-weight: 600;
      white-space: nowrap;
    }

    /* CENTERED TRACK SLIDER CONTROLLER MECHANICS */
    .slider-window {
      width: 100%;
      overflow: hidden;
      flex-grow: 1;
      display: flex;
      align-items: center;
    }

    .slider-track {
      display: flex;
      width: 100%;
      transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
      will-change: transform;
    }

    .form-step {
      width: 100%;
      max-width: 960px;
      margin: 0 auto;
      padding: 0 2rem;
      flex-shrink: 0;
      opacity: 0.2;
      transform: scale(0.75);
      transition: opacity 0.5s, transform 0.5s;
      height: auto;
    }

    .form-step.active {
      opacity: 1;
      transform: scale(1);
    }

    /* MAXIMIZED IMAGE CANVAS */
    .maximized-preview-box {
      width: 100%;
      height: 400px;
      background-color: #f8fafc;
      border-radius: 12px;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
      /*border: 1px solid var(--conf-border-color);
      box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.03);*/
    }

    .maximized-preview-box img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: opacity 0.3s ease;
    }
  @media (max-width: 600px) {
    .maximized-preview-box img {
      width: 100%;
      height: auto;
      object-fit: fill;
      transition: opacity 0.3s ease;
    }
  }
    /* STEP 3: CUSTOM ACCESSORY IMAGE CARDS */
    .accessories-container {
      display: flex;
      justify-content: center;
      gap: 2.5rem;
      flex-wrap: wrap;
      padding: 1rem 0;
    }

    .accessory-item-card {
      width: 180px;
      display: flex;
      flex-direction: column;
      align-items: center;
      cursor: pointer;
      user-select: none;
    }

    .accessory-image-box {
      position: relative;
      width: 100%;
      height: 140px;
      border: 1px solid #1e293b;
      background-color: #f1f5f9;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      transition: all 0.2s ease;
    }

    .accessory-image-box img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .accessory-item-card.selected .accessory-image-box {
      border: 2px solid var(--conf-primary-dark);
      box-shadow: 0 0 0 2px var(--conf-primary-dark);
    }

    /* CHECKBOX BADGE */
    .checkbox-badge {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 28px;
      height: 28px;
      background-color: #ffffff;
      border: 1px solid #334155;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 2;
    }

    .accessory-item-card.selected .checkbox-badge {
      background-color: #ffffff;
      border-color: #000000;
    }

    .checkbox-badge svg {
      width: 18px;
      height: 18px;
      opacity: 0;
      stroke: #000000;
      stroke-width: 3;
      transition: opacity 0.15s ease;
    }

    .accessory-item-card.selected .checkbox-badge svg {
      opacity: 1;
    }

    .accessory-title-label {
      margin-top: 1rem;
      font-size: 0.95rem;
      font-weight: 500;
      color: var(--conf-text-dark);
      text-align: center;
      line-height: 1.35;
      max-width: 240px;
    }

    /* STEP 4 CARDS & INPUTS */
    .form-card-content {
      background: #f8fafc;
      border: 1px solid var(--conf-border-color);
      border-radius: 12px;
      padding: 2rem;
    }

    .configuration-summary-panel {
      background: #e2e8f0;
      border-radius: 8px;
      padding: 1.25rem 1.5rem;
      margin-bottom: 1.5rem;
      border: 1px solid #cbd5e1;
    }

    .configuration-summary-panel h4 {
      font-size: 0.85rem;
      text-transform: uppercase;
      letter-spacing: 1px;
      color: #334155;
      margin-bottom: 0.75rem;
    }

    .summary-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 1rem;
      font-size: 0.95rem;
    }
    .summary-grid strong {
      color: var(--conf-primary-dark) !important;
    }

    .summary-grid span {
      color: var(--conf-accent-green);
      font-weight: 700;
      display: block;
      margin-top: 2px;
    }

    .input-grid-wrapper {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1.25rem;
    }

    .input-group label {
      display: block;
      margin-bottom: 0.4rem;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--conf-text-dark);
    }

    .input-group input,
    .input-group select {
      width: 100%;
      padding: 0.8rem;
      border: 1px solid var(--conf-border-color);
      border-radius: 6px;
      font-size: 0.95rem;
      outline: none;
      background: var(--conf-primary-light);
      color: var(--conf-primary-dark);
    }

    .input-group input:focus,
    .input-group select:focus {
      border-color: var(--conf-primary-dark);
      box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    }

    /* 3-COLUMN UNIFIED FOOTER ROW */
    .unified-action-row {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1rem;
      align-items: center;
      /*border-top: 1px solid var(--conf-border-color);*/
      /*padding: 1.5rem 2rem 0 2rem;*/
      padding: 0 2rem 0 2rem;
      /*margin-top: 2rem;*/
      width: 100%;
    }

    .footer-col {
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .col-left {
      grid-row: 2;
      justify-content: flex-start;
    }

    .col-center {
      grid-row: 1;
    }

    .col-right {
      grid-row: 2;
      justify-content: flex-end;
    }

    .unified-action-row .btn {
      width: 100%;
      max-width: 140px;
      padding: 0.85rem 0.85rem;
    }

    .step-color-group {
      display: flex;
      gap: 1.5rem;
    }

    .color-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.4rem;
    }

    .color-dot {
      width: 45px;
      height: 45px;
      border: 2px solid transparent;
      cursor: pointer;
      box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.1);
      transition: transform 0.15s ease;
    }

    .color-dot:hover,
    .color-dot.active {
      transform: scale(1.15);
    }

    .color-dot.active {
      border-color: var(--conf-primary-dark);
    }

    .color-name-label {
      font-size: 0.75rem;
      color: #334155;
      font-weight: 600;
      white-space: nowrap;
    }

    .step-info-text {
      font-size: 0.85rem;
      color: #64748b;
      font-weight: 600;
    }

    /* Action Control Buttons */
    .btn {
      border-radius: 6px;
      font-weight: 700;
      cursor: pointer;
      border: none;
      font-size: 0.95rem;
      transition: background-color 0.2s, opacity 0.2s;
    }

    .btn-next {
      background: var(--conf-primary-dark);
      color: var(--conf-primary-light);
    }

    .btn-prev {
      background: var(--conf-primary-dark);
      color: var(--conf-primary-light);
    }
    .btn:hover {
      background: var(--conf-accent-light);
      color: var(--conf-primary-dark);
      border:var(--conf-primary-dark) 1px solid;
    }
    .btn:active {
      background: var(--conf-accent-green);
      color: var(--conf-primary-dark);
      border:var(--conf-primary-dark) 1px solid;
    }
    .btn:disabled {
      opacity: 0.3;
      cursor: not-allowed;
      background: var(--conf-primary-light);
      color: var(--conf-primary-dark);
      border:var(--conf-primary-dark) 1px solid;
    }

    /* MOBILE: keep action controls directly below the active step content */
    @media (max-width: 639px) {
      .wiz-container {
        min-height: auto;
        justify-content: flex-start;
        padding: 1rem 0;
      }

      .wizard-container.fluid-format {
        min-height: auto;
        justify-content: flex-start;
        padding: 1.5rem 0 1rem 0;
      }

      #configuratorForm {
        flex-grow: 0;
        justify-content: flex-start;
        overflow: visible;
      }

      .slider-window {
        flex-grow: 0;
        align-items: flex-start;
        height: auto;
      }

      .slider-track {
        align-items: flex-start;
      }

      .accessories-container {
        gap: 1.25rem;
        padding: 0.5rem 0;
      }

      .accessory-item-card {
        width: min(280px, 46vw);
      }

      .accessory-image-box {
        height: min(140px, 30vw);
      }

      .unified-action-row {
        flex-shrink: 0;
        margin-top: 1rem;
        padding-top: 1rem;
      }
    }

    /* RESPONSIVE BREAKPOINT */
    @media (min-width: 640px) {
      .input-grid-wrapper {
        grid-template-columns: 1fr 1fr;
      }

      .unified-action-row {
        grid-template-columns: 1fr 2fr 1fr;
        gap: 0;
        max-width: 960px;
        margin-left: auto;
        margin-right: auto;
      }

      .col-left {
        grid-row: auto;
        justify-content: flex-start;
      }

      .col-center {
        grid-row: auto;
        justify-content: center;
      }

      .col-right {
        grid-row: auto;
        justify-content: flex-end;
      }

      .unified-action-row .btn {
        width: auto;
        max-width: none;
        padding: 0.85rem 2.25rem;
      }
    }