/**
 * Purple Lion theme override for responsive_classic
 * Clean purple look with softer cards and rounded corners.
 *
 * Drop into: includes/templates/responsive_classic/css/
 */

:root {
  --pl-purple: #7a43c5;
  --pl-purple-dark: #5c2fa3;
  --pl-purple-soft: #f4effc;
  --pl-purple-soft-2: #efe8fb;
  --pl-ink: #332c42;
  --pl-muted: #6f6780;
  --pl-border: #e7def4;
  --pl-shadow: 0 14px 34px rgba(66, 32, 106, 0.08);
  --pl-shadow-hover: 0 18px 42px rgba(66, 32, 106, 0.14);
}

body {
  background: #f6f4f9;
  color: var(--pl-ink);
}

body,
input,
select,
textarea,
button {
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.onerow-fluid {
  width: 94% !important;
  max-width: 1480px;
}

#mainWrapper,
#contentMainWrapper,
#headerWrapper {
  background: transparent;
}

/* Links */
a:link,
a:visited,
#navEZPagesTOC ul li a,
.itemTitle a,
h1,
.header {
  color: var(--pl-purple-dark);
}

a:hover,
.itemTitle a:hover,
h2.greeting a:hover,
.categoryListBoxContents a:hover,
.categoryListBoxContents:hover a {
  color: var(--pl-purple);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--pl-ink);
}

/* Global cards */
#navBreadCrumb,
#filter-wrapper,
.prod-list-wrap,
#no-products,
fieldset,
#accountLinksWrapper,
#sendSpendWrapper,
#reviews-write-wrapper,
#gvFaqDefaultContent,
#checkoutPayAddressDefault .instructions,
#checkoutShipAddressDefault .instructions,
#addressBookDefault .instructions,
#myAccountNotify,
#myAccountGen,
.reviews-wrapper,
#accountHistInfo table td,
#prevOrders td,
#myAccountPaymentInfo,
#myAccountShipInfo,
.productListing-even,
.productListing-odd,
.listing-wrapper,
.centerBoxContents,
.specialsListBoxContents,
.categoryListBoxContents,
.centerBoxContentsSpecials,
.centerBoxContentsFeaturedCategories,
.centerBoxContentsAlsoPurch,
.centerBoxContentsFeatured,
.centerBoxContentsNew,
.rowEven,
.rowOdd,
.sideBoxContent,
.rightBoxContent {
  background: #ffffff;
  border: 1px solid var(--pl-border);
  border-radius: 18px;
  box-shadow: var(--pl-shadow);
  min-height: 150px;
}

.centerBoxContentsListing:hover,
.centerBoxContents:hover,
.categoryListBoxContents:hover,
.centerBoxContentsFeaturedCategories:hover,
.centerBoxContentsFeatured:hover,
.centerBoxContentsNew:hover,
.centerBoxContentsSpecials:hover,
.specialsListBoxContents:hover,
.productListing-even:hover,
.productListing-odd:hover,
.listing-wrapper:hover {
  background: #ffffff;
  box-shadow: var(--pl-shadow-hover);
  transform: translateY(-2px);
}

/* Header top bar */
#navMainWrapper {
  background: linear-gradient(90deg, #2f2938 0%, #3c334a 100%);
  border-bottom: 1px solid rgba(255,255,255,0.07);
  border-radius: 0 0 18px 18px;
  margin-top: 10px;
}

#navMain ul li {
  border-right: 1px solid rgba(255,255,255,0.22);
}

#navMain ul li a,
#navSupp li a,
#navEZPagesTop li a,
#siteinfoLegal,
#siteinfoIP,
#bannerSix,
.fa-bars {
  color: #ffffff;
}

#navMain ul li a {
  text-decoration: none;
}

#navMain ul li a:hover,
#navSupp ul li a:hover {
  color: #dcc9ff;
}

#navMain ul li a.navCartContentsIndicator {
  color: #ffffff;
  background: linear-gradient(135deg, var(--pl-purple) 0%, #9a68e9 100%);
  font-weight: bold;
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(90, 49, 157, 0.28);
}

