
/* V438J - Profit & Cost Mobile Professional UI */
@media(max-width:760px){

  /* Page safety */
  .v177-finance-mobile{
    overflow-x:hidden;
  }
  .v177-finance-mobile > *{
    max-width:100%;
  }

  /* Header actions / filters */
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"]{
    margin-bottom:8px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] [class*="actions"],
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] .flex.flex-wrap.items-center.gap-2{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] .flex.flex-wrap.items-center.gap-2 > span{
    grid-column:1/-1!important;
    font-size:7px!important;
    margin-bottom:1px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] button,
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] input,
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] [role="combobox"]{
    width:100%!important;
    min-width:0!important;
    height:36px!important;
    font-size:8.2px!important;
  }

  /* Old cashflow KPI strip */
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:250"]{
    grid-template-columns:1fr!important;
    gap:6px!important;
    background:transparent!important;
    overflow:visible!important;
    margin-bottom:9px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:250"] > *{
    border:1px solid var(--border)!important;
    border-radius:9px!important;
    min-height:80px!important;
  }

  /* Main intelligence sections */
  .v438i-profit-health,
  .v438i-attention,
  .v438i-bridge,
  .v438i-forecast{
    margin-bottom:8px!important;
    padding:9px!important;
    border-radius:10px!important;
  }

  .v438i-section-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:3px!important;
    margin-bottom:8px!important;
  }
  .v438i-section-head>div>span{
    font-size:6.8px!important;
    letter-spacing:.075em!important;
  }
  .v438i-section-head h2,
  .v438i-section-head h3{
    margin-top:2px!important;
    font-size:11px!important;
    line-height:1.25!important;
  }
  .v438i-section-head>small{
    max-width:none!important;
    text-align:left!important;
    font-size:7px!important;
    line-height:1.35!important;
  }

  /* Profit health */
  .v438i-health-grid{
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .v438i-health-grid article{
    min-height:100px!important;
    padding:9px!important;
    border-radius:9px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }
  .v438i-health-grid article:last-child:nth-child(odd){
    grid-column:1/-1!important;
  }
  .v438i-health-grid span{
    font-size:6.9px!important;
    line-height:1.28!important;
  }
  .v438i-health-grid b{
    margin-top:6px!important;
    font-size:14.5px!important;
    line-height:1.05!important;
    overflow-wrap:anywhere!important;
  }
  .v438i-health-grid small{
    margin-top:5px!important;
    font-size:6.7px!important;
    line-height:1.35!important;
  }
  .v438i-net-card{
    box-shadow:inset 0 -3px 0 #16a34a;
  }
  .v438i-debt-card{
    box-shadow:inset 0 -3px 0 #7c3aed;
  }

  /* Attention */
  .v438i-attention-grid{
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .v438i-attention-grid article{
    min-height:86px!important;
    padding:9px!important;
    border-radius:9px!important;
  }
  .v438i-attention-grid b{
    font-size:14px!important;
    line-height:1.05!important;
    overflow-wrap:anywhere!important;
  }
  .v438i-attention-grid span{
    margin-top:4px!important;
    font-size:7px!important;
    line-height:1.3!important;
  }
  .v438i-attention-grid small{
    margin-top:4px!important;
    font-size:6.7px!important;
    line-height:1.35!important;
  }

  /* Profit bridge becomes a clean vertical flow */
  .v438i-bridge-flow{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
  }
  .v438i-bridge-flow article{
    min-height:58px!important;
    padding:9px 10px!important;
    border-radius:9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
  }
  .v438i-bridge-flow article span{
    font-size:7px!important;
    line-height:1.25!important;
  }
  .v438i-bridge-flow article b{
    margin-top:0!important;
    font-size:11px!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  .v438i-bridge-flow i{
    align-self:center!important;
    transform:none!important;
    width:22px!important;
    height:22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    background:var(--muted)!important;
    font-size:11px!important;
  }

  /* Analytics cards */
  .v438i-analytics-grid{
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin-bottom:8px!important;
  }
  .v438i-chart-card,
  .v438i-compare-card{
    padding:8px!important;
    border-radius:9px!important;
  }
  .v438i-chart-head{
    align-items:flex-start!important;
    gap:5px!important;
    margin-bottom:4px!important;
  }
  .v438i-chart-head h4{
    font-size:9.4px!important;
    line-height:1.25!important;
  }
  .v438i-chart-head small{
    max-width:48%!important;
    text-align:right!important;
    font-size:6.8px!important;
    line-height:1.3!important;
  }
  .v438i-chart-card .recharts-responsive-container{
    height:205px!important;
    min-height:205px!important;
  }
  .v438i-chart-card svg{
    max-width:100%!important;
  }

  /* Compare list */
  .v438i-compare-list>div{
    grid-template-columns:1fr auto!important;
    grid-template-areas:
      "label value"
      "label delta"!important;
    gap:3px 8px!important;
    min-height:48px!important;
    padding:7px 0!important;
  }
  .v438i-compare-list span{
    grid-area:label!important;
    align-self:center!important;
    font-size:7px!important;
  }
  .v438i-compare-list b{
    grid-area:value!important;
    text-align:right!important;
    font-size:8.5px!important;
  }
  .v438i-compare-list em{
    grid-area:delta!important;
    min-width:0!important;
    text-align:right!important;
    font-size:7px!important;
  }

  /* Forecast */
  .v438i-forecast-grid{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  .v438i-forecast-grid article{
    min-height:76px!important;
    padding:9px!important;
    border-radius:9px!important;
  }
  .v438i-forecast-grid span{
    font-size:7px!important;
  }
  .v438i-forecast-grid b{
    margin-top:5px!important;
    font-size:14px!important;
    overflow-wrap:anywhere!important;
  }
  .v438i-forecast-grid small{
    font-size:6.8px!important;
  }

  /* Manual income/expense section */
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:276"]{
    margin-bottom:9px!important;
    padding:9px!important;
    border-radius:10px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:277"]{
    align-items:flex-start!important;
    gap:8px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:279"]{
    font-size:11px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:280"]{
    font-size:7.2px!important;
    line-height:1.4!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:286"]{
    width:100%!important;
    min-width:0!important;
    height:34px!important;
    font-size:8px!important;
  }

  /* Existing P&L chart / formula / report */
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:344"],
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:360"] > div{
    padding:9px!important;
    border-radius:10px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:344"] .recharts-responsive-container{
    height:210px!important;
    min-height:210px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:360"]{
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin-bottom:9px!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:363"]{
    font-size:14px!important;
    line-height:1.35!important;
  }
  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:364"]{
    font-size:7.2px!important;
    line-height:1.4!important;
  }

  /* Generic P&L value rows */
  .v177-finance-mobile [data-loc^="client/src/pages/Finance.tsx:37"],
  .v177-finance-mobile [data-loc^="client/src/pages/Finance.tsx:38"],
  .v177-finance-mobile [data-loc^="client/src/pages/Finance.tsx:39"],
  .v177-finance-mobile [data-loc^="client/src/pages/Finance.tsx:40"]{
    min-width:0;
  }

  /* Keep long money values inside viewport */
  .v177-finance-mobile .tabular,
  .v177-finance-mobile .stat-figure{
    overflow-wrap:anywhere;
  }

  /* Any horizontal table should scroll only inside its own card */
  .v177-finance-mobile .overflow-x-auto{
    -webkit-overflow-scrolling:touch;
    scrollbar-gutter:stable;
  }

  /* Dialog */
  .v177-finance-mobile .fixed.inset-0.z-50 .max-w-2xl,
  .v177-finance-mobile .fixed.inset-0.z-50 .max-w-lg{
    width:calc(100vw - 16px)!important;
    max-height:92vh!important;
    overflow-y:auto!important;
    padding:12px!important;
    border-radius:14px!important;
  }
}

@media(max-width:390px){
  .v438i-health-grid,
  .v438i-attention-grid{
    grid-template-columns:1fr!important;
  }
  .v438i-health-grid article:last-child:nth-child(odd){
    grid-column:auto!important;
  }

  .v177-finance-mobile [data-loc="client/src/pages/Finance.tsx:224"] .flex.flex-wrap.items-center.gap-2{
    grid-template-columns:1fr!important;
  }

  .v438i-bridge-flow article{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .v438i-bridge-flow article b{
    text-align:left!important;
    white-space:normal!important;
  }
}
