/* Switch Wrapper */
.switch-wrapper {
    position: relative;
    width: 46px;
    height: 20px;
    margin: 10px;
    display: inline-block;
    background: rgb(228, 228, 228);
    border: 1.4px solid var(--order-card-bg);
    border-radius: 30px;
}

/* Hide the default checkbox */
.switch-wrapper input[type="checkbox"] {
    opacity: 0;
    width: 58px;
    height: 22px;
    z-index: 10;
    position: absolute;
    left: -4px;
    bottom: -8px;
}

/* Slider */
.switch-slider {
    position: absolute;
    top: -1px;
    left: 0;
    height: 22px;
    width: 22px;
    background-color: var(--white);
    border-radius: 50%;
    transition: 0.3s;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Move the slider when checked */
.switch-wrapper input:checked+.switch-slider {
    transform: translateX(24px);
    background-color: var(--attract-blue);
}

.switch-wrapper:has(input:checked) {
    background: var(--white);
}

.switch-wrapper input[type="checkbox"]:focus-visible+.switch-slider {
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.6), 0 0 0 6px rgba(161, 140, 209, 0.5);
}

.decorative {
    width: 84px;
    height: 54px;
    border-radius: 12px;
    opacity: 1;
    animation: smooth-open ease-in-out 1s;
}

.decorative.room-icon {
    background-image: url('../decorative_images/rooms-decorative.webp');
}

.decorative.location-icon {
    background-image: url('../icons/location.svg');
}

.decorative.table-icon {
    background-image: url('../decorative_images/tables-decorative.webp');
}

.decorative.table-icon.list_icon_style,
.decorative.room-icon.list_icon_style,
.decorative.sports-icon.list_icon_style {
    width: 100%;
    height: 100%;
    border-radius: 12px 12px 0 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

.graphic,
.food_type_NON_VEG,
.food_type_VEG {
    display: flex;
    position: relative;
    align-items: center;
}

.graphic::before,
.food_type_NON_VEG::before,
.food_type_VEG::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
}

.graphic.standard-size::before {
    width: 30px;
    height: 30px;
}

.graphic.medium-size::before {
    width: 23px;
    height: 23px;
}

.graphic.light-mode::before {
    background-image: url('../icons/light-mode.svg');
}

.graphic.location-icon::before {
    background-image: url('../icons/location.svg');
}

.graphic.cupcake-icon::before {
    background-image: url('../icons/cupcake.svg');
}

.graphic.dark-mode::before {
    background-image: url('../icons/dark-mode.svg');
}

.graphic.edit-icon::before {
    background-image: url('../icons/edit.svg');
}

.graphic.water-icon::before {
    background-image: url('../icons/water.svg');
}

.graphic.liquor-icon::before {
    background-image: url('../icons/liquor.svg');
}

.graphic.soda-icon::before {
    background-image: url('../icons/soda.svg');
}

.graphic.delete-icon::before {
    background-image: url('../icons/delete.svg');
}

.graphic.tobacco-icon::before {
    background-image: url('../icons/tobacco.svg');
}

.graphic.printer-icon::before {
    background-image: url('../icons/printer.svg');
}

.graphic.medal-icon::before {
    background-image: url('../icons/medal.svg');
}

.graphic.history-icon::before {
    background-image: url('../icons/history.svg');
}

.graphic.home-icon::before {
    background-image: url('../icons/home.svg');
}

.graphic.food-icon::before {
    background-image: url('../icons/food.svg');
}

.graphic.phone-icon::before {
    background-image: url('../icons/phone.svg');
}

.graphic.bed-icon::before,
.graphic.room-icon::before {
    background-image: url('../icons/bed.svg');
}

.graphic.table-icon::before {
    background-image: url('../icons/table.svg');
}

.graphic.sports-icon::before {
    background-image: url('../icons/sports.svg');
}

.graphic.filter-icon::before {
    background-image: url('../icons/filter.svg');
}

.graphic.chair-icon::before {
    background-image: url('../icons/chair.svg');
}

.graphic.pdf-icon::before {
    background-image: url('../icons/pdf.svg');
}

.graphic.excel-icon::before {
    background-image: url('../icons/excel.svg');
}

.graphic.print-icon::before {
    background-image: url('../icons/printer.svg');
}

.graphic.cold-icon::before {
    background-image: url('../icons/cold.svg');
}

