/* AYAN AIR staff panel, compact (AYAN_ADMIN_COMPACT=true, with style D "Calm"), 2026-10-09.
   The user's note: "only make the pages shorter, don't touch the design". Most staff pages fit one 1440x800 screen,
   like Reports > Transactions. Only vertical room changes: page and card paddings, gaps, the navy title card, tab strips,
   table rows, section heads, a few large headings. Colours, fonts, menu, buttons, tabs, names and pages are unchanged.
   Loaded after the style D sheets; every rule sits under <html class="ay-compact"> (set only when the switch is on). */

/* ---------- page: less room above, below and between the blocks ---------- */
html.ay-compact .fi-panel-admin .fi-main { padding-top: 14px !important; padding-bottom: 24px !important; }
html.ay-compact .fi-panel-admin .fi-page-header-main-ctn { row-gap: 14px !important; }
html.ay-compact .fi-panel-admin .fi-page-main { row-gap: 14px !important; gap: 14px !important; }
html.ay-compact .fi-panel-admin .fi-page-content { row-gap: 14px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc.fi-sc-has-gap,
html.ay-compact .fi-panel-admin .fi-page-content > .fi-grid.fi-sc-has-gap { gap: 14px !important; }

/* ---------- the navy title card: same card, slimmer ---------- */
html.ay-compact .fi-panel-admin .fi-header { padding-top: 11px !important; padding-bottom: 12px !important; min-height: 64px; }
html.ay-compact .fi-panel-admin .fi-header::after { margin: -11px 0 -12px; background-size: 360px 60px; }   /* the flight path at 6/7 size fits the slimmer card */
html.ay-compact .fi-panel-admin .fi-header > div:first-child { gap: 2px; }
html.ay-compact .fi-panel-admin .fi-header-heading { font-size: 22px !important; }
html.ay-compact .fi-panel-admin .fi-header-subheading { font-size: 13px !important; }

/* ---------- tab strips joined under the title card (lists and reports): 54 -> 42px ---------- */
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc > .fi-grid-col:first-child > .fi-sc-component > .fi-sc-tabs { margin-top: -14px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc > .fi-grid-col:first-child > .fi-sc-component > .fi-sc-tabs > .fi-tabs { height: 42px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc > .fi-grid-col:first-child .fi-sc-tabs > .fi-tabs > .fi-tabs-item { height: 42px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fz-report-tabs { margin: -14px 0 0 !important; }
html.ay-compact .fi-panel-admin .fz-report-tabs .fi-tabs { height: 42px; }
html.ay-compact .fi-panel-admin .fz-report-tabs .fi-tabs-item { height: 42px; }
/* the list search on the right of the tab strip follows the strip (42px strip + 14px gap) */
html.ay-compact .fi-panel-admin .fi-resource-list-records-page:has(.fi-page-content > .fi-sc > .fi-grid-col:first-child .fi-sc-tabs) .fi-page-content > .fi-sc > .fi-grid-col:nth-child(2) .fi-ta-ctn > .fi-ta-main > .fi-ta-header-ctn > .fi-ta-header-toolbar:not(:has(.fi-ta-actions > *)) {
    top: -56px; height: 42px; }
html.ay-compact .fi-panel-admin .fi-ta-search-field .fi-input-wrp { height: 34px; min-height: 34px !important; }
/* other tabs (inside a page) */
html.ay-compact .fi-panel-admin .fi-tabs-item { padding-block: 7px !important; }

/* ---------- tables: rows like Transactions (about 38px) ---------- */
html.ay-compact .fi-panel-admin .fi-ta-header { min-height: 40px; }
html.ay-compact .fi-panel-admin .fi-ta-header-toolbar { padding-block: 6px !important; }
html.ay-compact .fi-panel-admin :is(.fi-ta-header-cell, .fi-ta-actions-header-cell, .fi-ta-empty-header-cell) { height: 34px; }
html.ay-compact .fi-panel-admin .fi-ta-cell { height: 38px; }
html.ay-compact .fi-panel-admin .fi-ta-text,
html.ay-compact .fi-panel-admin .fi-ta-col > .fi-ta-text-item { padding-block: 4px !important; }
html.ay-compact .fi-panel-admin :is(.fi-ta-icon, .fi-ta-icon-item) { padding-block: 4px; }
html.ay-compact .fi-panel-admin .fi-ta-row > td:has(> .fi-ta-actions) { padding-block: 2px; }
html.ay-compact .fi-panel-admin .fi-ta-row.fi-ta-row:is(.fi-ta-summary-row, .fi-ta-summary-header-row) > :is(td, th) { height: 34px; }
html.ay-compact .fi-panel-admin .fi-ta-empty-state { padding-block: 20px !important; }
html.ay-compact .fi-panel-admin .fi-pagination { padding-block: 6px !important; min-height: 44px; }
html.ay-compact .fi-panel-admin .fi-pagination-item-btn { height: 30px; min-width: 30px; }
html.ay-compact .fi-panel-admin .fi-pagination .fi-input-wrp { height: 30px; min-height: 30px !important; }
html.ay-compact .fi-panel-admin .fi-pagination .fi-select-input { height: 27px !important; line-height: 27px !important; }
html.ay-compact .fi-panel-admin .fi-badge { min-height: 21px; }
/* two-line cells (name + e-mail) and wrapped text: the body line height, the second line right under the first */
html.ay-compact .fi-panel-admin .fi-ta-text-item { line-height: 1.4; }
html.ay-compact .fi-panel-admin .fi-ta-text.fi-ta-text-has-descriptions { gap: 1px; }

/* ---------- sections (cards): slimmer head and inner padding ---------- */
html.ay-compact .fi-panel-admin .fi-section:not(.fi-section-not-contained) > .fi-section-header { min-height: 40px; padding-block: 6px !important; }
html.ay-compact .fi-panel-admin .fi-section:not(.fi-section-not-contained):not(.fi-divided) > .fi-section-content-ctn > .fi-section-content { padding-top: 12px !important; padding-bottom: 12px !important; }
html.ay-compact .fi-panel-admin .fi-section-footer { padding-block: 8px !important; }
html.ay-compact .fi-panel-admin .fi-section-header-text-ctn { row-gap: 1px; gap: 1px; }
html.ay-compact .fi-panel-admin .fi-wi-stats-overview-stat { padding-block: 10px; }

/* ---------- forms: less room between fields, 34px fields ---------- */
html.ay-compact .fi-panel-admin .fi-main :is(.fi-section, form) .fi-sc.fi-sc-has-gap { row-gap: 12px; }
html.ay-compact .fi-panel-admin .fi-fo-component-ctn { gap: 12px; }
html.ay-compact .fi-panel-admin .fi-main form.fi-sc-form { gap: 14px; }
html.ay-compact .fi-panel-admin .fi-main .fi-sc-tabs-tab.fi-active { margin-top: 12px; }
html.ay-compact .fi-panel-admin .fi-main .fi-input-wrp .fi-input { padding-block: .32rem; }
html.ay-compact .fi-panel-admin .fi-main .fi-input-wrp { min-height: 34px; }
html.ay-compact .fi-panel-admin .fi-fo-field-wrp { row-gap: 5px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc > .fi-grid-col > .fi-sc-component > form.fi-sc-form:not(:has(.fi-section)) > .fi-sc:first-child { padding-block: 12px; }
html.ay-compact .fi-panel-admin .fi-page-content > .fi-sc > .fi-grid-col > .fi-sc-component > form.fi-sc-form:has(.fi-section) .fi-sc-component:has(> .fi-fo-field):not(.fi-section *) { padding-block: 12px; }
html.ay-compact .fi-panel-admin .fi-page-content .fi-sc-component > div:not([class]) > .fi-grid.fi-sc:has(> .fi-grid-col .fi-in-entry):not(.fi-section *):not(.fi-modal *) { padding-block: 10px 12px; }
html.ay-compact .fi-panel-admin .fi-fo-repeater-item-header { padding-block: 8px; }
html.ay-compact .fi-panel-admin .fi-fo-repeater-item-content { padding-block: 12px; }

/* ---------- staff home (CalmHome) ---------- */
html.ay-compact .cd-page { gap: 14px; }
html.ay-compact .cd-hero-top { padding-block: 18px 20px; }
html.ay-compact .cd-greet { gap: 3px; }
html.ay-compact .cd-greet h1 { font-size: 23px; }
html.ay-compact .cd-arc { top: 0; }
html.ay-compact .cd-findbox { gap: 6px; }
html.ay-compact .cd-sbar { height: 46px; }
html.ay-compact .cd-sbar .cd-btn { height: 36px; }
html.ay-compact .cd-kpi { padding-block: 12px 13px; }
html.ay-compact .cd-kpi + .cd-kpi::before { top: 14px; bottom: 14px; }
html.ay-compact .cd-kpi .val { margin-top: 6px; font-size: 23px; }
html.ay-compact .cd-kpi .sub { margin-top: 3px; }
html.ay-compact .cd-two { gap: 16px; }
html.ay-compact .cd-head { height: 40px; }
html.ay-compact .cd-wait .cd-row { height: 52px; }
html.ay-compact .cd-late .cd-row { height: 46px; }
html.ay-compact .cd-foot { height: 38px; }
html.ay-compact .cd-empty { padding-block: 14px; }
html.ay-compact .cd-alerts { gap: 6px; padding-block: 8px; }

/* ---------- report pages (Statement, Transactions, Bookings report, Credit report, Commission) ---------- */
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) { padding-block: 10px 12px; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fz-row { padding-top: 8px; margin-top: 8px !important; }
html.ay-compact .fi-panel-admin .fz-card { padding-top: 9px !important; padding-bottom: 11px !important; }
html.ay-compact .fi-panel-admin :is(.fz-card .fz-value, .fz-value) { margin-top: 3px !important; font-size: 20px !important; }
html.ay-compact .fi-panel-admin .fz-table thead th { padding-block: 7px !important; }
html.ay-compact .fi-panel-admin .fz-table td { padding-block: 6px !important; }
html.ay-compact .fi-panel-admin :is(.fz-rep, .fz-st, .fz-tbl, .br-table) :is(td, th) { padding-block: 6px; }
html.ay-compact .fi-panel-admin .st-strip > div { padding-block: 7px !important; }
html.ay-compact .fi-panel-admin .tx-table td { padding-block: 7px !important; }
/* the filter card above a report: label right on its field, 34px fields, the period buttons in a slimmer row */
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fi-sc.fi-sc-has-gap { row-gap: 8px; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fi-fo-field { row-gap: 4px; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fi-input-wrp { min-height: 34px !important; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) :is(.fi-input, .fi-fo-date-time-picker-display-text-input, .fi-fo-date-time-picker input) { padding-block: .28rem !important; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fi-fo-select-native .fi-select-input { height: 31px !important; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fi-select-input-btn { padding-block: .32rem !important; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fz-row { padding-top: 7px; margin-top: 7px !important; }
html.ay-compact .fi-panel-admin .fi-page-content .fz-noprint:has(> form) .fz-row :is(button, a).fi-btn { height: 30px; min-height: 30px; }

/* Bookings report and Credit report: the figure cards as one slim strip (all in one row where they fit, else the next row);
   same cards and texts, smaller label, value and note. Phones and narrow screens keep the style D grid. */
@media (min-width: 1024px) {
    html.ay-compact .fi-panel-admin :is(.fz-cards.br-cards, .fz-cards:has(> .fz-card > .cr-sub)) {
        display: flex !important; flex-wrap: wrap; grid-template-columns: none !important; }
    html.ay-compact .fi-panel-admin :is(.fz-cards.br-cards, .fz-cards:has(> .fz-card > .cr-sub)) > .fz-card {
        flex: 1 1 0; min-width: min-content; padding: 8px 12px !important; }
    html.ay-compact .fi-panel-admin :is(.fz-cards.br-cards, .fz-cards:has(> .fz-card > .cr-sub)) .fz-label { font-size: 11px !important; line-height: 1.3; white-space: nowrap; }
    html.ay-compact .fi-panel-admin :is(.fz-cards.br-cards, .fz-cards:has(> .fz-card > .cr-sub)) .fz-value { font-size: 16px !important; line-height: 1.3; margin-top: 2px !important; white-space: nowrap; }
    html.ay-compact .fi-panel-admin :is(.fz-cards.br-cards, .fz-cards:has(> .fz-card > .cr-sub)) :is(.br-note, .cr-sub, .fz-muted) { font-size: 11px !important; line-height: 1.3; margin-top: 1px; }
}

/* ---------- Find reservation ---------- */
html.ay-compact .fi-panel-admin .fv { gap: 10px; --fv-obal-y: -63px; }   /* the balance chip stays in the middle of the slimmer title card */
html.ay-compact .fi-panel-admin .fv-obal-row + .fv-find { margin-top: -10px; }
html.ay-compact .fi-panel-admin .fv-find { padding-block: 8px; }
html.ay-compact .fi-panel-admin .fv-find .fi-input-wrp { min-height: 38px !important; }
html.ay-compact .fi-panel-admin .fv-find .fi-input-wrp input.fi-input { height: 36px; }
html.ay-compact .fi-panel-admin .fv-find .fi-btn.fi-btn { min-height: 38px; }
html.ay-compact .fi-panel-admin .fv-hero-top { padding-block: 12px; }
html.ay-compact .fi-panel-admin .fv-acts.fv-groups { padding-block: 8px; }
html.ay-compact .fi-panel-admin .fv-look1 .fv-grp { padding-block: 5px 7px; }
html.ay-compact .fi-panel-admin .fv-grp { gap: 5px; }
html.ay-compact .fi-panel-admin .fv-tabs { padding-block: 4px; }
html.ay-compact .fi-panel-admin .fv-tab { padding-block: 6px; }
html.ay-compact .fi-panel-admin .fv-head { height: 40px; }
html.ay-compact .fi-panel-admin .fv-tbl td { padding-block: 6px; }
html.ay-compact .fi-panel-admin .fv-tbl th { padding-block: 6px; }
html.ay-compact .fi-panel-admin .fv-two, html.ay-compact .fi-panel-admin .fv-cols, html.ay-compact .fi-panel-admin .fv-stack { gap: 12px; }
html.ay-compact .fi-panel-admin .fv-kv { padding-block: 2px 8px; }
html.ay-compact .fi-panel-admin .fv-kv > div { padding-block: 5px; }
html.ay-compact .fi-panel-admin .fv-facts > div { padding-block: 10px; }
html.ay-compact .fi-panel-admin .fv-price td { padding-block: 8px; }
html.ay-compact .fi-panel-admin .fv-price th { padding-block: 7px; }
html.ay-compact .fi-panel-admin .fv-form { padding-block: 12px; }
html.ay-compact .fi-panel-admin .fv-kpis { padding-block: 12px 4px; }
html.ay-compact .fi-panel-admin .fv-kpi { padding-block: 10px; }
html.ay-compact .fi-panel-admin .fv-pc { padding-block: 10px; }

/* ---------- New booking: search results ---------- */
html.ay-compact .fi-panel-admin .fz-band-top { padding-block: 10px; }
html.ay-compact .fi-panel-admin .fz-steps2 > span:not(.dash) { padding-block: 8px; }
html.ay-compact .fi-panel-admin .fz-rhead { margin-top: 0; }
html.ay-compact .fi-panel-admin .fz-rhead h2 { font-size: 1.4rem; }
html.ay-compact .fi-panel-admin .fz-dates button { padding-block: .5rem; }
html.ay-compact .fi-panel-admin .fz-card2-row { padding-block: 10px; }
html.ay-compact .fi-panel-admin .fz-jr { padding-block: 10px; }
html.ay-compact .fi-panel-admin .fz-spage-hd { padding-block: 14px 12px; }
html.ay-compact .fi-panel-admin .fz-spage-bd { padding-block: 14px 16px; }

/* ---------- Accounts > My day / Daily closings (acc-close-*) ---------- */
html.ay-compact .fi-panel-admin .acc-close-mc .mv { margin: 4px 0 7px; }
html.ay-compact .fi-panel-admin .acc-close-tb td { padding-block: 6px; }
html.ay-compact .fi-panel-admin .acc-close-tb th { padding-block: 6px; }
html.ay-compact .fi-panel-admin .acc-close-tb tfoot td { padding-block: 7px; }
html.ay-compact .fi-panel-admin .acc-close-wk .wi { padding-block: 8px; }
html.ay-compact .fi-panel-admin :is(.acc-close-hostep, .acc-close-pstep) { padding-block: 8px; }
html.ay-compact .fi-panel-admin .acc-close-big { padding-block: 9px; }
html.ay-compact .fi-panel-admin .acc-close-none { padding-block: 10px; }
html.ay-compact .fi-panel-admin .acc-close-hrow { padding-block: 7px; }
html.ay-compact .fi-panel-admin .acc-close-act { padding-top: 10px; }
html.ay-compact .fi-panel-admin .acc-close-after { padding-block: 8px 10px; }

/* ---------- narrow screens: the phone keeps its own spacing where style D sets one ---------- */
@media (max-width: 1023px) {
    html.ay-compact .fi-panel-admin .fi-main { padding-top: 12px !important; padding-bottom: 32px !important; }
    html.ay-compact .fi-panel-admin .fi-header { padding-top: 12px !important; padding-bottom: 12px !important; }
    html.ay-compact .fi-panel-admin .fi-resource-list-records-page:has(.fi-page-content > .fi-sc > .fi-grid-col:first-child .fi-sc-tabs) .fi-page-content > .fi-sc > .fi-grid-col:nth-child(2) .fi-ta-ctn > .fi-ta-main > .fi-ta-header-ctn > .fi-ta-header-toolbar:not(:has(.fi-ta-actions > *)) {
        top: auto; height: auto; }
}
@media (max-width: 640px) {
    html.ay-compact .cd-hero-top { padding-block: 16px 18px; }
    html.ay-compact .cd-kpi { padding-block: 10px 12px; }
    /* the home rows grow with their text on the phone (style D: height auto), just with less room around it */
    html.ay-compact .cd-wait .cd-row { height: auto; min-height: 50px; padding-block: 7px; }
    html.ay-compact .cd-late .cd-row { height: auto; padding-block: 7px; }
}