#navMain ul li a.navCartContentsIndicator:hover {
  color: #ffffff;
  background: linear-gradient(135deg, var(--pl-purple-dark) 0%, var(--pl-purple) 100%);
}

/* Search */
#navMainSearch input[type=text],
#navMainSearch1 input[type=text],
input,
select,
textarea {
  border: 1px solid #d9cfee;
  border-radius: 12px;
  background: #ffffff;
  color: var(--pl-ink);
  box-sizing: border-box;
}

input,
select,
textarea {
  box-shadow: inset 0 1px 2px rgba(31, 20, 50, 0.04);
}

#navMainSearch input[type=text],
#navMainSearch1 input[type=text] {
  border-radius: 999px 0 0 999px;
  padding-left: 14px;
}

#navMainSearch input[type=submit],
#navMainSearch1 input[type=submit],
input.submit_button,
input.cssButtonHover,
span.normal_button,
.list-more,
span.cssButton.normal_button.button.button_goto_prod_details,
span.cssButton.normal_button.button.button_in_cart,
span.cssButton.normal_button.button.button_more_reviews,
span.cssButton.normal_button.button.button_read_reviews,
span.cssButton.normal_button.button.button_write_review,
span.cssButton.normal_button.button.button_checkout,
span.cssButton.normal_button.button.button_continue_shopping,
span.cssButton.normal_button.button.button_shipping_estimator,
span.cssButton.normal_button.button.button_back,
span.cssButton.normal_button.button.button_logoff,
span.cssButton.normal_button.button.small_edit {
  background: linear-gradient(135deg, var(--pl-purple) 0%, #8f60df 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(90, 49, 157, 0.22);
  margin-left:20px !important;
}

#cartAdd input[type=submit] {
    /*border-style: solid !important;
	border-color: white !important;*/
}

#navMainSearch input[type=submit],
#navMainSearch1 input[type=submit] {
  border-radius: 0 999px 999px 0;
  padding: 0 18px !important;
}

.list-more:hover,
input.submit_button:hover,
input.cssButtonHover:hover,
.button_goto_prod_details:hover,
.button_in_cart:hover,
.button_more_reviews:hover,
.button_read_reviews:hover,
.button_write_review:hover,
.button_checkout:hover,
.button_continue_shopping:hover,
.button_shipping_estimator:hover,
.button_back:hover,
.button_logoff:hover,
#navMainSearch input[type=submit]:hover,
#navMainSearch1 input[type=submit]:hover,
span.normal_button:hover {
  background: linear-gradient(135deg, var(--pl-purple-dark) 0%, var(--pl-purple) 100%) !important;
  color: #ffffff !important;
}

/* Logo area */
#logoWrapper {
  background: linear-gradient(135deg, #f8f5fd 0%, #ffffff 62%);
  border: 1px solid var(--pl-border);
  border-radius: 22px;
  box-shadow: var(--pl-shadow);
  margin: 18px auto 0;
  padding: 22px 26px;
}

#logo {
  display: flex;
  align-items: center;
  gap: 26px;
  margin: 0;
}

#logo img {
  height: auto;
  max-width: 180px;
  filter: drop-shadow(0 8px 18px rgba(66, 32, 106, 0.08));
}

#taglineWrapper {
  flex: 1;
}

#tagline {
  color: var(--pl-muted);
  font-size: 1.55em;
  font-weight: 600;
  text-align: left;
  margin: 10px 0 0 0;
}

/* Category tabs */
#navCatTabsWrapper,
#navEZPagesTop,
#navSuppWrapper {
  background: transparent;
}

#navCatTabs ul,
#navEZPagesTop ul,
#navSupp ul {
  width: 94%;
  max-width: 1480px;
  margin: 14px auto 0;
  background: #ffffff;
  border: 1px solid var(--pl-border);
  border-radius: 18px;
  box-shadow: var(--pl-shadow);
}

