/* =============================================================================
   Matrace Velkoobchod - jemna modernizace vzhledu storefrontu (6. 10. 2026)

   Nacita se jako posledni (nazev stylesheet_zz_...), takze jen prebiji barvy a tvary
   z stylesheet.css, stylesheet_colors.css a responsive*.css. Rozlozeni stranky se nemeni.
   Vraceni do puvodniho stavu: smazat tento soubor.
   ============================================================================= */

:root {
  --mv-ink: #222222;
  --mv-muted: #6b6b6b;
  --mv-slate: #2b2b2b;
  --mv-slate-2: #444444;
  --mv-accent: #555555;
  --mv-accent-dark: #333333;
  --mv-accent-soft: #eeeeee;
  --mv-bg: #f2f2f2;
  --mv-card: #ffffff;
  --mv-line: #dddddd;
  --mv-radius: 10px;
  --mv-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 4px 14px rgba(0, 0, 0, .06);
}

/* ---------- zaklad ---------- */
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 87.5%;
  line-height: 1.55;
  color: var(--mv-ink);
  background: var(--mv-bg);
}
#mainWrapper { background: var(--mv-bg); }
#contentMainWrapper { background: var(--mv-bg); padding-top: 14px; }

a:link, a:visited { color: var(--mv-accent); text-decoration: none; }
a:hover { color: var(--mv-accent-dark); text-decoration: underline; }
a:active { color: var(--mv-accent-dark); }

h1, h2, h3, h4 { color: var(--mv-slate); letter-spacing: -.01em; }
h1 { font-size: 1.7em; line-height: 1.25; font-weight: 700; }

/* ---------- hlavicka: textove logo ---------- */
#headerWrapper, #logoWrapper { background: #fff; }
#logoWrapper { border-bottom: 1px solid var(--mv-line); }
#logo { margin: 0; padding: 14px 20px; }
#logo a.mvLogo,
#logo a.mvLogo:visited {
  display: inline-block;
  font-size: 2rem;
  line-height: 1.1;
  letter-spacing: -.02em;
  text-decoration: none;
  color: var(--mv-slate);
  border-left: 5px solid var(--mv-accent);
  padding-left: 12px;
}
#logo a.mvLogo:hover { text-decoration: none; }
.mvLogoA { font-weight: 300; }
.mvLogoB { font-weight: 800; color: var(--mv-accent); }

/* ---------- horni lista a vyhledavani ---------- */
#navMainWrapper { background: var(--mv-slate); padding: 6px 0; }
#navMain ul li { border-right: 1px solid rgba(255, 255, 255, .15); }
#navMain ul li a { text-decoration: none; color: #e5e5e5; font-weight: 500; }
#navMain ul li a:hover { color: #fff; text-decoration: none; }
#navMain ul li a.navCartContentsIndicator { background: var(--mv-accent); color: #fff; border-radius: 8px; }
#navMain ul li a.navCartContentsIndicator:hover { background: #fff; color: var(--mv-accent-dark); }
#navMainSearch input[type=text], #navMainSearch1 input[type=text], #menu-search input[type=text] {
  border: 1px solid #555555;
  border-radius: 8px;
  background: #fff;
  color: var(--mv-ink);
  height: 34px;
  padding: 0 10px;
  margin-bottom: 0;
}
#navMainSearch1 { background: var(--mv-slate-2); }
/* tlacitko hledani ma v sablone inline width:60px, text "Search" se orezaval */
#navMainSearch input[type=submit], #navMainSearch1 input[type=submit], #menu-search input[type=submit] {
  width: auto !important;
  min-width: 60px;
  padding: 0 14px;
  height: 34px;
  white-space: nowrap;
}
#navMainSearch1 input[type=text] { width: calc(100% - 110px) !important; max-width: 420px; }

