/* LGFT v5.60.1.9.8.3 — BAT UI Standardization, Financial Controls & Responsive Action Layout Lock
   Screen-only. Scoped to BAT Fuel UI classes/routes. Does not alter print/PDF document layouts. */

:root{
  --v5601983-accent:#e2b34f;
  --v5601983-accent-strong:#f0c45e;
  --v5601983-text:#f6f8fb;
  --v5601983-muted:#b7c6d8;
  --v5601983-line:#315a7d;
  --v5601983-panel:#0b2238;
  --v5601983-input:#0d2841;
  --v5601983-danger:#d76464;
}

@media screen{
  /* Compact, uniform BAT Fuel buttons. */
  .df-btn,
  a.df-btn,
  button.df-btn,
  input.df-btn{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-width:0!important;
    min-height:34px!important;
    height:auto!important;
    margin:0!important;
    padding:6px 11px!important;
    border-radius:7px!important;
    font-size:12.5px!important;
    line-height:1.15!important;
    font-weight:750!important;
    text-align:center!important;
    white-space:normal!important;
    vertical-align:middle!important;
    text-decoration:none!important;
  }
  .df-btn.df-small,
  .df-small.df-btn{
    min-height:30px!important;
    padding:5px 9px!important;
    font-size:12px!important;
  }
  .df-btn:disabled,
  .df-btn[aria-disabled="true"],
  .df-btn.disabled{
    opacity:.58!important;
    cursor:not-allowed!important;
    filter:saturate(.65)!important;
  }

  /* Compact action rows on desktop. */
  .df-actions,
  .df-form-actions,
  .bf552-form-actions,
  .bf556-actions,
  .bf556-commit,
  .bf573-actions,
  .bf558-actions,
  .bf2-doc-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
  }
  .df-actions>.df-btn,
  .df-form-actions>.df-btn,
  .bf558-actions>.df-btn,
  .bf2-doc-actions>.df-btn{
    width:auto!important;
    flex:0 1 auto!important;
  }

  /* Inputs remain readable without being oversized on desktop. */
  .df-form input:not([type="checkbox"]):not([type="radio"]),
  .df-form select,
  .bf558-form input:not([type="checkbox"]):not([type="radio"]),
  .bf558-form select,
  .bf5575-email input{
    box-sizing:border-box!important;
    min-width:0!important;
    min-height:34px!important;
    height:auto!important;
    padding:6px 9px!important;
    font-size:12.5px!important;
    line-height:1.25!important;
  }

  /* Invoice action column: compact 2-column desktop grid, no overlap. */
  .bf5575-actions{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    min-width:260px!important;
    align-items:stretch!important;
  }
  .bf5575-actions>.df-btn,
  .bf5575-actions .df-btn{
    width:100%!important;
    min-width:0!important;
    min-height:32px!important;
    padding:5px 8px!important;
    font-size:12px!important;
  }
  .bf5575-email{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 92px!important;
    gap:6px!important;
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    align-items:stretch!important;
  }
  .bf5575-email input{
    width:100%!important;
    min-width:0!important;
    min-height:32px!important;
    padding:5px 8px!important;
    font-size:12px!important;
  }
  .bf5575-email .df-btn{
    width:100%!important;
    min-width:0!important;
  }

  /* v5.60.1.9.8.3 finance filter controls. */
  .v560198-period .bf558-card-head{margin-bottom:10px!important}
  .v5601983-period-form{
    display:grid!important;
    grid-template-columns:minmax(135px,.7fr) minmax(170px,.9fr) minmax(165px,1fr) minmax(165px,1fr)!important;
    gap:8px 10px!important;
    align-items:end!important;
    width:100%!important;
  }
  .v5601983-period-form label{
    display:grid!important;
    gap:5px!important;
    min-width:0!important;
  }
  .v5601983-period-form label>span{
    color:var(--v5601983-text)!important;
    font-size:12.5px!important;
    font-weight:800!important;
  }
  .v5601983-period-form select,
  .v5601983-period-form input[type="date"]{
    width:100%!important;
    min-width:0!important;
    min-height:34px!important;
    color:var(--v5601983-text)!important;
    background:var(--v5601983-input)!important;
    border:1px solid var(--v5601983-line)!important;
    border-radius:7px!important;
    padding:6px 9px!important;
    color-scheme:dark!important;
  }
  .v5601983-range-fields{
    display:contents!important;
  }
  .v5601983-period-actions{
    grid-column:1/-1!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    align-items:center!important;
  }
  .v5601983-period-actions .df-btn{min-width:110px!important}
  .v5601983-period-note{
    margin-top:7px!important;
    color:var(--v5601983-muted)!important;
    font-size:11.5px!important;
    line-height:1.35!important;
  }

  /* Readable management charts on dark BAT theme. */
  .v5601983-chart-card{overflow:hidden!important}
  .v5601983-chart-scroll{
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 0 4px!important;
    scrollbar-width:thin!important;
  }
  .v5601983-chart{
    display:block!important;
    width:100%!important;
    min-width:760px!important;
    height:auto!important;
    color:var(--v5601983-text)!important;
  }
  .v5601983-chart .grid-line{
    stroke:rgba(183,198,216,.28)!important;
    stroke-width:1!important;
  }
  .v5601983-chart .axis-line{
    stroke:rgba(246,248,251,.62)!important;
    stroke-width:1!important;
  }
  .v5601983-chart .bar{
    fill:var(--v5601983-accent)!important;
    opacity:.92!important;
  }
  .v5601983-chart .bar:hover{fill:var(--v5601983-accent-strong)!important;opacity:1!important}
  .v5601983-chart text{
    fill:var(--v5601983-text)!important;
    font-family:inherit!important;
  }
  .v5601983-chart .axis-label,
  .v5601983-chart .month-label{
    fill:var(--v5601983-muted)!important;
    font-size:11px!important;
  }
  .v5601983-chart .value-label{
    fill:var(--v5601983-text)!important;
    font-size:10.5px!important;
    font-weight:800!important;
  }
  .v5601983-chart-empty{
    padding:18px 0!important;
    color:var(--v5601983-muted)!important;
    text-align:center!important;
  }

  /* Prevent button/input overflow in cards and table cells. */
  .df-card,.bf558-card,.df-table td,.df-table th,.df-admin-row{min-width:0!important}
  .df-table td .df-btn,.df-table th .df-btn{max-width:100%!important}
  .df-inline-form{gap:6px!important}

  /* Tablets: keep controls compact but allow wrapping. */
  @media(max-width:1100px){
    .v5601983-period-form{grid-template-columns:1fr 1fr!important}
    .v5601983-period-form .v5601983-mode{grid-column:1/-1!important}
    .bf5575-actions{min-width:220px!important;grid-template-columns:1fr!important}
    .bf5575-email{grid-template-columns:1fr!important}
  }

  /* Mobile: preserve 44px touch targets while reducing visual bulk from the old 48px rule. */
  @media(max-width:820px){
    html body.bf5583-mobile-ready :where(.df-btn,a.df-btn,button.df-btn,input.df-btn),
    body :where(.df-btn,a.df-btn,button.df-btn,input.df-btn){
      min-height:44px!important;
      padding:9px 11px!important;
      font-size:13px!important;
      line-height:1.2!important;
    }
    html body.bf5583-mobile-ready :where(.df-actions,.df-form-actions,.bf552-form-actions,.bf556-actions,.bf556-commit,.bf573-actions,.bf558-actions,.bf2-doc-actions),
    body :where(.df-actions,.df-form-actions,.bf558-actions,.bf2-doc-actions){
      display:grid!important;
      grid-template-columns:1fr!important;
      gap:7px!important;
      width:100%!important;
      align-items:stretch!important;
    }
    html body.bf5583-mobile-ready :where(.df-actions .df-btn,.df-form-actions .df-btn,.bf558-actions .df-btn,.bf2-doc-actions .df-btn),
    body :where(.df-actions .df-btn,.df-form-actions .df-btn,.bf558-actions .df-btn,.bf2-doc-actions .df-btn){
      width:100%!important;
      min-width:0!important;
    }
    .v5601983-period-form{
      grid-template-columns:1fr!important;
      gap:8px!important;
    }
    .v5601983-period-form .v5601983-mode,
    .v5601983-period-form label,
    .v5601983-period-actions{
      grid-column:auto!important;
    }
    html body.bf5583-mobile-ready .v5601983-period-form :where(input[type="date"],select),
    .v5601983-period-form :where(input[type="date"],select){
      min-height:44px!important;
      padding:9px 10px!important;
      font-size:16px!important;
    }
    .v5601983-period-actions{display:grid!important;grid-template-columns:1fr!important}
    .v5601983-period-actions .df-btn{width:100%!important;min-width:0!important}
    .bf5575-actions{grid-template-columns:1fr!important;min-width:0!important;gap:7px!important}
    .bf5575-actions .df-btn{min-height:44px!important;font-size:13px!important;padding:9px 10px!important}
    .bf5575-email{grid-template-columns:1fr!important;gap:7px!important}
    .bf5575-email input{min-height:44px!important;font-size:16px!important;padding:9px 10px!important}
    .v5601983-chart{min-width:680px!important}
  }

  @media(max-width:480px){
    .v5601983-chart{min-width:620px!important}
  }
}
