/**
 * 後台分段 Tab
 * Pill 樣式（str-page-tabs / ro-type-tabs）：淺灰膠囊容器 + 主色已選（同 STR 頁）
 * 方角樣式（admin-tab-bar 等）：列表篩選用
 */

/* ── 外層：方角分段列 ── */
.admin-tab-bar,
.md-nav,
.otm-filters,
.rate-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem;
    margin-bottom: 0.75rem;
    background: #F7F6F2;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: none;
}

/* ── 外層：Pill 分段列（不撐滿整行）── */
.str-page-tabs,
.ro-type-tabs {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem;
    margin-bottom: 1rem;
    background: #F7F6F2;
    border: 1px solid #e2e8f0;
    border-radius: 9999px;
    width: auto;
    max-width: 100%;
}

.md-nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    margin-bottom: 1.25rem;
    -webkit-overflow-scrolling: touch;
}

.rate-tabs {
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
}

.otm-filters {
    margin-bottom: 0;
}

/* ── Tab 項目（未選：透明融入灰底） ── */
.admin-tab-item,
.md-nav-btn,
.otm-filter-btn,
.rate-tabs .rate-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.45rem 0.9rem;
    border-radius: var(--radius-buttons, 9999px);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    color: #64748b;
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s, opacity 0.15s;
}

/* Pill Tab 項目 */
.str-page-tab,
.ro-type-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.45rem 1rem;
    border-radius: 9999px;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.25;
    text-decoration: none;
    color: #64748b;
    background: transparent;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s, box-shadow 0.15s;
}

button.str-page-tab,
button.ro-type-tab {
    margin: 0;
    font-family: inherit;
    appearance: none;
    -webkit-appearance: none;
}

.str-page-tab:hover,
.ro-type-tab:hover:not(.is-active) {
    color: #334155;
    background: rgba(255, 255, 255, 0.65);
}

.str-page-tab__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.35rem;
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    background: rgba(15, 23, 42, 0.08);
    color: inherit;
}

.str-page-tab.is-active .str-page-tab__count {
    background: rgba(255, 255, 255, 0.22);
}

/* 警示總覽：Tab 列 + 右側操作鈕同一行 */
.tm-queue-toolbar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    margin-bottom: 1rem;
}

.tm-queue-toolbar__tabs {
    margin-bottom: 0 !important;
    flex: 0 1 auto;
    min-width: 0;
}

.tm-queue-toolbar__action {
    flex: 0 0 auto;
    margin-left: auto;
}

@media (max-width: 639px) {
    .tm-queue-toolbar {
        flex-wrap: wrap;
    }

    .tm-queue-toolbar__action {
        width: 100%;
        display: flex;
        justify-content: flex-end;
    }
}

.md-nav-btn {
    flex-shrink: 0;
    border: none;
}

.otm-filter-btn {
    font-size: 0.75rem;
    padding: 0.35rem 0.75rem;
}

.rate-tabs .rate-tab {
    order: 1;
    flex: 0 0 auto !important;
    max-width: none !important;
    display: inline-flex !important;
    border: none;
}

/* ── Hover（未選） ── */
.admin-tab-item:hover,
.md-nav-btn:hover:not(.is-active),
.otm-filter-btn:hover:not(.is-active),
.rate-tabs .rate-tab:hover:not(.is-active) {
    background: rgba(255, 255, 255, 0.55);
    color: #334155;
}

/* ── Focus ── */
.admin-tab-item:focus,
.admin-tab-item:focus-visible,
.str-page-tab:focus,
.str-page-tab:focus-visible,
.ro-type-tab:focus,
.ro-type-tab:focus-visible,
.md-nav-btn:focus,
.md-nav-btn:focus-visible,
.otm-filter-btn:focus,
.otm-filter-btn:focus-visible,
.rate-tabs .rate-tab:focus,
.rate-tabs .rate-tab:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--primary, #fc5000) 35%, transparent);
}

/* ── 已選：主色填充 ── */
.admin-tab-item.is-active,
.admin-tab-item--active,
.str-page-tab.is-active,
.ro-type-tab.is-active,
.md-nav-btn.is-active,
.otm-filter-btn.is-active,
.rate-tabs .rate-tab.is-active {
    background: var(--primary, #fc5000) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 1px 3px rgba(252, 80, 0, 0.25);
}

.admin-tab-item.is-active:hover,
.str-page-tab.is-active:hover,
.ro-type-tab.is-active:hover,
.md-nav-btn.is-active:hover,
.otm-filter-btn.is-active:hover,
.rate-tabs .rate-tab.is-active:hover {
    opacity: 0.92;
    color: #fff !important;
}

/* 門店匯率 Tab 內容區（維持原排版） */
.rate-tabs .rate-tab-content {
    order: 9;
    flex-grow: 1;
    width: 100%;
    display: block;
    padding: 0;
    background: #fff;
    box-shadow: none;
    border-radius: 0;
    overflow: hidden;
    border: 1px solid #e0e0e0;
}

@media (max-width: 465px) {
    .rate-tabs .rate-tab-content,
    .rate-tabs .rate-tab {
        order: initial;
    }
}
