/**
 * Restaurant Admin / Branch panel overrides.
 * Loaded AFTER filament-lists.css (see RestaurantAdminPanelProvider STYLES_AFTER).
 * Keep this file scoped and small — do not restate staff-list chrome here.
 */

/* ----- Create button: purple (staff lists.css forces green) ----- */

.fi-panel-restaurant-admin .fi-header-actions-ctn .bx-header-create.fi-btn,
.fi-panel-restaurant-admin .bx-header-create.fi-btn,
.fi-panel-branch .fi-header-actions-ctn .bx-header-create.fi-btn,
.fi-panel-super-admin .fi-header-actions-ctn .bx-header-create.fi-btn,
.fi-panel-branch .bx-header-create.fi-btn ,
.fi-panel-super-admin .bx-header-create.fi-btn {
    --bg: #32104d !important;
    --hover-bg: #2a0d40 !important;
    --text: #ffffff !important;
    --hover-text: #ffffff !important;
    --dark-bg: #32104d !important;
    --dark-hover-bg: #2a0d40 !important;
    background-color: #32104d !important;
    border-color: #32104d !important;
    color: #ffffff !important;
    border-radius: 0.5rem !important;
}

.fi-panel-restaurant-admin .fi-header-actions-ctn .bx-header-create.fi-btn:hover,
.fi-panel-restaurant-admin .bx-header-create.fi-btn:hover,
.fi-panel-branch .fi-header-actions-ctn .bx-header-create.fi-btn:hover,
.fi-panel-super-admin .fi-header-actions-ctn .bx-header-create.fi-btn:hover,
.fi-panel-branch .bx-header-create.fi-btn:hover ,
.fi-panel-super-admin .bx-header-create.fi-btn:hover {
    --bg: #2a0d40 !important;
    background-color: #2a0d40 !important;
    border-color: #2a0d40 !important;
    color: #ffffff !important;
}

/* ----- Breadcrumbs: inline "/" (Filament wraps icon aliases in .fi-icon size box) ----- */

.fi-panel-restaurant-admin .fi-breadcrumbs,
.fi-panel-branch .fi-breadcrumbs ,
.fi-panel-super-admin .fi-breadcrumbs {
    margin-block-end: 0.35rem;
}

.fi-panel-restaurant-admin .fi-breadcrumbs-list,
.fi-panel-branch .fi-breadcrumbs-list ,
.fi-panel-super-admin .fi-breadcrumbs-list {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0;
}

.fi-panel-restaurant-admin .fi-breadcrumbs-item,
.fi-panel-branch .fi-breadcrumbs-item ,
.fi-panel-super-admin .fi-breadcrumbs-item {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    margin: 0;
    padding: 0;
    line-height: 1.25;
}

/* Icon wrapper is sized for SVG chevrons — reset so "/" sits on the text baseline */
.fi-panel-restaurant-admin .fi-breadcrumbs-item-separator.fi-icon,
.fi-panel-branch .fi-breadcrumbs-item-separator.fi-icon ,
.fi-panel-super-admin .fi-breadcrumbs-item-separator.fi-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: inherit !important;
    vertical-align: middle !important;
}

/* LTR UI: hide the RTL separator twin Filament always renders */
.fi-panel-restaurant-admin .fi-breadcrumbs-item-separator.fi-rtl,
.fi-panel-branch .fi-breadcrumbs-item-separator.fi-rtl ,
.fi-panel-super-admin .fi-breadcrumbs-item-separator.fi-rtl {
    display: none !important;
}

.fi-panel-restaurant-admin .bx-breadcrumb-sep,
.fi-panel-branch .bx-breadcrumb-sep ,
.fi-panel-super-admin .bx-breadcrumb-sep {
    display: inline-block;
    color: #777382;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.25;
    vertical-align: middle;
}

.fi-panel-restaurant-admin .fi-breadcrumbs-item-label,
.fi-panel-branch .fi-breadcrumbs-item-label ,
.fi-panel-super-admin .fi-breadcrumbs-item-label {
    color: #777382 !important;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.25;
}

