/* ============================================
   TrendFr — barre des enseignes + pages restaurants
   Upload to: /assets/stores.css
   ============================================ */

/* ---------- barre de logos sous le header ---------- */
.bbar{background:var(--white);border-bottom:1px solid var(--line);}
.bbar-row{display:flex;gap:22px;overflow-x:auto;padding:14px 24px 12px;scroll-snap-type:x proximity;scrollbar-width:thin;}
.bb-item{flex:none;display:flex;flex-direction:column;align-items:center;gap:7px;width:84px;text-decoration:none;
  color:var(--ink);scroll-snap-align:start;border:0;background:none;padding:0;cursor:pointer;font:inherit;}
.bb-logo{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff;
  border:2px solid var(--line-dk);box-shadow:0 3px 10px -4px rgba(42,26,18,.35);transition:transform .15s,border-color .15s;}
.bb-logo img{width:100%;height:100%;object-fit:cover;}
.bb-ini{font-family:Fraunces,Georgia,serif;font-weight:700;font-size:22px;letter-spacing:-.02em;}
.bb-item span:last-child{font-size:12.6px;font-weight:700;line-height:1.2;text-align:center;}
.bb-item:hover .bb-logo,.bb-item:focus-visible .bb-logo{transform:translateY(-2px);border-color:var(--flame);}
.bb-item.on .bb-logo{border-color:var(--emerald);box-shadow:0 0 0 3px rgba(181,49,30,.18);}
.bb-item.on span:last-child{color:var(--emerald);}

/* ---------- panneau qui s'ouvre sous la barre ---------- */
.bb-panel{border-top:1px solid var(--line);background:var(--paper);}
.bb-panel-in{padding:18px 24px 22px;}
.bb-ph{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;}
.bb-ph b{font-family:Fraunces,Georgia,serif;font-size:21px;font-weight:600;}
.bb-ph a{font-size:14px;font-weight:700;text-decoration:none;}
.bb-close{border:1px solid var(--line-dk);background:#fff;border-radius:50%;width:34px;height:34px;cursor:pointer;
  font-size:19px;line-height:1;color:var(--muted);flex:none;}
.bb-close:hover{color:var(--emerald);border-color:var(--emerald);}
.bb-step{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:16px 0 8px;font-weight:700;}
.bb-loading{color:var(--muted);font-size:14.5px;padding:8px 0;}

