body {
  font-family: 'Inter', sans-serif;
  margin: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}
.crm-page-main {
  flex: 1 0 auto;
}
.crm-footer {
  flex-shrink: 0;
  width: 100%;
  max-width: 100vw;
  overflow: hidden;
  background: #111827;
  padding: 1.25rem 0;
  box-sizing: border-box;
  margin-top: auto;
}
.crm-footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem;
  box-sizing: border-box;
}
.crm-footer-logo img {
  height: 24px;
  width: auto;
  display: block;
}
.crm-footer-logo .logo-icon { display: none; }
@media (max-width: 1023px) {
  .crm-footer-logo .logo-full { display: none; }
  .crm-footer-logo .logo-icon { display: block; }
}
.crm-footer-admin {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.6);
  text-decoration: none;
  transition: color 0.15s;
}
.crm-footer-admin:hover {
  color: #fff;
}

/* Плашка админа — та же схема, что и хедер: внешний на всю ширину, внутренний в колонке */
.crm-admin-page {
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 0;
  font-family: system-ui, sans-serif;
  background: #1e293b;
  color: #fff;
}
.crm-admin-page .crm-admin-inner {
  padding: 0 1rem;
  box-sizing: border-box;
}
.crm-admin-page p {
  margin: 0;
  color: #fff;
}
.crm-admin-page a {
  color: #fff;
}
.crm-admin-page a:hover {
  text-decoration: underline;
}

/* Ограничение ширины контента на десктопе (1200px) — только внутренние блоки, как у хедера */
@media (min-width: 1024px) {
  .crm-admin-page .crm-admin-inner,
  .crm-header .crm-header-inner,
  .crm-page-wrap,
  .turn-inner,
  .crm-footer-inner {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    box-sizing: border-box;
  }
}

.crm-page-wrap {
  box-sizing: border-box;
  padding: 0 0 1rem;
}
.crm-page-caption {
  margin: 0 0 1rem;
  padding: 0.5rem 0;
  font-size: 1rem;
  color: #374151;
}
