
/* ===== TG QUICK ORDER ===== */

.tg-qo-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:28px;
    margin:40px 0;
}

.tg-qo-card{
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:14px;
    padding:18px;
    transition:all .18s ease;
    position:relative;
}

.tg-qo-card:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 22px rgba(0,0,0,0.06);
}

.tg-qo-image{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:18px;
    aspect-ratio:1/1;
}

.tg-qo-image img{
    max-width:100%;
    max-height:220px;
    object-fit:contain;
}

/* ===== produkt nadpis H3 ===== */
/* =====    margin:0 0 10px; ===== */

.tg-qo-title{
    font-size:15px !important;
    line-height:1.45 !important;
    margin:0 0 4px;
    min-height:88px;
    font-weight:500 !important;
}

.tg-qo-title a{
    color:#111;
    text-decoration:none;
    font-weight:500 !important;
}

.tg-qo-title a:hover{
    color:#005f00;
}

/* ===== cena ===== */

.tg-qo-price{
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.4 !important;
    margin-bottom:14px;
}

.tg-qo-actions{
    display:flex;
    gap:10px;
    align-items:center;
}

/* ===== input a tlačítko ===== */

.tg-qo-qty{
    width:64px;
    height:36px;
    border:1px solid #dcdcdc;
    border-radius:10px;
    text-align:center;
    font-size:14px;
}

.tg-qo-qty:focus{
    border-color:#006b00;
    outline:none;
    box-shadow:0 0 0 2px rgba(0,107,0,.12);
}

.tg-qo-btn{
    flex:1;
    height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px !important;
    background:#005f00 !important;
    color:#fff !important;
    border:none !important;
    font-weight:500;
    font-size:14px;

    transition:
        background .2s ease,
        transform .15s ease,
        opacity .2s ease,
        box-shadow .2s ease;
}

.tg-qo-btn:hover{
    background:#006b00 !important;
    transform:translateY(-1px);
    box-shadow:0 4px 10px rgba(0,95,0,.15);
}

.tg-qo-btn:active{
    transform:scale(.97);
}


/* ===== TABLET ===== */

@media(max-width:1200px){

    .tg-qo-grid{
        grid-template-columns:repeat(4,1fr);
    }

}

/* ===== MOBILE ===== */

@media(max-width:767px){

    .tg-qo-grid{
        grid-template-columns:repeat(2,1fr);
        gap:18px;
    }

    .tg-qo-title{
        font-size:16px;
        min-height:auto;
    }

}

/* ===== VARIANTY ===== */

.tg-qo-variations{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:14px;
}

.tg-qo-variation-btn{
    border:1px solid #dcdcdc;
    background:#fff;
    border-radius:8px;
    padding:7px 12px;
    font-size:13px;
    font-weight:500;
    color:#111 !important;
    cursor:pointer;
    transition:all .15s ease;
}

.tg-qo-variation-btn:hover{
    border-color:#005f00;
    color:#fff !important;
    transform:translateY(-1px);
}

.tg-qo-variation-btn.active{
    background:#005f00;
    color:#fff !important;
    border-color:#005f00;
}

/* ===== TG QUICK ORDER - FORCE TYPOGRAPHY ===== */

.tg-qo-grid .tg-qo-card .tg-qo-title,
.tg-qo-grid .tg-qo-card .tg-qo-title a{
    font-size:15px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
}

.tg-qo-grid .tg-qo-card .tg-qo-price,
.tg-qo-grid .tg-qo-card .tg-qo-price *,
.tg-qo-grid .tg-qo-card .tg-qo-price-value{
    font-size:14px !important;
    line-height:1.4 !important;
    font-weight:500 !important;
}

/* ===== TG QUICK ORDER - VARIANTY JEMNĚJŠÍ ===== */

.tg-qo-variations{
    gap:6px !important;
    margin-bottom:12px !important;
}

.tg-qo-variation-btn{
    min-width:48px;
    height:36px;
    padding:0 10px !important;
    border-radius:9px !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1 !important;
}

.tg-qo-variation-btn.active{
    background:#006b00 !important;
    color:#fff !important;
    border-color:#006b00 !important;
}

/* ===== TG QUICK ORDER - PŘIDÁNO ===== */

.tg-qo-card.tg-qo-added{
    border-color:#006b00 !important;
    box-shadow:0 0 0 2px rgba(0,107,0,0.12) !important;
}

.tg-qo-card.tg-qo-added .tg-qo-btn{
    background:#008000 !important;
}

