/* =========================================================
   Gerbrich dýhy - stránka krájených dýh
   ========================================================= */

.gerbrich-dyhy-page {
  padding: 60px 0;
}

.gerbrich-dyhy-hero {
  margin-bottom: 40px;
}

.gerbrich-dyhy-hero h1 {
  margin: 0;
}

.gerbrich-dyhy-offer-box {
  padding: 60px 30px;
  background: #F2F2F2;
}

.gerbrich-dyhy-offer-head {
  margin-bottom: 32px;
}

.gerbrich-dyhy-offer-head h2 {
  margin: 0 0 18px;
}

.gerbrich-dyhy-offer-line {
  width: 100%;
  height: 2px;
  background: currentColor;
  opacity: 1;
}

/* =========================================================
   Gerbrich dýhy - filter
   Desktop: textové filtre v jednom riadku, space-between.
   Mobil: select dropdowny.
   ========================================================= */

.gerbrich-filter-desktop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 40px;
}

.gerbrich-filter-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
}

.gerbrich-filter-group:first-child {
  justify-content: flex-start;
}

.gerbrich-filter-group:nth-child(2) {
  justify-content: center;
}

.gerbrich-filter-group:last-child {
  justify-content: flex-end;
}

.gerbrich-filter-group a {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  color: inherit;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.3;
  white-space: nowrap;
}

.gerbrich-filter-group a span {
  color: rgba(0, 0, 0, 0.45);
  font-size: 13px;
}

.gerbrich-filter-mobile {
  display: none;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-bottom: 40px;
}

.gerbrich-filter-mobile select {
  width: 100%;
  height: 46px;
  padding: 8px 38px 8px 14px;
  border: 1px solid #d8d2c8;
  background: #fff;
  color: inherit;
  font-size: 15px;
  border-radius: 0;
}

.gerbrich-dyhy-results {
  transition: opacity 0.2s ease;
}

.gerbrich-dyhy-results.is-loading {
  opacity: 0.45;
  pointer-events: none;
}

/* =========================================================
   Gerbrich dýhy - grid produktov
   ========================================================= */

.gerbrich-dyhy-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.gerbrich-dyha-card {
  background: #fff;
  overflow: hidden;
}

.gerbrich-dyha-card-image {
  position: relative;
  aspect-ratio: 4 / 3;
  background: #f5f2ec;
  overflow: hidden;
}

.gerbrich-dyha-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gerbrich-dyha-stock-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border-radius: 2px;
  background: #fff;
  color: #1f1f1f;
  font-size: 13px;
  line-height: 1;
}

.gerbrich-dyha-stock-badge.is-order {
  background: #000;
  color: #fff;
}

.gerbrich-dyha-no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #777;
  font-size: 14px;
}

.gerbrich-dyha-card-content {
  padding: 18px 0 0;
}

.gerbrich-dyha-title {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.2;
}

.gerbrich-dyha-meta {
  margin-bottom: 18px;
  color: #777;
  font-size: 14px;
}

.gerbrich-dyha-thickness-list {
  display: grid;
  gap: 12px;
  margin-bottom: 18px;
}

.gerbrich-dyha-thickness-row {
  display: grid;
  gap: 5px;
}

.gerbrich-dyha-thickness-row label {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.gerbrich-dyha-thickness-row span:first-child {
  font-size: 14px;
}

.gerbrich-dyha-thickness-row small {
  padding-left: 80px;
  color: #777;
  font-size: 12px;
}

.gerbrich-unit-input {
  position: relative;
  display: block;
}

.gerbrich-unit-input input {
  width: 100%;
  height: 42px;
  padding: 8px 42px 8px 12px;
  border: 1px solid #d8d2c8;
  background: #fff;
  color: inherit;
  font-size: 15px;
  border-radius: 0;
}

.gerbrich-unit-input input:focus {
  outline: none;
  border-color: #1f1f1f;
}

.gerbrich-unit-input em {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  color: #777;
  font-size: 14px;
  font-style: normal;
  pointer-events: none;
}

.gerbrich-add-to-demand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 20px;
  border: 0;
  cursor: pointer;
}

/* =========================================================
   Gerbrich dýhy - mini košík v hlavičke
   ========================================================= */

.gerbrich-mini-demand-wrap {
  position: relative;
}

.gerbrich-mini-demand-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  @media (max-width: 1395px) { 
        padding: 5px;
  }
  @media (max-width: 600px) { 
        padding: 0px;
  }
}

.gerbrich-mini-demand-count::before {
  content: "";
}

.gerbrich-demand-panel {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 1000;
  display: none;
  width: 100%;
}

.gerbrich-demand-panel.is-open {
  display: block;
}

.gerbrich-demand-panel-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
  padding: 24px;
  margin: 0 auto;
  border-radius: 0px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  background-color: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.gerbrich-demand-panel-head {
  display: none;
}

.gerbrich-demand-empty {
  margin: 0;
}

.gerbrich-demand-list {
  display: grid;
  gap: 12px;
}

.gerbrich-demand-item {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
}

.gerbrich-demand-item-thumb {
  flex: 0 0 68px;
  width: 68px;
  height: 52px;
  background: #f2f2f2;
  overflow: hidden;
}

.gerbrich-demand-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gerbrich-demand-item-main {
  min-width: 150px;
}

.gerbrich-demand-item-category {
  color: #777;
  font-size: 12px;
}

.gerbrich-demand-item-title {
  font-size: 15px;
  line-height: 1.25;
}

.gerbrich-demand-item-params {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  color: #555;
  font-size: 13px;
  white-space: nowrap;
}

.gerbrich-demand-item-params span {
  display: inline;
}

.gerbrich-demand-item-params span:nth-child(2) {
  padding: 4px 7px;
  border-radius: 2px;
  background: #000;
  color: #fff;
}

.gerbrich-demand-qty {
  position: relative;
  flex: 0 0 110px;
  display: block;
}

.gerbrich-demand-qty input {
  width: 100%;
  height: 40px;
  padding: 8px 36px 8px 10px;
  border: 1px solid #d8d2c8;
  background: #fff;
}

.gerbrich-demand-qty em {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  color: #777;
  font-style: normal;
  font-size: 13px;
  pointer-events: none;
}

.gerbrich-demand-remove {
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
}

.gerbrich-demand-panel-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 4px;
}

.gerbrich-demand-form-view[hidden],
.gerbrich-demand-cart-view[hidden] {
  display: none !important;
}

.gerbrich-demand-form-view .kontakt-form-row {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 32px;
  align-items: start;
}

.gerbrich-demand-form-view .kontakt-form-row-left h2 {
  margin-top: 0;
}

.gerbrich-demand-form-view .gc-field {
  position: relative;
}

.gerbrich-demand-form-view .gc-field.full {
  grid-column: 1 / -1;
}

.gerbrich-demand-form-view .gc-field input,
.gerbrich-demand-form-view .gc-field textarea {
  width: 100%;
}

.gerbrich-demand-form-view .gc-field textarea {
  min-height: 120px;
}

.gerbrich-demand-form-actions {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.gerbrich-edit-demand {
  color: inherit;
  text-decoration: underline;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
}

/* =========================================================
   Responzivita
   ========================================================= */

@media (max-width: 1024px) {
  .gerbrich-dyhy-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gerbrich-filter-desktop {
    align-items: flex-start;
  }
}

@media (max-width: 767px) {
  .gerbrich-dyhy-page {
    padding: 40px 0;
  }

  .gerbrich-dyhy-offer-box {
    padding: 40px 18px;
  }

  .gerbrich-filter-desktop {
    display: none;
  }

  .gerbrich-filter-mobile {
    display: grid;
  }

  .gerbrich-dyhy-grid {
    grid-template-columns: 1fr;
  }

  .gerbrich-demand-panel {
    position: absolute;
  }

  .gerbrich-demand-panel-inner {
    padding: 18px;
  }

  .gerbrich-demand-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
  }

  .gerbrich-demand-item-thumb {
    width: 58px;
    height: 48px;
    flex-basis: 58px;
  }

  .gerbrich-demand-item-params {
    grid-column: 2 / -1;
    margin-left: 0;
    flex-wrap: wrap;
  }

  .gerbrich-demand-qty {
    grid-column: 2 / 3;
    width: 110px;
  }

  .gerbrich-demand-remove {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
  }

  .gerbrich-demand-form-view .kontakt-form-row {
    grid-template-columns: 1fr;
  }

  }


/* =========================================================
   Gerbrich dýhy - v0.7 produktová karta a sekce
   ========================================================= */

.gerbrich-dyhy-offer-box {
  border-radius: 20px;
  overflow: hidden;
}

.gerbrich-dyhy-offer-head h3 {
  margin: 0;
}

.gerbrich-dyhy-offer-line {
  background: #fff !important;
}

.gerbrich-dyhy-grid {
  gap: 20px;
}

.gerbrich-dyha-card {
  position: relative;
  background: transparent;
  overflow: visible;
}

.gerbrich-dyha-card-image {
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: 0;
}

.gerbrich-dyha-stock-badge,
.gerbrich-dyha-stock-badge.is-stock,
.gerbrich-dyha-stock-badge.is-order {
  min-height: 0;
  padding: 2px 6px 4px 6px;
  border-radius: 2px;
  background: #000;
  color: #fff;
  font-size: 13px;
  line-height: 1.15;
}

