/* kerion-eshop/server/public/css/shop.css
   Παράγεται από το design (shop.html). Σειρά κανόνων ίδια με το mockup: μην αλλάζει. */
[hidden]{display:none!important}
.nav a[aria-current="page"]{color:var(--flame-text)}
.shop-top{padding-top:28px}
.crumbs{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem;color:var(--ink-soft)}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.shop-top h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em}
.shop-top > p{color:var(--ink-soft);max-width:62ch;margin-top:10px}
.cat-tabs{display:flex;gap:8px;margin-top:22px}
.ctab{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:9px 16px;white-space:nowrap;font-size:.92rem}
.ctab:hover{border-color:var(--ink)}
.ctab[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.shop{display:grid;grid-template-columns:280px minmax(0,1fr);gap:44px;align-items:start;padding-top:32px;padding-bottom:64px}
/* Η στήλη κυλά μαζί με τη σελίδα: με τη λίστα κατηγοριών ξεπερνά το ύψος της οθόνης και μια εσωτερική μπάρα κύλισης ήταν άβολη. */
.filters{min-width:0}
.sheet-head,.sheet-foot{display:none}
.fg{border:0;margin:0;padding:18px 0;border-top:1px solid var(--line);min-width:0}
.fg:first-child{border-top:0;padding-top:0}
.fg legend{float:left;width:100%;padding:0;margin-bottom:8px;font-weight:600;font-size:.95rem}
.opt{clear:both;display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer;font-size:.95rem}
.opt input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--ink)}
.opt .dot{width:10px;height:10px;border-radius:50%;background:var(--c);flex:none}
.opt .n{margin-left:auto;color:var(--ink-soft);font-size:.82rem}
.opt.zero{color:#A99CAA;cursor:default}
.opt.zero .dot{opacity:.35}
.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.count{margin-right:auto;color:var(--ink-soft)}
.sort{display:flex;align-items:center;gap:8px;font-size:.92rem}
.sort select{font:inherit;color:inherit;border:1px solid var(--line);border-radius:999px;padding:8px 36px 8px 14px;appearance:none;-webkit-appearance:none;
  background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232A1C2D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center}
.tbtn{display:none}
.active{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}
.active:empty{display:none}
.chipx{display:inline-flex;align-items:center;gap:6px;border:0;background:#E3D6E4;border-radius:999px;padding:6px 10px 6px 14px;font-size:.88rem}
.chipx:hover{background:#D8C7DA}
.chipx svg{width:14px;height:14px}
.clear-all{border:0;background:none;text-decoration:underline;text-underline-offset:3px;font-size:.88rem;padding:6px 4px}
.results .pgrid{grid-template-columns:repeat(3,1fr)}
.pcard.soldout .pcard-art svg{opacity:.45;filter:grayscale(.5)}
.pcard-tag.out{background:var(--ink);color:var(--paper)}
.add:disabled{opacity:.35;cursor:not-allowed}
.add:disabled:hover{background:none;color:inherit}
.empty{text-align:center;padding:56px 20px;background:var(--paper);border-radius:var(--r-md)}
.empty h2{font-size:1.4rem}
.empty p{color:var(--ink-soft);margin:8px 0 22px}
.more{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:40px}
.more p{color:var(--ink-soft);font-size:.92rem}
.progress{width:200px;height:3px;background:var(--line);border-radius:2px;overflow:hidden}
.progress i{display:block;height:100%;background:var(--ink)}
.seo{padding-bottom:72px;border-top:1px solid var(--line);padding-top:40px}
.seo h2{font-size:1.35rem}
.seo p{color:var(--ink-soft);max-width:72ch;margin-top:10px}
.scrim{position:fixed;inset:0;background:rgba(42,28,45,.45);z-index:70}
@media (max-width:1100px){.results .pgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){
  .shop{grid-template-columns:minmax(0,1fr);gap:0;padding-top:14px}
  .filters{position:fixed;left:0;right:0;bottom:0;top:auto;max-height:85vh;overflow:auto;background:var(--paper);z-index:80;
    border-radius:20px 20px 0 0;padding:0 20px;transform:translateY(100%);visibility:hidden;transition:transform .25s, visibility 0s linear .25s}
  .filters.open{transform:none;visibility:visible;transition:transform .25s}
  .sheet-head{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1;background:var(--paper);
    padding:16px 0 12px;margin-bottom:14px;border-bottom:1px solid var(--line)}
  .sheet-head h2{font-size:1.3rem}
  .sheet-foot{display:flex;gap:10px;position:sticky;bottom:0;background:var(--paper);margin-top:6px;
    padding:14px 0 calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
  .sheet-foot .btn{flex:1;padding:12px 16px}
  .toolbar{position:sticky;top:72px;z-index:30;background:var(--wax);margin:0 calc(-1 * var(--gut)) 12px;padding:10px var(--gut);
    border-bottom:1px solid var(--line);gap:10px}
  .tbtn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ink);background:var(--paper);border-radius:999px;padding:8px 16px;font-weight:500}
  .badge-in{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--flame);font-size:.75rem;font-weight:700}
  .sort{margin-left:auto}
  .sort span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .count{order:3;width:100%;margin:0;font-size:.86rem}
  .opt{padding:9px 0;font-size:1rem}
  .results .pgrid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:700px){
  .shop-top{padding-top:18px}
  .shop-top h1{font-size:1.9rem}
  .shop-top > p{font-size:.95rem}
  .crumbs{margin-bottom:12px}
  .cat-tabs{margin-top:16px}
  .results .pgrid{grid-template-columns:repeat(2,1fr);gap:22px 12px}
  .more{margin-top:32px}
  .seo{padding-top:32px;padding-bottom:48px}
}
.var{position:relative;clear:both;display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);
  border-radius:12px;padding:12px 14px;margin-bottom:8px;cursor:pointer}
