﻿:root {
    --primary-color: #19CAAF;
    --primary-color-dark: #15b099;
    --brand-color: #19CAAF;
}

.custom-navX .nav-link {
    padding: 6px 12px;
    border-radius: 6px;
    transition: 0.25s ease;
    display: flex;
    align-items: center;
    gap: 6px;
}

    .custom-navX .nav-link:hover {
        /*background: rgba(0, 0, 0, 0.06);*/
        color: #19CAAF !important;
    }

    .custom-navX .nav-link i {
        font-size: 18px;
        transition: 0.25s ease;
    }

    .custom-navX .nav-link:hover i {
        transform: translateY(-2px);
    }


/* PRIMARY COLOR OVERRIDE FOR BOOTSTRAP 5.2.3 */



table.table.dataTable > tbody > tr.selected > *, 
table.table.dataTable.table-hover > tbody > tr.selected:hover > * {
    box-shadow: none;
    background-color: #7fe4d3 !important;
    color: #000000ff !important;
}

.dt-search label {
    display: none;
}

td {
    cursor: default;
}



/* ჯგუფის ბმული: ტექსტის ფერი (თემის ლურჯი ბმული არა), მიტანისას და არჩეულზე — ბრენდის ფერი; ხაზი თემის ფერით (ბნელშიც) */
.groupEl {
    border-bottom: 1px solid var(--vz-border-color, #e0e0e0);
    padding-bottom: 6px;
    margin-bottom: 6px;
}

/* კატეგორიების მენიუს ჯგუფები (groupEl შეკვეთების სიაშიც გამოიყენება — იქ ფერს არ ვეხებით) */
.accordion-body .groupEl {
    color: var(--vz-body-color);
}

    .accordion-body .groupEl:hover,
    .accordion-body .groupEl.text-primary {
        color: var(--brand-color) !important;
    }

ml

.groupEl:hover {
    border-bottom: 1px solid var(--brand-color);
}

.card-header {
    background-color: var(--brand-color);
    padding: 10px;
}

    .card-header h5 {
        color: #fff;
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 0px;
        font-family: 'MT';
    }


#divCategories {
    --vz-accordion-btn-padding-x: 1.25rem;
    --vz-accordion-btn-padding-y: 0.60rem;
}

#divCategories .btn {
    --vz-btn-padding-y: 0.1rem;
}

#divCategories a:hover,
#divCategories button:hover {
    color: var(--brand-color);
}