/* ---------- lista kategorii (EZ stranky) a paticka ---------- */
#navEZPagesTop { background: var(--mv-accent); }
#navEZPagesTop li { border-left: 1px solid rgba(255, 255, 255, .22); }
#navEZPagesTop ul li:last-child { border-right: 1px solid rgba(255, 255, 255, .22); }
#navEZPagesTop li a { color: #fff; text-decoration: none; font-weight: 600; padding: 1em 1.2em; }
#navEZPagesTop li a:hover { background: var(--mv-accent-dark); color: #fff; text-decoration: none; }

#navSuppWrapper { background: var(--mv-slate); }
#navSupp li { border-left: 1px solid rgba(255, 255, 255, .15); }
#navSupp ul li:last-child { border-right: 1px solid rgba(255, 255, 255, .15); }
#navSupp li a { color: #cccccc; text-decoration: none; }
#navSupp li a:hover { color: #fff; text-decoration: none; }
#siteinfoIP { display: none; }
#siteinfoLegal, #bannerSix { background: #1a1a1a; border: 0; color: #a3a3a3; }
#siteinfoLegal a { color: #cccccc; text-decoration: none; }
#siteinfoLegal a:hover { color: #fff; text-decoration: underline; }

/* ---------- postranni boxy ---------- */
.leftBoxContainer, .rightBoxContainer {
  background: var(--mv-card);
  border: 1px solid var(--mv-line);
  border-radius: var(--mv-radius);
  box-shadow: var(--mv-shadow);
  margin-bottom: 14px;
  overflow: hidden;
}
.leftBoxHeading, .rightBoxHeading, .centerBoxHeading { background: var(--mv-slate); }
h3.leftBoxHeading, h3.rightBoxHeading, h2.centerBoxHeading {
  font-size: 1.05em;
  font-weight: 600;
  letter-spacing: .02em;
  padding: .85em 1em;
}
h3.leftBoxHeading, h3.rightBoxHeading { text-align: left; }
.sideBoxContent a { text-decoration: none; }
.sideBoxContent a:hover { text-decoration: underline; }
#cartBoxListWrapper li, .orderHistList li, ul.list-links li { border-bottom: 1px solid #eeeeee; }
ul.list-links li:hover, ol.list-links li:hover { background: var(--mv-accent-soft); }
ul.list-links li a, ol.list-links li a { padding: 9px 10px; }

/* ---------- formulare a tlacitka ---------- */
input[type=text], input[type=password], input[type=email], input[type=tel], input[type=search], input[type=number], textarea, select {
  border: 1px solid #cccccc;
  border-radius: 8px;
  background: #fff;
  color: var(--mv-ink);
}
input[type=text], input[type=password], input[type=email], input[type=tel], input[type=search], input[type=number], select {
  height: 38px;
  padding: 0 10px;
}
input[type=radio], input[type=checkbox] { border-radius: 0; }
input:focus, select:focus, textarea:focus {
  background: #fff;
  border-color: var(--mv-accent);
  outline: 2px solid rgba(0, 0, 0, .25);
  outline-offset: 1px;
}
input[type=submit], input[type=button], input.submit_button, input.cssButton, button {
  background: var(--mv-accent);
  color: #fff;
  border: 0;
  border-radius: 8px;
  height: 38px;
  padding: 0 18px;
  font-weight: 600;
  cursor: pointer;
}
input[type=submit]:hover, input[type=button]:hover, input.submit_button:hover, input.cssButtonHover, button:hover {
  background: var(--mv-accent-dark);
}
span.normal_button, span.cssButton.normal_button.button, span.cssButton.normal_button.button.button_goto_prod_details {
  background: var(--mv-accent);
  border-radius: 8px;
  font-weight: 600;
}
span.normal_button:hover, span.cssButton.normal_button.button:hover,
span.cssButton.normal_button.button.button_goto_prod_details:hover,
.button_goto_prod_details:hover, .button_in_cart:hover {
  background: var(--mv-accent-dark) !important;
}

