/* Audiostreamen cart typography overrides (standard_cart) */
#order-standard_cart {
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#order-standard_cart label,
#order-standard_cart .form-group label,
#order-standard_cart .checkbox label,
#order-standard_cart .radio label {
  font-size: 1rem;
  font-weight: 500;
  color: #333;
}

#order-standard_cart .form-control,
#order-standard_cart .input-group-addon,
#order-standard_cart select.form-control {
  font-size: 1rem;
}

#order-standard_cart .btn {
  font-size: 1rem;
}

#order-standard_cart .btn-lg {
  font-size: 1.0625rem;
}

#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading-borderless span {
  font-size: 18px;
}

#order-standard_cart .cart-sidebar h3,
#order-standard_cart .sidebar-collapsed h3 {
  font-size: 18px;
}

#order-standard_cart .products .product div.product-desc {
  font-size: 0.95em;
}

#order-standard_cart .panel-addon {
  font-size: 0.95em;
}

#order-standard_cart .domain-suggestions {
  font-size: 0.95em;
}

#order-standard_cart .summary-container {
  font-size: 0.95em;
}

#order-standard_cart .order-summary .product-name {
  font-size: 1.3em;
}

#order-standard_cart .order-summary .total-due-today .amt {
  font-size: 2.5em;
}

#order-standard_cart .view-cart-items .item {
  font-size: 0.95em;
}

#order-standard_cart .view-cart-items .item-price .cycle {
  font-size: 1em;
}

/* Configure Product: product title and info */
#order-standard_cart .product-info {
  font-size: 1rem;
}

#order-standard_cart .product-info .product-title {
  font-weight: 600;
}

/* Collapsible product info */
#order-standard_cart .product-info.collapsible {
  background: #f7fbff; /* licht & vrolijk */
  border: 1px solid #dceeff;
  border-radius: 6px;
  padding: 0;
}
#order-standard_cart .collapsible-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  background: #f7fbff;
  border: 0;
  padding: 12px 16px;
  font-size: 1.1rem;
}
#order-standard_cart .collapsible-toggle .fa-chevron-down {
  transition: transform 0.2s ease;
}
#order-standard_cart .product-info.collapsible:not(.collapsed) .collapsible-toggle .fa-chevron-down {
  transform: rotate(180deg);
}
#order-standard_cart .product-info .collapsible-content {
  padding: 0 16px 12px 16px;
}

/* Uitleg banner (uit module productuitleg) */
#order-standard_cart .uitleg-banner {
  background: #f7fbff;
  border: 1px solid #dceeff;
  border-radius: 8px;
  padding: 14px 16px;
  margin: 10px 0 16px 0;
}
#order-standard_cart .uitleg-banner h1,
#order-standard_cart .uitleg-banner h2,
#order-standard_cart .uitleg-banner h3 {
  color: #003366;
  margin-top: 0.2em;
}
#order-standard_cart .uitleg-banner a { color: var(--as-blue, #0273d4); }

/* Keep headings crisp */
#order-standard_cart h1,
#order-standard_cart h2,
#order-standard_cart h3 {
  letter-spacing: -0.01em;
}

/* Slightly increase summary headings */
#order-standard_cart .order-summary h2 {
  font-size: 1.6em;
}

/* Configure page title (Samenstellen): smaller and tighter */
#order-standard_cart .header-lined { margin-bottom: 12px; }
#order-standard_cart .header-lined h1 { margin: 0; line-height: 1.2; }
#order-standard_cart .header-lined h1.font-size-36 { font-size: 1.75rem !important; }

/* Full-width layout voor configure product (menu links zichtbaar, overzicht rechts verborgen) */
#order-standard_cart.is-fullwidth .cart-sidebar { display: block; float: left; width: 22%; }
#order-standard_cart.is-fullwidth .cart-body { float: right; width: 78%; }
#order-standard_cart.is-fullwidth .secondary-cart-body { width: 100%; }
#order-standard_cart.is-fullwidth .secondary-cart-sidebar { display: none; }
/* Maak de hele configure sectie full-bleed over de viewport, met padding als marge */
#order-standard_cart.is-fullwidth {
  width: 100%;
  max-width: 1500px; /* cap brede schermen op 1500px */
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

/* Modals: zorg dat confirm/popups leesbaar blijven */
.bootbox .modal-dialog,
#modalAjax .modal-dialog,
.modal .modal-dialog {
  max-width: 600px;
  width: auto;
  margin: 1.75rem auto;
}

/* View cart: behoud samenvatting rechts */
#order-standard_cart.is-fullwidth.is-cart-view .secondary-cart-body { width: 75%; }
#order-standard_cart.is-fullwidth.is-cart-view .secondary-cart-sidebar { display: block; width: 25%; }