.accordion-body {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

    .accordion-body .btn {
        width: 100%;
        text-align: left;
    }

.dropdown-menu {
    bottom: 100%;
    top: auto;
    margin-bottom: .5rem;
    z-index: 9999 !important;
    border-radius: 4px;
    box-shadow: 0 0 5px rgba(25, 202, 175, 0.75) !important;
}

.sep + .sep {
    border-top: 1px solid #ddd;
    padding-top: 8px;
    margin-top: 8px;
}

.font-bpg {
    font-family: 'MT';
}

.text-hover *:not(span) {
    color: var(--text-color);
}

[data-bs-theme="dark"]
.text-hover *:not(span) {
    color: var(--text-color);
}

.text-hover:hover *:not(span) {
    color: var(--brand-color);
}

.text-hover span {
    color: var(--text-color);
}

.circle {
    display: inline-block;
    width: 17px;
    height: 16px;
    border-radius: 50%;
    margin-right: 4px;
    vertical-align: middle;
}


/* Buttons */
.btn-primary {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

    .btn-primary:hover,
    .btn-primary:focus {
        background-color: var(--primary-color-dark) !important;
        border-color: var(--primary-color-dark) !important;
    }

/* Text */
.text-primary {
    color: var(--primary-color) !important;
}

/* Background */
.bg-primary {
    background-color: var(--primary-color) !important;
}

/* Border */
.border-primary {
    border-color: var(--primary-color) !important;
}

/* Alerts */
.alert-primary {
    color: #fff !important;
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color-dark) !important;
}

/* Badges */
.badge.bg-primary {
    background-color: var(--primary-color) !important;
}

table td {
    vertical-align: middle !important;
}


/* Card Template for products */

.hover-zoom-shadow {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .hover-zoom-shadow:hover {
        /*transform: scale(1.05); AOS თან ერთად არ მუშაობს */
        box-shadow: 3px 3px 10px rgba(25, 202, 175, 0.80);
    }








/* WAITING */

/* ===========================
   VARIANT 1 — PULSE BAR
   =========================== */
.infinati-pulse {
    width: 70px;
    height: 4px;
    background: linear-gradient(90deg, #19CAAF, #7fe4d3, #19CAAF);
    background-size: 200% 100%;
    animation: pulse-move 1.6s infinite ease-in-out;
    border-radius: 4px;
    margin: 0 auto 14px auto;
}

@keyframes pulse-move {
    0% {
        background-position: 200% 0;
        opacity: 0.6;
    }

    50% {
        background-position: 0 0;
        opacity: 1;
    }

    100% {
        background-position: 200% 0;
        opacity: 0.6;
    }
}

/* ===========================
   VARIANT 4 — DOT WAVE
   =========================== */
.infinati-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 14px;
}

    .infinati-dots div {
        width: 10px;
        height: 10px;
        background: #19CAAF;
        border-radius: 50%;
        animation: dot-wave 1.2s infinite ease-in-out;
    }

        .infinati-dots div:nth-child(2) {
            animation-delay: 0.15s;
        }

        .infinati-dots div:nth-child(3) {
            animation-delay: 0.3s;
        }

        .infinati-dots div:nth-child(4) {
            animation-delay: 0.45s;
        }

@keyframes dot-wave {
    0% {
        transform: translateY(0);
        opacity: 0.6;
    }

    50% {
        transform: translateY(-6px);
        opacity: 1;
    }

    100% {
        transform: translateY(0);
        opacity: 0.6;
    }
}

/* ===========================
   VARIANT 5 — DUAL RING
   =========================== */
.infinati-dualring {
    width: 46px;
    height: 46px;
    position: relative;
    margin: 0 auto 14px auto;
}

    .infinati-dualring::before,
    .infinati-dualring::after {
        content: "";
        position: absolute;
        inset: 0;
        border: 4px solid transparent;
        border-radius: 50%;
        animation: dualring 1.2s linear infinite;
    }

    .infinati-dualring::before {
        border-top-color: #19CAAF;
    }

    .infinati-dualring::after {
        border-bottom-color: #7fe4d3;
        animation-delay: -0.6s;
    }

@keyframes dualring {
    to {
        transform: rotate(360deg);
    }
}

/* ===========================
   VARIANT 6 — LINE SWEEP
   =========================== */
.infinati-sweep {
    width: 80px;
    height: 6px;
    background: rgba(25, 202, 175, 0.25);
    border-radius: 4px;
    overflow: hidden;
    margin: 0 auto 14px auto;
    position: relative;
}

    .infinati-sweep::after {
        content: "";
        position: absolute;
        width: 40%;
        height: 100%;
        background: #19CAAF;
        animation: sweep-move 1.4s infinite ease-in-out;
        border-radius: 4px;
    }

@keyframes sweep-move {
    0% {
        left: -40%;
    }

    50% {
        left: 60%;
    }

    100% {
        left: -40%;
    }
}

/* ===========================
   VARIANT 7 — PULSE DOTS
   =========================== */
.infinati-pulse-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 14px;
}

    .infinati-pulse-dots div {
        width: 12px;
        height: 12px;
        background: #19CAAF;
        border-radius: 50%;
        animation: pulse-dot 1.3s infinite ease-in-out;
    }

        .infinati-pulse-dots div:nth-child(2) {
            animation-delay: 0.2s;
        }

        .infinati-pulse-dots div:nth-child(3) {
            animation-delay: 0.4s;
        }

@keyframes pulse-dot {
    0% {
        transform: scale(0.6);
        opacity: 0.6;
    }

    50% {
        transform: scale(1);
        opacity: 1;
    }

    100% {
        transform: scale(0.6);
        opacity: 0.6;
    }
}

/* ===========================
   VARIANT 8 — SEGMENT SPINNER
   =========================== */
.infinati-segment {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 4px solid rgba(25, 202, 175, 0.25);
    border-right-color: #19CAAF;
    animation: segment-spin 0.8s linear infinite;
    margin: 0 auto 14px auto;
}

@keyframes segment-spin {
    to {
        transform: rotate(360deg);
    }
}

/* პროდუქტის ბარათის გამოჩენა: 0.3 წამი, გადახვევას არ ელოდება.
   fill-mode backwards — ანიმაციის შემდეგ hover-ის transform არ იბლოკება */
@keyframes card-in {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.card-in {
    animation: card-in .3s ease-out backwards;
}

@media (prefers-reduced-motion: reduce) {
    .card-in {
        animation: none;
    }
}

/* პროდუქტის ბარათი: ერთ ხაზზე ფასი და „კალათაში“ (ან − რაოდენობა +) */
.product-card .product-name {
    min-height: 2.8em;
    font-size: 15px;
    line-height: 1.4;
    color: var(--vz-body-color);
}

.product-card .product-meta {
    min-height: 28px;
}

.product-card .product-price {
    font-size: 1rem;
    font-weight: 600;
    color: var(--brand-color);
    white-space: nowrap;
    line-height: 1.2;
    flex-shrink: 0;
}

.product-card .cart-ctl {
    flex-shrink: 0;
    margin-left: auto;
}

/* ფასი და − რაოდენობა + კალათა ყოველთვის ერთ ხაზზე: ვიწრო ბარათზე რაოდენობის ველი ვიწროვდება */
.product-card .cart-ctl,
.product-card .cart-ctl > div {
    min-width: 0;
    flex-shrink: 1;
}

/* ბარათზე კომპაქტური: დაბალი, ვიწრო ღილაკები, მინიმალური შიდა სივრცე — 3 ციფრი მაინც ეტევა */
.product-card .cart-ctl .cart-stepper {
    flex-shrink: 1;
    width: 84px;
    min-width: 68px;
    height: 32px;
    padding: 1px;
}

.product-card .cart-ctl .cart-stepper button {
    width: 18px;
    font-size: 1em;
}

.product-card .cart-ctl .cart-stepper input {
    min-width: 28px;
    font-size: 13px;
}

.product-card .cart-ctl .btn-cart-icon {
    width: 32px;
    height: 32px;
    font-size: 16px;
}

.product-card .cart-ctl > div {
    gap: 3px !important;
}

/* „კალათაში“: თეთრი ფონი, მწვანე ჩარჩო და ტექსტი; შევსება მხოლოდ მაუსის მიტანისას */
:is(.product-card, .product-buy, .cart-item) .btn-add-cart {
    height: 36px;
    padding: 0 .75rem;
    font-size: 13px;
    font-weight: 500;
    background: transparent;
    border: 1px solid var(--brand-color);
    transition: background-color .15s, color .15s;
}

    :is(.product-card, .product-buy, .cart-item) .btn-add-cart:hover,
    :is(.product-card, .product-buy, .cart-item) .btn-add-cart:focus-visible {
        background: var(--brand-color);
    }

/* − რაოდენობა +: ღია მწვანე ფონი, ღილაკები ფონის ფერის */
:is(.product-card, .product-buy, .cart-item) .cart-stepper {
    height: 36px;
    width: 96px;
    padding: 2px;
    border-color: rgba(25, 202, 175, .5);
    background: rgba(25, 202, 175, .06);
}

    :is(.product-card, .product-buy, .cart-item) .cart-stepper button {
        width: 26px;
        background: transparent;
        font-size: 1.2em;
        transition: background-color .15s;
    }

        :is(.product-card, .product-buy, .cart-item) .cart-stepper button:hover {
            background: rgba(25, 202, 175, .15);
        }

    /* კალათაში უკვე არის — ჩარჩო სრული ფერით, ფონი უფრო მკვეთრი */
    :is(.product-card, .product-buy, .cart-item) .cart-stepper.in-cart {
        border-color: var(--brand-color);
        background: rgba(25, 202, 175, .16);
    }

    /* კალათის ღილაკი რაოდენობის გვერდით — კვადრატული, მხოლოდ ხატულა */
    :is(.product-card, .product-buy, .cart-item) .btn-cart-icon {
        width: 36px;
        padding: 0;
        flex-shrink: 0;
        font-size: 18px;
    }

    :is(.product-card, .product-buy, .cart-item) .cart-stepper input::placeholder {
        color: rgba(25, 202, 175, .6);
        text-align: center !important; /* visual.css placeholder-ს მარცხნივ სვამს */
    }

    :is(.product-card, .product-buy, .cart-item) .cart-stepper input {
        flex: 1;
        width: 100%;
        min-width: 0;
        padding: 0 !important; /* visual.css ყველა input-ს padding-ს აძალებს */
        border: 0 !important;
        text-align: center !important; /* რაოდენობა (და placeholder „0“) ველის ცენტრში */
        font-size: 14px;
        font-weight: 600;
        -moz-appearance: textfield;
    }

        :is(.product-card, .product-buy, .cart-item) .cart-stepper input::-webkit-outer-spin-button,
        :is(.product-card, .product-buy, .cart-item) .cart-stepper input::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }

    /* .text-hover:hover ყველა ტექსტს ღებავს — ფერებს აქ ვაფიქსირებთ */
    :is(.product-card, .product-buy, .cart-item) .btn-add-cart,
    :is(.product-card, .product-buy, .cart-item) .btn-add-cart *,
    :is(.product-card, .product-buy, .cart-item) .cart-stepper button,
    :is(.product-card, .product-buy, .cart-item) .cart-stepper input {
        color: var(--brand-color) !important;
    }

        :is(.product-card, .product-buy, .cart-item) .btn-add-cart:hover,
        :is(.product-card, .product-buy, .cart-item) .btn-add-cart:hover *,
        :is(.product-card, .product-buy, .cart-item) .btn-add-cart:focus-visible,
        :is(.product-card, .product-buy, .cart-item) .btn-add-cart:focus-visible * {
            color: #fff !important;
        }

/* მობილურზე თითისთვის ცოტა მაღალი */
@media (max-width: 767.98px) {
    :is(.product-card, .product-buy, .cart-item) .btn-add-cart,
    :is(.product-card, .product-buy, .cart-item) .cart-stepper {
        height: 40px;
    }

    :is(.product-card, .product-buy, .cart-item) .btn-cart-icon {
        width: 40px;
    }
}

/* ფასი და კონტროლი ერთ ხაზზე */
.product-card .card-footer {
    flex-wrap: nowrap;
}

/* ===== ტელეფონი და პლანშეტი (< 992px) ===== */

/* ქვედა პანელი: მთავარი / კატეგორიები / კალათა / ანგარიში */
.bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    display: flex;
    background: var(--vz-card-bg-custom, #fff);
    border-top: 1px solid var(--vz-border-color, #e9ebec);
    box-shadow: 0 -2px 10px rgba(0, 0, 0, .05);
    padding-bottom: env(safe-area-inset-bottom);
}

.bottom-nav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    height: 58px;
    border: 0;
    background: transparent;
    color: var(--vz-gray-600, #878a99);
    font-size: 11px;
    text-decoration: none;
}

    .bottom-nav-item i {
        font-size: 22px;
        line-height: 1;
    }

    .bottom-nav-item.active,
    .bottom-nav-item:hover {
        color: var(--brand-color);
    }

.bottom-nav-badge {
    position: absolute;
    top: -4px;
    right: -10px;
    font-size: 10px;
}

.account-sheet {
    height: auto !important;
    max-height: 80vh;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}

    .account-sheet .list-group-item {
        padding: .85rem 1.25rem;
        border-left: 0;
        border-right: 0;
    }

@media (max-width: 991.98px) {
    /* ეს ღილაკები ქვედა პანელზე გადავიდა */
    .hide-mobile {
        display: none !important;
    }

    /* ძიება header-ში მთელ სიგანეზე */
    #page-topbar .header-right {
        flex: 1;
        min-width: 0;
        justify-content: flex-end;
    }

        #page-topbar .header-right .app-search {
            flex: 1;
            max-width: 480px;
            margin-right: 0 !important;
        }

    #page-topbar .navbar-header {
        gap: .5rem;
    }

    /* კონტენტი ქვედა პანელის ქვეშ არ მოექცეს */
    body {
        padding-bottom: calc(58px + env(safe-area-inset-bottom));
    }

    #back-to-top {
        bottom: 80px !important;
    }

    .customizer-setting {
        bottom: 80px !important;
    }

    .side-menu {
        width: 320px !important;
        max-width: 85vw;
    }
}