.var input{position:absolute;opacity:0;pointer-events:none}
.var:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.var:has(input:focus-visible){outline:2px solid var(--flame-deep);outline-offset:2px}
.var:has(input:disabled){opacity:.45;cursor:not-allowed}
.var small{color:var(--ink-soft);margin-left:6px}

/* ---- Ε26: σκελετοί στο «φόρτωσε περισσότερα» ---- */
.sk-holder{display:contents}
.grid .sk-card{min-height:330px}

/* ---- UX2: λίστα κατηγοριών, προτάσεις ---- */
/* Στον υπολογιστή οι κατηγορίες είναι λίστα στην πλαϊνή στήλη (όχι καρτέλες σε δύο σειρές)· στο κινητό, καρτέλες που κυλούν. */
.cat-nav{padding-bottom:22px}
.fg-title{font-weight:600;font-size:.95rem;margin:0 0 10px}
.cat-nav ul{list-style:none;margin:0;padding:6px;background:var(--paper);border:1px solid var(--line);border-radius:16px}
.cat-nav li+li{margin-top:2px}
.cat-nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:11px;color:var(--ink);text-decoration:none;font-size:.95rem;line-height:1.3;transition:background .15s,color .15s}
.cat-nav a:hover{background:#EBE1EA}
.cat-nav a:focus-visible{outline:2px solid var(--flame-deep);outline-offset:1px}
.cat-nav a[aria-current="page"]{background:var(--ink);color:var(--paper);font-weight:600}
.cat-nav .n{margin-left:auto;flex:none;min-width:30px;text-align:center;padding:2px 8px;border-radius:999px;background:var(--wax);color:var(--ink-soft);font-size:.78rem;font-weight:500}
.cat-nav a:hover .n{background:var(--paper)}
.cat-nav a[aria-current="page"] .n{background:rgba(251,249,251,.16);color:var(--paper)}
#filterGroups .fg:first-child{border-top:1px solid var(--line);padding-top:18px}
.suggest{margin-top:48px}
.suggest h2{font-size:1.35rem;margin-bottom:18px}
@media (min-width:901px){
  .cat-tabs{display:none}
  .shop{padding-top:40px}
}
@media (min-width:1101px){.suggest .pcard:nth-child(4){display:none}}
@media (max-width:900px){
  .cat-nav{display:none}
  #filterGroups .fg:first-child{border-top:0;padding-top:0}
  /* σβήσιμο στις άκρες όταν υπάρχουν κι άλλες καρτέλες εκεί (ο κώδικας βάζει τις κλάσεις) */
  .cat-tabs.fade-r{-webkit-mask-image:linear-gradient(to right,#000 85%,transparent);mask-image:linear-gradient(to right,#000 85%,transparent)}
  .cat-tabs.fade-l{-webkit-mask-image:linear-gradient(to right,transparent,#000 15%);mask-image:linear-gradient(to right,transparent,#000 15%)}
  .cat-tabs.fade-l.fade-r{-webkit-mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent)}
  .suggest{margin-top:36px}
}

/* ---- UX14: σετ μέσα στο πλέγμα, «Μήπως εννοούσες», «Είδες πρόσφατα», σταθερή μπάρα φίλτρων ---- */
.bband{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:18px 24px;border-radius:var(--r-lg);
  color:var(--wax);background:radial-gradient(120% 160% at 100% 0%,rgba(230,162,60,.32),transparent 55%),#3A2A2A}
.bb-art{display:flex;align-items:flex-end;text-decoration:none}
.bb-th{width:70px;height:86px;border-radius:12px;display:grid;place-items:center;padding:8px;overflow:hidden;border:3px solid #3A2A2A}
.bb-th:has(img){padding:0}
.bb-th img{width:100%;height:100%;object-fit:cover}
.bb-th svg{width:100%;height:100%}
.bb-th + .bb-th{margin-left:-20px}
.bb-th:nth-child(2){transform:translateY(-8px)}
.bb-k{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--flame)}
.bband h2{font-size:1.3rem;margin:4px 0 4px}
.bband h2 a{color:inherit;text-decoration:none}
.bband h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.bb-items{font-size:.86rem;color:#E4D5CF;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bb-buy{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.bb-price s{color:#CDBDB7;font-size:.9rem}
.bb-price strong{font-size:1.25rem}
.bb-buy .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.bb-buy .btn svg{width:18px;height:18px}
.bb-buy .b-go{color:var(--wax);font-size:.85rem}
@media (max-width:760px){
  .bband{grid-template-columns:auto minmax(0,1fr);gap:12px 14px;padding:16px;border-radius:var(--r-md)}
  .bb-th{width:52px;height:64px;padding:6px;border-width:2px}
  .bb-th + .bb-th{margin-left:-16px}
  .bband h2{font-size:1.08rem}
  .bb-buy{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}
}
.empty .dym{font-size:1.02rem;color:var(--ink);margin:10px 0 0}
.empty .dym a{font-weight:600}
@media (max-width:900px){
  /* η μπάρα «Φίλτρα · Ταξινόμηση» μένει στην κορυφή· όταν είναι κολλημένη, το πλήθος κρύβεται για να πιάνει λιγότερο χώρο */
  .toolbar.stuck{box-shadow:0 8px 18px -12px rgba(42,28,45,.35)}
  .toolbar.stuck .count{display:none}
}
/* ---- UX38: σύνδεσμος στον οδηγό αρωμάτων από το φίλτρο «Οικογένεια αρώματος» ---- */
.fg-help{font-weight:500;font-size:.8rem;color:var(--flame-text);margin-left:6px;text-underline-offset:3px}
