/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://elementor.com/hello-theme/
 Description:  Hello Elementor Child Theme with custom WooCommerce product styles
 Author:       Tuge Team
 Author URI:   https://example.com
 Template:     hello-elementor
 Version:      1.0.0
 License:      GNU General Public License v3 or later
 License URI:  https://www.gnu.org/licenses/gpl-3.0.html
 Text Domain:  hello-elementor-child
*/

/* ==========================================================================
   WooCommerce Product Grid - GlobLinker Style
   ========================================================================== */

/* 產品網格容器 */
.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding: 0;
    margin: 0;
}

@media (max-width: 1200px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .woocommerce ul.products {
        grid-template-columns: 1fr;
    }
}

/* 產品卡片 - 圖二：外層白底圓角容器 */
.woocommerce ul.products li.product {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
    overflow: visible;
    transition: all 0.3s ease;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    float: none !important;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

.woocommerce ul.products li.product:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
    transform: translateY(-3px);
}

/* 圖二：內層青綠區塊 - 圓角、與卡片留白 */
.woocommerce ul.products li.product .tuge-product-header,
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    display: flex !important;
    flex-direction: row;
    align-items: stretch;
    text-decoration: none;
    color: inherit;
    background: linear-gradient(135deg, #1abc9c 0%, #16a085 100%);
    margin: 12px 12px 0 12px;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
}

/* 主圖容器 - 圖二：白邊與青綠區隔 */
.woocommerce ul.products li.product .tuge-product-thumb {
    width: 50px;
    min-width: 50px;
    height: 50px;
    flex-shrink: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.08);
    margin: 8px 0 8px 8px;
    border-radius: 6px;
    border: 3px solid #fff;
    box-sizing: border-box;
}

.woocommerce ul.products li.product .tuge-product-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0 !important;
    display: block !important;
}

/* 國旗圖（無主圖時由國家自動顯示） */
.woocommerce ul.products li.product .tuge-product-thumb--flag img {
    object-fit: contain;
}

/* 列表頁：無主圖時不顯示圖區，標題左邊距 */
.woocommerce ul.products li.product .tuge-product-header.tuge-no-image .woocommerce-loop-product__title,
.woocommerce ul.products li.product .tuge-product-header:not(:has(img)) .woocommerce-loop-product__title {
    margin-left: 20px;
}

/* 產品標題 - 右側白色文字 */
.woocommerce ul.products li.product .tuge-product-header .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    padding: 1px 20px;
    margin: 0;
    flex: 1;
    display: flex;
    align-items: center;
    line-height: ;
    text-align: left;
}

/* 產品信息區域 - 與內層區塊左右對齊 */
.woocommerce ul.products li.product .tuge-product-info {
    padding: 20px 20px 12px 20px;
    flex: 1;
    margin: 0 12px;
}

.woocommerce ul.products li.product .tuge-product-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce ul.products li.product .tuge-product-row:last-child {
    border-bottom: none;
}

.woocommerce ul.products li.product .tuge-product-label {
    color: #666;
    font-size: 14px;
    font-weight: 500;
}

.woocommerce ul.products li.product .tuge-product-value {
    color: #333;
    font-size: 16px;
    font-weight: 700;
}

/* 價格 + Detail 按鈕 - 與卡片內邊距一致 */
.woocommerce ul.products li.product .tuge-detail-btn,
.woocommerce ul.products li.product .button {
    display: block;
    width: calc(100% - 44px);
    margin: 0 12px 16px 12px;
    padding: 12px 20px;
    background: #fff;
    border: 2px solid #1abc9c;
    color: #1abc9c;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-sizing: border-box;
}

.woocommerce ul.products li.product .tuge-detail-btn:hover,
.woocommerce ul.products li.product .button:hover {
    background: #1abc9c;
    color: #fff;
}

.woocommerce ul.products li.product .tuge-detail-btn .woocommerce-Price-amount {
    font-weight: 700;
}

/* 隱藏可能由其他模板輸出的元素 */
.woocommerce ul.products li.product .star-rating {
    display: none;
}

/* ==========================================================================
   國家篩選器樣式
   ========================================================================== */

.tuge-country-filter-inline {
    text-align: right;
    margin-bottom: 20px;
}

