

/* Custom setting */

.wcb-booking-form button:hover {
    background-color: #2bb50f !important;
}

.woocommerce-checkout-review-order {
    border-top: 0px !important;
}

#order_review_heading {
    border-bottom: 2px solid #000;
    margin-bottom: 18px;
}

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th {
    border-top: 0px !important;
}

.woocommerce-checkout-review-order tr.order-total td {
    font-size: 1.5em !important;
}

            /* --- 100% šířka, zrušení tabulky --- */
            .woocommerce-checkout-review-order-table,
            .woocommerce-checkout-review-order-table tbody,
            .woocommerce-checkout-review-order-table tr.cart_item {
                display: block !important;
                width: 100% !important;
            }

            .woocommerce-checkout-review-order-table tbody tr.cart_item td {
                display: block !important;
                width: 100% !important;
                float: none !important;
                clear: both !important;
                box-sizing: border-box;
                padding: 0 !important;
            }

            .woocommerce-checkout-review-order-table tbody tr.cart_item td.product-total {
                display: none !important;
            }

            /* --- Flexbox pro dt/dd --- */
            .woocommerce-checkout-review-order-table dl.variation {
                display: grid;
                grid-template-columns: 180px 1fr; /* levý sloupec pevný, pravý flexibilní */
                column-gap: 12px;
                row-gap: 0px;
                margin: 0;
                padding: 0;
            }
            .woocommerce-checkout-review-order-table dl.variation dt,
            .woocommerce-checkout-review-order-table dl.variation dd {
                margin: 0;
                padding: 0;
                line-height: 1.4;
                display: flex;
                align-items: center; /* vertikální zarovnání na střed */
            }
            .woocommerce-checkout-review-order-table dl.variation dt {
                font-weight: 600;
                justify-content: flex-end; /* text vpravo, pěkně zarovnaný k dd */
                text-align: right;
            }
            .woocommerce-checkout-review-order-table dl.variation dd {
                margin-left: 0;
            }

            /* Tfoot necháváme jako tabulku */
            .woocommerce-checkout-review-order-table tfoot {
                display: table-footer-group;
            }
            .woocommerce-checkout-review-order-table tfoot tr,
            .woocommerce-checkout-review-order-table tfoot th,
            .woocommerce-checkout-review-order-table tfoot td {
                display: table-cell;
            }

            /* Odstranění případných omezení šířky */
            .woocommerce-checkout-review-order-table td.product-name {
                max-width: none !important;
                flex: 1 1 100% !important;
            }

            /* Odsazení mezi položkami */
            .woocommerce-checkout-review-order-table tbody tr.cart_item {
                border-bottom: 1px solid rgba(0,0,0,0.1);
                margin-bottom: 10px;
                padding-bottom: 10px;
            }












/* Checkout - roztáhnout celou šířku */
.woocommerce-checkout-review-order-table .cart_item td.product-name {
    width: 100% !important;
    display: block;
}

/* Skrýt původní product-total */
.woocommerce-checkout-review-order-table .cart_item td.product-total {
    display: none !important;
}

/* Rezervační formulář */
.wcb-booking-form {
    text-align: center;
    margin-top: 8px;
}

.wcb-booking-form input[name="wcb_persons"] {
    text-align: center;
}

/* Tlačítko rezervace */
.wcb-book-button {
    background: #36eb12;
    border-color: #36eb12;
    color: #000;
}

/* Každá variace na checkout page na samostatný řádek */
.woocommerce-checkout-review-order-table dl.variation {
    display: block !important;
    margin: 0 0 10px 0;
}
.woocommerce-checkout-review-order-table dl.variation dt,
.woocommerce-checkout-review-order-table dl.variation dd {
    display: block !important;
    margin: 0;
    padding: 0;
    line-height: 1.4;
}
.woocommerce-checkout-review-order-table dl.variation dt {
    font-weight: 600;
    margin-top: 0;
}

.woocommerce-checkout-review-order-table tbody tr.cart_item {
    padding: 0 0 20px 0;
}

.woocommerce td.product-name dl.variation dt {
    padding-left: 30px;
}