/* ===== ფუტერი ===== */
.site-footer {
    margin-top: 2rem;
    padding: 2.5rem 0 0;
    background: var(--vz-card-bg-custom, #fff);
    border-top: 3px solid var(--brand-color);
    font-size: 14px;
}

    .site-footer .footer-title {
        color: var(--brand-color);
        font-weight: 600;
        font-size: 15px;
        margin-bottom: 1rem;
    }

    .site-footer .footer-list {
        list-style: none;
        padding: 0;
        margin: 0;
    }

        .site-footer .footer-list li {
            display: flex;
            align-items: flex-start;
            gap: .6rem;
            margin-bottom: .65rem;
            color: var(--vz-body-color);
        }

            .site-footer .footer-list li i {
                color: var(--brand-color);
                font-size: 17px;
                line-height: 1.3;
            }

        .site-footer .footer-list a {
            color: var(--vz-body-color);
            text-decoration: none;
        }

            .site-footer .footer-list a:hover {
                color: var(--brand-color);
            }

    .site-footer .footer-social {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 1px solid var(--brand-color);
        color: var(--brand-color);
        font-size: 18px;
        transition: background-color .15s, color .15s;
    }

        .site-footer .footer-social:hover {
            background: var(--brand-color);
            color: #fff;
        }

    .site-footer .footer-bottom {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: .5rem;
        margin-top: 1.5rem;
        padding: 1rem 0;
        border-top: 1px solid var(--vz-border-color, #e9ebec);
        color: var(--vz-gray-600, #878a99);
        font-size: 13px;
    }

/* „↑ ზემოთ“ და „Ol“ ღილაკები ბოლო ხაზს არ დაფარონ */
.site-footer .footer-bottom {
    padding-right: 70px;
}

/* ფუტერის სიაში ხატულა და ტექსტი ერთ ხაზზე: გლობალური a-ს padding აქ არ გვჭირდება */
.site-footer .footer-list li {
    line-height: 21px;
}

    .site-footer .footer-list li i {
        line-height: 21px !important;
    }

.site-footer .footer-list a {
    display: inline;
    padding: 0 !important;
}

/* ფართო ეკრანი: შაბლონი კონტენტს ეკრანის 90%-ზე ჭიმავს — 1520px-ზე მეტად აღარ იზრდება, ცენტრშია
   (header, გვერდი და ფუტერი ერთ სიგანეზე; ~1700px-მდე არაფერი იცვლება) */
@media (min-width: 1024.1px) {
    [data-layout=horizontal] .container-fluid,
    [data-layout=horizontal] .layout-width {
        max-width: min(90%, 1520px);
    }
}

/* ძიება header-ში: სიგანე ეკრანის მიხედვით, რომ ანგარიშის ღილაკი არ გადავიდეს კიდეს იქით */
@media (min-width: 992px) {
    #page-topbar .app-search {
        width: 300px;
    }

        #page-topbar .app-search .form-control {
            height: 40px;
            font-size: 14px;
        }
}

#search-dropdown-menu .search-all {
    border-top: 1px solid var(--vz-border-color, #e9ebec);
}

/* ===== პარტნიორები ფუტერის ზემოთ ===== */
.partners-strip {
    margin-top: 2rem;
}

    .partners-strip .partners-title {
        color: var(--brand-color);
        font-weight: 600;
        font-size: 15px;
        margin-bottom: 1rem;
        display: flex;
        align-items: center;
        gap: .4rem;
    }

    .partners-strip .partner-card {
        display: flex;
        align-items: center;
        gap: 1rem;
        height: 100%;
        padding: 1rem;
        background: var(--vz-card-bg-custom, #fff);
        border: 1px solid var(--vz-border-color, #e9ebec);
        border-radius: .5rem;
        text-decoration: none;
        transition: border-color .15s, box-shadow .15s;
    }

        .partners-strip .partner-card:hover {
            border-color: var(--brand-color);
            box-shadow: 0 4px 14px rgba(0, 0, 0, .06);
        }

        .partners-strip .partner-card img {
            width: 56px;
            height: 56px;
            object-fit: contain;
            border-radius: .375rem;
            flex-shrink: 0;
        }

        .partners-strip .partner-card strong {
            display: block;
            color: var(--brand-color);
            font-size: 15px;
        }

        .partners-strip .partner-card small {
            display: block;
            color: var(--vz-gray-600, #878a99);
            font-size: 13px;
            line-height: 1.35;
        }

    /* პარტნიორების ზოლის შემდეგ ფუტერს დიდი დაშორება აღარ სჭირდება */
    .partners-strip + .site-footer {
        margin-top: 1.5rem;
    }

/* header ფიქსირებულია (~70px) — კონტენტი მის ქვეშ არ უნდა მოექცეს.
   შაბლონი მხოლოდ 15px + 1.5rem-ს ტოვებს; ადრე ამას შემთხვევით სატესტო ღილაკები ავსებდა */
[data-layout="horizontal"] .page-content {
    padding-top: calc(70px + 1.25rem);
}

/* ტელეფონი (< 576px): კიდეებიდან დაშორება — გვერდი, სექცია და ბარათი ერთად ~40px იძლეოდა თითო მხარეს */
@media (max-width: 575.98px) {
    [data-layout="horizontal"] .page-content {
        padding-left: .5rem;
        padding-right: .5rem;
    }

    .section-body {
        padding: .5rem;
    }

    .anim-card-container {
        --bs-gutter-x: .5rem;
        row-gap: .5rem;
    }
}

/* header-ის ტელეფონი: ვიწრო ეკრანზე მხოლოდ მრგვალი ხატულა, სხვა ღილაკების ზომის */
#page-topbar .header-phone .btn {
    height: 36px;
    min-width: 36px;
    padding: 0 .5rem;
    border-radius: 18px;
}

    #page-topbar .header-phone .btn i {
        font-size: 18px;
    }

@media (min-width: 1200px) {
    #page-topbar .app-search {
        width: 360px;
    }
}

@media (min-width: 1400px) {
    #page-topbar .app-search {
        width: 420px;
    }
}