/* View cart: verberg linker menu en maak hoofdcontent 100% breed */
#order-standard_cart.is-cart-view .cart-sidebar { display: none; }
#order-standard_cart.is-cart-view .cart-body { width: 100%; float: none; }

/* View cart: lichte order summary i.p.v. blauw */
#order-standard_cart.is-cart-view .order-summary {
  background-color: #f7fbff !important;
  border-bottom-color: #dceeff !important;
}
#order-standard_cart.is-cart-view .order-summary h2 { color: #003366 !important; }
#order-standard_cart.is-cart-view .summary-container { background: #fff; border: 1px solid #e9f0ff; }

/* View cart: typografie */
#order-standard_cart.is-cart-view { font-size: 16px; line-height: 1.6; }
#order-standard_cart.is-cart-view .header-lined { margin-bottom: 12px; }
#order-standard_cart.is-cart-view .header-lined h1 { margin: 0; font-size: 1.75rem; line-height: 1.2; }
#order-standard_cart.is-cart-view .view-cart-items .item-title { font-size: 1.05rem; }
#order-standard_cart.is-cart-view .view-cart-items .item-group { font-size: 0.95rem; }
#order-standard_cart.is-cart-view .view-cart-items .item-price span { font-size: 1.35rem; }
#order-standard_cart.is-cart-view .view-cart-items .item-price .cycle { font-size: 0.9rem; }

/* (Revert) Geen 3-koloms grid binnen productkolom; gebruik flex-rijen */

/* Desktop: lijn items netjes uit met grid per regel (bullet | label | : | waarde) */
@media (min-width: 992px) {
  #order-standard_cart.is-cart-view .view-cart-items .item .item-config-row {
    display: grid;
    grid-template-columns: 16px 340px 8px 1fr; /* bullet | label | : | value */
    gap: 4px 8px;
    align-items: start;
  }
  #order-standard_cart.is-cart-view .view-cart-items .item .item-config-row .cfg-name {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }
  #order-standard_cart.is-cart-view .view-cart-items .item .item-config-row .cfg-sep {
    display: block !important;
    text-align: center;
  }
  #order-standard_cart.is-cart-view .view-cart-items .item .item-config-row .cfg-name::after {
    content: none;
  }
  
}
@media only screen and (max-width: 1199px) {
  #order-standard_cart.is-fullwidth .cart-sidebar { display: none; }
  #order-standard_cart.is-fullwidth .cart-body { width: 100%; float: none; }
}
@media only screen and (max-width: 991px) {
  #order-standard_cart.is-fullwidth .secondary-cart-body { width: 100%; float: none; }
  #order-standard_cart.is-fullwidth .secondary-cart-sidebar { width: 100%; float: none; }
}

/* === Audiostreamen kleurstelling (blauw) en minder grijs === */
/* Buttons */
#order-standard_cart .btn-primary {
  background-color: var(--as-blue, #0273d4);
  border-color: var(--as-blue, #0273d4);
  color: #fff;
}
#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-primary:focus {
  background-color: var(--as-blue-600, #0166bd);
  border-color: var(--as-blue-600, #0166bd);
  color: #fff;
}
#order-standard_cart .btn-default,
#order-standard_cart .btn-info,
#order-standard_cart .btn-warning {
  background-color: #fff;
  color: var(--as-blue, #0273d4);
  border-color: var(--as-blue, #0273d4);
}
#order-standard_cart .btn-default:hover,
#order-standard_cart .btn-info:hover,
#order-standard_cart .btn-warning:hover {
  background-color: #f0f6ff;
  color: var(--as-blue-600, #0166bd);
  border-color: var(--as-blue-600, #0166bd);
}

/* Order summary standaard blauw (config), cart-view override hieronder) */
#order-standard_cart .order-summary {
  background-color: var(--as-blue, #0273d4) !important;
  border-bottom-color: var(--as-blue, #0273d4) !important;
}
#order-standard_cart .order-summary h2 { color: #fff; }

/* Minder grijze vlakken, meer wit/lichtblauw */
#order-standard_cart .summary-container,
#order-standard_cart .product-info,
#order-standard_cart .view-cart-tabs .tab-content,
#order-standard_cart .apply-credit-container,
#order-standard_cart .cc-input-container,
#order-standard_cart .domain-selection-options .option,
#order-standard_cart .products .product header,
#order-standard_cart .product-configurable-options .form-group.option-card {
  background-color: #f7fbff; /* zacht lichtblauw i.p.v. grijs */
}
#order-standard_cart .summary-container,
#order-standard_cart .product-info,
#order-standard_cart .product-configurable-options .form-group.option-card,
#order-standard_cart .cc-input-container,
#order-standard_cart .apply-credit-container {
  border: 1px solid #dceeff;
}

/* Totale bedrag (groene alert) lichter/blauwig maken */
#order-standard_cart #totalDueToday.alert {
  background: #f0f6ff;
  border-color: #dceeff;
  color: #003366;
}

/* Lichte lijn i.p.v. donkergrijs */
#order-standard_cart .sub-heading {
  border-top-color: #dceeff;
}

/* Domain optie geselecteerd iets donkerder blauwgrijs */
#order-standard_cart .domain-selection-options .option-selected { background-color: #f0f6ff; }

/* Panel addon knoppen en prijsbalk */
#order-standard_cart .panel-addon .panel-price { background-color: #f0f6ff; }
#order-standard_cart .panel-addon .panel-add,
#order-standard_cart .panel-addon-selected .panel-add {
  background-color: var(--as-blue, #0273d4);
}

/* Tabs boven de winkelwagen */
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] {
  background-color: #f7fbff;
}

