/* Densidad compartida. Sólo presentación; no cambia permisos ni formularios. */
body.app-page .content-wrap { --control-height:34px; }
body.app-page .content-wrap :is(.page-head,.card-head) { gap:8px; margin-bottom:10px; min-height:0; }
body.app-page .content-wrap .page-head h1 { font-size:clamp(21px,2vw,26px); line-height:1.2; }
body.app-page .content-wrap .card-head h2 { font-size:16px; line-height:1.3; }
body.app-page .content-wrap :is(.card-head,.page-head) p { margin:3px 0 0; line-height:1.4; }
body.app-page .content-wrap :is(.card,.data-section) { border-radius:10px; }
body.app-page .content-wrap .card { padding:12px; }
body.app-page .content-wrap :is(.form-stack,.form-grid,.mini-grid) { gap:8px 10px; min-width:0; }
body.app-page .content-wrap :is(.form-stack,.form-grid,.mini-grid) label { min-width:0; gap:4px; }
body.app-page .content-wrap :is(.form-stack,.form-grid,.mini-grid,.filter-bar) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):not([type=color]):not([type=range]),select:not([multiple])) {
  box-sizing:border-box; min-width:0; min-height:var(--control-height); height:var(--control-height); padding:6px 9px; border-radius:8px; line-height:1.3;
}
body.app-page .content-wrap textarea { min-width:0; border-radius:8px; padding:8px 9px; }
body.app-page .content-wrap :is(.form-actions,.inline-actions,.table-actions,.filter-bar) { gap:6px; }
body.app-page .content-wrap .button { min-height:var(--control-height); padding:6px 10px; font-size:12px; line-height:1.25; border-radius:8px; }
body.app-page .content-wrap :is(.form-actions,.inline-actions) .button { width:auto; }
body.app-page .content-wrap .table-wrap { margin:0; min-width:0; max-width:100%; overflow-x:auto; border-radius:9px; }
body.app-page .content-wrap .table-wrap :is(th,td) { padding:6px 9px; line-height:1.3; vertical-align:middle; }
body.app-page .content-wrap .table-wrap th { font-size:11px; }
body.app-page .content-wrap .table-wrap td { font-size:12px; }
body.app-page .content-wrap .table-wrap :is(.button,button:not(.record-name):not(.field-help-trigger),.customer-directions-button) {
  width:auto; min-height:28px; padding:4px 8px; font-size:11px; line-height:1.25; border-radius:7px;
}
body.app-page .content-wrap .table-wrap .customer-directions-button { gap:4px; box-shadow:none; }
body.app-page .content-wrap .customer-directions-button svg { width:14px; height:14px; flex-basis:14px; }
body.app-page .content-wrap .table-wrap .status { min-height:20px; padding:2px 7px; font-size:10px; }
body.app-page .content-wrap .table-tools { gap:6px; padding:6px 0; }
body.app-page .content-wrap .table-pagination { gap:6px; padding-top:6px; }
body.app-page .content-wrap :is(.workspace-tabs,.inventory-tabs) { gap:4px; }
body.app-page .content-wrap :is(.workspace-tabs,.inventory-tabs) a { padding:7px 9px; line-height:1.3; }
body.app-page .content-wrap .stat-card { min-height:0; padding:10px 12px; }
body.app-page .content-wrap .stat-card strong { font-size:22px; line-height:1.2; }
body.app-page .content-wrap .config-modal .modal-card { margin:0; }
@media(max-width:780px) {
  body.app-page .content-wrap { --control-height:40px; }
  body.app-page .content-wrap .card { padding:10px; }
  body.app-page .content-wrap .table-wrap :is(th,td) { padding:5px 8px; }
  body.app-page .content-wrap .table-wrap :is(.button,button:not(.record-name):not(.field-help-trigger),.customer-directions-button) { min-height:32px; padding:5px 8px; }
  body.app-page .content-wrap :is(.form-stack,.form-grid,.mini-grid,.filter-bar) :is(input,select,textarea) { font-size:16px; }
  body.app-page .content-wrap .form-actions { flex-wrap:wrap; }
  body.app-page .content-wrap .form-actions>.button { flex:1 1 120px; }
  body.app-page .content-wrap .table-wrap .table-actions { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:no-preference) {
  body.app-page .content-wrap .table-wrap tbody tr { transition:background-color .16s ease,box-shadow .16s ease; }
  body.app-page .content-wrap .button { transition:background-color .16s ease,box-shadow .16s ease; }
  body.app-page .config-modal[open] .modal-card { animation:aquaCompactOpen .16s ease-out; }
  @keyframes aquaCompactOpen { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
}
