/**
* 2007-2026 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author    PrestaShop SA <contact@prestashop.com>
*  @copyright 2007-2026 PrestaShop SA
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*
* Don't forget to prefix your containers with your own identifier
* to avoid any conflicts with others containers.
*/

.fmmss-wrap{
  --fmm-bg: #ffffff;
  --fmm-text: #111827;
  --fmm-muted: #6b7280;
  --fmm-border: rgba(17,24,39,.10);
  --fmm-soft: rgba(17,24,39,.04);
  --fmm-primary: #2c66ff;
  --fmm-radius: 18px;

  max-width: 1240px;
  margin: 0 auto;
  padding: 22px 16px;
  color: var(--fmm-text);
}

.fmmss-wrap *{ box-sizing:border-box; }
.fmmss-wrap a{ text-decoration:none; }
.fmmss-wrap img{ max-width:100%; display:block; }

/* Hero */
.fmmss-hero{
  border-radius: 22px;
  border: 1px solid var(--fmm-border);
  background:
    radial-gradient(900px 320px at 20% 0%, rgba(44,102,255,.16), transparent 60%),
    radial-gradient(700px 260px at 90% 30%, rgba(44,102,255,.10), transparent 55%),
    linear-gradient(135deg, rgba(17,24,39,.02), rgba(255,255,255,0));
  box-shadow: 0 14px 40px rgba(17,24,39,.08);
  overflow:hidden;
}
.fmmss-hero__inner{ padding: 24px 20px; }
.fmmss-hero__top{ display:flex; flex-direction:column; gap:6px; }
.fmmss-hero__title{ font-size:22px; font-weight:900; letter-spacing:-.2px; }
.fmmss-hero__hint{ font-size:13px; color: var(--fmm-muted); }