/* Zebra regels iets subtieler */
#order-standard_cart .view-cart-items .item { background-color: #fff; }
#order-standard_cart .view-cart-items .item:nth-child(even) { background-color: #f7fbff; }

/* === Winkelwagen (view cart) verfijningen === */
#order-standard_cart .panel-taxes { background: #f7fbff; border: 1px solid #dceeff; }
#order-standard_cart .view-cart-promotion-code { background: #fff; border-color: #dceeff; }
#order-standard_cart .empty-cart .btn { background: var(--as-blue, #0273d4); }

/* Header van de lijst (Productopties / Prijs) */
#order-standard_cart .view-cart-items-header { background: #f7fbff; border: 1px solid #dceeff; border-radius: 8px; padding: 10px 12px; margin-bottom: 10px; }
#order-standard_cart .view-cart-items-header .row { margin-left: 0; margin-right: 0; }
#order-standard_cart .view-cart-items-header .row > [class^="col-"] { padding-left: 6px; padding-right: 6px; color: #003366; font-weight: 700; }

/* Cart item cards */
#order-standard_cart .view-cart-items .item {
  border: 1px solid #e9f0ff;
  border-radius: 8px;
  padding: 12px 14px;
  margin-bottom: 10px;
}
#order-standard_cart .view-cart-items .item .item-title { font-weight: 700; color: #003366; }
#order-standard_cart .view-cart-items .item .item-group { color: #6b7280; }
#order-standard_cart .view-cart-items .item .item-price span { font-size: 1.4em; color: #003366; }
#order-standard_cart .view-cart-items .item .item-price span { white-space: nowrap; }

#order-standard_cart .view-cart-items .item .item-price .cycle { font-size: 0.9em; color: #6b7280; }

/* Config/option lines in cart items */
#order-standard_cart .view-cart-items .item .item-config { margin-top: 4px; font-size: 1rem; }
#order-standard_cart .view-cart-items .item .item-config-row {
  display: flex;
  align-items: flex-start;
  gap: 6px 8px;
  flex-wrap: nowrap; /* alles op 1 lijn; alleen waarde mag wrappen intern */
}
#order-standard_cart .view-cart-items .item .item-config-row span { display: inline !important; }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-bullet { flex: 0 0 16px; color: var(--as-blue, #0273d4); }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-name {
  flex: 0 1 clamp(220px, 40%, 460px);
  min-width: 180px;
  max-width: 100%;
  font-weight: 600;
  color: #003366;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#order-standard_cart .view-cart-items .item .item-config-row .cfg-sep { display: none; }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-name::after { content: ":"; margin: 0 6px; color: #6b7280; }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-value {
  flex: 1 1 auto;
  min-width: 0;
  color: #2a2e36;
  overflow-wrap: break-word;
  word-break: normal;
}

/* Tuned breakpoints: give more room to labels on medium screens */
@media (max-width: 1199.98px) {
  #order-standard_cart .view-cart-items .item .item-config-row .cfg-name {
    flex-basis: clamp(190px, 38%, 380px);
  }
}
#order-standard_cart .view-cart-items .item .item-config-row .cfg-bullet { color: var(--as-blue, #0273d4); }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-name { font-weight: 600; color: #003366; }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-sep { color: #6b7280; }
#order-standard_cart .view-cart-items .item .item-config-row .cfg-value { color: #2a2e36; }
@media (max-width: 575.98px) {
  #order-standard_cart .view-cart-items .item .item-config-row { flex-wrap: wrap; }
  #order-standard_cart .view-cart-items .item .item-config-row .cfg-sep { display: none; }
  #order-standard_cart .view-cart-items .item .item-config-row .cfg-name { flex: 1 1 calc(100% - 16px); }
  #order-standard_cart .view-cart-items .item .item-config-row .cfg-value { flex: 1 1 100%; }
}

