
.offline-banner[data-v-10eeed5e] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    /* Above the app bar (≈5) and navigation drawer (≈6). */
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 4px 16px;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.offline-banner--offline[data-v-10eeed5e] {
    background-color: #d32f2f; /* red — no internet */
}
.offline-banner--server[data-v-10eeed5e] {
    background-color: #f57c00; /* amber — our server is down */
}
.offline-banner--online[data-v-10eeed5e] {
    background-color: #43a047; /* green — recovered */
}
.offline-banner__text[data-v-10eeed5e] {
    line-height: 1.2;
}

/* Slide in/out from the top. */
.slide-down-enter-active[data-v-10eeed5e],
.slide-down-leave-active[data-v-10eeed5e] {
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.slide-down-enter[data-v-10eeed5e],
.slide-down-leave-to[data-v-10eeed5e] {
    transform: translateY(-100%);
    opacity: 0;
}


/* 🔹 Active submenu item styling */
.active-menu[data-v-7e316372] {
    background: rgba(var(--v-primary-base), 0.1); /* Light primary background */
    border-left: 3px solid var(--v-primary-base); /* Primary color border */
    font-weight: bold;
    transition: all 0.3s ease-in-out;
    color: var(--v-primary-base) !important; /* Primary color text */
}

/* 🔹 Centered brand logo in the app bar (white, so it reads on the primary colour) */
.brand-logo[data-v-7e316372] {
    flex: 0 0 auto;
    filter: brightness(0) invert(1);
    opacity: 0.95;
}

/* 🔹 Salon Selector Styling */
.salon-selector[data-v-7e316372] {
    max-width: 250px;
}
.salon-selector[data-v-7e316372] .v-input__slot {
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
}
.salon-selector[data-v-7e316372] .v-select__selection {
    color: white;
    font-weight: 500;
}

/* 🔹 Improve Menu Headings */
.menu-heading[data-v-7e316372] {
    background: linear-gradient(
        to right,
        var(--v-primary-base),
        var(--v-secondary-base)
    );
    color: white;
    padding: 8px 16px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* 🔹 Style Main Menu Items */
.main-menu-item[data-v-7e316372] {
    font-weight: 600;
    padding: 10px 16px;
}

/* 🔹 Style Submenu Items */
.submenu-item[data-v-7e316372] {
    padding-left: 32px; /* Indent submenus */
    background: rgba(0, 0, 0, 0.05); /* Slight background for contrast */
    transition: background 0.3s;
}
.submenu-item[data-v-7e316372]:hover {
    background: rgba(0, 0, 0, 0.1); /* Darker on hover */
}

/* 🔹 Improve Menu Title Fonts */
.main-menu-title[data-v-7e316372] {
    font-size: 16px;
}
.submenu-title[data-v-7e316372] {
    font-size: 14px;
    font-weight: 400;
}

/* Global styles for Vuetify components */

.v-card__title {
    word-break: break-word;
}



/*# sourceMappingURL=/sourcemaps/../sourcemaps/main.e72428760b494f50026f23a939555193.js.map*/