/* GamePC: sloučená stabilní verze bez řetězových @import. */
/* GamePC – čitelnější mobilní výběr řad Raiko */
@media (max-width: 640px) {
  .gpc-range .gpc-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .gpc-range .gpc-card {
    --image-column: 124px;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--image-column);
    grid-template-rows: auto 1fr auto;
    min-height: 124px;
    padding: 0;
    overflow: hidden;
    isolation: isolate;
    box-shadow:
      inset 3px 0 0 var(--accent),
      0 6px 18px rgba(31, 35, 48, 0.055);
  }

  .gpc-range .gpc-card::before {
    display: none;
  }

  .gpc-range .gpc-card::after {
    z-index: 1;
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.99) 0%,
      rgba(255, 255, 255, 0.97) 49%,
      rgba(255, 255, 255, 0.66) 72%,
      rgba(255, 255, 255, 0.1) 100%
    );
  }

  .gpc-range .gpc-card-top {
    position: relative;
    z-index: 2;
    grid-column: 1;
    grid-row: 1;
    padding: 13px 6px 0 15px;
  }

  .gpc-range .gpc-label {
    padding: 4px 7px;
    font-size: 9px;
    line-height: 1;
    letter-spacing: 0.14em;
  }

  .gpc-range .gpc-arrow {
    display: none;
  }

  .gpc-range .gpc-card-body {
    position: relative;
    z-index: 2;
    grid-column: 1;
    grid-row: 2;
    align-self: center;
    max-width: none;
    margin: 0;
    padding: 6px 6px 3px 15px;
  }

  .gpc-range .gpc-card h3 {
    margin: 0 0 2px;
    font-size: 22px;
    line-height: 1.02;
    letter-spacing: -0.035em;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }

  .gpc-range .gpc-card .gpc-use {
    margin: 0;
    font-size: 11px;
    line-height: 1.25;
    font-weight: 750;
  }

  .gpc-range .gpc-price {
    position: relative;
    z-index: 2;
    right: auto;
    bottom: auto;
    grid-column: 1;
    grid-row: 3;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-start;
    gap: 5px;
    min-width: 0;
    padding: 0 6px 12px 15px;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
  }

  .gpc-range .gpc-price small {
    font-size: 8px;
    line-height: 1;
    letter-spacing: 0.09em;
    white-space: nowrap;
  }

  .gpc-range .gpc-price strong {
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
  }

  .gpc-range .gpc-price strong::after {
    content: " →";
    color: var(--accent);
    font-weight: 900;
  }

  .gpc-range .gpc-pc-art {
    z-index: 0;
    top: 5px;
    right: -3px;
    bottom: 5px;
    width: calc(var(--image-column) + 8px);
    height: calc(100% - 10px);
    max-width: none;
    object-fit: contain;
    object-position: center right;
    opacity: 0.58;
    filter: saturate(0.86) contrast(0.98);
    -webkit-mask-image: none;
    mask-image: none;
  }

  .gpc-range .gpc-card-link {
    z-index: 5;
  }
}

@media (max-width: 370px) {
  .gpc-range .gpc-card {
    --image-column: 108px;
    min-height: 120px;
  }

  .gpc-range .gpc-card h3 {
    font-size: 20px;
  }

  .gpc-range .gpc-price {
    gap: 4px;
  }

  .gpc-range .gpc-price strong {
    font-size: 12px;
  }
}