/* Link knoppen (bewerken/verwijderen) in Audiostreamen blauw */
#order-standard_cart .view-cart-items .btn-link { color: var(--as-blue, #0273d4); }
#order-standard_cart .view-cart-items .btn-link:hover { color: var(--as-blue-600, #0166bd); text-decoration: underline; }

/* Checkout button on cart */
#order-standard_cart .btn-checkout,
#order-standard_cart .btn-proceed-checkout,
#order-standard_cart .btn-continue-checkout {
  background-color: var(--as-blue, #0273d4);
  border-color: var(--as-blue, #0273d4);
  color: #fff;
}
#order-standard_cart .btn-checkout:hover,
#order-standard_cart .btn-proceed-checkout:hover,
#order-standard_cart .btn-continue-checkout:hover {
  background-color: var(--as-blue-600, #0166bd);
  border-color: var(--as-blue-600, #0166bd);
}

/* Alerts (promo/info/warning) vriendelijker */
#order-standard_cart .alert-info { background: #f0f6ff; border-color: #dceeff; color: #003366; }
#order-standard_cart .alert-success { background: #f3fff6; border-color: #ccf0d7; color: #0f5132; }
#order-standard_cart .alert-warning { background: #fff9e6; border-color: #ffe6a8; color: #664d03; }
#order-standard_cart .alert-danger { background: #fff5f5; border-color: #ffd6d6; color: #7a0b0b; }

/* Actieve link in linker menu duidelijk blauw */
#order-standard_cart .cart-sidebar .list-group-item.active,
#order-standard_cart .cart-sidebar .list-group-item.active:hover {
  background-color: var(--as-blue, #0273d4);
  border-color: var(--as-blue, #0273d4);
  color: #fff;
}
#order-standard_cart .cart-sidebar .list-group-item.active i { color: #fff; }

/* Tabs & content al lichtblauw gezet; active tab grens iets sterker */
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] {
  border-color: #dceeff #dceeff #f7fbff;
}

/* === Checkout verfijningen === */
#order-standard_cart .already-registered { background: #f7fbff; border: 1px solid #dceeff; padding: 10px 12px; border-radius: 6px; }
#order-standard_cart .marketing-email-optin { background: #f7fbff; border: 1px solid #dceeff; padding: 14px; border-radius: 6px; }
#order-standard_cart .checkout-security-msg { background: #f7fbff; border-color: #dceeff; color: #003366; }
#order-standard_cart .gateway-errors.alert-danger { background: #fff5f5; border-color: #ffd6d6; color: #7a0b0b; }

/* Betaalmethode knoppen consistent met blauw */
#order-standard_cart .payment-methods + span,
#order-standard_cart .payment-methods { accent-color: var(--as-blue, #0273d4); }


/* Billing cycle card */
#order-standard_cart .billing-cycle-card {
  padding: 16px;
  background: #f7fbff;
  border: 1px solid #dceeff;
  border-radius: 6px;
  margin-bottom: 20px;
}
#order-standard_cart .billing-cycle-card .form-group {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
#order-standard_cart .billing-cycle-card .billing-cycle-row {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
#order-standard_cart .billing-cycle-card .billing-cycle-label {
  display: inline-block;
  font-weight: 600;
  margin: 0;
}
#order-standard_cart .billing-cycle-card select {
  max-width: 360px;
}
#order-standard_cart .billing-cycle-card select.form-control {
  width: auto;
  min-width: 220px;
}
@media (min-width: 576px) {
  #order-standard_cart .billing-cycle-card .form-group { flex-wrap: nowrap; }
  #order-standard_cart .billing-cycle-card .billing-cycle-row { flex-wrap: nowrap; }
}
#order-standard_cart .billing-cycle-selected {
  margin-top: 0;
  margin-left: auto;
  color: #333;
  text-align: right;
  white-space: nowrap;
}
#order-standard_cart .billing-cycle-selected .label {
  margin-right: 8px;
  color: #666;
}
#order-standard_cart .billing-cycle-selected .price {
  font-weight: 600;
  font-size: 1.1rem;
}

