/* Layout-only adaptation: no theme, data or business behavior changes. */
html[data-erp-viewport] #app.erp-app-shell { height:var(--erp-viewport-height,100dvh)!important; }
html[data-erp-viewport=desktop] #app #sidebar-nav { max-width:none!important; }
html[data-erp-viewport=phone] #app { width:100%;min-width:0; }
html[data-erp-viewport=phone] #app #sidebar.erp-unified-topbar {
  grid-template-columns:minmax(0,1fr) auto!important;gap:8px;padding:10px 12px!important;
}
html[data-erp-viewport=phone] #app #sidebar > div:first-child { grid-column:1;grid-row:1; }
html[data-erp-viewport=phone] #app .erp-member-footer { grid-column:2!important;grid-row:1!important;max-width:160px;padding-left:8px; }
html[data-erp-viewport=phone] #app #erp-store-tools { grid-column:1!important;grid-row:2!important;justify-self:start!important;max-width:100%; }
html[data-erp-viewport=phone] #app #erp-header-tools { grid-column:2!important;grid-row:2!important;max-width:100%; }
html[data-erp-viewport=phone] #app #sidebar-nav { grid-column:1/-1!important;grid-row:3!important;width:100%;max-width:100%;overflow-x:auto; }
html[data-erp-viewport=phone] #app #sidebar-nav > * { min-height:44px;padding:10px 13px; }
html[data-erp-viewport=phone] #app #page-content { padding:12px!important;min-width:0;overscroll-behavior-y:contain; }
html[data-erp-viewport=phone] #app .overview-page { padding:0; }
html[data-erp-viewport=phone] #app :is(.overview-analytics,.overview-panels,.overview-finance-stack) { display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px; }
html[data-erp-viewport=phone] #app .overview-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px; }
html[data-erp-viewport=phone] #app .overview-kpi { padding:14px; }
html[data-erp-viewport=phone] #app .overview-kpi-value { font-size:25px; }
html[data-erp-viewport=phone] #app .overview-header { gap:12px;margin-bottom:16px; }
html[data-erp-viewport=phone] #app .overview-controls { gap:6px; }
html[data-erp-viewport=phone] #app :is(.btn,input:not([type=checkbox]):not([type=radio]),select) { min-height:44px; }
html[data-erp-viewport=phone] :is(#modal-container,.crm-dialog) :is(input,select,textarea) { font-size:16px; }
html[data-erp-viewport=phone] :is(.modal-content,.crm-dialog) { max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 24px)!important;overflow:auto; }
html[data-erp-viewport=phone] #page-content :is(.table-container,.overflow-x-auto) { max-width:100%;overflow-x:auto;overscroll-behavior-x:contain; }
