/*
.gw-overlay {position: fixed;inset: 0;background: rgba(0, 0, 0, .4);display: flex;align-items: center;justify-content: center;z-index: 9999;transition: .15s;}
.gw-overlay[aria-hidden="true"]{display: none;}
.gw-modal{background:#fff;max-width:720px;width:96%;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);overflow:hidden}
.gw-modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #eee}
.gw-modal__title{margin:0;font-size:18px}
.gw-close{background:transparent;border:0;font-size:24px;line-height:1;cursor:pointer}
.gw-modal__body{padding:12px 16px}
.gw-list{display:grid;grid-template-columns:1fr;gap:10px}
.gw-item{display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:center;border:1px solid #eee;border-radius:10px;padding:8px}
.gw-item__img{width:64px;height:64px;object-fit:cover;border-radius:8px}
.gw-item__name{font-weight:600}
.gw-add{padding:8px 12px;border-radius:8px;border:0;background:#2e7d32;color:#fff;cursor:pointer}
.gw-add[disabled]{opacity:.5;cursor:not-allowed}
.gw-loading{padding:24px;text-align:center}
.gw-empty{padding:24px;text-align:center;color:#666}
.gw-fab{position:fixed;right:16px;bottom:16px;border:0;border-radius:999px;padding:10px 14px;background:#1f6feb;color:#fff;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9998}
*/
/* Box */
#gw-cart-box {
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 12px;
    margin: 12px 0;
    background: #fff;
}
#gw-cart-box .gw-title {
    font-size: 18px;
    margin: 0 0 8px 0;
}
#gw-cart-box .gw-muted {
    color: #666;
    margin-bottom: 6px;
}
#gw-cart-box .gw-lines {
    display: grid;
    gap: 10px;
}

/* Dvouřádkový řádek */
#gw-cart-box .gw-line {
    border: 1px solid #f0f0f0;
    border-radius: 10px;
    padding: 8px;
    background: #fff;
}
#gw-cart-box .gw-row1 {
    margin-bottom: 6px;
}
#gw-cart-box .gw-name {
    font-weight: 600;
    line-height: 1.3;
}
#gw-cart-box .gw-row2 {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap; /* ať to hezky zalamuje */
}

/* Prvky */
#gw-cart-box .gw-badge {
    background: #e6f4ea;
    color: #2e7d32;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 999px;
    white-space: nowrap;
}
#gw-cart-box .gw-select {
    min-width: 220px;
    max-width: 100%;
    font-size: 13px;
}
#gw-cart-box .gw-actions {
    display: flex;
    gap: 6px;
}
#gw-cart-box .gw-actions .gw-add,
#gw-cart-box .gw-actions .gw-remove {
    font-size: 13px;
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid #cbd5c0;
    background: #f8f8f8;
    cursor: pointer;
}
#gw-cart-box .gw-actions .gw-add { background: #3b7f2c; color: #fff; border-color: #2f621f; }
#gw-cart-box .gw-actions .gw-remove { background: #fff; color: #333; }

/* Mobil */
@media (max-width: 640px) {
    #gw-cart-box .gw-select { min-width: 180px; }
}

/* inline prvky na řádku */
.gw-inline .gw-badge{
    background:#e6f4ea;color:#2e7d32;font-size:12px;padding:3px 8px;border-radius:999px;white-space:nowrap
}
.gw-inline .gw-select{min-width:220px;max-width:100%;font-size:13px}
.gw-inline .gw-add,.gw-inline .gw-remove{
    font-size:13px;padding:6px 10px;border-radius:6px;border:1px solid #cbd5c0;cursor:pointer;background:#f8f8f8
}
.gw-inline .gw-add{background:#3b7f2c;color:#fff;border-color:#2f621f}
.gw-inline .gw-remove{background:#fff;color:#333}

/* GiftWrap – per-row UI v košíku */
.gw-inline { display:block; margin-top:8px; max-width:560px; }
.gw-inline .gw-badge{
    display:inline-block;
    background:#e8f5e9;
    color:#1b5e20;
    padding:4px 8px;
    border-radius:9999px;
    font-size:.875rem;
    line-height:1.25rem;
    max-width:100%;
    white-space:normal;
    margin-bottom:6px;
}
.gw-inline .gw-controls{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.gw-inline select{ min-width:240px; max-width:100%; }
.gw-inline .gw-add, .gw-inline .gw-remove{
    padding:6px 10px; border-radius:6px; line-height:1.2;
}

.gw-inline{display:block;margin-top:8px;max-width:560px;}
.gw-inline .gw-badge{
    display:inline-block;background:#e8f5e9;color:#1b5e20;
    padding:4px 8px;border-radius:9999px;font-size:.875rem;line-height:1.25rem;
    max-width:100%;white-space:normal;margin-bottom:6px;
}
.gw-inline .gw-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gw-inline select{min-width:240px;max-width:100%}
.gw-inline .gw-add,.gw-inline .gw-remove{padding:6px 10px;border-radius:6px;line-height:1.2}

/* během našeho zavírání vynutit skrytí obsahu dropdownu */
.blockcart[data-gw-closing="1"] .shopping-cart-content,
.cart-preview[data-gw-closing="1"] .shopping-cart-content {
    display: none !important;
}
/* Fallback pro mini-cart panel vytvořený naším JS */
.gw-cart-root { position: relative; }

.gw-cart-root .shopping-cart-content {
    position: absolute;
    right: 0;
    top: 100%;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
    z-index: 10000;
    min-width: 320px;
    max-width: 90vw;
    max-height: 70vh;
    overflow: auto;
}

/* Na mobilech ať panel klidně přesáhne šířku headeru */
@media (max-width: 768px) {
    .gw-cart-root .shopping-cart-content {
        left: 0;
        right: 0;
        width: auto;
    }
}

/* Panda / ST Shopping Cart: jistota vzhledu panelu */
.blockcart .dropdown_list.cart_body,
.cart-preview .dropdown_list.cart_body,
#_desktop_cart .dropdown_list.cart_body {
    background: #fff !important;
    position: absolute !important;
    right: 0 !important;
    z-index: 10010 !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
    border-radius: 8px;
    min-width: 320px;
}

/* pro jistotu skryj při našem “zavírání” i Panda panel */
.blockcart[data-gw-closing="1"] .dropdown_list.cart_body,
.cart-preview[data-gw-closing="1"] .dropdown_list.cart_body {
    display: none !important;
}

/* GiftWrap module: align summary values consistently */
#checkout-left .cart-summary-line,
#checkout-left .cart-summary-line.gw-wrap-left {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
}

#checkout-left .cart-summary-line .label {
    flex: 1 1 auto !important;
}

#checkout-left .cart-summary-line .value {
    flex: 0 0 auto !important;
    text-align: right !important;
    float: none !important;
    display: inline-block !important;
    min-width: 6em !important;
    font-variant-numeric: tabular-nums !important;
    font-feature-settings: "tnum" !important;
}