/* Omego — global compact UI scale for admin, POS, and marketing */

html:has(.fi-body),
html:has(.pos-app),
html:has(.omego-site) {
    font-size: 13px;
}

/* Filament admin panel */
.fi-body {
    --sidebar-width: 15rem;
    --collapsed-sidebar-width: 4.25rem;
}

.fi-topbar {
    min-height: 3rem;
}

.fi-topbar .fi-logo {
    font-size: 0.95rem;
}

.fi-sidebar-item-btn,
.fi-sidebar-group-btn {
    padding: 0.35rem 0.5rem;
    gap: 0.5rem;
}

.fi-sidebar-item-label,
.fi-sidebar-group-label {
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

.fi-sidebar-item-icon,
.fi-sidebar-group-btn .fi-icon {
    width: 1.05rem;
    height: 1.05rem;
}

.fi-header {
    gap: 0.75rem;
}

.fi-header-heading {
    font-size: 1.35rem;
    line-height: 1.2;
}

.fi-header-subheading {
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.fi-page > .fi-page-header-main-ctn {
    gap: 0.75rem;
}

.fi-wi-stats-overview-stat {
    padding: 0.75rem 0.875rem;
    border-radius: 0.65rem;
}

.fi-wi-stats-overview-stat-value {
    font-size: 1.35rem;
    line-height: 1.15;
}

.fi-wi-stats-overview-stat-label {
    font-size: 0.75rem;
}

.fi-wi-stats-overview-stat-description {
    font-size: 0.75rem;
}

.fi-section:not(.fi-section-not-contained):not(.fi-aside) > .fi-section-header {
    padding: 0.75rem 1rem;
}

.fi-section:not(.fi-section-not-contained):not(.fi-divided) > .fi-section-content-ctn > .fi-section-content,
.fi-section.fi-divided > .fi-section-content-ctn > .fi-section-content > * {
    padding: 1rem;
}

.fi-section:not(.fi-section-not-contained) > .fi-section-content-ctn > .fi-section-footer {
    padding: 0.625rem 1rem;
}

.fi-fo-field-wrp label {
    font-size: 0.8125rem;
}

.fi-input-wrp input,
.fi-input-wrp select,
.fi-input-wrp textarea,
.fi-select-input,
.fi-fo-text-input input,
.fi-fo-textarea textarea {
    font-size: 0.8125rem;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

.fi-btn {
    font-size: 0.8125rem;
    padding: 0.4rem 0.75rem;
    min-height: 2rem;
}

.fi-btn.fi-size-md {
    padding: 0.45rem 0.8rem;
}

.fi-ta-header-cell,
.fi-ta-cell {
    padding: 0.45rem 0.65rem;
    font-size: 0.8125rem;
}

.fi-ta-header-cell-label {
    font-size: 0.75rem;
}

.fi-wi-widget .fi-section-content {
    padding: 0.875rem;
}

.fi-simple-page {
    padding: 1rem;
}

.fi-global-search-field input {
    font-size: 0.8125rem;
}

/* Purchase invoice — critical full-width (SPA-safe via :has, always loaded) */
main.fi-main:has(.purchase-invoice-sheet),
main.fi-main.fi-width-7xl:has(.purchase-invoice-sheet) {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.fi-main-ctn:has(.purchase-invoice-sheet),
.fi-layout:has(.purchase-invoice-sheet) {
    width: 100% !important;
    max-width: none !important;
}

.fi-main:has(.purchase-invoice-sheet) .fi-page,
.fi-main:has(.purchase-invoice-sheet) .fi-page-header-main-ctn,
.fi-main:has(.purchase-invoice-sheet) .fi-page-main,
.fi-main:has(.purchase-invoice-sheet) .fi-page-content,
.fi-main:has(.purchase-invoice-sheet) .fi-sc-form,
.fi-main:has(.purchase-invoice-sheet) .purchase-invoice-sheet {
    width: 100% !important;
    max-width: none !important;
}

.fi-main:has(.purchase-invoice-sheet) .fi-sc-form > .fi-sc.fi-grid > .fi-grid-col {
    grid-column: 1 / -1 !important;
    max-width: none !important;
}

/* Business onboarding — centered wizard */
.fi-main:has(.onboarding-page) .fi-page-header-main-ctn,
.fi-main:has(.onboarding-page) .fi-page-main {
    width: 100%;
    max-width: 42rem;
    margin-inline: auto;
}

.fi-main:has(.onboarding-page) .fi-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.fi-main:has(.onboarding-page) .fi-header-heading {
    width: 100%;
    text-align: center;
}

.fi-main:has(.onboarding-page) .onboarding-page-content {
    width: 100%;
}

.fi-main:has(.onboarding-page) .fi-wizard-header {
    justify-content: center;
}

.fi-main:has(.onboarding-page) .fi-wizard-header-step {
    flex: 1 1 0;
    min-width: 0;
}

.fi-main:has(.onboarding-page) .fi-wizard-footer {
    justify-content: flex-end;
}