/* Kalendář */
/* Calendar layout */
#wcb-calendar { width:100%; box-sizing:border-box; }
.wcb-day { border:1px solid #e5e5e5; padding:12px 20px; margin-bottom:14px; background:#fafafa; border-radius:6px; }
.wcb-day-title { color:#000; margin:10px 0 10px 0; font-size:1.5rem; }

/* Slot grid */
.wcb-slots-container { display:grid; grid-template-columns: repeat(4, 1fr); gap:10px; }
@media (max-width: 1000px){ .wcb-slots-container { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 700px){ .wcb-slots-container { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 480px){ .wcb-slots-container { grid-template-columns: 1fr; } }

.wcb-slot { background: rgba(54,235,18,0.6); border:1px solid #eee; border-radius:6px; display:flex; align-items:center; }
.wcb-slot:hover { background: rgba(54,235,18,1); }
.wcb-slot-label { width:100%; display:flex; align-items:center; gap:8px; cursor:pointer; }
.wcb-slot input[type=checkbox] { transform: scale(1.25); margin-top:1px; margin-right:0; margin-left:12px; }
.wcb-time { padding: 10px 0px 8px 0px; color:#333; font-weight:600; margin-right:auto; }
.wcb-free { padding: 10px 10px 8px 0px; font-size:1rem; color:#fff; font-weight: 600; text-shadow: 1px 1px 5px #333; }
.wcb-full { padding: 10px 10px 8px 0px; font-size:1rem; color:#d40000; font-weight: 600; }


/* Booking controls */
.wcb-booking-controls { text-align:center; margin-top:10px; }
.wcb-persons-label { display:inline-block; margin-right:12px; color:#333;  }
.wcb-persons-input { width:64px; text-align:center; }

/* Button styling (green) */
.wcb-load-more, .wcb-book-button { background:#36eb12; border-color:#36eb12; color:#000; }
.wcb-load-more:hover, .wcb-book-button:hover { opacity:0.95; }

/* Checkout: rozšíření sloupce s položkami na 100% */
.woocommerce-checkout-review-order-table .cart_item td.product-name { width:100% !important; display:block; }
.woocommerce-checkout-review-order-table .cart_item td.product-total { display:none !important; }

/* Inline detail list (dl dt dd) sjednocení výšky a vert. align */
.woocommerce-checkout-review-order-table .variation dt,
.woocommerce-checkout-review-order-table .variation dd {
    display:inline-block;
    vertical-align:middle;
    margin:0 8px 0 0;
    line-height:1.2;
}

/* remove icon */
.wcb-remove-reservation { float:right; font-size:20px; line-height:1; cursor:pointer; color:#999; margin-left:8px; }
.wcb-remove-reservation:hover { color:#000; }

/* small loading placeholder */
.wcb-loading { padding:12px; text-align:center; color:#666; font-style:italic; }

#wcb-calendar button[type="submit"] { background: #333; }
#wcb-calendar button:hover[type="submit"] { background: #000 !important; }

/* Zvýraznění vybraného slotu */
.wcb-slot.wcb-slot--selected {
    background-color: #f0be00ff;
    color: #fff;
    border-radius: 6px;
    transition: background-color 0.2s ease-in-out;
}

/* Zvýraznění plného slotu */
.wcb-slot.wcb-slot--full {
    background-color: #d40000;
    transition: background-color 0.2s ease-in-out;
    padding-left:12px;
}

.wcb-slot.wcb-slot--full .wcb-time,
.wcb-slot.wcb-slot--full .wcb-full {
    color: #fff;
}

/* Tlačítko načíst více */
#wcb-load-more.button {
    display: inline-block;
    padding: 0.8em 2em;
    background-color: #00D455;
    border: 1px solid #00D455;
    color: #fff;
    cursor: pointer;
    margin-top: 10px;
    border-radius: 20px;
    text-transform: uppercase;
    font-weight: 600;
}
#wcb-load-more.button:hover {
    background-color: #00aa00;
}
#wcb-load-more.button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Custom checkout table */
.woocommerce-checkout-review-order-table tbody > tr {
    background: #36eb12;
    background: rgba(54,235,18,0.6);
    -webkit-border-radius: 6px !important;
    -moz-border-radius: 6px !important;
    border-radius: 9px !important;
}

/* Tlačítko X pro odstranění */

.woocommerce-checkout-review-order-table .cart_item td.product-name {
    position: relative;
}

.woocommerce a.remove {
    font-size: 24px !important;
    position: absolute;
    right: 30px;
    top: 30px;
    z-index: 999;
}

.woocommerce td.product-name dl.variation {
    position: relative;
}

.woocommerce-checkout-review-order-table dl.variation dt.variation-remove {
    display: none !important;
}

.wcb-remove-reservation {
    float: right;
    color: #aa0000;
    font-weight: bold;
    cursor: pointer;
    margin-left: 10px;
    font-size: 1.6rem;
    position: absolute;
    right: 0px;
    top: 0px;
}

.wcb-remove-reservation:hover {
    color: #800000;
}

.button-add-more {
	 background: rgba(129,110,153,.14) !important;
    color: #333 !important;
    font-weight: bold !important;
    font-size: 16px !important;
    border-radius: 9px !important;
}
.button-add-more:hover {
	 background: rgba(129,110,153,.24) !important;
}


.variation dt, .variation dd {
    display: block;
    margin: 0;
    padding: 0;
}
.variation dt {
    font-weight: bold;
}

.woocommerce-checkout #payment ul.payment_methods {
    padding: 15px 30px 10px 30px !important;
}

.woocommerce table.shop_table {
    margin: 0 !important;
}

#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    background: rgba(129,110,153,.14);
    border-radius: 9px !important;
}

.woocommerce-NoticeGroup,
.woocommerce-order-received .woocommerce-table__product-name a, 
.woocommerce-order-received .woocommerce-table__product-name .product-quantity {
    display: none !important;
}

.woocommerce-terms-and-conditions-link {
    color: rgba(0,150,0,0.8);
    text-decoration: underline;
}

.woocommerce-checkout-review-order-table tfoot tr, .woocommerce-checkout-review-order-table tfoot th, .woocommerce-checkout-review-order-table tfoot td {
    color: #333 !important
}


.woocommerce-page form .form-row textarea {
    max-width: none;
    min-height: 90px;
}

