﻿@charset "UTF-8";

/* 優惠專區：頁面專用樣式，不修改共用 mainLayout.css */
.discount-store-panel {
    margin: 6px 0 28px;
    padding: 22px 24px 18px;
    background: rgba(255, 255, 255, 0.86);
    border: 3px solid #f2bf58;
    border-radius: 20px;
    box-shadow: 0 5px 16px rgba(125, 76, 24, 0.12);
}

.discount-store-search-row {
    margin-bottom: 8px;
}

.discount-search-label {
    display: block;
    margin: 0 0 4px 4px;
    color: #6f3a16;
    font-weight: 700;
}

.discount-store-panel .searchBoxRoad {
    margin-top: 0;
    margin-bottom: 20px;
}

#QueryList {
    width: 100%;
    border: 1px solid #e5c78f;
    border-radius: 12px;
    background: #fff;
    overflow-x: auto;
}

.discount-store-table {
    /* mainLayout.css 將所有 table 設成 display:block；沒有資料列時會依內容寬度縮排。 */
    display: table;
    width: 100%;
    min-width: 100%;
    margin-bottom: 0;
    table-layout: fixed;
    overflow: visible;
    background-color: rgba(255, 255, 255, 0.96);
}

    .discount-store-table th,
    .discount-store-table td {
        vertical-align: middle;
        padding: 14px 12px;
        word-break: normal;
        overflow-wrap: anywhere;
        white-space: pre-line;
    }

    .discount-store-table thead {
        background: #bd3200;
        color: #fff;
    }

        .discount-store-table thead th {
            color: #fff;
            border-top: 0 !important;
            border-bottom: 0 !important;
            font-weight: 700;
            white-space: nowrap;
            text-align: center;
        }

    .discount-store-table tbody tr {
        border-bottom: 1px solid #eadbc0;
    }

        .discount-store-table tbody tr:last-child {
            border-bottom: 0;
        }

.discount-store-empty-row:hover {
    background: #fff !important;
}

.discount-store-empty-cell {
    height: 72px;
    padding: 22px 12px !important;
    text-align: center;
    color: #7a6b5c;
    white-space: normal !important;
}

.discount-store-table tbody tr:nth-child(even) {
    background: #fffaf2;
}

.discount-store-table tbody tr:hover {
    background: #fff3dd;
}

.discount-col-store {
    width: 18%;
}



.discount-col-area {
    width: 10%;
}

.discount-col-card {
    width: 12%;
}

.discount-col-contact {
    width: 24%;
}

.discount-col-content {
    width: 18%;
}

.discount-col-conditions {
    width: 18%;
}

















.discount-store-table .so-icon {
    display: block;
    max-width: 120px;
    max-height: 80px;
    width: auto;
    height: auto;
    margin: 0 auto 8px;
}

/*
 * 共用 mainLayout.css 的 td 使用 vertical-align: bottom !important、
 * padding: 0 10px 10px 10px !important；優惠專區需明確覆寫。
 */
.discount-store-table tbody td {
    text-align: center;
    vertical-align: middle !important;
    padding: 14px 12px !important;
}

    /* 聯絡方式：水平靠左，但維持垂直置中。 */
    .discount-store-table tbody td.discount-contact-cell {
        text-align: left;
        vertical-align: middle !important;
    }

.discount-store-cell {
    text-align: center;
}

.discount-contact-cell {
    line-height: 1.55;
}

.discount-contact-item + .discount-contact-item {
    margin-top: 6px;
}

.discount-store-table .discount-link,
.discount-store-table .discount-link span {
    display: inline;
    max-width: 100%;
    color: #bd3200;
    text-decoration: underline;
    text-underline-offset: 2px;
    overflow-wrap: anywhere;
    word-break: break-word;
}

    .discount-store-table .discount-link:hover,
    .discount-store-table .discount-link:focus {
        color: #8d2600;
        text-decoration-thickness: 2px;
    }

.discount-store-paginator {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin: 20px 0 4px;
    padding: 10px 12px;
    background: #fff8ea;
    border: 1px solid #efd29b;
    border-radius: 12px;
}

.discount-page-nav {
    display: flex;
    gap: 6px;
}


.discount-page-nav-left {
    justify-content: flex-end;
}



.discount-page-nav-right {
    justify-content: flex-start;
}


.discount-page-info {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    color: #4a2b1c;
    white-space: nowrap;
}

.discount-page-select {
    display: inline-block;
    width: 58px;
    min-width: 58px;
    height: 38px;
    padding: 4px 20px 4px 8px;
    border: 1px solid #d7aa55;
    border-radius: 10px;
    background-color: #fff;
    color: #333;
    text-align: center;
}

    .discount-page-select:focus {
        border-color: #ff8a00;
        outline: none;
        box-shadow: 0 0 0 2px rgba(255, 138, 0, 0.16);
    }

.discount-page-size {
    width: 68px;
    min-width: 68px;
}

.discount-store-paginator .page-link {
    min-width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e2b35e;
    border-radius: 8px;
    background: #fff;
    color: #bd3200;
    cursor: pointer;
}

    .discount-store-paginator .page-link:hover,
    .discount-store-paginator .page-link:focus {
        background: #ff8a00;
        border-color: #ff8a00;
        color: #fff;
        outline: none;
    }

    .discount-store-paginator .page-link:disabled {
        background: #f4efe6;
        border-color: #ded5c7;
        color: #a99d8b;
        cursor: default;
    }

@media (max-width: 768px) {
    .discount-store-panel {
        padding: 14px 12px;
        border-width: 2px;
        border-radius: 14px;
    }

    #QueryList.table-responsive {
        overflow-x: auto;
    }

    .discount-store-table {
        min-width: 1180px;
    }

    .discount-store-paginator {
        grid-template-columns: 1fr;
    }

    .discount-page-nav-left,
    .discount-page-nav-right {
        justify-content: center;
    }

    .discount-page-info {
        flex-wrap: wrap;
        white-space: normal;
    }
}
