.app {
  min-height: 100dvh;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  background: var(--bg);
}
.main { min-width: 0; display: grid; grid-template-rows: auto auto minmax(0, 1fr); }
.main.overview-main {
  grid-template-rows: auto minmax(0, 1fr);
}
.main.workbench-main {
  grid-template-rows: auto minmax(0, 1fr);
}
.main.chat-main {
  height: 100dvh;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}
.main.requests-main,
.main.approval-main,
.main.policies-main,
.main.audit-main,
.main.employees-main {
  height: 100dvh;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}
.workarea { overflow: auto; padding: 24px; }
.workarea.chat-workarea {
  min-height: 0;
  overflow: hidden;
}
.workarea.requests-workarea,
.workarea.approval-workarea,
.workarea.policies-workarea,
.workarea.audit-workarea,
.workarea.employees-workarea {
  min-height: 0;
  overflow: hidden;
  padding: 20px 24px;
}

@media (max-width: 1180px) {
  .app { grid-template-columns: 220px minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .app { display: block; }
  .workarea { padding: 18px 16px 28px; }
}