.graphic.plus-icon::before {
    background-image: url('../icons/plus.svg');
}

.graphic.time-icon::before {
    background-image: url('../icons/time.svg');
}

.graphic.logout-icon::before {
    background-image: url('../icons/lock.svg');
}

.graphic.users-icon::before,
.graphic.afm-icon::before,
.graphic.companion-icon::before {
    background-image: url('../icons/users.svg');
}

.graphic.setting-icon::before {
    background-image: url('../icons/setting.svg');
}

.graphic.clipboard-icon::before {
    background-image: url('../icons/clipboard.svg');
}

.graphic.calendar-icon::before {
    background-image: url('../icons/calendar.svg');
}

.graphic.add-user-icon::before {
    background-image: url('../icons/add-user.svg');
}

.graphic.organization-icon::before {
    background-image: url('../icons/organization.svg');
}

.graphic.document-icon::before {
    background-image: url('../icons/document.svg');
}

.graphic.hi-user-icon::before {
    background-image: url('../icons/hi-user.svg');
}

.graphic.analytic-icon::before {
    background-image: url('../icons/analytic.svg');
}

.graphic.document-icon::before {
    background-image: url('../icons/document.svg');
}

.food_type_VEG::after {
    content: "Veg";
    padding-left: 3px;
    color: var(--go-green);
    font-size: var(--font-size-v-tiny);
}

.food_type_NON_VEG::before,
.food_type_VEG::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--danger-red);
}

.food_type_VEG::before {
    content: "";
    background-color: var(--go-green);
}

.food_type_NON_VEG::after {
    content: "Non veg";
    padding-left: 3px;
    color: var(--danger-red);
    font-size: var(--font-size-v-tiny);
}


.user_display {
    display: flex;
    align-items: center;
    gap: 10px;
}

.content-section-playground {
    overflow: hidden;
    width: 100%;
}

.object_table_paginated.filter_api {
    width: 100%;
}

.background_padding {
    background-color: #eeeeee96;
    padding: 2px 8px;
    border-radius: 12px;
    color: var(--lite-text-color);
    font-weight: 500;
}

.sweet_text,
.helptext,
.fatty_sweet_text {
    color: var(--lite-text-color);
    font-size: var(--font-size-vvs);
}

.helptext {
    font-size: var(--font-size-tiny);
    font-style: italic;
    opacity: .5;
}

.fatty_sweet_text {
    font-size: var(--font-size-s);
    font-weight: 600;
}

.wrapper_round_bg {
    width: auto;
    display: inline-block;
    padding: 4px;
    font-weight: 500;
    margin-left: 3px;
    border-radius: 8px;
    background: var(--gray-lite-bg);
}

p[data-available="false"] {
    color: var(--danger-red);
    background: var(--red-lite-bg);
}

.place_right {
    margin-left: auto;
}

.item_available_True::before {
    content: 'available';
    color: var(--go-green);
}

.item_available_False::before {
    content: 'unavailable';
    color: var(--danger-red);
}

.green-yellow {
    background-color: var(--green-yellow);
}

.green-blue {
    background-color: var(--green-blue);
}

.danger_btn {
    background-color: var(--danger-red);
    color: var(--white) !important;
    border-color: var(--danger-red) !important;
}

.flex_container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    max-width: 100%;
    align-items: flex-start;
}

.flex_end {
    align-items: flex-end;
}

.item_remove {
    top: 0;
    right: 0;
    padding-top: 0;
}

.item_remove::before {
    content: "Cancel";
    font-size: var(--font-size-tiny);
    color: var(--lite-shade-color);
    font-weight: 400;
}

/* WebKit Browsers (Chrome, Edge, Safari) */
.objects_items_container::-webkit-scrollbar {
    width: 1px;
    height: 2px;
}

.objects_items_container::-webkit-scrollbar-track {
    background: transparent;
}

.objects_items_container::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 0;
}

/* Firefox */
.objects_items_container {
    scrollbar-width: thin;
    scrollbar-color: rgba(109, 109, 109, 0.399) transparent;
}

/* Cards */

.coporate-card {
    max-width: 212px;
    width: auto;
}

.coporate-card .card-head {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 14px;
}

.coporate-card .card-body>div {
    display: flex;
    gap: 10px;
    align-items: center;
    border-bottom: var(--border-lite);
}