/* Option cards */
#order-standard_cart .product-configurable-options .form-group.option-card {
  padding: 14px 16px;
  border: 1px solid #e6e6e6;
  border-radius: 6px;
  background: #fff;
}
#order-standard_cart .product-configurable-options .form-group.option-card + .form-group.option-card {
  margin-top: 12px;
}
#order-standard_cart .product-configurable-options .form-group.option-card label[for^="inputConfigOption"] {
  font-weight: 600;
  display: block;
  margin-bottom: 8px;
}
#order-standard_cart .product-configurable-options .form-group.option-card .option-choice {
  display: grid;
  grid-template-columns: 20px 1fr auto; /* input | text | price */
  align-items: start;
  padding: 10px 12px;
  border: 1px solid #eee;
  border-radius: 5px;
  background: #fafafa;
  margin-bottom: 8px;
  font-weight: 500;
  gap: 8px 12px;
  /* laat normale woordafbreking toe, geen willekeurige breaks */
  overflow-wrap: break-word;
}
#order-standard_cart .product-configurable-options .form-group.option-card .option-choice:hover {
  background: #f3f9ff;
  border-color: #dceeff;
}
#order-standard_cart .product-configurable-options .form-group.option-card .option-choice input {
  margin: 3px 0 0 0; /* align checkbox/radio top-left */
}
#order-standard_cart .product-configurable-options .form-group.option-card .option-choice .option-price {
  display: inline-block;
  margin-top: 2px;
  font-weight: 700;
  color: #003366;
  white-space: nowrap;     /* prijs altijd op 1 regel */
  word-break: normal;
  overflow-wrap: normal;
  grid-column: 3;          /* forceer in 3e kolom rechts */
  justify-self: end;
}

#order-standard_cart .product-configurable-options .form-group.option-card .option-help {
  margin: 2px 0 10px 0;
  color: #666;
  font-size: 0.95rem;
}

/* Vertical stacking spacing for options */
#order-standard_cart .product-configurable-options .row > [class*="col-"] {
  margin-bottom: 12px;
}

/* Help/notes */
#order-standard_cart .field-help-text {
  display: block;
  margin-top: 6px;
  color: #666;
  font-size: 0.95rem;
}

#order-standard_cart .order-help {
  background: #f7fbff;
  border: 1px solid #dceeff;
  color: #0b3d75;
}

/* Checkout refinements */
#order-standard_cart .already-registered p { font-size: 1rem; }
#order-standard_cart .apply-credit-container { font-size: 0.95rem; }
#order-standard_cart .cc-input-container .form-group { margin-top: 8px; margin-bottom: 12px; }

/* Sidebar menu (links) grotere en consistente typografie */
#order-standard_cart .cart-sidebar .panel-title {
  font-size: 1.125rem; /* ~18px */
  font-weight: 700;
}
#order-standard_cart .cart-sidebar .list-group,
#order-standard_cart .cart-sidebar .list-group-item,
#order-standard_cart .cart-sidebar .list-group-item-action {
  font-size: 1rem; /* 16px */
  line-height: 1.45;
}
#order-standard_cart .cart-sidebar .panel-heading.card-header {
  background: #f7fbff;
  border-bottom: 1px solid #dceeff;
  padding: 10px 14px; /* extra binnenruimte voor nette uitlijning */
}
#order-standard_cart .cart-sidebar .list-group .list-group-item {
  border-color: #eef5ff;
  padding-left: 18px;  /* tekst niet tegen de rand */
  padding-right: 14px;
}

/* Contact panel styling */
#order-standard_cart .as-contact-panel { font-size: 1rem; }
#order-standard_cart .as-contact-panel a { color: var(--as-blue, #0273d4); }
#order-standard_cart .as-contact-panel .as-row {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 4px 8px;
}
#order-standard_cart .as-contact-panel .as-row + .as-row { margin-top: 6px; }
#order-standard_cart .as-contact-panel .as-left { display: inline-flex; align-items: center; gap: 8px; color: #003366; font-weight: 600; }
#order-standard_cart .as-contact-panel .as-left i { color: var(--as-blue, #0273d4); }
#order-standard_cart .as-contact-panel .as-val a {
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}
#order-standard_cart .as-contact-panel .as-val { min-width: 0; }
#order-standard_cart .as-contact-panel .btn {
  width: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #fff !important; /* forceer witte tekst in blauw */
  background-color: var(--as-blue, #0273d4);
  border-color: var(--as-blue, #0273d4);
}
#order-standard_cart .as-contact-panel .btn:hover {
  background-color: var(--as-blue-600, #0166bd);
  border-color: var(--as-blue-600, #0166bd);
  color: #fff !important;
}
#order-standard_cart .as-contact-panel .as-actions {
  text-align: left;
  margin-top: 10px;
}