/* pays */
.bb-countries{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.bb-country{display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left;background:#fff;
  border:1.5px solid var(--line-dk);border-radius:var(--r);padding:12px 14px;cursor:pointer;text-decoration:none;color:var(--ink);font:inherit;}
.bb-country .fl{font-size:24px;line-height:1.1;}
.bb-country b{font-size:15.5px;}
.bb-country small{font-size:12.5px;color:var(--muted);}
.bb-country:hover{border-color:var(--flame);}
.bb-country.on{border-color:var(--emerald);background:#FFF3EC;}
.bb-country.off,.bb-country:disabled{opacity:.5;cursor:default;}
.bb-country.off:hover,.bb-country:disabled:hover{border-color:var(--line-dk);}

/* recherche */
.bb-search{margin:4px 0 12px;}
.bb-search input{width:100%;max-width:520px;font:inherit;font-size:15.5px;padding:11px 15px;border:1.5px solid var(--line-dk);
  border-radius:999px;background:#fff;color:var(--ink);}
.bb-search input:focus{outline:none;border-color:var(--emerald);box-shadow:0 0 0 3px rgba(181,49,30,.12);}
.bb-empty{color:var(--muted);font-size:14.5px;}

/* villes */
.bb-cities{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:8px;}
.bb-panel .bb-cities{max-height:420px;overflow-y:auto;padding-right:4px;}
.bb-cities > li > a{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);
  border-radius:8px;padding:9px 12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14.5px;}
.bb-cities > li > a small{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:0 8px;font-size:12px;color:var(--muted);font-weight:700;}
.bb-cities > li > a:hover{border-color:var(--flame);}
.bb-cities > li > a.on{border-color:var(--emerald);background:#FFF3EC;color:var(--emerald);}

/* fenêtre des restaurants, insérée sous la ville choisie */
.bb-cities > li.bb-citypanel{grid-column:1 / -1;background:#fff;border:1.5px solid var(--emerald);border-radius:var(--r);padding:14px 16px;}
.bb-citypanel .bb-ph b{font-size:18px;}
.bb-stores{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;}
.bb-stores a{display:flex;flex-direction:column;gap:3px;height:100%;background:var(--paper);border:1px solid var(--line);
  border-radius:8px;padding:11px 13px;text-decoration:none;color:var(--ink);}
.bb-stores a b{font-size:14.8px;}
.bb-stores a span{font-size:13.4px;color:var(--muted);line-height:1.35;}
.bb-stores a em{font-style:normal;font-size:12.8px;font-weight:700;color:var(--emerald);margin-top:auto;padding-top:4px;}
.bb-stores a:hover{border-color:var(--flame);background:#fff;}
.bb-citypanel .bb-stores{max-height:380px;overflow-y:auto;}

/* ---------- pages enseigne / pays / ville ---------- */
.br-hero{background:var(--white);border-bottom:1px solid var(--line);padding:6px 0 26px;}
.br-top{display:flex;align-items:center;gap:17px;margin:14px 0 6px;}
.br-logo{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff;
  border:2px solid var(--line-dk);flex:none;}
.br-logo img{width:100%;height:100%;object-fit:cover;}
.br-logo.bb-ini{font-size:25px;}
.br-top h1{font-family:Fraunces,Georgia,serif;font-size:clamp(26px,3.6vw,38px);line-height:1.12;margin:0 0 6px;font-weight:600;}
.br-sub{margin:0 0 8px;color:var(--muted);font-size:15.5px;}
.br-hero + section.art-sec{padding-top:30px;}
.br-body{padding:26px 0 56px;}
.br-h2{font-family:Fraunces,Georgia,serif;font-size:clamp(21px,2.4vw,26px);font-weight:600;margin:26px 0 12px;}
.br-h2:first-child{margin-top:0;}
.br-back{margin:14px 0 0;font-weight:700;font-size:14.5px;}
.br-back a{text-decoration:none;}
.br-soon{color:var(--muted);font-size:16px;}

/* ---------- fiche restaurant ---------- */
.st-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start;}
.st-intro p{margin:0;}
.st-info{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;font-size:15px;}
.st-info h2{font-family:Fraunces,Georgia,serif;font-size:20px;margin:0 0 12px;font-weight:600;}
.st-info p{margin:0 0 12px;}
.st-info a{font-weight:700;}
.st-hours{width:100%;border-collapse:collapse;font-size:14.2px;margin:4px 0 12px;}
.st-hours th{text-align:left;font-weight:500;color:var(--muted);padding:4px 0;}
.st-hours td{text-align:right;padding:4px 0;font-variant-numeric:tabular-nums;}
.st-hours tr.today th,.st-hours tr.today td{color:var(--emerald);font-weight:700;}
.st-serv{display:flex;flex-wrap:wrap;gap:6px;}
.st-serv span{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:12.8px;}

.st-menu{columns:2 380px;column-gap:28px;}
.st-grp{break-inside:avoid;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:6px 16px 8px;margin:0 0 18px;}
.st-grp h3{font-family:Fraunces,Georgia,serif;font-size:19px;font-weight:600;margin:10px 0 4px;color:var(--emerald);}
.st-row{display:flex;align-items:center;gap:11px;padding:7px 0;border-bottom:1px dashed var(--line);}
.st-row:last-child{border-bottom:0;}
.st-row img,.st-noimg{width:48px;height:48px;object-fit:contain;flex:none;border-radius:8px;background:var(--paper);}
.st-row .nm{flex:1;font-size:15px;line-height:1.3;}
.st-row .amt{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15.5px;}
.st-diff{font-size:11.5px;font-weight:700;border-radius:999px;padding:1px 7px;white-space:nowrap;font-variant-numeric:tabular-nums;}
.st-diff.up{background:#FDE8E4;color:#A3291A;}
.st-diff.down{background:#E5F4E8;color:#1F6B33;}
.st-note{font-size:13.2px;color:var(--muted);max-width:90ch;margin:6px 0 0;}
.st-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.st-links h2{font-family:Fraunces,Georgia,serif;font-size:21px;font-weight:600;margin:0 0 10px;}
.st-links ul{list-style:none;margin:0;padding:0;}
.st-links li{padding:7px 0;border-bottom:1px solid var(--line);font-size:15px;}
.st-links li a{font-weight:700;text-decoration:none;}
.st-links li small{color:var(--muted);margin-left:6px;}

@media(max-width:940px){
  .st-grid{grid-template-columns:minmax(0,1fr);}
  .bb-countries{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:620px){
  .bbar-row{gap:14px;padding:12px 16px 10px;}
  .bb-item{width:70px;}
  .bb-logo{width:56px;height:56px;}
  .bb-panel-in{padding:14px 16px 18px;}
  .bb-cities{grid-template-columns:repeat(2,minmax(0,1fr));}
  .st-links{grid-template-columns:minmax(0,1fr);}
  .br-logo{width:58px;height:58px;}
}
