/**
 * Quizt 2.0 WooCommerce Stylesheet.
 *
 * Provides a responsive product grid and overrides all default WooCommerce styling
 * (including default purple colors) to match the Quizt brand design system.
 *
 * @package Quizt_Theme
 */

/* ==========================================================================
   1. Product Grid / Catalog Structure
   Note: Central product grid and reusable card component styles are defined
   in woocommerce-products.css (P2A.2a).
   ========================================================================== */

/* ==========================================================================
   2. Single Product Layout
   ========================================================================== */
.woocommerce div.product {
  margin-top: 30px;
  margin-bottom: 50px;
}

/* CAP-54: Moeilijkheidsgraad met pepertjes */
.quizt-product-difficulty {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 20px 0;
  padding: 8px 14px;
  background-color: var(--quizt-color-gray-100);
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  font-size: 0.9375rem;
  line-height: 1.3;
}

.quizt-product-difficulty__label {
  font-weight: 700;
  color: var(--quizt-color-black);
}

.quizt-product-difficulty__icons {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.quizt-product-difficulty__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.quizt-product-difficulty__svg {
  display: block;
  transition: transform var(--quizt-transition);
}

.quizt-product-difficulty__tooltip {
  display: inline-flex;
  align-items: center;
  color: var(--quizt-color-gray-600);
  cursor: help;
  margin-left: 2px;
}

.quizt-product-difficulty__tooltip:hover {
  color: var(--quizt-color-primary);
}

/* CAP-09: Categoriebeschrijving herpositionering styling */
.woocommerce .term-description,
.woocommerce-page .term-description {
  margin: 40px 0 30px 0;
  padding: 24px 28px;
  background-color: var(--quizt-color-gray-100);
  border-left: 4px solid var(--quizt-color-primary);
  border-radius: var(--quizt-radius);
  line-height: 1.7;
  color: var(--quizt-color-gray-800);
}

.woocommerce .term-description p:last-child,
.woocommerce-page .term-description p:last-child {
  margin-bottom: 0;
}

.woocommerce .term-description a,
.woocommerce-page .term-description a {
  color: var(--quizt-color-primary);
  text-decoration: underline;
  font-weight: 600;
}

.woocommerce .term-description a:hover,
.woocommerce-page .term-description a:hover {
  color: #d84f00;
}

@media (min-width: 768px) {
  .woocommerce div.product div.images {
    float: left;
    width: 48%;
    margin-bottom: 2em;
  }

  .woocommerce div.product div.summary {
    float: right;
    width: 48%;
    margin-bottom: 2em;
  }
}

.woocommerce div.product .product_title {
  font-size: 2rem;
  line-height: 1.25;
  margin-bottom: 12px;
  color: var(--quizt-color-black);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--quizt-color-primary);
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.woocommerce div.product form.cart {
  margin: 24px 0;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
  background-color: var(--quizt-color-primary);
  color: var(--quizt-color-white);
  border-radius: var(--quizt-radius);
  padding: 12px 28px;
  font-size: 1.05rem;
  font-weight: 700;
  border: none;
  cursor: pointer;
  transition: background-color var(--quizt-transition);
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background-color: #d84f00;
}

.woocommerce div.product form.cart .variations select {
  padding: 10px 14px;
  border: 1px solid var(--quizt-color-gray-300);
  border-radius: var(--quizt-radius);
  font-size: 1rem;
  background-color: var(--quizt-color-white);
}

/* Single Product Tabs */
.woocommerce div.product .woocommerce-tabs {
  clear: both;
  margin-top: 40px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--quizt-color-gray-200);
  padding: 0;
  margin: 0 0 24px 0;
  list-style: none;
  display: flex;
  gap: 4px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
  display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: 1px solid var(--quizt-color-gray-200);
  background-color: var(--quizt-color-gray-100);
  border-radius: var(--quizt-radius) var(--quizt-radius) 0 0;
  margin: 0;
  padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
  display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: var(--quizt-color-black);
  padding: 12px 20px;
  font-weight: 700;
  display: inline-block;
  text-decoration: none;
  transition: color var(--quizt-transition);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background-color: var(--quizt-color-white);
  border-top: 3px solid var(--quizt-color-primary);
  border-bottom-color: var(--quizt-color-white);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--quizt-color-primary);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: var(--quizt-color-primary);
}

