.mobile-menu-toggle,.mobile-cell-label{display:none}
.table-scroll{position:relative}
@media(max-width:800px){
  .sidebar{position:sticky;top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;align-items:center;padding:12px 16px;overflow:visible}
  .sidebar .brand{padding:0;min-width:0;font-size:16px}
  .mobile-menu-toggle{display:inline-flex;min-height:44px;align-items:center;border:1px solid #658371;background:#2d4c3e;color:white;border-radius:8px;padding:8px 12px;font-size:15px;font-weight:600;font-family:inherit;white-space:nowrap}
  .sidebar #navigation{display:none;grid-column:1/-1}
  .nav-open .sidebar #navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px;max-height:65dvh;overflow-y:auto}
  .sidebar .nav-button{width:100%;min-height:44px;padding:10px;gap:8px;font-size:14px}
  .sidebar .nav-button span{overflow:hidden;text-overflow:ellipsis}
  .sidebar .nav-button.active{box-shadow:inset 3px 0 #d8bd80}
  .workspace,main,.card,.content-grid>*,.quote-layout>*,.form-grid>*{min-width:0}
  .topbar{padding:10px 16px;gap:6px}.top-actions{margin-left:auto}.top-actions button{min-height:44px;padding:8px}
  main{padding:22px 16px}.preview-note{padding:10px 16px}.workspace-footer{padding:16px}
  .button,.tab,.text-button{min-height:44px}.field input,.field select,.field textarea,.search,.quote-lines input{font-size:16px;min-height:44px}
  .field select{min-width:0}.panel-toolbar{align-items:stretch}.panel-toolbar>.field{width:100%}
  .form-grid,.modal-detail{grid-template-columns:minmax(0,1fr)}.field.full{grid-column:auto}
  dialog{width:calc(100% - 20px);max-width:none;max-height:calc(100dvh - 20px);padding:20px 16px;border-radius:14px;overscroll-behavior:contain}
  .modal-head{gap:12px;margin-bottom:18px}.modal-head h2{font-size:21px}.modal-head button{min-width:44px;min-height:44px;flex-shrink:0}
  .dialog-actions{gap:8px;margin-top:18px}.dialog-actions>.button{flex:1 1 150px;white-space:normal}
  .member-item{flex-wrap:wrap;gap:10px}.member-item>div{min-width:0}.member-item .right{margin-left:auto}
  .modal-detail dd,.notice,.fine,.subtitle,.event-row span{overflow-wrap:anywhere}.event-row{flex-direction:column;gap:4px}
  .checkline input{min-width:22px;min-height:22px}.checkline{gap:12px}.checkline span{min-width:0}
  .integration-grid,.mail-layout{grid-template-columns:minmax(0,1fr)}.mail-preview{grid-column:1}.quote-summary{position:static}
  #toast{left:50%;width:max-content;max-width:calc(100vw - 24px);bottom:max(16px,env(safe-area-inset-bottom));font-size:14px}
}
@media(max-width:600px){
  .mobile-records,.mobile-records tbody{display:block;width:100%;min-width:0}
  .mobile-records thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .mobile-records tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}
  .mobile-records tbody td{display:block;width:100%;padding:7px 0;border:0;white-space:normal;overflow-wrap:anywhere}
  .mobile-records tbody td:first-child,.mobile-records tbody td:last-child,.mobile-records tbody td[colspan]{grid-column:1/-1}
  .mobile-records .mobile-cell-label{display:block;font-size:13px;color:#596a51;font-weight:600;margin-bottom:3px}
  .mobile-records .table-name{align-items:flex-start}.mobile-records small{overflow-wrap:anywhere}
  .mobile-records td>.button{width:100%}.mobile-records td:has(>.mobile-cell-label) .button{width:auto}
  .team-toolbar select{width:100%}.team-toolbar .field{min-width:0}.view-switch{justify-content:stretch}.view-switch .button{flex:1}
  .metric-card{padding:20px}.metric-value{font-size:64px}.section-card,.tasks{padding:18px}
  .quote-lines{overflow-x:auto}.quote-lines table{min-width:440px}
}

.invoice-track-summary { display:grid; gap:12px; margin:16px 0; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); }
.invoice-track-summary p { margin:10px 0; }
.invoice-customer-choice { display:block; width:100%; margin-top:8px; text-align:left; white-space:normal; overflow-wrap:anywhere; }
#invoice-customer-result { margin-top:12px; overflow-wrap:anywhere; }

.password-settings{max-width:850px}.password-settings .field{margin-top:16px}.password-settings input{width:100%;min-width:0}.password-help{margin-top:20px;font-size:15px;line-height:1.8}.password-help summary{cursor:pointer;font-weight:600}.password-help p{margin:12px 0}.password-help ol{padding-left:22px}.password-help code{overflow-wrap:anywhere}#password-status{color:#914326;line-height:1.7;margin-top:14px}

/* Quote catalog controls wrap without reducing text or touch targets. */
.catalog-picker { display:flex; align-items:flex-end; gap:12px; margin-top:20px; flex-wrap:wrap; }
.catalog-picker .field { flex:1 1 220px; min-width:0; }
.catalog-picker select { width:100%; min-width:0; }
.quote-lines input[data-field="description"] { margin-top:8px; }
@media(max-width:600px) { .catalog-picker {display:block;} .catalog-picker .button {width:100%; margin-top:10px;} }

.revenue-toolbar {flex-wrap:wrap;gap:16px;}
.revenue-toolbar .field {min-width:0;max-width:100%;}
@media(max-width:600px){.revenue-toolbar {align-items:stretch;flex-direction:column;} .revenue-toolbar .field,.revenue-toolbar .button {width:100%;}}

.revenue-kpis {grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.revenue-kpis>div {padding:16px;}
.revenue-kpis small {font-size:14px;}
.revenue-kpis strong {display:block;margin-top:8px;font-size:28px;overflow-wrap:anywhere;}
@media(max-width:700px){.revenue-kpis {grid-template-columns:repeat(2,minmax(0,1fr));}.revenue-kpis>div {padding:12px;}.revenue-kpis strong {font-size:24px;}}
