

/* ============================================================
   MUSIC-TASTE V2 product card additions (2026-05-24)
   Perkelta is product-card.css (theme.yml registracija neaktualu del CCC).
   ============================================================ */

/* ============================================================
   bomba-overrides.css — bomba-editorial temos override'ai
   Perkelta is header.tpl <style> bloko 2026-05-19 (tvarkingumas).
   Keiciant: header.tpl <link> ?v= versija pabumpinti (CF cache-bust).
   ============================================================ */

/* --- Logo (light/dark switch) --- */
.bomba-logo{display:block}
.bomba-logo-dark{display:none}
.dark .bomba-logo-light{display:none}
.dark .bomba-logo-dark{display:block}

/* --- Meniu medzio toggle ikonos --- */
.collapse-icons .material-icons{background:transparent !important;width:auto;height:auto;min-width:0;margin:0;padding:0;color:var(--text,#1a1714) !important;font-family:inherit;font-size:0;box-shadow:none !important}
.collapse-icons .material-icons::before{font-family:inherit;font-size:1.05rem;font-weight:600;line-height:1}
.collapse-icons .material-icons.add::before{content:"+"}
.collapse-icons .material-icons.remove::before{content:"\2212"}
/* --- Meniu medzio elementai: vietos rezervavimas toggle ikonai TIK depth=0 <a> linke, kad sub-itemai gautu pilna ploti --- */
.category-top-menu li[data-depth="0"]>a{padding-right:44px}

/* --- Prekiu korteliu flag ("NAUJA" ir kt.) --- */
.bomba-product-card{position:relative}
.bomba-product-card .product-flags{position:absolute !important;top:.55rem !important;left:.55rem !important;right:auto !important;bottom:auto !important;width:auto !important;margin:0 !important;padding:0 !important;z-index:3;display:flex;flex-direction:column;gap:.35rem;pointer-events:none;list-style:none}
.bomba-product-card .product-flags .product-flag{position:static !important;top:auto !important;margin:0 !important;width:fit-content !important;background:var(--gold,#b8901c) !important;color:#1a1714 !important;border:none !important;border-radius:999px !important;padding:.28rem .68rem !important;font-family:var(--font-body) !important;font-size:.6rem !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.09em !important;line-height:1 !important;box-shadow:0 2px 6px rgba(0,0,0,.2) !important}
.bomba-product-card .product-flags .product-flag.out_of_stock{background:#c0392b !important;color:#fff !important}

/* --- Dark mode: --bomba-* kintamuju dark reiksmes --- */
html.dark{--bomba-bg:#0a0a0a;--bomba-bg-alt:#141414;--bomba-text:#f0ece4;--bomba-text-soft:#c8c0b4;--bomba-text-muted:#8a857c;--bomba-gold:#c8a96e;--bomba-gold-dark:#e8c97e;--bomba-card:#141414;--bomba-border:#2a2520;--bomba-border-strong:#3a332b;--bomba-success:#27ae60;--bomba-danger:#e0564a}

/* --- Topbar: trumpas tekstas mobiliam --- */
.bomba-topbar-short{display:none}
@media(max-width:768px){.bomba-topbar-full{display:none}.bomba-topbar-short{display:inline}}

/* --- Dark mode: PrestaShop core/moduliu balti blokai (light leftover'ai) --- */
html.dark .card,
html.dark .page-content,
html.dark footer#footer,
html.dark .block_newsletter{background:var(--bg2) !important;border-color:var(--border) !important;color:var(--text) !important}
html.dark .card label,html.dark .card legend,html.dark .card h1,html.dark .card h2,html.dark .card h3,html.dark .card h4,html.dark .card p,
html.dark .page-content h1,html.dark .page-content h2,html.dark .page-content h3,html.dark .page-content h4,html.dark .page-content h5,html.dark .page-content h6,html.dark .page-content p,html.dark .page-content li,html.dark .page-content strong,html.dark .page-content span,html.dark .page-content td,html.dark .page-content label,
html.dark .block_newsletter h1,html.dark .block_newsletter h2,html.dark .block_newsletter h3,html.dark .block_newsletter h4,html.dark .block_newsletter p,html.dark .block_newsletter label{color:var(--text) !important}

/* --- Produkto virselis: picture uzpildo kvadrata --- */
.bomba-product-cover picture{display:block;width:100%;height:100%}

/* --- Produkto puslapio H1: leisti pilna wrap (kortelei skirtas line-clamp:2 buvo nukerpamas pavadinima) --- */
#product h1.bomba-product-title,
body#product h1.bomba-product-title{display:block;-webkit-line-clamp:unset;-webkit-box-orient:unset;overflow:visible;min-height:0;word-break:break-word;hyphens:auto}

/* --- Produkto puslapio delivery blokas: vertical layout mobile (<=640px) --- */
@media(max-width:640px){
  .bomba-delivery{flex-direction:column !important;align-items:flex-start !important;gap:6px !important}
  .bomba-delivery .bomba-delivery-msg{font-size:11px !important}
}

/* ============================================================
   Homepage HERO slider (ps_imageslider) — bomba-editorial stiliai
   ============================================================ */
.bomba-hero-slider{max-width:1280px;margin:24px auto 40px;padding:0 20px}
.bomba-hero-slider .carousel{border-radius:8px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08)}
.bomba-hero-slider .carousel-inner{aspect-ratio:3/1;background:var(--bg2,#f0ece4)}
.bomba-hero-slider .carousel-item{height:100%}
.bomba-hero-slider .carousel-item img{width:100%;height:100%;object-fit:cover;display:block}

/* Dots (indicators) — gold accent */
.bomba-hero-slider .carousel-indicators{margin-bottom:16px}
.bomba-hero-slider .carousel-indicators li,
.bomba-hero-slider .carousel-indicators button{width:10px;height:10px;border-radius:50%;border:2px solid #fff;background:transparent;margin:0 5px;opacity:.7;transition:all .3s}
.bomba-hero-slider .carousel-indicators li.active,
.bomba-hero-slider .carousel-indicators button.active,
.bomba-hero-slider .carousel-indicators .active{background:var(--gold,#b8901c);border-color:var(--gold,#b8901c);opacity:1;transform:scale(1.15)}

/* Prev/Next arrows — soft style */
.bomba-hero-slider .carousel-control-prev,
.bomba-hero-slider .carousel-control-next{width:60px;opacity:.5;transition:opacity .2s}
.bomba-hero-slider .carousel-control-prev:hover,
.bomba-hero-slider .carousel-control-next:hover{opacity:.9}
.bomba-hero-slider .carousel-control-prev-icon,
.bomba-hero-slider .carousel-control-next-icon{width:32px;height:32px;background-size:60% 60%;background-position:center;background-repeat:no-repeat;background-color:rgba(0,0,0,.4);border-radius:50%}

/* Caption text overlay */
.bomba-hero-slider .carousel-caption{background:linear-gradient(transparent,rgba(0,0,0,.7));padding:60px 30px 30px;left:0;right:0;bottom:0;text-align:left}
.bomba-hero-slider .carousel-caption h1,
.bomba-hero-slider .carousel-caption h2,
.bomba-hero-slider .carousel-caption h3,
.bomba-hero-slider .carousel-caption h5{font-family:var(--font-display);font-weight:700;color:#fff;letter-spacing:-.01em;margin:0 0 8px}
.bomba-hero-slider .carousel-caption h5{font-size:1.5rem}
.bomba-hero-slider .carousel-caption p{color:rgba(255,255,255,.92);font-size:.95rem;margin:0;max-width:600px}

/* Dark mode — soft border + adjusted shadow */
html.dark .bomba-hero-slider .carousel{box-shadow:0 4px 20px rgba(0,0,0,.4);border:1px solid var(--bomba-border,#2a2520)}
html.dark .bomba-hero-slider .carousel-inner{background:var(--bomba-bg-alt,#141414)}
html.dark .bomba-hero-slider .carousel-indicators li,
html.dark .bomba-hero-slider .carousel-indicators button{border-color:var(--bomba-text-soft,#c8c0b4)}
html.dark .bomba-hero-slider .carousel-indicators .active{background:var(--bomba-gold,#c8a96e);border-color:var(--bomba-gold,#c8a96e)}

/* Mobile responsive */
@media(max-width:768px){
  .bomba-hero-slider{margin:16px auto 24px;padding:0 12px}
  .bomba-hero-slider .carousel-inner{aspect-ratio:16/9}
  .bomba-hero-slider .carousel-caption{padding:30px 16px 16px}
  .bomba-hero-slider .carousel-caption h5{font-size:1.15rem}
  .bomba-hero-slider .carousel-caption p{font-size:.82rem;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}
  .bomba-hero-slider .carousel-control-prev,
  .bomba-hero-slider .carousel-control-next{width:40px}
  .bomba-hero-slider .carousel-control-prev-icon,
  .bomba-hero-slider .carousel-control-next-icon{width:24px;height:24px}
}

/* ============================================================
   Faceted Search sidebar (ps_facetedsearch) — bomba-editorial
   v2026-05-20g — Inter typography, gold accents, soft borders
   ============================================================ */
#search_filters{padding:0;font-family:var(--font-body)}
#search_filters>p.h6{font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text,#1a1714);margin:0 0 8px;padding:18px 0 16px;border-bottom:1px solid var(--border,rgba(26,23,20,.15))}

#search_filters .facet{padding:18px 0;border-bottom:1px solid var(--border,rgba(26,23,20,.08))}
#search_filters .facet:last-child{border-bottom:none}
#search_filters .facet .h6,
#search_filters .facet .facet-title{font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text,#1a1714);margin:0 0 14px}

#search_filters .facet ul{list-style:none;padding:0;margin:0}
#search_filters .facet li{padding:5px 0;margin:0}

/* Label + custom checkbox + count */
#search_filters .facet-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem;color:var(--text-soft,#5a5450);transition:color .15s;line-height:1.35;margin:0}
#search_filters .facet-label:hover{color:var(--gold,#b8901c)}
#search_filters .facet-label a{color:inherit;text-decoration:none;flex:1;transition:color .15s}
#search_filters .facet-label a:hover{color:var(--gold,#b8901c);text-decoration:none}
#search_filters .facet-label .magnitude{color:var(--text-muted,#8a857c);font-size:.78rem;font-weight:400;margin-left:4px}

/* Custom checkbox container */
#search_filters .custom-checkbox{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1.5px solid var(--border-strong,rgba(26,23,20,.3));border-radius:3px;background:#fff;cursor:pointer;transition:all .15s;flex-shrink:0;position:relative}
#search_filters .custom-checkbox:hover{border-color:var(--gold,#b8901c)}
#search_filters .custom-checkbox input[type=checkbox]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;margin:0;z-index:1}
#search_filters .custom-checkbox .ps-shown-by-js{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;display:none}
#search_filters .custom-checkbox input[type=checkbox]:checked ~ .ps-shown-by-js{display:inline}
#search_filters .custom-checkbox:has(input:checked){background:var(--gold,#b8901c);border-color:var(--gold,#b8901c)}
#search_filters .custom-checkbox .material-icons{color:#fff;font-size:14px;font-weight:700}

/* Active filter pill (above products list) */
#js-active-search-filters,
.active-filters{margin:14px 0 22px;padding:14px 18px;background:#f4f0e6;border-radius:8px}
#js-active-search-filters .active-filter-title,
.active-filters .active-filter-title{font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text,#1a1714);margin:0 0 10px;display:block}
#js-active-search-filters .filter-block,
.active-filters .filter-block{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;background:#fff;color:var(--text,#1a1714);border:1px solid var(--border,rgba(26,23,20,.2));border-radius:999px;font-family:var(--font-body);font-size:.78rem;margin:4px 6px 4px 0;cursor:pointer;transition:all .15s}
#js-active-search-filters .filter-block:hover,
.active-filters .filter-block:hover{background:var(--gold,#b8901c);color:#1a1714;border-color:var(--gold,#b8901c)}
#js-active-search-filters .filter-block .close,
.active-filters .filter-block .close{opacity:.55;font-size:1rem;line-height:1;cursor:pointer}
#js-active-search-filters .filter-block:hover .close{opacity:1}
#_desktop_search_filters_clear_all .js-search-filters-clear-all,
#_mobile_search_filters_clear_all .js-search-filters-clear-all{display:inline-block;margin-top:8px;color:var(--gold,#b8901c);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border:1px dashed var(--gold,#b8901c);padding:5px 11px;border-radius:999px;background:transparent;transition:all .15s}
#_desktop_search_filters_clear_all .js-search-filters-clear-all:hover{background:var(--gold,#b8901c);color:#fff;border-style:solid}

/* Price slider (jQuery UI) — gold thumb */
#search_filters .ui-slider{background:var(--border,#e8e3d5);height:4px;border-radius:2px;border:none;margin:14px 4px}
#search_filters .ui-slider-range{background:var(--gold,#b8901c);border:none}
#search_filters .ui-slider-handle{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--gold,#b8901c);top:-8px;cursor:grab;outline:none;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:transform .15s}
#search_filters .ui-slider-handle:hover,#search_filters .ui-slider-handle:active{transform:scale(1.2);cursor:grabbing}
#search_filters .faceted-slider-range,
#search_filters .faceted-slider-display{font-size:.82rem;color:var(--text-soft,#5a5450);margin-top:6px}

/* Mobile (sm-down): GERAI button + Clear All */
@media(max-width:991px){
  #search_filter_controls{display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-top:1px solid var(--border,rgba(26,23,20,.15));margin-top:18px}
  #search_filter_controls .btn{flex:1;background:var(--gold,#b8901c);color:#1a1714;border:none;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:10px 16px;border-radius:6px}
  #search_filter_controls .btn:hover{background:var(--gold-dark,#a07d18);color:#fff}
}

/* Dark mode */
html.dark #search_filters>p.h6,
html.dark #search_filters .facet .h6,
html.dark #search_filters .facet .facet-title{color:var(--bomba-text,#f0ece4)}
html.dark #search_filters>p.h6{border-bottom-color:var(--bomba-border,#2a2520)}
html.dark #search_filters .facet{border-bottom-color:var(--bomba-border,#2a2520)}
html.dark #search_filters .facet-label{color:var(--bomba-text-soft,#c8c0b4)}
html.dark #search_filters .facet-label:hover,
html.dark #search_filters .facet-label a:hover{color:var(--bomba-gold,#c8a96e)}
html.dark #search_filters .facet-label .magnitude{color:var(--bomba-text-muted,#8a857c)}
html.dark #search_filters .custom-checkbox{background:var(--bomba-bg-alt,#141414);border-color:var(--bomba-border-strong,#3a332b)}
html.dark #search_filters .custom-checkbox:has(input:checked){background:var(--bomba-gold,#c8a96e);border-color:var(--bomba-gold,#c8a96e)}
html.dark #search_filters .ui-slider{background:var(--bomba-border,#2a2520)}
html.dark #js-active-search-filters,
html.dark .active-filters{background:var(--bomba-bg-alt,#141414)}
html.dark #js-active-search-filters .active-filter-title{color:var(--bomba-text,#f0ece4)}
html.dark #js-active-search-filters .filter-block{background:var(--bomba-bg,#0a0a0a);border-color:var(--bomba-border,#2a2520);color:var(--bomba-text-soft,#c8c0b4)}

/* ============================================================
   Kategorija-specifiniai placeholder gradient'ai (be banner'io)
   ============================================================ */
#js-product-list-header .bomba-cat-placeholder.cat-17{background:linear-gradient(135deg,#1a1714 0%,#3a332b 35%,var(--gold,#b8901c) 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-11{background:linear-gradient(135deg,#2a3a55 0%,#5070a0 50%,#a0c0e0 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-22{background:linear-gradient(135deg,#2a1a3a 0%,#5a3a7a 50%,#9070c0 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-21{background:linear-gradient(135deg,#0a1a4a 0%,#1a4a8a 50%,#3a7acc 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-23{background:linear-gradient(135deg,#3a1a0a 0%,#7a4520 50%,#c89060 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-25{background:linear-gradient(135deg,#f9d046 0%,#1d9d4a 50%,#c0392b 100%);color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4)}
#js-product-list-header .bomba-cat-placeholder.cat-86{background:linear-gradient(135deg,#a02020 0%,#e84030 50%,#f5a040 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-36{background:linear-gradient(135deg,#0a3a0a 0%,#1a6a2a 35%,#c0301a 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-33{background:linear-gradient(135deg,#5a0a1a 0%,#a01a3a 50%,#e8c080 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-10{background:linear-gradient(135deg,#0a4a3a 0%,#1a8a5a 50%,#3acc8a 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-30{background:linear-gradient(135deg,#3a0a4a 0%,#7a1a8a 50%,#c060d0 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-32{background:linear-gradient(135deg,#4a3a0a 0%,#8a6a1a 50%,#d0a040 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-40{background:linear-gradient(135deg,#5a4a0a 0%,#8a7a3a 50%,#c0b070 100%);color:#fff}
#js-product-list-header .bomba-cat-placeholder.cat-59{background:linear-gradient(135deg,#1a4a3a 0%,#3a8a6a 50%,#80c0a0 100%);color:#fff}

/* ============================================================
   Dark mode: block-categories (sidebar viršuje) — pridėta v=20260520i
   ============================================================ */
html.dark #left-column .block-categories,
html.dark .block-categories{background:transparent !important;color:var(--bomba-text,#f0ece4) !important}
html.dark .block-categories .h6,
html.dark .block-categories>.text-uppercase,
html.dark .block-categories>p.h6{color:var(--bomba-text,#f0ece4) !important;border-bottom-color:var(--bomba-border,#2a2520) !important}
html.dark .block-categories .category-top-menu>li>a,
html.dark .block-categories .category-sub-menu>li>a,
html.dark .block-categories ul a{color:var(--bomba-text-soft,#c8c0b4) !important}
html.dark .block-categories .category-top-menu>li>a:hover,
html.dark .block-categories .category-sub-menu>li>a:hover,
html.dark .block-categories ul a:hover{color:var(--bomba-gold,#c8a96e) !important}
html.dark .block-categories .collapse-icons .material-icons,
html.dark .block-categories .collapse-icons .material-icons::before{color:var(--bomba-text-soft,#c8c0b4) !important}
html.dark #left-column{background:transparent}

/* ============================================================
   Mobile breakpoint patikra — kategorija placeholder banner'iai mobile
   ============================================================ */
@media (max-width:480px){
  #js-product-list-header .bomba-cat-placeholder{aspect-ratio:5/2}
  #js-product-list-header .bomba-cat-placeholder .bomba-cat-text{padding:10px}
  #js-product-list-header .bomba-cat-placeholder .bomba-cat-title{font-size:clamp(1.4rem,7vw,2.4rem) !important;letter-spacing:-.01em}
  #js-product-list-header .bomba-cat-placeholder .bomba-cat-sub{font-size:.7rem !important;margin-top:8px !important;letter-spacing:.06em}
}

/* ============================================================
   Accessibility — prefers-reduced-motion
   Apple HIG / WCAG 2.1 Success Criterion 2.3.3
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  /* Carousel auto-slide pažeidžia naudotojus su vestibular sutrikimais */
  .bomba-hero-slider .carousel-item.active.carousel-item-start,
  .bomba-hero-slider .carousel-item.active.carousel-item-end,
  .bomba-hero-slider .carousel-item-next,
  .bomba-hero-slider .carousel-item-prev {
    transition: none !important;
    transform: none !important;
  }
}

/* ============================================================
   @media print — pirkimo / produkto puslapio paspausdinimas
   Slėpti nav/footer/buttons; optimaliai paruošti spausdinimui
   ============================================================ */
@media print {
  /* Slėpti naviguojamus elementus */
  .bomba-topbar,
  .bomba-header,
  .bomba-mainnav,
  .bomba-footer,
  #footer,
  .bomba-hero-slider,
  .bomba-product-add-to-cart,
  .bomba-add-to-cart,
  .bomba-delivery,
  .bomba-notify-wrap,
  #search_filters_wrapper,
  .pagination,
  .bomba-fs-bar,
  #js-product-list-top,
  .block_newsletter,
  .product-flags,
  .theme-btn,
  #bomba-mobile-search {
    display: none !important;
  }
  /* Pilnas plotis spausdinimui */
  body, .bomba-product-page, .bomba-product-grid {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #000 !important;
  }
  /* Vienas stulpelis */
  .bomba-product-grid {
    display: block !important;
  }
  .bomba-product-cover-wrap {
    max-width: 40% !important;
    float: left;
    margin-right: 20px;
  }
  /* Tekstas — juodas ant baltų */
  h1, h2, h3, h4, h5, h6, p, span, a, div {
    color: #000 !important;
    background: transparent !important;
  }
  /* Kainos box — minimalistinis */
  .bomba-price-box, .bomba-info-table {
    border: 1px solid #ccc !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  /* Nuorodos — rodyti URL */
  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.85em;
    color: #555 !important;
  }
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "" !important;
  }
  /* Page break — neleisti H1/H2 atskirti nuo sekančio elemento */
  h1, h2, h3 {
    page-break-after: avoid;
  }
  /* Šriftas — serif printui (geriau skaitomas popieriuje) */
  body {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 11pt !important;
    line-height: 1.5 !important;
  }
}

/* ============================================================
   :focus-visible — Apple HIG keyboard navigation outline
   Gold accent (bomba branded) instead of browser default blue
   WCAG 2.4.7 Focus Visible compliance
   ============================================================ */
*:focus {
  outline: none;
}
*:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
  border-radius: 4px;
}
/* Buttons + interactive — slightly stronger ring */
button:focus-visible,
.btn:focus-visible,
.bomba-add-to-cart:focus-visible,
.bomba-product-add:focus-visible,
a.bomba-genre-card:focus-visible,
a.bomba-product-cover:focus-visible {
  outline: 3px solid var(--gold);
  outline-offset: 3px;
}
/* Inputs — subtle inset glow */
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 0;
  box-shadow: 0 0 0 4px var(--search-glow, rgba(184,144,28,0.15));
}
/* Skip rounded outline on .carousel controls (custom shape) */
.carousel-control-prev:focus-visible,
.carousel-control-next:focus-visible {
  outline-offset: 0;
  border-radius: 50%;
}

/* ─── bom-013 fix v2 (2026-05-24): Mobile touch targets WCAG 2.5.5 AAA ─── */
/* v2: scope narrower — header'is jau turi compact icon layout (overflow fix TC-MOB-002) */
@media (max-width: 768px) {
  /* min 44px height ONLY on main + footer + pagination — NE header (compact icons) */
  main a,
  main button:not([aria-label]),
  main input[type="submit"],
  main input[type="button"],
  main [role="button"],
  footer a,
  footer button,
  .pagination a,
  .pagination button {
    min-height: 44px;
  }

  /* Nav links — padding for tap accuracy */
  nav a {
    padding: 12px 14px;
    min-height: 44px;
  }

  /* Footer links — line-height for tap accuracy */
  footer a {
    line-height: 44px;
  }
}

/* Failsafe: ensure body never overflows mobile viewport (TC-MOB-002) */
html, body {
  max-width: 100vw;
  overflow-x: clip;
}
/* ─── end bom-013 fix v2 ─── */
/**
 * Bomba Editorial — Product Card CSS (V2)
 * Music-taste skill compliance — extracted from product.tpl inline styles.
 *
 * Deploy path: themes/bomba-editorial/assets/css/product-card.css
 * Loaded via: theme's _data/assets.yml ARBA actionFrontControllerSetMedia hook
 *
 * Variables expected (from bomba-editorial parent theme):
 *   --bomba-gold      (default #b38e36)
 *   --bomba-bg-dark   (default #0d1520)
 */

/* === Cover container — aspect-square (music-taste Rule 1) === */
.bomba-product-cover {
    display: block;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
    background: #f5f2e8; /* cream — buvo var(--bomba-bg-dark, #0d1520); 2026-05-26 darksidebar removal */
}

.bomba-product-cover-img,
.bomba-product-cover img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.bomba-product-card:hover .bomba-product-cover-img {
    transform: scale(1.02); /* music-taste max scale */
}

/* === Format badge (music-taste Rule 2) === */
.bomba-format-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 3;
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 4px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* Per-format spalvinis dizainas (vienas accent <80% saturation) */
.bomba-format-badge--cd {
    background: rgba(179, 142, 54, 0.12);
    color: var(--bomba-gold, #b38e36);
    border: 1px solid var(--bomba-gold, #b38e36);
}
.bomba-format-badge--lp,
.bomba-format-badge--vinilas {
    background: rgba(74, 45, 122, 0.18);
    color: #b39ddb;
    border: 1px solid #b39ddb;
}
.bomba-format-badge--kasete {
    background: rgba(106, 80, 10, 0.18);
    color: #f9d590;
    border: 1px solid #f9d590;
}
.bomba-format-badge--dvd,
.bomba-format-badge--bluray {
    background: rgba(122, 30, 30, 0.18);
    color: #ef9a9a;
    border: 1px solid #ef9a9a;
}
.bomba-format-badge--dezute {
    background: rgba(106, 54, 10, 0.18);
    color: #ffb74d;
    border: 1px solid #ffb74d;
}

/* === Availability state (music-taste Rule 4 — text+shape, ne tik spalva) === */
.bomba-stock-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
    font-size: 9px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 4px;
    letter-spacing: 0.04em;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.bomba-stock-badge--in {
    background: rgba(39, 174, 96, 0.12);
    color: #27ae60;
    border: 1px solid #27ae60;
}
.bomba-stock-badge--low {
    background: rgba(249, 168, 37, 0.12);
    color: #f9a825;
    border: 1px solid #f9a825;
}
.bomba-stock-badge--preorder {
    background: rgba(144, 202, 249, 0.12);
    color: #90caf9;
    border: 1px solid #90caf9;
}
.bomba-stock-badge--out {
    background: rgba(85, 85, 85, 0.15);
    color: #888;
    border: 1px solid #888;
}

/* === Discount badge — apatinė dešinė (nekolijuoti su format+stock viršuje) === */
.bomba-product-discount {
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 3;
}

/* === Product-flags pozicija (PS native flags) — apatinė kairė, kad neperdengtų music-taste badges === */
.bomba-product-card .product-flags,
.bomba-product-cover ~ .product-flags {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 3;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* === Title line-clamp-2 (music-taste Rule 3) === */
.bomba-product-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
}

/* === Out-of-stock dimming (music-taste Rule 4) === */
.bomba-product-card--out {
    opacity: 0.6;
    filter: grayscale(0.35);
    transition: opacity 0.25s ease, filter 0.25s ease;
}
.bomba-product-card--out:hover {
    opacity: 0.8;
    filter: grayscale(0.15);
}

/* === Cart button (disabled state) === */
.bomba-product-add--disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}


/* ============================================================
   V2 collision fix (2026-05-24) — product-flags vs format badge
   .product-flags (PS native IŠPARDAVIMAS) → bottom-left
   .bomba-format-badge → top-left (priority)
   .bomba-stock-badge → top-right
   .bomba-product-discount → bottom-right
   ============================================================ */
.bomba-product-card .bomba-product-cover .product-flags,
.bomba-product-cover > .product-flags,
.bomba-product-cover ~ .product-flags {
  position: absolute !important;
  top: auto !important;
  right: auto !important;
  bottom: 10px !important;
  left: 10px !important;
  z-index: 2 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Stilizuoti product-flag elementus — match music-taste premium look */
.bomba-product-card .product-flags .product-flag {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 4px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  margin-right: 4px;
}


/* === MUSIC-TASTE Photocard Hover (K-Pop vertical) — appended 2026-05-24 === */
/* ============================================================
   Photocard Hover — K-Pop vertical aesthetic (music-taste sec 6)
   Pridėta: 2026-05-24

   Aktyvuojama PS body class'ais:
     body.category-k-pop          (slug match)
     body.category-id-39          (root K-Pop category)
     body.category-id-parent-39   (sub-categories: BLACKPINK, BTS, ATEEZ, ...)

   Music-taste reikalavimai:
   - Tilt parallax (CSS-only, no JS state-per-frame per Rule 8)
   - Holographic sheen (rainbow tint shimmer ant cover)
   - 60fps — TIK transform + opacity
   - prefers-reduced-motion gracefully degrades
   - (hover: none) touch devices — disable tilt
   ============================================================ */

body.category-k-pop .bomba-product-card,
body.category-id-39 .bomba-product-card,
body.category-id-parent-39 .bomba-product-card {
  position: relative;
  transform-style: preserve-3d;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Holographic sheen overlay (linear-gradient rainbow shimmer) */
body.category-k-pop .bomba-product-card .bomba-product-cover::after,
body.category-id-39 .bomba-product-card .bomba-product-cover::after,
body.category-id-parent-39 .bomba-product-card .bomba-product-cover::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  background: linear-gradient(
    115deg,
    transparent 30%,
    rgba(255, 200, 230, 0.06) 45%,
    rgba(200, 220, 255, 0.10) 50%,
    rgba(220, 255, 230, 0.06) 55%,
    transparent 70%
  );
  opacity: 0;
  transform: translateX(-30%);
  transition: opacity 0.3s ease, transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  mix-blend-mode: screen;
}

/* Hover: shimmer sweeps across + subtle 3D tilt + tinted lift */
body.category-k-pop .bomba-product-card:hover .bomba-product-cover::after,
body.category-id-39 .bomba-product-card:hover .bomba-product-cover::after,
body.category-id-parent-39 .bomba-product-card:hover .bomba-product-cover::after {
  opacity: 1;
  transform: translateX(30%);
}

body.category-k-pop .bomba-product-card:hover,
body.category-id-39 .bomba-product-card:hover,
body.category-id-parent-39 .bomba-product-card:hover {
  transform: translateY(-6px) scale(1.015) perspective(800px) rotateX(1.5deg) !important;
  box-shadow: 0 14px 36px rgba(200, 169, 110, 0.18) !important;
}

/* Cover scale on hover (subtle, ne spinning) */
body.category-k-pop .bomba-product-card:hover .bomba-product-cover-img,
body.category-id-39 .bomba-product-card:hover .bomba-product-cover-img,
body.category-id-parent-39 .bomba-product-card:hover .bomba-product-cover-img {
  transform: scale(1.025);
}

/* Reduced motion respect (WCAG 2.3.3) */
@media (prefers-reduced-motion: reduce) {
  body.category-k-pop .bomba-product-card,
  body.category-id-39 .bomba-product-card,
  body.category-id-parent-39 .bomba-product-card {
    transition: none;
  }
  body.category-k-pop .bomba-product-card:hover,
  body.category-id-39 .bomba-product-card:hover,
  body.category-id-parent-39 .bomba-product-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(200, 169, 110, 0.12) !important;
  }
  body.category-k-pop .bomba-product-card .bomba-product-cover::after,
  body.category-id-39 .bomba-product-card .bomba-product-cover::after,
  body.category-id-parent-39 .bomba-product-card .bomba-product-cover::after {
    display: none;
  }
}

/* Touch devices: skip tilt (sticky hover anti-pattern) */
@media (hover: none) {
  body.category-k-pop .bomba-product-card:hover,
  body.category-id-39 .bomba-product-card:hover,
  body.category-id-parent-39 .bomba-product-card:hover {
    transform: none !important;
  }
  body.category-k-pop .bomba-product-card .bomba-product-cover::after,
  body.category-id-39 .bomba-product-card .bomba-product-cover::after,
  body.category-id-parent-39 .bomba-product-card .bomba-product-cover::after {
    display: none;
  }
}


/* ============================================================
   Rule 5 typography overrides (music-taste compliance)
   Pridėta: 2026-05-24

   Apple-style font unification (line 349 bomba-components-v2.css)
   reusable kill'ina Playfair + monospace globaliai. Music-taste Rule 5
   reikalauja:
   - Brand surfaces (product titles, h1-h3) → Playfair Display (warm grotesk)
   - Monospace surfaces (kainos cents, SKU, code/kbd/samp/pre) → Geist Mono
   - Body text gali likti Inter (default)

   Selector'iai specifiškesni nei `[style*="Playfair"]` rule line 350+,
   tad wins'ina dėl specificity + later cascade order.
   ============================================================ */

/* Brand surfaces — Playfair Display preserved */
.bomba-product-title,
.bomba-product-title a,
.bomba-product-card h2.bomba-product-title,
.bomba-product-card h3.bomba-product-title,
.bomba-product-card .bomba-product-current-price,
section.bomba-hero h1,
section.bomba-hero h2,
.bomba-heading-serif {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif !important;
}

/* Monospace — preserve technical contexts */
.bomba-cents,
.bomba-format-badge,
.bomba-stock-badge,
.bomba-product-card code,
.bomba-product-card kbd,
.bomba-product-card samp,
.bomba-product-card pre,
[class*="ean-"],
[class*="sku-"],
[data-ean],
[data-sku] {
  font-family: 'Geist Mono', 'JetBrains Mono', 'SF Mono', 'Menlo', 'Consolas', monospace !important;
}

/* General code blocks — also restore monospace */
.cms-content code,
.cms-content kbd,
.cms-content samp,
.cms-content pre {
  font-family: 'Geist Mono', 'JetBrains Mono', 'SF Mono', 'Menlo', 'Consolas', monospace !important;
}


/* === MUSIC-TASTE Mobile bottom-sheet + filter chips — appended 2026-05-24 === */
/* ============================================================
   Mobile bottom-sheet drawer + active filter chips (music-taste Rule 7)
   Pridėta: 2026-05-24
   Companion JS: assets/js/bomba-facet-sheet.js

   Veikia DESKTOPE (≥992px) — facets sidebar lieka kaip yra.
   Veikia MOBILE (<992px) — facets transformuoja į bottom-sheet drawer.
   ============================================================ */

/* === Mobile bottom-sheet === */
@media (max-width: 991px) {

  /* Default state — wrapper paslėptas */
  #search_filters_wrapper {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 85vh !important;
    background: var(--bg, #faf7f2) !important;
    z-index: 10000 !important;
    border-radius: 16px 16px 0 0 !important;
    box-shadow: 0 -8px 32px rgba(26, 23, 20, 0.2) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    transform: translateY(100%) !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    padding: 0 !important;
  }

  /* Open state */
  #search_filters_wrapper.bomba-sheet-open {
    transform: translateY(0) !important;
  }

  /* Override hidden-sm-down — kai sheet open, leiskim matomu */
  #search_filters_wrapper.bomba-sheet-open.hidden-sm-down {
    display: block !important;
  }

  /* Sheet header (close button + title) */
  .bomba-sheet-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-bottom: 1px solid var(--border, rgba(26, 23, 20, 0.1));
    background: var(--bg, #faf7f2);
    position: sticky;
    top: 0;
    z-index: 2;
  }

  .bomba-sheet-title {
    margin: 0;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text, #1a1714);
    letter-spacing: -0.01em;
  }

  .bomba-sheet-close {
    background: transparent;
    border: 1px solid var(--border, rgba(26, 23, 20, 0.2));
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text, #1a1714);
    transition: background 0.15s, transform 0.15s;
  }

  .bomba-sheet-close:hover {
    background: var(--gold, #b8901c);
    color: #fff;
    border-color: var(--gold, #b8901c);
  }

  .bomba-sheet-close:active {
    transform: scale(0.92);
  }

  /* Padding around facet content inside sheet */
  #search_filters_wrapper.bomba-sheet-open #search_filters {
    padding: 0 20px 80px !important;
  }
}

/* === Backdrop (visible only when sheet open) === */
.bomba-facet-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.bomba-facet-backdrop.visible {
  opacity: 1;
  visibility: visible;
}

/* === Active filter chips (visible BOTH mobile + desktop) === */
.bomba-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 0;
  margin: 0 0 8px;
  border-bottom: 1px solid var(--border, rgba(26, 23, 20, 0.08));
}

.bomba-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px 5px 12px;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  background: rgba(184, 144, 28, 0.12);
  color: var(--text, #1a1714);
  border: 1px solid rgba(184, 144, 28, 0.35);
  border-radius: 16px;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, transform 0.12s;
  font-family: var(--font-body);
}

.bomba-filter-chip:hover {
  background: rgba(184, 144, 28, 0.22);
  border-color: var(--gold, #b8901c);
  text-decoration: none;
  color: var(--text, #1a1714);
}

.bomba-filter-chip:active {
  transform: scale(0.96);
}

.bomba-filter-chip .bomba-chip-close {
  margin-left: 2px;
  opacity: 0.65;
  transition: opacity 0.15s;
}

.bomba-filter-chip:hover .bomba-chip-close {
  opacity: 1;
}

.bomba-chip-label {
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Clear-all chip variant */
.bomba-filter-chip--clear {
  background: rgba(192, 57, 43, 0.1);
  color: var(--red, #c0392b);
  border-color: rgba(192, 57, 43, 0.4);
}

.bomba-filter-chip--clear:hover {
  background: rgba(192, 57, 43, 0.2);
  border-color: var(--red, #c0392b);
  color: var(--red, #c0392b);
}

/* Reduce-motion respect */
@media (prefers-reduced-motion: reduce) {
  #search_filters_wrapper {
    transition: none !important;
  }
  .bomba-facet-backdrop {
    transition: opacity 0.1s ease, visibility 0.1s ease;
    backdrop-filter: none;
  }
  .bomba-filter-chip {
    transition: none;
  }
}

/* Desktop sticky filter button (FAB) — P3 from audit */
@media (max-width: 991px) {
  .js-search-toggler {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    z-index: 100 !important;
    background: var(--gold, #b8901c) !important;
    color: #1a1714 !important;
    border: none !important;
    border-radius: 24px !important;
    padding: 12px 22px !important;
    font-family: var(--font-body) !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    box-shadow: 0 6px 20px rgba(26, 23, 20, 0.25) !important;
    transition: transform 0.15s, box-shadow 0.15s !important;
  }

  .js-search-toggler:hover,
  .js-search-toggler:focus {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 28px rgba(26, 23, 20, 0.3) !important;
    background: var(--gold-dark, #a07d18) !important;
    color: #fff !important;
  }

  /* Hide FAB when sheet is open */
  body:has(#search_filters_wrapper.bomba-sheet-open) .js-search-toggler {
    opacity: 0;
    pointer-events: none;
  }
}


/* ═══ APPENDED: product-page.css (PDP) — ${TS} ═══ */
/**
 * Bomba Editorial — Product Page CSS (V2, 2026-05-24)
 * Music-taste P0 #5 — inline styles extracted from product.tpl.
 *
 * Deploy: themes/bomba-editorial/assets/css/product-page.css
 * Load via: config/theme.yml → priority 1175 (after product-card.css 1150, before overrides 1200)
 *
 * Companion template: themes/bomba-editorial/templates/catalog/product.tpl (V2)
 * Backup before deploy: cp ... .bak_$(date +%Y%m%d_%H%M%S)
 */

/* === Layout === */
.bomba-pdp {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

.bomba-pdp__breadcrumb {
    padding: 18px 0;
    font-size: 13px;
    color: var(--muted);
}
.bomba-pdp__breadcrumb a {
    color: var(--muted);
    text-decoration: none;
    transition: color 0.15s;
}
.bomba-pdp__breadcrumb a:hover { color: var(--text); }
.bomba-pdp__breadcrumb-sep { margin: 0 8px; color: var(--muted2); }
.bomba-pdp__breadcrumb-current { color: var(--text); }

.bomba-pdp__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin-top: 20px;
}
@media (max-width: 768px) {
    .bomba-pdp__grid { grid-template-columns: 1fr; gap: 24px; }
}

/* === Cover (music-taste Rule 1 — aspect-square + object-contain) === */
.bomba-pdp__cover-wrap { position: relative; }

.bomba-pdp__cover {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    position: relative;
}
.bomba-pdp__cover picture,
.bomba-pdp__cover img {
    width: 100%;
    height: 100%;
    display: block;
}
.bomba-pdp__cover img {
    object-fit: contain;  /* P0 #2 — was cover, never crop the art */
}

/* === Badges (positioned on cover wrap so they sit outside thumb strip) === */
.bomba-pdp__format-badge {
    top: 14px;
    left: 14px;
    font-size: 11px;  /* slightly larger than card (10px) — PDP is more deliberate */
    padding: 4px 10px;
}
.bomba-pdp__stock-badge {
    top: 14px;
    right: 14px;
    font-size: 10px;
    padding: 3px 8px;
}

/* === Thumbnails === */
.bomba-pdp__thumbs {
    display: flex;
    gap: 8px;
    margin-top: 12px;
    flex-wrap: wrap;
}
.bomba-pdp__thumb {
    flex: 0 0 60px;
    height: 60px;
    border: 1px solid var(--border);
    border-radius: 6px;
    overflow: hidden;
    background: var(--bg2);
    transition: border-color 0.15s, transform 0.12s;
}
.bomba-pdp__thumb:hover { border-color: var(--gold); }
.bomba-pdp__thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;  /* consistent with hero */
}

/* === Detail column === */
.bomba-pdp__detail { min-width: 0; }

.bomba-pdp__artist {
    font-family: var(--font-display);
    font-style: italic;
    font-size: 1.125rem;
    line-height: 1.3;
    color: var(--text2);
    margin-bottom: 6px;
    letter-spacing: 0.01em;
}

.bomba-pdp__title {
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    font-weight: 800;
    line-height: 1.05;
    margin: 0 0 18px;
    color: var(--text);
    letter-spacing: -0.015em;
}

/* === Info table === */
.bomba-pdp__info-table {
    border-top: 1px solid var(--border);
    padding-top: 16px;
    margin-bottom: 24px;
}
.bomba-pdp__info-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid var(--border);
    font-size: 13px;
    gap: 16px;
}
.bomba-pdp__info-row:last-child { border-bottom: none; }
.bomba-pdp__info-row-label { color: var(--muted); flex-shrink: 0; }
.bomba-pdp__info-row-value { color: var(--text); font-weight: 500; text-align: right; }
.bomba-pdp__info-row-value--mono { font-family: var(--font-mono); font-feature-settings: 'tnum' 1; }

/* === Price === */
.bomba-pdp__price-box {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 14px;
}
.bomba-pdp__price-old {
    text-decoration: line-through;
    color: var(--muted);
    font-size: 0.875rem;
    margin-bottom: 4px;
    font-family: var(--font-mono);
}
.bomba-pdp__price-main {
    font-family: var(--font-mono);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.2;
    font-feature-settings: 'tnum' 1;
}
.bomba-pdp__price-main .bomba-cents {
    font-size: 0.65em;
    vertical-align: super;
    line-height: 0;
}

/* === Add-to-cart button === */
.bomba-pdp__buy-form .product-add-to-cart {
    display: flex;
    gap: 12px;
    align-items: stretch;
    margin-bottom: 16px;
}
.bomba-pdp__add-to-cart {
    width: 50%;
    background: var(--gold);
    color: #0a0a0a;
    border: none;
    border-radius: 10px;
    padding: 0 28px;
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 48px;
    transition: transform 0.12s, box-shadow 0.15s, background 0.15s;
}
.bomba-pdp__add-to-cart:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(184, 144, 28, 0.3);
}
.bomba-pdp__add-to-cart:active {
    transform: translateY(0) scale(0.98);
}
.bomba-pdp__add-to-cart[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* === Delivery info strip === */
.bomba-pdp__delivery {
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 13px;
    color: var(--text2);
}
@media (max-width: 768px) {
    .bomba-pdp__delivery { flex-direction: column; align-items: flex-start; gap: 6px; }
}
.bomba-pdp__delivery-eta {
    display: flex;
    align-items: center;
    gap: 8px;
}
.bomba-pdp__delivery-icon { color: var(--gold); flex: 0 0 auto; }
.bomba-pdp__delivery-msg { color: var(--text2); font-size: 13px; }

/* === Descriptions === */
.bomba-pdp__short-desc {
    margin-top: 24px;
    color: var(--text2);
    line-height: 1.7;
    max-width: 65ch;  /* music-taste Rule 5 — readable measure */
}
.bomba-pdp__full-desc {
    margin-top: 48px;
    padding-top: 32px;
    border-top: 1px solid var(--border);
}
.bomba-pdp__full-desc-title {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 16px;
    color: var(--text);
    letter-spacing: -0.01em;
}
.bomba-pdp__full-desc-body {
    color: var(--text2);
    line-height: 1.7;
    max-width: 65ch;
}

.bomba-pdp__footer-hooks { margin-top: 48px; }

/* === Sticky Buy Bar (mobile) — Music Arsenal §6 === */
.bomba-pdp__sticky-bar {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 50;
    background: var(--bg);
    border-top: 1px solid var(--border);
    box-shadow: 0 -4px 18px rgba(0, 0, 0, 0.08);
    padding: 10px 16px;
    align-items: center;
    gap: 12px;
    transform: translateY(100%);
    transition: transform 0.2s ease;
}
.bomba-pdp__sticky-bar[aria-hidden="false"] {
    transform: translateY(0);
}
.bomba-pdp__sticky-bar-info { flex: 1; min-width: 0; }
.bomba-pdp__sticky-bar-price {
    font-family: var(--font-mono);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.1;
    font-feature-settings: 'tnum' 1;
}
.bomba-pdp__sticky-bar-stock {
    font-size: 0.72rem;
    color: var(--muted);
    margin-top: 2px;
    letter-spacing: 0.02em;
}
.bomba-pdp__sticky-bar-cta {
    flex: 0 0 auto;
    height: 42px;
    padding: 0 22px;
    background: var(--gold);
    color: #0a0a0a;
    border: none;
    border-radius: 8px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    cursor: pointer;
    transition: transform 0.12s;
}
.bomba-pdp__sticky-bar-cta:active { transform: scale(0.96); }

@media (max-width: 768px) {
    .bomba-pdp__sticky-bar { display: flex; }
    body.has-bomba-pdp-sticky { padding-bottom: 72px; }
}

/* === Reduced motion (WCAG 2.3.3) === */
@media (prefers-reduced-motion: reduce) {
    .bomba-pdp__add-to-cart,
    .bomba-pdp__sticky-bar,
    .bomba-pdp__thumb { transition: none; }
}

/* === Print stylesheet — neutralize sticky bar === */
@media print {
    .bomba-pdp__sticky-bar,
    .bomba-pdp__footer-hooks { display: none !important; }
    body.has-bomba-pdp-sticky { padding-bottom: 0 !important; }
}


/* ═══ APPENDED: listing-grid.css ═══ */
/**
 * Bomba Editorial — Listing Grid + Crate-Dig Bin (V1, 2026-05-24)
 *
 * Music-taste fixes:
 *   P0 #1 — Custom CSS Grid layout (replaces Bootstrap "row" generic grid)
 *   P0 #2 — Crate-Dig Bin horizontal scroller (Music Arsenal §6 — "flipping through records")
 *
 * Deploy: themes/bomba-editorial/assets/css/listing-grid.css
 * Load via: config/theme.yml → priority 1160 (after card 1150, before page 1175)
 *
 * Usage:
 *   Default grid:     <div class="bomba-grid">{products}</div>
 *   Crate-Dig Bin:    <div class="bomba-crate-row"><div class="bomba-crate-row__track">{products}</div></div>
 *   Featured 2-up:    <div class="bomba-grid bomba-grid--featured">{products}</div>
 */

/* === Bomba Grid — replaces Bootstrap "row" for product listings === */
.bomba-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 24px 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}
@media (min-width: 768px) {
    .bomba-grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 32px 20px; }
}
@media (min-width: 1200px) {
    .bomba-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 36px 24px; }
}
.bomba-grid > * { min-width: 0; }  /* prevent overflow */

/* Featured 2-up variant for hero releases */
.bomba-grid--featured {
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 28px 24px;
}

/* Density 7 variant for muzikosirasai-style large catalogues */
.bomba-grid--dense {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 18px 12px;
}

/* === Crate-Dig Bin — horizontal scroller (Music Arsenal §6) === */
.bomba-crate-row {
    position: relative;
    margin: 32px 0 40px;
    overflow: hidden;  /* contain scroll bar */
}

.bomba-crate-row__head {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 18px;
    padding: 0 20px;
    gap: 16px;
    flex-wrap: wrap;
}
.bomba-crate-row__title {
    font-family: var(--font-display);
    font-size: clamp(1.25rem, 2.2vw, 1.75rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    color: var(--text);
    margin: 0;
    line-height: 1.1;
}
.bomba-crate-row__title em {
    font-style: italic;
    color: var(--gold);
    font-weight: 600;
}
.bomba-crate-row__more {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 700;
    text-decoration: none;
    flex-shrink: 0;
    transition: color 0.15s, transform 0.12s;
}
.bomba-crate-row__more:hover { color: var(--gold2); transform: translateX(2px); }

.bomba-crate-row__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(180px, 220px);
    gap: 16px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 20px;
    padding: 4px 20px 24px;  /* bottom padding for hover shadow + scroll bar */
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: var(--gold) transparent;
}
@media (min-width: 768px) {
    .bomba-crate-row__track { grid-auto-columns: minmax(220px, 260px); gap: 20px; padding-left: 32px; padding-right: 32px; scroll-padding-left: 32px; }
}
@media (min-width: 1200px) {
    .bomba-crate-row__track { padding-left: max(20px, calc((100% - 1280px) / 2 + 20px)); padding-right: max(20px, calc((100% - 1280px) / 2 + 20px)); scroll-padding-left: max(20px, calc((100% - 1280px) / 2 + 20px)); }
}

.bomba-crate-row__track > * { scroll-snap-align: start; min-width: 0; }

/* Custom WebKit scrollbar */
.bomba-crate-row__track::-webkit-scrollbar { height: 6px; }
.bomba-crate-row__track::-webkit-scrollbar-track { background: transparent; }
.bomba-crate-row__track::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 3px; opacity: 0.5; }
.bomba-crate-row__track::-webkit-scrollbar-thumb:hover { background: var(--gold2); }

/* Edge fade — visual cue that more is offscreen */
.bomba-crate-row::before,
.bomba-crate-row::after {
    content: '';
    position: absolute;
    top: 60px;  /* below head */
    bottom: 24px;
    width: 24px;
    pointer-events: none;
    z-index: 2;
}
.bomba-crate-row::before { left: 0; background: linear-gradient(to right, var(--bg), transparent); }
.bomba-crate-row::after { right: 0; background: linear-gradient(to left, var(--bg), transparent); }

/* === Reduced motion === */
@media (prefers-reduced-motion: reduce) {
    .bomba-crate-row__more { transition: none; }
    .bomba-crate-row__track { scroll-behavior: auto; }
}

/* === Mobile: ensure crate-row works smoothly === */
@media (max-width: 575px) {
    .bomba-crate-row__head { padding: 0 16px; }
    .bomba-crate-row__track { padding-left: 16px; padding-right: 16px; scroll-padding-left: 16px; gap: 12px; }
}


/* ═══ APPENDED: homepage.css ═══ */
/**
 * Bomba Editorial — Homepage CSS (V1, 2026-05-24)
 * Music-taste P0 #3 — inline styles extracted from index.tpl.
 *
 * Deploy: themes/bomba-editorial/assets/css/homepage.css
 * Load via: config/theme.yml → priority 1185 (after listing-grid 1160, after page 1175)
 *
 * Companion template: themes/bomba-editorial/templates/index.tpl (V2)
 */

/* === SR-only H1 (SEO/a11y) === */
.bomba-sr-h1 {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* === Hero slider container === */
.bomba-hero-slider { position: relative; }

/* === Genre Grid (homepage) === */
.bomba-genre-grid {
    max-width: 1280px;
    margin: 40px auto 60px;
    padding: 0 20px;
}
.bomba-genre-grid__heading {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 1.875rem);
    font-weight: 800;
    text-align: center;
    margin: 0 0 36px;
    letter-spacing: -0.015em;
    color: var(--text);
}
.bomba-genre-grid__heading em {
    font-style: italic;
    color: var(--gold);
    font-weight: 600;
}
.bomba-genre-grid__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

/* === Articles Block === */
.bomba-home-articles {
    max-width: 1280px;
    margin: 60px auto 40px;
    padding: 0 20px;
}
.bomba-home-articles__head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 28px;
    flex-wrap: wrap;
    gap: 12px;
}
.bomba-home-articles__title {
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 1.875rem);
    font-weight: 800;
    margin: 0;
    letter-spacing: -0.015em;
    color: var(--text);
}
.bomba-home-articles__title em {
    font-style: italic;
    color: var(--gold);
    font-weight: 600;
}
.bomba-home-articles__more {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    letter-spacing: 0.18em;
    color: var(--gold);
    font-weight: 700;
    text-decoration: none;
    transition: color 0.15s, transform 0.12s;
}
.bomba-home-articles__more:hover { color: var(--gold2); transform: translateX(2px); }

.bomba-home-articles__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 20px;
}

.bomba-article-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.15s;
}
.bomba-article-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    border-color: var(--gold);
    color: inherit;
    text-decoration: none;
}
.bomba-article-card__media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--bg);
}
.bomba-article-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;  /* article images can crop — context, not catalogue */
    display: block;
}
.bomba-article-card__body {
    padding: 18px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.bomba-article-card__meta {
    font-size: 0.7rem;
    color: var(--muted);
    font-family: var(--font-mono);
    letter-spacing: 0.05em;
    margin-bottom: 8px;
    font-feature-settings: 'tnum' 1;
}
.bomba-article-card__title {
    font-family: var(--font-display);
    margin: 0 0 8px;
    font-size: 0.95rem;
    line-height: 1.35;
    color: var(--text);
    font-weight: 700;
    letter-spacing: -0.005em;
}
.bomba-article-card__excerpt {
    margin: 0;
    color: var(--muted);
    font-size: 0.78rem;
    line-height: 1.55;
    flex: 1;
}

/* === Reduced motion === */
@media (prefers-reduced-motion: reduce) {
    .bomba-article-card,
    .bomba-home-articles__more { transition: none; }
    .bomba-article-card:hover { transform: none; }
}

/* === Mobile === */
@media (max-width: 575px) {
    .bomba-genre-grid { margin: 24px auto 40px; padding: 0 16px; }
    .bomba-genre-grid__heading { margin-bottom: 24px; }
    .bomba-home-articles { margin: 40px auto 32px; padding: 0 16px; }
    .bomba-home-articles__head { margin-bottom: 20px; }
}

/* === Homepage hooks container === */
.bomba-home-hooks {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}
.bomba-home-hooks > section { margin-bottom: 48px; }

/* === Crate-Dig Bin activation for PS hooks (OPTIONAL — opt-in per-hook) ===
   PS hooks (ps_featuredproducts, ps_newproducts, ps_specials, ps_bestsellers) render:
     <section class="featured-products clearfix">
       <h2>Featured products</h2>
       <div class="products owl-row|row">...products...</div>
     </section>

   To turn ONE hook into a crate-dig bin, add CSS class `bomba-crate-row` to
   the hook's wrapper via PS module override OR via JS:
     document.querySelectorAll('.featured-products, .newproducts, .specials, .bestsellers')
       .forEach(el => el.classList.add('bomba-crate-row'));

   Once class is applied, this CSS converts .products row to horizontal scroll:
*/
.bomba-home-hooks .bomba-crate-row { position: relative; overflow: hidden; }
.bomba-home-hooks .bomba-crate-row > h1,
.bomba-home-hooks .bomba-crate-row > h2,
.bomba-home-hooks .bomba-crate-row > .products-section-title {
    font-family: var(--font-display);
    font-size: clamp(1.25rem, 2.2vw, 1.75rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    color: var(--text);
    margin: 0 0 18px;
    text-transform: none;
    text-align: left;
}
.bomba-home-hooks .bomba-crate-row > .products {
    display: grid !important;
    grid-auto-flow: column;
    grid-auto-columns: minmax(180px, 220px);
    gap: 16px;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    padding: 4px 0 24px;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}
@media (min-width: 768px) {
    .bomba-home-hooks .bomba-crate-row > .products {
        grid-auto-columns: minmax(220px, 260px);
        gap: 20px;
    }
}
.bomba-home-hooks .bomba-crate-row > .products > * {
    scroll-snap-align: start;
    min-width: 0;
    width: auto !important;  /* override Bootstrap col-* */
    max-width: none !important;
    flex: 0 0 auto !important;
}
.bomba-home-hooks .bomba-crate-row > .products::-webkit-scrollbar { height: 6px; }
.bomba-home-hooks .bomba-crate-row > .products::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 3px; }


/* ═══ APPENDED: category-header.css ═══ */
/**
 * Bomba Editorial — Category Header CSS (V1, 2026-05-24)
 * Music-taste P0 #3 — inline <style> block extracted from category-header.tpl.
 *
 * Deploy: themes/bomba-editorial/assets/css/category-header.css
 * Load via: config/theme.yml → priority 1185
 */

#js-product-list-header { margin-bottom: 12px; }

#js-product-list-header .block-category.is-bare { min-height: 0; }
#js-product-list-header .block-category.is-bare h1 { margin-bottom: 0; }

/* === Kategorijos placeholder banner (when no real cover) === */
#js-product-list-header .bomba-cat-placeholder {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    margin-top: 16px;
    aspect-ratio: 4 / 1;
    background: linear-gradient(135deg, var(--gold, #b8901c) 0%, #d4a93a 35%, #8a6d18 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #1a1714;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.15);
}
#js-product-list-header .bomba-cat-placeholder::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255, 255, 255, 0.18) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(0, 0, 0, 0.12) 0%, transparent 50%);
    pointer-events: none;
}
#js-product-list-header .bomba-cat-placeholder .bomba-cat-text {
    position: relative;
    z-index: 1;
    padding: 24px;
}
#js-product-list-header .bomba-cat-placeholder .bomba-cat-title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
}
#js-product-list-header .bomba-cat-placeholder .bomba-cat-sub {
    font-family: var(--font-mono);
    font-size: clamp(0.78rem, 1.4vw, 1rem);
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 14px 0 0;
    opacity: 0.85;
}

@media (max-width: 575px) {
    #js-product-list-header .bomba-cat-placeholder { aspect-ratio: 3 / 1; }
    #js-product-list-header .bomba-cat-placeholder .bomba-cat-text { padding: 14px; }
}

html.dark #js-product-list-header .bomba-cat-placeholder {
    background: linear-gradient(135deg, var(--gold, #c8a96e) 0%, #d4b67c 35%, #7a5d18 100%);
    color: #1a1714;
}


/* ═══ APPENDED: subcategory-nav.css ═══ */
/**
 * Bomba Editorial — Subcategory Pill Nav CSS (V1, 2026-05-24)
 * Music-taste P0 #3 — inline <style> block extracted from subcategories.tpl.
 *
 * Deploy: themes/bomba-editorial/assets/css/subcategory-nav.css
 * Load via: config/theme.yml → priority 1185
 *
 * Preserves: smooth collapse/expand, mask fade gradient, reduced-motion respect.
 */

#subcategories.bomba-subcats {
    margin: 2.4rem 0;
    text-align: center;
    border-top: 0;
}

#subcategories .subcategory-heading {
    font-family: var(--font-display);
    font-size: 1.9rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text);
    margin: 0;
}

#subcategories .bomba-subcats__list {
    list-style: none;
    margin: 1.6rem 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    max-height: 100rem;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
#subcategories .bomba-subcats__list li {
    margin: 0;
    padding: 0;
    width: auto;
    min-width: 0;
    flex: 0 0 auto;
    text-align: left;
}

#subcategories .bomba-subcats__pill {
    display: inline-block;
    padding: 0.46rem 1.05rem;
    border-radius: 999px;
    background: var(--bg3);
    color: var(--text);
    border: 1px solid rgba(26, 23, 20, 0.2);
    font-family: var(--font-body);
    font-size: 0.8rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
}
#subcategories .bomba-subcats__pill:hover,
#subcategories .bomba-subcats__pill:focus-visible {
    background: var(--gold);
    color: var(--text);
    border-color: var(--gold);
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
    text-decoration: none;
}

@media (max-width: 575px) {
    #subcategories .subcategory-heading { font-size: 1.45rem; }
    #subcategories .bomba-subcats__pill { font-size: 0.74rem; padding: 0.4rem 0.9rem; }
}

/* === Collapse / expand with fade-mask === */
#subcategories .bomba-subcats__cb {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
#subcategories.bomba-subcats--collapsible .bomba-subcats__cb:not(:checked) ~ .bomba-subcats__list {
    max-height: 7rem;
    mask-image: linear-gradient(180deg, #000 60%, transparent 100%);
    -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent 100%);
}
@media (max-width: 575px) {
    #subcategories.bomba-subcats--collapsible .bomba-subcats__cb:not(:checked) ~ .bomba-subcats__list {
        max-height: 9rem;
    }
}

#subcategories .bomba-subcats__toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    margin: 1.2rem auto 0;
    padding: 0.5rem 1.15rem;
    border-radius: 999px;
    background: transparent;
    color: var(--text);
    border: 1px dashed rgba(26, 23, 20, 0.4);
    font-family: var(--font-body);
    font-size: 0.78rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1.2;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, border-style 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
}
#subcategories .bomba-subcats__toggle:hover {
    background: var(--gold);
    color: var(--text);
    border-color: var(--gold);
    border-style: solid;
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
}

#subcategories .bomba-subcats__cb:focus-visible ~ .bomba-subcats__toggle {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
}

#subcategories .bomba-subcats__toggle-less { display: none; }
#subcategories .bomba-subcats__cb:checked ~ .bomba-subcats__toggle .bomba-subcats__toggle-more { display: none; }
#subcategories .bomba-subcats__cb:checked ~ .bomba-subcats__toggle .bomba-subcats__toggle-less { display: inline; }

#subcategories .bomba-subcats__toggle-icon {
    display: inline-block;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
#subcategories .bomba-subcats__cb:checked ~ .bomba-subcats__toggle .bomba-subcats__toggle-icon {
    transform: rotate(180deg);
}

/* === Reduced motion === */
@media (prefers-reduced-motion: reduce) {
    #subcategories .bomba-subcats__list,
    #subcategories .bomba-subcats__toggle-icon,
    #subcategories .bomba-subcats__toggle,
    #subcategories .bomba-subcats__pill { transition: none; }
}

/* ============================================
   Checkout Step 1 — "Prisijungti" tab polish
   (added 2026-05-27 — increase login tab visibility)
   ============================================ */
.checkout-step .nav-inline {
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--border, #e8e8ed);
    padding-bottom: 0.5rem;
}
.checkout-step .nav-inline .nav-item {
    display: inline-block;
    margin-right: 0.5rem;
}
.checkout-step .nav-inline .nav-link {
    display: inline-block;
    padding: 0.6rem 1.1rem;
    font-family: var(--font-body, 'Inter', sans-serif);
    font-size: 0.95rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--text2, #515154);
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 8px;
    transition: all 0.18s ease;
    cursor: pointer;
}
.checkout-step .nav-inline .nav-link:hover {
    color: var(--gold, #b8901c);
    background: rgba(184, 144, 28, 0.06);
    border-color: rgba(184, 144, 28, 0.25);
}
.checkout-step .nav-inline .nav-link.active,
.checkout-step .nav-inline .nav-link:focus-visible {
    color: var(--text, #1a1714);
    background: var(--gold-soft, rgba(184, 144, 28, 0.12));
    border-color: var(--gold, #b8901c);
    outline: none;
}
.checkout-step .nav-inline .nav-separator,
.checkout-step .nav-inline > span.hidden-sm-down {
    display: inline-block;
    color: var(--border, #d2d2d7);
    font-weight: 300;
    margin: 0 0.4rem;
    user-select: none;
}

/* Highlight Prisijungti CTA for existing customers */
.checkout-step .nav-inline a.nav-link[href="#checkout-login-form"]::before {
    content: "→ ";
    color: var(--gold, #b8901c);
    font-weight: 700;
    margin-right: 0.2rem;
}

/* Better hierarchy when login form revealed */
#checkout-login-form {
    max-width: 480px;
    padding: 1.5rem 0 0.5rem;
}
#checkout-login-form .form-group label {
    font-weight: 600;
    color: var(--text, #1a1714);
}

/* ============================================
   Post-purchase signup CTA (account-transformation-form)
   Apple HIG redesign — 2026-05-27
   Converts guest customers to registered with 1-click signup
   ============================================ */
.bomba-signup-cta {
    max-width: 640px;
    margin: 2rem auto;
    padding: 2.5rem 2rem;
    background: var(--bg, #f7f5f0);
    border: 1px solid var(--gold, #b8901c);
    border-radius: 16px;
    box-shadow: 0 4px 24px rgba(184, 144, 28, 0.08), 0 1px 4px rgba(0, 0, 0, 0.04);
    text-align: center;
    font-family: var(--font-body, 'Inter', sans-serif);
}
.bomba-signup-cta__icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(184, 144, 28, 0.12);
    color: var(--gold, #b8901c);
    border-radius: 50%;
}
.bomba-signup-cta__title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 0.5rem;
    color: var(--text, #1a1714);
    letter-spacing: -0.015em;
}
.bomba-signup-cta__lead {
    font-size: 1rem;
    line-height: 1.5;
    color: var(--text2, #515154);
    margin: 0 0 1.5rem;
}
.bomba-signup-cta__benefits {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem;
    text-align: left;
    display: inline-block;
}
.bomba-signup-cta__benefits li {
    font-size: 0.92rem;
    line-height: 1.5;
    color: var(--text, #1a1714);
    padding: 0.3rem 0;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.bomba-signup-cta__check {
    color: var(--gold, #b8901c);
    font-weight: 700;
    flex-shrink: 0;
}
.bomba-signup-cta__form {
    margin: 1.5rem 0 0.5rem;
    text-align: left;
}
.bomba-signup-cta__field {
    margin-bottom: 1rem;
}
.bomba-signup-cta__label {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text, #1a1714);
    margin-bottom: 0.4rem;
    letter-spacing: 0.01em;
}
.bomba-signup-cta__input {
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    font-family: inherit;
    border: 1px solid var(--border, #d2d2d7);
    border-radius: 10px;
    background: #ffffff;
    color: var(--text, #1a1714);
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
    letter-spacing: 0.01em;
    box-sizing: border-box;
}
.bomba-signup-cta__input:focus {
    outline: none;
    border-color: var(--gold, #b8901c);
    box-shadow: 0 0 0 4px rgba(184, 144, 28, 0.12);
}
.bomba-signup-cta__hint {
    font-size: 0.78rem;
    color: var(--muted, #86868b);
    margin: 0.4rem 0 0;
    line-height: 1.4;
}
.bomba-signup-cta__submit {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    padding: 0.9rem 1.5rem;
    font-size: 0.95rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #ffffff;
    background: var(--gold, #b8901c);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.18s ease, transform 0.12s ease, box-shadow 0.18s ease;
    margin-top: 1rem;
}
.bomba-signup-cta__submit:hover {
    background: #a07c18;
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(184, 144, 28, 0.25);
}
.bomba-signup-cta__submit:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(184, 144, 28, 0.2);
}
.bomba-signup-cta__footer {
    margin: 1.2rem 0 0;
    color: var(--muted, #86868b);
}
.bomba-signup-cta__footer a {
    color: var(--gold, #b8901c);
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Dark mode */
html.dark .bomba-signup-cta {
    background: var(--bomba-bg-alt, #1a1a1a);
    border-color: var(--gold, #b8901c);
}
html.dark .bomba-signup-cta__input {
    background: var(--bomba-bg, #0f0f0f);
    border-color: var(--bomba-border, #2a2a2a);
    color: var(--bomba-text, #f5f1ea);
}

/* Mobile */
@media (max-width: 575px) {
    .bomba-signup-cta {
        padding: 1.75rem 1.25rem;
        margin: 1.25rem 0;
        border-radius: 12px;
    }
    .bomba-signup-cta__title {
        font-size: 1.25rem;
    }
    .bomba-signup-cta__lead {
        font-size: 0.92rem;
    }
}
/* bomba Google Sign-In — frontend button styling */
.bomba-gsignin {
    margin: 1.5rem 0;
    text-align: center;
    font-family: var(--font-body, 'Inter', sans-serif);
}
.bomba-gsignin__separator {
    display: flex;
    align-items: center;
    color: var(--muted, #86868b);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 1rem 0;
}
.bomba-gsignin__separator::before,
.bomba-gsignin__separator::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--border, #d2d2d7);
}
.bomba-gsignin__separator span {
    padding: 0 1rem;
}
.bomba-gsignin__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    width: 100%;
    max-width: 360px;
    padding: 0.7rem 1.2rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #1f1f1f;
    background: #ffffff;
    border: 1px solid #dadce0;
    border-radius: 10px;
    text-decoration: none;
    transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
    letter-spacing: 0.01em;
    cursor: pointer;
}
.bomba-gsignin__btn:hover {
    background: #f8f9fa;
    border-color: var(--gold, #b8901c);
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transform: translateY(-1px);
    color: #1f1f1f;
    text-decoration: none;
}
.bomba-gsignin__btn:active {
    transform: translateY(0);
}
.bomba-gsignin__logo {
    flex-shrink: 0;
}

/* Dark mode */
html.dark .bomba-gsignin__btn {
    background: #ffffff;
    color: #1f1f1f;
}
html.dark .bomba-gsignin__btn:hover {
    background: #f8f9fa;
}
html.dark .bomba-gsignin__separator {
    color: var(--bomba-text-soft, #c8c0b4);
}
html.dark .bomba-gsignin__separator::before,
html.dark .bomba-gsignin__separator::after {
    background: var(--bomba-border, #2a2a2a);
}

/* Mobile */
@media (max-width: 480px) {
    .bomba-gsignin__btn {
        max-width: 100%;
        font-size: 0.9rem;
    }
}

/* ============================================================
   SALE / On-Sale badge overlay (2026-05-27)
   - Override product-flags.tpl: "Išpardavimas" → "SALE"
   - Position: absolute top-right ant cover'io
   - WCAG: AAA contrast (white on #dc2626 = 5.94:1)
   ============================================================ */
.bomba-pdp__cover-wrap { position: relative; }
.bomba-pdp__cover-wrap .product-flags {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    pointer-events: none;
}
.bomba-pdp__cover-wrap .product-flag {
    background: #dc2626;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 6px 12px;
    border-radius: 4px;
    text-transform: uppercase;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    line-height: 1;
    display: inline-block;
}
.bomba-pdp__cover-wrap .product-flag.new {
    background: var(--gold, #b8901c);
    color: #0a0a0a;
}
.bomba-pdp__cover-wrap .product-flag.online-only {
    background: #1f2937;
}
.bomba-pdp__cover-wrap .product-flag.out_of_stock {
    background: #6b7280;
}
/* Card miniatures (kateg + paieška + recommendations) — taikinys ten taip pat */
.bomba-product-card,
.product-miniature,
.js-product-miniature { position: relative; }
.bomba-product-card .product-flags,
.product-miniature .product-flags,
.js-product-miniature .product-flags {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 5;
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    pointer-events: none;
}
.bomba-product-card .product-flag,
.product-miniature .product-flag,
.js-product-miniature .product-flag {
    background: #dc2626;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 4px 10px;
    border-radius: 3px;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    line-height: 1;
    display: inline-block;
}
.bomba-product-card .product-flag.new,
.product-miniature .product-flag.new,
.js-product-miniature .product-flag.new {
    background: var(--gold, #b8901c);
    color: #0a0a0a;
}
.bomba-product-card .product-flag.out_of_stock,
.product-miniature .product-flag.out_of_stock,
.js-product-miniature .product-flag.out_of_stock {
    background: #6b7280;
}
@media (max-width: 575px) {
    .bomba-pdp__cover-wrap .product-flags { top: 8px; right: 8px; }
    .bomba-pdp__cover-wrap .product-flag { font-size: 11px; padding: 5px 10px; }
    .bomba-product-card .product-flags,
    .product-miniature .product-flags,
    .js-product-miniature .product-flags { top: 6px; right: 6px; }
    .bomba-product-card .product-flag,
    .product-miniature .product-flag,
    .js-product-miniature .product-flag { font-size: 10px; padding: 3px 8px; }
}

/* === 2026-05-28: nuimti dvigubus SALE badges produktų kortelėse === */
/* Nuolaida jau rodoma per top-corner "−15%" + crossout kaina, */
/* o apatiniai SALE badges kuria vizualinį triukšmą. NEW lieka. */
.bomba-product-card .product-flags .product-flag.on-sale,
.bomba-product-card .product-flags .product-flag.discount {
  display: none !important;
}

/* === 2026-05-28: Fix CSS cascade conflict on .bomba-product-discount === */
/* bomba-components-v2.css set top:10px+left:10px; bomba-overrides.css addded bottom+right */
/* Without top:auto/left:auto, all 4 sides stretch = FULL OVERLAY. */
.bomba-product-card .bomba-product-discount,
a.bomba-product-cover .bomba-product-discount {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    padding: 4px 10px !important;
    background: var(--red, #c0392b) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    border-radius: 4px !important;
    z-index: 5 !important;
    line-height: 1.3 !important;
}

/* === 2026-05-28: VISI action badges → TOP RIGHT, apačioje nieko === */
/* Atstatyti SALE badges (anksčiau buvo display:none) */
.bomba-product-card .product-flags .product-flag.on-sale,
.bomba-product-card .product-flags .product-flag.discount {
  display: inline-flex !important;
}

/* -15% badge → TOP RIGHT */
.bomba-product-card .bomba-product-discount,
a.bomba-product-cover .bomba-product-discount {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    padding: 4px 10px !important;
    background: var(--red, #c0392b) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    border-radius: 4px !important;
    z-index: 5 !important;
    line-height: 1.3 !important;
}

/* NEW, SALE ir kt. PS flags → TOP RIGHT, vertical stack po -15% */
.bomba-product-card .product-flags,
.bomba-product-cover ~ .product-flags {
    position: absolute !important;
    top: 42px !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 4 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    pointer-events: none !important;
    list-style: none !important;
    align-items: flex-end !important;
}

.bomba-product-card .product-flags .product-flag {
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    width: fit-content !important;
    background: var(--gold, #b8901c) !important;
    color: #1a1714 !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 4px 10px !important;
    font-family: Inter, -apple-system, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    line-height: 1 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.18) !important;
}

/* === 2026-05-28: Jei yra -15% badge (.bomba-product-discount), slėpti PS native
   SALE flag'us (on-sale + discount + discount-percentage + discount-amount) —
   redundancy. NEW/Nauja + Nėra/out lieka rodomi. === */
.bomba-product-card:has(.bomba-product-discount) .product-flags .product-flag.on-sale,
.bomba-product-card:has(.bomba-product-discount) .product-flags .product-flag.discount,
.bomba-product-card:has(.bomba-product-discount) .product-flags .product-flag.discount-percentage,
.bomba-product-card:has(.bomba-product-discount) .product-flags .product-flag.discount-amount {
    display: none !important;
}

/* ============================================================
   Auto-accept terms — checkout "Sutinku su taisyklemis" paslepta
   (Andriaus sprendimas 2026-05-29). Checkbox lieka DOM'e + auto-checked
   (bomba-auto-terms.js), kad Montonio binary mygtukas isijungtu, bet
   vartotojui nematomas. Plus paslepiam "ps-hidden-by-js" intro teksta.
   ============================================================ */
#conditions-to-approve {
    display: none !important;
}

/* ============================================================
   MOBILE: paslepti negyvą FILTRAS sticky bar + seną paieškos filtras
   bloką (2026-05-31, Andriaus prašymu — antras kartas; pirmąkart hide'inta
   anksčiau, atsistatė tikriausiai po CCC regeneracijos ar modulio reset'o).

   Slepiami 4 elementai mobile only (<=991px) — desktop facets sidebar lieka:
   1. .js-search-toggler / .filter-button — gold FAB "FILTRAS" mygtukas
      apačioje (PS native ps_facetedsearch, restilizuotas v2.28.0 2026-05-24
      "music-taste bottom-sheet" — vartotojo nuomone negyvas / painu).
   2. #search_filters_wrapper — facets sidebar/drawer (mobile sheet open ar
      legacy "atsistatęs" sidebar — vis tiek nereikalinga mobile UX).
   3. #search_filter_controls — drawer apačios mygtukai (GERAI / Clear All).
   4. .bomba-facet-backdrop — overlay backdrop kai sheet open.

   Rollback'as paprastas — pašalinti šią sekciją ir bump'inti ?v=.
   ============================================================ */
/* 2026-06-03: KRITINĖ #65 hide PAŠALINTAS — mobilus filtravimas atstatytas kaip
   ŠVARUS INLINE „Filtras" mygtukas (NE floating FAB) + bottom-sheet. Žr. de-FAB bloką gale. */
@media (max-width: 991px) {
    .filter-button { display: none !important; } /* senas dubliuojantis FAB lieka paslėptas */
}

/* ==== AUDITO 2026-06-03 TAISYMAI (ux-03, conv-05, conv-09, 404, mobile) ==== */
.bomba-format-badge--kpop{background:rgba(233,30,99,0.16);color:#ff8fc7;border:1px solid #ff8fc7;}
.bomba-pdp__availability{font-size:13px;font-weight:600;margin:8px 0;}
.bomba-pdp__availability--in{color:#3a8a4a;}
.bomba-pdp__availability--low{color:#c77a1a;}
.bomba-pdp__availability--out{color:#a33;}
.bomba-pdp__qty{display:inline-flex;align-items:center;border:1px solid var(--border,#ccc);border-radius:6px;overflow:hidden;margin:0 12px 10px 0;vertical-align:middle;}
.bomba-pdp__qty-btn{width:38px;height:40px;border:0;background:var(--bg2,#f3f3f3);color:var(--text,#1a1714);cursor:pointer;font-size:18px;line-height:1;}
.bomba-pdp__qty-input{width:50px;height:40px;border:0;text-align:center;font-size:15px;background:transparent;color:var(--text,#1a1714);-moz-appearance:textfield;}
.bomba-pdp__qty-input::-webkit-outer-spin-button,.bomba-pdp__qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.bomba-404-search{margin:18px 0;display:flex;gap:8px;max-width:480px;}
.bomba-404-search input{flex:1;padding:10px 14px;border:1px solid var(--border,#ccc);border-radius:8px;}
.bomba-404-links ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 18px;margin:10px 0;}
.bomba-404-links a{color:var(--gold,#b8901c);text-decoration:none;font-weight:600;}
/* MOBILE (audito mobilus patikrinimas 2026-06-03) */
@media (max-width:991px){
  .bomba-mainnav .flex{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;gap:18px;padding:6px 14px;scrollbar-width:none;}
  .bomba-mainnav .flex::-webkit-scrollbar{display:none;}
}
@media (max-width:768px){
  .input-group-btn-vertical .btn-touchspin{min-width:40px;width:40px;height:36px;display:inline-flex;align-items:center;justify-content:center;}
  .bomba-pdp__add-to-cart{width:100%;}
}
@media (max-width:575px){
  .bomba-grid{grid-template-columns:repeat(2,1fr)!important;gap:14px 10px;}
  .featured-products .product.bomba-product-wrap{flex:0 0 50%;max-width:50%;}
}

/* === 2026-06-03 (Task 1): mobilus „Filtras" = INLINE mygtukas (NE floating FAB) === */
@media (max-width:991px){
  .js-search-toggler{position:static!important;bottom:auto!important;right:auto!important;left:auto!important;top:auto!important;z-index:auto!important;width:100%!important;box-shadow:none!important;display:flex!important;align-items:center;justify-content:center;gap:6px;border-radius:8px!important;transform:none!important;margin:0!important;}
  body:has(#search_filters_wrapper.bomba-sheet-open) .js-search-toggler{opacity:1;pointer-events:auto;}
}