/* GamePC – schválený kompaktní mobilní košík */
@media (max-width: 767px) {
  body.in-kosik {
    --gpc-cart-ink: #251f31;
    --gpc-cart-muted: #797482;
    --gpc-cart-purple: #5500bd;
    --gpc-cart-line: #e7e2ed;
    --gpc-cart-soft: #f7f4fb;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper {
    width: calc(100% - 20px) !important;
    margin: 14px auto 30px !important;
  }

  body.in-kosik .cart-header {
    margin: 0 0 16px !important;
  }

  body.in-kosik .cart-header .step {
    padding-inline: 3px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  body.in-kosik .cart-header .step::before {
    width: 26px !important;
    height: 26px !important;
    margin-bottom: 6px !important;
  }

  body.in-kosik .cart-inner > .cart-row > .col-md-8 > .cart-content {
    gap: 12px !important;
  }

  body.in-kosik .cart-table {
    display: block !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(42, 31, 56, .055) !important;
  }

  body.in-kosik .cart-table > tbody {
    display: block !important;
  }

  body.in-kosik .cart-table tr.removeable {
    position: relative;
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-areas:
      "image name"
      "availability availability"
      "quantity total";
    gap: 8px 12px;
    padding: 13px !important;
    border: 0 !important;
  }

  body.in-kosik .cart-table tr.removeable > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
  }

  body.in-kosik .cart-table .cart-p-image {
    grid-area: image;
  }

  body.in-kosik .cart-table .cart-p-image a {
    display: grid;
    width: 72px;
    height: 82px;
    place-items: center;
    background: linear-gradient(145deg, #f5f2fb, #f0f7fc);
  }

  body.in-kosik .cart-table .cart-p-image img {
    width: 66px !important;
    height: 76px !important;
    object-fit: contain;
  }

  body.in-kosik .cart-table .p-name {
    grid-area: name;
    padding-right: 20px !important;
  }

  body.in-kosik .cart-table .p-name .main-link {
    display: -webkit-box;
    overflow: hidden;
    font-size: 14px !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
  }

  body.in-kosik .cart-table .show-related {
    margin-top: 8px !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 10px !important;
    line-height: 1.25;
  }

  body.in-kosik .cart-table .p-availability {
    grid-area: availability;
    padding: 9px 0 !important;
    border-top: 1px solid var(--gpc-cart-line) !important;
    border-bottom: 1px solid var(--gpc-cart-line) !important;
    font-size: 10px !important;
  }

  body.in-kosik .cart-table .p-availability .p-label,
  body.in-kosik .cart-table .p-price {
    display: none !important;
  }

  body.in-kosik .cart-table .p-quantity {
    grid-area: quantity;
    align-self: center;
  }

  body.in-kosik .cart-table .p-quantity .p-label,
  body.in-kosik .cart-table .p-total .p-label {
    display: none !important;
  }

  body.in-kosik .cart-table .p-total {
    grid-area: total;
    align-self: center;
    justify-self: end;
    padding-right: 4px !important;
  }

  body.in-kosik .cart-table .p-total strong {
    color: var(--gpc-cart-ink) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
  }

  body.in-kosik .cart-table .remove-item {
    position: absolute !important;
    top: 11px;
    right: 10px;
  }

  body.in-kosik .cart-table tr.related {
    display: none !important;
  }

  body.in-kosik .cart-summary .extras-wrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body.in-kosik .cart-summary .extras-col {
    min-width: 0 !important;
    padding: 13px !important;
    border-radius: 15px !important;
    box-shadow: 0 7px 20px rgba(42, 31, 56, .04);
  }

  body.in-kosik .cart-summary .js-extras-col-summary {
    grid-column: 1 / -1 !important;
    order: 1 !important;
    padding: 16px !important;
  }

  body.in-kosik .cart-summary .summary-wrapper {
    display: block !important;
  }

  body.in-kosik .cart-summary .price-wrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: baseline;
    gap: 3px 10px;
    margin: 0 !important;
  }

  body.in-kosik .cart-summary .price-label {
    font-size: 12px !important;
    text-align: left !important;
  }

  body.in-kosik .cart-summary .price-wrapper .price-primary {
    font-size: 24px !important;
    line-height: 1.05 !important;
    white-space: nowrap;
  }

  body.in-kosik .cart-summary .price-wrapper .price-secondary {
    color: #918c98 !important;
    font-size: 13px !important;
  }

  body.in-kosik .cart-summary .summary-wrapper .next-step {
    margin-top: 13px !important;
  }

  body.in-kosik .next-step-forward {
    min-height: 50px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    box-shadow: 0 8px 20px rgba(85, 0, 189, .2) !important;
  }

  body.in-kosik .cart-summary .extras-col:not(.extras-col-basket):not(.js-extras-col-summary) {
    grid-column: 1 !important;
    order: 2 !important;
    padding: 12px !important;
  }

  body.in-kosik .cart-summary .extras-wrap,
  body.in-kosik .cart-summary .extras-wrap .extra-content {
    padding: 0 !important;
    background: transparent !important;
  }

  body.in-kosik .cart-summary .extras-wrap .extra.delivery {
    min-height: 74px !important;
    align-items: flex-start !important;
  }

  body.in-kosik .cart-summary .extras-wrap .extra.delivery > span {
    font-size: 12px !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  body.in-kosik .cart-summary .extras-col-basket {
    grid-column: 2 !important;
    order: 3 !important;
    display: block !important;
    padding: 12px !important;
  }

  body.in-kosik .discount-coupon-checkbox {
    width: 100% !important;
    min-height: 44px !important;
    padding: 8px 2px !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 12px !important;
    line-height: 1.25;
    text-align: left;
    text-decoration: none !important;
  }

  body.in-kosik .extras-col-basket.gpc-coupon-open .discount-coupon {
    margin-top: 4px !important;
  }

  body.in-kosik .discount-coupon .input-group {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body.in-kosik #discountCouponCode,
  body.in-kosik [data-testid="buttonSubmitDiscountCoupon"] {
    width: 100% !important;
    height: 40px !important;
    border-radius: 9px !important;
    font-size: 11px !important;
  }

  body.in-kosik .cart-inner .text-center {
    padding: 13px 15px !important;
    border-radius: 15px !important;
    font-size: 12px !important;
    text-align: left !important;
  }

  body.in-kosik .fvDoplnek-upsell {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 15px !important;
    border-radius: 16px !important;
  }

  body.in-kosik .fvDoplnek-upsell > h4 {
    grid-column: 1 / -1;
    font-size: 18px !important;
  }

  body.in-kosik .gpc-upsell-toggle {
    display: none !important;
  }

  body.in-kosik .fvDoplnek-upsell:not(.gpc-upsell-open) > .fvDoplnek-produkt,
  body.in-kosik .fvDoplnek-upsell > .fvDoplnek-produkt {
    display: block !important;
    min-width: 0;
    margin: 0 !important;
    padding: 9px !important;
    border: 1px solid var(--gpc-cart-line) !important;
    background: #fff;
  }

  body.in-kosik .fvDoplnek-upsell > .fvDoplnek-produkt > form,
  body.in-kosik .fvDoplnek-upsell > .fvDoplnek-produkt > .fvDoplnek-alignCenter {
    display: block !important;
  }

  body.in-kosik .fvDoplnek-upsell .fvDoplnek-product-image {
    display: block !important;
    width: 100% !important;
    height: 72px !important;
    margin: 0 0 7px !important;
    object-fit: contain;
    background: var(--gpc-cart-soft);
  }

  body.in-kosik .fvDoplnek-upsell .fvcontent {
    display: block !important;
    width: 100% !important;
  }

  body.in-kosik .fvDoplnek-upsell .header {
    display: flex !important;
    align-items: flex-start;
    gap: 5px;
  }

  body.in-kosik .fvDoplnek-upsell .fvDoplnek-text {
    min-width: 0;
  }

  body.in-kosik .fvDoplnek-upsell .name {
    display: -webkit-box !important;
    overflow: hidden;
    min-height: 30px;
    font-size: 10px !important;
    line-height: 1.35 !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  body.in-kosik .fvDoplnek-upsell .price {
    display: block !important;
    margin-top: 4px;
    font-size: 11px !important;
  }

  body.in-kosik .fvDoplnek-upsell .fvDoplnek-description {
    display: none !important;
  }
}

/* v8 – stejný systém pro tablet a desktop */
@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-table .show-related {
    display: none !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related {
    display: table-row !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    display: grid !important;
    position: relative !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 48px 18px 18px !important;
    border-top: 1px solid var(--gpc-line) !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td::before {
    content: "Doporučujeme k této sestavě";
    position: absolute;
    top: 18px;
    left: 18px;
    color: var(--gpc-ink);
    font-size: 15px;
    font-weight: 900;
  }

  body.in-kosik #cart-wrapper tr.related td > .cart-related-product {
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    grid-template-rows: auto auto !important;
    gap: 4px 12px !important;
    min-width: 0 !important;
    min-height: 96px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px !important;
    align-items: center !important;
    border: 1px solid var(--gpc-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 7px 20px rgba(42, 31, 56, .035);
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-info {
    display: contents !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    display: grid !important;
    width: 68px !important;
    height: 74px !important;
    margin: 0 !important;
    place-items: center;
    background: #f7f4fb !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img img {
    width: 64px !important;
    height: 70px !important;
    object-fit: contain !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    min-width: 0 !important;
    margin: 0 !important;
    color: var(--gpc-ink) !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-availability {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    color: #258c57 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button {
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button .price {
    color: var(--gpc-purple) !important;
    font-size: 14px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button form {
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button .add-to-cart-button {
    display: flex !important;
    width: 100% !important;
    min-height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 9px !important;
    color: var(--gpc-purple) !important;
    background: var(--gpc-lilac) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    text-transform: none !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 20px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > h4 {
    grid-column: 1 / -1 !important;
    margin: 0 0 2px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .gpc-upsell-toggle {
    display: none !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell:not(.gpc-upsell-open) > .fvDoplnek-produkt,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid var(--gpc-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .has-variants {
    grid-column: 1 / -1 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt > form,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt > .fvDoplnek-alignCenter {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-width: 0 !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-product-image {
    display: block !important;
    width: 72px !important;
    height: 78px !important;
    margin: 0 !important;
    padding: 3px !important;
    object-fit: contain !important;
    background: #f7f4fb !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvcontent {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .header {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell input[type="checkbox"] {
    position: static !important;
    width: 19px !important;
    height: 19px !important;
    margin: 0 !important;
    accent-color: var(--gpc-purple);
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text {
    display: block !important;
    min-width: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text .name {
    display: -webkit-box !important;
    overflow: hidden !important;
    min-height: 0 !important;
    color: var(--gpc-ink) !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text .price {
    display: block !important;
    margin-top: 5px !important;
    color: var(--gpc-purple) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header {
    display: block !important;
    margin-bottom: 8px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header > .fvDoplnek-text {
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variants {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant {
    display: grid !important;
    grid-template-columns: 19px minmax(0, 1fr) !important;
    gap: 7px !important;
    min-width: 0 !important;
    padding: 8px 10px !important;
    align-items: center !important;
    border: 1px solid var(--gpc-line) !important;
    border-radius: 9px !important;
    background: #faf8fd !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant .name,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant .price {
    display: block !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant .price {
    margin-top: 3px !important;
    font-size: 11px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-description,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell .upsell-product-tooltip {
    display: none !important;
  }
}

/* v14 – sjednocená doporučení a opravená ikona dopravy */
body.in-kosik .extra.delivery::before,
body.in-kosik .extra.delivery::after {
  display: none !important;
  content: none !important;
}

body.in-kosik .delivery-time {
  position: relative !important;
  padding-left: 42px !important;
}

body.in-kosik .delivery-time::before {
  content: "✓";
  position: absolute;
  top: 50%;
  left: 14px;
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border: 1px solid #d8d0e5;
  border-radius: 50%;
  color: var(--gpc-purple);
  background: #f7f3fc;
  font-size: 11px;
  font-weight: 900;
  transform: translateY(-50%);
}

body.in-kosik .cart-table tr.related[hidden] {
  display: none !important;
}

/* v12 – desktopové doporučení bez kolize názvu, ceny a tlačítka */
@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.in-kosik #cart-wrapper tr.related td > .cart-related-product {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    grid-template-rows: minmax(38px, auto) auto !important;
    gap: 8px 12px !important;
    min-height: 126px !important;
    padding: 12px !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 82px !important;
    height: 92px !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img img {
    width: 78px !important;
    height: 88px !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 2 !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    display: grid !important;
    grid-template-columns: auto minmax(110px, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button .price {
    grid-column: 1 !important;
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    text-align: left !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button form {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button .add-to-cart-button {
    width: 100% !important;
    min-height: 36px !important;
    padding: 7px 10px !important;
    border-radius: 8px !important;
  }
}

@media (min-width: 1600px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (min-width: 768px) {
  body.in-kosik #cart-wrapper tr.related td > .cart-related-product {
    grid-template-rows: minmax(50px, auto) auto !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-name {
    -webkit-line-clamp: 3 !important;
  }
}

/* v10 – stabilní netabulkové rozložení košíku od tabletové šířky */
@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-table,
  body.in-kosik #cart-wrapper .cart-table > tbody {
    display: block !important;
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.removeable {
    display: grid !important;
    grid-template-columns: 76px minmax(240px, 1fr) 105px 116px 110px !important;
    grid-template-areas: "image name availability quantity total" !important;
    gap: 14px !important;
    width: 100% !important;
    padding: 18px !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.removeable > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-table .cart-p-image {
    grid-area: image !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-name {
    grid-area: name !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-availability {
    grid-area: availability !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-quantity {
    grid-area: quantity !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-price {
    display: none !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-total {
    grid-area: total !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 7px !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related {
    display: block !important;
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  body.in-kosik #cart-wrapper .cart-table tr.removeable {
    grid-template-columns: 76px minmax(0, 1fr) 112px 112px !important;
    grid-template-areas:
      "image name name name"
      "availability availability quantity total" !important;
    row-gap: 12px !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-availability {
    padding-top: 10px !important;
    border-top: 1px solid var(--gpc-line) !important;
  }
}

/* v11 – finální typografické čištění tablet/desktop */
@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-table tr.removeable > td.p-price,
  body.in-kosik #cart-wrapper .cart-table tr.removeable .unit-value {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-availability {
    display: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-name {
    grid-row: 1 / 3 !important;
    align-self: center !important;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .has-variants {
    grid-column: 1 !important;
  }
}

/* v9 – vyjmutí doporučení z tabulkového výpočtu šířek */
@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-table tr.related {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    display: grid !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
}

/* v7 – přesné zarovnání produktu s barevnými variantami */
@media (max-width: 767px) {
  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header > .fvDoplnek-text {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header .name {
    display: -webkit-box !important;
    overflow: hidden !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: 43px !important;
    margin: 0 !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variants {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant {
    display: grid !important;
    grid-template-columns: 19px auto !important;
    justify-content: center !important;
    align-content: center !important;
    gap: 6px !important;
    min-height: 48px !important;
    padding: 6px 7px !important;
    text-align: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant > .fvDoplnek-text {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant .name {
    width: auto !important;
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant .price {
    width: auto !important;
    margin: 3px 0 0 !important;
    font-size: 9px !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
}

/* v6 – čitelná spodní nabídka „Mohlo by se hodit“ */
@media (max-width: 767px) {
  body.in-kosik #cart-wrapper .fvDoplnek-upsell {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 14px !important;
    overflow: hidden !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > h4 {
    grid-column: 1 !important;
    margin: 0 0 2px !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px !important;
    overflow: hidden !important;
    border: 1px solid var(--gpc-cart-line) !important;
    border-radius: 11px !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt > form,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt > .fvDoplnek-alignCenter {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-product-image {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 64px !important;
    height: 72px !important;
    min-width: 64px !important;
    margin: 0 !important;
    padding: 3px !important;
    object-fit: contain !important;
    background: var(--gpc-cart-soft) !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvcontent {
    grid-column: 2 !important;
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .header {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 7px !important;
    width: 100% !important;
    min-width: 0 !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .header > span:first-child {
    width: 22px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell input[type="checkbox"] {
    display: block !important;
    position: static !important;
    width: 19px !important;
    height: 19px !important;
    min-width: 19px !important;
    margin: 0 !important;
    accent-color: var(--gpc-cart-purple);
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text > .name {
    display: -webkit-box !important;
    overflow: hidden !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    color: var(--gpc-cart-ink) !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-text > .price {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 5px 0 0 !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header {
    display: block !important;
    margin-bottom: 8px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variants {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant {
    display: grid !important;
    grid-template-columns: 19px minmax(0, 1fr) !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 7px !important;
    align-items: center !important;
    border: 1px solid var(--gpc-cart-line) !important;
    border-radius: 8px !important;
    background: #faf8fd !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant .name {
    display: block !important;
    min-height: 0 !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-variant .price {
    display: block !important;
    margin-top: 2px !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .fvDoplnek-description,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell .upsell-product-tooltip {
    display: none !important;
  }
}

@media (max-width: 350px) {
  body.in-kosik .cart-summary .extras-wrapper {
    grid-template-columns: 1fr !important;
  }

  body.in-kosik .cart-summary .extras-col:not(.extras-col-basket):not(.js-extras-col-summary),
  body.in-kosik .cart-summary .extras-col-basket {
    grid-column: 1 !important;
  }
}

/* v5 – odstranění kolizí a nadbytečné výšky souvisejících produktů */
@media (max-width: 767px) {
  body.in-kosik #cart-wrapper tr.related td > .cart-related-product {
    display: grid !important;
    grid-template-columns: 62px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 8px 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px !important;
    align-items: center !important;
    overflow: hidden !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-info {
    display: contents !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    width: 62px !important;
    height: 66px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-img img {
    width: 58px !important;
    height: 62px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    display: -webkit-box !important;
    position: static !important;
    overflow: hidden !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    transform: none !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-availability {
    display: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    align-self: auto !important;
    display: grid !important;
    grid-template-columns: auto minmax(120px, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    transform: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button > strong.price {
    grid-column: 1 !important;
    display: block !important;
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button > form {
    grid-column: 2 !important;
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  body.in-kosik #cart-wrapper tr.related .cart-related-button .add-to-cart-button {
    display: flex !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
    font-size: 10px !important;
    line-height: 1 !important;
  }
}

/* v4 – související produkty jako čitelné vodorovné řádky */
@media (max-width: 767px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-product {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 88px !important;
    grid-template-rows: auto auto !important;
    column-gap: 9px !important;
    row-gap: 3px !important;
    min-height: 88px !important;
    padding: 9px !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .cart-related-info {
    display: contents !important;
  }

  body.in-kosik #cart-wrapper .cart-related-img {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 58px !important;
    height: 68px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-img img {
    width: 54px !important;
    height: 64px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    min-height: 0 !important;
    font-size: 11px !important;
    line-height: 1.28 !important;
    -webkit-line-clamp: 2 !important;
  }

  body.in-kosik #cart-wrapper .cart-related-availability {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    font-size: 9px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button {
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button .price {
    font-size: 12px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button .add-to-cart-button {
    min-height: 34px !important;
    padding: 6px 3px !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
  }
}

@media (max-width: 350px) {
  body.in-kosik #cart-wrapper .cart-related-product {
    grid-template-columns: 52px minmax(0, 1fr) 78px !important;
    column-gap: 7px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-img {
    width: 52px !important;
    height: 62px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-img img {
    width: 49px !important;
    height: 58px !important;
  }
}

/* v3 – přesné přepsání mobilních pravidel Shoptetu */
@media (max-width: 767px) {
  body.in-kosik #cart-wrapper .cart-table tr.removeable {
    min-height: 0 !important;
    height: auto !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.removeable > td.p-quantity,
  body.in-kosik #cart-wrapper .cart-table tr.removeable > td.p-total {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.removeable > td.p-price {
    display: none !important;
    position: static !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-total {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px;
  }

  body.in-kosik #cart-wrapper .cart-table .p-total .inline {
    position: static !important;
  }

  body.in-kosik #cart-wrapper .cart-table .show-related {
    display: none !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 12px 13px !important;
    border: 0 !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    display: grid !important;
    position: relative !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100% !important;
    padding: 39px 0 0 !important;
    border-top: 1px solid var(--gpc-cart-line) !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.related > td::before {
    content: "Doporučujeme k této sestavě";
    position: absolute;
    top: 12px;
    left: 0;
    color: var(--gpc-cart-ink);
    font-size: 13px;
    font-weight: 900;
  }

  body.in-kosik #cart-wrapper .cart-related-product {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 196px !important;
    margin: 0 !important;
    padding: 9px !important;
    border: 1px solid var(--gpc-cart-line) !important;
    border-radius: 11px !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .cart-related-info {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 3px 7px;
    min-width: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-related-img {
    grid-row: 1 / 3;
    display: grid !important;
    width: 48px !important;
    height: 56px !important;
    place-items: center;
    background: var(--gpc-cart-soft);
  }

  body.in-kosik #cart-wrapper .cart-related-img img {
    width: 45px !important;
    height: 52px !important;
    object-fit: contain;
  }

  body.in-kosik #cart-wrapper .cart-related-name {
    display: -webkit-box !important;
    overflow: hidden;
    min-width: 0;
    color: var(--gpc-cart-ink) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }

  body.in-kosik #cart-wrapper .cart-related-availability {
    color: #258c57 !important;
    font-size: 9px !important;
    font-weight: 800;
  }

  body.in-kosik #cart-wrapper .cart-related-button {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 7px;
    margin-top: auto !important;
    padding-top: 9px !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button .price {
    color: var(--gpc-cart-purple) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    text-align: left !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button form {
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper .cart-related-button .add-to-cart-button {
    width: 100% !important;
    min-height: 36px !important;
    padding: 7px 5px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #eee7fa !important;
    color: var(--gpc-cart-purple) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    text-transform: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .price-wrapper {
    display: grid !important;
    position: static !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: 5px 10px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .price-wrapper > * {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    text-align: initial !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .price-wrapper > .price-label {
    align-self: center;
    color: var(--gpc-cart-ink) !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .price-wrapper > strong.price {
    justify-self: end;
    color: var(--gpc-cart-purple) !important;
    font-size: 23px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .price-wrapper > .price-label.price-secondary,
  body.in-kosik #cart-wrapper .cart-summary .price-wrapper > strong.price-secondary {
    color: #96919c !important;
    font-size: 12px !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col:not(.extras-col-basket):not(.js-extras-col-summary),
  body.in-kosik #cart-wrapper .cart-summary .extras-col-basket {
    min-height: 92px !important;
    overflow: hidden !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-wrap,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-item,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-content,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra.delivery {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra.delivery > span {
    display: block !important;
    position: static !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  body.in-kosik #cart-wrapper .discount-coupon-checkbox {
    display: flex !important;
    position: static !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 5px 0 !important;
    align-items: center !important;
    transform: none !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
  }
}

@media (max-width: 350px) {
  body.in-kosik #cart-wrapper .cart-table tr.related > td {
    grid-template-columns: 1fr !important;
  }
}

/* v15 – prázdný blok doporučení nesmí držet výšku košíku */
body.in-kosik #cart-wrapper .cart-table tr.related[hidden],
body.in-kosik #cart-wrapper .cart-table tr.gpc-related-unified[hidden] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Finální zarovnání produktu a souhrnu košíku nad Shoptet styly. */
body.in-kosik #cart-wrapper table.cart-table,
body.in-kosik #cart-wrapper table.cart-table > tbody {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

body.in-kosik #cart-wrapper table.cart-table tr.removeable {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
}

body.in-kosik #cart-wrapper table.cart-table .p-total {
  padding-right: 38px !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item {
  position: absolute !important;
  inset: 14px 14px auto auto !important;
  display: grid !important;
  place-items: center !important;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e7e1ed !important;
  border-radius: 10px !important;
  color: #887f92 !important;
  background: #f8f6fa !important;
  opacity: 1 !important;
  transform: none !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item:hover {
  color: #a13957 !important;
  border-color: #efd7df !important;
  background: #fff4f7 !important;
}

@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-summary .extras-wrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .8fr) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
    align-items: stretch !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col {
    width: 100% !important;
    min-height: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    align-self: stretch !important;
    border: 1px solid #e4dced !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .js-extras-col-summary {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    padding: 20px 22px !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col:not(.extras-col-basket):not(.js-extras-col-summary) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 18px !important;
    background: #f9f8fc !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col-basket {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 18px !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-wrap,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-item,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-content,
  body.in-kosik #cart-wrapper .cart-summary .extra.delivery {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extra.delivery::before {
    display: none !important;
    content: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extra.delivery > span {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #30273a !important;
    background: transparent !important;
    text-align: center !important;
    line-height: 1.35 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col-basket .discount-coupon {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .h4 {
    width: 100% !important;
    margin: 0 0 9px !important;
    text-align: center !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .input-group {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .form-control,
  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .btn {
    height: 44px !important;
    margin: 0 !important;
  }
}

@media (max-width: 767px) {
  body.in-kosik #cart-wrapper table.cart-table .p-total {
    padding-right: 0 !important;
  }

  body.in-kosik #cart-wrapper table.cart-table .remove-item {
    inset: 10px 10px auto auto !important;
    width: 30px !important;
    height: 30px !important;
  }
}


/* Finální zarovnání produktu a souhrnu košíku nad Shoptet styly. */
body.in-kosik #cart-wrapper table.cart-table,
body.in-kosik #cart-wrapper table.cart-table > tbody {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

body.in-kosik #cart-wrapper table.cart-table tr.related,
body.in-kosik #cart-wrapper table.cart-table tr.related.gpc-related-unified,
body.in-kosik #cart-wrapper table.cart-table .show-related {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.in-kosik #cart-wrapper table.cart-table tr.removeable {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
}

body.in-kosik #cart-wrapper table.cart-table .p-total {
  padding-right: 38px !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item {
  position: absolute !important;
  inset: 14px 14px auto auto !important;
  display: grid !important;
  place-items: center !important;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e7e1ed !important;
  border-radius: 10px !important;
  color: #887f92 !important;
  background: #f8f6fa !important;
  opacity: 1 !important;
  transform: none !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item:hover {
  color: #a13957 !important;
  border-color: #efd7df !important;
  background: #fff4f7 !important;
}

@media (min-width: 768px) {
  body.in-kosik #cart-wrapper .cart-summary .extras-wrapper {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .8fr) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
    align-items: stretch !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col {
    width: 100% !important;
    min-height: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    align-self: stretch !important;
    border: 1px solid #e4dced !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .js-extras-col-summary {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    padding: 20px 22px !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col:not(.extras-col-basket):not(.js-extras-col-summary) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 18px !important;
    background: #f9f8fc !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col-basket {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 18px !important;
    background: #fff !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-wrap,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-item,
  body.in-kosik #cart-wrapper .cart-summary .extras-wrap .extra-content,
  body.in-kosik #cart-wrapper .cart-summary .extra.delivery {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extra.delivery::before {
    display: none !important;
    content: none !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extra.delivery > span {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #30273a !important;
    background: transparent !important;
    text-align: center !important;
    line-height: 1.35 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .extras-col-basket .discount-coupon {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .h4 {
    width: 100% !important;
    margin: 0 0 9px !important;
    text-align: center !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .input-group {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .form-control,
  body.in-kosik #cart-wrapper .cart-summary .discount-coupon .btn {
    height: 44px !important;
    margin: 0 !important;
  }
}

@media (max-width: 767px) {
  body.in-kosik #cart-wrapper table.cart-table .p-total {
    padding-right: 0 !important;
  }

  body.in-kosik #cart-wrapper table.cart-table .remove-item {
    inset: 10px 10px auto auto !important;
    width: 30px !important;
    height: 30px !important;
  }
}



/* Prázdný sjednocený blok doporučení nesmí držet výšku košíku. */
body.in-kosik #cart-wrapper .cart-table tr.related[hidden],
body.in-kosik #cart-wrapper .cart-table tr.gpc-related-unified[hidden] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}


/* QR platba: zobrazit pouze samotnou zápornou částku. */
body.in-krok-1
  #order-billing-methods
  #name-billingId-318
  .payment-shipping-price::before {
  display: none !important;
  content: none !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  line-height: 1 !important;
}

body.in-kosik #cart-wrapper table.cart-table .remove-item::before,
body.in-kosik #cart-wrapper table.cart-table .remove-item::after {
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
  line-height: 1 !important;
  transform: none !important;
}

@media (min-width: 768px) {
  body.in-kosik #cart-wrapper table.cart-table .remove-item {
    top: 50% !important;
    right: 14px !important;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
  }
}

@media (max-width: 767px) {
  body.in-kosik #cart-wrapper table.cart-table .remove-item {
    top: 10px !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
  }
}


@media (max-width: 767px) {
  body.in-kosik #cart-wrapper table.cart-table .p-name {
    box-sizing: border-box !important;
    padding-right: 44px !important;
  }
}


@media (min-width: 992px) {
  body.ordering-process .cart-inner > .cart-row {
    display: flex !important;
    align-items: stretch !important;
  }

  body.ordering-process .cart-inner > .cart-row > .col-md-8,
  body.ordering-process .cart-inner > .cart-row > #checkoutSidebar {
    float: none !important;
  }

  body.ordering-process .cart-inner > .cart-row > #checkoutSidebar {
    align-self: stretch !important;
    height: auto !important;
    min-height: 100% !important;
  }

  body.ordering-process #checkoutSidebar .order-summary {
    position: sticky !important;
    top: 20px !important;
    z-index: 20 !important;
    align-self: flex-start !important;
  }
}

@media (max-width: 991px) {
  body.ordering-process #checkoutSidebar .order-summary {
    position: static !important;
    top: auto !important;
  }
}



/* Apple modelové řady: na telefonu upřednostnit čitelnost před počtem sloupců. */
@media (max-width: 520px) {
  .gpc-apple-shop .gpc-apple-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  .gpc-apple-shop .gpc-apple-card {
    height: 112px !important;
    min-height: 112px !important;
    padding: 14px !important;
  }

  .gpc-apple-shop .gpc-apple-copy {
    width: calc(100% - 116px) !important;
  }

  .gpc-apple-shop .gpc-apple-card h3 {
    margin: 4px 0 !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .gpc-apple-shop .gpc-apple-family {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-meta {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .gpc-apple-shop .gpc-apple-price {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .gpc-apple-shop .gpc-apple-price small {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-image {
    right: 6px !important;
    width: 112px !important;
    height: 108px !important;
    object-fit: contain !important;
  }
}


/* Apple modelové řady: na telefonu upřednostnit čitelnost před počtem sloupců. */
@media (max-width: 520px) {
  .gpc-apple-shop .gpc-apple-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  .gpc-apple-shop .gpc-apple-card {
    height: 112px !important;
    min-height: 112px !important;
    padding: 14px !important;
  }

  .gpc-apple-shop .gpc-apple-copy {
    width: calc(100% - 116px) !important;
  }

  .gpc-apple-shop .gpc-apple-card h3 {
    margin: 4px 0 !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .gpc-apple-shop .gpc-apple-family {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-meta {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .gpc-apple-shop .gpc-apple-price {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .gpc-apple-shop .gpc-apple-price small {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-image {
    right: 6px !important;
    width: 112px !important;
    height: 108px !important;
    object-fit: contain !important;
  }
}

@media (min-width: 992px) {
  body.ordering-process #checkoutSidebar > .cart-content {
    position: sticky !important;
    top: 20px !important;
    z-index: 20 !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.ordering-process #checkoutSidebar .order-summary {
    position: static !important;
    top: auto !important;
  }
}

body.ordering-process #checkoutSidebar #orderFormButton {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  padding: 0 14px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

body.ordering-process #checkoutSidebar #orderFormButton .order-button-text {
  display: block !important;
  min-width: 0 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  white-space: nowrap !important;
}

body.ordering-process #checkoutSidebar #orderFormButton::before,
body.ordering-process #checkoutSidebar #orderFormButton::after {
  position: static !important;
  inset: auto !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  line-height: 1 !important;
  transform: none !important;
}

@media (max-width: 991px) {
  body.ordering-process #checkoutSidebar > .cart-content {
    position: static !important;
    top: auto !important;
  }

  body.ordering-process #checkoutSidebar #orderFormButton {
    gap: 8px !important;
    padding-inline: 12px !important;
    font-size: 13px !important;
  }
}


/*
 * Checkout steps 1–2: give the sticky order panel the full height of the
 * checkout row. Shoptet's Bootstrap floats otherwise collapse the sidebar to
 * the panel's own height, leaving no space in which position: sticky can move.
 */
@media (min-width: 992px) {
  body.ordering-process .cart-inner > .cart-row {
    display: flex !important;
    align-items: stretch !important;
  }

  body.ordering-process .cart-inner > .cart-row > .col-md-8,
  body.ordering-process .cart-inner > .cart-row > #checkoutSidebar {
    float: none !important;
  }

  body.ordering-process .cart-inner > .cart-row > #checkoutSidebar {
    align-self: stretch !important;
    height: auto !important;
    min-height: 0 !important;
  }
}


/*
 * Mobilní pojistka pro vlastní obsahové mřížky GamePC.
 * Běžný produktový výpis Shoptetu ani desktopové rozložení neovlivňuje.
 */
@media (max-width: 520px) {
  :is(
      .gpc-cat-grid,
      .gpc-products-grid,
      .gpc-card-grid,
      .gpc-link-grid,
      .gpc-related-grid,
      .gpc-raiko-grid,
      .gpc-grid-2,
      .gpc-grid-3,
      .gpc-premium-category-intro__games-grid
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  :is(
      .gpc-cat-grid,
      .gpc-products-grid,
      .gpc-card-grid,
      .gpc-link-grid,
      .gpc-related-grid,
      .gpc-raiko-grid,
      .gpc-grid-2,
      .gpc-grid-3,
      .gpc-premium-category-intro__games-grid
    )
    :is(h2, h3, h4, strong, a, p, span) {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  :is(
      .gpc-cat,
      .gpc-product-card,
      .gpc-media-card,
      .gpc-info-card,
      .gpc-final-card,
      .gpc-raiko-card
    ) {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}


/* Apple modelové řady: na telefonu upřednostnit čitelnost před počtem sloupců. */
@media (max-width: 520px) {
  .gpc-apple-shop .gpc-apple-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  .gpc-apple-shop .gpc-apple-card {
    height: 112px !important;
    min-height: 112px !important;
    padding: 14px !important;
  }

  .gpc-apple-shop .gpc-apple-copy {
    width: calc(100% - 116px) !important;
  }

  .gpc-apple-shop .gpc-apple-card h3 {
    margin: 4px 0 !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .gpc-apple-shop .gpc-apple-family {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-meta {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .gpc-apple-shop .gpc-apple-price {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .gpc-apple-shop .gpc-apple-price small {
    font-size: 9px !important;
  }

  .gpc-apple-shop .gpc-apple-image {
    right: 6px !important;
    width: 112px !important;
    height: 108px !important;
    object-fit: contain !important;
  }
}



/*
 * Checkout steps use different wrappers in Shoptet:
 * step 1 is inside .cart-inner, step 2 is directly inside form.sending-order.
 * Target the shared .cart-row itself so both layouts receive the same sticky
 * two-column treatment on tablets and narrow desktop windows.
 */
@media (min-width: 768px) {
  body.ordering-process .row.cart-row {
    display: flex !important;
    align-items: stretch !important;
  }

  body.ordering-process .row.cart-row > .col-md-8 {
    float: none !important;
    width: 66.66666667% !important;
    min-width: 0 !important;
  }

  body.ordering-process .row.cart-row > #checkoutSidebar {
    float: none !important;
    width: 33.33333333% !important;
    min-width: 0 !important;
    align-self: stretch !important;
    height: auto !important;
  }

  body.ordering-process #checkoutSidebar > .cart-content {
    position: sticky !important;
    top: 16px !important;
    z-index: 20 !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.ordering-process #checkoutSidebar .order-summary {
    position: static !important;
    top: auto !important;
  }
}

@media (max-width: 767px) {
  body.ordering-process .row.cart-row {
    display: block !important;
  }

  body.ordering-process .row.cart-row > .col-md-8,
  body.ordering-process .row.cart-row > #checkoutSidebar {
    width: 100% !important;
  }

  body.ordering-process #checkoutSidebar > .cart-content {
    position: static !important;
    top: auto !important;
  }
}


/*
 * GamePC – mobilní kategorie bez vodorovného posouvání
 * Záměrně cílí pouze na kategorie a řazení. Produktové galerie a bannery
 * zůstávají beze změny.
 */
@media (max-width: 767px) {
  html body .gpc-cat__rail,
  html body .gpc-cat--games .gpc-cat__rail {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    align-items: stretch !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    overscroll-behavior-x: auto !important;
    scroll-snap-type: none !important;
    -webkit-overflow-scrolling: auto !important;
  }

  html body .gpc-cat__card,
  html body .gpc-cat--games .gpc-cat__card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 88px !important;
    scroll-snap-align: none !important;
  }

  html body .gpc-cat__card-inner {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body .listSorting__controls {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  html body .listSorting__controls > li {
    flex: 1 1 calc(50% - 5px) !important;
    min-width: 0 !important;
    scroll-snap-align: none !important;
  }
}



/*
 * GamePC unified checkout layout
 * One structural contract for every Shoptet ordering step:
 *   .row.cart-row
 *     > .col-md-8          (main form)
 *     > #checkoutSidebar   (order summary)
 */
body.ordering-process {
  --gpc-checkout-gap: clamp(16px, 2.2vw, 32px);
  --gpc-checkout-sidebar-min: 280px;
  --gpc-checkout-sticky-top: 16px;
}

@media (min-width: 768px) {
  body.ordering-process .row.cart-row {
    display: grid !important;
    grid-template-columns:
      minmax(0, 2fr)
      minmax(var(--gpc-checkout-sidebar-min), 1fr) !important;
    align-items: stretch !important;
    gap: var(--gpc-checkout-gap) !important;
    margin-inline: 0 !important;
  }

  body.ordering-process .row.cart-row > .col-md-8,
  body.ordering-process .row.cart-row > #checkoutSidebar {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-inline: 0 !important;
  }

  body.ordering-process .row.cart-row > #checkoutSidebar {
    align-self: stretch !important;
    height: auto !important;
  }

  /*
   * Shoptet uses different wrappers on individual ordering steps. None of
   * them may clip the sticky summary.
   */
  body.ordering-process :is(
      #content-wrapper,
      #content,
      .content-wrapper-in,
      .content-inner,
      .cart-inner,
      form.sending-order,
      .row.cart-row,
      #checkoutSidebar
    ) {
    overflow: visible !important;
  }

  body.ordering-process #checkoutSidebar > .cart-content {
    position: sticky !important;
    top: var(--gpc-checkout-sticky-top) !important;
    z-index: 20 !important;
    align-self: start !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - (2 * var(--gpc-checkout-sticky-top))) !important;
    max-height: calc(100dvh - (2 * var(--gpc-checkout-sticky-top))) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(72, 25, 145, 0.28) transparent;
  }

  body.ordering-process #checkoutSidebar > .cart-content::-webkit-scrollbar {
    width: 6px;
  }

  body.ordering-process #checkoutSidebar > .cart-content::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(72, 25, 145, 0.28);
  }

  body.ordering-process #checkoutSidebar .order-summary {
    position: static !important;
    inset: auto !important;
  }
}

@media (max-width: 767px) {
  body.ordering-process .row.cart-row {
    display: block !important;
    margin-inline: 0 !important;
  }

  body.ordering-process .row.cart-row > .col-md-8,
  body.ordering-process .row.cart-row > #checkoutSidebar {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    padding-inline: 0 !important;
  }

  body.ordering-process #checkoutSidebar > .cart-content {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Explicit placement neutralizes Shoptet's historical column ordering rules. */
@media (min-width: 768px) {
  body.ordering-process .row.cart-row > .col-md-8 {
    grid-column: 1 !important;
  }

  body.ordering-process .row.cart-row > #checkoutSidebar {
    grid-column: 2 !important;
  }
}


/*
 * The cart page also carries Shoptet's .ordering-process body class, but it
 * does not use the two-column checkout sidebar. Restore its original full
 * width after the unified checkout grid.
 */
body.in-kosik .cart-inner > .row.cart-row {
  display: block !important;
  margin-inline: -15px !important;
}

body.in-kosik .cart-inner > .row.cart-row > .col-md-8 {
  float: none !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding-inline: 15px !important;
  grid-column: auto !important;
}

body.in-kosik .cart-inner > .row.cart-row > .sidebar-in-cart {
  display: none !important;
}


/*
 * GamePC – statické tematické obrázky kategorií.
 * Bez JavaScriptu, MutationObserveru, fetchů a dynamických změn DOM.
 */
html body .gpc-cat__card {
  position: relative !important;
  isolation: isolate;
  min-width: 0 !important;
  padding-right: 82px !important;
  overflow: hidden !important;
}

html body .gpc-cat__card > a {
  z-index: 4 !important;
}

html body .gpc-cat__card > b,
html body .gpc-cat__card .gpc-cat__copy {
  position: relative;
  z-index: 2;
  min-width: 0;
}

html body .gpc-cat__card::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 8px;
  width: 68px;
  height: 68px;
  border-radius: 6px;
  background-color: rgba(247, 248, 252, 0.9);
  background-image: var(--gpc-category-image, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  mix-blend-mode: multiply;
  transform: translateY(-50%);
  transition: transform 160ms ease;
}

html body .gpc-cat__card:hover::after {
  transform: translateY(-50%) scale(1.045);
}

/* PC komponenty */
.gpc-cat__card:has(>a[href="/graficke-karty/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240830_113039.jpeg")}
.gpc-cat__card:has(>a[href="/pc-skrine/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240830_120304.jpeg")}
.gpc-cat__card:has(>a[href="/cpu-chladice/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_35.jpeg")}
.gpc-cat__card:has(>a[href="/pc-uloziste/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_37.jpeg")}
.gpc-cat__card:has(>a[href="/ventilatory/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/7063.jpg")}
.gpc-cat__card:has(>a[href="/rgb-herni-osvetleni/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_36.jpeg")}
.gpc-cat__card:has(>a[href="/napajeci-zdroje-psu/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_12-1.jpeg")}

/* Herní příslušenství */
.gpc-cat__card:has(>a[href="/monitory/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240829_202733.png")}
.gpc-cat__card:has(>a[href="/herni-klavesnice/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_44.jpeg")}
.gpc-cat__card:has(>a[href="/herni-sluchatka/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_46.jpeg")}
.gpc-cat__card:has(>a[href="/herni-mysi/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_45.jpeg")}
.gpc-cat__card:has(>a[href="/podlozky/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/6967.jpg")}
.gpc-cat__card:has(>a[href="/gaming-controllers/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/rog_raikri_ii_xbox_wireless_main.jpg")}
.gpc-cat__card:has(>a[href="/asus-cashback-gaming/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/images.png")}
.gpc-cat__card:has(>a[href="/100-rog-20-years-ball/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/images-1.png")}
.gpc-cat__card:has(>a[href="/herni-zidle-kresla/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_48.jpeg")}
.gpc-cat__card:has(>a[href="/herni-stoly/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/7162.jpg")}
.gpc-cat__card:has(>a[href="/kabely/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_43.jpeg")}
.gpc-cat__card:has(>a[href="/bt-wifi/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_41.jpeg")}

/* Počítače podle her */
.gpc-cat__card:has(>a[href="/herni-pc-pro-minecraft/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_1-1.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-fortnite/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/12br-delay-social-news-header-02-1920x1080-119208936.jpg")}
.gpc-cat__card:has(>a[href="/fifa-26/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2-3.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-gta-v/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2-1.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-valorant/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/n__vrh_bez_n__zvu_(1).png")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-league-of-legends/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/5.png")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-counter-strike-2/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_9-2.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-pubg/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/pubg-logo-0.png")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-call-of-duty/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_11-2.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-apex-legends/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_8-1.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-overwatch/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2.jpeg")}
.gpc-cat__card:has(>a[href="/herni-pc-pro-world-of-warcraft/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/944fb200-65a4-4981-a648-bbaac4edde16.png")}

@media (max-width: 767px) {
  html body .gpc-cat__rail,
  html body .gpc-cat--games .gpc-cat__rail {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  html body .gpc-cat__card,
  html body .gpc-cat--games .gpc-cat__card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 96px !important;
    padding-right: 112px !important;
    scroll-snap-align: none !important;
  }

  html body .gpc-cat__card::after {
    right: 10px;
    width: 94px;
    height: 78px;
    border: 1px solid rgba(223, 226, 235, 0.8);
    background-color: #f7f7fb;
  }

  html body .listSorting__controls {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  html body .listSorting__controls > li {
    flex: 1 1 calc(50% - 5px) !important;
    min-width: 0 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .gpc-cat__card::after {
    transition: none !important;
  }
}

.ordering-process .msg-error {
  max-width: 640px;
  margin: 18px auto;
  padding: 20px 22px !important;
  border-left: 5px solid #4400aa !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #faf8ff, #fff2f5) !important;
  color: #260260 !important;
  box-shadow: 0 14px 34px #26026022 !important;
  font-size: 15px !important;
  text-align: left !important;
}

.ordering-process .msg-error::before {
  content: "🎮 ";
  font-size: 22px;
}



/* Compact and optically centered mobile main navigation. */
@media (max-width: 767px) {
  #navigation .menu-level-1 {
    padding: 8px 10px 16px !important;
  }

  #navigation .menu-level-1 > li {
    min-height: 52px !important;
    margin: 0 0 7px !important;
  }

  #navigation .menu-level-1 > li > a {
    display: flex !important;
    min-height: 50px !important;
    height: 50px !important;
    padding: 0 15px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    line-height: 1.2 !important;
  }

  #navigation .menu-level-1 > li > a b {
    display: block !important;
    margin: 0 !important;
    line-height: 1.2 !important;
  }

  #navigation .menu-level-1 > li.ext > a {
    padding-right: 40px !important;
  }

  #navigation .menu-level-1 > li.ext > a::after {
    top: 50% !important;
    right: 16px !important;
    width: 8px !important;
    height: 8px !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transform-origin: center !important;
  }

  #navigation .menu-level-1 > li.ext.exp > a::after,
  #navigation .menu-level-1 > li.ext > a[aria-expanded="true"]::after {
    transform: translateY(-50%) rotate(225deg) !important;
  }

  /*
   * Shoptet hides a closed submenu only with visibility, while its 9px top
   * and bottom padding remains in layout. Remove that 18px ghost gap.
   */
  #navigation .menu-level-1 > li.ext:not(.exp) > .menu-level-2,
  #navigation .menu-level-1 > li.ext > a[aria-expanded="false"] + .menu-level-2 {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  #navigation .menu-level-1 > li.ext.exp > .menu-level-2,
  #navigation .menu-level-1 > li.ext > a[aria-expanded="true"] + .menu-level-2 {
    display: grid !important;
    height: auto !important;
    max-height: 64vh !important;
    padding: 8px !important;
  }
}


/* v2 – kompletní tematické mapování 57 kategorií z aktivní nabídky */
html body .gpc-cat__card::after{display:var(--gpc-theme-display,none)}
.gpc-cat__card:has(>a[href="/herni-pocitace/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/one_final.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pocitace-zakladni-urovne/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/one_final.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pocitace-stredni-tridy/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/2.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pocitace-high-end-tridy/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/3.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/mgfitman/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/mgfitma.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pocitace-repas/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/4.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pocitace-podle-her/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_1-1.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-minecraft/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_1-1.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-fortnite/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/12br-delay-social-news-header-02-1920x1080-119208936.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/fifa-26/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2-3.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-gta-v/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2-1.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-valorant/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/n__vrh_bez_n__zvu_(1).png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-league-of-legends/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/5.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-counter-strike-2/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_9-2.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-pubg/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/pubg-logo-0.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-call-of-duty/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_11-2.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-apex-legends/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_8-1.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-overwatch/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_2.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-pc-pro-world-of-warcraft/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/944fb200-65a4-4981-a648-bbaac4edde16.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/pocitace-na-ai/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/pro1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/raiko-ai-one/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/pro1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/raiko-ai-pro/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/one1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/raiko-ai-epic/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/epic1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/pc-komponenty/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240830_113039.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/graficke-karty/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240830_113039.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/pc-skrine/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240830_120304.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/cpu-chladice/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_35.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/pc-uloziste/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_37.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/ventilatory/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/7063.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/rgb-herni-osvetleni/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_36.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/napajeci-zdroje-psu/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_12-1.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-prislusenstvi/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240829_202733.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/monitory/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/photoroom_20240829_202733.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-klavesnice/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_44.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-sluchatka/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_46.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-mysi/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_45.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/podlozky/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/6967.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/gaming-controllers/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/rog_raikri_ii_xbox_wireless_main.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/asus-cashback-gaming/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/images.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/100-rog-20-years-ball/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/images-1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-zidle-kresla/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_48.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/herni-stoly/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/7162.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/kabely/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_43.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/bt-wifi/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/obr__zek_41.jpeg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/iphone17.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple-iphone-17/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/iphone17.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple-iphone-17-pro/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/iphone-17-pro-max-concept-art-png.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple-iphone-17-pro-max/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/iphone-17-pro-17-pro-max-hero.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple-iphone-air/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/apple-iphone-17-air.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/apple-iphone-e/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/iphone17_png1.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/macbook-neo/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/apple_macbook_neo_____modern___notebook_apple_s_elegantn__m_designem__tenk__m_t__lem_a_dlouhou_v__dr_____baterie.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/macbook-air/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/apple_macbook_air_13_a_15_____lehk___notebook_apple_pro_pr__ci____kolu__cestov__n___a_ka__dodenn___pou__it__.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/macbook-pro/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/apple_macbook_pro_14_a_16_____v__konn___profesion__ln___notebook_pro_pr__ci__grafiku__st__ih_videa_a_multitasking.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/mac-mini/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/apple_mac_mini_____kompaktn___stoln___po____ta___apple_s_vysok__m_v__konem_a___sporn__m_provozem.jpg");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/imac-3/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/pngtree-imac-monitor-on-a-transparent-background-png-image_20348294.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/ipad-pro/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/ipadpro.png");--gpc-theme-display:block}
.gpc-cat__card:has(>a[href="/ipad-air-2/"]){--gpc-category-image:url("https://cdn.myshoptet.com/usr/www.gamepc.cz/user/categories/thumb/ipadair.png");--gpc-theme-display:block}

/* Mobilní řazení: vždy tři stejně široké volby bez posouvání */
@media(max-width:767px){html body .listSorting__controls{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;width:100%!important;max-width:100%!important;padding:4px!important;overflow:visible!important}html body .listSorting__controls>li{display:block!important;min-width:0!important;width:auto!important;margin:0!important}html body .listSorting__controls>li:has(>.listSorting__control[data-sort="name"]){display:none!important}html body .listSorting__controls .listSorting__control{display:flex!important;width:100%!important;min-width:0!important;min-height:40px!important;padding:7px 3px!important;align-items:center!important;justify-content:center!important;font-size:10px!important;line-height:1.05!important;text-align:center!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}}
@media(max-width:350px){html body .listSorting__controls .listSorting__control{font-size:9px!important;padding-inline:2px!important}}

/* Prázdné modelové kategorie bez jediného herního PC. */
html body .gpc-cat__card:has(>a[href="/herni-pc-s-geforce-rtx-5060-ti/"]),
html body .gpc-cat__card:has(>a[href="/https-www-gamepc-cz-herni-pc-s-nvidia-gtx-1660-super-/"]) {
  display: none !important;
}

/* Jednotná hierarchie kategorií Raiko One / Pro / Epic */
.gpc-tier,
.gpc-tier * {
  box-sizing: border-box;
}

.gpc-tier {
  position: relative;
  isolation: isolate;
  width: min(1100px, calc(100% - 24px));
  margin: 14px auto 22px;
  padding: 24px;
  overflow: hidden;
  border: 1px solid #e1e5ee;
  color: #17171b;
  background:
    radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--gpc-tier-accent) 12%, transparent), transparent 31%),
    linear-gradient(145deg, #fff, #f8f9fc);
  box-shadow: 0 14px 38px rgba(35, 31, 54, .07);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
}

.gpc-tier__head {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .85fr);
  gap: 42px;
  align-items: end;
}

.gpc-tier__eyebrow {
  margin: 0 0 22px;
  font-size: 13px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: .19em;
}

.gpc-tier__eyebrow::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 12px;
  background: var(--gpc-tier-accent);
}

.gpc-tier__head h2 {
  margin: 0;
  font-size: clamp(29px, 3vw, 45px);
  line-height: 1.04;
  letter-spacing: -.045em;
}

.gpc-tier__head h2 span {
  color: var(--gpc-tier-accent);
}

.gpc-tier__lead {
  margin: 0 0 5px;
  font-size: clamp(17px, 1.55vw, 23px);
  line-height: 1.55;
}

.gpc-tier__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 24px 0 16px;
  padding: 0;
  list-style: none;
}

.gpc-tier__chips li {
  margin: 0;
  padding: 9px 12px;
  border: 1px solid #e2e5ec;
  background: rgba(255, 255, 255, .86);
  color: #5e6270;
  font-size: 12px;
  line-height: 1.1;
  font-weight: 800;
}

.gpc-tier__platforms {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
}

.gpc-tier__platform {
  --platform: #7652db;
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 152px;
  padding: 16px 18px;
  overflow: hidden;
  border: 1px solid #dfe3eb;
  color: #17171b !important;
  background: linear-gradient(145deg, #fff, color-mix(in srgb, var(--platform) 7%, #fff));
  text-decoration: none !important;
  box-shadow: 0 7px 20px rgba(35, 31, 54, .045);
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.gpc-tier__platform:hover {
  border-color: color-mix(in srgb, var(--platform) 48%, #dfe3eb);
  box-shadow: 0 12px 28px rgba(35, 31, 54, .09);
  transform: translateY(-2px);
}

.gpc-tier__platform::after {
  content: attr(data-brand);
  position: absolute;
  right: 10px;
  top: 50%;
  color: color-mix(in srgb, var(--platform) 10%, transparent);
  font-size: 45px;
  line-height: 1;
  font-weight: 950;
  font-style: italic;
  transform: translateY(-50%);
}

.gpc-tier__platform--amd { --platform: #e65353; }
.gpc-tier__platform--rtx { --platform: #58a83f; }
.gpc-tier__platform--arc { --platform: #3b82e6; }

.gpc-tier__badge {
  position: relative;
  z-index: 2;
  justify-self: start;
  padding: 6px 9px;
  border: 1px solid color-mix(in srgb, var(--platform) 60%, #fff);
  color: var(--platform);
  background: color-mix(in srgb, var(--platform) 6%, #fff);
  font-size: 11px;
  line-height: 1;
  font-weight: 950;
  letter-spacing: .13em;
}

.gpc-tier__platform strong,
.gpc-tier__platform em {
  position: relative;
  z-index: 2;
  display: block;
  align-self: end;
  max-width: 62%;
}

.gpc-tier__platform strong {
  margin-top: 13px;
  font-size: 23px;
  line-height: 1.05;
  letter-spacing: -.035em;
}

.gpc-tier__platform em {
  margin-top: 5px;
  font-size: 16px;
  line-height: 1.2;
  font-style: normal;
  font-weight: 800;
}

.gpc-tier__platform small {
  position: absolute;
  z-index: 2;
  right: 12px;
  bottom: 11px;
  padding: 7px 9px 7px 12px;
  border-left: 3px solid var(--platform);
  color: #777b87;
  background: rgba(255, 255, 255, .9);
  font-size: 8px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: .1em;
}

.gpc-tier__platform small b {
  display: block;
  margin-top: 3px;
  color: #23242a;
  font-size: 13px;
  letter-spacing: 0;
  white-space: nowrap;
}

.gpc-tier__platform > i {
  position: absolute;
  z-index: 2;
  top: 12px;
  right: 13px;
  color: #9498a2;
  font-size: 20px;
  font-style: normal;
}

.gpc-tier__models {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #e2e5ec;
}

.gpc-tier__models > h3 {
  margin: 0 0 14px;
  font-size: 19px;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.gpc-tier__model-group + .gpc-tier__model-group {
  margin-top: 15px;
}

.gpc-tier__model-group h4 {
  margin: 0 0 7px;
  color: #656a78;
  font-size: 11px;
  line-height: 1;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.gpc-tier__model-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 7px;
}

.gpc-tier__model-grid a {
  display: flex;
  min-width: 0;
  min-height: 48px;
  padding: 10px 12px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border: 1px solid #e1e4eb;
  color: #262832 !important;
  background: rgba(255, 255, 255, .9);
  font-size: 13px;
  line-height: 1.15;
  font-weight: 850;
  text-decoration: none !important;
}

.gpc-tier__model-grid a:hover {
  border-color: color-mix(in srgb, var(--gpc-tier-accent) 38%, #e1e4eb);
  background: #fff;
}

.gpc-tier__model-grid i {
  flex: 0 0 auto;
  color: var(--gpc-tier-accent);
  font-style: normal;
}

.gpc-tier__more {
  margin-top: 16px;
  border-top: 1px solid #e2e5ec;
}

.gpc-tier__more summary {
  padding: 13px 0 2px;
  color: #6b6f7b;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.gpc-tier__more p {
  max-width: 820px;
  margin: 10px 0 0;
  color: #626673;
  font-size: 13px;
  line-height: 1.6;
}

@media (max-width: 767px) {
  .gpc-tier {
    width: calc(100% - 20px);
    margin: 10px auto 16px;
    padding: 16px 13px;
  }

  .gpc-tier__head {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .gpc-tier__eyebrow {
    margin-bottom: 13px;
    font-size: 10px;
    letter-spacing: .13em;
  }

  .gpc-tier__head h2 {
    font-size: 28px;
  }

  .gpc-tier__lead {
    font-size: 15px;
    line-height: 1.45;
  }

  .gpc-tier__chips {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin: 16px 0 12px;
  }

  .gpc-tier__chips li {
    padding: 8px;
    font-size: 10px;
  }

  .gpc-tier__platforms,
  .gpc-tier__model-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gpc-tier__platform {
    min-height: 132px;
    padding: 14px;
  }

  .gpc-tier__platform strong {
    font-size: 21px;
  }

  .gpc-tier__platform em {
    font-size: 14px;
  }

  .gpc-tier__models {
    margin-top: 16px;
    padding-top: 15px;
  }

  .gpc-tier__models > h3 {
    font-size: 17px;
  }

  .gpc-tier__model-grid a {
    min-height: 50px;
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gpc-tier__platform {
    transition: none;
  }
}

/* Desktop cart polish v5 — isolated from tablet and mobile. */
@media (min-width: 992px) {
  body.in-kosik #cart-wrapper .cart-table tr.removeable {
    grid-template-columns: 76px minmax(0, 1fr) 110px 120px 145px !important;
    column-gap: 12px !important;
    align-items: center !important;
    padding: 18px !important;
  }

  body.in-kosik #cart-wrapper .cart-table tr.removeable > td {
    min-width: 0 !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-name .main-link {
    display: -webkit-box !important;
    overflow: hidden !important;
    font-size: 13.5px !important;
    line-height: 1.32 !important;
    font-weight: 750 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-total {
    box-sizing: border-box !important;
    min-width: 0 !important;
    padding: 0 44px 0 0 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  body.in-kosik #cart-wrapper .cart-table .p-total .price-final {
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .cart-table .remove-item {
    top: 50% !important;
    right: 8px !important;
    width: 34px !important;
    height: 34px !important;
    transform: translateY(-50%) !important;
  }

  /* Every recommendation is one equal grid cell, including a variant product. */
  body.in-kosik #cart-wrapper .fvDoplnek-upsell {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > h4,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .gpc-upsell-toggle {
    grid-column: 1 / -1 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell > .fvDoplnek-produkt.has-variants {
    grid-column: auto !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 142px !important;
    height: 100% !important;
    margin: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants > .fvDoplnek-alignCenter {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    height: 100% !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-product-image {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 92px !important;
    height: 92px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvcontent {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .header .name {
    display: -webkit-box !important;
    overflow: hidden !important;
    margin: 0 0 10px !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variants {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 7px !important;
    min-width: 0 !important;
    min-height: 54px !important;
    padding: 8px 9px !important;
    align-items: center !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant .fvDoplnek-text {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
  }

  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant .name,
  body.in-kosik #cart-wrapper .fvDoplnek-upsell .has-variants .fvDoplnek-variant .price {
    width: 100% !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  /* Lightweight order-to-door timeline; HTML is inserted only on desktop. */
  body.in-kosik #cart-wrapper .text-center:has(> .delivery-time.gpc-delivery-timeline) {
    margin-top: 22px !important;
  }

  body.in-kosik #cart-wrapper .delivery-time.gpc-delivery-timeline {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 150px minmax(0, 1fr) 150px !important;
    gap: 22px !important;
    width: 100% !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 18px 24px !important;
    align-items: center !important;
    border: 1px solid #e3dced !important;
    border-radius: 20px !important;
    color: #292333 !important;
    background: linear-gradient(110deg, #fbfffc 0%, #f8f6ff 55%, #fff 100%) !important;
    box-shadow: 0 12px 32px rgba(60, 37, 103, .06) !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-date {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-date--end {
    text-align: right !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-date small {
    color: #777181 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .09em !important;
    text-transform: uppercase !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-date b {
    color: #251a34 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-date--end b {
    color: #4d1da9 !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-route {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    min-width: 0 !important;
    height: 66px !important;
    align-items: start !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-route::before {
    content: "" !important;
    position: absolute !important;
    top: 39px !important;
    right: 8% !important;
    left: 8% !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #79c868, #8464dc) !important;
    opacity: .45 !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-step {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 5px !important;
    color: #6e6678 !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-icon {
    display: grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    border: 1px solid #ddd4eb !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 5px 14px rgba(64, 40, 105, .09) !important;
    font-size: 18px !important;
    line-height: 1 !important;
    transform-origin: 50% 100% !important;
    animation: gpcDeliveryStep 8s ease-in-out infinite !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-step:nth-child(2) .gpc-delivery-icon {
    animation-delay: 1.5s !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-step:nth-child(3) .gpc-delivery-icon {
    animation: gpcDeliveryDrive 8s ease-in-out .3s infinite !important;
  }

  body.in-kosik #cart-wrapper .gpc-delivery-step:nth-child(4) .gpc-delivery-icon {
    animation-delay: 5.1s !important;
  }
}

@keyframes gpcDeliveryStep {
  0%, 12%, 100% { transform: translateY(0) scale(1); }
  5% { transform: translateY(-4px) scale(1.06); }
}

@keyframes gpcDeliveryDrive {
  0%, 28% { transform: translateX(-22px); opacity: .25; }
  45%, 65% { transform: translateX(0); opacity: 1; }
  82%, 100% { transform: translateX(22px); opacity: .25; }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {
  body.in-kosik #cart-wrapper .gpc-delivery-icon {
    animation: none !important;
  }
}
