/* ---------- E-shop (WooCommerce) ve vzhledu webu optiky ---------- */
.shop{--prod-mezera:26px}
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error{background:var(--teal-pale);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px;margin:0 0 20px;list-style:none;font-size:16px}
.woocommerce-notices-wrapper .woocommerce-error{background:var(--amber-pale);border-color:var(--amber)}

/* výpis produktů */
.shop ul.products, .woocommerce ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--prod-mezera)}
.shop ul.products li.product, .woocommerce ul.products li.product{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:6px}
.shop ul.products li.product a img, .woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;margin-bottom:8px}
.shop ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-b);font-size:16.5px;font-weight:500;line-height:1.35;margin:0;color:var(--ink)}
.shop ul.products li.product .price, .woocommerce ul.products li.product .price{font-family:var(--f-m);font-size:16px;color:var(--teal-dark);margin-top:auto}
.shop ul.products li.product .price del, .woocommerce ul.products li.product .price del{color:var(--ink-3);margin-right:6px}
.shop ul.products li.product .button, .woocommerce ul.products li.product .button{margin-top:10px;display:inline-block;background:var(--teal);color:#fff;text-decoration:none;font-weight:500;font-size:15px;padding:10px 14px;border-radius:var(--r);text-align:center}
.shop ul.products li.product .button:hover, .woocommerce ul.products li.product .button:hover{background:var(--teal-dark)}
.woocommerce-result-count{color:var(--ink-3);font-size:15px}
.woocommerce-ordering{max-width:100%}
/* Bez max-width se rozbalovací seznam roztáhne podle nejdelší volby
   („Seřadit podle oblíbenosti“) a na úzkém telefonu přeteče. */
.woocommerce-ordering select{max-width:100%;padding:9px 12px;border:1px solid var(--line-2);border-radius:var(--r);font:inherit;font-size:15px}
.woocommerce-pagination ul{list-style:none;display:flex;gap:8px;padding:0;margin:28px 0 0}
.woocommerce-pagination a, .woocommerce-pagination span{display:inline-block;padding:9px 14px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--ink-2)}
.woocommerce-pagination span.current{background:var(--teal);color:#fff;border-color:var(--teal)}

/* detail produktu */
.shop div.product, .woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.shop div.product .woocommerce-product-gallery, .woocommerce div.product .woocommerce-product-gallery{grid-column:1}
.shop div.product .summary, .woocommerce div.product .summary{grid-column:2}
.shop div.product .woocommerce-tabs, .woocommerce div.product .woocommerce-tabs, .shop div.product .related, .woocommerce div.product .related, .shop div.product .up-sells, .woocommerce div.product .up-sells{grid-column:1/-1}
.shop div.product .woocommerce-product-gallery img, .woocommerce div.product .woocommerce-product-gallery img{border:1px solid var(--line);border-radius:var(--r);background:#fff}
.shop div.product .product_title, .woocommerce div.product .product_title{font-family:var(--f-d);font-size:clamp(24px,3vw,32px);line-height:1.2;margin:0 0 10px}
.shop div.product .summary .price, .woocommerce div.product .summary .price{font-family:var(--f-m);font-size:24px;color:var(--teal-dark);margin:0 0 16px;display:block}
.shop div.product .woocommerce-product-details__short-description, .woocommerce div.product .woocommerce-product-details__short-description{color:var(--ink-2);font-size:16.5px;margin-bottom:18px}
.shop form.cart, .woocommerce form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:18px 0}
.shop form.cart .quantity input, .woocommerce form.cart .quantity input{width:80px;padding:11px;border:1px solid var(--line-2);border-radius:var(--r);font:inherit}
.shop .single_add_to_cart_button, .woocommerce .single_add_to_cart_button{background:var(--amber);color:#fff;border:0;border-radius:var(--r);font:inherit;font-weight:600;font-size:16.5px;padding:14px 24px;cursor:pointer}
.shop .single_add_to_cart_button:hover, .woocommerce .single_add_to_cart_button:hover{background:var(--amber-dark)}
.shop .product_meta, .woocommerce .product_meta{font-size:14.5px;color:var(--ink-3);border-top:1px solid var(--line);padding-top:14px;margin-top:14px}
.shop .woocommerce-Tabs-panel, .woocommerce .woocommerce-Tabs-panel{border:1px solid var(--line);padding:22px;border-radius:0 var(--r) var(--r) var(--r)}
.shop .related>h2, .woocommerce .related>h2, .shop .up-sells>h2, .woocommerce .up-sells>h2, .shop .cross-sells>h2, .woocommerce .cross-sells>h2{font-family:var(--f-d);font-size:24px;margin:44px 0 18px}

/* košík a pokladna */
.shop table.shop_table, .woocommerce table.shop_table{width:100%;border-collapse:collapse;margin-bottom:24px;font-size:16px}
.shop table.shop_table th, .woocommerce table.shop_table th, .shop table.shop_table td, .woocommerce table.shop_table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.shop table.shop_table th, .woocommerce table.shop_table th{background:var(--sunk);font-weight:500;font-size:15px}
.shop .cart_item dl.variation, .woocommerce .cart_item dl.variation{font-size:14.5px;color:var(--ink-3);margin:6px 0 0}
.shop .cart_item dl.variation dt, .woocommerce .cart_item dl.variation dt{font-weight:500;float:left;margin-right:6px}
.shop .button, .woocommerce .button, .shop button.button, .woocommerce button.button, .shop input.button, .woocommerce input.button{background:var(--teal);color:#fff;border:0;border-radius:var(--r);padding:12px 18px;font:inherit;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block}
.shop .button:hover, .woocommerce .button:hover{background:var(--teal-dark);color:#fff}
.shop .checkout-button, .woocommerce .checkout-button, .shop #place_order, .woocommerce #place_order{background:var(--amber)!important;font-weight:600;font-size:17px;padding:15px 26px}
.shop .checkout-button:hover, .woocommerce .checkout-button:hover, .shop #place_order:hover, .woocommerce #place_order:hover{background:var(--amber-dark)!important}
.shop .cart_totals, .woocommerce .cart_totals, .shop .woocommerce-checkout-review-order, .woocommerce .woocommerce-checkout-review-order{background:var(--sunk);border-radius:var(--r);padding:20px}
.shop .woocommerce-billing-fields input, .woocommerce .woocommerce-billing-fields input, .shop .woocommerce-checkout textarea, .woocommerce .woocommerce-checkout textarea, .shop .woocommerce-checkout select, .woocommerce .woocommerce-checkout select, .shop .woocommerce-input-wrapper input, .woocommerce .woocommerce-input-wrapper input{width:100%;padding:11px;border:1px solid var(--line-2);border-radius:var(--r);font:inherit;font-size:16px}
.shop .form-row, .woocommerce .form-row{margin-bottom:14px}
.shop .form-row label, .woocommerce .form-row label{display:block;font-size:15px;color:var(--ink-2);margin-bottom:5px}
.shop .woocommerce-form__label-for-checkbox, .woocommerce .woocommerce-form__label-for-checkbox{display:flex;gap:8px;align-items:flex-start}
.shop .woocommerce-form__label-for-checkbox input, .woocommerce .woocommerce-form__label-for-checkbox input{width:auto}
.shop .wc_payment_methods, .woocommerce .wc_payment_methods{list-style:none;padding:0}
.shop .wc_payment_method label, .woocommerce .wc_payment_method label{font-weight:500}

@media (max-width:820px){
.shop div.product, .woocommerce div.product{grid-template-columns:1fr;gap:24px}
.shop div.product .summary, .woocommerce div.product .summary{grid-column:1}
.shop table.shop_table td.product-remove, .woocommerce table.shop_table td.product-remove, .shop table.shop_table th.product-remove, .woocommerce table.shop_table th.product-remove{display:none}
}

/* jistota proti vychozimu rozvrzeni WooCommerce */
.woocommerce ul.products li.product{float:none;width:auto;margin:0}
.woocommerce ul.products::after,.woocommerce ul.products::before{display:none}
.woocommerce ul.products li.product a.woocommerce-loop-product__link{display:flex;flex-direction:column;gap:6px;text-decoration:none}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:16.5px;font-weight:500;padding:0;text-transform:none;font-family:var(--f-b);color:var(--ink)}
.woocommerce ul.products li.product img{max-width:100%;height:auto}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto;float:none;margin-bottom:0}

/* rozcestnik kategorii u vypisu */
.shop-s-menu{display:grid;grid-template-columns:250px minmax(0,1fr);gap:36px;align-items:start}
.shop-menu h2{font-family:var(--f-m);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 12px}
.shop-menu-seznam,.shop-menu-seznam ul{list-style:none;margin:0;padding:0}
.shop-menu-seznam li{margin:0}
.shop-menu-seznam a{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:var(--r);text-decoration:none;color:var(--ink-2);font-size:15.5px;line-height:1.3}
.shop-menu-seznam a:hover{background:var(--sunk);color:var(--ink)}
.shop-menu-seznam a span{color:var(--ink-2);font-family:var(--f-m);font-size:13px}
.shop-menu-seznam li.je-aktivni>a{background:var(--teal-pale);color:var(--teal-dark);font-weight:500}
.shop-menu-seznam ul{margin:2px 0 6px 12px;border-left:1px solid var(--line);padding-left:6px}
.shop-menu-seznam ul a{font-size:14.5px;padding:6px 10px}
.shop-menu-pomoc{margin-top:24px;padding:16px 18px;background:var(--sunk);border-radius:var(--r);font-size:15px}
.shop-menu-pomoc h3{font-size:16px;margin:0 0 8px}
.shop-menu-pomoc p{margin:0 0 8px;color:var(--ink-2)}
/* Na úzké obrazovce byl sloupec 1fr, což ho nechalo roztáhnout podle
   nejdelšího názvu kategorie a stránka pak přetékala vpravo.
   minmax(0,1fr) ho drží v šířce obrazovky. */
@media (max-width:940px){
  .shop-s-menu{grid-template-columns:minmax(0,1fr)}
  .shop-s-menu > *{min-width:0}
  .shop-menu{order:2}
  .shop-menu-seznam{columns:2;column-gap:18px}
}
/* Dva sloupce se na telefon nevejdou – názvy kategorií jsou dlouhé. */
@media (max-width:560px){
  .shop-menu-seznam{columns:1}
}

/* filtrovani */
.filtr{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.filtr h2{font-family:var(--f-m);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 14px}
.filtr-skupina{margin-bottom:18px}
.filtr-skupina h3{font-size:15px;font-weight:500;margin:0 0 6px;color:var(--ink)}
.filtr-skupina ul{list-style:none;margin:0;padding:0}
.filtr-skupina a{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:var(--r);text-decoration:none;color:var(--ink-2);font-size:15px}
.filtr-skupina a:hover{background:var(--sunk)}
.filtr-skupina a em{margin-left:auto;font-style:normal;font-size:13px;color:var(--ink-3);font-family:var(--f-m)}
.filtr-box{width:15px;height:15px;border:1px solid var(--line-2);border-radius:3px;flex:0 0 auto}
.filtr-skupina a.je-vybrano{color:var(--teal-dark);font-weight:500}
.filtr-skupina a.je-vybrano .filtr-box{background:var(--teal);border-color:var(--teal);position:relative}
.filtr-skupina a.je-vybrano .filtr-box::after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.filtr-cena{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.filtr-cena h3{flex:1 0 100%;font-size:15px;font-weight:500;margin:0 0 4px}
.filtr-cena label{display:flex;flex-direction:column;gap:3px;font-size:14px;color:var(--ink-3);flex:1 1 80px}
.filtr-cena input{width:100%;padding:8px;border:1px solid var(--line-2);border-radius:var(--r);font:inherit;font-size:15px}
.filtr-cena button{flex:1 0 100%;margin-top:8px;background:var(--teal);color:#fff;border:0;border-radius:var(--r);padding:10px;font:inherit;font-size:15px;cursor:pointer}
.filtr-zrusit{margin:12px 0 0;font-size:15px}

/* hledani v e-shopu */
.eshop-hledani{margin-bottom:22px}
.eshop-hledani label{display:block;font-family:var(--f-m);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.eshop-hledani-radek{display:flex;gap:6px}
.eshop-hledani input[type=search]{flex:1;min-width:0;padding:9px 10px;border:1px solid var(--line-2);border-radius:var(--r);font:inherit;font-size:15px}
.eshop-hledani button{background:var(--teal);color:#fff;border:0;border-radius:var(--r);padding:9px 12px;font:inherit;font-size:15px;cursor:pointer}
.eshop-hledani button:hover{background:var(--teal-dark)}

/* podrobny popis zbozi: zalozky, tabulka parametru.
   WooCommerce stylu je specifictejsi (.woocommerce div.product ...), proto
   stejna specificita – jinak se prosadi jeho zakulacene "jazycky". */
.woocommerce div.product .woocommerce-tabs{margin:44px 0 0;clear:both}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;flex-wrap:wrap;gap:4px;
  list-style:none;margin:0;padding:0;
  border-bottom:1px solid var(--line);
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent;border:0;border-radius:0;box-shadow:none;
  margin:0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none;content:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:11px 16px;
  font-size:15.5px;font-weight:400;text-shadow:none;text-decoration:none;
  color:var(--ink-3);
  border:1px solid transparent;border-bottom:0;
  border-radius:var(--r) var(--r) 0 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--teal-dark);background:var(--sunk)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--ink);font-weight:500;
  background:#fff;border-color:var(--line);
  position:relative;top:1px;
}
.woocommerce div.product .woocommerce-tabs .panel{padding:24px 0 0;margin:0;border:0}
.woocommerce div.product .woocommerce-tabs .panel > h2{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
.woocommerce div.product .woocommerce-tabs .panel h3{font-size:19px;margin:26px 0 10px}
.woocommerce div.product .woocommerce-tabs .panel h3:first-child{margin-top:0}
.woocommerce div.product .woocommerce-tabs .panel p{margin:0 0 12px;line-height:1.6;color:var(--ink-2)}

table.eva-parametry,.woocommerce-product-attributes{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:15.5px}
table.eva-parametry th,table.eva-parametry td,
.woocommerce-product-attributes th,.woocommerce-product-attributes td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
table.eva-parametry th,.woocommerce-product-attributes th{width:42%;font-weight:500;color:var(--ink-3);background:var(--sunk)}
table.eva-parametry tr:last-child th,table.eva-parametry tr:last-child td{border-bottom:0}
table.eva-parametry p,.woocommerce-product-attributes p{margin:0}

@media (max-width:560px){
  .woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:9px 12px;font-size:15px}
  table.eva-parametry th,.woocommerce-product-attributes th{width:50%}
}

/* na telefonu dve karty vedle sebe, at se da nabidka prochazet */
@media (max-width:640px){
  .shop ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .shop ul.products li.product,.woocommerce ul.products li.product{padding:10px}
  .shop ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:15px}
  .shop ul.products li.product .price,.woocommerce ul.products li.product .price{font-size:15px}
  .shop ul.products li.product .button,.woocommerce ul.products li.product .button{padding:9px 10px;font-size:14.5px}
}

/* pristupnost: odkaz v textu nesmi byt poznat jen podle barvy */
.woocommerce-tabs .panel a:not(.btn),
.propojeni-pozn a,
.eva-dodani-pozn a,
.uvod-dotazy a:not(.btn),
.shop-menu-pomoc a:not(.btn),
.woocommerce-privacy-policy-text a,
.woocommerce-terms-and-conditions-wrapper a:not(.btn){
  text-decoration:underline;
  text-underline-offset:2px;
}
.woocommerce-tabs .panel a:not(.btn):hover,
.uvod-dotazy a:not(.btn):hover{color:var(--teal-dark)}

/* pokladna: listy s prihlasenim a kuponem sladene s webem */
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-info{
  background:var(--sunk,#eef2f2);
  border:1px solid var(--line,#dde3e3);
  border-left:3px solid var(--teal,#0d6e75);
  border-radius:var(--r,4px);
  color:var(--ink-2,#40595d);
  padding:12px 14px;
  margin:0 0 14px;
  font-size:15.5px;
  list-style:none;
}
.woocommerce-checkout .woocommerce-info::before{display:none}
.woocommerce-checkout .woocommerce-info a{color:var(--teal-dark,#08474c);text-decoration:underline;text-underline-offset:2px}

/* zaskrtavatko vedle textu; radek se musi umet zalomit pod nim */
.woocommerce-checkout .form-row label.checkbox,
.woocommerce-checkout .eva-na-firmu label{
  display:block;
  padding-left:27px;
  text-indent:-27px;
  text-align:left;
  font-size:15.5px;
  line-height:1.5;
  color:var(--ink-2,#40595d);
  cursor:pointer;
}
.woocommerce-checkout .form-row label.checkbox input[type=checkbox]{
  width:17px;height:17px;
  margin:0 10px 0 0;
  vertical-align:-3px;
  accent-color:var(--teal,#0d6e75);
  text-indent:0;
}

/* povinna pole poznat podle hvezdicky, u ostatnich je "(volitelny)" navic */
.woocommerce-checkout .optional{display:none}
.woocommerce-checkout .eva-na-firmu{margin:4px 0 16px}
.woocommerce-checkout .eva-na-firmu .optional{color:var(--ink-3,#587176)}

/* formular at se vejde na uzkou obrazovku */
.woocommerce-checkout .form-row{max-width:100%}
.woocommerce-checkout input[type=text],
.woocommerce-checkout input[type=email],
.woocommerce-checkout input[type=tel],
.woocommerce-checkout textarea,
.woocommerce-checkout select{max-width:100%;box-sizing:border-box}

@media (max-width:560px){
  .woocommerce-checkout #place_order{width:100%}
}

/* na telefonu patri hledani a filtr nad zbozi a sbalene, jinak je nikdo nenajde */
.shop-filtr > summary{display:none}

@media (max-width:940px){
  .shop-s-menu .shop-menu{order:0}
  .shop-filtr{border:1px solid var(--line,#dde3e3);border-radius:var(--r,4px);background:var(--card,#fff);margin-bottom:20px}
  .shop-filtr > summary{
    display:flex;align-items:center;justify-content:space-between;
    padding:13px 16px;font-size:16.5px;font-weight:500;color:var(--ink,#11282b);
    cursor:pointer;list-style:none;
  }
  .shop-filtr > summary::-webkit-details-marker{display:none}
  .shop-filtr > summary::after{content:"+";color:var(--teal,#0d6e75);font-family:var(--f-m,monospace);font-size:19px}
  .shop-filtr[open] > summary{border-bottom:1px solid var(--line,#dde3e3)}
  .shop-filtr[open] > summary::after{content:"\2013"}
  .shop-filtr > *:not(summary){padding-left:16px;padding-right:16px}
  .shop-filtr > .eshop-hledani{padding-top:14px}
  .shop-filtr > .shop-menu-pomoc{padding-bottom:16px}
  .shop-menu-seznam{columns:2;column-gap:18px}
}

/* galerie fotek zbozi: nez se nacte skript, jsou fotky pod sebou a stranka
   pak poskoci. Do te doby ukazujeme jen prvni a drzime ji misto. */
.woocommerce-product-gallery{position:relative;width:100%}
.woocommerce-product-gallery__wrapper{margin:0;padding:0;list-style:none}
.woocommerce-product-gallery__wrapper > *:not(:first-child){display:none}
.flex-viewport .woocommerce-product-gallery__wrapper > *{display:block}

.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img{
  display:block;width:100%;height:auto;
}
.woocommerce-product-gallery__image img{
  aspect-ratio:1/1;object-fit:contain;background:#fff;
}

/* nahledy pod hlavni fotkou */
.flex-control-thumbs{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
  list-style:none;margin:10px 0 0;padding:0;
}
.flex-control-thumbs li{margin:0}
.flex-control-thumbs img{
  width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#fff;
  border:1px solid var(--line,#dde3e3);border-radius:var(--r,4px);cursor:pointer;opacity:.75;
}
.flex-control-thumbs img.flex-active,.flex-control-thumbs img:hover{opacity:1;border-color:var(--teal,#0d6e75)}

/* lupa v rohu fotky */
.woocommerce-product-gallery__trigger{
  position:absolute;top:10px;right:10px;z-index:2;
  width:36px;height:36px;line-height:36px;text-align:center;
  background:#fff;border:1px solid var(--line,#dde3e3);border-radius:50%;
  text-decoration:none;font-size:17px;color:var(--ink-2,#40595d);
}

/* strankovani vypisu – WooCommerce ho kresli ve sve fialove, tady stejna
   specificita jako ma on (.woocommerce nav.woocommerce-pagination ul li a) */
.woocommerce nav.woocommerce-pagination{margin:30px 0 0;text-align:center}
.woocommerce nav.woocommerce-pagination ul{
  display:flex;flex-wrap:wrap;justify-content:center;gap:6px;
  border:0;margin:0;padding:0;list-style:none;
}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0;padding:0;overflow:visible;float:none}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:block;min-width:42px;padding:9px 12px;
  border:1px solid var(--line);border-radius:var(--r);
  background:#fff;color:var(--ink-2);
  font-size:15.5px;line-height:1.2;text-align:center;text-decoration:none;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus{
  background:var(--sunk);border-color:var(--teal);color:var(--teal-dark);
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--teal);border-color:var(--teal);color:#fff;font-weight:500;
}

/* hlasky e-shopu (pridano do kosiku, chyby) taky ve fialove */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  background:var(--sunk);border-top:0;border-left:3px solid var(--teal);
  border-radius:var(--r);color:var(--ink-2);padding:13px 16px;list-style:none;
}
.woocommerce .woocommerce-error{border-left-color:#b3261e}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before{display:none}
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button{
  background:var(--teal);color:#fff;border:0;border-radius:var(--r);
  padding:7px 12px;font-size:14.5px;
}
.woocommerce .woocommerce-message a.button:hover,
.woocommerce .woocommerce-info a.button:hover{background:var(--teal-dark)}

/* tabulky a formularova pole e-shopu – WooCommerce je kresli ve sve fialove */
.woocommerce table.shop_table{
  border-color:var(--line);border-radius:var(--r);border-collapse:collapse;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th{
  border-color:var(--line);border-top-color:var(--line);
}
.woocommerce table.shop_table thead th{background:var(--sunk);color:var(--ink-3)}

.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .quantity input.qty{
  border:1px solid var(--line-2);border-radius:var(--r);
  padding:9px 10px;font:inherit;font-size:15.5px;
  background:#fff;color:var(--ink);box-shadow:none;
}
.woocommerce .quantity input.qty{padding:8px 6px;text-align:center}
.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce .quantity input.qty:focus{
  border-color:var(--teal);outline:2px solid var(--teal);outline-offset:1px;
}

/* WooCommerce ma pro tyhle dva pripady jeste specifictejsi selektory */
.woocommerce-cart table.cart td.actions .coupon .input-text{border-color:var(--line-2)}
.woocommerce-cart .cart-collaterals .cart_totals tr td,
.woocommerce-cart .cart-collaterals .cart_totals tr th,
.woocommerce-checkout .cart-collaterals .cart_totals tr td,
.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top-color:var(--line)}

/* vyber platby v pokladne – WooCommerce ho podbarvuje svou fialovou */
.woocommerce-checkout #payment{background:var(--sunk);border-radius:var(--r)}
.woocommerce-checkout #payment ul.payment_methods{border-bottom-color:var(--line);padding:16px}
.woocommerce-checkout #payment ul.payment_methods li{list-style:none}
.woocommerce-checkout #payment ul.payment_methods li label{font-size:15.5px;color:var(--ink)}
.woocommerce-checkout #payment div.payment_box{
  background:#fff;border:1px solid var(--line);border-radius:var(--r);
  color:var(--ink-2);font-size:15px;line-height:1.55;
}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row{padding:16px}


/* Na telefonu se košík do tabulky nevejde – řádky rozložíme pod sebe. */
@media (max-width:700px){
.woocommerce table.shop_table.cart,
.woocommerce table.shop_table.cart tbody,
.woocommerce table.shop_table.cart tr,
.woocommerce table.shop_table.cart td{display:block;width:auto}
.woocommerce table.shop_table.cart{border:0;margin:0;width:100%}
.woocommerce table.shop_table.cart thead{display:none}
.woocommerce table.shop_table.cart tr.woocommerce-cart-form__cart-item{border-bottom:1px solid var(--line);padding:14px 0}
.woocommerce table.shop_table.cart td{border:0;padding:5px 0;display:flex;gap:14px;justify-content:space-between;align-items:baseline;text-align:right}
.woocommerce table.shop_table.cart td::before{content:attr(data-title);font-weight:500;color:var(--ink-3);font-size:15px;text-align:left}
.woocommerce table.shop_table.cart td.product-thumbnail{display:block;padding:0 0 8px}
.woocommerce table.shop_table.cart td.product-thumbnail::before{content:none}
.woocommerce table.shop_table.cart td.product-thumbnail img{width:96px}
.woocommerce table.shop_table.cart td.product-name{display:block;text-align:left;padding:0 0 6px}
.woocommerce table.shop_table.cart td.product-name::before{content:none}
.woocommerce table.shop_table.cart td.actions{display:block;text-align:left;padding:16px 0 0}
.woocommerce table.shop_table.cart td.actions::before{content:none}
.woocommerce table.shop_table.cart td.actions .coupon{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.woocommerce table.shop_table.cart td.actions .coupon .input-text{flex:1 1 150px;min-width:0}
.woocommerce table.shop_table.cart td.actions .button{width:100%}
}

/* === srovnani dlazdic a zvetseni nahledu (6. 10. 2026) === */
/* Tlacitko "Pridat do kosiku" ma byt u vsech dlazdic ve stejne vysce,
   at je nazev na dva nebo na tri radky. */
.shop ul.products li.product > a.woocommerce-loop-product__link,
.woocommerce ul.products li.product > a.woocommerce-loop-product__link{
  flex:1 1 auto;
}
.shop ul.products li.product .button,
.woocommerce ul.products li.product .button{margin-top:auto}
/* a cele radky mrizky stejne vysoke, at to nedela schody */
.shop ul.products,.woocommerce ul.products{grid-auto-rows:1fr}

/* Nahledy pod hlavni fotkou: vlastni styl WooCommerce jim dava
   width:25 %, coz se uvnitr naseho sloupce mrizky scvrkne na 33 px. */
.woocommerce div.product div.images .flex-control-thumbs li,
.flex-control-thumbs li{width:auto;float:none;max-width:none}
.woocommerce div.product div.images .flex-control-thumbs li img,
.flex-control-thumbs img{opacity:.85}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
.flex-control-thumbs img.flex-active{opacity:1;outline:2px solid var(--teal,#0d6e75);outline-offset:-2px}
@media (max-width:560px){
  .flex-control-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
}

/* === podkategorie nad zbožím a odlišení v panelu (6. 10. 2026) === */
.shop-podkat{margin:0 0 22px}
.shop-podkat h2{font-family:var(--f-m);font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}
.shop-podkat ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.shop-podkat a{display:inline-flex;align-items:baseline;gap:7px;padding:8px 14px;
  background:var(--teal-pale,#e4f0f0);color:var(--teal-dark,#08474c);
  border-radius:999px;text-decoration:none;font-size:15px;line-height:1.2}
.shop-podkat a:hover{background:var(--teal,#0d6e75);color:#fff}
.shop-podkat a span{font-family:var(--f-m);font-size:12.5px;opacity:.75}
/* v bočním panelu je vidět, kde podkategorie začínají a končí */
.shop-menu-seznam ul{background:var(--sunk,#f1f5f5);border-radius:var(--r,4px);
  padding:6px 6px 6px 10px;margin:4px 0 8px 10px;border-left:2px solid var(--teal-pale,#e4f0f0)}
@media (max-width:560px){.shop-podkat a{font-size:14.5px;padding:7px 12px}}

/* === hledání a filtr na úvodu e-shopu (6. 10. 2026) === */
.uvod-hledani{margin:0 0 30px}
.uvod-hledani h2{font-family:var(--f-m);font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 12px}
.uvod-hledani form{max-width:520px}
.uvod-filtr{margin:12px 0 0}
.uvod-filtr .btn{display:inline-block;padding:10px 18px;border:1px solid var(--teal,#0d6e75);
  background:#fff;color:var(--teal-dark,#08474c);border-radius:var(--r,4px);
  font:inherit;font-size:15.5px;cursor:pointer}
.uvod-filtr .btn:hover{background:var(--teal,#0d6e75);color:#fff}
