/* Horizontal Wizard Navigation CSS */
.horizontal-wizard-wrapper .main-horizontal-header {
  padding: 0 0 20px 0;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 14px;
}

@media (max-width: 1182px) {
  .horizontal-wizard-wrapper .main-horizontal-header .horizontal-options {
    justify-content: flex-start;
  }
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a {
  display: flex;
  align-items: center;
  justify-content: center;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a .horizontal-wizard {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: var(--body-font-color);
  transition: all 0.3s ease;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a .horizontal-wizard .stroke-icon-wizard {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a .horizontal-wizard .stroke-icon-wizard i {
  font-size: 18px;
  margin: 0;
  transition: all 0.3s ease;
}


.horizontal-wizard-wrapper .main-horizontal-header .form-check {
  margin-bottom: 0 !important;
}

.nav-pills .nav-link {
  flex-grow: 1 !important;
}

/* Default (not active, not completed) - primary lighter */
.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link {
    background-color: #fff !important;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link .horizontal-wizard .stroke-icon-wizard {
    background-color: color-mix(in srgb, var(--theme-default) 60%, white) !important;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link .horizontal-wizard .stroke-icon-wizard i {
  color: white !important;
}

/* Active step - primary light */
.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.active {
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.active .horizontal-wizard .stroke-icon-wizard {
    background-color: var(--theme-default) !important;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.active .horizontal-wizard .stroke-icon-wizard i {
    color: #fff;
}

/* Completed step - primary */
.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.completed {
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.completed .horizontal-wizard .stroke-icon-wizard {
    background-color: color-mix(in srgb, var(--theme-secondary) 60%, white) !important;
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.completed .horizontal-wizard .stroke-icon-wizard i {
}

.horizontal-wizard-wrapper .main-horizontal-header .horizontal-options a.nav-link.completed .horizontal-wizard .horizontal-wizard-content h6 {
}

/* Supercool Checkbox Styles */
.supercool-checkbox-section {
  margin-bottom: 24px;
}

.supercool-checkbox-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
}

@media (max-width: 768px) {
  .supercool-checkbox-container {
    grid-template-columns: 1fr;
  }
}

.supercool-checkbox-wrapper {
  cursor: pointer;
  margin: 0;
}

.supercool-checkbox-input {
  display: none;
}

.supercool-checkbox-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  border: 2px solid var(--recent-dashed-border);
  border-radius: 8px;
  background-color: var(--white);
  transition: all 0.3s ease;
}

.supercool-checkbox-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.supercool-checkbox-title {
  font-weight: 600;
  font-size: 14px;
  color: var(--body-font-color);
  transition: all 0.3s ease;
}

.supercool-checkbox-subtitle {
  font-size: 13px;
  color: var(--theme-default);
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}

/* Hover State - Show subtitle */
.supercool-checkbox-wrapper:hover .supercool-checkbox-card {
  border-color: var(--theme-default);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.supercool-checkbox-wrapper:hover .supercool-checkbox-subtitle {
  opacity: 1;
  max-height: 100px;
}

/* Checked State - Only color changes */
.supercool-checkbox-input:checked + .supercool-checkbox-card {
  border-color: var(--theme-default);
  background-color: color-mix(in srgb, var(--theme-default) 8%, white);
}

.supercool-checkbox-input:checked + .supercool-checkbox-card .supercool-checkbox-title {
  color: var(--theme-default);
}

/* Checked - Show subtitle */
.supercool-checkbox-input:checked ~ .supercool-checkbox-card .supercool-checkbox-subtitle {
    opacity: 1 !important;
    max-height: 100px;
}

/* Incassi Panel Styles */
.supercool-checkbox-wrapper.has-incassi-panel {
  grid-column: 1 / -1; /* Full width */
}

.supercool-checkbox-wrapper.has-incassi-panel .supercool-checkbox-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}

.supercool-checkbox-wrapper.has-incassi-panel .supercool-checkbox-content {
  flex: 0 0 auto;
  min-width: 200px;
}

.supercool-checkbox-card .input-group {
    display: inline-flex;
    float: right;
    width: auto !important;
}

.supercool-checkbox-card input {
    float: right !important;
}

.incassi-inputs-grid {
  display: none;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  flex: 1;
  align-items: start;
}

.supercool-checkbox-input:checked ~ .incassi-inputs-grid {
  display: grid;
}

.incassi-inputs-grid .form-group {
  margin-bottom: 0;
}

.incassi-inputs-grid label {
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 4px;
  display: block;
}

.incassi-inputs-grid input {
  width: 100%;
  padding: 6px 10px;
  font-size: 13px;
  border: 1px solid var(--recent-dashed-border);
  border-radius: 4px;
  transition: all 0.2s ease;
}

.incassi-inputs-grid input:focus {
  outline: none;
  border-color: var(--theme-default);
  box-shadow: 0 0 0 2px rgba(var(--theme-default-rgb), 0.1);
}

.incassi-inputs-grid .input-group-text {
  padding: 6px 10px;
  font-size: 13px;
  background-color: var(--light-background);
  border: 1px solid var(--recent-dashed-border);
  border-right: 0;
}

.incassi-inputs-grid .input-group input {
  border-left: 0;
}

@media (max-width: 992px) {
  .supercool-checkbox-wrapper.has-incassi-panel .supercool-checkbox-card {
    flex-direction: column;
  }

  .incassi-inputs-grid {
    grid-template-columns: 1fr;
  }
}