/* Kategorie a výpisy e-shopů (návrh R2 „cats“, „cat“) */
.cats-hero{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.cats-hero__in{padding-top:56px;padding-bottom:48px;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}
.cats-filter{display:flex;align-items:center;gap:10px;width:100%;max-width:560px;height:56px;padding:0 20px;background:#fff;border:1px solid var(--input);border-radius:28px;box-shadow:0 4px 18px rgba(12,42,34,.06)}
.cats-filter:focus-within{border-color:var(--ink)}
.cats-filter input{flex:1;border:0;outline:0;font:inherit;font-size:16px;background:transparent;min-width:0}
.cats{padding-top:40px;padding-bottom:72px}
.cats__h{font-size:22px;font-weight:700;margin:0 0 24px}
.cats__h span{font-weight:400;color:var(--text-3);font-size:16px}
.cats__grid{columns:4 260px;column-gap:20px}
.cats__card{break-inside:avoid;margin:0 0 20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden}
.cats__head{display:flex;align-items:center;gap:12px;padding:18px 18px;color:var(--ink);text-decoration:none}
.cats__head b{font-size:16px;flex:1;line-height:1.25}
.cats__head small{font-size:12px;color:var(--text-2);white-space:nowrap}
.cats__head:hover b{text-decoration:underline}
.cats__subs{display:flex;flex-direction:column;padding:8px 0}
.cats__subs a{padding:8px 18px;font-size:14px;color:var(--text-2);text-decoration:none}
.cats__subs a:hover{background:var(--bg-soft);color:var(--text)}
.cats__subs small{color:var(--text-3)}
.cats__card[hidden],.cats__subs a[hidden]{display:none}

.lst-head{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.lst-head__in{padding-top:28px;padding-bottom:28px;display:flex;flex-direction:column;gap:12px}
.lst-head__h{font-size:40px;line-height:1.1;font-weight:800;letter-spacing:-.02em;margin:6px 0 0}
.lst-head__note{font-size:14px;color:var(--text-2)}
.lst-head__note a{color:var(--text);font-weight:600}
.lst-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.lst{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;padding-top:28px;padding-bottom:72px;align-items:start}
.lst__main{display:flex;flex-direction:column;gap:12px}
.lst__bar{display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:700;font-size:15px}
.lst__sort label{font-weight:400;font-size:14px;color:var(--text-2);display:flex;align-items:center;gap:6px}
.lst__sort select{font:inherit;font-size:14px;font-weight:600;color:var(--text);border:1px solid var(--input);border-radius:20px;height:40px;padding:0 38px 0 16px;cursor:pointer;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2314161c' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center}
.lst__sort select:hover,.lst__sort select:focus{border-color:var(--ink);outline:0}
.lst-row{display:grid;grid-template-columns:64px minmax(0,1fr) 220px;gap:18px;align-items:center;padding:18px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);color:var(--text);text-decoration:none;transition:box-shadow .15s,border-color .15s}
.lst-row:hover{border-color:var(--ink);box-shadow:0 6px 20px rgba(12,42,34,.08)}
.lst-row__main{display:flex;flex-direction:column;gap:4px;min-width:0}
.lst-row__main>b{font-size:17px}
.lst-row__main>.muted{font-size:13px}
.lst-row__main .rate{margin-top:2px}
.lst-row__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.lst-row__side{font-size:13px;color:var(--text-2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lst__side{display:flex;flex-direction:column;gap:16px;position:sticky;top:96px}
.lst-rel{display:flex;flex-direction:column;padding:16px 0}
.lst-rel__h{display:flex;justify-content:space-between;align-items:center;padding:0 18px 8px}
.lst-rel__h a{font-size:13px;font-weight:600;color:var(--primary)}
.lst-rel>a{display:flex;flex-direction:column;padding:8px 18px;text-decoration:none;color:var(--text)}
.lst-rel>a:hover{background:var(--bg-soft)}
.lst-rel>a span{font-size:14px;font-weight:600}
.lst-rel>a small{font-size:12px;color:var(--text-3)}
.lst-check{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--radius-card);background:var(--ink);color:#fff}
.lst-check span{font-size:14px;color:rgba(255,255,255,.75)}
.lst-check a{color:var(--mint);font-weight:700;margin-top:4px}

@media (max-width:1023px){
  .lst{grid-template-columns:1fr}
  .lst__side{position:static}
  .lst-row{grid-template-columns:56px minmax(0,1fr)}
  .lst-row .shop-logo{width:56px;height:56px}
  .lst-row__side{display:none}
}
@media (max-width:767px){
  .cats-hero__in{padding-top:36px;padding-bottom:32px}
  .lst-head__h{font-size:28px}
  .lst-chips{flex-wrap:nowrap;overflow-x:auto;margin:6px -16px 0;padding:0 16px;scrollbar-width:none}
  .lst-row{padding:14px;gap:14px}
}

/* Výpis produktů (R2 „products“) */
.pl{padding-top:28px;padding-bottom:96px;display:flex;flex-direction:column;gap:16px}
.pl-shop{display:flex;align-items:center;gap:16px}
.pl-shop .lst-head__h{flex:1;min-width:0}
.pl-shop__back{flex:none}
@media (max-width:767px){.pl-shop{flex-wrap:wrap}.pl-shop .lst-head__h{flex:1 1 calc(100% - 72px)}.pl-shop__back{width:100%}}
.pl-search{height:44px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--input);border-radius:22px;max-width:480px}
.pl-search:focus-within{border-color:var(--ink)}
.pl-search input{flex:1;border:0;outline:0;font:inherit;font-size:15px;background:transparent;min-width:0}

/* Nejnovější recenze (R2 „reviews“) */
.rvs{padding-top:32px;padding-bottom:96px;display:flex;flex-direction:column;gap:24px}
.rvs__h{margin:0;font-size:38px;font-weight:800;letter-spacing:-.035em}
.rvs__lead{margin:-12px 0 0;color:var(--text-2)}
.rvs__top{display:flex;flex-direction:column;gap:14px;margin-top:24px}
.rvs__toplist{display:flex;flex-wrap:wrap;gap:10px}
.rvs__toplist a{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;color:var(--text);text-decoration:none;font-size:14px}
.rvs__toplist a:hover{border-color:var(--ink)}
@media (max-width:767px){.rvs__h{font-size:28px}}

/* Žebříčky (R4 „rank“) */
.rk-hero{background:#eef5f0}
.rk-hero__in{padding-top:40px;padding-bottom:40px;display:flex;flex-direction:column;gap:16px}
.rk-hero__h{margin:0;font-size:44px;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.rk-hero__p{font-size:17px;color:var(--text-2)}
.rk-hero__row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:8px}
.rk-cats{margin:0}
.rk-per{display:flex;background:#fff;border:1px solid var(--line);border-radius:20px;padding:3px}
.rk-per a{height:32px;display:flex;align-items:center;padding:0 14px;border-radius:16px;font-size:14px;font-weight:600;color:var(--text-2);text-decoration:none}
.rk-per a[aria-current]{background:var(--ink);color:#fff}
.rk{padding-top:16px;padding-bottom:96px;display:flex;flex-direction:column;gap:24px}
.rk-list{list-style:none;margin:0;padding:0}
.rk-row{display:grid;grid-template-columns:72px 56px minmax(0,1fr) 170px 130px 70px;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.rk-row:hover .rk-name b{text-decoration:underline}
.rk-pos{font-size:28px;font-weight:800;letter-spacing:-.03em;text-align:center}
.rk-name{display:flex;flex-direction:column;gap:3px;min-width:0}
.rk-name b{font-size:18px;font-weight:600}
.rk-name .muted{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rk-rate{display:flex;align-items:center;gap:10px}
.rk-sat{display:flex;flex-direction:column;align-items:flex-end;font-size:15px}
.rk-sat small{font-size:13px}
.rk-mv{font-size:14px;font-weight:700;text-align:right;color:var(--text-3)}
.rk-mv--up{color:#15803d}
.rk-mv--down{color:#b42318}
.rk-mv--new{color:var(--primary);font-weight:600}
.rk-more{align-self:center}
.rk-awards{display:flex;flex-direction:column;gap:16px;margin-top:24px}
.rk-award__t{font-size:12px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
.rk-award__v{font-size:14px;font-weight:700;margin-top:6px}
.rk-note{font-size:14px;max-width:760px}
.rk-note a{color:var(--primary)}
@media (max-width:1023px){.rk-row{grid-template-columns:48px 48px minmax(0,1fr) auto}.rk-row .shop-logo{width:48px!important;height:48px!important}.rk-rate,.rk-mv{display:none}}
@media (max-width:767px){.rk-hero__h{font-size:28px}.rk-row{grid-template-columns:36px 44px minmax(0,1fr) auto;gap:12px}.rk-pos{font-size:22px!important}.rk-row .shop-logo{width:44px!important;height:44px!important}.rk-name b{font-size:16px}}
