/** Product-only mobile app presentation. No Order Express or native cart logic. */
body#product .lxo-recap-fab[hidden], body#product .lxo-recap-hint[hidden], body#product .lxo-recap-backdrop[hidden] { display: none; }
body#product .lxo-recap-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (min-width: 768px) { body#product .lxo-recap-fab, body#product .lxo-recap-hint, body#product .lxo-recap-backdrop, body#product .lxo-recap-controls { display: none; } }
@media (max-width: 767px) {
  body#product.lxo-recap-open #mobile-app-bottom-nav, body#product.lxo-recap-open #euray-consent-manage-trigger { visibility: hidden; }
  body#product.lxo-recap-open #header { z-index: 1; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet { display: none; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet--open { display: block; position: fixed; inset: auto 0 0; width: 100%; max-width: none; max-height: calc(100dvh - 24px); max-height: calc(var(--lxo-sheet-height, 100dvh) - 24px); margin: 0; padding: 0; overflow: auto; overscroll-behavior: contain; z-index: 1050; border: 0; border-radius: 24px 24px 0 0; background: #fff; color: #142122; box-shadow: 0 -6px 24px rgba(20,33,34,.12); }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__inner { position: static; margin: 0; padding: 6px 20px calc(20px + env(safe-area-inset-bottom, 0px)); border: 0; border-radius: 0; background: #fff; box-shadow: none; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__head { padding: 0 44px 14px 0; margin: 0; background: #fff; color: #142122; border: 0; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__title { margin: 0; color: #142122; font-size: 19px; line-height: 1.4; text-transform: none; letter-spacing: normal; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__dot, body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__dt-icon { display: none; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__body { padding: 0; background: #fff; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__entry { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 12px; padding: 6px 0; border: 0; background: #fff; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__entry-label { color: #59686a; font-size: 14px; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__entry-value { min-width: 0; color: #142122; text-align: right; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__total-wrap { margin: 16px 0 0; padding: 14px 0 0; border-top: 1px solid #e1e6e7; background: #fff; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__qty-row { padding: 0; margin-bottom: 14px; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__qty-control { background: #fff; border: 1px solid #e1e6e7; border-radius: 12px; overflow: hidden; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__qty-btn { width: 44px; height: 44px; color: #142122; background: #fff; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__qty-input { width: 42px; height: 44px; font-size: 16px; background: #fff; color: #142122; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__price-label { text-transform: none; color: #59686a; font-size: 14px; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__price { color: #142122; font-size: 24px; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta { box-sizing: border-box; display: flex; align-items: center; justify-content: flex-start; gap: var(--euray-purchase-gap); width: 100%; min-height: var(--euray-purchase-height); height: auto; padding: 8px var(--euray-purchase-padding); border: 1px solid var(--euray-primary, #5e2ee6); border-radius: var(--euray-purchase-radius); background: var(--euray-primary, #5e2ee6); color: #fff; box-shadow: none; font-size: var(--euray-purchase-font-size); font-weight: var(--euray-purchase-weight); line-height: 1.35; text-align: left; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta-price { display: none; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__trust-list { margin: 16px 0 0; padding: 0; background: #fff; font-size: 12px; }
  body#product .lxo-recap-controls { position: relative; min-height: 36px; padding-top: 4px; }
  body#product .lxo-recap-handle { display: block; width: 64px; height: 32px; margin: 0 auto; padding: 12px 14px; background: #fff; border: 0; touch-action: none; }
  body#product .lxo-recap-handle span { display: block; width: 36px; height: 4px; background: #c4cdce; border-radius: 4px; }
  body#product .lxo-recap-close { position: absolute; right: 12px; top: 36px; width: 44px; height: 44px; border: 1px solid #e1e6e7; border-radius: 12px; background: #fff; color: #142122; font-size: 24px; z-index: 1; }
  body#product .lxo-recap-side { display: block; margin: 0 auto; padding: 8px; border: 0; min-height: 44px; background: #fff; color: #007a80; font-size: 12px; }
  body#product .lxo-recap-backdrop { position: fixed; inset: 0; z-index: 1040; background: rgba(20,33,34,.4); }
  body#product .lxo-recap-fab { position: fixed; z-index: 1025; width: 196px; height: 56px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 12px; background: #542ded; color: #fff; border: 0; border-radius: 16px; box-shadow: 0 5px 18px rgba(84,45,237,.22); touch-action: none; user-select: none; cursor: grab; font: inherit; text-align: left; }
  body#product .lxo-recap-grip { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 27px; height: 24px; font-size: 23px; line-height: 1; border-right: 1px solid rgba(255,255,255,.4); padding-right: 8px; }
  body#product .lxo-recap-fab__label { display: block; font-size: 11px; line-height: 1.4; }
  body#product .lxo-recap-fab strong { display: block; color: #fff; font-size: 16px; line-height: 1.4; font-variant-numeric: tabular-nums; }
  body#product .lxo-recap-fab--dragging { transform: scale(1.025); cursor: grabbing; box-shadow: 0 10px 26px rgba(20,33,34,.25); }
  body#product .lxo-recap-fab:focus-visible, body#product .lxo-recap-controls button:focus-visible { outline: 3px solid #007a80; outline-offset: 3px; }
  body#product .lxo-recap-hint { position: fixed; z-index: 1025; width: 224px; max-width: calc(100% - 24px); padding: 11px 13px; background: #142122; color: #fff; font-size: 12px; line-height: 1.5; border-radius: 12px; pointer-events: none; box-shadow: 0 4px 14px rgba(20,33,34,.1); }
  body#product .lxo-recap-hint strong { display: block; color: #fff; font-size: 13px; }
  body#product .lxo-recap-hint::after { content: ''; position: absolute; right: 36px; bottom: -6px; width: 12px; height: 12px; background: #142122; transform: rotate(45deg); }
  body#product .lxo-recap-hint--left::after { right: auto; left: 36px; }
}
@media (max-width: 767px) {
  body#product.lxo-product-mobile-app {
    --lxo-mobile-action: var(--euray-primary, #5e2ee6);
    --euray-purchase-height: 56px;
    --euray-purchase-radius: 14px;
    --euray-purchase-font-size: 15px;
    --euray-purchase-weight: 600;
    --euray-purchase-gap: 8px;
    --euray-purchase-padding: 16px;
    --euray-purchase-icon-size: 20px;
    --lxo-mobile-text: var(--euray-text, #142122);
    --lxo-mobile-muted: #5c686b;
    --lxo-mobile-border: #e1e6e7;
    --lxo-mobile-white: #fff;
  }
  body#product.lxo-product-mobile-app .lglg-product-page { border: 0; border-radius: 0; padding: 0 16px; box-shadow: none; background: var(--lxo-mobile-white); }
  body#product.lxo-product-mobile-app .lglg-product-page .product-information { border: 0; border-radius: 0; padding: 0; box-shadow: none; }
  body#product.lxo-product-mobile-app .lglg-product-page .product_header_container h1 { margin-bottom: 16px; font-size: 26px; color: var(--lxo-mobile-text); }
  body#product.lxo-product-mobile-app .lglg-product-page .product-actions form .lglg_xtreamopsmanager-customization { margin: 0; padding: 0; border: 0; border-radius: 0; background: var(--lxo-mobile-white); box-shadow: none; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__header { display: none; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__field { padding: 16px 0; border: 0; margin: 0; background: var(--lxo-mobile-white); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__field + .lglg_xtreamopsmanager-customization__field { border-top: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__field-head { margin-bottom: 8px; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__label { font-size: 15px; font-weight: 600; color: var(--lxo-mobile-text); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__notice:not(:empty) { margin: 0 0 10px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--lxo-mobile-muted); font-size: 12px; line-height: 1.5; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__choices { gap: 8px; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__choice { min-height: 44px; padding: 10px 12px; border: 1px solid var(--lxo-mobile-border); border-radius: 12px; background: var(--lxo-mobile-white); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__choice:has(input:checked) { border-color: var(--lxo-mobile-action); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__choice input:checked ~ .lglg_xtreamopsmanager-customization__choice-label { color: var(--lxo-mobile-action); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__choice-label { font-size: 14px; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-group { display: flex; flex-wrap: wrap; padding: 0; gap: 8px; background: transparent; border: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-option { flex: 1 1 70px; min-width: 0; margin: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-label { display: flex; justify-content: center; min-height: 46px; padding: 9px 8px; border: 1px solid var(--lxo-mobile-border); border-radius: 12px; background: var(--lxo-mobile-white); color: var(--lxo-mobile-text); font-size: 13px; text-align: center; line-height: 1.3; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-input:checked + .lglg_xtreamopsmanager-customization__segment-label { padding: 8px 7px; border: 2px solid var(--lxo-mobile-action); background: var(--lxo-mobile-white); color: var(--lxo-mobile-action); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__select,
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__text { min-height: 46px; border-color: var(--lxo-mobile-border); border-radius: 12px; background: var(--lxo-mobile-white); font-size: 16px; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .product-variants-item ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 8px 0 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .input-container { flex: 1 1 calc(33.333% - 8px); min-width: 0; margin: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .input-container label { display: block; width: 100%; margin: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .radio-label { display: flex; align-items: center; justify-content: center; min-height: 52px; margin: 0; padding: 10px 5px; border: 1px solid var(--lxo-mobile-border); border-radius: 12px; background: var(--lxo-mobile-white); font-size: 14px; box-shadow: none; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants input:checked + .radio-label { border: 2px solid var(--lxo-mobile-action); color: var(--lxo-mobile-action); background: var(--lxo-mobile-white); }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg-product-recap { margin-top: 20px; }
}
@media (max-width: 767px) {
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-group { flex-direction: row; align-items: stretch; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-option { display: flex; width: auto; height: auto; min-height: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-label { width: 100%; min-width: 0; white-space: normal; overflow-wrap: anywhere; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  /* Native variants use !important on span display. This exception is scoped
     to their mobile presentation; all selected values and listeners stay native. */
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .input-container label { display: flex; align-items: center; justify-content: center; min-height: 58px; padding: 8px 4px; border: 1px solid var(--lxo-mobile-border); border-radius: 14px; background: var(--lxo-mobile-white); box-shadow: none; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .input-container label:has(input:checked) { border: 2px solid var(--lxo-mobile-action); }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .radio-label { display: inline !important; min-height: 0; height: auto; width: auto; border: 0; padding: 0; white-space: nowrap; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants label::before,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .radio-label::before { display: none; }
}
@media (max-width: 767px) {
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-inline-variants .product-variants-item { margin-bottom: 0; }
  /* The existing native duration wrapper declares padding with !important. */
  body#product.lxo-product-mobile-app .lglg-product-page .product-actions form .lxo-inline-variants .product-variants { padding: 0 !important; }
}

@media (max-width: 767px) { body#product .lxo-recap-cart { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 27px; height: 24px; padding-left: 8px; border-left: 1px solid rgba(255,255,255,.4); font-size: 18px; line-height: 1; color: #fff; } }

/* Native segmented choices: one bounded group, unchanged controls underneath. */
@media (max-width: 767px) {
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-group,
  body#product.lxo-product-mobile-app .lglg-product-page [data-lxo-role="line_type"] .lglg_xtreamopsmanager-customization__segment-group,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choices {
    display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); grid-template-columns: none;
    align-items: stretch; gap: 4px; padding: 4px; border: 1px solid var(--lxo-mobile-border);
    border-radius: 14px; background: #f6f8f8;
  }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-option { grid-column: auto; min-width: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page [data-lxo-role="line_type"] .lglg_xtreamopsmanager-customization__segment-option:first-child { grid-column: auto; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-label,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice {
    display: flex; align-items: center; justify-content: center; gap: 0; min-width: 0; min-height: 44px;
    margin: 0; padding: 8px 4px; border: 1px solid transparent; border-radius: 10px;
    background: transparent; box-shadow: none; color: var(--lxo-mobile-text); font-size: 13px; line-height: 1.35; text-align: center;
  }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice-label { font-size: 13px; line-height: 1.35; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-input:checked + .lglg_xtreamopsmanager-customization__segment-label,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice:has(input:checked) {
    padding: 8px 4px; border: 1px solid #e1e6e7; background: #fff; color: #007a80; box-shadow: 0 1px 3px rgba(20,33,34,.08);
  }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice input:checked ~ .lglg_xtreamopsmanager-customization__choice-label { color: #007a80; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-input:focus-visible + .lglg_xtreamopsmanager-customization__segment-label,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice:has(input:focus-visible) { outline: 3px solid #007a80; outline-offset: 1px; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice input,
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-group .lglg_xtreamopsmanager-customization__choice-description { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-choice-caption { margin: 8px 0 0; color: var(--lxo-mobile-muted); font-size: 12px; line-height: 1.5; }
  body#product.lxo-product-mobile-app .lglg-product-page .lglg_xtreamopsmanager-customization__segment-label.lxo-mobile-shortened { font-size: 0; }
  body#product.lxo-product-mobile-app .lglg-product-page .lxo-mobile-short-label { font-size: 13px; line-height: 1.35; }
}

@media (max-width: 767px) {
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta-left { display: inline-flex; align-items: center; justify-content: flex-start; gap: var(--euray-purchase-gap); font: inherit; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta-left > i { flex: 0 0 var(--euray-purchase-icon-size); width: var(--euray-purchase-icon-size); font-size: var(--euray-purchase-icon-size); text-align: center; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta:hover:not(:disabled) { background: #4b22c7; border-color: #4b22c7; }
  body#product.lxo-recap-enabled .lglg-product-page .lxo-recap-sheet .lglg-product-recap__cta:focus-visible { outline: 3px solid #007a80; outline-offset: 3px; }
}