/* ვიწრო ბარათზე გრძელი შტრიხკოდი „…“-ით მოიჭრება და ფერის არჩევანს არ ეჯახება */
.product-card .product-meta {
    gap: .25rem;
    min-width: 0;
}

    .product-card .product-meta > span:last-child {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        min-width: 0;
    }

/* ბარათების რიგებს შორის იგივე დაშორება, რაც გვერდით (შაბლონი მხოლოდ ჰორიზონტალურს აძლევდა) */
@media (min-width: 576px) {
    .anim-card-container {
        row-gap: 1.5rem;
    }
}

/* დაშორებას row-gap იძლევა — ბარათის საკუთარი ქვედა margin ზედმეტია (ჯგუფის გვერდზე ორმაგდებოდა) */
.anim-card-container .product-card {
    margin-bottom: 0;
}

/* ===== პროდუქტის გვერდი: ფასი / რაოდენობა / ჯამი ===== */
.product-buy .buy-box {
    display: flex;
    align-items: center;
    gap: .75rem;
    height: 100%;
    padding: .75rem 1rem;
    border: 1px dashed var(--vz-border-color, #e9ebec);
    border-radius: .375rem;
}

    .product-buy .buy-box > i {
        font-size: 26px;
        color: var(--brand-color);
    }

    .product-buy .buy-box h5 {
        color: var(--brand-color);
        font-weight: 600;
        white-space: nowrap;
    }

.product-buy .cart-stepper,
.product-buy .btn-add-cart {
    width: 100%;
    height: 40px;
}

/* რაოდენობის გვერდით კალათის ღილაკი — კვადრატული, რაოდენობა ავსებს დანარჩენს */
.product-buy .btn-cart-icon {
    width: 40px;
}

.product-buy .cart-stepper {
    width: auto;
    min-width: 0;
}

#cardProduct #swiper1Img1 {
    max-height: 420px;
    object-fit: contain;
}

@media (max-width: 767.98px) {
    #cardProduct #swiper1Img1 {
        max-height: 260px;
    }

    .product-buy .buy-box {
        padding: .6rem .75rem;
    }

        .product-buy .buy-box > i {
            font-size: 22px;
        }
}

/* ===== კალათის გვერდი: კომპაქტური სტრიქონი ===== */
.cart-item .cart-item-img {
    width: 72px;
    height: 72px;
    padding: 4px;
    border-radius: .375rem;
    background: var(--vz-light, #f3f6f9);
}

    .cart-item .cart-item-img img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

.cart-item .cart-item-name {
    color: var(--vz-body-color);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
}

    .cart-item .cart-item-name:hover {
        color: var(--brand-color);
    }

.cart-item .cart-line-total {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--brand-color);
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .cart-item .cart-item-img {
        width: 56px;
        height: 56px;
    }
}

/* ფოტოს გადიდების ფანჯარა */
/* სათაური და ✕ ვერტიკალურად ცენტრში: თემა (app.min.css) ქვედა padding-ს 0-ზე სვამს — ზემოთ და ქვემოთ თანაბრად */
.image-modal .modal-header {
    padding: .75rem 1rem !important;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec) !important;
    align-items: center;
}

.image-modal .modal-title {
    color: var(--brand-color);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    margin: 0 1rem 0 0;
}

.image-modal .modal-header .btn-close {
    margin: 0;
}

.image-modal .modal-body {
    padding: 1rem;
    text-align: center;
}

    .image-modal .modal-body img {
        max-width: 100%;
        max-height: 75vh;
        object-fit: contain;
    }

/* ===== შეკვეთები / ამონაწერი ტელეფონზე: სია ცხრილის ნაცვლად ===== */
.order-card {
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
    margin-bottom: .5rem;
}

    .order-card.open {
        border-color: var(--brand-color);
    }

.order-card-head {
    padding: .75rem;
    cursor: pointer;
}

.order-card-amount {
    font-weight: 600;
    white-space: nowrap;
}

.order-card-body {
    padding: 0 .75rem .75rem;
}

.order-item {
    margin: .75rem 1rem;
}

.order-card-items .order-item {
    margin: .5rem 0;
}

.turnover-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .75rem;
    margin-bottom: .5rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

.turnover-row {
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    padding: .6rem .25rem;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
}

.order-card-items .order-item img {
    width: 44px;
    height: 44px;
    margin-right: .75rem !important;
}

.order-card-items .order-item h6 {
    font-size: 13px;
}

.order-card-items .order-item h5 {
    font-size: 14px;
}

