.sourcing-metric
{
    height: 100%;
    padding: .75rem 1rem;
    border: 1px solid #e7e9ee;
    border-radius: .5rem;
    background-color: #f8f9fb;
}

.sourcing-metric .fw-semibold
{
    overflow-wrap: anywhere;
}

.rz-cell-data
{
    overflow: visible !important;
    position: relative !important;
    white-space: normal !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.rz-grid-table td
{
    overflow: visible !important;
    white-space: normal !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Frozen action column: dropdown must appear above other frozen cells */
.rz-frozen-cell .dropdown-menu.show
{
    z-index: 1050 !important;
}

.rz-frozen-cell:has(.dropdown-menu.show)
{
    z-index: 2 !important;
}

@media (max-width: 768px)
{
    .rz-datatable-reflow .rz-data-row>td
    {
        display: block;
        width: 100% !important;
        border: none;
    }
}

.rz-grid-table thead th .rz-column-title
{
    text-transform: none !important;
}

html:root
{
    --rz-fieldset-toggle-font-size: 22px;
    --rz-scheduler-header-agenda-font-size: 22px;
    --rz-scheduler-toolbar-title-font-size: 22px;

    --rz-dialog-title-font-size: 18px;

    --rz-body-font-size: 14px;
    --rz-input-font-size-lg: 14px;
    --rz-chat-avatar-font-size: 14px;
    --rz-chat-header-title-font-size: 14px;
    --rz-dialog-close-font-size: 14px;
    --rz-scheduler-header-agenda-font-size-small: 14px;

    --rz-grid-cell-font-size: 12px;
    --rz-grid-header-font-size: 12px;
    --rz-grid-filter-font-size: 12px;
    --rz-grid-filter-icon-font-size: 12px;
    --rz-pager-summary-font-size: 12px;
    --rz-tabs-tab-font-size: 14px;
    --rz-text-button-font-size: 12px;
    --rz-chip-font-size: 12px;
    --rz-datepicker-calendar-font-size: 12px;
    --rz-chart-axis-font-size: 12px;
    --rz-chart-legend-font-size: 12px;
    --rz-sankey-label-font-size: 12px;
    --rz-form-field-filled-label-floating-font-size-lg: 12px;

    --rz-badge-font-size: 10px;
    --rz-form-error-font-size: 10px;
    --rz-text-caption-font-size: 10px;
    --rz-chip-sm-font-size: 10px;
    --rz-datepicker-calendar-header-font-size: 10px;
    --rz-scheduler-event-font-size: 10px;
    --rz-scheduler-event-list-button-font-size: 10px;
    --rz-scheduler-header-font-size: 10px;
    --rz-spreadsheet-tab-font-size: 10px;

    --rz-input-size-lg: 46px;
    --rz-input-size-md: 34px;
    --rz-input-size-sm: 26px;
    --rz-input-size-xs: 22px;

    --rz-input-padding-block: 5px;
    --rz-input-padding-block-lg: 8px;
    --rz-input-padding-block-md: 3px;
    --rz-input-padding-block-sm: 0px;
    --rz-input-padding-block-xs: 0px;
    --rz-input-padding-inline: 13px;
    --rz-input-padding-inline-lg: 16px;
    --rz-input-padding-inline-md: 11px;
    --rz-input-padding-inline-sm: 6px;
    --rz-input-padding-inline-xs: 2px;

    --rz-numeric-input-padding-block: 6px 6px;
    --rz-numeric-input-padding-block-lg: 14px;
    --rz-numeric-input-padding-block-md: 3px;
    --rz-numeric-input-padding-block-sm: 2px;
    --rz-numeric-input-padding-block-xs: 0px;
    --rz-numeric-input-padding-inline: 13px 18px;
    --rz-numeric-input-padding-inline-lg: 16px 24px;
    --rz-numeric-input-padding-inline-md: 11px 16px;
    --rz-numeric-input-padding-inline-sm: 6px 14px;
    --rz-numeric-input-padding-inline-xs: 2px 12px;
    --rz-numeric-button-height-lg: 18px;
    --rz-numeric-button-height-md: 12px;
    --rz-numeric-button-height-sm: 10px;
    --rz-numeric-button-height-xs: 9px;
    --rz-numeric-button-width-lg: 18px;
    --rz-numeric-button-width-md: 12px;
    --rz-numeric-button-width-sm: 10px;
    --rz-numeric-button-width-xs: 9px;

    --rz-text-area-padding-block: 5px;

    --rz-dropdown-item-padding: 10px 14px;
    --rz-dropdown-items-padding: 6px 0;
    --rz-dropdown-items-margin: 0 -9px;
    --rz-dropdown-filter-padding: 14px 0 6px;
    --rz-dropdown-horizontal-padding: 14px;
    --rz-dropdown-chips-padding-block: 5px;
    --rz-dropdown-chips-padding-inline: 5px 13px;

    --rz-listbox-header-padding-block: 10px;
    --rz-listbox-header-padding-inline: 14px;

    --rz-grid-cell-padding: 8px 14px;
    --rz-grid-header-cell-padding: 10px 0;
    --rz-grid-header-title-padding-inline: 14px 0;
    --rz-grid-header-line-height: 22px;
    --rz-grid-header-padding: 14px;
    --rz-grid-filter-padding: 6px;
    --rz-grid-filter-gap: 14px;
    --rz-grid-filter-button-padding-inline: 14px;
    --rz-grid-filter-buttons-padding: 0 14px 14px;

    --rz-pager-padding: 6px 14px;
    --rz-pager-gap: 6px;
    --rz-pager-summary-padding: 6px 18px;
    --rz-pager-numeric-button-padding: 10px 14px;
    --rz-pager-numeric-button-selected-padding: 10px 14px;

    --rz-tabs-padding: 14px;
    --rz-tabs-tab-padding-block: 10px;
    --rz-tabs-tab-padding-inline: 14px;
    --rz-tabs-tab-line-height: 22px;

    --rz-chip-padding-block: 4px;
    --rz-chip-padding-inline: 10px;
    --rz-chip-gap: 6px;
    --rz-chip-list-gap: 6px;
    --rz-badge-padding: 0px 2px;
    --rz-badge-pill-padding: 0px 6px;
    --rz-badge-line-height: 14px;

    --rz-dialog-content-padding: 22px;
    --rz-dialog-title-padding-block: 22px 0;
    --rz-dialog-title-padding-inline: 22px;
    --rz-dialog-title-line-height: 22px;

    --rz-datepicker-calendar-item-padding: 8px 0;
    --rz-datepicker-calendar-padding-block: 0 10px;
    --rz-datepicker-calendar-padding-inline: 10px;
    --rz-datepicker-header-padding-block: 10px;
    --rz-datepicker-header-padding-inline: 10px;
    --rz-datepicker-footer-padding: 0 10px;
    --rz-datepicker-line-height: 22px;

    --rz-tooltip-padding: 2px 6px;
    --rz-checkbox-height: 16px;
}

.rz-numeric .rz-numeric-input,
.rz-numeric input
{
    text-align: right;
}

.rz-data-grid.rz-density-compact[class]
{
    --rz-grid-cell-padding: 2px 6px;
    --rz-grid-cell-line-height: 14px;
    --rz-grid-header-cell-padding: 2px 0;
    --rz-grid-header-padding: 2px 14px;
    --rz-grid-header-title-padding-inline: 6px 0;
    --rz-grid-filter-padding: 2px 6px;
}

.rz-pager.rz-density-compact[class]
{
    --rz-pager-padding: 2px;
    --rz-pager-gap: 2px;
    --rz-pager-summary-padding: 6px;
}

.validation-message
{
    color: #dc3545;
    font-size: 0.8rem;
}

/* ===== Dashboard Cards ===== */
.dashboard-card
{
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    animation: fadeInUp 0.4s ease both;
}

.dashboard-card:hover
{
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08) !important;
}

@keyframes fadeInUp
{
    from
    {
        opacity: 0;
        transform: translateY(12px);
    }

    to
    {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Stagger animation delays */
.dashboard-card:nth-child(1)
{
    animation-delay: 0.05s;
}

.dashboard-card:nth-child(2)
{
    animation-delay: 0.10s;
}

.dashboard-card:nth-child(3)
{
    animation-delay: 0.15s;
}

.dashboard-card:nth-child(4)
{
    animation-delay: 0.20s;
}

.dashboard-card:nth-child(5)
{
    animation-delay: 0.25s;
}

.dashboard-card:nth-child(6)
{
    animation-delay: 0.30s;
}

.dashboard-card:nth-child(7)
{
    animation-delay: 0.35s;
}

.dashboard-card:nth-child(8)
{
    animation-delay: 0.40s;
}

/* Card header with dashed bottom border */
.card .border-bottom-dashed
{
    border-bottom: 1px dashed var(--ins-border-color, #dee2e6);
}

/* Widget flat improvements */
.widget-flat .avatar-sm
{
    transition: transform 0.2s ease;
}

.widget-flat:hover .avatar-sm
{
    transform: scale(1.08);
}

/* Dashboard loading placeholder */
.placeholder-dashboard
{
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s ease infinite;
}

@keyframes shimmer
{
    0%
    {
        background-position: 200% 0;
    }

    100%
    {
        background-position: -200% 0;
    }
}

/* Equal height card rows */
.row-eq-height
{
    display: flex;
    flex-wrap: wrap;
}

.row-eq-height>[class*='col-']
{
    display: flex;
    flex-direction: column;
}

.row-eq-height>[class*='col-']>.card
{
    flex: 1;
}

.card-header-custom p
{
    margin: 8px 0 0 0;
    opacity: 0.9;
    font-size: 0.95rem;
    line-height: 1.4;
}

.custom-chart
{
    min-height: 375px;
}


:root
{
    --skew: 15%;
    /* əyilmə faizi */
}

.image-grid
{
    display: flex;
    height: 100px;
    overflow: hidden;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.image-grid:last-child
{
    background-repeat: no-repeat;
}

.image-item
{
    flex: 1 0 38%;
    position: relative;
    background-size: cover;
    background-position: center;
    height: 100px;
    margin-right: 8px;
}

.image-item:last-child
{
    margin-right: 0;
}

.image-item:first-child
{
    border-top-left-radius: 12px;
}

.image-item:last-child
{
    border-top-right-radius: 12px;
}

/* 1-ci: düz sol |, sağ maili / */
.image-item:nth-child(1)
{
    clip-path: polygon(0 0, 100% 0, calc(100% - var(--skew)) 100%, 0% 100%);
}

/* 2-ci və 3-cü: hər iki tərəfi maili / / */
.image-item:nth-child(2),
.image-item:nth-child(3)
{
    clip-path: polygon(var(--skew) 0, 100% 0, calc(100% - var(--skew)) 100%, 0% 100%);
    margin-left: calc(var(--skew) * -1);
}

/* 4-cü: sol maili /, sağ düz | */
.image-item:nth-child(4)
{
    clip-path: polygon(var(--skew) 0, 100% 0, 100% 100%, 0% 100%);
    margin-left: calc(var(--skew) * -1);
}

.categories-list a
{
    color: black;
}

/* List Items */
.list-item
{
    border: none;
    border-bottom: 1px solid #e9ecef;
    padding: 13px 0;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    margin-left: -18px;
    margin-right: -18px;
    padding-left: 18px;
    padding-right: 18px;
    font-size: 18px
}

.list-item:hover
{
    background-color: #f8f9fa;
}

.list-item.active
{
    background-color: #e3f2fd;
    border-left: none !important;
    padding-left: 20px !important;
    border-radius: 0 0 0 0;
    margin-left: -20px;
    margin-right: -20px;
    padding-right: 20px;
    padding-left: 16px;
}

/* Yalnız sonuncu elementdə border-bottom silinsin */
a:last-child .list-item
{
    border-bottom: none;
}

a:first-child .list-item
{
    border-top: 1px solid #e9ecef;
}


/* Icons */
.icon-wrapper
{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
    font-size: 18px;
    color: #2196f3 !important;
}

.icon-blue,
.icon-green,
.icon-orange,
.icon-red,
.icon-purple,
.icon-cyan,
.icon-teal,
.icon-indigo
{
    background-color: transparent !important;
}

/* Progress Circle */
.progress-circle
{
    width: 200px !important;
    height: 200px !important;
    border-radius: 50%;
    position: relative;
    margin: 20px auto;
    background: conic-gradient(from 0deg, var(--grad-start) 0%, var(--grad-end) var(--progress-percent), #f1f3f4 var(--progress-percent), #f1f3f4 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.progress-circle::before
{
    content: '';
    width: 150px !important;
    height: 150px !important;
    border-radius: 50%;
    background: white;
    position: absolute;
}

.progress-text
{
    font-size: 24px;
    font-weight: bold;
    color: #333;
    z-index: 1;
    position: relative;
}

/* Tabs */
.tabs-custom
{
    margin-bottom: 0;
}

.tab-item
{
    padding: 8px 16px;
    color: black;
    background: #f3f2f2 !important;
    border-radius: 20px;
    margin-right: 10px;
    margin-bottom: 8px;
    border: 1px solid #f3f2f2;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
    display: inline-block;
    font-weight: 600;
}

.tab-item.active
{
    background: #E2F3FF !important;
    color: black;
    border: 1px solid #2196f3 !important;
}

.tab-item:hover
{
    background: #E2F3FF !important;
    color: #1976d2;
    border-color: #2196f3 !important;
}

.tab-item.active:hover
{
    background: #1976d2;
}

/* Legend */
.legend-item
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    background: #fbfafa98 !important;
    border-radius: 30px !important;
    padding: 8px 20px !important;
}

.legend-color
{
    width: 16px;
    height: 16px;
    border-radius: 50%;
    margin-right: 10px;
}

.legend-left
{
    display: flex;
    align-items: center;
}

/* Arrow icon düzəlişi */
.arrow-icon
{
    color: #666;
    font-size: 16px;
    transition: transform 0.3s;
    transform: rotate(315deg);
}

.list-item.active .arrow-icon,
.tab-item.active .arrow-icon
{
    transform: rotate(0deg);
}

/* Responsive */
@media (max-width: 768px)
{
    .image-grid
    {
        grid-template-columns: repeat(2, 1fr);
        height: 100px;
    }

    .card-header-custom h5
    {
        font-size: 1rem !important;
    }

    .card-header-custom p
    {
        font-size: 0.8rem;
    }

    .progress-circle
    {
        width: 100px;
        height: 100px;
    }

    .progress-circle::before
    {
        width: 70px;
        height: 70px;
    }

    .progress-text
    {
        font-size: 18px;
    }
}


.grid-height
{
    padding-top: .25rem !important;
    /* tighten */
    padding-bottom: .25rem !important;
    height: 36px !important;
    /* optional hard height */
    line-height: 1.1 !important;
}

/* Sənin işləyən fallback-ların */
.bg-custom-success
{
    background-image: linear-gradient(90deg, #bff3c9, #0a7a38);
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
}

.bg-custom-danger
{
    background-image: linear-gradient(90deg, #fecaca, #b91c1c);
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
}

.bg-custom-warning
{
    background-image: linear-gradient(90deg, #fde68a, #b45309);
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
}

.bg-custom-progress
{
    background-color: #f1f3f4;
}

/* Dəstək varsa: start HƏR ZAMAN açıq, end isə faizə görə daha tünd */
/* Arxa fon */
.bg-custom-progress
{
    background: #f1f3f4;
}

/* Dinamik: qırmızı → sarı → yaşıl; həmişə açıqdan tündə gradient */
.progress .progress-bar.dynamic
{
    /* Inline gəlir: --p (0..100), istəsən --pDark (0..150) */
    --pHue: clamp(var(--p, 0), 0, 100);
    --pDark: clamp(var(--pDark, var(--p, 0)), 0, 150);
    /* Hue 0→120 (qırmızıdan yaşıladək), saturation sabit, lightness bir az azalır */
    --h: calc(1.2 * var(--pHue));
    /* 0..120 deg */
    --s: 85%;
    --l: calc(70% - 0.2% * var(--pHue));
    /* faiz artdıqca bir az tünd */

    --base: hsl(var(--h) var(--s) var(--l));
    /* Tündləşmə gücü: p artdıqca daha çox black qarışır */
    --dark-mix: calc(10% + 0.4% * var(--pDark));
    /* 0%→10%, 100%→50%, 150%→70% */
    /* Start HƏMİŞƏ açıq, End p-yə görə tünd */
    --start: color-mix(in hsl, var(--base) 75%, white 25%);
    --end: color-mix(in hsl, var(--base) calc(100% - var(--dark-mix)), black var(--dark-mix));
    background: linear-gradient(90deg, var(--start), var(--end)) !important;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
}




.nav-pills .nav-link.active,
.nav-pills .show>.nav-link
{
    background-color: #0D9DF6 !important;
    color: #ffffff !important;
}

.nav-pills>li>a:hover
{
    color: #0D9DF6 !important;
}

.nav-link-color
{
    color: #0D9DF6;
}



/* Məhsul kartı (əvvəlki kimi) */
.item-group-card
{
    border-radius: 18px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.04);
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.item-group-card:hover
{
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12);
    border-color: rgba(13, 110, 253, 0.25);
}

/* Ümumi faiz dairəsi */
.total-circle-wrapper
{
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Ümumi faiz dairəsi */
.total-circle
{
    --tp: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Faizə görə rənglər */
.total-circle.circle-success
{
    background: conic-gradient(rgba(25, 135, 84, 0.75) calc(var(--tp) * 1%), rgba(222, 226, 230, 0.8) 0);
}

.total-circle.circle-warning
{
    background: conic-gradient(rgba(255, 193, 7, 0.80) calc(var(--tp) * 1%), rgba(222, 226, 230, 0.8) 0);
}

.total-circle.circle-danger
{
    background: conic-gradient(rgba(220, 53, 69, 0.75) calc(var(--tp) * 1%), rgba(222, 226, 230, 0.8) 0);
}

.total-circle-inner
{
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.total-circle-value
{
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
}

.total-circle-label
{
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #6c757d;
}


/* Ownership chip list və chip-lər (əvvəl verdiyim) */
.ownership-chip-list
{
    margin-top: 8px;
}

.attachment-split-layout.has-attachment-panel
{
    --attachment-panel-width: clamp(300px, 28vw, 400px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52px;
    gap: 1rem;
    align-items: start;
    transition: grid-template-columns 180ms ease;
}

.attachment-split-layout.has-attachment-panel:has(.attachment-panel-shell.is-expanded)
{
    grid-template-columns: minmax(0, 1fr) var(--attachment-panel-width);
}

.attachment-split-main
{
    min-width: 0;
}

.attachment-split-aside
{
    min-width: 0;
    position: sticky;
    top: 1rem;
}

.attachment-panel-shell
{
    width: 100%;
}

.attachment-rail-button
{
    width: 52px;
    min-height: 260px;
    padding: 14px 8px;
    border: 1px solid var(--bs-border-color);
    border-radius: 6px 0 0 6px;
    background: var(--bs-light);
    color: var(--bs-body-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
}

.attachment-rail-button:hover,
.attachment-rail-button:focus-visible
{
    border-color: var(--bs-primary);
    color: var(--bs-primary);
}

.attachment-rail-button>span:not(.badge)
{
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    line-height: 1;
}

.attachment-rail-chevron
{
    margin-top: auto;
}

.attachment-collapse-button
{
    width: 32px;
    height: 32px;
    padding: 0;
}

.attachment-grid-scroll
{
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

.attachment-grid
{
    min-width: 680px;
}

.attachment-grid .rz-data-row,
.rz-data-grid .rz-data-row
{
    cursor: pointer;
}

/* Sətir seçimi (Radzen row selection) aydın görünməlidir: fon + sol aksent zolağı.
   Radzen seçilmiş sətri .rz-state-highlight ilə işarələyir. */
.rz-data-grid .rz-data-row.rz-state-highlight>td,
.rz-data-grid .rz-data-row.rz-state-highlight:hover>td
{
    background-color: var(--rz-primary-lighter);
    color: var(--rz-on-primary-lighter);
    font-weight: 600;
}

/* Icon-only actions stay transparent; buttons with a Bootstrap color variant keep their surface. */
button.btn-icon:not(.btn-primary):not(.btn-secondary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info):not(.btn-light):not(.btn-dark):not([class*="btn-outline-"])
{
    background-color: transparent;
    border-color: transparent;
    box-shadow: none;
}

/* Məhsul kateqoriya ağacı — yarpaq səviyyəsində genişləndirmə düyməsinin yerini saxlayır
   ki, adların hamısı eyni sütunda dursun. */
.category-tree-spacer
{
    display: inline-block;
    width: 1.75rem;
}

.category-tree
{
    max-height: 26rem;
    overflow-y: auto;
    background-color: var(--bs-body-bg);
}

.attachment-grid .rz-cell-data,
.attachment-grid th,
.attachment-grid td
{
    white-space: nowrap;
}

.rz-dialog:has(.attachment-panel-shell.is-expanded)
{
    width: min(1200px, 95vw) !important;
    max-width: 95vw;
    transition: width 180ms ease;
}

@media (max-width: 1199.98px)
{
    .attachment-split-layout.has-attachment-panel
    {
        grid-template-columns: 1fr;
    }

    .attachment-split-aside
    {
        position: static;
    }

    .attachment-rail-button
    {
        width: 100%;
        min-height: 44px;
        flex-direction: row;
        justify-content: flex-start;
        border-radius: 6px;
        padding: 8px 12px;
    }

    .attachment-rail-button>span:not(.badge)
    {
        writing-mode: horizontal-tb;
        transform: none;
    }

    .attachment-rail-chevron
    {
        margin-top: 0;
        margin-left: auto;
        transform: rotate(-90deg);
    }
}

@media (max-width: 575.98px)
{
    .attachment-panel .card-body
    {
        padding: 0.75rem;
    }

    .attachment-grid
    {
        min-width: 620px;
    }
}

.ownership-chip
{
    flex: 1 1 220px;
    min-width: 210px;
    max-width: 100%;
    border-radius: 14px;
    padding: 10px 12px;
    background: radial-gradient(circle at top left, rgba(13, 110, 253, 0.12), rgba(13, 110, 253, 0.02));
    border: 1px solid rgba(13, 110, 253, 0.12);
    position: relative;
    overflow: hidden;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.ownership-chip:hover
{
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.10);
    border-color: rgba(13, 110, 253, 0.4);
    background: radial-gradient(circle at top left, rgba(13, 110, 253, 0.18), rgba(13, 110, 253, 0.05));
}

.ownership-chip-header .chip-title
{
    font-size: 13px;
    font-weight: 600;
}

.chip-percent-badge
{
    font-size: 12px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(25, 135, 84, 0.12);
    color: #198754;
}

.chip-percent-badge.chip-empty
{
    background: rgba(108, 117, 125, 0.10);
    color: #6c757d;
}

.ownership-chip-body
{
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.chip-metric
{
    display: flex;
    flex-direction: column;
}

.metric-label
{
    font-size: 13px;
    letter-spacing: .04em;
    color: #000;
}

.metric-value
{
    font-size: 13px;
    font-weight: 600;
    color: #212529;
}

.chip-progress
{
    margin-top: 4px;
    border-radius: 999px;
    overflow: hidden;
}

.chip-progress-fill
{
    border-radius: 999px;
}

@media (max-width: 767.98px)
{
    .ownership-chip
    {
        flex: 1 1 100%;
    }
}


/* Ümumi cədvəl görünüşünü bir az yüngülləşdirək */
.creative-table tbody tr:hover
{
    background: #f8fafc;
}

/* Məhsullar üzrə – ownership hüceyrəsi */
.ownership-header
{
    background: #f1f4fb;
    font-size: 13px;
}

.ownership-metric-cell
{
    min-width: 180px;
    padding: 6px 8px;
    vertical-align: middle;
}

.ownership-cell-header
{
    display: flex;
    justify-content: flex-start;
}

.ownership-cell-body .metric-row
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 11px;
    line-height: 1.3;
}


/* Ownership içi progress bar */
.ownership-cell-progress
{
    height: 11px !important;
    border-radius: 999px;
    overflow: hidden;
}

/* Faiz badge-ləri – 3 səviyyə */
.percent-badge
{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
}

.percent-badge-success
{
    background: rgba(25, 135, 84, 0.14);
    color: #198754;
}

.percent-badge-warning
{
    background: rgba(255, 193, 7, 0.18);
    color: #856404;
}

.percent-badge-danger
{
    background: rgba(220, 53, 69, 0.16);
    color: #842029;
}

/* Şirkətlər üzrə – icra hüceyrəsi */
.icra-cell .percent-badge
{
    margin-bottom: 4px;
}

.icra-progress
{
    height: 14px;
    border-radius: 999px;
    overflow: hidden;
}

/* Regionlar üzrə – dəyərlər üçün yüngül heatmap */
.value-cell
{
    font-size: 13px;
}

.value-cell.has-value
{
    background: rgba(13, 110, 253, 0.04);
    font-weight: 500;
}

/* Mövcud distribution-tabs CSS (əgər artıq əlavə etmisənsə, təkrar etməyə ehtiyac yoxdur) */
.distribution-tabs
{
    background: #f5f7fb;
    border-radius: 18px;
    padding: 4px;
}

.distribution-tabs .nav-link
{
    border-radius: 14px;
    border: none;
    background: transparent;
    color: #6c757d;
    font-weight: 500;
    position: relative;
    padding: 18px 25px;
    margin: 6px;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
    display: flex;
}

.distribution-tabs .nav-link:hover
{
    background: rgba(13, 110, 253, 0.06);
    color: #0d6efd;
}

.distribution-tabs .nav-link.active
{
    background: linear-gradient(135deg, #0f3b44, #638aa4);
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(13, 110, 253, 0.35);
    transform: translateY(-1px);
}

.distribution-tabs .nav-link::after
{
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 4px;
    height: 2px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.18s ease;
}

.distribution-tabs .nav-link.active::after
{
    transform: scaleX(1);
}

.distribution-tabs .tab-icon i
{
    font-size: 18px;
}

.distribution-tabs .tab-badge
{
    font-size: 11px;
    border-radius: 999px;
    padding: 3px 9px;
    background: rgba(255, 255, 255, 0.9);
    color: #0d6efd;
}

@media (max-width: 767.98px)
{
    .distribution-tabs .nav-link
    {
        font-size: 13px;
        padding: 8px 10px;
    }

    .distribution-tabs .tab-title
    {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* Şirkətlər üzrə – icra dairəsi olan hüceyrə */
.company-circle-cell
{
    min-width: 80px;
}

/* Dairəvi gauge */
.company-circle
{
    --cp: 0;
    /* Razor-dan gəlir, 0–130 arası faiz */
    --circle-color: rgba(13, 110, 253, 0.9);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    padding: 8px;
    background: conic-gradient(var(--circle-color) calc(var(--cp) * 1%), #e9ecef 0);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.company-circle-inner
{
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.company-circle-value
{
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

.company-circle-label
{
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #6c757d;
}

/* Faizə görə rəng dəyişimi */
.company-circle.circle-success
{
    --circle-color: rgba(25, 135, 84, 0.95);
}

.company-circle.circle-warning
{
    --circle-color: rgba(255, 193, 7, 0.95);
}

.company-circle.circle-danger
{
    --circle-color: rgba(220, 53, 69, 0.95);
}

/* ===== Ümumi override (möhkəm) ===== */
.creative-table
{
    border-collapse: separate !important;
    border-spacing: 3px 3px !important;
    /* sütunlar arası boşluq (şəkil effektinə görə) */
    width: 100% !important;
    background: transparent !important;
    margin-bottom: 0 !important;
    outline: 0 !important;
}

/* BÜTÜN köhnə border qaydalarını söndür və yeni border ver */
.creative-table,
.creative-table thead,
.creative-table thead th,
.creative-table tbody,
.creative-table tbody td
{
    border: none !important;
    box-shadow: none !important;
    background: none !important;
}

/* ===== Header - tünd fon və ağ mətn (mütləq görünən) ===== */
.creative-table thead th
{
    background: #0f3b44 !important;
    /* istəsən rəngi burada dəyiş */
    color: #ffffff !important;
    font-weight: 700 !important;
    padding: 16px 18px !important;
    vertical-align: middle !important;
    border-radius: 4px !important;
    border: 2px solid rgba(11, 59, 68, 0.9) !important;
    /* header çevrə borderi */
}

/* Header sütunları üçün fərdi enləri (əgər istifadə edirsən) */
.creative-table thead th.col-company
{
    width: 28% !important;
}

.creative-table thead th.col-unit
{
    width: 10% !important;
}

.creative-table thead th.col-min
{
    width: 15% !important;
}

.creative-table thead th.col-actual
{
    width: 15% !important;
}

.creative-table thead th.col-days
{
    width: 12% !important;
}

.creative-table thead th.col-indicator
{
    width: 10% !important;
}

/* ===== Body hüceyrələr: sütun-box effekti, border görünüşü ===== */
.creative-table tbody td
{
    background: #fbf8f6 !important;
    /* açıq krem arxa fon */
    padding: 20px 16px !important;
    vertical-align: middle !important;
    color: #0b2b2f !important;
    position: relative !important;
    border: 2px solid rgba(11, 59, 68, 0.10) !important;
    /* sütun qutusu effekti */
    border-radius: 2px !important;
    box-sizing: border-box !important;
}

/* Sütunlar arası "dikey boşluq" effekti üçün: td + td */
/*.creative-table tbody td + td {
                box-shadow: -6px 0 0 rgba(11,59,68,0.06) inset !important;
            }*/

/* Nöqtəli horizontal xətt effekti (alt hissədə) */
.creative-table tbody td::after
{
    content: "";
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: -12px;
    height: 1px;
    background-image: linear-gradient(to right, rgba(11, 43, 47, 0.12) 0 20%, rgba(11, 43, 47, 0) 20%);
    background-size: 6px 1px;
    opacity: 0.95;
}

.creative-table tbody tr:last-child td::after
{
    display: none !important;
}

/* Hover effekti: satır üzərinə gələndə açıq fon */
.creative-table tbody tr:hover td
{
    background: #ffffff !important;
}

/* Xüsusi align-lar (sənin Razor class-larla uyğun) */
.creative-table td.company
{
    text-align: left !important;
    font-weight: 600 !important;
    color: #072b2f !important;
}

.creative-table td.unit
{
    text-align: center !important;
    color: #0b2b2f !important;
}

.creative-table td.num
{
    text-align: right !important;
    color: #0b2b2f !important;
    font-variant-numeric: tabular-nums !important;
}

.creative-table td.days
{
    text-align: center !important;
    color: #0b2b2f !important;
}


/* Responsive tənzimləmələr */
@media (max-width: 900px)
{
    .creative-table thead th
    {
        padding: 12px 10px !important;
        font-size: .95rem !important;
    }

    .creative-table tbody td
    {
        padding: 12px 10px !important;
        font-size: .95rem !important;
    }
}


.map-wrapper
{
    position: relative;
    width: 100%;
    overflow: hidden;
    align-items: center;
}

/* SVG özü */
.map-wrapper svg
{
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    display: block;
}

/* Regionlər */
#az-map path
{
    fill: rgb(107 139 203);
    stroke: #fff;
    stroke-width: 1;
    transition: fill .2s ease, stroke-width .2s ease;
}

#az-map path:hover
{
    fill: #22413A;
    stroke-width: 1.2;
    cursor: pointer;
}

.map-tooltip
{
    position: fixed;
    background: #22413A;
    color: #fff;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    pointer-events: none;
    z-index: 9999;
    max-width: 200px;
    white-space: nowrap;
}

@media (max-width: 768px)
{
    .map-tooltip
    {
        font-size: 11px;
        padding: 5px 8px;
    }

    #az-map path
    {
        stroke-width: 0.6;
    }
}

/* Quantity > 0 olan region */
#az-map path.has-data
{
    stroke: #FFC107;
    stroke-width: 2.2;
    filter: drop-shadow(0 0 3px rgba(255, 193, 7, .6));
}

/* Hover-da daha güclü görünsün */
#az-map path.has-data:hover
{
    stroke-width: 2.6;
}


.circle-percent
{
    --size: 72px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: conic-gradient(var(--color) calc(var(--p) * 1%), #e9ecef 0);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    margin: auto;
}

.circle-percent span
{
    background: #fff;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.circle-success
{
    --color: #198754;
}

.circle-warning
{
    --color: #ffc107;
}

.circle-danger
{
    --color: #dc3545;
}


.sortable-header
{
    cursor: pointer;
    user-select: none;
    display: inline-flex;
    align-items: center;
}

.sortable-header:hover
{
    text-decoration: underline;
}

.two-factor
{
    width: fit-content;
    max-width: 100%;
}

.two-factor .otp-input
{
    width: 48px;
    height: 52px;
    flex: 0 0 48px;
    padding-left: 0;
    padding-right: 0;
    font-size: 1.25rem;
    font-weight: 600;
}

@media (max-width: 400px)
{
    .two-factor .otp-input
    {
        width: 38px;
        height: 48px;
        flex-basis: 38px;
        font-size: 1.1rem;
    }
}

.required-field-label::after
{
    content: " *";
    color: var(--bs-danger);
    font-weight: 700;
}

.edit-form-skeleton .placeholder.form-control
{
    display: block;
    min-height: 38px;
}

/* Form altındaki Yadda saxla / Sil düymələri — forma eninə uyğun, çox uzanmasın. */
.edit-form-actions
{
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.edit-form-actions .btn
{
    flex: 0 0 auto;
    width: auto;
    min-width: 9rem;
    max-width: 12rem;
}

@media (max-width: 575.98px)
{
    .edit-form-actions .btn
    {
        flex: 1 1 100%;
        max-width: none;
    }
}

.sourcing-comparison .comparison-master-detail
{
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    min-height: 440px;
    border: 1px solid var(--bs-border-color);
    border-radius: 6px;
    overflow: hidden;
    background: var(--bs-body-bg);
}

.sourcing-comparison .comparison-requirements
{
    min-width: 0;
    border-right: 1px solid var(--bs-border-color);
    background: var(--bs-tertiary-bg);
}

.sourcing-comparison .comparison-requirements__header
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid var(--bs-border-color);
}

.sourcing-comparison .comparison-requirements__list
{
    max-height: 68vh;
    overflow-y: auto;
}

.sourcing-comparison .comparison-requirement
{
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 12px 16px;
    border: 0;
    border-bottom: 1px solid var(--bs-border-color);
    background: transparent;
    color: var(--bs-body-color);
    text-align: left;
}

.sourcing-comparison .comparison-requirement:hover,
.sourcing-comparison .comparison-requirement--active
{
    background: var(--bs-body-bg);
}

.sourcing-comparison .comparison-requirement--active
{
    box-shadow: inset 3px 0 var(--bs-primary);
}

.sourcing-comparison .comparison-requirement__topline
{
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}

.sourcing-comparison .comparison-requirement__amount
{
    font-size: 0.875rem;
    font-weight: 600;
}

.sourcing-comparison .comparison-line-detail
{
    min-width: 0;
    padding: 18px;
}

.sourcing-comparison .comparison-line-detail__header
{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--bs-border-color);
}

.sourcing-comparison .comparison-offers
{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 12px;
    padding-top: 16px;
}

.sourcing-comparison .comparison-vendor-card
{
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
    background: var(--bs-body-bg);
}

.sourcing-comparison .comparison-vendor-card--recommended,
.sourcing-comparison .comparison-vendor-card--technically-accepted
{
    border-color: var(--bs-success-border-subtle, #a3cfbb);
}

.sourcing-comparison .comparison-vendor-card--selected
{
    border-color: var(--bs-primary-border-subtle, #9ec5fe);
}

.sourcing-comparison .comparison-vendor-card__header
{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 12px;
}

.sourcing-comparison .comparison-vendor-card__price
{
    font-size: 1.2rem;
    font-weight: 700;
}

.sourcing-comparison .comparison-vendor-card__award,
.sourcing-comparison .comparison-award-fields
{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--bs-border-color);
}

.sourcing-comparison .comparison-award-fields
{
    align-items: flex-end;
    flex-wrap: wrap;
}

.sourcing-comparison .rz-dropdown.comparison-alternative-picker
{
    width: auto;
    min-width: 120px;
    border: 0;
    background: transparent;
    color: var(--bs-link-color);
    padding: 0;
}

@media (max-width: 767.98px)
{
    .sourcing-comparison .comparison-master-detail
    {
        grid-template-columns: minmax(0, 1fr);
    }

    .sourcing-comparison .comparison-requirements
    {
        border-right: 0;
        border-bottom: 1px solid var(--bs-border-color);
    }

    .sourcing-comparison .comparison-requirements__list
    {
        display: flex;
        max-height: 180px;
        overflow-x: auto;
        overflow-y: hidden;
    }

    .sourcing-comparison .comparison-requirement
    {
        min-width: 200px;
        max-width: 240px;
        border-right: 1px solid var(--bs-border-color);
        border-bottom: 0;
    }

    .sourcing-comparison .comparison-requirement--active
    {
        box-shadow: inset 0 -3px var(--bs-primary);
    }

    .sourcing-comparison .comparison-line-detail
    {
        padding: 14px;
    }

    .sourcing-comparison .comparison-line-detail__header
    {
        flex-direction: column;
    }
}

.sourcing-technical-page
{
    max-width: 1600px;
    margin: 0 auto;
    padding: 12px 4px 28px;
}

.sourcing-technical-crumbs
{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 14px;
    color: var(--bs-secondary-color);
    font-size: 0.8rem;
}

.sourcing-technical-crumbs span:last-child
{
    color: var(--bs-body-color);
    font-weight: 600;
}

.sourcing-technical-page__header
{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.sourcing-technical-page__header h1
{
    margin: 0 0 5px;
    font-size: 1.45rem;
    font-weight: 650;
}

.sourcing-technical-page__context
{
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    padding: 10px 0 13px;
    border-bottom: 1px solid var(--bs-border-color);
    margin-bottom: 16px;
    color: var(--bs-secondary-color);
    font-size: 0.82rem;
}

.sourcing-technical-page__context strong
{
    color: var(--bs-body-color);
    font-weight: 600;
}

.sourcing-technical-comparison
{
    border-top: 0 !important;
}

.sourcing-technical-summary
{
    display: grid;
    grid-template-columns: repeat(5, minmax(120px, 1fr));
    border-top: 1px solid var(--bs-border-color);
    border-bottom: 1px solid var(--bs-border-color);
    margin-bottom: 14px;
    background: var(--bs-body-bg);
}

.sourcing-technical-summary__metric
{
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
    padding: 11px 14px;
    border-right: 1px solid var(--bs-border-color);
}

.sourcing-technical-summary__metric:last-child
{
    border-right: 0;
}

.sourcing-technical-summary__metric > span
{
    color: var(--bs-secondary-color);
    font-size: 0.76rem;
}

.sourcing-technical-summary__metric strong
{
    font-size: 1.15rem;
    font-weight: 650;
}

.sourcing-technical-summary__metric small
{
    color: var(--bs-secondary-color);
    font-size: 0.72rem;
    font-weight: 400;
}

.sourcing-technical-state
{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid var(--bs-primary-border-subtle, #9ec5fe);
    border-left: 3px solid var(--bs-primary);
    margin-bottom: 14px;
    background: var(--bs-primary-bg-subtle, #cfe2ff);
    color: var(--bs-body-color);
    font-size: 0.82rem;
}

.sourcing-technical-matrix-shell
{
    max-height: calc(100vh - 340px);
    overflow: auto;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-body-bg);
}

.sourcing-technical-product
{
    margin: 0;
}

.sourcing-technical-product + .sourcing-technical-product
{
    border-top: 3px solid var(--bs-border-color);
}

.sourcing-technical-matrix__table
{
    width: 100%;
    min-width: 780px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
}

.sourcing-technical-matrix__product-column
{
    width: 250px;
}

.sourcing-technical-matrix__requirement-column
{
    width: 235px;
}

.sourcing-technical-matrix__offer-column
{
    width: 280px;
}

.sourcing-technical-matrix__table th,
.sourcing-technical-matrix__table td
{
    padding: 10px 12px;
    border-right: 1px solid var(--bs-border-color);
    border-bottom: 1px solid var(--bs-border-color);
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.sourcing-technical-matrix__table tr > :last-child
{
    border-right: 0;
}

.sourcing-technical-matrix__table thead th
{
    position: sticky;
    z-index: 5;
    top: 0;
    height: 42px;
    background: var(--bs-tertiary-bg);
    color: var(--bs-secondary-color);
    font-size: 0.76rem;
    font-weight: 650;
}

.sourcing-technical-matrix__product-cell
{
    position: sticky;
    z-index: 3;
    left: 0;
    width: 250px;
    background: var(--bs-body-bg);
}

.sourcing-technical-matrix__requirement-cell
{
    position: sticky;
    z-index: 3;
    left: 250px;
    width: 235px;
    background: var(--bs-body-bg);
}

.sourcing-technical-matrix__table thead .sourcing-technical-matrix__product-cell,
.sourcing-technical-matrix__table thead .sourcing-technical-matrix__requirement-cell
{
    z-index: 7;
    background: var(--bs-tertiary-bg);
}

.sourcing-technical-matrix__product-row > *
{
    background: var(--bs-secondary-bg);
    vertical-align: middle;
}

.sourcing-technical-matrix__product-cell > small,
.sourcing-technical-matrix__offer-head small
{
    display: block;
    margin-top: 4px;
    color: var(--bs-secondary-color);
    font-size: 0.72rem;
    font-weight: 400;
}

.sourcing-technical-product-toggle
{
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: 8px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bs-body-color);
    text-align: left;
    font-weight: 650;
}

.sourcing-technical-product-toggle .fa-chevron-down
{
    margin-top: 4px;
    color: var(--bs-secondary-color);
    transition: transform 0.16s ease;
}

.sourcing-technical-product-toggle[aria-expanded="false"] .fa-chevron-down
{
    transform: rotate(-90deg);
}

.sourcing-technical-matrix__offer-head
{
    background: var(--bs-tertiary-bg);
    font-weight: 600;
}

.sourcing-technical-matrix__offer-description
{
    white-space: normal;
}

.sourcing-technical-matrix__answer-cell
{
    line-height: 1.45;
}

.sourcing-technical-matrix__decision-row > *
{
    background: var(--bs-secondary-bg);
}

.sourcing-technical-decision
{
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.sourcing-technical-decision > small
{
    color: var(--bs-secondary-color);
    font-size: 0.74rem;
}

.sourcing-technical-decision__votes
{
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: var(--bs-secondary-color);
    font-size: 0.74rem;
}

.sourcing-technical-decision .rz-textbox,
.sourcing-technical-decision .rz-textarea
{
    width: 100%;
}

@media (max-width: 900px)
{
    .sourcing-technical-summary
    {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sourcing-technical-summary__metric:nth-child(2n)
    {
        border-right: 0;
    }

    .sourcing-technical-summary__metric:last-child
    {
        grid-column: 1 / -1;
        border-top: 1px solid var(--bs-border-color);
    }

    .sourcing-technical-matrix-shell
    {
        max-height: calc(100vh - 390px);
    }
}

@media (max-width: 575.98px)
{
    .sourcing-technical-summary__metric
    {
        padding: 9px 10px;
    }

    .sourcing-technical-state
    {
        align-items: flex-start;
        flex-direction: column;
    }

    .sourcing-technical-matrix-shell
    {
        max-height: calc(100vh - 430px);
    }
}

/* Sourcing comparison matrix table */
.sct-head
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.sct-title
{
    margin: 0;
    font-size: 1.05rem;
}

.sct-legend
{
    display: flex;
    align-items: center;
    gap: 6px;
    color: #56616e;
    font-size: 0.8rem;
}

.sct-pill
{
    background: #1e7e34;
    color: #fff;
    border-radius: 20px;
    padding: 2px 10px;
    font-size: 0.72rem;
    font-weight: 600;
}

.sct-scroll
{
    overflow: auto;
    max-height: 70vh;
    border: 1px solid #e3e6ea;
    border-radius: 8px;
    background: #fff;
}

.sct-table
{
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    font-size: 0.85rem;
}

.sct-table th,
.sct-table td
{
    border-right: 1px solid #e3e6ea;
    border-bottom: 1px solid #e3e6ea;
    padding: 8px 10px;
    vertical-align: top;
    background: #fff;
}

.sct-table thead th
{
    position: sticky;
    top: 0;
    z-index: 5;
    background: #f8f9fa;
    text-align: left;
    font-weight: 600;
    border-bottom: 1px solid #d5dae0;
}

.sct-c1
{
    position: sticky;
    left: 0;
    z-index: 4;
    min-width: 220px;
    max-width: 220px;
}

.sct-c2
{
    position: sticky;
    left: 220px;
    z-index: 4;
    min-width: 80px;
    max-width: 80px;
}

.sct-c3
{
    position: sticky;
    left: 300px;
    z-index: 4;
    min-width: 100px;
    max-width: 100px;
}

.sct-table thead .sct-c1,
.sct-table thead .sct-c2,
.sct-table thead .sct-c3
{
    z-index: 6;
}

.sct-vendor
{
    min-width: 300px;
}

.sct-vname
{
    font-weight: 700;
}

.sct-cur
{
    color: #8a94a0;
    font-size: 0.75rem;
    font-weight: 600;
}

.sct-vsub
{
    color: #8a94a0;
    font-size: 0.75rem;
    font-weight: 400;
}

.sct-num
{
    text-align: right;
}

.sct-item
{
    font-weight: 600;
}

.sct-item-sub
{
    color: #8a94a0;
    font-size: 0.75rem;
}

.sct-ok
{
    color: #2e9e57;
    font-size: 0.75rem;
    margin-top: 2px;
}

.sct-muted
{
    color: #8a94a0;
}

.sct-cell-rec
{
    background: #e7f6ec !important;
}

.sct-cell-sel
{
    background: #e8f1fe !important;
}

.sct-offer
{
    display: flex;
    gap: 8px;
}

.sct-omain
{
    flex: 1;
    min-width: 0;
}

.sct-price
{
    border: 0;
    background: transparent;
    padding: 0;
    font-size: 1rem;
    font-weight: 700;
    color: #1f2530;
    cursor: pointer;
    text-align: left;
}

.sct-price:hover
{
    color: #2f6fed;
}

.sct-per
{
    font-size: 0.72rem;
    font-weight: 600;
    color: #56616e;
}

.sct-delivery
{
    color: #6a737d;
    font-size: 0.75rem;
    margin-top: 2px;
}

.sct-badges
{
    display: flex;
    gap: 6px;
    margin-top: 6px;
    flex-wrap: wrap;
}

.sct-badge-rec
{
    background: #1e7e34;
    color: #fff;
    border-radius: 20px;
    padding: 2px 10px;
    font-size: 0.7rem;
    font-weight: 600;
}

.sct-badge-alt
{
    background: #fff3cd;
    color: #8a6d00;
    border: 1px solid #ffe08a;
    border-radius: 20px;
    padding: 2px 10px;
    font-size: 0.7rem;
    font-weight: 600;
}

.sct-badge-tech
{
    border: 1px solid #c8cdd4;
    color: #555;
    border-radius: 20px;
    padding: 2px 10px;
    font-size: 0.7rem;
}

.sct-badge-tech-ok
{
    border-color: #9fd8b4;
    color: #1e7e34;
}

.sct-badge-tech-no
{
    border-color: #f1aeb5;
    color: #b02a37;
}

.sct-alt-link
{
    display: inline-block;
    margin-top: 6px;
    font-size: 0.8rem;
    color: #2f6fed;
    background: none;
    border: 0;
    padding: 0;
    text-decoration: underline;
    cursor: pointer;
}

.sct-qty
{
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    font-size: 0.8rem;
}

.sct-amount
{
    margin-top: 4px;
    font-size: 0.8rem;
}

.sct-reason
{
    margin-top: 6px;
    font-size: 0.78rem;
    color: #8a6d00;
}

.sct-sel
{
    padding-top: 2px;
}

.sct-table tr.sct-sum td
{
    background: #f5f7fa;
}

.sct-sum-label
{
    font-weight: 600;
}

.sct-sum-val
{
    text-align: right;
}

.sct-sum-bold
{
    text-align: right;
    font-weight: 700;
}

.sct-sum-text
{
    font-weight: 400;
    color: #444c56;
}

/* -------------------------------------------------------------------------
   Satınalma icmalı (/page/purchasingdashboard)
   ------------------------------------------------------------------------- */
.pd-page .card
{
    border: 1px solid #eceef3;
    border-radius: .65rem;
    box-shadow: none;
}

.pd-page .card-body
{
    padding: 1.1rem 1.25rem;
}

.pd-card-header
{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: 1rem;
}

.pd-card-title
{
    font-size: 1rem;
    font-weight: 600;
    color: #2c3140;
    margin: 0;
}

.pd-card-subtitle
{
    font-size: .75rem;
    color: #8a90a0;
}

.pd-card-link
{
    font-size: .8rem;
    font-weight: 600;
    color: #6f5bd3;
    text-decoration: none;
    white-space: nowrap;
}

.pd-card-link:hover
{
    color: #5644b8;
}

.pd-kpi-card .card-body
{
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.pd-kpi-title
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .78rem;
    color: #7f8597;
    font-weight: 500;
}

.pd-kpi-dot
{
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    display: inline-block;
}

.pd-kpi-value
{
    font-size: 1.65rem;
    font-weight: 700;
    color: #22262f;
    line-height: 1.2;
}

.pd-kpi-subtitle
{
    font-size: .75rem;
    color: #9aa0ae;
}

.pd-bars
{
    display: flex;
    flex-direction: column;
    gap: .85rem;
}

.pd-bar-row
{
    display: grid;
    grid-template-columns: 11rem 1fr 2.6rem;
    align-items: center;
    gap: .75rem;
}

.pd-bar-label
{
    font-size: .82rem;
    color: #5a6070;
}

.pd-bar-track
{
    height: .5rem;
    background: #eef0f5;
    border-radius: .5rem;
    overflow: hidden;
}

.pd-bar-fill
{
    height: 100%;
    border-radius: .5rem;
    background: linear-gradient(90deg, #7f6bdd, #6f5bd3);
    transition: width .3s ease;
}

.pd-bar-success
{
    background: linear-gradient(90deg, #7ecb9a, #5fb883);
}

.pd-bar-info
{
    background: linear-gradient(90deg, #8cbcd6, #6aa5c6);
}

.pd-bar-warning
{
    background: linear-gradient(90deg, #efb85c, #e8a33d);
}

.pd-bar-value
{
    font-size: .82rem;
    font-weight: 600;
    color: #3a3f4b;
    text-align: right;
}

.pd-donut-wrap
{
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.pd-donut
{
    width: 10rem;
    height: 10rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.pd-donut-hole
{
    width: 6.5rem;
    height: 6.5rem;
    background: #fff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.pd-donut-total
{
    font-size: 1.3rem;
    font-weight: 700;
    color: #22262f;
}

.pd-donut-caption
{
    font-size: .68rem;
    color: #9aa0ae;
}

.pd-legend
{
    display: flex;
    flex-direction: column;
    gap: .55rem;
    flex: 1 1 8rem;
}

.pd-legend-row
{
    display: grid;
    grid-template-columns: .6rem 1fr auto;
    align-items: center;
    gap: .6rem;
    font-size: .82rem;
    color: #5a6070;
}

.pd-legend-dot
{
    width: .55rem;
    height: .55rem;
    border-radius: .15rem;
    display: inline-block;
}

.pd-legend-name
{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pd-legend-value
{
    font-weight: 600;
    color: #2c3140;
}

.pd-table
{
    font-size: .82rem;
}

.pd-table thead th
{
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #9aa0ae;
    font-weight: 600;
    border-bottom: 1px solid #eceef3;
    padding: .55rem .5rem;
}

.pd-table tbody td
{
    padding: .7rem .5rem;
    vertical-align: middle;
    border-bottom: 1px solid #f3f4f8;
    color: #4b5162;
}

.pd-table-row
{
    cursor: pointer;
}

.pd-table-row:hover td
{
    background: #fafbfd;
}

.pd-doc-number
{
    font-weight: 600;
    color: #22262f;
}

.pd-doc-date
{
    font-size: .72rem;
    color: #9aa0ae;
}

.pd-strong
{
    font-weight: 600;
    color: #22262f;
}

.pd-muted
{
    font-size: .74rem;
    color: #9aa0ae;
}

.pd-list
{
    display: flex;
    flex-direction: column;
    gap: .7rem;
}

.pd-list-row
{
    display: flex;
    align-items: center;
    gap: .8rem;
    padding-bottom: .7rem;
    border-bottom: 1px solid #f3f4f8;
}

.pd-list-row:last-child
{
    border-bottom: 0;
    padding-bottom: 0;
}

.pd-list-content
{
    flex: 1;
    min-width: 0;
}

.pd-date-badge
{
    flex: 0 0 auto;
    width: 2.9rem;
    padding: .35rem 0;
    border-radius: .5rem;
    background: #f4f5f9;
    text-align: center;
    line-height: 1.05;
}

.pd-date-day
{
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: #2c3140;
}

.pd-date-month
{
    display: block;
    font-size: .6rem;
    letter-spacing: .04em;
    color: #9aa0ae;
}

.pd-task-row
{
    display: flex;
    align-items: center;
    gap: .8rem;
    padding-bottom: .7rem;
    border-bottom: 1px solid #f3f4f8;
    text-decoration: none;
}

.pd-task-row:last-child
{
    border-bottom: 0;
    padding-bottom: 0;
}

.pd-task-row:hover .pd-strong
{
    color: #6f5bd3;
}

.pd-task-avatar
{
    flex: 0 0 auto;
    width: 2.3rem;
    height: 2.3rem;
    border-radius: .55rem;
    background: #efeafc;
    color: #6f5bd3;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pd-value-tile
{
    height: 100%;
    padding: .75rem .85rem;
    border: 1px solid #eceef3;
    border-radius: .55rem;
    background: #fafbfd;
}

.pd-value-label
{
    font-size: .7rem;
    color: #9aa0ae;
}

.pd-value-number
{
    font-size: 1.1rem;
    font-weight: 700;
    color: #22262f;
    margin-top: .2rem;
}

.pd-amount
{
    font-weight: 600;
    color: #22262f;
    white-space: nowrap;
}