/**
 * Tabs component — generic underline-style.
 * Used for any [role="tablist"] container or .travel-tabs.
 */

.travel-tabs,
[role="tablist"].travel-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: var(--travel-space-md);
    border-bottom: 1px solid #e6e8eb;
    margin-bottom: var(--travel-space-lg);
    scrollbar-width: none;
}
.travel-tabs::-webkit-scrollbar { display: none; }

.travel-tabs__tab,
.travel-tabs [role="tab"] {
    appearance: none;
    background: transparent;
    border: none;
    padding: var(--travel-space-sm) var(--travel-space-xs);
    font: inherit;
    font-size: var(--travel-fs-small);
    font-weight: 700;
    color: var(--travel-text-muted);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: var(--travel-transition);
    white-space: nowrap;
    flex-shrink: 0;
}
.travel-tabs__tab:hover,
.travel-tabs [role="tab"]:hover { color: var(--travel-accent); }

.travel-tabs__tab.is-active,
.travel-tabs__tab[aria-selected="true"],
.travel-tabs [role="tab"][aria-selected="true"] {
    color: var(--travel-accent);
    border-bottom-color: var(--travel-accent);
}

.travel-tabs__tab:focus-visible,
.travel-tabs [role="tab"]:focus-visible {
    outline: 2px solid var(--travel-accent);
    outline-offset: 2px;
    border-radius: var(--travel-radius-btn);
}

.travel-tabs__tab[disabled] { opacity: 0.5; cursor: not-allowed; }

.travel-tabs__count {
    display: inline-block;
    margin-left: 4px;
    color: var(--travel-text-secondary);
    font-weight: 400;
    font-size: 12px;
}

/* Tab panels */
.travel-tab-panel,
[role="tabpanel"] { display: none; }
.travel-tab-panel.is-active,
[role="tabpanel"][aria-hidden="false"],
[role="tabpanel"]:not([hidden]) { display: block; }

@media (prefers-reduced-motion: reduce) {
    .travel-tabs__tab,
    .travel-tabs [role="tab"] { transition: none; }
}