.gerbrich-dyha-card-content {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: -20px;
  padding: 24px;
  background: #fff;
  transition: transform 220ms ease, background-color 220ms ease, backdrop-filter 220ms ease, -webkit-backdrop-filter 220ms ease;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  transform: translateY(-118px);
  background-color: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.gerbrich-dyha-card-summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.gerbrich-dyha-preview-thicknesses {
  display: grid;
  gap: 6px;
  font-size: 15px;
  line-height: 1.2;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover {
  margin: 0;
  font-size: 22px;
  line-height: 1.15;
  font-weight: inherit;
}

.gerbrich-dyha-card-summary .gerbrich-dyha-title {
  margin-left: auto;
  text-align: right;
}

.gerbrich-dyha-card-hover {
  position: absolute;
  left: 24px;
  right: 24px;
  top: 24px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(16px);
  transition: opacity 180ms ease, transform 220ms ease;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-summary,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-summary {
  opacity: 0;
  pointer-events: none;
}

.gerbrich-dyha-title-hover {
  margin-bottom: 18px;
  text-align: right;
}

.gerbrich-dyha-thickness-list {
  display: grid;
  gap: 10px;
  margin: 0 0 18px;
}

.gerbrich-dyha-thickness-row {
  display: block;
}

.gerbrich-dyha-thickness-row label {
  display: grid;
  grid-template-columns: auto 150px;
  align-items: center;
  gap: 20px;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  font-size: 15px;
  line-height: 1.2;
}

.gerbrich-unit-input {
  width: 150px;
  margin-left: auto;
}

.gerbrich-unit-input input {
  height: 40px;
  padding-right: 38px;
}

.gerbrich-add-to-demand {
  margin-left: auto;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand {
  display: flex;
  width: fit-content;
}

.gerbrich-dyha-meta,
.gerbrich-dyha-thickness-row small {
  display: none !important;
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-content {
    margin-top: -20px;
    padding: 20px;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    transform: none;
  }

  .gerbrich-dyha-card-summary {
    display: none;
  }

  .gerbrich-dyha-card-hover {
    position: static;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }

  .gerbrich-dyha-title-hover {
    text-align: left;
  }

  .gerbrich-dyha-thickness-row label {
    grid-template-columns: auto minmax(120px, 150px);
  }
}


/* =========================================================
   Gerbrich dýhy - v0.9 úpravy podľa zadania
   ========================================================= */

.gerbrich-dyhy-offer-head h3 {
  padding-bottom: 15px;
}

.gerbrich-filter-group a span {
  color: #000;
  opacity: 0.25;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover {
  font-size: 20px !important;
  line-height: 29px !important;
  font-weight: 900 !important;
  color: #000 !important;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  width: 60px;
  min-width: 60px;
  text-align: right;
}

.gerbrich-dyha-card-content {
  margin-top: 0 !important;
}

.gerbrich-dyha-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: transparent;
}

.gerbrich-dyha-card-image {
  flex: 0 0 auto;
}

.gerbrich-dyha-card-content {
  flex: 0 0 auto;
  min-height: 146px;
  display: flex;
  align-items: flex-end;
  padding: 24px !important;
  background: #fff;
  transform-origin: bottom center;
}

.gerbrich-dyha-card-summary {
  width: 100%;
}

.gerbrich-dyha-card-hover {
  left: 24px !important;
  right: 24px !important;
  top: auto !important;
  bottom: 24px !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  transform: translateY(-118px);
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px) brightness(1.15);
  -webkit-backdrop-filter: blur(30px) brightness(1.15);
}

.gerbrich-dyha-title-hover {
  margin-bottom: 14px !important;
  text-align: right;
}

.gerbrich-dyha-thickness-list {
  gap: 8px !important;
  margin-bottom: 14px !important;
}

.gerbrich-dyha-thickness-row label {
  grid-template-columns: 60px 153px !important;
  justify-content: end;
  gap: 16px !important;
}

.gerbrich-unit-input {
  width: 153px !important;
}

.gerbrich-unit-input input {
  width: 153px !important;
  height: 40px;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand {
  width: 153px !important;
  min-height: 40px;
  margin-left: auto !important;
}

.gerbrich-add-to-demand.btn-black-bordered {
  border: 1px solid #000;
  border-radius: 5px;
}

@media (max-width: 767px) {
  .gerbrich-filter-mobile select {
    border: 1px solid #000 !important;
    border-radius: 5px !important;
    appearance: none;
    -webkit-appearance: none;
    background-color: #fff;
    background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg');
    background-repeat: no-repeat;
    background-size: 11px 12px;
    background-position: calc(100% - 15px) center;
  }

  .gerbrich-dyha-card {
    overflow: visible;
  }

  .gerbrich-dyha-card-content {
    min-height: 0;
    display: block;
    margin-top: 0 !important;
    padding: 22px !important;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(30px) brightness(1.15);
    -webkit-backdrop-filter: blur(30px) brightness(1.15);
    transform: none !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  .gerbrich-dyha-title-hover {
    text-align: left;
  }

  .gerbrich-dyha-thickness-row label {
    grid-template-columns: 60px 153px !important;
    justify-content: space-between;
  }
}


/* =========================================================
   Gerbrich dýhy - v1.0 custom mobile dropdown + finálne úpravy
   ========================================================= */

.gerbrich-dyhy-offer-head h3 {
  padding-bottom: 15px;
}

.gerbrich-filter-group a span,
.gerbrich-custom-dropdown-current-count,
.gerbrich-custom-dropdown-option span:last-child {
  color: #000;
  opacity: 0.25;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover,
.gerbrich-dyha-title.font-chambers,
.gerbrich-dyha-title-hover.font-chambers {
  font-size: 20px;
  line-height: 29px;
  font-weight: 900;
  color: #000;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  width: 60px;
  text-align: right;
}

.gerbrich-dyha-card-content {
  margin-top: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px) brightness(1.15);
  -webkit-backdrop-filter: blur(30px) brightness(1.15);
}

.gerbrich-dyha-card-hover {
  width: calc(100% - 48px);
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px) brightness(1.15);
  -webkit-backdrop-filter: blur(30px) brightness(1.15);
}

.gerbrich-dyha-title-hover,
.gerbrich-dyha-title.gerbrich-dyha-title-hover,
.gerbrich-dyha-title.font-chambers.gerbrich-dyha-title-hover {
  position: relative;
  z-index: 2;
  background: transparent;
}

.gerbrich-unit-input {
  width: 153px;
}

.gerbrich-unit-input input {
  width: 153px;
  border: 1px solid #000;
  border-radius: 5px;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand {
  width: 153px;
  min-width: 153px;
  margin-left: auto;
}

.gerbrich-filter-mobile {
  display: none;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-bottom: 40px;
}

.gerbrich-custom-dropdown {
  position: relative;
  width: 100%;
}

.gerbrich-custom-dropdown-toggle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  height: 46px;
  padding: 8px 42px 8px 14px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  color: #000;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.gerbrich-custom-dropdown-toggle::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 11px;
  height: 12px;
  transform: translateY(-50%) rotate(90deg);
  background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px 12px;
  pointer-events: none;
}

.gerbrich-custom-dropdown-current-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gerbrich-custom-dropdown-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  z-index: 40;
  display: none;
  padding: 6px;
  border: 1px solid #000;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
}

.gerbrich-custom-dropdown.is-open .gerbrich-custom-dropdown-menu {
  display: grid;
  gap: 2px;
}

.gerbrich-custom-dropdown-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  padding: 10px 8px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #000;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.gerbrich-custom-dropdown-option:hover,
.gerbrich-custom-dropdown-option.is-active {
  background: #F2F2F2;
}

@media (max-width: 767px) {
  .gerbrich-filter-mobile {
    display: grid;
  }

  .gerbrich-filter-mobile select {
    display: none;
  }

  .gerbrich-dyha-card-content {
    position: relative;
    z-index: 2;
    margin-top: -20px;
    background-color: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(30px) brightness(1.15);
    -webkit-backdrop-filter: blur(30px) brightness(1.15);
  }

  .gerbrich-dyha-card-hover {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(30px) brightness(1.15);
    -webkit-backdrop-filter: blur(30px) brightness(1.15);
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    transform: none;
    background-color: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(30px) brightness(1.15);
    -webkit-backdrop-filter: blur(30px) brightness(1.15);
  }
}

/* =========================================================
   Gerbrich dýhy - v1.1 oprava košíka v hlavičke
   ========================================================= */

.gerbrich-demand-panel-inner {
  width: 100%;
  max-width: none;
  background-color: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}

.gerbrich-demand-list {
  display: grid;
  gap: 0;
}

.gerbrich-demand-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 18px;
  width: 100%;
  padding: 10px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.gerbrich-demand-item + .gerbrich-demand-item {
  border-top: 0;
}

.gerbrich-demand-item-thumb {
  flex: 0 0 100px;
  width: 100px;
  height: 100px;
  border-radius: 5px;
  background: #f2f2f2;
  overflow: hidden;
}

.gerbrich-demand-item-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gerbrich-demand-item-main {
  min-width: 180px;
}

.gerbrich-demand-item-category {
  color: #000;
  font-size: 13px;
  line-height: 1.25;
}

.gerbrich-demand-item-title {
  color: #000;
  font-size: 20px;
  line-height: 29px;
  font-weight: 900;
}

.gerbrich-demand-item-params {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-left: auto;
  color: #000;
  font-size: 14px;
  line-height: 1.35;
  white-space: normal;
}

.gerbrich-demand-item-params span {
  display: inline-flex;
  align-items: center;
}

.gerbrich-demand-item-params span:nth-child(2) {
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #000;
}

.gerbrich-demand-item-stock {
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  line-height: 1.15;
}

.gerbrich-demand-qty-wrap {
  position: relative;
  flex: 0 0 130px;
  display: block;
}

.gerbrich-demand-qty {
  position: relative;
  display: block;
  width: 100%;
  flex: none;
}

.gerbrich-demand-qty input {
  width: 100%;
  height: 42px;
  padding: 8px 38px 8px 12px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  color: #000;
  font-weight: 700;
}

.gerbrich-demand-unit {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  color: #000;
  font-size: 14px;
  line-height: 1;
  pointer-events: none;
}

.gerbrich-demand-remove {
  flex: 0 0 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.gerbrich-demand-remove img {
  display: block;
  width: 17px;
  height: 17px;
}

@media (max-width: 767px) {
  .gerbrich-demand-panel-inner {
    padding: 18px;
  }

  .gerbrich-demand-item {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 10px 14px;
    align-items: start;
    padding: 10px 34px 10px 10px;
  }

  .gerbrich-demand-item-thumb {
    grid-column: 1 / 2;
    grid-row: 1 / 6;
    width: 100px;
    height: 100px;
    flex-basis: 100px;
  }

  .gerbrich-demand-item-main {
    grid-column: 2 / 3;
    min-width: 0;
  }

  .gerbrich-demand-item-category {
    margin-bottom: 2px;
  }

  .gerbrich-demand-item-title {
    font-size: 20px;
    line-height: 29px;
  }

  .gerbrich-demand-item-params {
    grid-column: 2 / 3;
    margin-left: 0;
    gap: 8px 12px;
  }

  .gerbrich-demand-item-stock {
    width: fit-content;
  }

  .gerbrich-demand-qty-wrap {
    grid-column: 2 / 3;
    width: 130px;
    flex-basis: auto;
  }

  .gerbrich-demand-remove {
    position: absolute;
    top: 5px;
    right: 5px;
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 420px) {
  .gerbrich-demand-item {
    grid-template-columns: 86px minmax(0, 1fr);
  }

  .gerbrich-demand-item-thumb {
    width: 86px;
    height: 86px;
    flex-basis: 86px;
  }
}

/* =========================================================
   Gerbrich dýhy - v1.4 doladenie formulára, košíka a hover kariet
   ========================================================= */

.gerbrich-dyhy-offer-head h3 {
  padding-bottom: 15px;
}

.gerbrich-filter-group a span,
.gerbrich-custom-dropdown-current-count,
.gerbrich-custom-dropdown-option span:last-child {
  color: #000;
  opacity: 0.25;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover,
.gerbrich-demand-item-title {
  color: #000;
  font-size: 20px;
  line-height: 29px;
  font-weight: 900;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  width: 60px;
  text-align: right;
}

.gerbrich-dyha-card-content {
  margin-top: 0 !important;
  display: flex;
  align-items: flex-start;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px) brightness(1.15);
  -webkit-backdrop-filter: blur(30px) brightness(1.15);
}

.gerbrich-dyha-card-hover {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-title-hover {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px) brightness(1.15);
  -webkit-backdrop-filter: blur(30px) brightness(1.15);
}

.gerbrich-unit-input {
  width: 153px;
}

.gerbrich-unit-input input {
  width: 153px;
  border: 1px solid #000;
  border-radius: 5px;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand {
  width: 153px;
  margin-left: auto;
}

.gerbrich-demand-form-view .kontakt-form-row {
  display: flex;
}

.gerbrich-edit-demand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none !important;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
}

.gerbrich-edit-demand img {
  display: block;
  width: 11px;
  height: 12px;
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-content {
    margin-top: -60px !important;
    background-color: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(30px) brightness(1.15);
    -webkit-backdrop-filter: blur(30px) brightness(1.15);
  }

  .gerbrich-dyha-card-hover {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-demand-form-view .kontakt-form-row {
    display: block;
  }
}


/* =========================================================
   Gerbrich dýhy - v1.5 fixes
   - demand form stays on existing glass_contact_submit HTML
   - product card hover grows upward from bottom
   ========================================================= */

/* Demand form refinements */
.gerbrich-demand-form-view .kontakt-form-row {
  display: flex !important;
  align-items: flex-start;
  gap: 32px;
}

.gerbrich-demand-form-view .kontakt-form-row-left,
.gerbrich-demand-form-view .kontakt-form-row-right {
  min-width: 0;
}

.gerbrich-demand-form-view .kontakt-form-row-left {
  flex: 0 1 42%;
}

.gerbrich-demand-form-view .kontakt-form-row-right {
  flex: 1 1 58%;
}

.gerbrich-edit-demand {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  text-decoration: none !important;
}

.gerbrich-edit-demand img {
  display: none !important;
}

.gerbrich-edit-demand::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 12px;
  background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* Product card: one white/blur block, bottom aligned, grows upward on hover */
.gerbrich-dyha-card {
  position: relative !important;
  overflow: hidden !important;
  background: transparent !important;
}

.gerbrich-dyha-card-image {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
}

.gerbrich-dyha-card-content {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-height: 96px !important;
  margin: 0 !important;
  padding: 24px !important;
  background-color: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(30px) brightness(1.15) !important;
  -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  transform: none !important;
  transition: min-height 220ms ease, background-color 220ms ease, backdrop-filter 220ms ease, -webkit-backdrop-filter 220ms ease !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  min-height: clamp(230px, 58%, 340px) !important;
  transform: none !important;
  background-color: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(30px) brightness(1.15) !important;
  -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
}

.gerbrich-dyha-card-summary {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-summary,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-summary {
  display: none !important;
}

.gerbrich-dyha-card-hover {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  transform: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: opacity 180ms ease, max-height 220ms ease !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
  max-height: 420px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover {
  font-size: 20px !important;
  line-height: 29px !important;
  font-weight: 900 !important;
  color: #000 !important;
}

.gerbrich-dyha-title-hover {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  text-align: right !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-thickness-list {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.gerbrich-dyha-thickness-row label {
  display: grid !important;
  grid-template-columns: 60px 153px !important;
  justify-content: end !important;
  align-items: center !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  width: 60px !important;
  text-align: right !important;
}

.gerbrich-unit-input {
  width: 153px !important;
  margin-left: auto !important;
}

.gerbrich-unit-input input {
  width: 153px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand {
  width: 153px !important;
  margin-left: auto !important;
  padding: 10px 4px !important;
}

.gerbrich-add-to-demand.btn-black-bordered,
.gerbrich-add-to-demand.btn-cta {
  padding: 10px 4px !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-form-view .kontakt-form-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }

  .gerbrich-demand-form-view .kontakt-form-row-left,
  .gerbrich-demand-form-view .kontakt-form-row-right {
    flex: 0 1 auto !important;
    width: 100% !important;
  }

  .gerbrich-dyha-card {
    overflow: hidden !important;
  }

  .gerbrich-dyha-card-content {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    padding: 20px !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    min-height: 0 !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    position: static !important;
    display: block !important;
    max-height: none !important;
    width: 100% !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-dyha-title-hover {
    text-align: left !important;
  }

  .gerbrich-dyha-thickness-row label {
    grid-template-columns: 60px 153px !important;
    justify-content: start !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    margin-left: 80px !important;
  }
}

/* =========================================================
   Gerbrich dýhy - konfigurátor sesazenek v1.6
   ========================================================= */

.gerbrich-sesazenky-page .gerbrich-dyhy-hero h2 {
  margin: 0;
}

.gerbrich-sesazenky-box {
  border-radius: 20px;
  overflow: hidden;
}

.gerbrich-sesazenky-filter {
  grid-template-columns: 1fr 1fr;
}

.gerbrich-sesazenky-filter .gerbrich-filter-group:first-child {
  justify-content: flex-start;
}

.gerbrich-sesazenky-filter .gerbrich-filter-group:last-child {
  justify-content: flex-end;
}

.gerbrich-sesazenky-results {
  transition: opacity 0.2s ease;
}

.gerbrich-sesazenky-results.is-loading {
  opacity: 0.45;
  pointer-events: none;
}

.gerbrich-sesazenky-wood-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 20px;
}

.gerbrich-sesazenky-wood-card {
  display: block;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 5px;
  background: #fff;
  cursor: pointer;
}

.gerbrich-sesazenky-wood-card.is-selected {
  border-color: #000;
}

.gerbrich-sesazenky-wood-card input,
.gerbrich-sesazenky-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.gerbrich-sesazenky-wood-thumb {
  display: block;
  aspect-ratio: 1 / 0.72;
  background: #f6f6f6;
  overflow: hidden;
}

.gerbrich-sesazenky-wood-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gerbrich-sesazenky-wood-thumb > span {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: rgba(0,0,0,.45);
}

.gerbrich-sesazenky-wood-bottom {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 10px;
}

.gerbrich-sesazenky-radio {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  background-image: url('/wp-content/themes/gerbrich/images/radio.svg');
  background-size: 30px 30px;
  background-repeat: no-repeat;
  background-position: center;
  opacity: .05;
}

.is-selected > .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-wood-card.is-selected .gerbrich-sesazenky-radio {
  opacity: 1;
}

.gerbrich-sesazenky-wood-title {
  color: #000;
  font-size: 16px;
  line-height: 1.2;
}

.gerbrich-sesazenky-separator {
  height: 2px;
  width: calc(100% + 60px);
  margin: 40px -30px 28px;
  background: #fff;
}

.gerbrich-sesazenky-step h3 {
  margin: 0 0 22px;
  padding-bottom: 0;
}

.gerbrich-sesazenky-radio-grid,
.gerbrich-sesazenky-thickness-options {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.gerbrich-sesazenky-option {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: #fff;
  cursor: pointer;
  color: #000;
}

.gerbrich-sesazenky-option.is-selected {
  border-color: #000;
}

.gerbrich-sesazenky-qty-step h3 {
  margin-bottom: 16px;
}

.gerbrich-sesazenky-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.gerbrich-sesazenky-summary-main {
  display: flex;
  align-items: center;
  gap: 100px;
  min-width: 0;
}

.gerbrich-sesazenky-summary-title {
  font-size: 20px;
  line-height: 29px;
  font-weight: 900;
  color: #000;
}

.gerbrich-sesazenky-summary-props {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: #000;
}

.gerbrich-sesazenky-summary-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}

.gerbrich-sesazenky-qty input {
  width: 100px;
  height: 44px;
  padding: 8px 12px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  font-weight: 700;
}

.gerbrich-sesazenky-unit {
  color: #000;
}

.gerbrich-sesazenky-add {
  white-space: nowrap;
}

@media (max-width: 1399px) {
  .gerbrich-sesazenky-wood-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) {
  .gerbrich-sesazenky-wood-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .gerbrich-sesazenky-summary-row,
  .gerbrich-sesazenky-summary-main {
    align-items: flex-start;
    flex-direction: column;
  }

  .gerbrich-sesazenky-summary-main {
    gap: 16px;
  }

  .gerbrich-sesazenky-summary-actions {
    margin-left: 0;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-filter {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

  .gerbrich-sesazenky-filter .gerbrich-filter-group {
    justify-content: flex-start !important;
  }

  .gerbrich-sesazenky-wood-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .gerbrich-sesazenky-separator {
    width: calc(100% + 36px);
    margin-left: -18px;
    margin-right: -18px;
  }

  .gerbrich-sesazenky-radio-grid,
  .gerbrich-sesazenky-thickness-options {
    gap: 12px;
  }

  .gerbrich-sesazenky-option {
    width: 100%;
  }
}


/* =========================================================
   Gerbrich dýhy - v1.7 finálne úpravy košíka, formulára a hover kariet
   ========================================================= */

/* Demand panel: čisté biele pozadie bez bluru */
.gerbrich-demand-panel-inner {
  background: #fff !important;
  background-color: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Košík: poradie a vzhľad parametrov */
.gerbrich-demand-item-params {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px 12px !important;
  margin-left: auto !important;
  color: #000 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.gerbrich-demand-item-params span {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000 !important;
}

.gerbrich-demand-item-stock {
  order: 99 !important;
  margin-left: 24px !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  line-height: 1.15 !important;
}

/* Košíkové inputy: jednotka mimo inputu */
.gerbrich-demand-qty-wrap {
  position: static !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: 4px !important;
}

.gerbrich-demand-qty {
  display: block !important;
  width: auto !important;
  flex: none !important;
}

.gerbrich-demand-qty input {
  width: 92px !important;
  height: 34px !important;
  min-height: 0 !important;
  padding: 4px 8px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

.gerbrich-demand-unit {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  display: inline-block !important;
  color: #000 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

.gerbrich-demand-remove {
  margin-left: 24px !important;
  flex: 0 0 15px !important;
  width: 15px !important;
  height: 15px !important;
}

.gerbrich-demand-remove img {
  width: 15px !important;
  height: 15px !important;
}

/* Formulár v košíku: necháme globálne .gc-grid štýly, len odsadíme akcie */
.gerbrich-demand-form-actions {
  margin-top: 40px !important;
}

.gerbrich-edit-demand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
}

.gerbrich-edit-demand::after {
  content: "" !important;
  display: inline-block !important;
  width: 11px !important;
  height: 12px !important;
  background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}

/* Produktová karta: default pod obrázkom, hover zväčšuje blok smerom nahor */
.gerbrich-dyha-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: visible !important;
  background: transparent !important;
}

.gerbrich-dyha-card-image {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.gerbrich-dyha-card-content {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
  z-index: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 96px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 24px !important;
  overflow: hidden !important;
  background-color: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
  transition: height 240ms ease, margin-top 240ms ease, background-color 240ms ease, backdrop-filter 240ms ease, -webkit-backdrop-filter 240ms ease !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
  --dyha-hover-height: calc(156px + (var(--dyha-rows, 3) * 50px));
  height: var(--dyha-hover-height) !important;
  margin-top: calc(96px - var(--dyha-hover-height)) !important;
  background-color: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(30px) brightness(1.15) !important;
  -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  transform: none !important;
}

.gerbrich-dyha-card-summary {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-summary,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-summary {
  display: none !important;
}

.gerbrich-dyha-card-hover {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  transform: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: opacity 180ms ease, max-height 240ms ease !important;
}

.gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
  max-height: 520px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  overflow: visible !important;
  transform: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-title,
.gerbrich-dyha-title-hover {
  font-size: 20px !important;
  line-height: 29px !important;
  font-weight: 900 !important;
  color: #000 !important;
}

.gerbrich-dyha-title-hover {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  text-align: right !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.gerbrich-dyha-thickness-list {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.gerbrich-dyha-thickness-row label {
  display: grid !important;
  grid-template-columns: 60px 153px !important;
  justify-content: end !important;
  align-items: center !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-dyha-thickness-row label > span:first-child {
  width: 60px !important;
  text-align: right !important;
}

.gerbrich-unit-input {
  width: 153px !important;
  margin-left: auto !important;
}

.gerbrich-unit-input input {
  width: 153px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
}

.gerbrich-dyha-card-hover .gerbrich-add-to-demand,
.gerbrich-add-to-demand.btn-black-bordered,
.gerbrich-add-to-demand.btn-cta {
  width: 153px !important;
  margin-left: auto !important;
  padding: 10px 4px !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-item {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    padding: 10px 30px 10px 10px !important;
  }

  .gerbrich-demand-item-thumb {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 7 !important;
    flex: 0 0 78px !important;
    width: 78px !important;
    min-width: 78px !important;
    height: 78px !important;
    border-radius: 5px !important;
  }

  .gerbrich-demand-item-main,
  .gerbrich-demand-item-params,
  .gerbrich-demand-qty-wrap {
    grid-column: 2 / 3 !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }

  .gerbrich-demand-item-params {
    gap: 6px 10px !important;
  }

  .gerbrich-demand-item-stock {
    margin-left: 0 !important;
  }

  .gerbrich-demand-qty-wrap {
    width: auto !important;
    margin-top: 4px !important;
  }

  .gerbrich-demand-remove {
    position: absolute !important;
    top: 10px !important;
    right: 5px !important;
    width: 13px !important;
    height: 13px !important;
    margin-left: 0 !important;
  }

  .gerbrich-demand-remove img {
    width: 13px !important;
    height: 13px !important;
  }

  .gerbrich-dyha-card {
    overflow: visible !important;
  }

  .gerbrich-dyha-card-content {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    padding: 20px !important;
    overflow: visible !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
    transform: none !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    height: auto !important;
    margin-top: -60px !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    position: static !important;
    display: block !important;
    max-height: none !important;
    width: 100% !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-dyha-title-hover {
    text-align: left !important;
  }

  .gerbrich-dyha-thickness-row label {
    grid-template-columns: 60px 153px !important;
    justify-content: start !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    margin-left: 80px !important;
  }
}

/* =========================================================
   Gerbrich dýhy - v1.8 oprava hoveru kariet a sesazenky UI
   ========================================================= */

@media (min-width: 768px) {
  .gerbrich-dyha-card {
    --dyha-default-content-height: 96px;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-card-content {
    position: relative !important;
    z-index: 4 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    height: var(--dyha-default-content-height) !important;
    min-height: var(--dyha-default-content-height) !important;
    margin: 0 !important;
    margin-bottom: 0 !important;
    padding: 24px !important;
    overflow: hidden !important;
    background-color: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: translateY(0) !important;
    transition: height 240ms ease, transform 240ms ease, margin-bottom 240ms ease, background-color 240ms ease, backdrop-filter 240ms ease, -webkit-backdrop-filter 240ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    --dyha-hover-height: calc(150px + (var(--dyha-rows, 3) * 48px));
    height: var(--dyha-hover-height) !important;
    min-height: var(--dyha-hover-height) !important;
    transform: translateY(calc(var(--dyha-default-content-height) - var(--dyha-hover-height))) !important;
    margin-bottom: calc(var(--dyha-default-content-height) - var(--dyha-hover-height)) !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  }

  .gerbrich-dyha-card-summary {
    width: 100% !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-title-hover {
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    text-align: right !important;
  }

  .gerbrich-dyha-thickness-list {
    width: 100% !important;
    margin: 0 0 18px !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    margin-top: 0 !important;
    padding: 10px 4px !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-content {
    height: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    margin-bottom: 0 !important;
    transform: none !important;
    overflow: visible !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    height: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    margin-bottom: 0 !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: none !important;
  }
}

.gerbrich-sesazenky-step-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.gerbrich-sesazenky-step-head h3 {
  margin: 0 !important;
}

.gerbrich-sesazenky-more-fleece {
  white-space: nowrap;
}

.gerbrich-sesazenky-image-options {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.gerbrich-sesazenky-image-option {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid transparent !important;
  border-radius: 5px !important;
  background: #fff !important;
}

.gerbrich-sesazenky-image-option.is-selected {
  border-color: #000 !important;
}

.gerbrich-sesazenky-option-image {
  display: block;
  aspect-ratio: 4 / 3;
  width: 100%;
  background: #f5f5f5;
  overflow: hidden;
}

.gerbrich-sesazenky-option-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gerbrich-sesazenky-option-bottom {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 10px;
  color: #000;
}

.gerbrich-sesazenky-summary-title {
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
  color: #000 !important;
}

.gerbrich-sesazenky-summary-actions {
  margin-left: auto !important;
}

.gerbrich-sesazenky-add {
  margin-left: 24px !important;
}

.gerbrich-sesazenky-qty input {
  height: 38px !important;
  padding: 5px 10px !important;
}

@media (max-width: 1024px) {
  .gerbrich-sesazenky-image-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-step-head {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .gerbrich-sesazenky-image-options {
    grid-template-columns: 1fr;
  }

  .gerbrich-sesazenky-add {
    margin-left: 0 !important;
  }
}


/* =========================================================
   Gerbrich dýhy - v1.9 úpravy hlavičky, sesazenek a hoveru
   ========================================================= */

/* Header mini button */
.gerbrich-mini-demand-count {
  font-weight: 400 !important;
}

@media (max-width: 767px) {
  .gerbrich-mini-demand-button.gerbrich-mini-demand-mobile,
  .gerbrich-mini-demand-button.gerbrich-mini-demand-mobile.btn-cta {
    padding: 4px 4px !important;
    margin-right: 12px !important;
  }
}

/* Košík spacing a skladový štítok */
.gerbrich-demand-panel-inner {
  padding-left: clamp(24px, 4vw, 56px) !important;
  padding-right: clamp(24px, 4vw, 56px) !important;
}

.gerbrich-demand-panel-footer {
  margin-top: 30px !important;
}

.gerbrich-demand-item-stock {
  order: 99 !important;
  margin-left: 24px !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  line-height: 1.15 !important;
}

.gerbrich-demand-form-actions {
  margin-top: 40px !important;
}

.gerbrich-edit-demand,
.gerbrich-edit-demand.btn-black,
.gerbrich-edit-demand.willunderline {
  text-decoration: none !important;
}

.gerbrich-edit-demand::after {
  content: "" !important;
  display: inline-block !important;
  width: 11px !important;
  height: 12px !important;
  margin-left: 8px !important;
  background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}

.gerbrich-demand-qty input {
  height: 34px !important;
  padding: 4px 8px !important;
}

.gerbrich-demand-remove {
  margin-left: 24px !important;
}

/* Dýhy hover: spodná hrana ostáva na mieste, blok rastie hore */
@media (min-width: 768px) {
  .gerbrich-dyha-card {
    --dyha-default-content-height: 96px;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-card-content {
    position: relative !important;
    z-index: 4 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    height: var(--dyha-default-content-height) !important;
    min-height: var(--dyha-default-content-height) !important;
    margin: 0 !important;
    padding: 24px !important;
    overflow: hidden !important;
    background: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: none !important;
    transition: height 240ms ease, margin-top 240ms ease, background-color 240ms ease, backdrop-filter 240ms ease, -webkit-backdrop-filter 240ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    --dyha-hover-height: calc(142px + (var(--dyha-rows, 3) * 46px));
    height: var(--dyha-hover-height) !important;
    min-height: var(--dyha-hover-height) !important;
    margin-top: calc(var(--dyha-default-content-height) - var(--dyha-hover-height)) !important;
    margin-bottom: 0 !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  }

  .gerbrich-dyha-card-summary {
    width: 100% !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    margin-top: 0 !important;
    margin-left: auto !important;
    padding: 10px 4px !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-content {
    height: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    transform: none !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    background: transparent !important;
    transform: none !important;
  }
}

/* Sesazenky: image radio karty rovnako široké ako výber dýh */
.gerbrich-sesazenky-image-options {
  display: grid !important;
  grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

.gerbrich-sesazenky-image-option {
  width: auto !important;
}

.gerbrich-sesazenky-image-option:hover,
.gerbrich-sesazenky-wood-card:hover,
.gerbrich-sesazenky-option:hover {
  border-color: rgba(0, 0, 0, 0.25) !important;
  background: #F2F2F2 !important;
}

.gerbrich-sesazenky-image-option:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-wood-card:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-option:hover .gerbrich-sesazenky-radio {
  opacity: 0.25 !important;
}

.gerbrich-sesazenky-image-option.is-selected:hover,
.gerbrich-sesazenky-wood-card.is-selected:hover,
.gerbrich-sesazenky-option.is-selected:hover {
  border-color: #000 !important;
}

.gerbrich-sesazenky-image-option.is-selected:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-wood-card.is-selected:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-option.is-selected:hover .gerbrich-sesazenky-radio {
  opacity: 1 !important;
}

.gerbrich-sesazenky-wood-title,
.gerbrich-sesazenky-option-bottom > span:last-child,
.gerbrich-sesazenky-thickness-options .gerbrich-sesazenky-option > span:last-child {
  font-weight: 900 !important;
}

.gerbrich-sesazenky-summary-title {
  font-weight: 900 !important;
}

.gerbrich-sesazenky-qty input {
  height: 36px !important;
  padding: 4px 8px !important;
}

@media (max-width: 1399px) {
  .gerbrich-sesazenky-image-options {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1024px) {
  .gerbrich-sesazenky-image-options {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-filter {
    display: none !important;
  }

  .gerbrich-sesazenky-mobile-filter {
    display: grid !important;
  }

  .gerbrich-sesazenky-thickness-options,
  .gerbrich-sesazenky-image-options {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-option,
  .gerbrich-sesazenky-image-option {
    width: 100% !important;
  }

  .gerbrich-sesazenky-option-image {
    aspect-ratio: 4 / 3 !important;
  }
}

/* =========================================================
   Gerbrich dýhy - v2.0 final overrides
   ========================================================= */

/* Header demand panel: stock tag must be same black pill as product tags. */
.gerbrich-demand-item-stock {
  display: inline-flex !important;
  align-items: center !important;
  padding: 2px 6px 4px 6px !important;
  margin-left: 24px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  line-height: 1.15 !important;
}

/* Edit demand action: no willunderline class needed, arrow is added here. */
.gerbrich-edit-demand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.gerbrich-edit-demand::after {
  content: "" !important;
  display: inline-block !important;
  width: 11px !important;
  height: 12px !important;
  margin-left: 8px !important;
  background-image: url('/wp-content/themes/gerbrich/images/arrow-right.svg') !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 11px 12px !important;
}

/* Custom mobile dropdown: keep number immediately after label, not on the far right. */
.gerbrich-custom-dropdown-toggle {
  justify-content: flex-start !important;
  gap: 8px !important;
}

.gerbrich-custom-dropdown-current-count {
  flex: 0 0 auto !important;
  color: rgba(0, 0, 0, 0.25) !important;
}

/* Product card hover: bottom edge stays fixed; block only grows upward. */
@media (min-width: 768px) {
  .gerbrich-dyha-card {
    display: flex !important;
    flex-direction: column !important;
  }

  .gerbrich-dyha-card-image {
    flex: 0 0 auto !important;
  }

  .gerbrich-dyha-card-content {
    --dyha-default-content-height: 96px;
    --dyha-hover-height: calc(142px + (var(--dyha-rows, 3) * 46px));
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    width: 100% !important;
    height: var(--dyha-default-content-height) !important;
    min-height: var(--dyha-default-content-height) !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 24px !important;
    overflow: hidden !important;
    background: #fff !important;
    transform: none !important;
    transition: height 240ms ease, margin-top 240ms ease, background-color 240ms ease, backdrop-filter 240ms ease, -webkit-backdrop-filter 240ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    height: var(--dyha-hover-height) !important;
    min-height: var(--dyha-hover-height) !important;
    margin-top: calc(var(--dyha-default-content-height) - var(--dyha-hover-height)) !important;
    margin-bottom: 0 !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transition: opacity 180ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .gerbrich-dyha-card-summary {
    display: flex !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-summary,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-summary {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .gerbrich-dyha-thickness-row label {
    grid-template-columns: 60px 153px !important;
    justify-content: space-between !important;
  }

  .gerbrich-dyha-thickness-row label > span:first-child {
    width: 60px !important;
    text-align: right !important;
  }

  .gerbrich-unit-input {
    width: 153px !important;
    margin-left: auto !important;
  }
}

/* Mobile: no hover dependency; content must remain visible. */
@media (max-width: 767px) {
  .gerbrich-dyha-card-content {
    height: auto !important;
    min-height: 0 !important;
    margin-top: -60px !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    max-height: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

/* =========================================================
   Gerbrich dýhy - v2.1 overrides: košík + rozměr sesazenky
   ========================================================= */

/* Košík: všetky parametre ako čierne tagy */
.gerbrich-demand-item-params span {
  min-height: 0 !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  border: 0 !important;
}

.gerbrich-demand-item-stock {
  margin-left: 24px !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-item {
    grid-template-columns: minmax(0, 45%) minmax(0, 1fr) !important;
    gap: 6px !important;
  }

  .gerbrich-demand-item-thumb {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex-basis: auto !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
  }

  .gerbrich-demand-remove {
    top: 15px !important;
    right: 5px !important;
    width: 12px !important;
    height: 12px !important;
  }

  .gerbrich-demand-remove img {
    width: 12px !important;
    height: 12px !important;
  }
}

/* Sesazenky: Rozměr sesazenky */
.gerbrich-sesazenky-size-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 570px);
  gap: 40px;
  align-items: start;
}

.gerbrich-sesazenky-size-copy h3 {
  margin: 0 0 18px;
}

.gerbrich-sesazenky-size-copy p {
  max-width: 620px;
  margin: 0;
}

.gerbrich-sesazenky-size-visual {
  width: 100%;
  max-width: 570px;
  margin-left: auto;
}

.gerbrich-sesazenky-size-image-wrap {
  position: relative;
  width: 100%;
}

.gerbrich-sesazenky-size-image {
  display: block;
  width: 100%;
  height: 160px;
  object-fit: cover;
  border: 1px solid #000;
  border-radius: 5px;
}

.gerbrich-sesazenky-size-field {
  display: grid;
  gap: 6px;
  font-weight: 900;
  color: #000;
}

.gerbrich-sesazenky-size-field input {
  width: 96px;
  height: 36px;
  padding: 4px 8px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  color: #000;
  font-weight: 900;
}

.gerbrich-sesazenky-size-field em {
  font-style: normal;
  font-weight: 400;
  color: #000;
}

.gerbrich-sesazenky-size-field-height {
  position: absolute;
  top: 50%;
  right: -116px;
  transform: translateY(-50%);
}

.gerbrich-sesazenky-size-field-width {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 14px;
}

.gerbrich-sesazenky-size-field-width span,
.gerbrich-sesazenky-size-field-width em {
  flex: 0 0 auto;
}

@media (max-width: 1200px) {
  .gerbrich-sesazenky-size-field-height {
    right: 12px;
    padding: 8px;
    background: rgba(255,255,255,0.85);
    border-radius: 5px;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .gerbrich-sesazenky-size-visual {
    max-width: none;
    margin-left: 0;
  }

  .gerbrich-sesazenky-size-image {
    height: auto;
    aspect-ratio: 570 / 160;
  }

  .gerbrich-sesazenky-size-field-height {
    position: static;
    transform: none;
    margin-top: 14px;
    padding: 0;
    background: transparent;
  }

  .gerbrich-sesazenky-size-field-width {
    justify-content: flex-start;
  }
}

/* =========================================================
   Gerbrich dýhy - v2.2 final overrides
   ========================================================= */

/* Košík: čierne pozadie má iba skladovosť, ostatné parametre sú obyčajný text */
.gerbrich-demand-item-params span {
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
}

.gerbrich-demand-item-params .gerbrich-demand-item-stock {
  min-height: 0 !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  margin-left: 24px !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-item {
    grid-template-columns: minmax(45%, 45%) minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .gerbrich-demand-item-thumb {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
  }

  .gerbrich-demand-item-main,
  .gerbrich-demand-item-params,
  .gerbrich-demand-qty-wrap {
    grid-column: 2 / 3 !important;
  }

  .gerbrich-demand-remove {
    top: 20px !important;
    right: 5px !important;
  }
}

/* Dýhy: hover nesmie poskočiť dole; blok rastie hore, spodná hrana ostáva */
@media (min-width: 768px) {
  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    transform: none !important;
    margin-bottom: 0 !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label {
    display: grid !important;
    grid-template-columns: 60px 153px !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 20px !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label > span:first-child,
  .gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label > span:first-child,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label > span:first-child {
    width: 60px !important;
    text-align: right !important;
  }
}

/* Sesazenky: názvy radio kariet doprava */
.gerbrich-sesazenky-wood-title.font-chambers,
.gerbrich-sesazenky-option-bottom > span:last-child {
  text-align: right !important;
  font-weight: 900 !important;
}

.gerbrich-sesazenky-option-bottom {
  justify-content: space-between !important;
}

/* Rozměr sesazenky: držať všetko v kontajneri */
.gerbrich-sesazenky-size-layout {
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 570px) !important;
  gap: 28px !important;
}

.gerbrich-sesazenky-size-copy p {
  max-width: 460px !important;
}

.gerbrich-sesazenky-size-field-height {
  right: 14px !important;
  padding: 8px !important;
  background: rgba(255,255,255,0.9) !important;
  border-radius: 5px !important;
}

/* Sesazenky: Dle výkresu + upload */
.gerbrich-sesazenky-drawing-option {
  overflow: visible !important;
}

.gerbrich-sesazenky-drawing-inner {
  display: grid;
  min-width: 0;
}

.gerbrich-sesazenky-upload {
  display: none;
  min-width: 0;
}

.gerbrich-sesazenky-drawing-option.is-selected {
  grid-column: span 2 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 1.2fr) !important;
  gap: 20px !important;
  align-items: start !important;
}

.gerbrich-sesazenky-drawing-option.is-selected .gerbrich-sesazenky-upload {
  display: grid !important;
  gap: 10px !important;
  padding: 10px !important;
}

.gerbrich-sesazenky-upload-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.gerbrich-sesazenky-upload-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.gerbrich-sesazenky-upload-fake {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  padding: 6px 10px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  color: #000;
  cursor: pointer;
}

.gerbrich-sesazenky-upload-dots {
  margin-left: 12px;
  font-weight: 900;
}

.gerbrich-sesazenky-upload-button {
  min-height: 36px !important;
  padding: 8px 16px !important;
}

.gerbrich-sesazenky-upload-file {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 36px;
  padding: 6px 10px;
  border: 1px solid #000;
  border-radius: 5px;
  background: #fff;
  color: #000;
  font-weight: 900;
}

.gerbrich-sesazenky-upload-file[hidden] {
  display: none !important;
}

.gerbrich-sesazenky-upload-file button {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.gerbrich-sesazenky-upload-file img {
  display: block;
  width: 17px;
  height: 17px;
}

.gerbrich-sesazenky-upload-message {
  min-height: 16px;
  font-size: 12px;
  line-height: 1.2;
  color: #000;
}

@media (max-width: 1024px) {
  .gerbrich-sesazenky-drawing-option.is-selected {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    grid-template-columns: 1fr !important;
  }

  .gerbrich-sesazenky-size-copy p {
    max-width: none !important;
  }

  .gerbrich-sesazenky-size-field-height {
    position: static !important;
    transform: none !important;
    padding: 0 !important;
    background: transparent !important;
    margin-top: 14px !important;
  }

  .gerbrich-sesazenky-drawing-option.is-selected {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-upload-row {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   Gerbrich dýhy - v2.3 final overrides
   ========================================================= */

/* Košík: čierny tag má iba skladovosť, ostatné parametre sú obyčajný text */
.gerbrich-demand-item-params span {
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  border: 0 !important;
}

.gerbrich-demand-item-params .gerbrich-demand-item-stock {
  min-height: 0 !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  margin-left: 24px !important;
}

/* Dýhy: hover nesmie meniť výšku gridu ani posúvať produkty pod kartou */
@media (min-width: 768px) {
  .gerbrich-dyha-card {
    position: relative !important;
    display: block !important;
    padding-bottom: 96px !important;
    overflow: visible !important;
  }

  .gerbrich-dyha-card-content {
    --dyha-default-content-height: 96px;
    --dyha-hover-height: calc(142px + (var(--dyha-rows, 3) * 46px));
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    width: 100% !important;
    height: var(--dyha-default-content-height) !important;
    min-height: var(--dyha-default-content-height) !important;
    margin: 0 !important;
    padding: 24px !important;
    overflow: hidden !important;
    background: #fff !important;
    transform: none !important;
    transition: height 240ms ease, background-color 240ms ease, backdrop-filter 240ms ease, -webkit-backdrop-filter 240ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    height: var(--dyha-hover-height) !important;
    min-height: var(--dyha-hover-height) !important;
    margin: 0 !important;
    transform: none !important;
    background-color: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(30px) brightness(1.15) !important;
    -webkit-backdrop-filter: blur(30px) brightness(1.15) !important;
  }

  .gerbrich-dyha-card-hover {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-hover,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-hover {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-summary,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-summary {
    display: none !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label {
    display: grid !important;
    grid-template-columns: 60px 153px !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 20px !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label > span:first-child,
  .gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label > span:first-child,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label > span:first-child {
    width: 60px !important;
    text-align: right !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-unit-input {
    width: 153px !important;
    margin-left: 0 !important;
  }
}

/* Rozměr sesazenky: Výška je napravo od obrázka, nie cez obrázok */
.gerbrich-sesazenky-size-layout {
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 720px) !important;
  gap: 32px !important;
}

.gerbrich-sesazenky-size-copy p {
  max-width: 420px !important;
}

.gerbrich-sesazenky-size-visual {
  max-width: 720px !important;
  margin-left: auto !important;
}

.gerbrich-sesazenky-size-image-wrap {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 570px) auto !important;
  align-items: center !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-size-image {
  width: 100% !important;
  max-width: 570px !important;
}

.gerbrich-sesazenky-size-field-height {
  position: static !important;
  right: auto !important;
  top: auto !important;
  transform: none !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  width: 100px !important;
}

.gerbrich-sesazenky-size-field-width {
  width: 570px !important;
  max-width: 100% !important;
  justify-content: center !important;
  margin-top: 14px !important;
}

/* Dle výkresu: karta ostáva šírky 1/8, upload sa otvorí napravo */
.gerbrich-sesazenky-drawing-row {
  display: contents;
}

.gerbrich-sesazenky-drawing-row.is-selected,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: calc((100% - 140px) / 8) minmax(0, 1fr) !important;
  gap: 20px !important;
  align-items: start !important;
}

.gerbrich-sesazenky-drawing-option,
.gerbrich-sesazenky-drawing-option.is-selected {
  grid-column: auto !important;
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.gerbrich-sesazenky-drawing-option.is-selected {
  grid-template-columns: none !important;
  gap: 0 !important;
}

.gerbrich-sesazenky-drawing-inner {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: 100% !important;
}

.gerbrich-sesazenky-upload {
  display: none !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 0 !important;
}

.gerbrich-sesazenky-drawing-row.is-selected .gerbrich-sesazenky-upload,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-upload {
  display: grid !important;
  gap: 10px !important;
  align-content: start !important;
}

.gerbrich-sesazenky-upload-row {
  display: grid !important;
  grid-template-columns: 420px auto !important;
  gap: 10px !important;
  align-items: center !important;
  justify-content: start !important;
}

.gerbrich-sesazenky-upload-fake {
  width: 420px !important;
  min-height: 40px !important;
  padding: 6px 12px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}

.gerbrich-sesazenky-upload-file {
  width: 100% !important;
  max-width: calc(420px + 10px + 120px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  min-height: 40px !important;
  padding: 6px 12px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-weight: 700 !important;
}

.gerbrich-sesazenky-upload-file[hidden] {
  display: none !important;
}

.gerbrich-sesazenky-upload-file button {
  flex: 0 0 17px !important;
  width: 17px !important;
  height: 17px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.gerbrich-sesazenky-upload-file img {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
}

@media (max-width: 1200px) {
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    grid-template-columns: 1fr !important;
  }

  .gerbrich-sesazenky-size-visual {
    max-width: none !important;
    margin-left: 0 !important;
  }

  .gerbrich-sesazenky-size-image-wrap {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .gerbrich-sesazenky-size-field-height,
  .gerbrich-sesazenky-size-field-width {
    width: auto !important;
    max-width: none !important;
    justify-content: flex-start !important;
  }

  .gerbrich-sesazenky-drawing-row,
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-upload-row {
    grid-template-columns: 1fr auto !important;
  }

  .gerbrich-sesazenky-upload-fake {
    width: 100% !important;
    font-size: 16px !important;
  }

  .gerbrich-sesazenky-upload-file {
    max-width: none !important;
  }
}

/* =========================================================
   Gerbrich dýhy/sesazenky - v2.4 final fixes
   ========================================================= */

/* Sesazenky: selected/hover radio ikony fungujú rovnako aj pre typ sesazení a fleece */
.gerbrich-sesazenky-option.is-selected .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-image-option.is-selected .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-drawing-option.is-selected .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option .gerbrich-sesazenky-radio {
  opacity: 1 !important;
}

.gerbrich-sesazenky-option:hover,
.gerbrich-sesazenky-image-option:hover,
.gerbrich-sesazenky-wood-card:hover {
  border-color: rgba(0,0,0,.25) !important;
  background: #F2F2F2 !important;
}

.gerbrich-sesazenky-option:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-image-option:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-wood-card:hover .gerbrich-sesazenky-radio {
  opacity: .25 !important;
}

.gerbrich-sesazenky-option.is-selected:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-image-option.is-selected:hover .gerbrich-sesazenky-radio,
.gerbrich-sesazenky-wood-card.is-selected:hover .gerbrich-sesazenky-radio {
  opacity: 1 !important;
}

/* Rozměr sesazenky: pravá časť zarovnaná doprava, Výška mimo obrázka */
.gerbrich-sesazenky-size-layout {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 40px !important;
}

.gerbrich-sesazenky-size-copy {
  flex: 0 1 36% !important;
  max-width: 430px !important;
}

.gerbrich-sesazenky-size-visual {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  margin-left: auto !important;
  display: grid !important;
  gap: 18px !important;
  justify-items: center !important;
}

.gerbrich-sesazenky-size-toprow {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-size-image-wrap {
  position: relative !important;
  display: block !important;
  width: 570px !important;
  max-width: min(570px, 100%) !important;
}

.gerbrich-sesazenky-size-image {
  display: block !important;
  width: 570px !important;
  max-width: 100% !important;
  height: 160px !important;
  object-fit: cover !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
}

.gerbrich-sesazenky-size-field-height {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  flex: 0 0 118px !important;
  width: 118px !important;
  max-width: 118px !important;
}

.gerbrich-sesazenky-size-field-width {
  margin: 0 auto !important;
}

/* Dle výkresu: karta ostáva pôvodne veľká, celý riadok sa rozšíri doprava o upload */
.gerbrich-sesazenky-drawing-row {
  display: contents !important;
}

.gerbrich-sesazenky-drawing-row.is-selected,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-drawing-option,
.gerbrich-sesazenky-drawing-option.is-selected,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
  flex: 0 0 calc((100% - 140px) / 8) !important;
  width: calc((100% - 140px) / 8) !important;
  max-width: calc((100% - 140px) / 8) !important;
  min-width: 0 !important;
  display: flex !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.gerbrich-sesazenky-drawing-inner {
  width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

.gerbrich-sesazenky-upload {
  display: none !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.gerbrich-sesazenky-drawing-row.is-selected .gerbrich-sesazenky-upload,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-upload {
  display: block !important;
}

.gerbrich-sesazenky-upload-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-upload-fake {
  flex: 0 0 420px !important;
  width: 420px !important;
  max-width: 420px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 7px 14px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #000 !important;
}

.gerbrich-sesazenky-upload-fake [data-sesazenky-upload-placeholder] {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gerbrich-sesazenky-upload-file {
  width: 100% !important;
  max-width: calc(420px + 10px + 150px) !important;
  margin-top: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 42px !important;
  padding: 8px 12px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.gerbrich-sesazenky-upload-file[hidden] {
  display: none !important;
}

/* Dýhy: hover nesmie spôsobovať reflow ani posun dole */
@media (min-width: 768px) {
  .gerbrich-dyha-card {
    position: relative !important;
    display: block !important;
    padding-bottom: 96px !important;
    overflow: visible !important;
    contain: layout paint !important;
  }

  .gerbrich-dyha-card-content {
    --dyha-default-content-height: 96px;
    --dyha-hover-height: calc(142px + (var(--dyha-rows, 3) * 46px));
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    height: var(--dyha-default-content-height) !important;
    min-height: var(--dyha-default-content-height) !important;
    margin: 0 !important;
    transform: none !important;
    will-change: height !important;
    transition: height 220ms ease, background-color 220ms ease, backdrop-filter 220ms ease, -webkit-backdrop-filter 220ms ease !important;
  }

  .gerbrich-dyha-card:hover .gerbrich-dyha-card-content,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-card-content {
    height: var(--dyha-hover-height) !important;
    min-height: var(--dyha-hover-height) !important;
    margin: 0 !important;
    transform: none !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label,
  .gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label {
    justify-content: start !important;
  }

  .gerbrich-dyha-card-hover .gerbrich-unit-input,
  .gerbrich-dyha-card:hover .gerbrich-unit-input,
  .gerbrich-dyha-card:focus-within .gerbrich-unit-input {
    margin-left: 0 !important;
  }
}

@media (max-width: 1200px) {
  .gerbrich-sesazenky-drawing-option,
  .gerbrich-sesazenky-drawing-option.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
    flex-basis: 160px !important;
    width: 160px !important;
    max-width: 160px !important;
  }

  .gerbrich-sesazenky-upload-fake {
    flex-basis: min(420px, 100%) !important;
    width: min(420px, 100%) !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .gerbrich-sesazenky-size-copy {
    max-width: none !important;
  }

  .gerbrich-sesazenky-size-toprow {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .gerbrich-sesazenky-size-field-height,
  .gerbrich-sesazenky-size-field-width {
    width: 100% !important;
    max-width: none !important;
  }

  .gerbrich-sesazenky-drawing-row,
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-drawing-option,
  .gerbrich-sesazenky-drawing-option.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
    width: 100% !important;
    max-width: none !important;
    flex-basis: auto !important;
  }

  .gerbrich-sesazenky-upload-row {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
  }

  .gerbrich-sesazenky-upload-fake {
    width: 100% !important;
    max-width: none !important;
    flex-basis: auto !important;
    font-size: 16px !important;
  }

  .gerbrich-sesazenky-upload-file {
    max-width: none !important;
  }
}

/* =========================================================
   Gerbrich dýhy - v2.5 hotfix: Dle výkresu layout + upload file display
   ========================================================= */

/* Dle výkresu musí byť defaultne normálna karta v gride, nie 4px zvyšok. */
.gerbrich-sesazenky-type-step .gerbrich-sesazenky-image-options {
  align-items: stretch !important;
}

.gerbrich-sesazenky-drawing-row,
.gerbrich-sesazenky-drawing-row:not(.is-selected) {
  display: flex !important;
  flex-direction: column !important;
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  gap: 0 !important;
}

.gerbrich-sesazenky-drawing-option,
.gerbrich-sesazenky-drawing-option.is-selected,
.gerbrich-sesazenky-drawing-row .gerbrich-sesazenky-drawing-option,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  display: flex !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.gerbrich-sesazenky-drawing-inner {
  width: 100% !important;
  min-width: 0 !important;
}

/* Po kliknutí zostane položka na pôvodnom mieste v rade a roztiahne sa doprava. */
@media (min-width: 768px) {
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    grid-column: span 4 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 20px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .gerbrich-sesazenky-drawing-row.is-selected .gerbrich-sesazenky-drawing-option,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
    flex: 0 0 calc((100% - 60px) / 4) !important;
    width: calc((100% - 60px) / 4) !important;
    max-width: calc((100% - 60px) / 4) !important;
  }
}

.gerbrich-sesazenky-upload {
  display: none !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  background: transparent !important;
}

.gerbrich-sesazenky-drawing-row.is-selected .gerbrich-sesazenky-upload,
.gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-upload {
  display: block !important;
}

.gerbrich-sesazenky-upload-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-upload-fake {
  flex: 0 0 420px !important;
  width: 420px !important;
  max-width: 420px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 7px 14px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #000 !important;
}

.gerbrich-sesazenky-upload-fake [data-sesazenky-upload-placeholder] {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Názov nahraného súboru je vždy samostatný box pod inputom + buttonom. */
.gerbrich-sesazenky-upload-file {
  width: 100% !important;
  max-width: calc(420px + 10px + 150px) !important;
  margin-top: 10px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 42px !important;
  padding: 8px 12px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.gerbrich-sesazenky-upload-file:not([hidden]) {
  display: flex !important;
}

.gerbrich-sesazenky-upload-file[hidden] {
  display: none !important;
}

.gerbrich-sesazenky-upload-file button {
  flex: 0 0 17px !important;
  width: 17px !important;
  height: 17px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
}

.gerbrich-sesazenky-upload-file img {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
}

@media (max-width: 1200px) and (min-width: 768px) {
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    grid-column: span 4 !important;
  }

  .gerbrich-sesazenky-upload-fake {
    flex: 1 1 320px !important;
    width: auto !important;
    max-width: 420px !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-drawing-row,
  .gerbrich-sesazenky-drawing-row.is-selected,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-column: auto !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-drawing-row .gerbrich-sesazenky-drawing-option,
  .gerbrich-sesazenky-drawing-row.is-selected .gerbrich-sesazenky-drawing-option,
  .gerbrich-sesazenky-drawing-row:has([data-sesazenky-drawing-type]:checked) .gerbrich-sesazenky-drawing-option {
    width: 100% !important;
    max-width: none !important;
    flex-basis: auto !important;
  }

  .gerbrich-sesazenky-upload-row {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
  }

  .gerbrich-sesazenky-upload-fake {
    width: 100% !important;
    max-width: none !important;
    flex-basis: auto !important;
    font-size: 16px !important;
  }

  .gerbrich-sesazenky-upload-file {
    max-width: none !important;
  }
}


/* =========================================================
   Gerbrich dýhy - v2.6 final overrides
   ========================================================= */

/* Header demand: tlačidlo Upravit poptávku funguje cez JS selector data-gerbrich-demand-edit.
   Tu riešime len vizuál. */
.gerbrich-edit-demand {
  gap: 0 !important;
}

/* Košík: čierny tag má iba skladovosť, ostatné vlastnosti sú obyčajný text. */
.gerbrich-demand-item-params span {
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
}

.gerbrich-demand-item-params .gerbrich-demand-item-stock {
  min-height: 0 !important;
  padding: 2px 6px 4px 6px !important;
  border-radius: 2px !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  margin-left: 24px !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-item-params .gerbrich-demand-item-stock {
    margin-left: 0 !important;
  }

  .gerbrich-demand-item-thumb {
    flex: 0 0 45% !important;
    width: 45% !important;
    min-width: 45% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
  }

  .gerbrich-demand-item {
    gap: 8px !important;
  }
}

/* Dýhy: stabilnejší layout riadkov a karty. */
.gerbrich-dyha-card {
  border-radius: 5px !important;
}

.gerbrich-dyha-card-image {
  border-radius: 5px 5px 0 0 !important;
}

.gerbrich-dyha-card-content {
  border-radius: 0 0 5px 5px !important;
}

.gerbrich-dyha-thickness-row label {
  justify-content: space-between !important;
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    margin-left: auto !important;
  }
}

/* Sesazenky: rozměr - text vľavo užší, obrazok + výška vpravo v jednom riadku, bez presahu. */
.gerbrich-sesazenky-size-layout {
  display: grid !important;
  grid-template-columns: minmax(240px, 0.72fr) minmax(420px, 1fr) !important;
  gap: 40px !important;
  align-items: start !important;
}

.gerbrich-sesazenky-size-copy {
  max-width: 520px !important;
}

.gerbrich-sesazenky-size-copy h3 {
  margin: 0 0 56px !important;
}

.gerbrich-sesazenky-size-visual {
  width: 100% !important;
  max-width: 700px !important;
  margin-left: auto !important;
}

.gerbrich-sesazenky-size-toprow {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 20px !important;
  width: 100% !important;
}

.gerbrich-sesazenky-size-image-wrap {
  position: relative !important;
  flex: 1 1 570px !important;
  min-width: 0 !important;
  max-width: 570px !important;
}

.gerbrich-sesazenky-size-field-height {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100px !important;
  flex: 0 0 100px !important;
  padding: 0 !important;
  background: transparent !important;
}

.gerbrich-sesazenky-size-field input {
  max-width: 100% !important;
}

.gerbrich-sesazenky-size-field-width {
  justify-content: center !important;
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .gerbrich-sesazenky-size-copy h3 {
    margin-bottom: 24px !important;
  }

  .gerbrich-sesazenky-size-visual {
    max-width: none !important;
    margin-left: 0 !important;
  }

  .gerbrich-sesazenky-size-toprow {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  .gerbrich-sesazenky-size-image-wrap {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .gerbrich-sesazenky-size-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 570 / 160 !important;
  }

  .gerbrich-sesazenky-size-field-height {
    width: 100px !important;
    flex: 0 0 100px !important;
    margin-top: 0 !important;
  }

  .gerbrich-sesazenky-size-field-width {
    margin-top: 14px !important;
    justify-content: center !important;
  }
}

/* Upload: vybraný/nahratý súbor musí byť viditeľný ako samostatný border box pod inputom. */
.gerbrich-sesazenky-upload-file:not([hidden]) {
  display: flex !important;
}

.gerbrich-sesazenky-upload-file {
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 12px !important;
  padding: 10px 12px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-weight: 700 !important;
}

.gerbrich-sesazenky-upload-file button {
  flex: 0 0 auto !important;
  width: 17px !important;
  height: 17px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
}

.gerbrich-sesazenky-upload-file button img {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
}


/* =========================================================
   Gerbrich dýhy - v2.7 requested fixes
   ========================================================= */

/* Header demand panel */
.gerbrich-demand-submit,
.gerbrich-demand-submit:hover {
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .gerbrich-demand-item {
    grid-template-columns: minmax(50%, 50%) minmax(0, 1fr) !important;
  }

  .gerbrich-demand-item-thumb {
    flex: 0 0 50% !important;
    width: 100% !important;
    min-width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
  }
}

/* Dýhy - tloušťka vľavo, input vpravo aj v hover stave */
.gerbrich-dyha-thickness-row label,
.gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label,
.gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 20px !important;
}

.gerbrich-dyha-card-hover .gerbrich-dyha-thickness-row label > span:first-child,
.gerbrich-dyha-card:hover .gerbrich-dyha-thickness-row label > span:first-child,
.gerbrich-dyha-card:focus-within .gerbrich-dyha-thickness-row label > span:first-child {
  margin-right: 0 !important;
  text-align: right !important;
  width: 60px !important;
  flex: 0 0 60px !important;
}

.gerbrich-dyha-card-hover .gerbrich-unit-input,
.gerbrich-dyha-card:hover .gerbrich-unit-input,
.gerbrich-dyha-card:focus-within .gerbrich-unit-input {
  margin-left: auto !important;
}

@media (max-width: 767px) {
  .gerbrich-dyha-card-hover .gerbrich-add-to-demand {
    margin-left: auto !important;
  }
}

/* Sesazenky upload - button aj input iba otvárajú výber súboru; názov súboru sa zobrazí samostatne nižšie. */
.gerbrich-sesazenky-upload-button,
.gerbrich-sesazenky-upload-fake {
  cursor: pointer !important;
}

.gerbrich-sesazenky-upload-file:not([hidden]) {
  display: flex !important;
}

/* Rozměr sesazenky - nič nesmie presahovať viewport na mobile. */
.gerbrich-sesazenky-size-layout,
.gerbrich-sesazenky-size-visual,
.gerbrich-sesazenky-size-toprow,
.gerbrich-sesazenky-size-image-wrap,
.gerbrich-sesazenky-size-image,
.gerbrich-sesazenky-size-field,
.gerbrich-sesazenky-size-field input {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    width: 100% !important;
    overflow: hidden !important;
  }

  .gerbrich-sesazenky-size-toprow {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 92px !important;
    gap: 10px !important;
    align-items: end !important;
    width: 100% !important;
  }

  .gerbrich-sesazenky-size-image-wrap {
    min-width: 0 !important;
    width: 100% !important;
  }

  .gerbrich-sesazenky-size-field-height {
    width: 92px !important;
    flex: 0 0 92px !important;
    min-width: 0 !important;
  }

  .gerbrich-sesazenky-size-field-width {
    width: 100% !important;
    margin-top: 14px !important;
    justify-content: center !important;
  }
}


/* v2.8.0 custom fixes */
.gerbrich-sesazenky-size-image-wrap {
  margin-left: auto !important;
  margin-right: 0 !important;
  justify-self: end !important;
}
.gerbrich-sesazenky-size-visual {
  justify-items: end !important;
}

/* =========================================================
   Gerbrich dýhy - v2.9 fixes
   ========================================================= */

/* Dýhy: krajšia inline hláška namiesto alertu pri minime 10 m². */
.gerbrich-unit-input,
.gerbrich-demand-qty-wrap {
  position: relative !important;
}

.gerbrich-unit-input input.has-gerbrich-error,
.gerbrich-demand-qty-wrap input.has-gerbrich-error {
  border-color: #000 !important;
}

.gerbrich-qty-tooltip {
  position: absolute !important;
  left: 50% !important;
  bottom: calc(100% + 8px) !important;
  z-index: 20 !important;
  transform: translateX(-50%) !important;
  width: max-content !important;
  max-width: min(260px, 80vw) !important;
  padding: 8px 10px !important;
  border: 1px solid #000 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.08) !important;
  pointer-events: none !important;
  white-space: normal !important;
}

.gerbrich-qty-tooltip::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 100% !important;
  transform: translateX(-50%) rotate(45deg) !important;
  width: 9px !important;
  height: 9px !important;
  margin-top: -5px !important;
  border-right: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  background: #fff !important;
}

.gerbrich-qty-tooltip[hidden] {
  display: none !important;
}

/* Košík: jednotka m²/ks je vedľa inputu, tooltip nech má miesto. */
.gerbrich-demand-qty-wrap .gerbrich-qty-tooltip {
  left: auto !important;
  right: 0 !important;
  transform: none !important;
}

.gerbrich-demand-qty-wrap .gerbrich-qty-tooltip::after {
  left: auto !important;
  right: 24px !important;
  transform: rotate(45deg) !important;
}

/* Sesazenky: istota pre zmenu Šedý -> Hnědý v aktuálnych textových prvkoch. */
.gerbrich-sesazenky-option input[value="Hnědý fleece"] + .gerbrich-sesazenky-option-image + .gerbrich-sesazenky-option-bottom span:last-child {
  font-weight: 900 !important;
}

/* Rozměr sesazenky: pravá časť s obrázkom a Výška / délka je zarovnaná doprava a input je tesne napravo od obrázka. */
.gerbrich-sesazenky-size-layout {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.58fr) minmax(520px, 1.42fr) !important;
  gap: 36px !important;
  align-items: start !important;
}

.gerbrich-sesazenky-size-copy {
  max-width: 430px !important;
}

.gerbrich-sesazenky-size-visual {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  display: grid !important;
  justify-items: end !important;
}

.gerbrich-sesazenky-size-toprow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 690px !important;
  margin-left: auto !important;
}

.gerbrich-sesazenky-size-image-wrap {
  flex: 0 1 570px !important;
  width: min(570px, calc(100% - 114px)) !important;
  max-width: 570px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  justify-self: end !important;
}

.gerbrich-sesazenky-size-image {
  display: block !important;
  width: 100% !important;
  max-width: 570px !important;
  height: 160px !important;
  object-fit: cover !important;
}

.gerbrich-sesazenky-size-field-height {
  width: 100px !important;
  flex: 0 0 100px !important;
  min-width: 100px !important;
}

.gerbrich-sesazenky-size-field-height > span:first-child {
  white-space: normal !important;
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    overflow: hidden !important;
  }

  .gerbrich-sesazenky-size-copy {
    max-width: none !important;
  }

  .gerbrich-sesazenky-size-visual {
    width: 100% !important;
    justify-items: stretch !important;
  }

  .gerbrich-sesazenky-size-toprow {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 92px !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .gerbrich-sesazenky-size-image-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .gerbrich-sesazenky-size-image {
    height: auto !important;
    aspect-ratio: 570 / 160 !important;
    max-width: 100% !important;
  }

  .gerbrich-sesazenky-size-field-height {
    width: 92px !important;
    min-width: 92px !important;
    flex: 0 0 92px !important;
  }
}


/* =========================================================
   Gerbrich dýhy - bezpečný doplnok
   - viditeľný tooltip pri min. množstve dýhy
   - zarovnanie poľa Šířka pod obrázkom rozmeru sesazenky
   ========================================================= */

/* Tooltip pri minime 10 m²: nech je nad inputom a nezmizne za vrstvami.
   Neprepíname overflow celej produktovej karty, aby sa nezmenil vzhľad dýh pred hoverom. */
.gerbrich-unit-input {
  position: relative !important;
  overflow: visible !important;
}

.gerbrich-unit-input .gerbrich-qty-tooltip,
.gerbrich-unit-input .gerbrich-input-tooltip,
.gerbrich-unit-input .gerbrich-dyha-min-tooltip,
.gerbrich-unit-input .gerbrich-field-error {
  position: absolute !important;
  left: auto !important;
  right: 0 !important;
  bottom: calc(100% + 8px) !important;
  top: auto !important;
  z-index: 99999 !important;
  width: max-content !important;
  max-width: 260px !important;
  white-space: normal !important;
}

/* Keď je tooltip aktívny, povoľ viditeľnosť iba v konkrétnej karte s tooltipom. */
.gerbrich-dyha-card:has(.gerbrich-qty-tooltip) .gerbrich-dyha-card-content,
.gerbrich-dyha-card:has(.gerbrich-input-tooltip) .gerbrich-dyha-card-content,
.gerbrich-dyha-card:has(.gerbrich-dyha-min-tooltip) .gerbrich-dyha-card-content,
.gerbrich-dyha-card:has(.gerbrich-field-error) .gerbrich-dyha-card-content,
.gerbrich-dyha-card:has(.gerbrich-qty-tooltip) .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:has(.gerbrich-input-tooltip) .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:has(.gerbrich-dyha-min-tooltip) .gerbrich-dyha-card-hover,
.gerbrich-dyha-card:has(.gerbrich-field-error) .gerbrich-dyha-card-hover {
  overflow: visible !important;
}

/* Šířka má byť centrovaná pod samotným obrázkom, nie pod riadkom obrázok + Výška / délka. */
@media (min-width: 768px) {
  .gerbrich-sesazenky-size-visual {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }

  .gerbrich-sesazenky-size-toprow {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
    gap: 20px !important;
    width: 100% !important;
  }

  .gerbrich-sesazenky-size-image-wrap {
    flex: 0 1 570px !important;
    width: 570px !important;
    max-width: calc(100% - 120px) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .gerbrich-sesazenky-size-field-height {
    flex: 0 0 100px !important;
    width: 100px !important;
    max-width: 100px !important;
    text-align: center;
  }

  .gerbrich-sesazenky-size-field-width,
  .gerbrich-sesazenky-size-field.gerbrich-sesazenky-size-field-width {
    width: 570px !important;
    max-width: calc(100% - 120px) !important;
    margin-left: auto !important;
    margin-right: 120px !important;
  }
}

@media (max-width: 767px) {
  .gerbrich-sesazenky-size-field-width,
  .gerbrich-sesazenky-size-field.gerbrich-sesazenky-size-field-width {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}



/* =========================================================
   Gerbrich dýhy - v3.0 sesazenky bez filtru skladovosti
   ========================================================= */
.gerbrich-sesazenky-filter-no-stock {
  justify-content: flex-start !important;
}

.gerbrich-sesazenky-filter-no-stock .gerbrich-filter-group {
  justify-content: flex-start !important;
}

.gerbrich-sesazenky-mobile-filter .gerbrich-custom-dropdown {
  max-width: 100%;
}

/* =========================================================
   Gerbrich dýhy - v3.3 dynamické počty filtrov
   ========================================================= */

.gerbrich-filter-group a.is-disabled,
.gerbrich-custom-dropdown-option.is-disabled,
.gerbrich-custom-dropdown-option:disabled {
  opacity: 0.25 !important;
  pointer-events: none !important;
  cursor: default !important;
}

.gerbrich-filter-group a.is-disabled span,
.gerbrich-custom-dropdown-option.is-disabled span,
.gerbrich-custom-dropdown-option:disabled span {
  opacity: 1 !important;
}


/* Sesazenky: menšie názvy dýh na veľmi úzkych mobiloch */
@media (max-width: 380px) {
  .gerbrich-sesazenky-wood-title,
  .gerbrich-sesazenky-wood-title.font-chambers {
    font-size: 14px !important;
    line-height: 1.15 !important;
  }
}