.woocommerce div.product .woocommerce-tabs .panel {
  line-height: 1.65;
  color: var(--quizt-color-gray-800);
}

/* ==========================================================================
   3. Frequently Bought Together (WPC / Quizt Core FBT)
   ========================================================================== */
.quizt-fbt-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  background-color: var(--quizt-color-gray-100);
  border: 1px solid var(--quizt-color-gray-300);
  border-radius: var(--quizt-radius);
  cursor: pointer;
  user-select: none;
  font-weight: 700;
  margin-top: 24px;
  margin-bottom: 12px;
  transition: background-color var(--quizt-transition);
}

.quizt-fbt-toggle:hover {
  background-color: var(--quizt-color-orange-light);
  border-color: var(--quizt-color-primary);
}

.quizt-fbt-extra-text {
  font-size: 0.9rem;
  color: var(--quizt-color-gray-600);
  margin-bottom: 12px;
}

.woobt-wrap {
  margin: 16px 0 24px 0;
  padding: 16px;
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  background-color: var(--quizt-color-white);
}

/* ==========================================================================
   4. Elimination of WooCommerce Purple (#7f54b3 / #a46497) & Brand Overrides
   ========================================================================== */

/* All Buttons (Classic + Blocks + Alt + Submit) */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #place_order,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wc-block-components-button:not(.is-link),
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt {
  background-color: var(--quizt-color-primary) !important;
  color: var(--quizt-color-white) !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  border-radius: var(--quizt-radius) !important;
  border: none !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color var(--quizt-transition) !important;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.wc-block-components-button:not(.is-link):hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover {
  background-color: #d84f00 !important;
  color: var(--quizt-color-white) !important;
}

/* Disabled buttons */
.woocommerce #respond input#submit:disabled,
.woocommerce a.button:disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled,
.woocommerce #respond input#submit.disabled,
.woocommerce a.button.disabled,
.woocommerce button.button.disabled,
.woocommerce input.button.disabled {
  background-color: var(--quizt-color-gray-300) !important;
  color: var(--quizt-color-gray-600) !important;
  cursor: not-allowed !important;
}

/* Star Ratings (Warm yellow instead of purple) */
.woocommerce .star-rating,
.woocommerce .star-rating span {
  color: #ffb800 !important;
}

/* Notices (Calm, subtle borders without thick accent lines) */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  padding: 12px 18px 12px 46px !important;
  border-radius: var(--quizt-radius, 8px);
  margin-bottom: 20px;
  position: relative;
  line-height: 1.5;
  font-size: 0.9375rem;
  border: 1px solid #e5e7eb !important;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
  color: var(--quizt-color-primary, #ff5f00) !important;
  font-weight: 600;
  text-decoration: underline;
}

/* 1. Informatie: rustige achtergrond met subtiele rand */
.woocommerce-info {
  border: 1px solid #bae6fd !important;
  background-color: #f8fafc !important;
  color: #1e293b !important;
}

/* 2. Succes: rustige achtergrond met subtiele rand */
.woocommerce-message {
  border: 1px solid #bbf7d0 !important;
  background-color: #f8fafc !important;
  color: #1e293b !important;
}

/* 3. Fout: rustige achtergrond met subtiele rand */
.woocommerce-error {
  border: 1px solid #fecaca !important;
  background-color: #fef2f2 !important;
  color: #1e293b !important;
}

/* Notice Icons using clean SVG background (eliminates missing glyph empty boxes) */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  content: "" !important;
  position: absolute !important;
  top: 14px !important;
  left: 16px !important;
  width: 20px !important;
  height: 20px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  margin: 0 !important;
}