.coporate-card .card-head img,
.coporate-card .card-head>div.decorative {
    width: 100px;
    height: 64px;
    border-radius: 6px;
}

.coporate-card .card-body>div p {
    margin: 4px 0;
    font-size: var(--font-size-vvs);
}

.coporate-card .card-container {
    padding: 10px 14px 30px;
    border-radius: 12px;
    background-color: var(--white);
    box-shadow: var(--shadow-lg);
}

.coporate-card .card-body>div span {
    width: 106px;
    font-size: var(--font-size-tiny);
    color: var(--lite-text-color);
}

.content-section-wrapper.series,
.object_listing_overflow {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    padding: 0 0 20px 20px;
}

.objects_column {
    background: var(--opac-white-color);
    padding: 14px;
    min-width: 210px;
}

.objects_items_container {
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: auto;
    max-height: 77vh;
}

.object_listing_overflow {
    overflow: auto;
    flex-wrap: nowrap;
    padding-bottom: 20px;
    background-color: var(--green-blue-dark);
}

.table {
    display: table;
    width: 100%;
}

.table-head {
    display: table-header-group;
}

.table-body {
    display: table-row-group;
}

.table-row {
    display: table-row;
}

.table-cell {
    display: table-cell;
    padding: 7px 6px;
    vertical-align: middle;
}

.table-cell span {
    font-size: 13px;
}

.table-cell.note span,
.table-cell.created_at span {
    font-size: var(--font-size-v-tiny);
    color: var(--lite-text-color);
}

.table-cell.balance_amount span {
    font-weight: 500;
}

.table-cell.address span {
    white-space: normal;
}

.feedback-item {
    border-bottom: var(--border-lite);
    padding-bottom: 6px;
    margin-bottom: 12px;
}

.feedback-item:hover {
    background-color: var(--green-blue-dark);
    padding: 12px;
    cursor: pointer;
    transition: all .2s;
}

.feedback-item .username {
    border-radius: 6px;
    font-weight: 300;
    color: var(--lite-text-color);
}

.feedback-item .username::before {
    margin-right: 12px;
    position: absolute;
    left: -45px;
}

.feedback-item .message {
    margin-right: 6px;
}

.feedback-list-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.user_profile_img_features {
    flex-direction: column-reverse;
    flex-wrap: nowrap;
    gap: 18px;
}

.table-cell.role span {
    text-transform: capitalize;
    padding: 0 12px;
    font-size: var(--font-size-tiny);
    font-weight: 500;
    border-radius: 18px;
}

/* Role-specific colors - Modern light backgrounds with bright text */
.table-cell.role[data-value="president"] span,
.table-cell.role[data-value="president"] .role_pill {
    background-color: #fee2e2 !important;
    color: #dc2626 !important;
}

.table-cell.role[data-value="vice_president"] span,
.table-cell.role[data-value="vice_president"] .role_pill {
    background-color: #fed7aa !important;
    color: #ea580c !important;
}

.table-cell.role[data-value="secretary"] span,
.table-cell.role[data-value="secretary"] .role_pill {
    background-color: #fef3c7 !important;
    color: #d97706 !important;
}

.table-cell.role[data-value="director"] span,
.table-cell.role[data-value="director"] .role_pill {
    background-color: #ede9fe !important;
    color: #7c3aed !important;
}

.table-cell.role[data-value="member"] span,
.table-cell.role[data-value="member"] .role_pill {
    background-color: #d1fae5 !important;
    color: #059669 !important;
}

.table-cell.role[data-value="manager"] span,
.table-cell.role[data-value="manager"] .role_pill {
    background-color: #dbeafe !important;
    color: #2563eb !important;
}

.table-cell.role[data-value="staff"] span,
.table-cell.role[data-value="staff"] .role_pill {
    background-color: #e0e7ff !important;
    color: #4f46e5 !important;
}

.table-cell.role[data-value="waiter"] span,
.table-cell.role[data-value="waiter"] .role_pill {
    background-color: #cffafe !important;
    color: #0891b2 !important;
}

.overflow_container {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 20px;
    background-color: #fff;
}

.total-table-wrapper {
    margin-top: 34px;
}

.foreign_field_get_trigger {
    font-size: var(--font-size-tiny);
    text-decoration: underline;
}

.table-row>.transaction_type[data-value=IN]>span,
.table-row>.transaction_type[data-value=OUT]>span {
    padding: 3px 12px;
    border-radius: 6px;
    font-weight: 600;
}

