﻿/* ============================================================
   LAF Tabs — LAFTabs.razor / LAFTabsPage.razor
   Tüm sınıflar ve değişkenler "laf-tabs-" ön ekiyle kapsanmıştır.
   Değişkenler .laf-tabs-wrapper üzerinde tanımlıdır → :root'a
   sızmaz, başka bileşenlerle çakışmaz.
   ============================================================ */

.laf-tabs-wrapper {
    /* --- Yerel değişkenler (dışarıdan override edilebilir) --- */
    --laf-tabs-header-bg: var(--mud-palette-background-grey);
    --laf-tabs-header-gap: 2px;
    --laf-tabs-header-padding: 0px 8px 0;
    --laf-tabs-header-radius: 8px 8px 0 0;
    --laf-tabs-btn-radius: 6px 6px 0 0;
    --laf-tabs-btn-gap: 6px;
    --laf-tabs-btn-min-height: 36px;
    --laf-tabs-btn-padding: 6px 16px;
    --laf-tabs-btn-font-size: 1rem;
    --laf-tabs-btn-font-weight: 500;
    --laf-tabs-btn-line-height: 1.2;
    --laf-tabs-btn-color: var(--LAF-palette-text);
    --laf-tabs-btn-bg: rgba(var(--LAF-palette-primary-rgb), 0.1);
    --laf-tabs-btn-bg-hover: rgba(var(--LAF-palette-primary-rgb), 0.3);
    --laf-tabs-btn-active-bg: var(--LAF-palette-primary);
    --laf-tabs-btn-active-color: var(--LAF-palette-text-onprimary);
    --laf-tabs-btn-disabled-opacity: 0.5;
    --laf-tabs-icon-size: 18px;
    --laf-tabs-hover-duration: 0.15s;
    --laf-tabs-fade-duration: 0.5s;
    /* --- Yerleşim --- */
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ------------------------------------------------------------
   Başlık şeridi
   ------------------------------------------------------------ */
.laf-tabs-header {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: var(--laf-tabs-header-gap);
    padding: var(--laf-tabs-header-padding);
    background-color: var(--laf-tabs-header-bg);
    border-radius: var(--laf-tabs-header-radius);
    /* scrollbar-width: thin;
       scrollbar-color: var(--LAF-palette-primary) transparent; */
}

/* .laf-tabs-header::-webkit-scrollbar {
        height: 3px;
    }

    .laf-tabs-header::-webkit-scrollbar-track {
        background: transparent;
    }

    .laf-tabs-header::-webkit-scrollbar-thumb {
        background-color: var(--LAF-palette-primary);
        border-radius: 3px;
    } */

/* ------------------------------------------------------------
   Sekme düğmesi
   ------------------------------------------------------------ */
.laf-tabs-btn {
    display: inline-flex;
    align-items: center;
    gap: var(--laf-tabs-btn-gap);
    border: none;
    border-radius: var(--laf-tabs-btn-radius);
    text-transform: none;
    font-family: inherit;
    font-size: var(--laf-tabs-btn-font-size);
    font-weight: var(--laf-tabs-btn-font-weight);
    line-height: var(--laf-tabs-btn-line-height);
    min-height: var(--laf-tabs-btn-min-height);
    padding: var(--laf-tabs-btn-padding);
    flex-shrink: 0;
    cursor: pointer;
    color: var(--laf-tabs-btn-color);
    transition: background-color var(--laf-tabs-hover-duration) ease, color var(--laf-tabs-hover-duration) ease;
}

    /* Seçili olmayan sekmeler: hafif saydam primary */
    .laf-tabs-btn:not(.laf-tabs-btn--active) {
        background-color: var(--laf-tabs-btn-bg);
    }

        /* Hover: biraz daha belirgin */
        .laf-tabs-btn:not(.laf-tabs-btn--active):hover {
            background-color: var(--laf-tabs-btn-bg-hover);
        }

.laf-tabs-btn--active {
    position: relative;
    bottom: -1px;
    z-index: 1;
    background-color: var(--laf-tabs-btn-active-bg);
    color: var(--laf-tabs-btn-active-color);
}

.laf-tabs-btn:disabled {
    opacity: var(--laf-tabs-btn-disabled-opacity);
    cursor: default;
    pointer-events: none;
}

.laf-tabs-icon {
    width: var(--laf-tabs-icon-size);
    height: var(--laf-tabs-icon-size);
    flex-shrink: 0;
    fill: currentColor;
}

/* ------------------------------------------------------------
   İçerik alanı
   ------------------------------------------------------------ */

/* Yükseklik ölçümü ve min-height bu kapsayıcı üzerinden yapılır */
.laf-tabs-body {
    display: block;
}

.laf-tabs-content {
    /* border-left: 5px solid var(--LAF-palette-primary-lighten) !important; */
    /* padding: 12px; */
}

/* ------------------------------------------------------------
   Sekme sayfası (LAFTabsPage) — fade & DOM'da tutma
   ------------------------------------------------------------ */
.laf-tabs-page {
    opacity: 0;
    transition: opacity var(--laf-tabs-fade-duration) ease-in-out;
}

.laf-tabs-page--shown {
    opacity: 1;
}

/* KeepAlive / AutoHideEmpty açıkken pasif sayfalar DOM'da kalır ama görünmez */
.laf-tabs-page--hidden {
    display: none;
}