/* ===== მართვის პანელი (/manager) ===== */
body.mgr {
    background: var(--vz-body-bg, #f3f3f9);
    min-height: 100vh;
}

.mgr-top {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .75rem max(16px, calc((100% - 1520px) / 2));
    background: var(--vz-card-bg-custom, #fff);
    border-bottom: 3px solid var(--brand-color);
    box-shadow: 0 1px 6px rgba(0, 0, 0, .05);
}

.mgr-top-title {
    color: var(--brand-color);
    font-size: 16px;
    padding-left: 1rem;
    border-left: 1px solid var(--vz-border-color, #e9ebec);
}

.mgr-main {
    width: min(90%, 1520px);
    margin: 1.5rem auto;
}

.mgr-stat,
.mgr-action {
    background: var(--vz-card-bg-custom, #fff);
    border-radius: .6rem;
    box-shadow: 0 1px 2px rgba(56, 65, 74, .15);
}

.mgr-stat {
    display: flex;
    align-items: center;
    gap: .9rem;
    padding: 1rem 1.25rem;
}

    .mgr-stat > i {
        flex-shrink: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        border-radius: 50%;
        font-size: 21px;
        color: var(--brand-color);
        background: rgba(25, 202, 175, .12);
    }

.mgr-stat-value {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
}

.mgr-stat-label {
    color: var(--vz-gray-600, #878a99);
    font-size: 13px;
}

.mgr-action {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    padding: 1.25rem;
}

.mgr-action-head {
    display: flex;
    gap: 1rem;
}

.mgr-action-icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: .6rem;
    font-size: 26px;
    color: #fff;
    background: var(--brand-color);
}

.mgr-action-foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px dashed var(--vz-border-color, #e9ebec);
}

.mgr-progress {
    height: 10px;
    border-radius: 5px;
}

    .mgr-progress .progress-bar {
        background: var(--brand-color);
        transition: width .3s;
    }

.mgr-result {
    padding: .6rem .9rem;
    border-radius: .4rem;
    font-size: 14px;
}

    .mgr-result.ok {
        color: #0a7d6b;
        background: rgba(25, 202, 175, .12);
    }

    .mgr-result.error {
        color: #c0392b;
        background: rgba(240, 101, 72, .12);
    }

    .mgr-result details summary {
        cursor: pointer;
    }

@media (max-width: 575.98px) {
    .mgr-top-title {
        display: none;
    }

    .mgr-main {
        width: auto;
        margin: 1rem 16px;
    }
}

.mgr-stat[role="button"] {
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color .15s, transform .15s;
}

    .mgr-stat[role="button"]:hover {
        transform: translateY(-2px);
    }

    .mgr-stat.active {
        border-color: var(--brand-color);
    }

.mgr-list {
    background: var(--vz-card-bg-custom, #fff);
    border-radius: .6rem;
    box-shadow: 0 1px 2px rgba(56, 65, 74, .15);
    overflow: hidden;
}

.mgr-list-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
}

    .mgr-list-head .search-box {
        width: min(100%, 280px);
    }

.mgr-list-body {
    max-height: 60vh;
    overflow-y: auto;
}

    .mgr-list-body thead th {
        position: sticky;
        top: 0;
        z-index: 1;
        color: var(--brand-color);
        background: var(--vz-card-bg-custom, #fff);
        white-space: nowrap;
    }

    .mgr-list-body th:first-child,
    .mgr-list-body td:first-child {
        padding-left: 1.25rem;
    }

    .mgr-list-body th:last-child,
    .mgr-list-body td:last-child {
        padding-right: 1.25rem;
    }

    .mgr-list-body a {
        color: var(--vz-body-color);
    }

        .mgr-list-body a:hover {
            color: var(--brand-color);
            text-decoration: underline;
        }

.mgr-list-foot:not(:empty) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .75rem 1.25rem;
    border-top: 1px solid var(--vz-border-color, #e9ebec);
}

    .mgr-list-body td.text-end {
        white-space: nowrap;
    }

@media (max-width: 575.98px) {
    .mgr-list-head h5 {
        flex: 1;
    }

    .mgr-list-head .btn {
        order: 2;
    }

    .mgr-list-head .search-box {
        order: 3;
        width: 100%;
    }
}

.mgr-list-crumb {
    margin-top: .25rem;
    font-size: 13px;
    font-weight: 400;
    color: var(--vz-gray-600, #878a99);
}

.mgr-row-link {
    cursor: pointer;
}

    .mgr-row-link td:first-child::before {
        content: "\203A";
        display: inline-block;
        width: 1rem;
        margin-left: -1rem;
        color: var(--brand-color);
        opacity: 0;
        transition: opacity .15s;
    }

    .mgr-row-link:hover td:first-child::before {
        opacity: 1;
    }

.mgr-row-link.open td {
    font-weight: 600;
    background: rgba(25, 202, 175, .08);
}

    .mgr-row-link.open td:first-child::before {
        content: "\2304";
        opacity: 1;
    }

.mgr-sub-row > td {
    padding: 0 0 .75rem 2rem !important;
    border-left: 3px solid var(--brand-color);
    background: rgba(25, 202, 175, .04);
}

    .mgr-sub-row > td > table thead th {
        position: static;
        background: transparent;
        font-size: 12px;
    }

/* შეკვეთების რეპორტი */
.mgr-report {
    background: var(--vz-card-bg-custom, #fff);
    border-radius: .6rem;
    box-shadow: 0 1px 2px rgba(56, 65, 74, .15);
}

.mgr-period {
    display: inline-flex;
    padding: 3px;
    border-radius: 2rem;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-period button {
        border: 0;
        background: transparent;
        padding: .3rem .8rem;
        border-radius: 2rem;
        font-size: 13px;
        color: var(--vz-body-color);
    }

        .mgr-period button.active {
            background: var(--brand-color);
            color: #fff;
        }

.mgr-kpi {
    height: 100%;
    padding: .8rem 1rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-kpi span {
        display: block;
        font-size: 12px;
        color: var(--vz-gray-600, #878a99);
    }

    .mgr-kpi strong {
        display: block;
        font-size: 20px;
        font-weight: 600;
        white-space: nowrap;
    }

.mgr-chart {
    display: flex;
    align-items: flex-end;
    gap: 3px;
    height: 150px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
}

.mgr-chart-col {
    position: relative;
    flex: 1;
    height: 100%;
    display: flex;
    align-items: flex-end;
}

.mgr-chart-bar {
    width: 100%;
    min-height: 2px;
    border-radius: 3px 3px 0 0;
    background: var(--brand-color);
    opacity: .85;
}

.mgr-chart-col:hover .mgr-chart-bar {
    opacity: 1;
}

.mgr-chart-col span {
    position: absolute;
    left: 0;
    bottom: -18px;
    font-size: 10px;
    color: var(--vz-gray-600, #878a99);
    white-space: nowrap;
}

.mgr-report-title {
    color: var(--brand-color);
    font-weight: 600;
    margin-bottom: .75rem;
}

.mgr-bar {
    margin-bottom: .6rem;
}

.mgr-bar-label {
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    font-size: 13px;
    margin-bottom: 3px;
}

    .mgr-bar-label strong {
        flex-shrink: 0;
        font-weight: 600;
    }

.mgr-bar-track {
    height: 6px;
    border-radius: 3px;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-bar-track div {
        height: 100%;
        border-radius: 3px;
        background: var(--brand-color);
    }

.mgr-report-toggle {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
}

.mgr-orders-body {
    max-height: 60vh;
    overflow-y: auto;
}

    .mgr-orders-body thead th {
        position: sticky;
        top: 0;
        z-index: 1;
        color: var(--brand-color);
        background: var(--vz-card-bg-custom, #fff);
        white-space: nowrap;
    }

#reportSummary {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: .1rem;
}

    #reportSummary strong {
        font-weight: 600;
        color: var(--vz-body-color);
    }

.mgr-order-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    padding: .6rem 1rem .4rem 0;
}

.mgr-bar-sub {
    margin-top: 2px;
    font-size: 12px;
    color: var(--vz-gray-600, #878a99);
}

/* მართვის პანელის ტაბები */
.mgr-tabs {
    display: flex;
    gap: .25rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}

    .mgr-tabs button {
        border: 0;
        background: transparent;
        padding: .6rem 1rem;
        margin-bottom: -1px;
        border-bottom: 3px solid transparent;
        color: var(--vz-gray-600, #878a99);
        font-weight: 500;
        white-space: nowrap;
    }

        .mgr-tabs button:hover {
            color: var(--vz-body-color);
        }

        .mgr-tabs button.active {
            color: var(--brand-color);
            border-bottom-color: var(--brand-color);
        }

.mgr-note {
    display: flex;
    gap: .4rem;
    margin: .75rem 0 0;
    padding: .6rem .75rem;
    border-radius: .4rem;
    font-size: 12px;
    line-height: 1.5;
    color: var(--vz-gray-600, #878a99);
    background: var(--vz-light, #f3f6f9);
}

    .mgr-note i {
        flex-shrink: 0;
        font-size: 15px;
        color: var(--brand-color);
    }

.mgr-report-toggle {
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
}

/* ===== დინამიკის ტაბი ===== */
.mgr-trend-card {
    height: 100%;
    padding: .9rem 1rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

.mgr-trend-value {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
}

.mgr-delta {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 1px 7px;
    border-radius: 1rem;
    font-size: 12px;
    font-weight: 600;
    color: var(--vz-gray-600, #878a99);
    background: rgba(135, 138, 153, .12);
    white-space: nowrap;
}

    .mgr-delta.up {
        color: #0a7d6b;
        background: rgba(25, 202, 175, .15);
    }

    .mgr-delta.down {
        color: #c0392b;
        background: rgba(240, 101, 72, .14);
    }

.mgr-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 12px;
    color: var(--vz-gray-600, #878a99);
}

.mgr-legend-mark {
    display: inline-block;
    width: 16px;
    height: 0;
    margin-right: 6px;
    vertical-align: middle;
    border-top: 2px solid var(--brand-color);
}

    .mgr-legend-mark.prev {
        border-top: 2px dashed #9aa0ac;
    }

.mgr-svg-chart {
    position: relative;
}

    .mgr-svg-chart svg {
        display: block;
        overflow: visible;
    }

    .mgr-svg-chart .grid {
        stroke: var(--vz-border-color, #e9ebec);
        stroke-width: 1;
    }

    .mgr-svg-chart .axis {
        fill: var(--vz-gray-600, #878a99);
        font-size: 11px;
    }

    .mgr-svg-chart .line {
        fill: none;
        stroke-width: 2;
        stroke-linejoin: round;
        stroke-linecap: round;
    }

        .mgr-svg-chart .line.cur {
            stroke: var(--brand-color);
        }

        .mgr-svg-chart .line.prev {
            stroke: #9aa0ac;
            stroke-dasharray: 5 4;
        }

    .mgr-svg-chart .cross {
        stroke: var(--vz-gray-500, #adb5bd);
        stroke-width: 1;
    }

    .mgr-svg-chart .dot {
        stroke: var(--vz-card-bg-custom, #fff);
        stroke-width: 2;
    }

        .mgr-svg-chart .dot.cur {
            fill: var(--brand-color);
        }

        .mgr-svg-chart .dot.prev {
            fill: #9aa0ac;
        }

    .mgr-svg-chart .bar path {
        fill: var(--brand-color);
        opacity: .85;
    }

    .mgr-svg-chart .bar.partial path {
        opacity: .4;
    }

    .mgr-svg-chart .bar:hover path {
        opacity: 1;
    }

.mgr-tip {
    position: absolute;
    z-index: 5;
    display: none;
    pointer-events: none;
    padding: .45rem .65rem;
    border-radius: .4rem;
    font-size: 12px;
    line-height: 1.5;
    white-space: nowrap;
    color: var(--vz-body-color);
    background: var(--vz-card-bg-custom, #fff);
    box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
}

/* ძველი შეკვეთების ატვირთვა */
.mgr-import {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--vz-border-color, #e9ebec);
    background: rgba(25, 202, 175, .04);
}

.mgr-import-steps {
    padding-left: 1.2rem;
    margin-bottom: .75rem;
    font-size: 14px;
}

    .mgr-import-steps li {
        margin-bottom: .75rem;
    }

    .mgr-import-steps input[type=file] {
        max-width: 420px;
    }

/* ანალიტიკის ბარათში დინამიკის ნაწილი — გამყოფი ხაზით */
.mgr-section-head {
    border-top: 1px solid var(--vz-border-color, #e9ebec);
}

.mgr-orders-search {
    width: min(100%, 280px);
}

/* სლაიდერის მართვა (მართვის პანელი) */
.mgr-slides {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}

.mgr-slide {
    padding: .6rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
}

.mgr-slide-img {
    position: relative;
    aspect-ratio: 1920 / 745;
    overflow: hidden;
    border-radius: .35rem;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-slide-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.mgr-slide-n {
    position: absolute;
    top: 6px;
    left: 6px;
    min-width: 22px;
    padding: 0 6px;
    border-radius: 11px;
    font-size: 12px;
    font-weight: 600;
    line-height: 22px;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, .55);
}

/* მთავარი გვერდის სლაიდერი: ერთი სიმაღლე ყველა ფოტოზე */
#divSlider .carousel-inner {
    aspect-ratio: 1920 / 745;
}

#divSlider .carousel-item {
    height: 100%;
}

/* პარტნიორების მართვა */
.mgr-partners {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1rem;
}

.mgr-partner {
    display: flex;
    gap: .75rem;
    padding: .75rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
}

.mgr-partner-logo {
    position: relative;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    margin: 0;
    border-radius: .5rem;
    cursor: pointer;
    overflow: hidden;
    font-size: 26px;
    color: var(--vz-gray-600, #878a99);
    background: var(--vz-light, #f3f6f9);
}

    .mgr-partner-logo img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

    .mgr-partner-logo span {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 22px;
        color: #fff;
        background: rgba(0, 0, 0, .45);
        opacity: 0;
        transition: opacity .15s;
    }

    .mgr-partner-logo:hover span {
        opacity: 1;
    }

.mgr-item-date {
    margin-top: .4rem;
    font-size: 11px;
    color: var(--vz-gray-600, #878a99);
}

/* „ჩვენ შესახებ“ გვერდი */
.about-lead p {
    font-size: 15px;
    line-height: 1.7;
    color: var(--vz-body-color);
}

.about-lead .about-motto {
    color: var(--brand-color);
}

.about-feature {
    height: 100%;
    padding: 1.25rem 1rem;
    text-align: center;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
}

    .about-feature i {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 52px;
        height: 52px;
        margin-bottom: .75rem;
        font-size: 26px;
        color: var(--brand-color);
        background: rgba(25, 202, 175, .1);
        border-radius: 50%;
    }

    .about-feature h6 {
        font-weight: 600;
        margin-bottom: .4rem;
    }

    .about-feature p {
        margin: 0;
        font-size: 13px;
        color: var(--vz-gray-600, #878a99);
    }

.about-contact {
    display: flex;
    align-items: center;
    gap: .75rem;
    height: 100%;
    padding: .75rem 1rem;
    color: var(--vz-body-color);
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
    transition: border-color .15s;
}

    .about-contact:hover {
        border-color: var(--brand-color);
        color: var(--vz-body-color);
    }

    .about-contact i {
        font-size: 22px;
        color: var(--brand-color);
    }

    .about-contact small {
        display: block;
        font-size: 11px;
        color: var(--vz-gray-600, #878a99);
    }

/* მთავარი გვერდი: შესული მომხმარებლის ბარათები სლაიდერის ზემოთ (ტელეფონზე 2×2) */
.my-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

    .my-stats.d-none {
        display: none;
    }

@media (max-width: 991.98px) {
    .my-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ტელეფონზე — თითო ბარათი ცალკე ხაზზე */
@media (max-width: 767.98px) {
    .my-stats {
        grid-template-columns: minmax(0, 1fr);
        gap: .5rem;
    }
}

.my-stat {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .85rem 1rem;
    color: var(--vz-body-color);
    background: var(--vz-card-bg-custom, #fff);
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
    transition: border-color .15s, box-shadow .15s;
}

    .my-stat:hover {
        color: var(--vz-body-color);
        border-color: var(--brand-color);
        box-shadow: 0 4px 14px rgba(0, 0, 0, .06);
    }

.my-stat {
    position: relative;
}

/* „?“ ბარათის კუთხეში — დაჭერით ახსნა (გადასვლის ნაცვლად) */
.my-stat-help {
    position: absolute;
    top: 6px;
    right: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    font-size: 14px;
    color: var(--vz-gray-600, #878a99);
    border-radius: 50%;
    cursor: pointer;
    transition: color .15s, background-color .15s;
}

    .my-stat-help:hover {
        color: var(--brand-color);
        background: rgba(25, 202, 175, .12);
    }

.my-stat-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    font-size: 22px;
    color: var(--brand-color);
    background: rgba(25, 202, 175, .1);
    border-radius: 50%;
}

.my-stat-body {
    min-width: 0;
    line-height: 1.25;
}

    .my-stat-body small {
        display: block;
        font-size: 12px;
        color: var(--vz-gray-600, #878a99);
    }

    .my-stat-body strong {
        display: block;
        font-size: 18px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

/* თანხის გვერდით — პოზიციების რაოდენობა, მომცრო */
.my-stat-pos {
    font-size: 12px;
    font-weight: 500;
    color: var(--vz-gray-600, #878a99);
}

.my-stat-sub {
    display: block;
    font-size: 11px;
    color: var(--vz-gray-600, #878a99);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* დავალიანება — წითლად; არ არის — მწვანედ */
.my-stat.debt .my-stat-icon {
    color: var(--vz-danger, #f06548);
    background: rgba(240, 101, 72, .1);
}

.my-stat.debt strong {
    color: var(--vz-danger, #f06548);
}

.my-stat.credit strong {
    color: var(--brand-color);
}

/* ჩემი შეკვეთები: კატალოგში აღარ არსებული საქონელი — ნაცრისფრად (ფოტო და დასახელება), ფასი ჩვეულებრივად */
.order-item-gone img {
    filter: grayscale(1);
    opacity: .5;
}

.order-item-gone h6 {
    color: var(--vz-gray-600, #878a99) !important;
}

/* მთელი სტრიქონი — ღია წითელი ფონი და წითელი ზოლი მარცხნივ */
.order-item.order-item-gone {
    background: rgba(240, 101, 72, .06);
    box-shadow: inset 3px 0 0 var(--vz-danger, #f06548);
    border-radius: .25rem;
}

/* შეკვეთის მომსახურების სტრიქონი (ტრანსპორტირება) — ხატულა ფოტოს ნაცვლად */
.order-item-service i {
    font-size: 26px;
    color: var(--brand-color);
}

/* ფასი შეკვეთის შემდეგ შეიცვალა: ▲ გაძვირდა (ნარინჯისფრად), ▼ გაიაფდა (მწვანედ) */
.price-now {
    display: inline-block;
    padding: 0 .4rem;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    border-radius: .25rem;
}

    .price-now.up {
        color: #d97706;
        background: rgba(247, 184, 75, .18);
    }

    .price-now.down {
        color: var(--brand-color);
        background: rgba(25, 202, 175, .12);
    }

.badge-gone {
    font-size: 11px;
    font-weight: 600;
    color: #fff !important;
    background: var(--vz-danger, #f06548);
    vertical-align: 1px;
}

/* კალათა: „კალათის გასუფთავება“ — თეთრ ფონზე წითელი (მწვანე სათაურზე წითელი ტექსტი არ იკითხება) */
.btn-clear-cart {
    padding: .2rem .6rem;
    font-size: 12px;
    font-weight: 500;
    color: var(--vz-danger, #f06548) !important;
    background: var(--vz-card-bg-custom, #fff);
    border: 1px solid transparent;
}

    .btn-clear-cart:hover,
    .btn-clear-cart:focus-visible {
        color: #fff !important;
        background: var(--vz-danger, #f06548);
    }

/* კალათა: მიწოდების თარიღი თავისით შეიცვალა — მინიშნება ველის ქვეშ და ჩარჩოს ნათება */
.delivery-hint {
    margin-top: .35rem;
    font-size: 12px;
    line-height: 1.35;
    color: var(--vz-warning, #f7b84b);
}

.delivery-flash {
    animation: delivery-flash 1.2s ease-out;
}

@keyframes delivery-flash {
    0%, 40% {
        border-color: var(--vz-warning, #f7b84b);
        box-shadow: 0 0 0 .2rem rgba(247, 184, 75, .35);
    }

    100% {
        box-shadow: none;
    }
}

/* მართვის პანელი: მომხმარებლების აქტივობა */
.act-kinds {
    font-size: 13px;
}

    .act-kinds label {
        cursor: pointer;
    }

.act-session {
    cursor: pointer;
}

    .act-session:hover td {
        background: rgba(25, 202, 175, .05);
    }

.act-caret {
    display: inline-block;
    margin-right: .25rem;
    color: var(--vz-gray-600, #878a99);
    transition: transform .15s;
}

.act-session.open .act-caret {
    transform: rotate(90deg);
}

.act-ops > td {
    padding: 0 0 .5rem 2rem !important;
    background: var(--vz-light, #f3f6f9);
}

.act-user {
    color: var(--vz-body-color);
    font-weight: 500;
}

    .act-user:hover {
        color: var(--brand-color);
    }

.act-failed td {
    background: rgba(240, 101, 72, .05);
}

/* უქმე დღეების მართვა */
.mgr-holiday-add {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: .75rem;
    padding: .75rem;
    margin-bottom: 1rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

.mgr-holidays {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1rem;
}

.mgr-holiday-month-name {
    font-weight: 600;
    color: var(--brand-color);
    margin-bottom: .4rem;
}

.mgr-holiday {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .45rem .6rem;
    margin-bottom: .4rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
}

    /* გამორთული ოფიციალური უქმე — სამუშაო დღეა */
    .mgr-holiday.off {
        opacity: .55;
    }

        .mgr-holiday.off .fw-semibold {
            text-decoration: line-through;
        }

.mgr-holiday-date {
    flex-shrink: 0;
    width: 64px;
    text-align: center;
    line-height: 1.1;
}

    .mgr-holiday-date strong {
        display: block;
        font-size: 18px;
    }

    .mgr-holiday-date span {
        font-size: 11px;
        color: var(--vz-gray-600, #878a99);
    }

        .mgr-holiday-date span.text-danger {
            color: var(--vz-danger, #f06548) !important;
        }

/* ჩამოსაშლელი სია ველის ქვეშ (კატეგორია / ჯგუფი / ბრენდი) */
.mgr-combo {
    position: relative;
    width: min(100%, 320px);
}

.mgr-combo-list {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 20;
    max-height: 260px;
    overflow-y: auto;
    padding: 4px 0;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .4rem;
    background: var(--vz-card-bg-custom, #fff);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
}

.mgr-combo-item {
    display: block;
    width: 100%;
    padding: .35rem .75rem;
    border: 0;
    background: transparent;
    text-align: left;
    font-size: 13px;
    color: var(--vz-body-color);
}

    .mgr-combo-item:hover {
        background: rgba(25, 202, 175, .1);
        color: var(--brand-color);
    }

.mgr-combo-empty {
    padding: .35rem .75rem;
    font-size: 13px;
    color: var(--vz-gray-600, #878a99);
}

    .mgr-combo-item.active,
    .mgr-combo-item.active:hover {
        background: var(--brand-color);
        color: #fff;
    }

/* „რომელი საქონელი“ — ღილაკი ჩამოსაშლელის სახით */
.mgr-select {
    width: auto;
    min-width: 170px;
}

    .mgr-select .form-select {
        white-space: nowrap;
    }

/* ბლოგის მართვა: სია */
.mgr-blogs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 1rem;
}

.mgr-blog {
    display: flex;
    gap: .75rem;
    padding: .75rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
}

    .mgr-blog.is-hidden .mgr-blog-img {
        opacity: .5;
    }

.mgr-blog-img {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 80px;
    border-radius: .5rem;
    overflow: hidden;
    font-size: 26px;
    color: var(--vz-gray-600, #878a99);
    background: var(--vz-light, #f3f6f9);
}

    .mgr-blog-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.mgr-blog-name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ბლოგის მართვა: რედაქტორი */
.mgr-blog-photo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 1px dashed var(--vz-border-color, #ced4da);
    border-radius: .5rem;
    overflow: hidden;
    cursor: pointer;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-blog-photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.mgr-blog-photo-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .25rem;
    color: var(--vz-gray-600, #878a99);
}

    .mgr-blog-photo-empty i {
        font-size: 32px;
    }

.mgr-editor {
    border: 1px solid var(--vz-input-border, #ced4da);
    border-radius: .375rem;
    overflow: hidden;
}

.mgr-editor-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px;
    padding: 4px;
    border-bottom: 1px solid var(--vz-input-border, #ced4da);
    background: var(--vz-light, #f3f6f9);
}

    .mgr-editor-bar button {
        display: inline-flex;
        align-items: center;
        min-width: 32px;
        height: 32px;
        padding: 0 6px;
        justify-content: center;
        border: 0;
        border-radius: .25rem;
        font-size: 16px;
        color: var(--vz-body-color, #212529);
        background: transparent;
    }

        .mgr-editor-bar button span {
            font-size: 12px;
        }

        .mgr-editor-bar button:hover:not(:disabled),
        .mgr-editor-bar button.active {
            color: #19CAAF;
            background: var(--vz-card-bg, #fff);
        }

        .mgr-editor-bar button:disabled {
            opacity: .35;
        }

.mgr-editor-sep {
    width: 1px;
    height: 20px;
    margin: 0 4px;
    background: var(--vz-border-color, #ced4da);
}

.mgr-editor-body,
.mgr-editor-html {
    display: block;
    width: 100%;
    min-height: 420px;
    max-height: 70vh;
    overflow-y: auto;
    padding: 14px 16px;
    border: 0;
    outline: none;
    color: var(--vz-body-color, #212529);
    background: var(--vz-input-bg, #fff);
}

.mgr-editor-body {
    font-size: 15px;
    line-height: 1.75;
}

    .mgr-editor-body h2, .mgr-editor-body h3, .mgr-editor-body h4 {
        margin: 1.2em 0 .5em;
    }

    .mgr-editor-body a {
        color: #19CAAF;
        text-decoration: underline;
    }

.mgr-editor-html {
    resize: vertical;
    font-family: Consolas, monospace;
    font-size: 13px;
    line-height: 1.6;
}

/* შეფასებები: მართვის პანელი */
.mgr-surveys {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.mgr-survey {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 1.25rem;
    padding: .75rem 1rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: .5rem;
    background: var(--vz-card-bg, #fff);
}

    .mgr-survey.is-hidden {
        opacity: .65;
    }

.mgr-survey-stat {
    text-align: center;
    min-width: 140px;
}

.mgr-survey-stars {
    color: #f7b84b;
    font-size: 16px;
    letter-spacing: 1px;
}

.mgr-survey-score {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 1rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

    .mgr-survey-score .mgr-survey-stars {
        font-size: 22px;
    }

.mgr-survey-avg {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.1;
}

.mgr-survey-dist {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .2rem 0;
}

    .mgr-survey-dist .mgr-bar-track {
        margin: 0;
    }

.mgr-survey-dist-k {
    width: 2.5rem;
    white-space: nowrap;
}

    .mgr-survey-dist-k i {
        color: #f7b84b;
    }

.mgr-survey-dist-c {
    width: 5rem;
    text-align: right;
    white-space: nowrap;
}

.mgr-survey-comment {
    min-width: 220px;
    white-space: pre-wrap;
    word-break: break-word;
}

/* შეფასება: საიტის ფანჯარა */
.survey-modal {
    border-radius: 1rem;
}

.survey-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin-bottom: .75rem;
    border-radius: 50%;
    font-size: 30px;
    color: #f7b84b;
    background: rgba(247, 184, 75, .15);
}

.survey-stars {
    display: flex;
    justify-content: center;
    gap: .25rem;
}

    .survey-stars button {
        padding: 0 .15rem;
        border: 0;
        background: none;
        font-size: 38px;
        line-height: 1;
        color: var(--vz-border-color, #ced4da);
        transition: transform .1s, color .1s;
    }

        .survey-stars button.on {
            color: #f7b84b;
        }

        .survey-stars button:hover {
            transform: scale(1.12);
        }

.survey-star-label {
    min-height: 1.5em;
    margin-top: .25rem;
    font-weight: 500;
    color: var(--vz-gray-600, #878a99);
}

/* შეფასებები: SMS ნომრები */
.mgr-sms-phones {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.mgr-sms-phone {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    padding: .15rem .25rem .15rem .6rem;
    border: 1px solid var(--vz-border-color, #e9ebec);
    border-radius: 2rem;
    font-weight: 500;
}

    .mgr-sms-phone > i {
        color: var(--vz-gray-600, #878a99);
    }

/* აქტივობა: ტოპ 10 კლიენტი */
.act-top {
    padding: .75rem 1rem;
    border-radius: .5rem;
    background: var(--vz-light, #f3f6f9);
}

.act-top-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 0 2rem;
}

.act-top-item {
    border-radius: .25rem;
}

    .act-top-item:hover .mgr-bar-label span {
        color: var(--vz-primary, #405189);
        text-decoration: underline;
    }

/* ანალიტიკა: თითო სია / ჩარტი ცალკე ბარათში */
.mgr-report-card {
    height: 100%;
    padding: .9rem 1rem;
    border: 1px solid #cfd5dc;
    box-shadow: 0 1px 3px rgba(56, 65, 74, .08);
    border-radius: .5rem;
}

    .mgr-report-card .mgr-bar:last-child {
        margin-bottom: 0;
    }

[data-layout-mode="dark"] .mgr-report-card {
    border-color: rgba(255, 255, 255, .2);
}

/* ცხრილის ღილაკები (კოპირება, ბეჭდვა, Excel): მაუსის მიტანისას ბრენდის ფერი */
.dt-buttons .btn-soft-dark {
    --vz-btn-hover-bg: var(--brand-color);
    --vz-btn-hover-border-color: var(--brand-color);
    --vz-btn-hover-color: #fff;
    --vz-btn-active-bg: var(--primary-color-dark);
    --vz-btn-active-border-color: var(--primary-color-dark);
    --vz-btn-active-color: #fff;
}

    .dt-buttons .btn-soft-dark:focus-visible {
        background-color: var(--brand-color);
        color: #fff;
    }