.table-cell.name>span,
.table-cell.invoice_no>span,
.table-cell.product__name>span {
    padding: 2px 16px;
    font-size: var(--font-size-vs);
}


.table-row>.transaction_type[data-value=IN]>span {
    color: var(--go-green);
    background-color: rgb(236, 255, 240);
}

.table-row>.transaction_type[data-value=OUT]>span {
    color: var(--danger-red);
    background-color: rgb(255, 236, 236);
}

.total_price,
.unit_price,
.mrp,
.discount_value {
    font-size: var(--font-size-vvs);
    font-weight: 500;
}

.table-row:has(.transaction_type[data-value=OUT]):hover {
    background-color: rgb(255, 227, 227);
}

.table-row:has(.transaction_type[data-value=IN]):hover {
    background-color: rgb(227, 255, 235);
}


.pagination {
    gap: 20px;
    font-size: var(--font-size-vvs);
    margin-top: 12px;
}

.object_table_paginated.filter_api form button {
    padding: 6px 12px;
    width: auto;
    border-radius: 4px;
}

.search_and_filters {
    padding: 0;
    margin-bottom: 20px;
    gap: 40px;
    align-items: center;
}

.search_and_filters form input {
    padding: 3px 18px;
    border-radius: 28px;
}

.search_and_filters form button {
    border: 0;
}

.right_side_playground {
    align-items: baseline;
}

.right_side_playground form {
    display: flex;
    gap: 0 15px;
    align-items: normal;
    flex-wrap: wrap;
}

.corporate-section-wrapper.overlay_form {
    margin-bottom: 20px;
    max-width: 245px;
    background: #efefef;
    padding: 12px;
    border-radius: 12px;
}

.flex_space_btwn {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    width: 100%;
}

@media (min-width: 768px) {

    .decorative.table-icon.list_icon_style,
    .decorative.room-icon.list_icon_style {
        width: 190px;
        height: 98px;
        border-radius: 16px;
    }

    .flex_container {
        flex-wrap: nowrap;
    }
}

.ordered_items_view span.background_padding_tiny {
    color: var(--black);
    font-weight: 600;
}

.ordered_items_view>div {
    padding: 10px 75px 10px 10px;
    border-radius: 12px;
    flex-wrap: nowrap;
    border: var(--border-lite);
    position: relative;
}

.ordered_items_view .item_status {
    position: absolute;
    padding: 0 8px;
    left: 12px;
    background-color: var(--danger-red);
    color: var(--white);
    font-size: 7px;
    top: 35px;
}

.ordered_items_view .item_status[data-value=preparing] {
    background-color: #6363ff;
}


.ordered_items_view .item_status[data-value=ready] {
    background-color: var(--go-green);
}

/* Custom Location Modal */
.afc-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    justify-content: center;
    align-items: baseline;
    z-index: 1100;
}

.afc-modal-content {
    position: relative;
    top: 20%;
    background: #fff;
    padding: 24px;
    border-radius: 12px;
    width: 90%;
    max-width: 400px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    animation: afcFadeIn 0.3s ease;
}

@keyframes afcFadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

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

.afc-modal-actions {
    display: flex;
    justify-content: left;
    gap: 12px;
}

.afc-modal-btn {
    padding: 10px 20px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    transition: background 0.2s;
}

/* Hide horizontal scrollbar for carousel container */
.object_listing_overflow,
.content-section-wrapper.series {
    scrollbar-width: none !important;
    /* Firefox */
    -ms-overflow-style: none !important;
    /* IE/Edge */
}

.object_listing_overflow::-webkit-scrollbar,
.content-section-wrapper.series::-webkit-scrollbar {
    display: none !important;
    /* Chrome, Safari, Opera */
    width: 0 !important;
    height: 0 !important;
}

/* Carousel Scroll Controls */
.carousel-nav-controls {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 8px;
}

.carousel-nav-controls::before {
    content: "Scroll table horizontally";
    font-size: var(--font-size-tiny);
    color: var(--lite-shade-color);
}

.carousel-scroll-btn {
    width: 21px;
    background: transparent;
    color: var(--attract-blue);
    font-size: 34px;
    font-weight: 300;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.carousel-scroll-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    box-shadow: none;
    background: transparent;
    color: #94a3b8;
    border-color: #e2e8f0;
}