.tuge-country-filter-inline .tuge-country-select {
    min-width: 200px;
    padding: 12px 40px 12px 16px;
    font-size: 14px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 16px center;
    appearance: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tuge-country-filter-inline .tuge-country-select:hover {
    border-color: #1abc9c;
}

.tuge-country-filter-inline .tuge-country-select:focus {
    outline: none;
    border-color: #1abc9c;
    box-shadow: 0 0 0 3px rgba(26, 188, 156, 0.1);
}

/* ==========================================================================
   結果計數
   ========================================================================== */

.woocommerce-result-count {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
}

/* ==========================================================================
   排序下拉選單
   ========================================================================== */

.woocommerce-ordering select {
    padding: 10px 16px;
    font-size: 14px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
}

/* ==========================================================================
   分頁樣式
   ========================================================================== */

.woocommerce nav.woocommerce-pagination {
    margin-top: 40px;
    text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
    display: inline-flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
    margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    color: #333;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
    background: #1abc9c;
    border-color: #1abc9c;
    color: #fff;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #1abc9c;
    border-color: #1abc9c;
    color: #fff;
}

/* ==========================================================================
   商店頁面標題
   ========================================================================== */

.woocommerce-products-header__title {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;
}

.woocommerce ul.products::before {
    content: unset;
}

/* ==========================================================================
   單一產品詳情頁 - 對齊 GlobLinker 兩欄結構
   左欄：主圖 + 標題 + Data/Validity/Price
   右欄：Countries 置頂，其後 Package detail、價格、加入購物車
   ========================================================================== */

.single-product .woocommerce-product-gallery {
    display: none !important;
}

/* 兩欄佈局 */
.single-product .tuge-single-layout {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    margin-bottom: 32px;
}

@media (max-width: 768px) {
    .single-product .tuge-single-layout {
        flex-direction: column;
    }
}

/* 左欄：主圖卡片（對應 GlobLinker 左側） */
.single-product .tuge-single-left {
    width: 50%;
    padding: 50px;
    text-align: center;
    background: url('images/dataplan-esim-bg.png');
    background-position-x: 0%;
    background-position-y: 0%;
    background-position: center;
}

@media (max-width: 768px) {
    .single-product .tuge-single-left {
        flex: 1 1 100%;
        max-width: 100%;
		width: 100%;
    	padding: 0;
    }
}

.single-product .tuge-single-left-card {
    /*! background: #fff; */
    /*! border: 1px solid #eee; */
    /*! border-radius: 14px; */
    /*! overflow: hidden; */
    /*! box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06); */
    border-radius: 10px 0px 10px 10px;
    padding: 60px;
    text-align: center;
    transition: 0.3s;
    width: 100%;
    display: inline-block;
    margin: 10px;
    border: 0;
    background: url(images/dataplan-esim-bg-white.png);
    box-shadow: 0 0 0 0;
}

/* 詳情頁青綠橫幅：左主圖、右標題（與列表頁一致） */
.single-product .tuge-single-header {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    background: linear-gradient(135deg, #1abc9c 0%, #16a085 100%);
    border-radius: 10px 10px 0 0;
}

.single-product .tuge-single-header-thumb {
    width: 50px;
    min-width: 40px;
    height: auto;
    flex-shrink: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 0 10px 10px;
    border-radius: 6px;
    box-sizing: border-box;
}

.single-product .tuge-single-header-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0 !important;
    display: block !important;
}

.single-product .tuge-single-header-thumb--flag img {
    object-fit: contain;
}

.single-product .tuge-single-header .tuge-single-title {
    flex: 1;
    margin: 0;
    padding: 16px 20px;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    line-height: 1.4;
    display: flex;
    align-items: center;
    text-align: left;
}

/* 詳情頁：無主圖時不顯示圖區，標題左邊距 */
.single-product .tuge-single-header.tuge-no-image .tuge-single-title {
    padding-left: 24px;
}

/* Data / Validity / Price（左欄卡片內） */
.single-product .tuge-single-left-card .tuge-single-specs {
    padding: 0 20px 20px 20px;
    margin: 0;
    border: none;
    background: transparent;
}

.single-product .tuge-single-spec-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid #f0f0f0;
}

.single-product .tuge-single-spec-row:last-child {
    border-bottom: none;
}

.single-product .tuge-single-spec-label {
    color: #666;
    font-size: 15px;
}

.single-product .tuge-single-spec-value {
    color: #333;
    font-size: 15px;
}

.single-product .tuge-single-spec-value .woocommerce-Price-amount {
    font-weight: 700;
    font-size: 18px;
}

/* 右欄：Countries 置頂（標題位置改為顯示 Countries） */
.single-product .tuge-single-right {
    flex: 1;
    min-width: 0;
}

.single-product .tuge-single-right.summary.entry-summary {
    width: auto;
    max-width: none;
}

.single-product .tuge-countries-block {
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 24px 0;
    color: #333;
    word-wrap: break-word;
}

.single-product .tuge-countries-block:first-child {
    margin-top: 0;
}
.wc-buy-now-btn {
  margin-left: 10px !important;
}