/* ---------- vypis produktu ---------- */
#filter-wrapper { background: var(--mv-slate-2); border-radius: var(--mv-radius) var(--mv-radius) 0 0; }
#filter-wrapper select { background: #fff; }
.prod-list-wrap { background: #555555; border-radius: 0 0 var(--mv-radius) var(--mv-radius); }
.pagination li { border-left: 0; margin: 0 2px; }
.pagination li a, .navSplitPagesLinks a { background: var(--mv-slate-2); border-radius: 6px; text-decoration: none; }
.pagination li a:hover, .navSplitPagesLinks a:hover { background: var(--mv-accent); color: #fff; }
.pagination li.current, .pagination .current { background: var(--mv-accent); border-radius: 6px; }

.productListing-odd, .productListing-even {
  background: #fff;
  border: 1px solid var(--mv-line);
  border-radius: var(--mv-radius);
  box-shadow: var(--mv-shadow);
  margin: 12px 0 0;
}
.productListing-odd:hover, .productListing-even:hover { background: #fff; border-color: #bbbbbb; }
.itemTitle { font-weight: 600; }
.itemTitle a, .itemTitle a:visited { color: var(--mv-slate); text-decoration: none; }
.itemTitle a:hover { color: var(--mv-accent); text-decoration: none; }
.list-price { color: var(--mv-slate); }
.list-price .productBasePrice, .productBasePrice { font-weight: 700; color: var(--mv-slate); }
.centerBoxContentsListing:hover, .centerBoxContents:hover,
.categoryListBoxContents:hover, .centerBoxContentsFeaturedCategories:hover, .centerBoxContentsFeatured:hover,
.centerBoxContentsNew:hover, .centerBoxContentsSpecials:hover, .specialsListBoxContents:hover {
  background: #fff;
  box-shadow: var(--mv-shadow);
}

/* ---------- detail produktu ---------- */
.image-grid img { border: 1px solid var(--mv-line); box-shadow: none; border-radius: 8px; }
#cart-box { background: var(--mv-accent-soft); border-radius: var(--mv-radius); }

/* ---------- uvodni stranka ---------- */
.mvHero {
  background: linear-gradient(135deg, var(--mv-accent-soft), #fff);
  border: 1px solid var(--mv-line);
  border-radius: 14px;
  padding: 22px 24px;
  margin: 0 0 18px;
}
.mvHero p { margin: 0; font-size: 1.15em; color: #555555; }
.mvLayoutSwitch { margin: 14px 0 0; font-size: .95em; color: var(--mv-muted); }
.mvLayoutSwitch a {
  display: inline-block;
  padding: 4px 14px;
  margin: 0 6px 6px 0;
  border: 1px solid var(--mv-line);
  border-radius: 999px;
  background: #fff;
  text-decoration: none;
}
.mvLayoutSwitch a:hover { border-color: var(--mv-accent); text-decoration: none; }

/* ---------- mobil a tablet ---------- */
@media (max-width: 767px) {
  body { font-size: 100%; }
  #logo { text-align: center; padding: 16px 12px; }
  #logo a.mvLogo, #logo a.mvLogo:visited { font-size: 1.7rem; }
  #navMainWrapper { padding: 0; }
  #navMain ul li a { padding: 0 .9em; }
  #navEZPagesTop li a, #navSupp li a { padding: 1em 1em; }
  .productListing-odd, .productListing-even { margin: 10px 0 0; padding: 14px; }
  input[type=submit], input[type=button], input.submit_button, input.cssButton, button { height: 42px; }
  input[type=text], input[type=password], input[type=email], input[type=tel], input[type=search], input[type=number], select { height: 42px; }
  .mvHero { padding: 16px 16px; }
}

/* ---------- zbytky barev z puvodni sablony a bannerů: vse v sedi ---------- */
.sideBoxContent optgroup { color: var(--mv-muted); }
#bannerboxContent a[style*="color"] { color: var(--mv-accent) !important; }
