/* v31.1 — final responsive compatibility layer (loaded after every page stylesheet) */
html{max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
body{max-width:100%;min-width:0;overflow-x:clip}
img,video{max-width:100%;height:auto}
button,input,select,textarea{min-width:0;max-width:100%;font:inherit}
.workspace,.workspace>* ,.finance-workspace,.finance-workspace>* ,.site-shell,.site-shell>*{min-width:0}
.table-wrap{width:auto;max-width:calc(100% + 42px);overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}
.header-actions,.record-head-actions,.panel-head,.heading{min-width:0;flex-wrap:wrap}
.header-actions>a,.header-actions>button{flex:none}

/* Business overview: cash flow keeps a stable three-column rhythm on wide screens. */
.finance-body .finance-workspace{width:auto;max-width:none}
.finance-body .finance-topbar,.finance-body .finance-top-actions,.finance-body .finance-topbar .header-actions{min-width:0}
.finance-body .finance-stats-eight{grid-template-columns:repeat(4,minmax(0,1fr))}
.finance-body .dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.finance-body .month-card{min-width:0;overflow:hidden}
.finance-body .month-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.finance-body .month-numbers>div{min-width:0}
.finance-body .month-numbers b{font-size:clamp(14px,1.35vw,18px);line-height:1.2;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.finance-body .ledger-mini a,.finance-body .risk-list a{grid-template-columns:minmax(0,1fr) auto;gap:12px}
.finance-body .ledger-mini a>*,.finance-body .risk-list a>*{min-width:0}
.finance-body .ledger-mini strong,.finance-body .risk-list strong{white-space:nowrap}
.finance-body .business-control-grid>*{min-width:0}
.finance-body .table-wrap{max-width:calc(100% + 42px)}

@media(max-width:1250px){
  .finance-body .finance-stats-eight{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1050px){
  .finance-body .dashboard-grid{grid-template-columns:minmax(0,1fr)}
  .finance-body .finance-topbar{flex-wrap:wrap}
  .finance-body .finance-top-actions{max-width:100%}
}

@media(max-width:900px){
  .workspace{max-width:100%}
  .finance-body .finance-workspace{max-width:100%;margin-left:0!important}
  .category-admin,.editor-columns,.settings-grid,.entity-layout,.artist-layout{grid-template-columns:minmax(0,1fr)!important}
}

@media(max-width:650px){
  .side:not(.finance-side){overflow:visible}
  .side:not(.finance-side) nav{width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .side:not(.finance-side) nav::-webkit-scrollbar{display:none}
  .side:not(.finance-side) nav>a{min-width:68px;flex:1 0 auto;white-space:nowrap}
  .workspace header{min-width:0}
  .workspace header>*,.record-head-actions>*{min-width:0}
  .finance-body .finance-top-actions{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .finance-body .finance-topbar .header-actions{width:max-content;min-width:100%;flex-wrap:nowrap}
  .finance-body .finance-topbar .header-actions a{display:inline-flex!important}
  .finance-body .month-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}
  .finance-body .month-numbers>div:last-child{grid-column:auto}
  .finance-body .ledger-stats{grid-template-columns:minmax(0,1fr)}
  .finance-body .ledger-stats article:last-child{grid-column:auto}
  .finance-body .filter-form{grid-template-columns:minmax(0,1fr)}
  .finance-body .table-wrap{max-width:calc(100% + 30px)}
  .table-wrap{max-width:calc(100% + 30px)}
}

@media(max-width:520px){
  .finance-body .finance-stats-eight{grid-template-columns:minmax(0,1fr)}
  .finance-body .finance-stats article{min-height:108px}
  .finance-body .month-numbers{grid-template-columns:minmax(0,1fr)}
  .finance-body .month-numbers>div:last-child{grid-column:auto}
  .finance-body .month-numbers b{font-size:18px;overflow-wrap:normal}
  .finance-body .business-control-grid,.finance-body .payment-grid,.finance-body .settlement-meta{grid-template-columns:minmax(0,1fr)!important}
  .finance-body .health-control ul{grid-template-columns:repeat(3,minmax(0,1fr))}
  .finance-body .finance-title h1{font-size:21px}
  .workspace .grid,.child-grid,.record-images,.multi-file-row,.editor-upload-grid{grid-template-columns:minmax(0,1fr)!important}
  .record-summary{grid-template-columns:minmax(0,1fr)!important}
  .record-summary>div{border-right:0!important;border-bottom:1px solid var(--line)}
  .record-summary>div:last-child{border-bottom:0}
  .auth-card{padding:28px 20px}
}

@media(max-width:380px){
  .workspace{padding-left:10px;padding-right:10px}
  .finance-body .finance-workspace{padding-left:9px!important;padding-right:9px!important}
  .finance-body .finance-topbar{margin-left:-9px;margin-right:-9px;padding-left:11px;padding-right:11px}
  .finance-body .panel,.finance-body .logic-card{padding-left:12px;padding-right:12px}
  .finance-body .table-wrap{margin-left:-12px;margin-right:-12px;max-width:calc(100% + 24px)}
  dialog{max-width:calc(100vw - 16px);padding:22px 15px}
}

@media print{
  html,body{overflow:visible}
  .table-wrap{overflow:visible;max-width:none}
}