#navCatTabs li,
#navEZPagesTop li,
#navSupp li,
.pagination li {
  border-left: none !important;
  border-right: none !important;
}

#navCatTabs li a,
#navEZPagesTop li a,
#navSupp li a,
.pagination li a,
.pagination .current {
  text-decoration: none;
  border-radius: 12px;
  margin: 6px;
  background-color: #7e48ca;
}
}

#navCatTabs li a {
  color: var(--pl-ink);
}

#navCatTabs li a:hover,
#navCatTabs li:hover,
#navEZPagesTop li a:hover,
#navSupp li a:hover,
.pagination li a:hover {
  background: var(--pl-purple-soft);
  color: var(--pl-purple-dark);
}

.category-subs-selected
 {
    font-weight: bold;
	font-size: .95rem !important;
}

.current {
  background: linear-gradient(135deg, var(--pl-purple) 0%, #8f60df 100%) !important;
  color: #ffffff !important;
}

/* Breadcrumbs and filters */
#navBreadCrumb {
  margin: 0 0 16px 0;
  padding: 14px 18px;
}

#navBreadCrumb a {
  text-decoration: none;
}

#filter-wrapper {
  background: #ffffff;
  color: var(--pl-ink);
  margin-bottom: 16px;
  padding: 16px 18px;
}

#filter-wrapper select {
  width: 25%;
  height: 40px;
  background: #fcfbff;
}

.prod-list-wrap {
  color: var(--pl-ink);
  background: #ffffff;
  height: auto;
  min-height: 40px;
}

.navSplitPagesLinks a,
.pagination li a {
  background: #f6f1fe;
  color: var(--pl-purple-dark) !important;
}

/* Sideboxes */
.leftBoxHeading,
.rightBoxHeading,
.centerBoxHeading,
h2.centerBoxHeading,
h3.rightBoxHeading,
h3.leftBoxHeading,
h3.rightBoxHeading a,
h3.leftBoxHeading a {
  background: linear-gradient(135deg, var(--pl-purple) 0%, #8f60df 100%);
  color: #ffffff;
  border-radius: 16px 16px 0 0;
}

.rightBoxHeading,
.leftBoxHeading,
.centerBoxHeading {
  padding: 0.95em 0.8em;
}

.sideBoxContent,
.rightBoxContent {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  margin-bottom: 18px;
}

.sideBoxContent a {
  color: #5c5372;
  text-decoration: none;
}

.sideBoxContent a:hover {
  color: var(--pl-purple-dark);
}

#categoriesContent ul.list-links,
#informationContent ul.list-links,
#documentcategoriesContent ul.list-links {
  margin: 0;
  padding: 0;
}

#categoriesContent ul.list-links li,
#informationContent ul.list-links li,
#documentcategoriesContent ul.list-links li,
#cartBoxListWrapper li,
.orderHistList li,
ul.list-links li,
ol.list-links li {
  border-bottom: 1px solid #f0e9fa;
}

/* Product cards */
.itemTitle {
  width: 92%;
  margin: 8px auto;
  font-size: 1.4em;
  line-height: 1.35;
}

.itemTitle a {
  text-decoration: none;
}

.list-image {
  min-height: 190px;
}

.listingProductImage,
.list-image img,
.centerBoxContents img,
.specialsListBoxContents img,
.categoryListBoxContents img {
  border-radius: 14px;
}

.listingDescription {
  width: 88%;
  margin: 10px auto 14px;
  color: var(--pl-muted);
  line-height: 1.55;
}

.list-price,
.productSpecialPrice,
.productSalePrice,
.productSpecialPriceSale,
.productPriceDiscount {
  color: var(--pl-purple-dark);
  font-weight: 700;
}

.list-price {
  font-size: 1.6em;
  margin: 14px 0 12px;
}

.productListing-even,
.productListing-odd,
.listing-wrapper,
.centerBoxContents,
.specialsListBoxContents,
.categoryListBoxContents,
.centerBoxContentsSpecials,
.centerBoxContentsFeaturedCategories,
.centerBoxContentsAlsoPurch,
.centerBoxContentsFeatured,
.centerBoxContentsNew {
  padding: 20px;
}

