/**
 * WooForm — Glozin skin
 * =====================================================================
 * Built for the Glozin theme (UIXThemes). Like the Woodmart skin, every
 * colour, radius and height resolves from a CSS variable so the form follows
 * the theme's Customizer settings without a rebuild:
 *
 *   1. the Glozin token  (--gz-*)     — the storefront look
 *   2. the plugin token  (--codwo-*)  — Theme Studio, when the theme has none
 *   3. a literal fallback             — so any other theme still renders
 *
 * Glozin tokens consumed:
 *   --gz-color-primary      brand / sale colour     --gz-border-color       hairlines
 *   --gz-color-dark         headings, strong text   --gz-color-base         body text
 *   --gz-color-light-grey   quiet surfaces          --gz-color-price-sale   sale price
 *   --gz-button-bg-color    main button             --gz-button-rounded     button radius
 *   --gz-button-bg-color-hover                      --gz-input-rounded      field radius
 *   --gz-input-border-color field border            --gz-input-border-color-hover
 *   --gz-rounded-md         card radius             --gz-input-placeholder-color
 *
 * Typography is inherited from the page, so the form uses whatever font the
 * theme prints for the current language (e.g. Tajawal in Arabic).
 *
 * When "Glozin: Follow Theme Colors" is on (default), Theme Studio colours
 * are only published as --codwo-studio-* fallbacks, so the Glozin tokens win.
 *
 * `.codwo-skin-glozin.codwo-skin-glozin` doubles the class on purpose to
 * match the specificity of the per-skin rules in skins.css; this file is
 * enqueued after them so it wins the tie.
 */

/* ------------------------------------------------------------------ *
 * 1. Token bridge
 * ------------------------------------------------------------------ */