/* Success Checkmark Icon (Green) */
.woocommerce-message::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%2316a34a' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z'/%3E%3C/svg%3E") !important;
}

/* Info Icon (Blue) */
.woocommerce-info::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%230284c7' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-144c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z'/%3E%3C/svg%3E") !important;
}

/* Error Exclamation Icon (Red) */
.woocommerce-error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23dc2626' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z'/%3E%3C/svg%3E") !important;
}

.woocommerce-message a.button {
  background-color: var(--quizt-color-black) !important;
  color: var(--quizt-color-white) !important;
  padding: 6px 14px !important;
  font-size: 0.875rem !important;
  float: right;
  margin-top: -3px;
}

.woocommerce-message a.button:hover {
  background-color: var(--quizt-color-primary) !important;
}

/* Form Fields Focus States */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-cart table.cart td.actions .coupon .input-text {
  border: 1px solid var(--quizt-color-gray-300) !important;
  border-radius: var(--quizt-radius) !important;
  padding: 10px 14px !important;
  font-size: 1rem;
  background-color: var(--quizt-color-white);
  transition: border-color var(--quizt-transition), box-shadow var(--quizt-transition);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce-cart table.cart td.actions .coupon .input-text:focus {
  border-color: var(--quizt-color-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(255, 95, 0, 0.2) !important;
}

/* Select2 Component Overrides */
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background-color: var(--quizt-color-primary) !important;
  color: var(--quizt-color-white) !important;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default .select2-selection--single:focus {
  border-color: var(--quizt-color-primary) !important;
}

/* ==========================================================================
   5. Cart & Checkout Pages
   ========================================================================== */

/* 2-Column Desktop Checkout Layout via CSS Grid */
@media (min-width: 992px) {
  form.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: 1.15fr 0.85fr !important;
    column-gap: 40px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }

  form.woocommerce-checkout #customer_details {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 100% !important;
    float: none !important;
    margin: 0 0 30px 0 !important;
  }

  form.woocommerce-checkout #customer_details .col-1,
  form.woocommerce-checkout #customer_details .col-2 {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }

  form.woocommerce-checkout #order_review_heading {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
  }

  form.woocommerce-checkout #order_review {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }
}

/* Tablet and Mobile Checkout: clean vertical stack */
@media (max-width: 991px) {
  form.woocommerce-checkout #customer_details,
  form.woocommerce-checkout #order_review {
    width: 100% !important;
    float: none !important;
  }

  form.woocommerce-checkout #order_review_heading {
    margin-top: 32px !important;
    margin-bottom: 16px !important;
  }
}
.woocommerce-cart table.cart {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 24px;
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
}

.woocommerce-cart table.cart th,
.woocommerce-cart table.cart td {
  padding: 14px;
  border-bottom: 1px solid var(--quizt-color-gray-200);
  text-align: left;
}

.woocommerce-cart table.cart th {
  background-color: var(--quizt-color-gray-100);
  font-weight: 700;
  color: var(--quizt-color-black);
}

.woocommerce-cart table.cart td.actions {
  padding: 16px;
  background-color: var(--quizt-color-gray-100);
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review {
  background-color: var(--quizt-color-gray-100);
  padding: 24px;
  border-radius: var(--quizt-radius);
  border: 1px solid var(--quizt-color-gray-200);
}

.woocommerce-checkout #order_review_heading {
  margin-top: 30px;
  margin-bottom: 16px;
}