/* ----- Branches table toolbar: All branches | Filters + Search ----- */

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-ctn,
.fi-panel-branch .bx-branches-table .fi-ta-header-ctn ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-ctn {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 1rem;
    width: 100%;
    box-sizing: border-box;
    padding: 0.875rem 1.25rem !important;
    border-bottom: 1px solid #e8e7ed;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-ctn > .fi-ta-header,
.fi-panel-branch .bx-branches-table .fi-ta-header-ctn > .fi-ta-header ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-ctn > .fi-ta-header {
    grid-column: 1 !important;
    justify-self: start !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-heading,
.fi-panel-branch .bx-branches-table .fi-ta-header-heading ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-heading {
    display: inline-flex;
    align-items: baseline;
    gap: 0.5rem;
    margin: 0;
    color: #191724;
    font-size: 0.9375rem;
    font-weight: 600;
}

.fi-panel-restaurant-admin .bx-branches-heading-count,
.fi-panel-branch .bx-branches-heading-count ,
.fi-panel-super-admin .bx-branches-heading-count {
    color: #777382;
    font-size: 0.875rem;
    font-weight: 500;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-ctn > .fi-ta-header-toolbar,
.fi-panel-branch .bx-branches-table .fi-ta-header-ctn > .fi-ta-header-toolbar ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-ctn > .fi-ta-header-toolbar {
    grid-column: 2 !important;
    justify-self: end !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 1rem !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field),
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 1rem !important;
    width: auto !important;
    margin: 0 !important;
    margin-inline-start: 0 !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-search-field,
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar .fi-ta-search-field ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-search-field {
    flex: 0 0 16rem !important;
    width: 16rem !important;
    max-width: 16rem !important;
    margin: 0 !important;
    margin-inline-start: 0 !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown,
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    margin: 0 1rem 0 0 !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown + *,
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown + * ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar .fi-ta-filters-dropdown + * {
    margin-inline-start: 0 !important;
}

/* Filters may sit inside the search wrapper — keep a clear gap either way */
.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-filters-dropdown,
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-filters-dropdown ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-filters-dropdown {
    margin-inline-end: 1rem !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-search-field,
.fi-panel-branch .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-search-field ,
.fi-panel-super-admin .bx-branches-table .fi-ta-header-toolbar > div:has(> .fi-ta-search-field) > .fi-ta-search-field {
    margin-inline-start: 0 !important;
}

/* ----- Name cell: avatar tile + title/code (SVG via CSS — sanitizeHtml strips inline SVG) ----- */

.fi-panel-restaurant-admin .bx-branch-name,
.fi-panel-branch .bx-branch-name ,
.fi-panel-super-admin .bx-branch-name {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.fi-panel-restaurant-admin .bx-branch-avatar,
.fi-panel-branch .bx-branch-avatar ,
.fi-panel-super-admin .bx-branch-avatar {
    flex: 0 0 auto;
    display: block;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.5rem;
    background-color: color-mix(in srgb, #32104d 8%, #ffffff);
    border: 1px solid color-mix(in srgb, #32104d 12%, #e8e7ed);
    /* Map-pin / location mark — clearer than house silhouette */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2332104d' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-4.35 7-10a7 7 0 1 0-14 0c0 5.65 7 10 7 10Z'/%3E%3Ccircle cx='12' cy='11' r='2.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.15rem 1.15rem;
}

.fi-panel-restaurant-admin .bx-branch-name__copy,
.fi-panel-branch .bx-branch-name__copy ,
.fi-panel-super-admin .bx-branch-name__copy {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.fi-panel-restaurant-admin .bx-branch-name__title,
.fi-panel-branch .bx-branch-name__title ,
.fi-panel-super-admin .bx-branch-name__title {
    color: #191724;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.35;
}

.fi-panel-restaurant-admin .bx-branch-name__code,
.fi-panel-branch .bx-branch-name__code ,
.fi-panel-super-admin .bx-branch-name__code {
    color: #777382;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.3;
}

/* ----- Actions (single cell: View + Edit) + Delete column ----- */

.fi-panel-restaurant-admin .bx-branches-table tbody .fi-ta-cell,
.fi-panel-branch .bx-branches-table tbody .fi-ta-cell ,
.fi-panel-super-admin .bx-branches-table tbody .fi-ta-cell {
    vertical-align: middle !important;
}

.fi-panel-restaurant-admin .bx-branch-actions-cell,
.fi-panel-branch .bx-branch-actions-cell ,
.fi-panel-super-admin .bx-branch-actions-cell {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.fi-panel-restaurant-admin .bx-branch-action-btn,
.fi-panel-branch .bx-branch-action-btn ,
.fi-panel-super-admin .bx-branch-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid #e8e7ed;
    border-radius: 0.5rem;
    background: #ffffff;
    color: #191724;
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.25;
    cursor: pointer;
}

.fi-panel-restaurant-admin .bx-branch-action-btn:hover,
.fi-panel-branch .bx-branch-action-btn:hover ,
.fi-panel-super-admin .bx-branch-action-btn:hover {
    border-color: color-mix(in srgb, #32104d 28%, #e8e7ed);
    color: #32104d;
}

.fi-panel-restaurant-admin .bx-branch-action-btn:disabled,
.fi-panel-branch .bx-branch-action-btn:disabled ,
.fi-panel-super-admin .bx-branch-action-btn:disabled {
    opacity: 0.6;
    cursor: wait;
}

.fi-panel-restaurant-admin .bx-branch-delete-link:hover,
.fi-panel-restaurant-admin .bx-branch-delete-link .fi-ta-text:hover,
.fi-panel-restaurant-admin .bx-branch-delete-link .fi-ta-text-item:hover,
.fi-panel-restaurant-admin .bx-branch-delete-cell .fi-ta-text:hover,
.fi-panel-branch .bx-branch-delete-link:hover,
.fi-panel-super-admin .bx-branch-delete-link:hover,
.fi-panel-branch .bx-branch-delete-link .fi-ta-text:hover,
.fi-panel-super-admin .bx-branch-delete-link .fi-ta-text:hover,
.fi-panel-branch .bx-branch-delete-link .fi-ta-text-item:hover,
.fi-panel-super-admin .bx-branch-delete-link .fi-ta-text-item:hover,
.fi-panel-branch .bx-branch-delete-cell .fi-ta-text:hover ,
.fi-panel-super-admin .bx-branch-delete-cell .fi-ta-text:hover {
    color: #991b1b !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.fi-panel-restaurant-admin .bx-branch-delete-link,
.fi-panel-restaurant-admin .bx-branch-delete-link .fi-ta-text,
.fi-panel-restaurant-admin .bx-branch-delete-link .fi-ta-text-item,
.fi-panel-restaurant-admin .bx-branch-delete-cell .fi-ta-text,
.fi-panel-branch .bx-branch-delete-link,
.fi-panel-super-admin .bx-branch-delete-link,
.fi-panel-branch .bx-branch-delete-link .fi-ta-text,
.fi-panel-super-admin .bx-branch-delete-link .fi-ta-text,
.fi-panel-branch .bx-branch-delete-link .fi-ta-text-item,
.fi-panel-super-admin .bx-branch-delete-link .fi-ta-text-item,
.fi-panel-branch .bx-branch-delete-cell .fi-ta-text ,
.fi-panel-super-admin .bx-branch-delete-cell .fi-ta-text {
    color: #b42318 !important;
    font-weight: 500;
    cursor: pointer;
}

/* Pagination: "Showing…" left, Per page far right (Figma) */
.fi-panel-restaurant-admin .bx-branches-table .fi-pagination,
.fi-panel-branch .bx-branches-table .fi-pagination ,
.fi-panel-super-admin .bx-branches-table .fi-pagination {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    gap: 0.75rem 1rem !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-pagination .fi-pagination-overview,
.fi-panel-branch .bx-branches-table .fi-pagination .fi-pagination-overview ,
.fi-panel-super-admin .bx-branches-table .fi-pagination .fi-pagination-overview {
    order: 1 !important;
    display: block !important;
    flex: 0 1 auto !important;
    margin: 0 !important;
    margin-inline-end: auto !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-pagination .fi-pagination-previous-btn,
.fi-panel-restaurant-admin .bx-branches-table .fi-pagination .fi-pagination-next-btn,
.fi-panel-restaurant-admin .bx-branches-table .fi-pagination .fi-pagination-items,
.fi-panel-branch .bx-branches-table .fi-pagination .fi-pagination-previous-btn,
.fi-panel-super-admin .bx-branches-table .fi-pagination .fi-pagination-previous-btn,
.fi-panel-branch .bx-branches-table .fi-pagination .fi-pagination-next-btn,
.fi-panel-super-admin .bx-branches-table .fi-pagination .fi-pagination-next-btn,
.fi-panel-branch .bx-branches-table .fi-pagination .fi-pagination-items ,
.fi-panel-super-admin .bx-branches-table .fi-pagination .fi-pagination-items {
    order: 2 !important;
    flex: 0 0 auto !important;
}

.fi-panel-restaurant-admin .bx-branches-table .fi-pagination .fi-pagination-records-per-page-select-ctn,
.fi-panel-branch .bx-branches-table .fi-pagination .fi-pagination-records-per-page-select-ctn ,
.fi-panel-super-admin .bx-branches-table .fi-pagination .fi-pagination-records-per-page-select-ctn {
    order: 3 !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    margin-inline-start: auto !important;
    margin-inline-end: 0 !important;
    justify-self: end !important;
}

/* ----- Branch switcher dropdown (shared) ----- */

.bx-dd,
.bx-dd * {
    box-sizing: border-box;
}

.bx-dd {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    min-width: 0;
}

.bx-dd__trigger {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    min-width: 7.5rem;
    max-width: 14rem;
    min-height: 2.25rem;
    padding: 0.375rem 0.625rem 0.375rem 0.75rem;
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.35;
    color: #191724;
    background-color: #ffffff;
    border: 1px solid #e8e7ed;
    border-radius: 0.375rem;
    cursor: pointer;
    outline: none;
    transition: border-color 120ms ease, box-shadow 120ms ease;
}

.bx-dd__trigger:hover {
    border-color: color-mix(in srgb, #32104d 28%, #e8e7ed);
}

.bx-dd__trigger:focus-visible {
    border-color: #32104d;
    box-shadow: 0 0 0 3px color-mix(in srgb, #32104d 18%, transparent);
}

.bx-dd__label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bx-dd__chevron {
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    color: #777382;
    transition: transform 120ms ease;
}

.bx-dd.is-open .bx-dd__chevron {
    transform: rotate(180deg);
}

.bx-dd__panel {
    position: absolute;
    z-index: 80;
    top: calc(100% + 0.35rem);
    bottom: auto;
    inset-inline-start: 0;
    min-width: 100%;
    max-width: 18rem;
    max-height: 12rem;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0.35rem;
    background: #ffffff;
    border: 1px solid #e8e7ed;
    border-radius: 0.5rem;
    box-shadow: 0 12px 28px rgba(25, 23, 36, 0.12);
}

.bx-dd.is-drop-up .bx-dd__panel {
    top: auto;
    bottom: calc(100% + 0.35rem);
}

.bx-dd__search {
    position: sticky;
    top: 0;
    z-index: 1;
    margin: -0.1rem -0.1rem 0.35rem;
    padding: 0.25rem;
    background: #ffffff;
}

.bx-dd__search-input {
    width: 100%;
    box-sizing: border-box;
    min-height: 2rem;
    padding: 0.35rem 0.55rem;
    border: 1px solid #e8e7ed;
    border-radius: 0.375rem;
    background: #f7f8fa;
    color: #191724;
    font: inherit;
    font-size: 0.8125rem;
    outline: none;
}

.bx-dd__search-input:focus {
    border-color: color-mix(in srgb, #32104d 35%, #e8e7ed);
    box-shadow: 0 0 0 3px color-mix(in srgb, #32104d 12%, transparent);
}

.bx-dd__empty {
    margin: 0;
    padding: 0.55rem 0.65rem;
    color: #777382;
    font-size: 0.75rem;
    font-weight: 500;
}

.bx-dd__option {
    display: block;
    width: 100%;
    padding: 0.5rem 0.65rem;
    border: 0;
    border-radius: 0.375rem;
    background: transparent;
    color: #191724;
    font: inherit;
    font-size: 0.8125rem;
    font-weight: 500;
    text-align: start;
    cursor: pointer;
}

.bx-dd__option:hover,
.bx-dd__option.is-active,
.bx-dd__option.is-selected {
    background: color-mix(in srgb, #32104d 8%, #ffffff);
    color: #32104d;
}

.bx-dd__option.is-selected {
    font-weight: 600;
}

/* Form / filter fields: full-width trigger */
.bx-select-field .bx-dd,
.bx-select-field .bx-dd__trigger {
    width: 100%;
    max-width: none;
}

.bx-select-field--disabled {
    opacity: 0.55;
    pointer-events: none;
}

/* Pagination per-page: one control (Filament compact twin removed for bx-dd) */
.fi-panel-restaurant-admin .bx-pagination-per-page,
.fi-panel-branch .bx-pagination-per-page ,
.fi-panel-super-admin .bx-pagination-per-page {
    display: inline-flex !important;
    align-items: center;
    gap: 0.5rem;
}

.bx-pagination-per-page__label {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #777382;
    white-space: nowrap;
}

.bx-pagination-per-page .bx-dd {
    flex: 0 0 auto;
}

.bx-pagination-per-page .bx-dd__trigger {
    min-width: 4.5rem;
    max-width: 6rem;
}

.bx-pagination-per-page .bx-dd__label {
    flex: 1 1 auto;
    min-width: 0;
}

/* Keep per-page panel above table chrome / overflow clip */
.fi-panel-restaurant-admin .bx-branches-table .fi-pagination,
.fi-panel-branch .bx-branches-table .fi-pagination,
.fi-panel-super-admin .bx-branches-table .fi-pagination,
.fi-panel-restaurant-admin .bx-branches-table .fi-ta-content,
.fi-panel-branch .bx-branches-table .fi-ta-content ,
.fi-panel-super-admin .bx-branches-table .fi-ta-content {
    overflow: visible;
}

nav.fi-topbar .branch-scope-slot,
.fi-topbar-start .branch-scope-slot {
    position: relative;
    top: auto;
    inset-inline-start: auto;
}

@media (max-width: 639px) {
    .branch-scope-slot {
        margin-inline-start: 0.5rem;
        padding-inline-start: 0.5rem;
        border-inline-start: none;
    }

    .branch-scope-slot .bx-dd__trigger {
        min-width: 8rem;
        max-width: min(calc(100vw - 5rem), 12rem);
    }
}

/* ==========================================================================
   Restaurant Admin modal chrome (Figma 17:26 — Edit / New / View overlays)
   Loaded after filament-lists.css so purple tokens beat staff green/cream.
   ========================================================================== */

.fi-panel-restaurant-admin .fi-modal-close-overlay,
.fi-panel-branch .fi-modal-close-overlay ,
.fi-panel-super-admin .fi-modal-close-overlay {
    background: rgba(25, 23, 36, 0.45) !important;
}

/*
 * Viewport centering. Filament uses grid-rows [1fr_auto_1fr]; unequal fr
 * rows were leaving confirm modals visually high. Flex centers reliably.
 */
.fi-panel-restaurant-admin .fi-modal-window-ctn,
.fi-panel-branch .fi-modal-window-ctn ,
.fi-panel-super-admin .fi-modal-window-ctn {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100% !important;
    padding: 1rem !important;
    box-sizing: border-box !important;
}

.fi-panel-restaurant-admin .fi-modal-window-ctn > .fi-modal-window,
.fi-panel-branch .fi-modal-window-ctn > .fi-modal-window ,
.fi-panel-super-admin .fi-modal-window-ctn > .fi-modal-window {
    grid-row: unset !important;
    margin-block: auto !important;
}

.fi-panel-restaurant-admin .fi-modal-window,
.fi-panel-branch .fi-modal-window,
.fi-panel-super-admin .fi-modal-window,
.fi-panel-restaurant-admin .bx-ra-modal.fi-modal-window,
.fi-panel-branch .bx-ra-modal.fi-modal-window ,
.fi-panel-super-admin .bx-ra-modal.fi-modal-window {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-height: min(90vh, 52rem) !important;
    height: auto !important;
    background: #ffffff !important;
    color: #191724 !important;
    border: 1px solid #e8e7ed !important;
    border-radius: 0.75rem !important;
    box-shadow: 0 24px 64px rgba(25, 23, 36, 0.18) !important;
    overflow: hidden !important; /* clip radius; scroll on .fi-modal-content */
}

.fi-panel-restaurant-admin .fi-modal-header,
.fi-panel-restaurant-admin .fi-modal-content,
.fi-panel-restaurant-admin .fi-modal-footer,
.fi-panel-branch .fi-modal-header,
.fi-panel-super-admin .fi-modal-header,
.fi-panel-branch .fi-modal-content,
.fi-panel-super-admin .fi-modal-content,
.fi-panel-branch .fi-modal-footer ,
.fi-panel-super-admin .fi-modal-footer {
    background: #ffffff !important;
    color: #191724 !important;
    border-color: #e8e7ed !important;
}

.fi-panel-restaurant-admin .fi-modal-header,
.fi-panel-branch .fi-modal-header ,
.fi-panel-super-admin .fi-modal-header {
    flex: 0 0 auto !important;
    padding: 1.25rem 1.5rem !important;
    border-bottom: 1px solid #e8e7ed !important;
}

/*
 * Confirm / icon modals: heading lives in the header and there is no
 * .fi-modal-content — header border-bottom + footer border-top = double line.
 */
.fi-panel-restaurant-admin .fi-modal-window-has-icon:not(:has(.fi-modal-content)) .fi-modal-header,
.fi-panel-branch .fi-modal-window-has-icon:not(:has(.fi-modal-content)) .fi-modal-header ,
.fi-panel-super-admin .fi-modal-window-has-icon:not(:has(.fi-modal-content)) .fi-modal-header {
    border-bottom: none !important;
}

.fi-panel-restaurant-admin .fi-modal-heading,
.fi-panel-branch .fi-modal-heading ,
.fi-panel-super-admin .fi-modal-heading {
    color: #191724 !important;
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em;
    line-height: 1.35 !important;
}

/* Figma Add menu item / SM form modals: larger title + muted subtitle */
.fi-panel-restaurant-admin .bx-ra-modal .fi-modal-heading,
.fi-panel-branch .bx-ra-modal .fi-modal-heading ,
.fi-panel-super-admin .bx-ra-modal .fi-modal-heading {
    font-size: 1.75rem !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em;
}

.fi-panel-restaurant-admin .fi-modal-description,
.fi-panel-branch .fi-modal-description ,
.fi-panel-super-admin .fi-modal-description {
    color: #777382 !important;
    font-size: 0.8125rem !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-modal-description,
.fi-panel-branch .bx-ra-modal .fi-modal-description ,
.fi-panel-super-admin .bx-ra-modal .fi-modal-description {
    margin-top: 0.25rem !important;
    font-size: 0.8125rem !important;
    line-height: 1.4 !important;
}

.fi-panel-restaurant-admin .fi-modal-close-btn,
.fi-panel-branch .fi-modal-close-btn ,
.fi-panel-super-admin .fi-modal-close-btn {
    color: #777382 !important;
    border-radius: 0.5rem !important;
}

.fi-panel-restaurant-admin .fi-modal-close-btn:hover,
.fi-panel-branch .fi-modal-close-btn:hover ,
.fi-panel-super-admin .fi-modal-close-btn:hover {
    background: color-mix(in srgb, #32104d 8%, #ffffff) !important;
    color: #32104d !important;
}

.fi-panel-restaurant-admin .fi-modal-content,
.fi-panel-branch .fi-modal-content ,
.fi-panel-super-admin .fi-modal-content {
    flex: 1 1 auto !important;
    min-height: 0 !important; /* required for flex child to scroll */
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 1.25rem 1.5rem !important;
}

.fi-panel-restaurant-admin .fi-modal-footer,
.fi-panel-branch .fi-modal-footer ,
.fi-panel-super-admin .fi-modal-footer {
    flex: 0 0 auto !important;
    padding: 1rem 1.5rem !important;
    border-top: 1px solid #e8e7ed !important;
    gap: 0.75rem !important;
}

/* Form sections inside modals — Figma card sections */
.fi-panel-restaurant-admin .bx-ra-form-section,
.fi-panel-branch .bx-ra-form-section ,
.fi-panel-super-admin .bx-ra-form-section {
    border: 1px solid #e8e7ed !important;
    border-radius: 0.75rem !important;
    background: #ffffff !important;
    box-shadow: none !important;
    margin-block: 0 1rem !important;
    overflow: hidden;
}

.fi-panel-restaurant-admin .bx-ra-form-section:last-child,
.fi-panel-branch .bx-ra-form-section:last-child ,
.fi-panel-super-admin .bx-ra-form-section:last-child {
    margin-block-end: 0 !important;
}

.fi-panel-restaurant-admin .bx-ra-form-section .fi-section-header,
.fi-panel-branch .bx-ra-form-section .fi-section-header ,
.fi-panel-super-admin .bx-ra-form-section .fi-section-header {
    background: transparent !important;
    border-bottom: none !important;
    /* Space above heading + gap before fields (was 0 bottom → cramped View modals) */
    padding: 1.25rem 1.5rem 0.75rem !important;
}

.fi-panel-restaurant-admin .bx-ra-form-section .fi-section-header-heading,
.fi-panel-branch .bx-ra-form-section .fi-section-header-heading ,
.fi-panel-super-admin .bx-ra-form-section .fi-section-header-heading {
    color: #191724 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    margin: 0 0 0.25rem !important;
}

.fi-panel-restaurant-admin .bx-ra-form-section .fi-section-header-description,
.fi-panel-branch .bx-ra-form-section .fi-section-header-description ,
.fi-panel-super-admin .bx-ra-form-section .fi-section-header-description {
    color: #777382 !important;
    font-size: 0.75rem !important;
    margin-top: 0.35rem !important;
}

.fi-panel-restaurant-admin .bx-ra-form-section .fi-section-content,
.fi-panel-restaurant-admin .bx-ra-form-section .fi-section-content-ctn,
.fi-panel-branch .bx-ra-form-section .fi-section-content,
.fi-panel-super-admin .bx-ra-form-section .fi-section-content,
.fi-panel-branch .bx-ra-form-section .fi-section-content-ctn ,
.fi-panel-super-admin .bx-ra-form-section .fi-section-content-ctn {
    /* Match horizontal padding so fields are not cramped under the heading */
    padding: 1.15rem 1.5rem 1.35rem !important;
}

/*
 * View-modal infolist: clear label vs value hierarchy (Figma-readable).
 * Applies to all RA/Branch View modals using .bx-ra-modal.
 */
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry,
.fi-panel-branch .bx-ra-modal .fi-in-entry ,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.25rem !important;
    width: 100% !important;
    min-width: 0 !important;
    padding-block: 0.65rem !important;
    border-bottom: 1px solid #f0eef3;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-sc-component:last-child > .fi-in-entry,
.fi-panel-branch .bx-ra-modal .fi-sc-component:last-child > .fi-in-entry,
.fi-panel-super-admin .bx-ra-modal .fi-sc-component:last-child > .fi-in-entry,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry:last-child,
.fi-panel-branch .bx-ra-modal .fi-in-entry:last-child ,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry:last-child {
    border-bottom: none;
    padding-bottom: 0.15rem;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-label-col,
.fi-panel-branch .bx-ra-modal .fi-in-entry-label-col,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-label-col,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-content-col,
.fi-panel-branch .bx-ra-modal .fi-in-entry-content-col,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-content-col,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-label-ctn,
.fi-panel-branch .bx-ra-modal .fi-in-entry-label-ctn,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-label-ctn,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-content-ctn,
.fi-panel-branch .bx-ra-modal .fi-in-entry-content-ctn ,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-content-ctn {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-label,
.fi-panel-branch .bx-ra-modal .fi-in-entry-label ,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-label {
    color: #777382 !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em;
    margin: 0 !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-content,
.fi-panel-branch .bx-ra-modal .fi-in-entry-content,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-content,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-text,
.fi-panel-branch .bx-ra-modal .fi-in-text,
.fi-panel-super-admin .bx-ra-modal .fi-in-text,
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-text-item,
.fi-panel-branch .bx-ra-modal .fi-in-text-item ,
.fi-panel-super-admin .bx-ra-modal .fi-in-text-item {
    color: #191724 !important;
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-entry-content .fi-badge,
.fi-panel-branch .bx-ra-modal .fi-in-entry-content .fi-badge ,
.fi-panel-super-admin .bx-ra-modal .fi-in-entry-content .fi-badge {
    font-weight: 600 !important;
}

/*
 * View infolist grids: entries already pad themselves — keep row-gap flat.
 * Form / repeater grids need vertical rhythm so labels are not flush to the
 * field above (Purchase Items repeater, 2-col Details, etc.).
 */
.fi-panel-restaurant-admin .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid:has(.fi-in-entry),
.fi-panel-branch .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid:has(.fi-in-entry) ,
.fi-panel-super-admin .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid:has(.fi-in-entry) {
    column-gap: 1.5rem !important;
    row-gap: 0 !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid,
.fi-panel-branch .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid,
.fi-panel-super-admin .bx-ra-modal .bx-ra-form-section .fi-section-content .fi-sc.fi-grid,
.fi-panel-restaurant-admin .bx-ra-modal .fi-fo-repeater .fi-sc.fi-grid,
.fi-panel-branch .bx-ra-modal .fi-fo-repeater .fi-sc.fi-grid ,
.fi-panel-super-admin .bx-ra-modal .fi-fo-repeater .fi-sc.fi-grid {
    column-gap: 1.5rem !important;
    row-gap: 1rem !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-fo-repeater-item-content,
.fi-panel-branch .bx-ra-modal .fi-fo-repeater-item-content ,
.fi-panel-super-admin .bx-ra-modal .fi-fo-repeater-item-content {
    padding: 0.25rem 0.25rem 0.5rem !important;
}

/* Empty / missing image: muted placeholder instead of a blank hole */
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))),
.fi-panel-branch .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))) ,
.fi-panel-super-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))) {
    color: #777382 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""])))::before,
.fi-panel-branch .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""])))::before ,
.fi-panel-super-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""])))::before {
    content: 'No image uploaded';
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))) img,
.fi-panel-branch .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))) img ,
.fi-panel-super-admin .bx-ra-modal .fi-in-image:not(:has(img[src]:not([src=""]))) img {
    display: none !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-image img[src]:not([src=""]),
.fi-panel-branch .bx-ra-modal .fi-in-image img[src]:not([src=""]) ,
.fi-panel-super-admin .bx-ra-modal .fi-in-image img[src]:not([src=""]) {
    border-radius: 0.5rem;
    border: 1px solid #e8e7ed;
    background: #f7f8fa;
}

/* Boolean icons in View: brand purple, not green/red noise */
.fi-panel-restaurant-admin .bx-ra-modal .fi-in-icon.fi-color-success,
.fi-panel-branch .bx-ra-modal .fi-in-icon.fi-color-success ,
.fi-panel-super-admin .bx-ra-modal .fi-in-icon.fi-color-success {
    color: #32104d !important;
}

.fi-panel-restaurant-admin .bx-ra-modal .fi-in-icon.fi-color-danger,
.fi-panel-branch .bx-ra-modal .fi-in-icon.fi-color-danger ,
.fi-panel-super-admin .bx-ra-modal .fi-in-icon.fi-color-danger {
    color: #777382 !important;
}

.fi-panel-restaurant-admin .fi-modal .fi-fo-field-label,
.fi-panel-branch .fi-modal .fi-fo-field-label,
.fi-panel-super-admin .fi-modal .fi-fo-field-label,
.fi-panel-restaurant-admin .fi-modal .fi-fo-field-label-content,
.fi-panel-branch .fi-modal .fi-fo-field-label-content ,
.fi-panel-super-admin .fi-modal .fi-fo-field-label-content {
    color: #191724 !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
}

.fi-panel-restaurant-admin .fi-modal .fi-input-wrp,
.fi-panel-branch .fi-modal .fi-input-wrp,
.fi-panel-super-admin .fi-modal .fi-input-wrp,
.fi-panel-restaurant-admin .fi-modal textarea,
.fi-panel-branch .fi-modal textarea ,
.fi-panel-super-admin .fi-modal textarea {
    background: #f7f8fa !important;
    border-color: #e8e7ed !important;
    border-radius: 0.4375rem !important;
    color: #191724 !important;
}

/* Do NOT put border on .fi-select-input — that double-boxes searchable selects
   (trigger + always-visible search). Search lives inside the dropdown panel. */
.fi-panel-restaurant-admin .fi-modal .fi-select-input,
.fi-panel-branch .fi-modal .fi-select-input,
.fi-panel-super-admin .fi-modal .fi-select-input,
.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-select-input,
.fi-panel-branch .fi-resource-create-record-page .fi-select-input ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-select-input {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #191724 !important;
}

.fi-panel-restaurant-admin .fi-modal .fi-input-wrp:has(.fi-select-input),
.fi-panel-branch .fi-modal .fi-input-wrp:has(.fi-select-input),
.fi-panel-super-admin .fi-modal .fi-input-wrp:has(.fi-select-input),
.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-input-wrp:has(.fi-select-input),
.fi-panel-branch .fi-resource-create-record-page .fi-input-wrp:has(.fi-select-input) ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-input-wrp:has(.fi-select-input) {
    overflow: visible !important;
}

.fi-panel-restaurant-admin .fi-modal .fi-input-wrp:focus-within,
.fi-panel-branch .fi-modal .fi-input-wrp:focus-within ,
.fi-panel-super-admin .fi-modal .fi-input-wrp:focus-within {
    border-color: #32104d !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, #32104d 16%, transparent) !important;
}

/*
 * Solid primary actions (Apply filters, modal Save, etc.) — RA/Branch theme.
 * Must beat filament-lists.css staff green (this file loads after lists).
 */
/* Header actions (Print / XLSX / Create / etc.): same 0.5rem radius as primary PDF button */
.fi-panel-restaurant-admin .fi-header-actions .fi-btn,
.fi-panel-branch .fi-header-actions .fi-btn,
.fi-panel-super-admin .fi-header-actions .fi-btn,
.fi-panel-restaurant-admin .fi-header-actions .fi-ac-btn-action,
.fi-panel-branch .fi-header-actions .fi-ac-btn-action,
.fi-panel-super-admin .fi-header-actions .fi-ac-btn-action,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-btn,
.fi-panel-branch .fi-header-actions-ctn .fi-btn,
.fi-panel-super-admin .fi-header-actions-ctn .fi-btn,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-ac-btn-action,
.fi-panel-branch .fi-header-actions-ctn .fi-ac-btn-action ,
.fi-panel-super-admin .fi-header-actions-ctn .fi-ac-btn-action {
    border-radius: 0.5rem !important;
}

.fi-panel-restaurant-admin .fi-header-actions .fi-btn.fi-color-gray,
.fi-panel-branch .fi-header-actions .fi-btn.fi-color-gray,
.fi-panel-super-admin .fi-header-actions .fi-btn.fi-color-gray,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-btn.fi-color-gray,
.fi-panel-branch .fi-header-actions-ctn .fi-btn.fi-color-gray,
.fi-panel-super-admin .fi-header-actions-ctn .fi-btn.fi-color-gray,
.fi-panel-restaurant-admin .fi-header-actions .fi-btn-color-gray,
.fi-panel-branch .fi-header-actions .fi-btn-color-gray,
.fi-panel-super-admin .fi-header-actions .fi-btn-color-gray,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-btn-color-gray,
.fi-panel-branch .fi-header-actions-ctn .fi-btn-color-gray ,
.fi-panel-super-admin .fi-header-actions-ctn .fi-btn-color-gray {
    background: #ffffff !important;
    border: 1px solid #e8e7ed !important;
    color: #191724 !important;
}

.fi-panel-restaurant-admin .fi-btn-color-primary,
.fi-panel-branch .fi-btn-color-primary,
.fi-panel-super-admin .fi-btn-color-primary,
.fi-panel-restaurant-admin .fi-btn.fi-color-primary,
.fi-panel-branch .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-header-actions .fi-btn.fi-color-primary,
.fi-panel-branch .fi-header-actions .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-header-actions .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-btn.fi-color-primary,
.fi-panel-branch .fi-header-actions-ctn .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-header-actions-ctn .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-ta-filters-apply-action-ctn .fi-btn,
.fi-panel-branch .fi-ta-filters-apply-action-ctn .fi-btn,
.fi-panel-super-admin .fi-ta-filters-apply-action-ctn .fi-btn,
.fi-panel-restaurant-admin .fi-ta-filters-apply-action-ctn .fi-btn.fi-color,
.fi-panel-branch .fi-ta-filters-apply-action-ctn .fi-btn.fi-color,
.fi-panel-super-admin .fi-ta-filters-apply-action-ctn .fi-btn.fi-color,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-success,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-success,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-success,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color:not(.fi-color-danger):not(.fi-color-gray):not(.fi-outlined),
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color:not(.fi-color-danger):not(.fi-color-gray):not(.fi-outlined) ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color:not(.fi-color-danger):not(.fi-color-gray):not(.fi-outlined) {
    --bg: var(--bx-primary, #32104d) !important;
    --hover-bg: var(--bx-primary-hover, #2a0d40) !important;
    --text: #ffffff !important;
    --hover-text: #ffffff !important;
    --dark-bg: var(--bx-primary, #32104d) !important;
    --dark-text: #ffffff !important;
    --dark-hover-bg: var(--bx-primary-hover, #2a0d40) !important;
    background-color: var(--bx-primary, #32104d) !important;
    background-image: none !important;
    border-color: var(--bx-primary, #32104d) !important;
    color: #ffffff !important;
    border-radius: 0.5rem !important;
    min-height: 2.5rem;
    padding-inline: 1rem !important;
    font-weight: 500 !important;
}

.fi-panel-restaurant-admin .fi-ta-filters-apply-action-ctn .fi-btn span,
.fi-panel-branch .fi-ta-filters-apply-action-ctn .fi-btn span,
.fi-panel-super-admin .fi-ta-filters-apply-action-ctn .fi-btn span,
.fi-panel-restaurant-admin .fi-ta-filters-apply-action-ctn .fi-btn svg,
.fi-panel-branch .fi-ta-filters-apply-action-ctn .fi-btn svg,
.fi-panel-super-admin .fi-ta-filters-apply-action-ctn .fi-btn svg,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-primary span,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-primary span ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-primary span {
    color: #ffffff !important;
}

.fi-panel-restaurant-admin .fi-btn-color-primary:hover,
.fi-panel-branch .fi-btn-color-primary:hover,
.fi-panel-super-admin .fi-btn-color-primary:hover,
.fi-panel-restaurant-admin .fi-btn.fi-color-primary:hover,
.fi-panel-branch .fi-btn.fi-color-primary:hover,
.fi-panel-super-admin .fi-btn.fi-color-primary:hover,
.fi-panel-restaurant-admin .fi-header-actions .fi-btn.fi-color-primary:hover,
.fi-panel-branch .fi-header-actions .fi-btn.fi-color-primary:hover,
.fi-panel-super-admin .fi-header-actions .fi-btn.fi-color-primary:hover,
.fi-panel-restaurant-admin .fi-header-actions-ctn .fi-btn.fi-color-primary:hover,
.fi-panel-branch .fi-header-actions-ctn .fi-btn.fi-color-primary:hover,
.fi-panel-super-admin .fi-header-actions-ctn .fi-btn.fi-color-primary:hover,
.fi-panel-restaurant-admin .fi-ta-filters-apply-action-ctn .fi-btn:hover,
.fi-panel-branch .fi-ta-filters-apply-action-ctn .fi-btn:hover,
.fi-panel-super-admin .fi-ta-filters-apply-action-ctn .fi-btn:hover,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-primary:hover,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-primary:hover ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-primary:hover {
    --bg: var(--bx-primary-hover, #2a0d40) !important;
    background-color: var(--bx-primary-hover, #2a0d40) !important;
    border-color: var(--bx-primary-hover, #2a0d40) !important;
    color: #ffffff !important;
}

.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-outlined,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-outlined,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-outlined,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-gray,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-gray ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-gray {
    --bg: #ffffff !important;
    --text: #191724 !important;
    background: #ffffff !important;
    border: 1px solid #e8e7ed !important;
    color: #191724 !important;
    border-radius: 0.5rem !important;
    min-height: 2.5rem;
    padding-inline: 1rem !important;
    font-weight: 500 !important;
}

.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-outlined:hover,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-outlined:hover,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-outlined:hover,
.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-gray:hover,
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-gray:hover ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-gray:hover {
    border-color: color-mix(in srgb, #32104d 28%, #e8e7ed) !important;
    color: #32104d !important;
}

.fi-panel-restaurant-admin .fi-modal-footer .fi-btn.fi-color-danger:not(.fi-outlined),
.fi-panel-branch .fi-modal-footer .fi-btn.fi-color-danger:not(.fi-outlined) ,
.fi-panel-super-admin .fi-modal-footer .fi-btn.fi-color-danger:not(.fi-outlined) {
    --bg: #b42318 !important;
    --text: #ffffff !important;
    background-color: #b42318 !important;
    border-color: #b42318 !important;
    color: #ffffff !important;
    border-radius: 0.5rem !important;
}

/*
 * RA / Branch create-record pages (e.g. Gateway Settings).
 * Staff cream/orange form-pages.css is scoped out of these panels.
 */
.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-sc-form,
.fi-panel-branch .fi-resource-create-record-page .fi-sc-form ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-sc-form {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
    gap: 1rem;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-form-section,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-form-section ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-form-section {
    border: 1px solid #e8e7ed !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    margin-block: 0 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-header,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-form-section .fi-section-header ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-header {
    background: transparent !important;
    border-bottom: none !important;
    padding: 1.25rem 1.5rem 0.75rem !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-header-heading,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-form-section .fi-section-header-heading ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-header-heading {
    color: #191724 !important;
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-content,
.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-content-ctn,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-form-section .fi-section-content,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-content,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-form-section .fi-section-content-ctn ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-form-section .fi-section-content-ctn {
    padding: 1.15rem 1.5rem 1.35rem !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-fo-field-wrp-label,
.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-fo-field-wrp-label span,
.fi-panel-branch .fi-resource-create-record-page .fi-fo-field-wrp-label,
.fi-panel-super-admin .fi-resource-create-record-page .fi-fo-field-wrp-label,
.fi-panel-branch .fi-resource-create-record-page .fi-fo-field-wrp-label span ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-fo-field-wrp-label span {
    color: #191724 !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-input-wrp,
.fi-panel-branch .fi-resource-create-record-page .fi-input-wrp ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-input-wrp {
    background: #f7f8fa !important;
    border: 1px solid #e8e7ed !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    min-height: 2.375rem;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-input-wrp:focus-within,
.fi-panel-branch .fi-resource-create-record-page .fi-input-wrp:focus-within ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-input-wrp:focus-within {
    border-color: color-mix(in srgb, #32104d 35%, #e8e7ed) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, #32104d 12%, transparent) !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-fo-field-wrp-helper-text,
.fi-panel-branch .fi-resource-create-record-page .fi-fo-field-wrp-helper-text ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-fo-field-wrp-helper-text {
    color: #777382 !important;
    font-size: 0.75rem !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-repeater-item,
.fi-panel-branch .fi-resource-create-record-page .fi-repeater-item ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-repeater-item {
    background: #ffffff !important;
    border: 1px solid #e8e7ed !important;
    border-radius: 8px !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-sc-actions,
.fi-panel-branch .fi-resource-create-record-page .fi-sc-actions ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-sc-actions {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0.5rem 0 0 !important;
    padding: 0 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-sc-actions .fi-ac,
.fi-panel-branch .fi-resource-create-record-page .fi-sc-actions .fi-ac ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-sc-actions .fi-ac {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: none !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary,
.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-gateway-primary-btn,
.fi-panel-branch .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary,
.fi-panel-super-admin .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-gateway-primary-btn ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-gateway-primary-btn {
    --bg: #32104d !important;
    --hover-bg: #2a0d40 !important;
    --text: #ffffff !important;
    --hover-text: #ffffff !important;
    background-color: #32104d !important;
    border-color: #32104d !important;
    color: #ffffff !important;
    border-radius: 7px !important;
    min-height: 2.25rem !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary:hover,
.fi-panel-restaurant-admin .fi-resource-create-record-page .bx-ra-gateway-primary-btn:hover,
.fi-panel-branch .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary:hover,
.fi-panel-super-admin .fi-resource-create-record-page .fi-sc-actions .fi-btn.fi-color-primary:hover,
.fi-panel-branch .fi-resource-create-record-page .bx-ra-gateway-primary-btn:hover ,
.fi-panel-super-admin .fi-resource-create-record-page .bx-ra-gateway-primary-btn:hover {
    background-color: #2a0d40 !important;
    border-color: #2a0d40 !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-toggle.fi-checked,
.fi-panel-restaurant-admin .fi-resource-create-record-page button[role="switch"][aria-checked="true"],
.fi-panel-branch .fi-resource-create-record-page .fi-toggle.fi-checked,
.fi-panel-super-admin .fi-resource-create-record-page .fi-toggle.fi-checked,
.fi-panel-branch .fi-resource-create-record-page button[role="switch"][aria-checked="true"] ,
.fi-panel-super-admin .fi-resource-create-record-page button[role="switch"][aria-checked="true"] {
    background-color: #32104d !important;
}

.fi-panel-restaurant-admin .fi-resource-create-record-page .fi-repeater .fi-btn:not(.fi-color-danger):not(.fi-color-primary),
.fi-panel-branch .fi-resource-create-record-page .fi-repeater .fi-btn:not(.fi-color-danger):not(.fi-color-primary) ,
.fi-panel-super-admin .fi-resource-create-record-page .fi-repeater .fi-btn:not(.fi-color-danger):not(.fi-color-primary) {
    background: #ffffff !important;
    border: 1px solid #e8e7ed !important;
    color: #32104d !important;
    border-radius: 7px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    min-height: 2.25rem !important;
}

/* Gateway Settings page chrome */
.fi-panel-restaurant-admin .bx-ra-gateway-settings .bx-ra-gateway-status,
.fi-panel-branch .bx-ra-gateway-settings .bx-ra-gateway-status ,
.fi-panel-super-admin .bx-ra-gateway-settings .bx-ra-gateway-status {
    color: #32104d !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    margin-top: 0.35rem !important;
}

.fi-panel-restaurant-admin .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder,
.fi-panel-restaurant-admin .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder-content,
.fi-panel-branch .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder,
.fi-panel-super-admin .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder,
.fi-panel-branch .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder-content ,
.fi-panel-super-admin .bx-ra-gateway-settings .bx-ra-gateway-status .fi-fo-placeholder-content {
    color: #32104d !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

.fi-panel-restaurant-admin .bx-ra-gateway-settings .bx-ra-gateway-default-config .fi-repeater-item,
.fi-panel-restaurant-admin .bx-ra-gateway-settings .bx-ra-gateway-custom-config .fi-repeater-item,
.fi-panel-branch .bx-ra-gateway-settings .bx-ra-gateway-default-config .fi-repeater-item,
.fi-panel-super-admin .bx-ra-gateway-settings .bx-ra-gateway-default-config .fi-repeater-item,
.fi-panel-branch .bx-ra-gateway-settings .bx-ra-gateway-custom-config .fi-repeater-item ,
.fi-panel-super-admin .bx-ra-gateway-settings .bx-ra-gateway-custom-config .fi-repeater-item {
    box-shadow: none !important;
}

.fi-panel-restaurant-admin .bx-ra-gateway-settings .fi-sc-component:has(.fi-sc-actions),
.fi-panel-branch .bx-ra-gateway-settings .fi-sc-component:has(.fi-sc-actions) ,
.fi-panel-super-admin .bx-ra-gateway-settings .fi-sc-component:has(.fi-sc-actions) {
    margin-top: 0.25rem;
}

/*
 * Large monitors: stretch main content to available width.
 * Overrides Filament fi-width-7xl / legacy shell 90rem cap (empty side gutters).
 * Public CSS so it applies without waiting on a Vite theme rebuild.
 */
.fi-panel-restaurant-admin .fi-main,
.fi-panel-branch .fi-main ,
.fi-panel-super-admin .fi-main {
    max-width: none !important;
    width: 100%;
}

/* Global search results must not be clipped by topbar search chrome */
.fi-panel-restaurant-admin .bx-ra-topbar .fi-global-search,
.fi-panel-branch .bx-ra-topbar .fi-global-search,
.fi-panel-super-admin .bx-ra-topbar .fi-global-search,
.fi-panel-restaurant-admin .bx-ra-topbar-end,
.fi-panel-branch .bx-ra-topbar-end ,
.fi-panel-super-admin .bx-ra-topbar-end {
    overflow: visible !important;
}

.fi-panel-restaurant-admin .bx-ra-topbar .fi-global-search-results,
.fi-panel-branch .bx-ra-topbar .fi-global-search-results,
.fi-panel-super-admin .bx-ra-topbar .fi-global-search-results,
.fi-panel-restaurant-admin .fi-global-search-results,
.fi-panel-branch .fi-global-search-results ,
.fi-panel-super-admin .fi-global-search-results {
    z-index: 80 !important;
}

/*
 * Super Admin / RA / Branch — consistent corner radius on fields, tables, buttons.
 * Custom pages (Accounting Export, settings) were missing create-page input radius.
 */
.fi-panel-restaurant-admin .fi-ta-ctn,
.fi-panel-branch .fi-ta-ctn,
.fi-panel-super-admin .fi-ta-ctn {
    border-radius: var(--bx-radius-lg, 10px) !important;
    /* visible so Columns / Filters dropdowns are not clipped */
    overflow: visible !important;
}

.fi-panel-restaurant-admin .fi-ta-header-toolbar,
.fi-panel-branch .fi-ta-header-toolbar,
.fi-panel-super-admin .fi-ta-header-toolbar {
    overflow: visible !important;
    z-index: 5;
}

.fi-panel-restaurant-admin .fi-ta-col-manager-dropdown .fi-dropdown-panel,
.fi-panel-branch .fi-ta-col-manager-dropdown .fi-dropdown-panel,
.fi-panel-super-admin .fi-ta-col-manager-dropdown .fi-dropdown-panel,
.fi-panel-restaurant-admin .fi-ta-filters-dropdown .fi-dropdown-panel,
.fi-panel-branch .fi-ta-filters-dropdown .fi-dropdown-panel,
.fi-panel-super-admin .fi-ta-filters-dropdown .fi-dropdown-panel {
    z-index: 40 !important;
}

.fi-panel-restaurant-admin .fi-ta-content,
.fi-panel-branch .fi-ta-content,
.fi-panel-super-admin .fi-ta-content,
.fi-panel-restaurant-admin .fi-ta-content-ctn,
.fi-panel-branch .fi-ta-content-ctn,
.fi-panel-super-admin .fi-ta-content-ctn {
    border-radius: 0 0 var(--bx-radius-lg, 10px) var(--bx-radius-lg, 10px);
    overflow-x: auto;
}

/* Create Plan repeater: align Unlimited toggle with Feature / Limit inputs */
.fi-panel-super-admin .bx-ra-modal .bx-repeater-toggle-mid,
.fi-panel-super-admin .bx-ra-modal .fi-fo-field-wrp.bx-repeater-toggle-mid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 1.5rem;
    min-height: 100%;
}

/* Settings / simple pages: keep content top-aligned (not vertically centered) */
.fi-panel-super-admin .fi-page-has-sub-navigation-start .fi-page-content,
.fi-panel-super-admin .fi-page-content {
    align-self: start !important;
    justify-content: flex-start !important;
    width: 100%;
    min-height: 0 !important;
}

.fi-panel-super-admin .fi-page-has-sub-navigation-start .fi-page-header-main-ctn {
    align-items: start !important;
}

.fi-panel-super-admin .bx-sa-settings-panel {
    display: block;
    width: 100%;
    max-width: 40rem;
    margin: 0;
    padding: 1.25rem 1.35rem;
    border: 1px solid var(--bx-border, #e8e7ed);
    border-radius: var(--bx-radius-lg, 10px);
    background: var(--bx-surface, #ffffff);
    box-shadow: 0 8px 24px rgba(25, 23, 36, 0.04);
    box-sizing: border-box;
}

.fi-panel-super-admin .bx-sa-settings-panel__lead {
    margin: 0 0 1.25rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--bx-muted, #777382);
}

.fi-panel-super-admin .bx-sa-settings-panel__form {
    margin: 0;
}

.fi-panel-restaurant-admin .fi-input-wrp,
.fi-panel-branch .fi-input-wrp,
.fi-panel-super-admin .fi-input-wrp,
.fi-panel-restaurant-admin .fi-select-input,
.fi-panel-branch .fi-select-input,
.fi-panel-super-admin .fi-select-input {
    border-radius: var(--bx-radius-md, 8px) !important;
}

.fi-panel-restaurant-admin .fi-btn,
.fi-panel-branch .fi-btn,
.fi-panel-super-admin .fi-btn,
.fi-panel-restaurant-admin .fi-ac-btn-action,
.fi-panel-branch .fi-ac-btn-action,
.fi-panel-super-admin .fi-ac-btn-action,
.fi-panel-restaurant-admin .bx-header-create,
.fi-panel-branch .bx-header-create,
.fi-panel-super-admin .bx-header-create {
    border-radius: var(--bx-radius-md, 8px) !important;
}

.fi-panel-restaurant-admin .fi-pagination .fi-select-input,
.fi-panel-branch .fi-pagination .fi-select-input,
.fi-panel-super-admin .fi-pagination .fi-select-input,
.fi-panel-restaurant-admin .fi-pagination .fi-input-wrp,
.fi-panel-branch .fi-pagination .fi-input-wrp,
.fi-panel-super-admin .fi-pagination .fi-input-wrp {
    border-radius: var(--bx-radius-md, 8px) !important;
}

/* Super Admin list row actions — match RA text action chips (View / Edit) */
.fi-panel-super-admin .fi-ta-actions {
    display: inline-flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.fi-panel-super-admin .fi-ta-actions .fi-link,
.fi-panel-super-admin .fi-ta-actions .fi-ac-action,
.fi-panel-super-admin .fi-ta-actions .fi-ac-btn-action,
.fi-panel-super-admin .fi-ta-actions .fi-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: 0.35rem 0.75rem !important;
    border: 1px solid var(--bx-border, #e8e7ed) !important;
    border-radius: 0.5rem !important;
    background: var(--bx-surface, #ffffff) !important;
    color: var(--bx-text, #191724) !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    line-height: 1.25;
    text-decoration: none !important;
    box-shadow: none !important;
}

.fi-panel-super-admin .fi-ta-actions .fi-link:hover,
.fi-panel-super-admin .fi-ta-actions .fi-ac-action:hover,
.fi-panel-super-admin .fi-ta-actions .fi-ac-btn-action:hover,
.fi-panel-super-admin .fi-ta-actions .fi-btn:hover {
    border-color: color-mix(in srgb, var(--bx-primary, #32104d) 28%, var(--bx-border, #e8e7ed)) !important;
    color: var(--bx-primary, #32104d) !important;
    background: var(--bx-surface, #ffffff) !important;
}

.fi-panel-super-admin .fi-ta-actions .fi-icon,
.fi-panel-super-admin .fi-ta-actions svg {
    display: none !important;
}

.fi-panel-super-admin .fi-ta-actions .fi-color-danger,
.fi-panel-super-admin .fi-ta-actions .fi-btn-color-danger {
    color: #b82638 !important;
    border-color: color-mix(in srgb, #b82638 28%, var(--bx-border, #e8e7ed)) !important;
}
