/* Fuelz web: shared Geist, ivory and lime foundations. Desktop layouts,
   routes, table structure and operational status meanings stay intact. */
@font-face { font-family: 'Fuelz Geist'; src: url('../fonts/geist/Geist-Regular.ttf') format('truetype'); font-weight: 400 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Fuelz Geist'; src: url('../fonts/geist/Geist-SemiBold.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Fuelz Geist'; src: url('../fonts/geist/Geist-Bold.ttf') format('truetype'); font-weight: 700 900; font-style: normal; font-display: swap; }

html.fbs-web-theme {
  --fbs-font: 'Fuelz Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --fbs-ink: #12110f; --fbs-muted: #6b6b63; --fbs-line: #e4e2da;
  --fbs-canvas: #f3f2ed; --fbs-surface: #fff; --fbs-raised: #eceae4;
  --fbs-tint: #f2fbd0; --fbs-accent: #52651e; --fbs-cta: #c9f03f;
  --fbs-cta-hover: #b7dc31; --fbs-cta-ink: #12110f;
  --fbs-focus: rgba(82,101,30,.18); --fbs-shadow: 0 2px 8px rgba(18,17,15,.025);
  --fbs-blue-bg: #f7f9ff; --fbs-blue-ink: #37598c;
  --fbs-teal-bg: #f2fbf8; --fbs-teal-ink: #247467;
  --fbs-violet-bg: #faf7ff; --fbs-violet-ink: #705091;
  --fbs-amber-bg: #fffbf2; --fbs-amber-ink: #8b681d;
  --fbs-rose-bg: #fff7f9; --fbs-rose-ink: #995571;
  --primary: #52651e; --font-family-sans-serif: var(--fbs-font);
  color-scheme: light;
}
html.fbs-web-theme:has(body.dark-layout) {
  --fbs-ink: #f7f7f7; --fbs-muted: #a0a0ab; --fbs-line: #3f3f46;
  --fbs-canvas: #131316; --fbs-surface: #26272b; --fbs-raised: #1a1a1e;
  --fbs-tint: #2d331c; --fbs-accent: #c9f03f;
  --fbs-focus: rgba(201,240,63,.2); --fbs-shadow: 0 2px 8px rgba(0,0,0,.1);
  --fbs-blue-bg: #202a38; --fbs-blue-ink: #bdd5f5;
  --fbs-teal-bg: #20322e; --fbs-teal-ink: #b7e3d5;
  --fbs-violet-bg: #302738; --fbs-violet-ink: #ddc4f7;
  --fbs-amber-bg: #352e21; --fbs-amber-ink: #edcf8e;
  --fbs-rose-bg: #36252d; --fbs-rose-ink: #efbccd;
  --primary: #c9f03f; color-scheme: dark;
}

html.fbs-web-theme body,
html.fbs-web-theme :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea,.btn,.table,.v-select,.header-navbar,.main-menu,.modal-content,.dropdown-menu,.flatpickr-calendar,.ql-container) {
  font-family: var(--fbs-font) !important;
}
html.fbs-web-theme body { background: var(--fbs-canvas) !important; color: var(--fbs-ink); font-size: 14px; -webkit-font-smoothing: antialiased; }
html.fbs-web-theme :is(h1,h2,h3,h4,h5,h6,.card-title,.modal-title) { color: var(--fbs-ink) !important; font-weight: 600; letter-spacing: -.025em; }
html.fbs-web-theme :is(.card-title,.modal-title) { font-size: 17px; line-height: 24px; }
html.fbs-web-theme :is(.text-muted,.form-text,.breadcrumb-item,.footer) { color: var(--fbs-muted) !important; }
html.fbs-web-theme :is(a:not(.btn),.text-primary) { color: var(--fbs-accent); }
html.fbs-web-theme :is(button,a,input,textarea,select,[tabindex]):focus-visible { outline: 2px solid var(--fbs-accent); outline-offset: 3px; }
html.fbs-web-theme :is(.app-content,.content-body,#loading-bg) { background-color: var(--fbs-canvas) !important; }

/* Fixed desktop sidebar and familiar nested navigation. */
html.fbs-web-theme .main-menu { background: var(--fbs-surface) !important; border-inline-end: 1px solid var(--fbs-line); box-shadow: none !important; }
html.fbs-web-theme .main-menu :is(.navbar-header,.navigation,.navigation ul) { background: transparent !important; }
html.fbs-web-theme .main-menu.menu-accordion .navigation li { background: transparent !important; }
html.fbs-web-theme .semi-dark-layout .main-menu { --fbs-ink: #f7f7f7; --fbs-muted: #a0a0ab; --fbs-line: #3f3f46; --fbs-canvas: #131316; --fbs-surface: #26272b; --fbs-tint: #2d331c; --fbs-accent: #c9f03f; }
html.fbs-web-theme .main-menu .navbar-brand { gap: 8px; }
html.fbs-web-theme .main-menu .brand-text { color: var(--fbs-ink) !important; font-size: 19px; letter-spacing: -.04em; }
html:is(.fbs-web-theme,.fbs-native) .fuelz-web-brand { display: inline-flex; width: 166px; max-width: 100%; aspect-ratio: 348 / 80; align-items: center; flex: none; }
html:is(.fbs-web-theme,.fbs-native) .fuelz-web-brand img { display: block; width: 100%; height: 100%; object-fit: contain; }
html:is(.fbs-web-theme,.fbs-native) .fuelz-web-brand .fuelz-brand-dark { display: none; }
html:is(.fbs-web-theme,.fbs-native) :is(.dark-layout,.semi-dark-layout .main-menu) .fuelz-web-brand .fuelz-brand-light { display: none; }
html:is(.fbs-web-theme,.fbs-native) :is(.dark-layout,.semi-dark-layout .main-menu) .fuelz-web-brand .fuelz-brand-dark { display: block; }
html:is(.fbs-web-theme,.fbs-native) .fuelz-web-brand-compact { width: 40px; aspect-ratio: 128 / 80; }
html:is(.fbs-web-theme,.fbs-native) .fbs-login-logo .fuelz-web-brand { width: 220px; margin: 0 auto 16px; }
html:is(.fbs-web-theme,.fbs-native) .auth-wrapper > .auth-inner > .brand-logo .fuelz-web-brand { width: 180px; }
html:is(.fbs-web-theme,.fbs-native) .loading-logo img { width: 180px; height: auto; }
html.fbs-web-theme .main-menu .modern-nav-toggle { color: var(--fbs-muted) !important; }
html.fbs-web-theme .main-menu .navigation li > a { color: var(--fbs-muted) !important; border-radius: 10px !important; box-shadow: none !important; font-weight: 500; }
html.fbs-web-theme .main-menu .navigation li.active { box-shadow: none !important; background: transparent !important; }
html.fbs-web-theme .main-menu .navigation li > a:hover { background: var(--fbs-canvas) !important; color: var(--fbs-ink) !important; }
html.fbs-web-theme body .main-menu.menu-accordion .navigation :is(li.active,li.sidebar-group-active) > a {
  background: var(--fbs-tint) !important; color: var(--fbs-ink) !important; font-weight: 600;
}
html.fbs-web-theme body:is(.dark-layout,.semi-dark-layout) .main-menu.menu-accordion .navigation.navigation-main :is(li.active,li.sidebar-group-active) > a { background: var(--fbs-tint) !important; color: var(--fbs-ink) !important; }
html.fbs-web-theme .main-menu .navigation :is(li.active,li.sidebar-group-active) > a :is(svg,i) { color: var(--fbs-accent) !important; }
html.fbs-web-theme .main-menu .navigation-header { color: var(--fbs-muted) !important; font-size: 10px; letter-spacing: .07em; }
html.fbs-web-theme .main-menu .navigation li ul li > a { font-size: 13px; }
html.fbs-web-theme .main-menu .navigation li.open:not(.sidebar-group-active) > a { background: var(--fbs-canvas) !important; }

/* Compact top chrome, with a single edge and matching profile treatment. */
html.fbs-web-theme .header-navbar { background: var(--fbs-surface) !important; color: var(--fbs-muted); box-shadow: var(--fbs-shadow) !important; border: 1px solid var(--fbs-line); border-radius: 14px !important; }
html.fbs-web-theme .header-navbar .navbar-container { background: transparent !important; border: 0; box-shadow: none !important; }
html.fbs-web-theme .header-navbar-shadow { background: linear-gradient(var(--fbs-canvas),transparent) !important; }
html.fbs-web-theme .header-navbar :is(.nav-link,.user-name) { color: var(--fbs-ink) !important; }
html.fbs-web-theme .header-navbar .user-status { color: var(--fbs-muted) !important; }
html.fbs-web-theme .header-navbar .badge { border-radius: 7px; }
html.fbs-web-theme .header-navbar .b-avatar { background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; }
html.fbs-web-theme .header-navbar .bookmark-wrapper :is(svg,i),
html.fbs-web-theme .header-navbar .nav-link > svg { color: var(--fbs-muted) !important; }
html.fbs-web-theme .customizer { background: var(--fbs-surface) !important; color: var(--fbs-ink); border-color: var(--fbs-line) !important; }
html.fbs-web-theme .customizer :is(.customizer-title,.customizer-heading,label) { color: var(--fbs-ink) !important; }
html.fbs-web-theme .customizer .customizer-toggle { background: var(--fbs-surface) !important; color: var(--fbs-muted) !important; border: 1px solid var(--fbs-line); box-shadow: var(--fbs-shadow); border-radius: 10px 0 0 10px; }

/* Shared surfaces and hierarchy; the existing dashboard/widget grid remains. */
html.fbs-web-theme :is(.card,.modal-content,.popover,.flatpickr-calendar,.dropdown-menu,.vs__dropdown-menu) { background: var(--fbs-surface) !important; color: var(--fbs-ink) !important; border: 1px solid var(--fbs-line) !important; border-radius: 16px; box-shadow: var(--fbs-shadow) !important; }
html.fbs-web-theme .card { margin-bottom: 20px; }
html.fbs-web-theme .card :is(.card-header,.card-body,.card-footer) { background: transparent; color: var(--fbs-ink); }
html.fbs-web-theme :is(.card-footer,.modal-header,.modal-footer) { border-color: var(--fbs-line) !important; }
html.fbs-web-theme .content-header-title { font-size: 25px; line-height: 32px; color: var(--fbs-ink) !important; border-color: var(--fbs-line) !important; }
html.fbs-web-theme .content-header { margin-bottom: 20px; }
html.fbs-web-theme .content-header-left { margin-bottom: 12px !important; }
html.fbs-web-theme .breadcrumb { background: transparent; font-size: 12px; }
html.fbs-web-theme .card .card-header { gap: 12px; }
html.fbs-web-theme .content-body .card > .card-header { padding: 16px 20px; }
html.fbs-web-theme .card .card-header :is(.heading-elements,.card-actions) a { color: var(--fbs-muted); }
html.fbs-web-theme .border-right,
html.fbs-web-theme .border-left,
html.fbs-web-theme .border-bottom,
html.fbs-web-theme hr { border-color: var(--fbs-line) !important; }

/* Primary work actions, secondary controls and operational colors. */
html.fbs-web-theme .btn { min-height: 36px; padding: 8px 14px; border-radius: 10px; font-size: 13px; line-height: 18px; font-weight: 600; letter-spacing: 0; box-shadow: none !important; }
html.fbs-web-theme .btn-sm { min-height: 32px; padding: 6px 10px; font-size: 12px; }
html.fbs-web-theme .btn-lg { min-height: 44px; padding: 11px 18px; font-size: 14px; }
html.fbs-web-theme .btn-primary { background: var(--fbs-cta) !important; border-color: var(--fbs-cta) !important; color: var(--fbs-cta-ink) !important; }
html.fbs-web-theme .btn-primary:is(:hover,:active) { background: var(--fbs-cta-hover) !important; border-color: var(--fbs-cta-hover) !important; }
html.fbs-web-theme .btn-gradient-primary { background: var(--fbs-cta) !important; border-color: var(--fbs-cta) !important; color: var(--fbs-cta-ink) !important; }
html.fbs-web-theme .btn-gradient-primary:has(svg[data-icon="eye-slash"]) { background: var(--fbs-canvas) !important; border-color: var(--fbs-line) !important; color: var(--fbs-muted) !important; }
html.fbs-web-theme .btn-gradient-danger:has(svg[data-icon="file"]) { background: var(--fbs-blue-bg) !important; border-color: var(--fbs-line) !important; color: var(--fbs-blue-ink) !important; }
html.fbs-web-theme .btn.dropdown-toggle:not(.dropdown-toggle-no-caret)::after {
  width: 12px; height: 12px; background: currentColor !important; border: 0 !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
html.fbs-web-theme :is(.btn-outline-primary,.btn-flat-primary) { background: var(--fbs-surface) !important; color: var(--fbs-accent) !important; border-color: var(--fbs-line) !important; }
html.fbs-web-theme :is(.btn-outline-primary,.btn-flat-primary):hover { background: var(--fbs-tint) !important; }
html.fbs-web-theme :is(.btn-secondary,.btn-outline-secondary) { background: var(--fbs-raised) !important; color: var(--fbs-muted) !important; border-color: var(--fbs-line) !important; }
html.fbs-web-theme .badge { border-radius: 6px; font-weight: 600; font-size: 11px; line-height: 15px; padding: 3px 7px; }
html.fbs-web-theme :is(.badge-primary,.bg-primary) { background: var(--fbs-cta) !important; color: var(--fbs-cta-ink) !important; }
html.fbs-web-theme :is(.badge-light-primary,.bg-light-primary,.alert-primary) { background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; }
html.fbs-web-theme :is(.badge-light-info,.bg-light-info,.alert-info) { background: var(--fbs-blue-bg) !important; color: var(--fbs-blue-ink) !important; }
html.fbs-web-theme :is(.badge-light-success,.bg-light-success,.alert-success) { background: var(--fbs-teal-bg) !important; color: var(--fbs-teal-ink) !important; }
html.fbs-web-theme :is(.badge-light-warning,.bg-light-warning,.alert-warning) { background: var(--fbs-amber-bg) !important; color: var(--fbs-amber-ink) !important; }
html.fbs-web-theme :is(.badge-light-danger,.bg-light-danger,.alert-danger) { background: var(--fbs-rose-bg) !important; color: var(--fbs-rose-ink) !important; }
html.fbs-web-theme :is(.nav-pills .nav-link.active,.pagination .page-item.active .page-link) { background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; box-shadow: none !important; }
html.fbs-web-theme .nav-tabs .nav-link.active { color: var(--fbs-accent) !important; border-color: var(--fbs-accent) !important; }
html.fbs-web-theme :is(.page-link,.nav-link) { color: var(--fbs-muted); }
html.fbs-web-theme .page-link { background: var(--fbs-raised) !important; }
html.fbs-web-theme .custom-control-input:checked ~ .custom-control-label::before { background: var(--fbs-accent) !important; border-color: var(--fbs-accent) !important; }
html.fbs-web-theme :is(.progress,.avatar) { background-color: var(--fbs-raised); }

/* Familiar desktop data tables with quieter dividers and precise alignment. */
html.fbs-web-theme .table { color: var(--fbs-ink) !important; font-size: 13px; }
html.fbs-web-theme .table :is(th,td) { border-color: var(--fbs-line) !important; padding: 12px 16px; vertical-align: middle; }
html.fbs-web-theme .table thead th { background: var(--fbs-canvas) !important; color: var(--fbs-muted) !important; font-size: 10px; font-weight: 600; line-height: 15px; letter-spacing: .05em; }
html.fbs-web-theme .table-striped tbody tr:nth-of-type(odd) { background: var(--fbs-canvas) !important; }
html.fbs-web-theme .table-hover tbody tr:hover { background: var(--fbs-tint) !important; color: var(--fbs-ink) !important; }
html.fbs-web-theme .table :is(.text-right,[data-fbs-field="purchase_price"],[data-fbs-field="final_total"]) { font-variant-numeric: tabular-nums; }
html.fbs-web-theme .table .btn { min-height: 30px; padding: 5px 9px; }
html.fbs-web-theme .table .img-thumbnail { width: 40px; height: 40px; object-fit: contain; border-radius: 8px; border-color: var(--fbs-line); }
html.fbs-web-theme .table .b-table-empty-row td { color: var(--fbs-muted); padding: 24px 16px; }
html.fbs-web-theme .table .badge-primary { background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; }
html.fbs-web-theme .table .badge-success { background: var(--fbs-teal-bg) !important; color: var(--fbs-teal-ink) !important; }
html.fbs-web-theme .table .badge-info { background: var(--fbs-blue-bg) !important; color: var(--fbs-blue-ink) !important; }
html.fbs-web-theme .table .badge-warning { background: var(--fbs-amber-bg) !important; color: var(--fbs-amber-ink) !important; }
html.fbs-web-theme .table .badge-danger { background: var(--fbs-rose-bg) !important; color: var(--fbs-rose-ink) !important; }
html.fbs-web-theme .content-body .text-right:has(> .columnVisibility) { display: flex; justify-content: flex-end; align-items: center; gap: 6px; }
html.fbs-web-theme .content-body .text-right:has(> .columnVisibility) > * { margin: 0 !important; }

/* Inputs, searchable selects, date controls, dialogs and step navigation. */
html.fbs-web-theme :is(.form-control,.custom-select,.vs__dropdown-toggle,.input-group-text) { background: var(--fbs-surface) !important; border: 1px solid var(--fbs-line) !important; color: var(--fbs-ink) !important; border-radius: 10px; font-size: 13px; min-height: 36px; }
html.fbs-web-theme :is(.form-control,.vs__dropdown-toggle):focus-within { border-color: var(--fbs-accent) !important; box-shadow: 0 0 0 3px var(--fbs-focus) !important; }
html.fbs-web-theme :is(input,textarea)::placeholder { color: var(--fbs-muted) !important; opacity: .65; }
html.fbs-web-theme :is(.col-form-label,.form-group > label) { color: var(--fbs-ink) !important; font-size: 12px; line-height: 18px; font-weight: 600; }
html.fbs-web-theme .content-body label { color: var(--fbs-ink) !important; font-size: 12px; line-height: 18px; font-weight: 600; }
html.fbs-web-theme :is(.vs__selected,.dropdown-item) { color: var(--fbs-ink) !important; }
html.fbs-web-theme .vs__selected { background-color: transparent; border-color: var(--fbs-line); }
html.fbs-web-theme :is(.vs__dropdown-option--highlight,.dropdown-item:hover,.dropdown-item:focus) { background: var(--fbs-tint) !important; color: var(--fbs-ink) !important; }
html.fbs-web-theme :is(.dropdown-menu,.vs__dropdown-menu) { border-radius: 12px; padding: 6px; }
html.fbs-web-theme .dropdown-item { padding: 8px 10px; border-radius: 7px; font-size: 13px; }
html.fbs-web-theme .vs__open-indicator { fill: var(--fbs-muted); }
html.fbs-web-theme .modal-header { border-radius: 16px 16px 0 0; }
html.fbs-web-theme :is(.modal-header,.modal-footer) { background: var(--fbs-surface) !important; }
html.fbs-web-theme .modal-backdrop { background: #12110f; }
html.fbs-web-theme .vue-form-wizard .wizard-icon-circle { border-color: var(--fbs-line) !important; color: var(--fbs-muted) !important; background: var(--fbs-canvas) !important; box-shadow: none !important; }
html.fbs-web-theme body .content-body .vue-form-wizard { background: var(--fbs-surface) !important; border: 1px solid var(--fbs-line); border-radius: 16px; }
html.fbs-web-theme .vue-form-wizard :is(.wizard-icon-circle,.wizard-icon-container) { border-radius: 10px !important; }
html.fbs-web-theme .vue-form-wizard .wizard-icon-container { background: transparent !important; }
html.fbs-web-theme .vue-form-wizard .wizard-icon { color: var(--fbs-muted) !important; }
html.fbs-web-theme .vue-form-wizard li.active .wizard-icon { color: var(--fbs-accent) !important; }
html.fbs-web-theme .vue-form-wizard li.active .wizard-icon-circle { background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; border-color: var(--fbs-accent) !important; }
html.fbs-web-theme .vue-form-wizard .stepTitle { color: var(--fbs-muted) !important; }
html.fbs-web-theme .vue-form-wizard li.active .stepTitle { color: var(--fbs-ink) !important; }
html.fbs-web-theme .vue-form-wizard .wizard-progress-bar { background: var(--fbs-accent) !important; }
html.fbs-web-theme .custom-file-label { background: var(--fbs-surface) !important; border-color: var(--fbs-line) !important; color: var(--fbs-muted) !important; }
html.fbs-web-theme .custom-file-label::after { background: var(--fbs-raised) !important; border-color: var(--fbs-line) !important; color: var(--fbs-muted) !important; }
html.fbs-web-theme .content-body :is(.ql-toolbar.ql-snow,.ql-container.ql-snow) { background: var(--fbs-surface) !important; border-color: var(--fbs-line) !important; }

/* Chart typography and the former purple primary series follow the family
   palette; other series retain their distinct operational colors. */
html.fbs-web-theme :is(.apexcharts-text,.apexcharts-tooltip,.apexcharts-legend-text) { font-family: var(--fbs-font) !important; color: var(--fbs-muted) !important; }
html.fbs-web-theme .apexcharts-text { fill: var(--fbs-muted) !important; }
html.fbs-web-theme .apexcharts-gridline { stroke: var(--fbs-line) !important; }
html.fbs-web-theme .apexcharts-svg [stroke="#7367f0" i] { stroke: var(--fbs-accent) !important; }
html.fbs-web-theme .apexcharts-svg [fill="#7367f0" i] { fill: var(--fbs-accent) !important; }
html.fbs-web-theme .apexcharts-legend-marker[style*="115, 103, 240"] { background: var(--fbs-accent) !important; }
/* ApexCharts puts !important on inline marker colors. A matching circular
   surface keeps the legend aligned with its styled primary SVG series. */
html.fbs-web-theme .apexcharts-legend-marker[style*="115, 103, 240"]::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: var(--fbs-accent); }
html.fbs-web-theme .apexcharts-tooltip { background: var(--fbs-surface) !important; border-color: var(--fbs-line) !important; border-radius: 10px; }
html.fbs-web-theme .apexcharts-tooltip-title { background: var(--fbs-canvas) !important; border-color: var(--fbs-line) !important; }

/* Auth and footer use the same local type and quiet surfaces. */
html.fbs-web-theme .auth-wrapper { background: var(--fbs-canvas) !important; }
html.fbs-web-theme :is(.auth-bg,.auth-inner) { background-color: var(--fbs-surface) !important; }
html.fbs-web-theme :is(.fbs-login-title,.fbs-login-brand) { color: var(--fbs-ink) !important; }
html.fbs-web-theme .fbs-login-eyebrow { display: none; }
html.fbs-web-theme footer.footer { background: transparent !important; font-size: 11px; }
html.fbs-web-theme ::-webkit-scrollbar { width: 6px; height: 6px; }
html.fbs-web-theme ::-webkit-scrollbar-thumb { background: var(--fbs-line); border-radius: 8px; }
html.fbs-web-theme .ps__thumb-y { background: var(--fbs-line) !important; }
@media (max-width: 767px) {
  html.fbs-web-theme .content-header-title { font-size: 22px; line-height: 28px; }
  html.fbs-web-theme .card :is(.card-header,.card-body) { padding: 16px; }
  html.fbs-web-theme .btn { min-height: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  html.fbs-web-theme :is(.btn,.card,.main-menu .navigation a) { transition: none !important; }
}

/* The same foundations reach the packaged mobile entry and every shared
   form/report/detail view, including controls portalled outside content-body. */
html.fbs-native {
  --fbs-font: var(--mobile-font, 'Fuelz Geist', system-ui, sans-serif);
  --fbs-ink: var(--mobile-ink, #12110f); --fbs-muted: var(--mobile-muted, #6b6b63);
  --fbs-line: var(--mobile-line, #e4e2da); --fbs-canvas: var(--mobile-canvas, #f3f2ed);
  --fbs-surface: var(--mobile-surface, #fff); --fbs-raised: var(--mobile-raised, #eceae4);
  --fbs-tint: var(--mobile-tint, #f2fbd0); --fbs-accent: var(--mobile-accent, #52651e);
  --fbs-cta: var(--mobile-cta, #c9f03f); --fbs-cta-ink: var(--mobile-cta-ink, #12110f);
  --fbs-focus: var(--mobile-focus, rgba(82,101,30,.18));
  --fbs-amber-bg: var(--tone-amber-card, #fffbf2); --fbs-amber-ink: var(--tone-amber-ink, #8b681d);
  --fbs-blue-bg: var(--tone-blue-card, #f7f9ff); --fbs-blue-ink: var(--tone-blue-ink, #37598c);
  --fbs-teal-bg: var(--tone-teal-card, #f2fbf8); --fbs-teal-ink: var(--tone-teal-ink, #247467);
  --fbs-violet-bg: var(--tone-violet-card, #faf7ff); --fbs-violet-ink: var(--tone-violet-ink, #705091);
  --fbs-rose-bg: var(--tone-rose-card, #fff7f9); --fbs-rose-ink: var(--tone-rose-ink, #995571);
  --primary: var(--fbs-accent); --font-family-sans-serif: var(--fbs-font);
}
html:is(.fbs-web-theme,.fbs-native) :is(.flatpickr-calendar,.swal2-popup,.popover,.toast,.b-sidebar,.vue-treeselect__menu,.mx-datepicker-popup) {
  font-family: var(--fbs-font) !important; background: var(--fbs-surface) !important;
  color: var(--fbs-ink) !important; border: 1px solid var(--fbs-line); border-radius: 14px;
  box-shadow: 0 8px 28px rgba(18,17,15,.10);
}
html:is(.fbs-web-theme,.fbs-native) :is(.list-group-item,.accordion .card-header,.modal-content,.vs__dropdown-menu,.dropdown-menu) {
  background-color: var(--fbs-surface) !important; color: var(--fbs-ink) !important;
  border-color: var(--fbs-line) !important; font-family: var(--fbs-font) !important;
}
html:is(.fbs-web-theme,.fbs-native) :is(.vs__selected,.vs__dropdown-option,.dropdown-item,.custom-file-label,.input-group-text) { font-family: var(--fbs-font) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.dropdown-item.active,.vs__dropdown-option--selected,.vs__dropdown-option--highlight,.list-group-item.active) {
  background: var(--fbs-tint) !important; color: var(--fbs-accent) !important; border-color: var(--fbs-line) !important;
}
html:is(.fbs-web-theme,.fbs-native) .flatpickr-calendar :is(.flatpickr-months,.flatpickr-month,.flatpickr-weekdays,.flatpickr-weekday,.flatpickr-time) {
  background: var(--fbs-surface) !important; color: var(--fbs-ink) !important;
}
html:is(.fbs-web-theme,.fbs-native) .flatpickr-calendar :is(input,select,.flatpickr-current-month,.numInputWrapper,.flatpickr-day) { color: var(--fbs-ink) !important; font-family: var(--fbs-font) !important; }
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day.today { border-color: var(--fbs-accent) !important; }
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day:is(.selected,.startRange,.endRange) {
  background: var(--fbs-cta) !important; border-color: var(--fbs-cta) !important; color: var(--fbs-cta-ink) !important;
}
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day.inRange {
  background: var(--fbs-tint) !important; border-color: var(--fbs-tint) !important;
  box-shadow: -5px 0 0 var(--fbs-tint), 5px 0 0 var(--fbs-tint);
}
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange) { background: var(--fbs-raised) !important; border-color: var(--fbs-raised) !important; }
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day:is(.flatpickr-disabled,.prevMonthDay,.nextMonthDay) { color: var(--fbs-muted) !important; }
html:is(.fbs-web-theme,.fbs-native) .flatpickr-day.flatpickr-disabled { opacity: .4; }
html:is(.fbs-web-theme,.fbs-native) .flatpickr-months :is(.flatpickr-prev-month,.flatpickr-next-month) svg { fill: var(--fbs-muted) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.swal2-title,.swal2-html-container,.popover-header,.modal-title) { color: var(--fbs-ink) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.swal2-input,.swal2-textarea,.swal2-select) { background: var(--fbs-surface) !important; border-color: var(--fbs-line) !important; color: var(--fbs-ink) !important; }
html:is(.fbs-web-theme,.fbs-native) .swal2-styled.swal2-confirm:not(.btn-danger) { background: var(--fbs-cta); color: var(--fbs-cta-ink); box-shadow: none !important; }
html:is(.fbs-web-theme,.fbs-native) .swal2-styled.swal2-cancel { background: var(--fbs-raised) !important; color: var(--fbs-ink) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.swal2-actions .btn,.swal2-styled) { border-radius: 10px !important; font-family: var(--fbs-font); }
html:is(.fbs-web-theme,.fbs-native) .nav-tabs .nav-link.active::after { background: var(--fbs-accent) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.custom-checkbox,.custom-switch) .custom-control-input:checked ~ .custom-control-label::before { background: var(--fbs-accent) !important; border-color: var(--fbs-accent) !important; }
html:is(.fbs-web-theme,.fbs-native) .vue-form-wizard :is(.wizard-progress-bar,.wizard-icon-circle.checked) { background: var(--fbs-accent) !important; border-color: var(--fbs-accent) !important; }
html:is(.fbs-web-theme,.fbs-native) :is(.form-control,.vs__dropdown-toggle,.custom-select,.custom-file-label):disabled { background: var(--fbs-raised) !important; color: var(--fbs-muted) !important; }
html.fbs-native .table :is(th,td) { border-color: var(--fbs-line) !important; }
html.fbs-native .table thead th { background: var(--fbs-raised) !important; color: var(--fbs-muted) !important; }
html.fbs-native :is(.nav-pills .nav-link.active,.nav-tabs .nav-link.active) { color: var(--fbs-accent) !important; box-shadow: none !important; }
html.fbs-native .nav-pills .nav-link.active { background: var(--fbs-tint) !important; }
html.fbs-native :is(.content-body,.modal-content) :is(.card,.card-body,.card-header,.card-footer) { border-color: var(--fbs-line) !important; }
html:is(.fbs-web-theme,.fbs-native)[dir="rtl"] :is(.form-group label,.card-title,.modal-title,.swal2-html-container) { text-align: start; }
html:is(.fbs-web-theme,.fbs-native)[dir="rtl"] :is(input[type="email"],input[type="url"],input[type="tel"],.fbs-numeric,.fbs-reference) { direction: ltr; unicode-bidi: isolate; }
html:is(.fbs-web-theme,.fbs-native)[dir="rtl"] :is(h1,h2,h3,h4,h5,h6,.menu-title,.navigation-header,.fbs-tabbar .lbl,.fpm-kicker,.hhero-overline) { letter-spacing: normal !important; }
html:is(.fbs-web-theme,.fbs-native) .main-menu :is(.menu-title,.navigation-header) { font-family: var(--fbs-font) !important; }
html:is(.fbs-web-theme,.fbs-native)[dir="rtl"] .flatpickr-time { direction: ltr; }
html.fbs-native[dir="rtl"] :is(.fbs-sheet,.fbs-home-hero,.fbs-home-grid,.fbs-week-card,.fbs-stock-card,.fbs-network-stock-card,.fbs-fuel-sales-card,.fpm-head,.fpm-filters,.fpm-result) { text-align: start; }
html.fbs-native[dir="rtl"] .fbs-sheet .fr-mod { padding-inline-start: 12px; padding-inline-end: 0; }
html.fbs-native[dir="rtl"] .fbs-sheet .fr-mod::before { left: auto; right: 0; }
html.fbs-native[dir="rtl"] #fbs-home .hw-head button.home-utility { margin: -4px 0 0 -4px; }
html.fbs-native #fbs-onboard { font-family: var(--fbs-font) !important; }
html.fbs-native #fbs-pdf-overlay { font-family: var(--fbs-font); }
html.fbs-native #fbs-pdf-overlay > div:first-child { border-bottom: 1px solid var(--fbs-line); }

html.fbs-native .fuelz-web-brand .fuelz-brand-dark { display: none; }
html.fbs-native.fbs-dark .fuelz-web-brand .fuelz-brand-light { display: none; }
html.fbs-native.fbs-dark .fuelz-web-brand .fuelz-brand-dark { display: block; }
html.fbs-native #fbs-gate .fuelz-web-brand { width: 220px; margin-inline: auto; }
html.fbs-native[dir="rtl"] table.fbs-cardtable > tbody > tr.fbs-compact-record > td.fbs-summary-title {
  text-align: start !important; padding: 12px 10px 8px 58px !important;
}
html.fbs-native[dir="rtl"] .fbs-record-toggle { right: auto !important; left: 10px !important; }
html.fbs-native[dir="rtl"] table.fbs-cardtable > tbody > tr.fbs-compact-record > td.fbs-summary-cell:not(.fbs-summary-title) {
  justify-content: space-between !important;
}
html.fbs-native[dir="rtl"] table.fbs-cardtable > tbody > tr.fbs-compact-record > td.fbs-summary-cell::before { text-align: right !important; }
html:is(.fbs-web-theme,.fbs-native) .fbs-customizer-close {
  display: inline-grid; place-items: center; flex: none; width: 44px; height: 44px;
  padding: 0; border: 0; border-radius: 10px; background: transparent; color: var(--fbs-muted); cursor: pointer;
}
html:is(.fbs-web-theme,.fbs-native) .fbs-customizer-close:hover { background: var(--fbs-raised); color: var(--fbs-ink); }