/* Payment Box Override (No purple background #dcd7e2) */
.woocommerce-checkout #payment {
  background-color: var(--quizt-color-white);
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  padding: 20px;
  margin-top: 20px;
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  background-color: var(--quizt-color-orange-light, #ffeee4) !important;
  border: 1px solid #ffd8c2 !important;
  color: var(--quizt-color-black) !important;
  border-radius: var(--quizt-radius);
  padding: 14px 18px;
  margin: 12px 0;
  font-size: 0.9375rem;
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
  border: 1em solid var(--quizt-color-orange-light, #ffeee4) !important;
  border-right-color: transparent !important;
  border-left-color: transparent !important;
  border-top-color: transparent !important;
}

/* ==========================================================================
   6. My Account Page
   ========================================================================== */
.woocommerce-account .woocommerce-MyAccount-navigation {
  float: left;
  width: 25%;
  margin-bottom: 30px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 12px 16px;
  color: var(--quizt-color-black);
  border-bottom: 1px solid var(--quizt-color-gray-200);
  font-weight: 600;
  text-decoration: none;
  transition: all var(--quizt-transition);
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child a {
  border-bottom: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background-color: var(--quizt-color-orange-light);
  color: var(--quizt-color-primary);
}

.woocommerce-account .woocommerce-MyAccount-content {
  float: right;
  width: 70%;
  margin-bottom: 30px;
}

@media (max-width: 767px) {
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
  }
}

/* ==========================================================================
   7. Catalog Pagination
   ========================================================================== */
.woocommerce nav.woocommerce-pagination {
  margin: 30px 0;
  text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
  display: inline-flex;
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  overflow: hidden;
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
  border-right: 1px solid var(--quizt-color-gray-200);
  margin: 0;
  float: none;
}

.woocommerce nav.woocommerce-pagination ul li:last-child {
  border-right: none;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: block;
  padding: 10px 16px;
  color: var(--quizt-color-black);
  text-decoration: none;
  font-weight: 600;
  line-height: 1;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background-color: var(--quizt-color-primary) !important;
  color: var(--quizt-color-white) !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
  background-color: var(--quizt-color-orange-light);
  color: var(--quizt-color-primary);
}

/* ==========================================================================
   8. Thank You Page Quizt Block (CAP-60)
   ========================================================================== */
.quizt-bedankt {
  background: var(--quizt-color-orange-light);
  border: 1px solid var(--quizt-color-primary);
  border-radius: 20px;
  padding: 40px;
  margin-bottom: 35px;
  box-shadow: var(--quizt-shadow-sm);
}

.quizt-bedankt__inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 30px;
}

.quizt-bedankt__content {
  flex: 1 1 auto;
}

.quizt-bedankt__media {
  flex: 0 0 240px;
  text-align: center;
}

.quizt-bedankt__media img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}

