
/* Rivora Finance v7.39 — Global phone-fit layer */
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
pre,code,a{overflow-wrap:anywhere}
.app-shell,.main,.view,.panel,.form-panel,.crm-list-panel,.crm-editor-panel,
.crm-dashboard-grid,.crm-page-grid,.crm-bottom-grid,.crm-kpi-grid,.stats-grid,
.analytics-grid-v721,.expense-layout,.expense-outflow-grid-v723,.tax-simple-grid-v732,
.automation-grid,.full-calendar-grid,.calendar-provider-grid,.invite-business-grid,
.team-invite-grid,.settings-hub-panel-v718,.chart-shell,.analytics-chart-v721,
.crm-chart-card,.dashboard-side-card,.recurring-shell-v738,.recurring-builder-v738{
  min-width:0;max-width:100%;
}
.table-wrap,.recurring-table-wrap{
  width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  overscroll-behavior-inline:contain;
}
.chart-shell canvas,.analytics-chart-v721 canvas{width:100%!important;max-width:100%!important}

@media(max-width:800px){
  html{-webkit-text-size-adjust:100%}
  body,.app-shell,.main,.view{width:100%;max-width:100%;min-width:0}
  .topbar{width:100%;min-width:0;gap:10px;align-items:flex-start}
  .topbar>div:first-child{min-width:0;max-width:100%}
  .topbar h1,.topbar p{max-width:100%;overflow-wrap:anywhere}
  .topbar-actions{width:100%;min-width:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
  .topbar-actions .user-badge{display:none}
  .topbar-actions .crm-new-menu-wrap{margin-left:auto}
  .crm-new-menu{right:0;left:auto;max-width:min(92vw,340px)}
  .notification-menu{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;width:auto!important;max-width:none!important}

  .panel,.form-panel,.crm-list-panel,.crm-editor-panel,.settings-hub-panel-v718,
  .analytics-panel-v721,.expense-outflow-panel-v723,.calendar-settings-panel{
    width:100%;min-width:0;max-width:100%;
  }

  .panel-header,.section-heading,.crm-dashboard-head,.job-tax-head,.tax-center-head-v732,
  .recurring-head-v738,.recurring-list-head-v738,.quotes-header,.team-directory-head,
  .team-org-head,.lead-editor-heading,.expense-outflow-heading-v723{
    min-width:0;max-width:100%;gap:10px;flex-wrap:wrap;
  }
  .panel-header>*,.section-heading>*,.crm-dashboard-head>*,.job-tax-head>*,
  .tax-center-head-v732>*,.recurring-head-v738>*,.recurring-list-head-v738>*,
  .quotes-header>*,.team-directory-head>*,.team-org-head>*,.lead-editor-heading>*{
    min-width:0;max-width:100%;
  }

  .form-grid,.crm-page-grid,.crm-bottom-grid,.crm-dashboard-grid,.analytics-grid-v721,
  .expense-layout,.expense-outflow-grid-v723,.tax-simple-grid-v732,.automation-grid,
  .calendar-provider-grid,.invite-business-grid,.team-invite-grid,.settings-grid,
  .recurring-builder-v738,.full-calendar-grid{
    grid-template-columns:1fr!important;
  }
  .form-grid .span-two,.recurring-builder-v738 .span-two,[class*="span-two"]{grid-column:1/-1!important}
  label,input,select,textarea{min-width:0}
  input,select,textarea{width:100%;font-size:16px!important}
  input[type="checkbox"],input[type="radio"]{width:auto}
  textarea{resize:vertical}

  .filter-row,.filters,.client-filters,.editor-actions,.quote-actions,.client-header-actions,
  .job-calendar-actions,.calendar-action-buttons,.calendar-provider-actions,.analytics-actions-v721,
  .expense-form-actions-v724,.business-management-toolbar-v718,.calendar-integration-toolbar,
  .team-org-toolbar,.team-org-head-actions,.recurring-builder-actions-v738,.dashboard-live-controls{
    width:100%;min-width:0;max-width:100%;display:flex;flex-wrap:wrap!important;gap:8px;
  }
  .filter-row>*,.filters>*,.client-filters>*,.business-management-toolbar-v718>*,
  .calendar-integration-toolbar>*,.team-org-toolbar>*{min-width:0!important;flex:1 1 150px}
  .editor-actions .btn,.quote-actions .btn,.client-header-actions .btn,.job-calendar-actions .btn,
  .calendar-action-buttons .btn,.expense-form-actions-v724 .btn,.recurring-builder-actions-v738 .btn{
    flex:1 1 140px;
  }

  .table-wrap,.recurring-table-wrap{margin-left:0;margin-right:0;border-radius:10px}
  .data-table{width:max-content;min-width:680px;max-width:none}
  .data-table th,.data-table td{white-space:normal;vertical-align:top}
  .crm-kpi-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .chart-shell,.analytics-chart-v721{overflow:hidden}
  [role="dialog"],.modal,.dialog,.crm-inline-editor,.client-profile-panel,.client-editor-panel,.lead-editor-clean{
    max-width:calc(100vw - 20px)!important;width:calc(100vw - 20px)!important;
  }
  .btn,.icon-btn,.nav-link,.notification-bell,.theme-quick-toggle,.language-quick-toggle{min-height:42px}

  /* Public/client-facing pages */
  .public-document-shell,.document-shell,.invoice-shell,.quote-shell,.public-page,.legal-page,
  .marketing-shell,.auth-card,.auth-login-card,.document-card,.invoice-card,.quote-card,.public-document-card{
    width:100%;max-width:100%;min-width:0;
  }
  table{max-width:100%}
}

@media(max-width:520px){
  .crm-kpi-grid,.stats-grid{grid-template-columns:1fr 1fr!important}
  .topbar-actions .top-signout-btn{display:none}
  .topbar-actions .crm-new-menu-btn{padding-inline:12px}
  .btn{white-space:normal}
  .panel-header,.section-heading,.crm-dashboard-head,.job-tax-head,.tax-center-head-v732,
  .recurring-head-v738,.recurring-list-head-v738{align-items:stretch!important}
}
@media(max-width:390px){
  .crm-kpi-grid,.stats-grid{grid-template-columns:1fr!important}
  .topbar-actions{gap:5px}
  .notification-bell,.theme-quick-toggle,.language-quick-toggle{min-width:42px}
}