.gridlayout .list-more,
#productListing .gridlayout .list-more,
#indexCategories .gridlayout .list-more {
  width: auto;
  margin: 12px auto 0;
  padding: 10px 18px;
}

/* Footer */
#navSuppWrapper,
#siteinfoIP,
#siteinfoLegal,
#bannerSix {
  background: linear-gradient(90deg, #2f2938 0%, #3c334a 100%);
}

#siteinfoIP,
#siteinfoLegal,
#bannerSix {
  border: none;
}

#siteinfoLegal a {
  color: #ffffff;
}

/* Misc accents */
legend,
#cart-box,
.tableHeading,
TR.tableHeading,
#reviewsWriteHeading,
#shippingEstimatorContent h2,
#shippingEstimatorContent th,
#checkoutConfirmDefault .cartTableHeading,
#accountLinksWrapper h2,
h2#addressBookDefaultPrimary,
#myAccountPaymentInfo h3,
#myAccountShipInfo h3,
#myAccountPaymentInfo h4,
#myAccountShipInfo h4 {
  /*background: linear-gradient(135deg, var(--pl-purple) 0%, #9782bbb0 5%);*/
  color: #ffffff;
  border-radius: 22px;
}

.messageStackWarning,
.messageStackError {
  background-color: #8d2d56;
}

.messageStackSuccess {
  background-color: #e9fbef;
  color: #22663a;
}

/* Responsive fine-tuning */
@media only screen and (max-width: 991px) {
  #logoWrapper {
    padding: 18px;
  }

  #logo {
    display: block;
    text-align: center;
  }

  #tagline {
    text-align: center;
  }

  #navCatTabs ul,
  #navEZPagesTop ul,
  #navSupp ul {
    width: 96%;
  }

  #filter-wrapper select {
    width: 31%;
  }
}

@media only screen and (max-width: 767px) {
  #logoWrapper {
    border-radius: 18px;
  }

  #navMainWrapper {
    border-radius: 0 0 14px 14px;
  }

  #navMainSearch1 {
    margin: 10px auto 0;
    width: 94%;
  }

  #navMainSearch1 input[type=text] {
    width: calc(100% - 108px) !important;
  }

  #filter-wrapper select {
    width: 100%;
    margin-top: 10px;
  }

  .itemTitle,
  .listingDescription {
    width: 100%;
  }

  .prod-list-wrap,
  .productListing-even,
  .productListing-odd,
  .listing-wrapper,
  .centerBoxContents,
  .specialsListBoxContents,
  .categoryListBoxContents,
  .centerBoxContentsSpecials,
  .centerBoxContentsFeaturedCategories,
  .centerBoxContentsAlsoPurch,
  .centerBoxContentsFeatured,
  .centerBoxContentsNew,
  .sideBoxContent,
  .rightBoxContent {
    border-radius: 14px;
  }
}


/* ============================================================
   Purple Lion v2 spacing/width tuning
   ============================================================ */

/* Sjednocené šířky hlavních bloků */
.onerow-fluid,
#navCatTabs ul,
#navEZPagesTop ul,
#navSupp ul {
  width: 92% !important;
  max-width: 1320px;
}

/* Horní tmavá lišta a logo: stejné odsazení, žádné zbytečné natažení */
#navMainWrapper {
  width: 92% !important;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding: 6px 18px;
  box-sizing: border-box;
}

#navMain {
  width: 100%;
}

#navMain ul {
  width: 52%;
  padding: 0.35em 0;
}

#navMainSearch {
  width: 42%;
}

#navMainSearch input[type=text] {
  width: 72% !important;
}

#navMainSearch input[type=submit] {
  min-width: 110px;
}

/* Logo box trochu kompaktnější */
#logoWrapper {
  box-sizing: border-box;
  min-height: 126px;
  margin-top: 0;
  padding: 22px 34px;
}

#logo {
  gap: 34px;
}

#logo img {
  max-width: 150px;
}