.quizt-bedankt__title {
  color: var(--quizt-color-primary);
  font-size: 26px;
  font-weight: 700;
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

.quizt-bedankt__check-icon {
  color: #28a745;
  font-size: 32px;
  line-height: 1;
}

.quizt-bedankt__lead {
  font-size: 17px;
  font-weight: 600;
  color: var(--quizt-color-black);
  margin-bottom: 14px;
}

.quizt-bedankt__subtitle {
  color: var(--quizt-color-primary);
  font-size: 18px;
  font-weight: 700;
  margin: 20px 0 8px 0;
}

.quizt-bedankt__steps {
  margin: 0 0 16px 20px;
  padding: 0;
  list-style-type: upper-alpha;
  line-height: 1.6;
}

.quizt-bedankt__steps li {
  margin-bottom: 8px;
}

.quizt-bedankt__spam-notice {
  color: var(--quizt-color-gray-600, #666);
  font-size: 13px;
  display: inline-block;
  margin-top: 4px;
}

.quizt-bedankt__quiz-answer {
  color: var(--quizt-color-primary);
  font-size: 16px;
  margin: 16px 0;
}

.quizt-bedankt__welcome {
  font-size: 16px;
  font-weight: 700;
  color: var(--quizt-color-primary);
  margin: 12px 0;
}

.quizt-bedankt__outro {
  font-weight: 600;
  margin-top: 16px;
}

@media (max-width: 768px) {
  .quizt-bedankt {
    padding: 24px;
  }
  .quizt-bedankt__inner {
    flex-direction: column-reverse;
    gap: 20px;
  }
  .quizt-bedankt__media {
    flex: 0 0 auto;
    max-width: 180px;
  }
}

/* ==========================================================================
   9. My Account Downloads & Subscriptions (CAP-58 & CAP-61)
   ========================================================================== */
.quizt-downloads-section {
  margin-bottom: 25px;
}

.quizt-downloads-heading {
  color: var(--quizt-color-primary);
  font-size: 20px;
  font-weight: 700;
  margin: 25px 0 15px 0;
}

.abonnement-downloads-block {
  background: var(--quizt-color-gray-100);
  border: 1px solid var(--quizt-color-gray-200);
  border-radius: var(--quizt-radius);
  padding: 20px;
  margin-bottom: 25px;
}

.abonnement-downloads-access-notice {
  margin: 0 0 12px 0;
  font-size: 15px;
  line-height: 1.5;
}

.abonnement-downloads-access-notice strong {
  color: var(--quizt-color-primary);
  display: block;
  font-size: 16px;
  margin-bottom: 4px;
}

.quizt-trial-alert {
  background: #fff3cd;
  color: #856404;
  border: 1px solid #ffeeba;
  padding: 12px 16px;
  border-radius: 6px;
  margin: 14px 0 18px 0;
  font-size: 14px;
  line-height: 1.5;
}

.quizt-trial-alert a {
  color: #856404;
  text-decoration: underline;
  font-weight: 700;
}

.abonnement-downloads-shortcode {
  margin-top: 15px;
}

.abonnement-downloads-cta {
  margin: 0;
  font-size: 15px;
}

.abonnement-downloads-cta strong {
  display: block;
  margin-bottom: 8px;
}

.button.quizt-btn-subscribe,
a.button.quizt-btn-subscribe {
  background-color: var(--quizt-color-primary) !important;
  color: var(--quizt-color-white) !important;
  border-radius: var(--quizt-radius) !important;
  font-weight: 700 !important;
  padding: 10px 20px !important;
  text-decoration: none !important;
  display: inline-block !important;
}

.button.quizt-btn-subscribe:hover,
a.button.quizt-btn-subscribe:hover {
  background-color: #e05400 !important;
}

/* My Account Downloads Table Responsiveness */
.woocommerce-table--downloads.account-downloads-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 30px;
}

.woocommerce-table--downloads.account-downloads-table th,
.woocommerce-table--downloads.account-downloads-table td {
  padding: 12px 16px;
  vertical-align: middle;
}

.woocommerce-table--downloads.account-downloads-table td.download-file a,
.woocommerce-table--downloads.account-downloads-table .woocommerce-MyAccount-downloads-file {
  background-color: var(--quizt-color-primary);
  color: var(--quizt-color-white) !important;
  padding: 8px 16px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  display: inline-block;
  transition: background-color var(--quizt-transition);
}

.woocommerce-table--downloads.account-downloads-table td.download-file a:hover,
.woocommerce-table--downloads.account-downloads-table .woocommerce-MyAccount-downloads-file:hover {
  background-color: #e05400;
}

@media (max-width: 600px) {
  .woocommerce-table--downloads.account-downloads-table th {
    display: none;
  }
  .woocommerce-table--downloads.account-downloads-table td {
    display: block;
    text-align: right;
    padding: 8px 12px;
    border: none;
  }
  .woocommerce-table--downloads.account-downloads-table td::before {
    content: attr(data-title);
    float: left;
    font-weight: 700;
    color: var(--quizt-color-gray-600, #666);
  }
  .woocommerce-table--downloads.account-downloads-table tr {
    display: block;
    border: 1px solid var(--quizt-color-gray-200);
    border-radius: 8px;
    margin-bottom: 14px;
    padding: 8px;
  }
}