/* Searchbar */
.fmmss-searchbar{
  margin-top: 14px;
  display:flex;
  align-items:center;
  gap:10px;
  padding: 10px 10px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(17,24,39,.12);
  box-shadow: 0 8px 22px rgba(17,24,39,.06);
}
.fmmss-searchbar__icon{
  width:38px; height:38px;
  display:flex; align-items:center; justify-content:center;
  border-radius: 12px;
  background: rgba(44,102,255,.10);
  color: var(--fmm-primary);
  font-weight: 900;
}
.fmmss-searchbar__input{
  flex:1;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  font-size:14px;
  padding: 8px 6px;
  color: var(--fmm-text);
}
.fmmss-searchbar__btn{
  border:1px solid rgba(44,102,255,.35);
  background: linear-gradient(180deg, #2c66ff, #2457e6);
  color:#fff;
  font-weight:900;
  border-radius: 14px;
  padding: 10px 14px;
  cursor:pointer;
  box-shadow: 0 10px 22px rgba(44,102,255,.22);
}
.fmmss-searchbar__btn:hover{ filter: brightness(1.03); }
.fmmss-searchbar__btnText{ font-size: 13px; }

/* Suggestions */
.fmmss-suggest{
  margin-top: 12px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color: var(--fmm-muted);
  font-size: 13px;
}
.fmmss-suggest__label{ font-weight:900; color: var(--fmm-text); opacity:.85; }
.fmmss-pill{
  background: rgba(17,24,39,.06);
  border: 1px solid rgba(17,24,39,.06);
  padding: 6px 10px;
  border-radius: 999px;
  font-weight:800;
  font-size:12px;
  color: var(--fmm-text);
}

/* Toolbar */
.fmmss-toolbar{
  margin-top: 18px;
  display:flex;
  gap:16px;
  justify-content:space-between;
  align-items:flex-end;
}
.fmmss-toolbar__title{ font-weight: 950; font-size: 16px; }
.fmmss-q{ color: var(--fmm-primary); }
.fmmss-toolbar__meta{ margin-top:6px; color: var(--fmm-muted); font-size: 12px; display:flex; gap:8px; align-items:center; }
.fmmss-dot{ opacity:.4; }
.fmmss-chips{ margin-top:10px; display:flex; gap:8px; flex-wrap:wrap; }
.fmmss-chip2{
  background: rgba(44,102,255,.10);
  border: 1px solid rgba(44,102,255,.16);
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  color: #0f2f97;
}

/* Controls */
.fmmss-controls{ display:flex; gap:10px; align-items:center; }
.fmmss-select{ display:flex; flex-direction:column; gap:6px; }
.fmmss-select__label{ font-size:11px; font-weight:900; color: var(--fmm-muted); text-transform:uppercase; letter-spacing:.35px; }
.fmmss-select__field{
  border-radius: 14px;
  border: 1px solid rgba(17,24,39,.12);
  background:#fff;
  padding: 10px 12px;
  font-weight: 800;
  font-size: 13px;
}
.fmmss-view{ display:flex; gap:6px; }
.fmmss-view__btn{
  width:40px; height:40px;
  border-radius: 14px;
  border: 1px solid rgba(17,24,39,.12);
  background:#fff;
  cursor:pointer;
  font-weight: 900;
}
.fmmss-view__btn.is-active{
  border-color: rgba(44,102,255,.30);
  background: rgba(44,102,255,.10);
  color: var(--fmm-primary);
}

/* Layout */
.fmmss-layout{ margin-top: 14px; display:flex; gap:16px; align-items:flex-start; }
.fmmss-side{
  width: 290px;
  flex: 0 0 290px;
  position: sticky;
  top: 12px;
}
.fmmss-side__box{
  background:#fff;
  border: 1px solid var(--fmm-border);
  border-radius: var(--fmm-radius);
  box-shadow: 0 10px 28px rgba(17,24,39,.06);
  padding: 12px;
  margin-bottom: 12px;
}
.fmmss-side__title{
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .35px;
  color: var(--fmm-text);
  margin: 4px 4px 10px;
}
.fmmss-main{ flex: 1; min-width:0; }

/* Filters */
.fmmss-filters{ display:flex; flex-direction:column; gap:12px; }
.fmmss-filterRow{ padding: 8px 6px; border-radius: 14px; background: var(--fmm-soft); border: 1px solid rgba(17,24,39,.06); }
.fmmss-check{ display:flex; gap:10px; align-items:center; font-weight: 800; font-size: 13px; color: var(--fmm-text); }
.fmmss-miniTitle{ font-size: 12px; font-weight: 950; margin-bottom: 8px; color: var(--fmm-text); }
.fmmss-price{ display:flex; gap:8px; align-items:center; }
.fmmss-price input{
  width: 100%;
  border-radius: 12px;
  border: 1px solid rgba(17,24,39,.12);
  padding: 10px 10px;
  font-weight: 800;
  font-size: 13px;
}
.fmmss-apply{
  border-radius: 12px;
  border: 1px solid rgba(44,102,255,.25);
  background: rgba(44,102,255,.10);
  color: var(--fmm-primary);
  font-weight: 950;
  padding: 10px 12px;
  cursor:pointer;
}

/* Facets */
.fmmss-facetList{ display:flex; flex-direction:column; gap:8px; }
.fmmss-facet{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding: 10px 10px;
  border-radius: 14px;
  border: 1px solid rgba(17,24,39,.08);
  background: rgba(17,24,39,.02);
  color: var(--fmm-text);
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}
.fmmss-facet:hover{
  transform: translateY(-1px);
  background: rgba(44,102,255,.06);
  border-color: rgba(44,102,255,.22);
}
.fmmss-facet__name{ font-weight: 900; font-size: 13px; line-height:1.2; }
.fmmss-facet__count{
  font-size: 11px;
  font-weight: 950;
  background: rgba(17,24,39,.08);
  border-radius: 999px;
  padding: 3px 8px;
}
.fmmss-clearFacet{
  display:block;
  margin-top: 4px;
  padding: 10px 10px;
  border-radius: 14px;
  text-align:center;
  font-weight: 950;
  background: rgba(220,38,38,.08);
  border: 1px solid rgba(220,38,38,.18);
  color: #b91c1c;
}

/* Cards - grid/list */
.fmmss-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.fmmss-wrap[data-view="list"] .fmmss-grid{
  grid-template-columns: 1fr;
}

.fmmss-card{
  border-radius: 18px;
  overflow:hidden;
  background:#fff;
  border: 1px solid rgba(17,24,39,.10);
  box-shadow: 0 10px 24px rgba(17,24,39,.06);
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.fmmss-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(17,24,39,.10);
  border-color: rgba(44,102,255,.18);
}

.fmmss-card__media{
  position:relative;
  display:block;
  background: rgba(17,24,39,.03);
  aspect-ratio: 1/1;
  overflow:hidden;
}
.fmmss-wrap[data-view="list"] .fmmss-card__media{
  aspect-ratio: auto;
  height: 180px;
}
.fmmss-card__img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition: transform .18s ease;
}
.fmmss-card:hover .fmmss-card__img{ transform: scale(1.03); }