/* ===== AJAX ADD TO CART ===== */

.tg-qo-btn.loading{
    opacity:.7;
    pointer-events:none;
}

.tg-qo-card.tg-qo-added{
    border-color:#008000 !important;
    box-shadow:0 0 0 2px rgba(0,128,0,.12);
}

.tg-qo-card.tg-qo-added .tg-qo-btn{
    background:#008000 !important;
}

/* ===== TG QUICK ORDER - SUCCESS BUTTON ===== */

.tg-qo-btn.tg-qo-success{
    background:#008000 !important;
    color:#fff !important;
}

.tg-qo-card.tg-qo-added{
    border-color:#008000 !important;
    box-shadow:0 0 0 2px rgba(0,128,0,.16) !important;
}

/* ===== SEARCH ===== */

.tg-qo-search-wrap{
    margin-bottom:24px;
}

.tg-qo-search{
    width:100%;
    height:48px;
    border:1px solid #dcdcdc;
    border-radius:12px;
    padding:0 18px;
    font-size:15px;
    font-weight:400;
    transition:all .2s ease;
}

.tg-qo-search:focus{
    outline:none;
    border-color:#006b00;
    box-shadow:0 0 0 3px rgba(0,107,0,.10);
}

/* ===== QUICK ORDER TABS ===== */

.tg-qo-section{
    display:none;
}

.tg-qo-section.active{
    display:block;
}

/* ===== QUICK ORDER TABS ===== */

.tg-qo-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:28px;
}

.tg-qo-tab{
    min-height:42px;
    padding:0 18px;
    border:none;
    border-radius:10px;
    background:#f3f3f3;
    color:#111;
    font-size:14px;
    font-weight:500;
    cursor:pointer;
    transition:all .2s ease;
}

.tg-qo-tab:hover{
    background:#e9e9e9;
}

.tg-qo-tab.active{
    background:#005f00;
    color:#fff;
}

.tg-qo-tab-content{
    display:none;
}

.tg-qo-tab-content.active{
    display:block;
}

/* ===== SUB TABS ===== */

.tg-qo-subtabs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:24px;
}

.tg-qo-subtab{
    min-height:36px;
    padding:0 14px;
    border:none;
    border-radius:8px;
    background:#f3f3f3;
    color:#111;
    font-size:13px;
    font-weight:500;
    cursor:pointer;
    transition:all .2s ease;
}

.tg-qo-subtab:hover{
    background:#e9e9e9;
}

.tg-qo-subtab.active{
    background:#005f00;
    color:#fff;
}

.tg-qo-subcontent{
    display:none;
}

.tg-qo-subcontent.active{
    display:block;
}

/* ===== badge košík ===== */

.tg-qo-card{
    position:relative;
}

.tg-qo-cart-badge{
    position:absolute;
    top:13px;
    right:13px;

    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:transparent;
    border:none;
    box-shadow:none;

    color:#005f00;

    z-index:5;

    filter:drop-shadow(0 2px 3px rgba(0,0,0,.18));
    animation:tgBadgePop .22s ease;
}

.tg-qo-cart-badge svg{
    width:34px;
    height:34px;
    display:block;
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:2.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* ===== animace ===== */

@keyframes tgBadgePop{

    0%{
        transform:scale(.7);
        opacity:.4;
    }

    70%{
        transform:scale(1.12);
    }

    100%{
        transform:scale(1);
        opacity:1;
    }
}

/* ===== QUICK ORDER CART PANEL ===== */

.tg-qo-cart-panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
    padding:14px 18px;
    border-radius:14px;
    background:#f6f8f6;
    border:1px solid #e2e2e2;
}

.tg-qo-cart-panel-count{
    font-size:15px;
    font-weight:500;
}

.tg-qo-cart-count{
    color:#005f00;
    font-weight:700;
}

.tg-qo-cart-panel-links{
    display:flex;
    gap:10px;
}

.tg-qo-cart-panel-links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:0 14px;
    border-radius:9px;
    background:#005f00;
    color:#fff !important;
    text-decoration:none !important;
    font-size:14px;
    font-weight:500;
}

@media(max-width:767px){
    .tg-qo-cart-panel{
        align-items:flex-start;
        flex-direction:column;
    }
}
/* ===== END QUICK ORDER CART PANEL ===== */

/* ===== SKU ===== */

.tg-qo-sku{
    margin-top:2px;
    margin-bottom:10px;
    font-size:12px;
    opacity:.75;
    color:#666;
    line-height:1.3;
}

/* ===== END SKU ===== */