#tagline {
  margin-top: 0;
}

/* Kategorie v horní liště: nižší a čistší */
#navCatTabs ul,
#navEZPagesTop ul {
  box-sizing: border-box;
  margin-top: 14px;
  padding: 7px 10px;
}

#navCatTabs li a,
#navEZPagesTop li a {
  padding: 0.65em 1.0em;
  margin: 2px 4px;
}

/* Hlavní layout: lepší odsazení mezi levým menu a obsahem */
#contentMainWrapper {
  width: 92%;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
}

#navColumnOne {
  padding-right: 18px;
  box-sizing: border-box;
}

#navColumnOneWrapper {
  padding-right: 0;
}

#contentColumnMain {
  padding-left: 6px;
  box-sizing: border-box;
}

/* Breadcrumb/filtr/listing: držet se na šířce obsahu a neroztahovat zbytečně */
#navBreadCrumb,
#filter-wrapper,
.prod-list-wrap {
  box-sizing: border-box;
  margin-left: 0;
  margin-right: 0;
}

.centerColumn {
  padding: 0.6em 0.4em 0.8em 0.4em;
}

.centerColumn h1 {
  margin-top: 22px;
  margin-bottom: 26px;
}

/* Filtr: více vzduchu, ale ne obří mezery */
#filter-wrapper {
  display: block;
  padding: 14px 18px;
  margin-bottom: 14px;
}

#filter-wrapper select {
  width: 28%;
  max-width: 270px;
  margin-right: 22px;
}

/* Stránkování: kompaktnější a zarovnanější */
.prod-list-wrap {
  min-height: 58px;
  padding: 13px 16px;
  margin-bottom: 20px;
}

#productsListingListingTopLinks,
#productsListingListingBottomLinks,
#allProductsListingTopLinks,
#allProductsListingBottomLinks,
#featuredProductsListingTopLinks,
#featuredProductsListingBottomLinks,
#newProductsDefaultListingTopLinks,
#newProductsDefaultListingBottomLinks {
  width: 48%;
  margin-left: 24%;
}

#productsListingTopNumber,
#productsListingBottomNumber,
#allProductsListingTopNumber,
#allProductsListingBottomNumber {
  width: 24%;
  margin-left: -72%;
  text-align: left;
}

/* Produktové karty: menší rozlití, hezčí mezery */
#productListing {
  margin-top: 0;
}

.centerBoxContents,
.specialsListBoxContents,
.categoryListBoxContents,
.centerBoxContentsSpecials,
.centerBoxContentsFeaturedCategories,
.centerBoxContentsAlsoPurch,
.centerBoxContentsFeatured,
.centerBoxContentsNew {
  box-sizing: border-box;
}

.gridlayout.centerBoxContentsProducts,
.gridlayout.categoryListBoxContents,
.centerBoxContentsListing,
.centerBoxContents {
  padding: 18px 3px;
  
      border: 1px solid var(--pl-border);
    border-radius: 18px;
    box-shadow: var(--pl-shadow);
}

.gridlayout .list-image {
  margin-bottom: 10px;
}

.gridlayout .itemTitle {
  width: 94%;
  min-height: 58px;
  margin-top: 8px;
  margin-bottom: 8px;
}

.gridlayout .listingDescription {
  min-height: 58px;
  width: 92%;
  margin-top: 8px;
  margin-bottom: 12px;
}

.gridlayout .list-price {
  margin-top: 10px;
  margin-bottom: 10px;
}

#productListing .gridlayout .list-more,
#indexCategories .gridlayout .list-more,
.gridlayout .list-more {
  width: 82%;
  max-width: 270px;
  padding: 9px 16px;
  margin-bottom: 10px;
}

/* Levé boxy: lépe navázat na obsah */
.leftBoxContainer,
.rightBoxContainer {
  margin-bottom: 16px;
}

.sideBoxContent {
  padding: 0.75em 1.0em;
}

.sideBoxContent a {
  padding: 0.38em 0;
}

