/* Structure only: typography, buttons and prices use the shop's theme. */
.axpb-native-pack-details { margin:16px 0; border-top:1px solid var(--axpb-divider, #ddd); border-bottom:1px solid var(--axpb-divider, #ddd); }
.axpb-native-pack-details > summary, [data-axpb] .axpb-effective-details > summary { min-height:44px; padding:12px 0; cursor:pointer; font-weight:700; }
.axpb-native-pack-details > .product-pack { margin-top:12px; }
.axpb-native-price-hidden { display:none !important; }
[data-axpb][hidden], [data-axpb] [hidden], .axpb-native-pack-details[hidden] { display:none !important; }
[data-axpb] { box-sizing:border-box; margin:16px 0; font:inherit; color:inherit; }
[data-axpb] *, [data-axpb] *::before, [data-axpb] *::after { box-sizing:border-box; }
[data-axpb] .axpb-heading h4 { margin-bottom:5px; }
[data-axpb] .axpb-heading-line { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
[data-axpb] .axpb-heading-line h4 { margin:0; }
[data-axpb] .axpb-heading-line .btn { font-size:.92em; }
[data-axpb] .axpb-heading > span { display:block; margin-bottom:5px; font-size:.92em; }
[data-axpb] .axpb-launcher { padding:8px 0; }
[data-axpb] .axpb-launcher > p { margin:8px 0 0; font-size:.92em; line-height:1.5; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
[data-axpb] .axpb-editable-details > summary { min-height:44px; padding:12px 0; cursor:pointer; font-weight:700; }
[data-axpb] .axpb-editable-scroll { max-height:min(280px, 40vh); max-height:min(280px, 40dvh); overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
[data-axpb] .axpb-row { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-row-copy { flex:1; min-width:0; }
[data-axpb] .axpb-row-copy > span, [data-axpb] .axpb-row-copy > small { display:block; font-size:.92em; }
[data-axpb] .axpb-row-copy > strong { display:block; line-height:1.4; overflow-wrap:anywhere; }
[data-axpb] .axpb-row-copy > small { margin-top:3px; }
[data-axpb] .axpb-row-image, [data-axpb] .axpb-option-image { width:48px; height:56px; object-fit:contain; flex-shrink:0; }
[data-axpb] .axpb-component-photo { display:inline-flex; flex-direction:column; align-items:center; gap:4px; width:56px; flex-shrink:0; }
[data-axpb] .axpb-box-badge, .axpb-selected-photo .axpb-box-badge { display:inline-block; padding:3px 4px; background:var(--atomx-lower-ink,#111); color:#fff; font-size:9px; font-weight:900; line-height:1.25; text-align:center; border-radius:3px; }
[data-axpb] .axpb-component-photo .axpb-box-badge { width:100%; }
[data-axpb] .axpb-row .axpb-box-badge, [data-axpb] .axpb-components-list .axpb-box-badge { display:none; }
[data-axpb] .axpb-preview .axpb-component-photo { width:80px; }
[data-axpb] .axpb-dialog-preview .axpb-component-photo { width:110px; }
[data-axpb] .axpb-dialog-preview .axpb-box-badge { font-size:10px; }
.axpb-selected-photo .axpb-photo-boxes { display:flex; flex-wrap:wrap; gap:8px; }
.axpb-selected-photo .axpb-box-badge { font-size:11px; }
[data-axpb] .axpb-image-empty { display:flex; align-items:center; justify-content:center; border:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-image-unavailable { min-width:48px; min-height:56px; border:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .btn { min-height:44px; flex-shrink:0; }
[data-axpb] .btn-primary { background-color:var(--axpb-primary-background); color:var(--axpb-primary-color); border-color:var(--axpb-primary-border); font-weight:var(--axpb-primary-weight); }
[data-axpb] button:disabled { cursor:wait; }
[data-axpb] button:focus-visible, [data-axpb] input:focus-visible, [data-axpb] select:focus-visible, [data-axpb] summary:focus-visible, [data-axpb] .axpb-components-scroll:focus-visible, [data-axpb] .axpb-editable-scroll:focus-visible, .axpb-native-pack-details > summary:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
[data-axpb] .axpb-preview, [data-axpb] .axpb-dialog-preview { display:flex; align-items:center; gap:12px; padding:12px 0; }
[data-axpb] .axpb-preview-image { width:65px; height:74px; flex-shrink:0; object-fit:contain; }
[data-axpb] .axpb-dialog-preview .axpb-preview-image { width:110px; height:140px; }
[data-axpb] .axpb-preview strong, [data-axpb] .axpb-dialog-preview strong { display:block; line-height:1.4; }
[data-axpb] .axpb-preview small, [data-axpb] .axpb-dialog-preview small, [data-axpb] .axpb-muted { display:block; font-size:.92em; }
[data-axpb] .axpb-price { padding-top:12px; border-top:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-total-label { margin-bottom:6px; }
[data-axpb] .axpb-price small { font-size:.92em; }
/* Native theme enhancers can append the original price after our quotation. */
[data-axpb] .axpb-price .current-price-vat:not([data-axpb-vat-row]),
[data-axpb] .axpb-price .sequra-promotion-widget,
[data-axpb] .axpb-price .Sequra__PromotionalWidgetWrapper { display:none !important; }
[data-axpb] .axpb-price .current-price { white-space:nowrap; font-variant-numeric:tabular-nums; }
[data-axpb] .axpb-status { margin:10px 0 0; }
[data-axpb] .axpb-error { font-weight:700; }
[data-axpb] .axpb-dialog { position:fixed; inset:0; margin:auto; width:min(520px, calc(100% - 24px)); max-width:none; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); border:1px solid var(--axpb-divider, #ddd); border-radius:var(--axpb-native-radius, 0); padding:0; background:var(--axpb-native-background, Canvas); color:var(--axpb-native-color, CanvasText); font:inherit; overflow:hidden; }
[data-axpb] .axpb-dialog[open] { display:flex; flex-direction:column; }
[data-axpb] .axpb-dialog::backdrop { background:rgb(0 0 0 / .38); }
[data-axpb] .axpb-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px; flex-shrink:0; border-bottom:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-dialog-header h4 { margin:0 0 4px; }
[data-axpb] .axpb-dialog-header small { display:block; font-size:.92em; }
[data-axpb] .axpb-dialog-controls { padding:12px 16px 0; flex-shrink:0; display:grid; gap:10px; }
[data-axpb] .axpb-dialog-controls > label { display:block; margin:0; font-size:.92em; }
[data-axpb] .axpb-dialog-controls select { display:block; width:100%; min-height:44px; margin-top:4px; font:inherit; color:inherit; }
[data-axpb] .axpb-dialog-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 16px; }
[data-axpb] .axpb-options { margin:0; padding:0; border:0; }
[data-axpb] .axpb-options > legend { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
[data-axpb] .axpb-option { display:flex; align-items:center; gap:10px; min-height:76px; padding:10px 0; margin:0; border-top:1px solid var(--axpb-divider, #ddd); cursor:pointer; }
[data-axpb] .axpb-option input { width:18px; height:18px; margin:0; flex-shrink:0; accent-color:currentColor; }
[data-axpb] .axpb-option > span { flex:1; min-width:0; }
[data-axpb] .axpb-option strong, [data-axpb] .axpb-option small { display:block; }
[data-axpb] .axpb-option strong { overflow-wrap:anywhere; }
[data-axpb] .axpb-option small { font-size:.92em; }
[data-axpb] .axpb-option b { font-weight:700; white-space:nowrap; font-variant-numeric:tabular-nums; }
[data-axpb] .axpb-variant-options { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; padding:0 0 12px; }
[data-axpb] .axpb-variant-options .axpb-option { display:grid; grid-template-columns:18px minmax(0, 1fr); align-content:start; align-items:start; gap:8px; min-height:88px; padding:10px; border:1px solid var(--axpb-divider, #ddd); border-radius:var(--axpb-native-radius, 0); }
[data-axpb] .axpb-variant-options .axpb-option:has(input:checked) { border-color:currentColor; box-shadow:inset 0 0 0 1px currentColor; }
[data-axpb] .axpb-variant-options .axpb-option > img, [data-axpb] .axpb-variant-options .axpb-option > .axpb-color-swatch, [data-axpb] .axpb-variant-options .axpb-option > .axpb-image-empty { grid-column:2; }
[data-axpb] .axpb-variant-options .axpb-option > span:not(.axpb-color-swatch):not(.axpb-image-empty), [data-axpb] .axpb-variant-options .axpb-option > b { grid-column:1 / -1; }
[data-axpb] .axpb-variant-options .axpb-option > .axpb-component-photo { grid-column:2; }
[data-axpb] .axpb-variant-options .axpb-option > b { font-size:.92em; }
[data-axpb] .axpb-color-swatch { display:block; width:32px; height:32px; margin:0; border:1px solid var(--axpb-divider, #ddd); border-radius:50%; }
[data-axpb] .axpb-unavailable { opacity:.55; cursor:not-allowed; }
[data-axpb] .axpb-dialog-footer { flex-shrink:0; padding:14px 16px 16px; border-top:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-dialog-footer > span { display:block; margin-bottom:10px; font-size:.92em; }
[data-axpb] [data-axpb-confirm] { width:100%; }
[data-axpb] .axpb-components-list { list-style:none; padding:0; margin:0; }
[data-axpb] .axpb-components-scroll { max-height:min(360px, 48vh); max-height:min(360px, 48dvh); overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
[data-axpb] .axpb-components-list > li { display:flex; gap:12px; align-items:center; padding:8px 0; border-top:1px solid var(--axpb-divider, #ddd); }
[data-axpb] .axpb-components-list small { display:block; }
.axpb-native-photo-hidden { display:none !important; }
.axpb-selected-photo { margin:0; font:inherit; color:inherit; }
.axpb-selected-photo[hidden] { display:none !important; }
.axpb-photo-zoom { display:block; width:100%; margin:0; padding:0; border:0; background:none; color:inherit; cursor:zoom-in; }
.axpb-photo-zoom:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.axpb-selected-photo [data-axpb-photo-image] { display:block; width:100%; height:auto; max-height:520px; object-fit:contain; }
.axpb-selected-photo figcaption { display:flex; flex-direction:column; gap:12px; margin-top:12px; }
.axpb-selected-photo .btn { align-self:flex-start; min-height:44px; }
.axpb-photo-status { margin:12px 0; font:inherit; color:inherit; }
.axpb-photo-status[hidden], .axpb-photo-status [hidden] { display:none !important; }
.axpb-photo-status p { margin-bottom:8px; }
.axpb-photo-dialog { position:fixed; inset:0; margin:auto; width:min(950px, calc(100% - 24px)); max-width:none; max-height:calc(100dvh - 24px); padding:0; border:1px solid var(--axpb-divider, #ddd); border-radius:var(--axpb-native-radius, 0); background:var(--axpb-native-background, Canvas); color:var(--axpb-native-color, CanvasText); font:inherit; overflow:hidden; }
.axpb-photo-dialog[open] { display:flex; flex-direction:column; }
.axpb-photo-dialog::backdrop { background:rgb(0 0 0 / .38); }
.axpb-photo-dialog-header { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:12px 16px; flex-shrink:0; }
.axpb-photo-dialog-header h4 { margin:0; }
.axpb-photo-dialog-body { overflow:auto; min-height:0; padding:0 16px 16px; }
.axpb-photo-dialog-body img { display:block; width:100%; height:auto; object-fit:contain; }
@media (max-width:767px) {
  .axpb-selected-photo [data-axpb-photo-image] { max-height:320px; }
}
@media (max-width:380px) {
  [data-axpb] .axpb-row { gap:8px; }
  [data-axpb] .axpb-row-image { width:38px; height:46px; }
  [data-axpb] .axpb-option { gap:8px; }
  [data-axpb] .axpb-option-image { width:34px; height:44px; }
}