.codwo-product-form-wrapper.codwo-skin-glozin.codwo-skin-glozin {
    /* Selection, focus and totals follow Glozin's dark ink; the brand red
       (--gz-color-primary) is kept for sale prices, stars and highlights. */
    --codwo-primary:       var(--gz-color-dark, var(--codwo-studio-primary, #111));
    --codwo-primary-strong: var(--gz-color-dark, #111);
    --codwo-secondary:     var(--gz-color-dark, var(--codwo-studio-secondary, #111));
    --codwo-button-bg:     var(--gz-button-bg-color, var(--codwo-studio-button-bg, #111));
    --codwo-button-bg-hover: var(--gz-button-bg-color-hover, #000);
    --codwo-button-text:   var(--gz-button-color, var(--codwo-studio-button-text, #fff));
    --codwo-accent:        var(--gz-color-primary, var(--codwo-studio-accent, #d0473e));
    --codwo-text:          var(--gz-color-dark, var(--codwo-studio-text, #111));
    --codwo-text-muted:    var(--gz-color-base, var(--codwo-studio-text-muted, #444));
    --codwo-title-color:   var(--gz-color-dark, #111);
    --codwo-bg:            var(--gz-input-bg-color, var(--codwo-studio-bg, #fff));
    --codwo-surface:       var(--gz-color-light-grey, var(--codwo-studio-surface, #f5f5f5));
    --codwo-surface-muted: var(--gz-color-light-grey, var(--codwo-studio-surface, #f5f5f5));
    --codwo-border:        var(--gz-border-color, var(--codwo-studio-border, #ebebeb));
    --codwo-border-strong: var(--gz-border-color, var(--codwo-studio-border, #ebebeb));
    --codwo-field-border:  var(--gz-input-border-color, var(--gz-border-color, #ebebeb));
    --codwo-field-border-hover: var(--gz-input-border-color-hover, var(--gz-color-dark, #111));
    --codwo-success:       var(--codwo-studio-success, #1f8a4c);
    --codwo-success-soft:  #eef8f1;
    --codwo-danger:        var(--codwo-studio-danger, #d0473e);
    --codwo-sale:          var(--gz-color-price-sale, var(--gz-color-primary, #d0473e));
    --codwo-placeholder:   var(--gz-input-placeholder-color, rgba(17, 17, 17, 0.6));

    --codwo-radius-card:   var(--gz-rounded-md, var(--codwo-studio-radius-card, 10px));
    --codwo-radius-input:  var(--gz-input-rounded, var(--codwo-studio-radius-input, 30px));
    --codwo-radius-button: var(--gz-button-rounded, var(--codwo-studio-radius-button, 30px));
    --codwo-radius-box:    min(var(--gz-rounded-md, 10px), 12px);
    --codwo-radius-area:   min(var(--gz-input-rounded, 30px), 16px);
    --codwo-input-height:  50px;
    --codwo-field-gap:     16px;
    --codwo-card-pad:      22px;
    --codwo-gap:           18px;
    --codwo-field-bg:      var(--codwo-bg);
    --codwo-cta-height:    52px;
    --codwo-shadow-cta:    none;
    --codwo-sticky-cta:    1;

    max-width: none;
    margin: 20px 0;
    padding: 22px;
    background: #fff;
    border: 1px solid var(--codwo-border);
    border-radius: var(--codwo-radius-card);
    box-shadow: none;
    color: var(--codwo-text-muted);
    font-family: inherit;
    font-size: var(--gz-body-font-size, 15px);
    line-height: 1.6;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-form,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-form *:not(i):not(svg):not(.dashicons):not([class*="fa-"]):not(.fab):not(.fas):not(.far):not(.fal) {
    font-family: inherit;
}

/* ------------------------------------------------------------------ *
 * 2. Heading, product header, prices
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-form-title,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-title,
.codwo-skin-glozin.codwo-skin-glozin .codwo-form-heading__title {
    color: var(--codwo-text);
    font-weight: var(--gz-heading-font-weight, 600);
    letter-spacing: var(--gz-heading-letter-spacing, -0.034em);
    text-transform: none;
}

.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-form-title,
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-form-heading__title,
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__title {
    letter-spacing: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header,
.codwo-skin-glozin.codwo-skin-glozin .codwo-form-product-header,
.codwo-skin-glozin.codwo-skin-glozin .codwo-header-stacked .codwo-form-product-price {
    background: var(--codwo-surface);
    background-image: none;
    border: 0;
    border-radius: var(--codwo-radius-box);
    box-shadow: none;
    color: var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header {
    grid-template-columns: 72px 1fr;
    gap: 14px;
    padding: 12px;
    margin-block-end: 20px;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__media img,
.codwo-skin-glozin.codwo-skin-glozin .codwo-form-product-media img {
    width: 72px;
    height: 72px;
    object-fit: cover;
    border: 0;
    border-radius: var(--gz-image-rounded, 8px);
    background: #fff;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__title {
    color: var(--codwo-text);
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__price-value,
.codwo-skin-glozin.codwo-skin-glozin .codwo-form-product-price .codwo-product-price-value {
    color: var(--codwo-sale);
    font-weight: 600;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__price-regular,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-price-regular {
    color: var(--gz-color-grey, #888);
    opacity: 1;
    font-weight: 400;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__total-label {
    color: var(--codwo-text-muted);
    font-size: 12px;
    text-transform: none;
    letter-spacing: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__total-value,
.codwo-skin-glozin.codwo-skin-glozin .codwo-total-price {
    color: var(--codwo-text);
    font-weight: 700;
}

/* Stock pill — same shape as Glozin's product badges. */
.codwo-skin-glozin.codwo-skin-glozin .codwo-stock-badge {
    display: inline-block;
    padding: 1px 10px;
    border: 1px solid currentColor;
    border-radius: var(--gz-rounded-full, 999px);
    background: transparent;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
    unicode-bidi: isolate;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-stock--in  { color: var(--codwo-success); }
.codwo-skin-glozin.codwo-skin-glozin .codwo-stock--low { color: var(--codwo-accent); }
.codwo-skin-glozin.codwo-skin-glozin .codwo-stock-badge::before { display: none; }
.codwo-skin-glozin.codwo-skin-glozin .codwo-stock--out { color: var(--codwo-danger); }

/* ------------------------------------------------------------------ *
 * 3. Labels & fields — Glozin input shape
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group {
    margin-bottom: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group > label,
.codwo-skin-glozin.codwo-skin-glozin .codwo-quantity-section > label,
.codwo-skin-glozin.codwo-skin-glozin .codwo-variation-group > label {
    display: block;
    margin-bottom: 8px;
    color: var(--codwo-text);
    font-size: 14px;
    font-weight: 500;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group label .required {
    margin-inline-start: 3px;
    margin-inline-end: 0;
    color: var(--codwo-accent);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="text"],
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="tel"],
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="email"],
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="number"],
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group select,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea,
.codwo-skin-glozin.codwo-skin-glozin .codwo-captcha-input,
.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-input,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-input,
.codwo-skin-glozin.codwo-skin-glozin .codwo-variation-select {
    width: 100%;
    min-height: var(--codwo-input-height);
    padding: var(--gz-input-padding-y, 12px) var(--gz-input-padding-x, 20px);
    border: var(--gz-input-border-width, 1px) solid var(--codwo-field-border);
    border-radius: var(--codwo-radius-input);
    background: var(--codwo-bg);
    color: var(--gz-input-color, var(--codwo-text));
    font-size: var(--gz-input-font-size, 14px);
    line-height: 1.4;
    box-shadow: none;
    transition: border-color 0.2s ease;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea {
    min-height: 104px;
    border-radius: var(--codwo-radius-area);
    resize: vertical;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input:hover,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea:hover,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group select:hover {
    border-color: var(--codwo-field-border-hover);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input:focus,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea:focus,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group select:focus,
.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-input:focus,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-input:focus {
    border-color: var(--codwo-text);
    outline: none;
    box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.08);
}

.codwo-skin-glozin.codwo-skin-glozin input::placeholder,
.codwo-skin-glozin.codwo-skin-glozin textarea::placeholder {
    color: var(--codwo-placeholder);
    opacity: 1;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group.has-error input,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group.has-error textarea,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input.error,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea.error {
    border-color: var(--codwo-danger);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-error:empty {
    display: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-error {
    min-height: 0;
    margin-top: 6px;
    color: var(--codwo-danger);
    font-size: 13px;
    text-align: start;
}

/* ------------------------------------------------------------------ *
 * 4. Quantity — Glozin's grey pill stepper
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-quantity-controls {
    display: inline-flex;
    align-items: center;
    width: auto;
    max-width: none;
    height: var(--codwo-input-height);
    gap: 0;
    overflow: hidden;
    border: 1px solid var(--codwo-border);
    border-radius: var(--codwo-radius-input);
    background: var(--gz-color-light-grey, #f5f5f5);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-qty-minus,
.codwo-skin-glozin.codwo-skin-glozin .codwo-qty-plus {
    position: relative;
    width: 46px;
    min-width: 46px;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--codwo-text);
    font-size: 18px;
    font-weight: 400;
    box-shadow: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-qty-minus:hover,
.codwo-skin-glozin.codwo-skin-glozin .codwo-qty-plus:hover {
    background: rgba(17, 17, 17, 0.06);
    color: var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-quantity-controls input {
    width: 44px;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--codwo-text);
    font-size: 15px;
    font-weight: 600;
    direction: ltr;
    text-align: center;
    box-shadow: none;
}

/* ------------------------------------------------------------------ *
 * 5. Buttons — Glozin pill buttons
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-submit-btn {
    width: 100%;
    min-height: 52px;
    padding: var(--gz-button-padding-top, 15px) var(--gz-button-padding-right, 20px);
    border: var(--gz-button-border-width, 1px) solid var(--codwo-button-bg);
    border-radius: var(--codwo-radius-button);
    background: var(--codwo-button-bg);
    color: var(--codwo-button-text);
    font-size: var(--gz-button-font-size, 15px);
    font-weight: var(--gz-button-font-weight, 600);
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
    box-shadow: none;
    transform: none;
    transition: background-color 0.25s ease, border-color 0.25s ease, opacity 0.2s ease;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-submit-btn:hover:not(:disabled),
.codwo-skin-glozin.codwo-skin-glozin .codwo-submit-btn:focus-visible {
    border-color: var(--codwo-button-bg-hover);
    background: var(--codwo-button-bg-hover);
    color: var(--codwo-button-text);
    box-shadow: none;
    transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-submit-btn:focus-visible,
.codwo-skin-glozin.codwo-skin-glozin .codwo-add-to-cart-btn:focus-visible,
.codwo-skin-glozin.codwo-skin-glozin .codwo-whatsapp-btn:focus-visible,
.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option:focus-visible {
    outline: 2px solid var(--codwo-text);
    outline-offset: 2px;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-btn-price {
    color: inherit;
    unicode-bidi: isolate;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-add-to-cart-btn,
.codwo-skin-glozin.codwo-skin-glozin .codwo-btn-secondary {
    width: 100%;
    min-height: 50px;
    border: 1px solid var(--codwo-text);
    border-radius: var(--codwo-radius-button);
    background: transparent;
    color: var(--codwo-text);
    font-size: var(--gz-button-font-size, 15px);
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
    box-shadow: none;
    transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-add-to-cart-btn:hover,
.codwo-skin-glozin.codwo-skin-glozin .codwo-btn-secondary:hover {
    border-color: var(--codwo-text);
    background: var(--codwo-text);
    color: #fff;
    box-shadow: none;
    transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-whatsapp-btn {
    border-radius: var(--codwo-radius-button);
    min-height: 50px;
    box-shadow: none;
    text-transform: none;
    letter-spacing: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-woo-cart-divider {
    color: var(--gz-color-grey, #888);
    font-size: 13px;
    letter-spacing: 0;
    text-transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-buttons button,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-input-group button,
.codwo-skin-glozin.codwo-skin-glozin #codwo_apply_coupon_btn {
    min-height: var(--codwo-input-height);
    padding-inline: 22px;
    border: 1px solid var(--codwo-button-bg);
    border-radius: var(--codwo-radius-button);
    background: var(--codwo-button-bg);
    color: var(--codwo-button-text);
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    box-shadow: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-btn-link,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-toggle {
    color: var(--codwo-text);
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-transform: none;
}

/* ------------------------------------------------------------------ *
 * 6. Offers — quantity deals, bundles, extras, upsell
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-selector-section h4,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-title,
.codwo-skin-glozin.codwo-skin-glozin .codwo-extras-title {
    color: var(--codwo-text);
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-card,
.codwo-skin-glozin.codwo-skin-glozin .codwo-extra-row {
    border: 1px solid var(--codwo-border);
    border-radius: var(--codwo-radius-box);
    background: #fff !important;
    box-shadow: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option:hover {
    border-color: var(--codwo-text);
    box-shadow: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option.selected,
.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option.selected:hover,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-card.is-selected,
.codwo-skin-glozin.codwo-skin-glozin .codwo-extra-row.is-selected {
    border-color: var(--codwo-text);
    background: var(--gz-color-light-grey, #f5f5f5) !important;
    box-shadow: inset 0 0 0 1px var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option-title {
    color: var(--codwo-text);
    font-weight: 600;
    letter-spacing: 0;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option-new-price,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-new,
.codwo-skin-glozin.codwo-skin-glozin .codwo-upsell-new-price {
    color: var(--codwo-sale);
    font-weight: 600;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option-old-price,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-old,
.codwo-skin-glozin.codwo-skin-glozin .codwo-upsell-old-price {
    color: var(--gz-color-grey, #888);
}

/* Save badges look like Glozin's "-14%" sale badge. */
.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option-badge,
.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-badge,
.codwo-skin-glozin.codwo-skin-glozin .codwo-upsell-product-badge {
    border: 0;
    border-radius: var(--gz-rounded-full, 999px);
    background: var(--codwo-sale);
    color: #fff;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option-recommended {
    border-radius: var(--gz-rounded-full, 999px);
    background: var(--codwo-text);
    color: #fff;
    letter-spacing: 0;
    text-transform: none;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-item.selected .codwo-color-swatch,
.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-item.selected .codwo-image-swatch,
.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-item.selected .codwo-button-swatch {
    border-color: var(--codwo-text);
    box-shadow: 0 0 0 1px var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-button-swatch {
    border-radius: var(--codwo-radius-button);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-upsell-modal {
    border-radius: var(--codwo-radius-card);
}

/* ------------------------------------------------------------------ *
 * 7. Summary, trust badges, messages
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-order-summary {
    border: 0;
    border-radius: var(--codwo-radius-box);
    background: var(--gz-color-light-grey, #f5f5f5);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-summary-row {
    border-bottom-color: rgba(17, 17, 17, 0.08);
    color: var(--codwo-text-muted);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-summary-row,
.codwo-skin-glozin.codwo-skin-glozin .codwo-total-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-discount-amount,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-discount-amount {
    color: var(--codwo-success);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-trust-badges {
    border-top: 1px solid var(--codwo-border);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-badge {
    border: 0;
    background: transparent;
    color: var(--codwo-text);
    font-size: 13px;
    font-weight: 500;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-badge-icon {
    background: var(--gz-color-light-grey, #f5f5f5);
    color: var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-form-messages,
.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-status,
.codwo-skin-glozin.codwo-skin-glozin .codwo-add-to-cart-status {
    border-radius: var(--codwo-radius-box);
    text-align: start;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-message {
    border-radius: var(--codwo-radius-box);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-section,
.codwo-skin-glozin.codwo-skin-glozin .codwo-bank-transfer-section,
.codwo-skin-glozin.codwo-skin-glozin .codwo-coupon-section {
    border-color: var(--codwo-border);
    border-radius: var(--codwo-radius-box);
}

/* ------------------------------------------------------------------ *
 * 8. RTL
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input,
.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea {
    text-align: start;
}

/* Phone numbers stay LTR ("+212 6…") but the box starts on the RTL side. */
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="tel"],
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="number"],
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-input {
    direction: ltr;
    text-align: right;
}

.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input[type="tel"]::placeholder,
.codwo-rtl.codwo-skin-glozin.codwo-skin-glozin .codwo-otp-input::placeholder {
    direction: rtl;
    text-align: right;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-product-price-value,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-price-regular,
.codwo-skin-glozin.codwo-skin-glozin .codwo-total-price,
.codwo-skin-glozin.codwo-skin-glozin .codwo-subtotal-price,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__price-value,
.codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__total-value {
    unicode-bidi: isolate;
    font-variant-numeric: tabular-nums;
}

/* ------------------------------------------------------------------ *
 * 9. Small screens
 * ------------------------------------------------------------------ */

@media (max-width: 767px) {
    .codwo-product-form-wrapper.codwo-skin-glozin.codwo-skin-glozin {
        margin: 16px 0;
        padding: 16px;
    }

    .codwo-skin-glozin.codwo-skin-glozin .codwo-product-header {
        grid-template-columns: 60px 1fr;
        gap: 12px;
    }

    .codwo-skin-glozin.codwo-skin-glozin .codwo-product-header__media img {
        width: 60px;
        height: 60px;
    }

    .codwo-skin-glozin.codwo-skin-glozin .codwo-trust-badges {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
    }

    .codwo-skin-glozin.codwo-skin-glozin .codwo-badge {
        flex-direction: column;
        gap: 6px;
        padding: 4px 2px;
        font-size: 12px;
    }

    /* 16px stops iOS from zooming into the field on focus. */
    .codwo-skin-glozin.codwo-skin-glozin .codwo-field-group input,
    .codwo-skin-glozin.codwo-skin-glozin .codwo-field-group textarea,
    .codwo-skin-glozin.codwo-skin-glozin .codwo-field-group select {
        font-size: 16px;
    }
}

/* Native add-to-cart row: align with the main button. */
.codwo-skin-glozin.codwo-skin-glozin .codwo-woo-cart-fallback {
    padding-inline: 0;
}

/* ------------------------------------------------------------------ *
 * 10. 2.1 components — selection states in Glozin ink, sticky bar
 * ------------------------------------------------------------------ */

.codwo-skin-glozin.codwo-skin-glozin .codwo-promo-option.selected::before {
    border-color: var(--codwo-text);
    box-shadow: inset 0 0 0 4px #fff, inset 0 0 0 10px var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-item.selected .codwo-button-swatch {
    background: var(--codwo-text);
    border-color: var(--codwo-text);
    color: #fff;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-color .codwo-color-swatch {
    border-color: #fff;
    box-shadow: 0 0 0 1px var(--codwo-border);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-swatch-color .codwo-swatch-item.selected .codwo-color-swatch {
    border-color: #fff;
    box-shadow: 0 0 0 1.5px var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-fbt-card:has(input:checked),
.codwo-skin-glozin.codwo-skin-glozin .codwo-extra-row:has(input:checked) {
    border-color: var(--codwo-text);
    background: var(--gz-color-light-grey, #f5f5f5) !important;
    box-shadow: inset 0 0 0 1px var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-extra-icon {
    background: var(--gz-color-light-grey, #f5f5f5);
    color: var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-btn-price {
    background: rgba(255, 255, 255, 0.16);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-cta-note {
    display: flex;
    margin-top: -6px;
    color: var(--codwo-text-muted);
    font-weight: 500;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-cta-note svg {
    color: var(--codwo-text);
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-message.success {
    color: #1f6b3a;
    border-color: #b9dcc6;
    background: #eef8f1;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-message.error {
    color: var(--codwo-danger);
    border-color: rgba(208, 71, 62, 0.35);
    background: rgba(208, 71, 62, 0.07);
}

.codwo-sticky-cta--glozin {
    border-block-start-color: var(--gz-border-color, #ebebeb);
    box-shadow: 0 -6px 20px -14px rgba(17, 17, 17, 0.4);
}

.codwo-sticky-cta--glozin .codwo-sticky-cta__btn {
    min-height: 46px;
    box-shadow: none;
    font-weight: 600;
}

.codwo-skin-glozin.codwo-skin-glozin .codwo-quantity-section > label {
    margin-bottom: 0;
}