/* Footer nechat zarovnaný s celým layoutem */
#navSuppWrapper {
  margin-top: 22px;
}

/* Desktop s větší obrazovkou */
@media only screen and (min-width: 1200px) {
  .onerow-fluid,
  #navMainWrapper,
  #contentMainWrapper,
  #navCatTabs ul,
  #navEZPagesTop ul,
  #navSupp ul {
    width: 90% !important;
    max-width: 1380px;
  }

  #logoWrapper {
    min-height: 132px;
  }
}

/* Tablet a menší notebooky */
@media only screen and (max-width: 1199px) {
  .onerow-fluid,
  #navMainWrapper,
  #contentMainWrapper,
  #navCatTabs ul,
  #navEZPagesTop ul,
  #navSupp ul {
    width: 94% !important;
  }

  #navMainSearch {
    width: 45%;
  }

  #navMain ul {
    width: 50%;
  }

  #filter-wrapper select {
    width: 31%;
    max-width: none;
  }
}

/* Mobil */
@media only screen and (max-width: 767px) {
  .onerow-fluid,
  #navMainWrapper,
  #contentMainWrapper,
  #navCatTabs ul,
  #navEZPagesTop ul,
  #navSupp ul {
    width: 96% !important;
  }

  #navMainWrapper {
    padding: 8px 12px;
  }

  #logoWrapper {
    min-height: 0;
    padding: 18px;
  }

  #logo img {
    max-width: 125px;
  }

  #contentColumnMain {
    padding-left: 0;
  }

  #filter-wrapper {
    padding: 14px;
  }

  #filter-wrapper select {
    width: 100%;
    max-width: none;
    margin-right: 0;
  }

  .prod-list-wrap {
    padding: 12px;
  }

  #productsListingListingTopLinks,
  #productsListingListingBottomLinks,
  #allProductsListingTopLinks,
  #allProductsListingBottomLinks,
  #featuredProductsListingTopLinks,
  #featuredProductsListingBottomLinks,
  #newProductsDefaultListingTopLinks,
  #newProductsDefaultListingBottomLinks,
  #productsListingTopNumber,
  #productsListingBottomNumber,
  #allProductsListingTopNumber,
  #allProductsListingBottomNumber {
    width: 100%;
    margin-left: 0;
    text-align: center;
  }

  #productListing .gridlayout .list-more,
  #indexCategories .gridlayout .list-more,
  .gridlayout .list-more {
    width: 90%;
  }
}

.leftBoxContainer, .rightBoxContainer {
    /*width: auto !important;*/
    margin-top: 20px;
}

#navBreadCrumb{
	margin-top: 20px;
}

.pagination {
    width: 110%;
}

.sideBoxContent optgroup {color: #8d5ddd;}

.attribBlock {
    line-height: 160% !important;
	color: black;
	font-size:16px
}

#productAttributes .attribRow {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    column-gap: 15px;
    align-items: start;
    text-align: left;
}

#productAttributes .attribNameCol,
#productAttributes .attribValueCol {
    text-align: left;
}

#productAttributes .attribNameCol .optionName {
    margin: 0;
    padding: 0;
    text-align: left;
}

#productAttributes .attribValueCol select,
#productAttributes .attribValueCol input,
#productAttributes .attribValueCol label {
    text-align: left;
}

/* kdyby starší CSS šablony nutilo float přes třídu back */
#productAttributes .attribRow .back {
    float: none;
}

/* mobil - atributy pod sebe */
@media (max-width: 600px) {
    #productAttributes .attribRow {
        grid-template-columns: 1fr;
        row-gap: 5px;
    }
}

#productPrices {
    font-size: 1.9em;
    text-align: center;
    margin: 20px 0 30px 0;
    font-weight: normal;
}

@media (min-width: 0px) and (max-width: 480px) {
    #pinfo-right {
		width: 100% !important;
    }
}

@media (min-width: 0px) and (max-width: 480px) {
    #cart-box {
        width: 100%;
     }
}

.mm-menu {
    width: 90%;
    min-width: 140px;
    max-width: 500px;
}