.fmmss-badge{
  position:absolute;
  top:10px; left:10px;
  background: rgba(17,24,39,.78);
  color:#fff;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
}
.fmmss-stock{
  position:absolute;
  bottom:10px; left:10px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
}
.fmmss-stock.is-in{
  background: rgba(22,163,74,.14);
  border: 1px solid rgba(22,163,74,.22);
  color: #166534;
}
.fmmss-stock.is-out{
  background: rgba(220,38,38,.12);
  border: 1px solid rgba(220,38,38,.20);
  color: #b91c1c;
}

.fmmss-card__body{ padding: 12px; }
.fmmss-card__name{
  display:block;
  font-weight: 950;
  font-size: 14px;
  color: var(--fmm-text);
  line-height: 1.25;
  margin-bottom: 6px;
}
.fmmss-card__attrs{
  color: var(--fmm-muted);
  font-size: 12px;
  line-height: 1.35;
  min-height: 32px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.fmmss-card__bottom{
  margin-top: 10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: 10px;
  flex-wrap:wrap;
}
.fmmss-price{
  font-weight: 950;
  font-size: 14px;
  color: var(--fmm-text);
}
.fmmss-actions{ display:flex; gap:8px; align-items:center; }
.fmmss-btn2{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 36px;
  padding: 0 12px;
  border-radius: 12px;
  font-weight: 950;
  font-size: 13px;
  border: 1px solid rgba(17,24,39,.12);
}
.fmmss-btn2.is-ghost{ background:#fff; color: var(--fmm-text); }
.fmmss-btn2.is-primary{
  background: linear-gradient(180deg, #2c66ff, #2457e6);
  border-color: rgba(44,102,255,.35);
  color:#fff;
}
.fmmss-btn2.is-disabled{
  background: rgba(17,24,39,.06);
  border-color: rgba(17,24,39,.10);
  color: var(--fmm-muted);
}

/* Pager */
.fmmss-pager{ margin-top: 16px; }
.fmmss-pager__inner{ display:flex; justify-content:space-between; align-items:center; gap:10px; }
.fmmss-page{
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(17,24,39,.10);
  background:#fff;
  font-weight: 950;
  color: var(--fmm-text);
}
.fmmss-page.is-current{
  background: rgba(44,102,255,.10);
  border-color: rgba(44,102,255,.20);
  color: #0f2f97;
}
.fmmss-page.is-disabled{
  opacity:.55;
  cursor:not-allowed;
}

/* Empty */
.fmmss-empty{
  margin-top: 16px;
  border: 1px dashed rgba(17,24,39,.18);
  border-radius: 18px;
  padding: 18px;
  background: rgba(17,24,39,.02);
}
.fmmss-empty__title{ font-weight: 950; font-size: 14px; margin-bottom: 6px; }
.fmmss-empty__text{ color: var(--fmm-muted); font-size: 12px; }

/* Responsive */
@media (max-width: 1100px){
  .fmmss-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fmmss-side{ width: 280px; flex: 0 0 280px; }
}
@media (max-width: 900px){
  .fmmss-layout{ flex-direction: column; }
  .fmmss-side{ width:auto; flex:auto; position: static; }
}
@media (max-width: 520px){
  .fmmss-grid{ grid-template-columns: 1fr; }
  .fmmss-searchbar__btnText{ display:none; }
}
.fmmss-clearPrice{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 40px;
  padding: 0 12px;
  border-radius: 12px;
  font-weight: 950;
  font-size: 13px;
  background: rgba(17,24,39,.06);
  border: 1px solid rgba(17,24,39,.10);
  color: var(--fmm-muted);
  cursor: pointer;
}
.fmmss-clearPrice:hover{
  background: rgba(17,24,39,.08);
}
.fmmss-chip2.is-clear{
  cursor:pointer;
}
.fmmss-price{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.fmmss-price > input{
  flex:1 1 calc(50% - 5px);
  min-width:0;
}

.fmmss-price__actions{
  flex: 1 1 100%;
  display:flex;
  gap:10px;
  margin-top:2px; /* optional */
}

.fmmss-price__actions .fmmss-apply,
.fmmss-price__actions .fmmss-clearPrice{
  flex:1 1 0;
}
