/* ============================================================
   SHELL — RESPONSIVE (≤ 768 px)
   ============================================================

   On small viewports the fixed-overlay desktop shell collapses:
     - the primary sidebar (#leftPanel) becomes an off-canvas
       drawer toggled by .ws-drawer-toggle (rendered by the
       workspace shell partial),
     - the workspace content goes full-width,
     - the secondary sidebar moves into the document flow,
     - sticky chrome unpins and the list-shape viewport math
       turns off.
   ============================================================ */

/* Drawer chrome is desktop-hidden; only the ≤768px block below
   activates it. */
.ws-drawer-toggle,
.ws-drawer-close,
.ws-drawer-backdrop {
  display: none;
}

@media (max-width: 768px) {
  /* ── Primary sidebar → off-canvas drawer ────────────────── */
  #leftPanel {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    width: min(82vw, 300px) !important;
    max-width: min(82vw, 300px) !important;
    min-width: 0 !important;
    flex-basis: auto !important;
    transform: translateX(-100%);
    transition: transform 0.22s ease;
    z-index: 1015 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    background: var(--ed-white, #fff) !important;
    border-right: 1px solid var(--ed-border, #e5e7eb) !important;
    box-shadow: 2px 0 16px rgba(17, 24, 39, 0.14);
    display: flex !important;
    flex-direction: column;
  }

  body.ws-drawer-open #leftPanel {
    transform: translateX(0);
  }

  #leftPanel .ws-drawer-close {
    align-items: center;
    background: var(--ed-white, #fff);
    border: 0;
    border-radius: 8px;
    color: var(--ed-body, #111827);
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 56px;
    height: 56px;
    justify-content: center;
    margin: 0;
    padding: 0;
    position: sticky;
    top: 0;
    width: 56px;
    z-index: 2;
  }

  #leftPanel .ws-drawer-close__line {
    background: currentColor;
    border-radius: 1px;
    height: 2px;
    position: absolute;
    width: 24px;
  }

  #leftPanel .ws-drawer-close__line--first {
    transform: rotate(45deg);
  }

  #leftPanel .ws-drawer-close__line--second {
    transform: rotate(-45deg);
  }

  /* Drawer is wide enough for full icon + label rows (override the
     56px icon-rail collapse from manage-layout.css). */
  #leftPanel .parentMenu {
    flex: 0 0 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding-top: 0 !important;
    width: 100% !important;
  }

  #leftPanel .parentMenu > li > a,
  #leftPanel .parentMenu > li > .dropdown-toggle {
    font-size: 14px !important;
    gap: 12px !important;
    justify-content: flex-start !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    white-space: nowrap;
  }

  #leftPanel .dropdown-menu,
  #leftPanel .childMenu,
  #leftPanel .parentMenu > li.mobile-open > .dropdown-menu,
  #leftPanel .parentMenu > li.mobile-open > .childMenu {
    border-radius: 6px !important;
    box-shadow: none !important;
    left: auto !important;
    margin: 4px 0 0 !important;
    max-height: none !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    right: auto !important;
    width: 100% !important;
  }

  #leftPanel .childMenu > li > a,
  #leftPanel .dropdown-menu > li > a {
    white-space: normal !important;
  }

  /* ── Drawer trigger (hamburger) ──────────────────────────── */
  .ws-drawer-toggle {
    align-items: center;
    background: var(--ed-white, #fff);
    border: 0;
    border-right: 1px solid var(--ed-border, #e5e7eb);
    cursor: pointer;
    display: inline-flex;
    height: 56px;
    justify-content: center;
    left: 0;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    width: 56px;
    z-index: 1020;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle {
    background: #1a56db;
    border-right: 1px solid rgba(255, 255, 255, 0.24);
    box-shadow: none;
  }

  .ws-drawer-toggle__bars,
  .ws-drawer-toggle__bars::before,
  .ws-drawer-toggle__bars::after {
    background: var(--ed-body, #111827);
    border-radius: 1px;
    height: 2px;
    transition: transform 0.2s ease, top 0.2s ease, background 0.2s ease;
    width: 22px;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::before,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::after {
    background: #fff;
  }

  .ws-drawer-toggle__bars {
    display: block;
    position: relative;
  }

  .ws-drawer-toggle__bars::before,
  .ws-drawer-toggle__bars::after {
    content: "";
    left: 0;
    position: absolute;
  }

  .ws-drawer-toggle__bars::before { top: -7px; }
  .ws-drawer-toggle__bars::after { top: 7px; }

  body.ws-drawer-open .ws-drawer-toggle__bars {
    background: transparent;
  }

  body.ws-drawer-open .ws-drawer-toggle__bars::before {
    top: 0;
    transform: rotate(45deg);
  }

  body.ws-drawer-open .ws-drawer-toggle__bars::after {
    top: 0;
    transform: rotate(-45deg);
  }

  body.ws-drawer-open .ws-drawer-toggle {
    display: none !important;
  }

  /* ── Backdrop ────────────────────────────────────────────── */
  .ws-drawer-backdrop {
    background: rgba(17, 24, 39, 0.45);
    display: block;
    inset: 0;
    opacity: 0;
    position: fixed;
    transition: opacity 0.22s ease, visibility 0.22s ease;
    visibility: hidden;
    z-index: 1010;
  }

  body.ws-drawer-open .ws-drawer-backdrop {
    opacity: 1;
    visibility: visible;
  }

  /* Cabinet pages already have a hamburger in their header — that
     button is wired to open the drawer (see _workspace_shell JS), so the
     floating trigger is hidden there to avoid overlaying the logo. */
  .main-wrapper[data-shell-variant="cabinet"] ~ .ws-drawer-toggle,
  .main-wrapper[data-shell-variant="cabinet"] .ws-drawer-toggle {
    display: none !important;
  }

  /* Admin header has no hamburger — pad it so the floating trigger
     doesn't cover the title. */
  body:has(.main-wrapper[data-shell-variant="admin"] .ws-drawer-toggle) header:not(.b_header) {
    padding-left: 64px !important;
  }

  /* ── Secondary sidebar → flow row with overlay dropdown ───── */
  .workspace-secondary-sidebar {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    margin-left: 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--ed-border, #e5e7eb) !important;
  }

  .workspace-secondary-sidebar.workspace-secondary-sidebar--has-dropdown {
    overflow: visible !important;
    z-index: 1000 !important;
  }

  /* Cabinet context navigation (publication step pills, submit action, etc.)
     should scroll with the document on mobile. The only pinned mobile chrome
     is the burger/logo header. */
  .main-wrapper[data-shell-variant="cabinet"] > .workspace-content > .workspace-context-panel,
  .main-wrapper[data-shell-variant="cabinet"] > .wrapAdminContent > .workspace-context-panel,
  .workspace-context-panel {
    position: relative !important;
    top: auto !important;
  }

  .workspace-context-panel::before {
    display: none !important;
  }

  /* ── Content → full width ────────────────────────────────── */
  .workspace-content,
  .wrapAdminContent {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Admin header is fixed → keep its top inset. Cabinet header is a
     sticky in-flow band → no extra inset (otherwise a gap appears
     under the header). */
  .main-wrapper {
    padding-top: var(--shell-top-h) !important;
  }

  .main-wrapper[data-shell-variant="cabinet"] {
    padding-top: 0 !important;
    min-height: auto !important;
  }

  /* ── List shape → plain document flow ────────────────────────
     Neutralise the list-shape flex + internal-scroll pinning. On
     desktop the list is a viewport-height flex column whose table
     body scrolls internally; if that survives on mobile the table
     overflows a viewport-height main-wrapper and paints OVER the
     footer that follows it (footer appears mid-list). Forcing block
     flow lets main-wrapper grow to its content height so the footer
     sits below the last row. */
  body > .main-wrapper:has(.shell--list),
  .l-wrapper .main-wrapper:has(.shell--list),
  body > .main-wrapper:has(.scrollable-table-container--page-primary),
  .l-wrapper .main-wrapper:has(.scrollable-table-container--page-primary) {
    display: block !important;
    position: static !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  /* Detail/edit viewport-fill shapes use pinned internal scrolling on desktop.
     On phones they should behave like regular documents so long forms, tabs,
     and read-only panels can grow naturally above the footer. */
  body > .main-wrapper:has(.shell--detail),
  .l-wrapper .main-wrapper:has(.shell--detail),
  body > .main-wrapper:has(.shell--edit),
  .l-wrapper .main-wrapper:has(.shell--edit),
  body > .main-wrapper:has(.show-detail-panel),
  .l-wrapper .main-wrapper:has(.show-detail-panel),
  body > .main-wrapper:has(.workspace-form-panel--viewport-fill),
  .l-wrapper .main-wrapper:has(.workspace-form-panel--viewport-fill) {
    display: block !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    position: static !important;
    top: auto !important;
  }

  .workspace-content:has(.show-detail-panel),
  .workspace-content-area:has(.show-detail-panel),
  .wrapAdminContent:has(.show-detail-panel),
  .workspace-content:has(.workspace-form-panel--viewport-fill),
  .workspace-content-area:has(.workspace-form-panel--viewport-fill),
  .wrapAdminContent:has(.workspace-form-panel--viewport-fill),
  .workspace-content:has(.shell--edit),
  .workspace-content-area:has(.shell--edit),
  .wrapAdminContent:has(.shell--edit) {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .main-wrapper:has(.shell--list) > .workspace-content,
  .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel,
  .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel > .workspace-form-panel__body,
  .workspace-content > .list-page.shell--list,
  .workspace-form-panel__body > .list-page.shell--list,
  .workspace-content-page:has(.list-page.shell--list),
  .workspace-content-page__body > .list-page.shell--list,
  .list-page.shell--list,
  .scrollable-table-container,
  .shell--list .scrollable-table-container,
  .scrollable-table-container--page-primary {
    display: block !important;
    flex: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .l-wrapper > .content:has(.main-wrapper .shell--list),
  .l-wrapper > .content:has(.main-wrapper .scrollable-table-container--page-primary) {
    background: var(--ed-white, #fff) !important;
  }

  .l-wrapper > .content > .main-wrapper:has(.shell--list),
  .l-wrapper > .content > .main-wrapper:has(.scrollable-table-container--page-primary),
  .l-wrapper > .content > .main-wrapper:has(.shell--list) > .workspace-content,
  .l-wrapper > .content > .main-wrapper:has(.scrollable-table-container--page-primary) > .workspace-content,
  .l-wrapper > .content > .main-wrapper:has(.shell--list) > .wrapAdminContent,
  .l-wrapper > .content > .main-wrapper:has(.scrollable-table-container--page-primary) > .wrapAdminContent {
    background: var(--ed-white, #fff) !important;
    min-height: 100% !important;
  }

  .workspace-form-panel--viewport-fill,
  .workspace-form-panel--viewport-fill > .workspace-form-panel__body,
  .workspace-form-panel__body--fill,
  .show-detail-panel,
  .show-detail-panel__body,
  .workspace-content-page,
  .workspace-content-page__body {
    display: block !important;
    flex: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .scrollable-table-container:not(.scrollable-table-container--inline) > .scrollable-table-toolbar,
  .show-detail-panel > .view-header,
  .show-detail-panel__header,
  .shell--edit .workspace-form-panel__header,
  .workspace-content .workspace-form-panel__header,
  .wrapAdminContent .workspace-form-panel__header,
  .workspace-form-panel__header {
    position: static !important;
    top: auto !important;
  }

  .scrollable-table-thead {
    position: static !important;
  }

  /* Table body keeps horizontal scroll for wide tables but grows
     vertically (no internal vertical scroll) so the page is one flow. */
  .scrollable-table-body {
    display: block !important;
    flex: none !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  /* Cabinet/admin create & edit forms lay fields out with Bootstrap
     `col-xs-*` columns, which never stack by definition — on a phone the
     field and its `pull-right` submit button get crammed side-by-side and
     overlap. Stack form-panel columns full-width and unfloat their actions. */
  .workspace-form-panel__body .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .workspace-form-panel__body .row > [class*="col-"] {
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .workspace-form-panel__body .row > [class*="col-"] .pull-right {
    float: none !important;
  }

  .workspace-form-panel__title-row,
  .show-detail-panel__title-row,
  .show-detail-panel--compact-header .show-detail-panel__title-row {
    align-items: flex-start !important;
    flex-wrap: wrap !important;
  }

  .workspace-form-panel__actions,
  .workspace-form-panel__actions--secondary,
  .workspace-form-panel__actions-group,
  .show-detail-panel__actions {
    justify-content: flex-start !important;
    margin-left: 0 !important;
    width: 100% !important;
  }

  .workspace-form-panel__actions .btn,
  .workspace-form-panel__actions .step-btn,
  .workspace-form-panel__actions-group .btn,
  .workspace-form-panel__actions-group .step-btn,
  .show-detail-panel__actions .btn {
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
  }

  .workspace-form-panel__header--tabbed .nav-tabs,
  .show-detail-panel__tabs,
  .show-detail-panel .show-detail-panel__tabs,
  .workspace-tabs,
  .nav-tabs {
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

  .workspace-form-panel__header--tabbed .nav-tabs > li,
  .show-detail-panel__tabs > li,
  .workspace-tabs > li,
  .nav-tabs > li {
    flex: 0 0 auto !important;
  }

  .workspace-form-panel__header--tabbed .nav-tabs > li > a,
  .show-detail-panel__tabs > li > a,
  .workspace-tabs > li > a,
  .nav-tabs > li > a {
    white-space: nowrap !important;
  }

  .tabs-textarea > .row {
    display: block !important;
  }

  .tabs-textarea > .row > .col-xs-3,
  .tabs-textarea > .row > .col-xs-9 {
    border-right: 0 !important;
    float: none !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  .tabs-textarea > .row > .col-xs-3 {
    border-bottom: 1px solid var(--ed-border, #e5e7eb) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  .tabs-textarea-switcher {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

  .tabs-textarea-switcher > li {
    flex: 0 0 auto !important;
    margin: 0 !important;
    width: auto !important;
  }

  .tabs-textarea-content,
  .tabs-textarea-content > .tab-pane > textarea,
  .tabs-textarea-content > .tab-pane > .wysihtml5-sandbox,
  .tabs-textarea-content > .tab-pane > .cke .cke_contents {
    min-height: 260px !important;
  }

  .file-input .input-group {
    flex-wrap: wrap !important;
  }

  .file-input .file-caption-main,
  .file-input .file-caption.form-control {
    flex: 1 1 100% !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  .file-input .file-caption.form-control {
    border-right: 1px solid var(--ed-border, #d1d5db) !important;
    border-radius: 6px 6px 0 0 !important;
  }

  .file-input .input-group-btn {
    display: flex !important;
    flex: 1 1 100% !important;
    width: 100% !important;
  }

  .file-input .input-group-btn .btn,
  .file-input.file-input-ssr-shell .fileinput-upload-button,
  .file-input.file-input-ssr-shell .fileinput-remove-button {
    border-top: 0 !important;
    flex: 1 1 auto !important;
    min-width: 40px !important;
  }

  .file-input .input-group-btn .btn.btn-file,
  .file-input.file-input-ssr-shell .input-group-btn .btn-file:not(:first-child) {
    border-left: 1px solid var(--ed-border, #d1d5db) !important;
    border-radius: 0 0 6px 6px !important;
  }

  .file-input .file-caption-name {
    max-width: 100% !important;
  }

  .search-group,
  .admin-list-search,
  .toolbar-filter-search,
  .admin-list-filter,
  .select-filter,
  .admin-list-toolbar-feedback,
  .admin-list-toolbar-feedback--inline {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  .admin-list-toolbar-form,
  .select-filter {
    align-items: stretch !important;
  }

  .admin-list-filter,
  .select-filter {
    white-space: normal !important;
  }

  .admin-list-filter-control,
  .admin-list-filter .bootstrap-select,
  .admin-list-filter .ed-select-menu,
  .select-filter select,
  .select-filter .bootstrap-select,
  .select-filter .ed-select-menu {
    width: 100% !important;
  }

  .admin-list-inline-form-row > .form-group,
  .admin-list-inline-form-row > .admin-list-inline-form-submit,
  .admin-list-inline-form-row:has(> .form-group:nth-child(1):nth-last-child(2)) > .form-group,
  .admin-list-inline-form-row:has(> .form-group:nth-child(1):nth-last-child(2)) > .admin-list-inline-form-submit {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  .admin-list-inline-form-submit {
    justify-content: stretch !important;
    text-align: left !important;
  }

  .admin-list-inline-form-submit .btn,
  .admin-list-inline-form-submit .admin-list-inline-form-action {
    width: 100% !important;
  }

  .request-list-toolbar .list-primary-action,
  .request-list-toolbar .admin-list-primary-action,
  .request-list-toolbar .btn-filter-apply,
  .request-list-toolbar .btn-filter-reset {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-height: 40px !important;
    padding: 0 16px !important;
  }

  /* Header/toolbar dropdowns (e.g. "Создать") are right-aligned on desktop
     because their button sits on the right. With full-width mobile content
     the button moves to the left edge, so a right-aligned menu overflows
     off-screen to the left. Flip them to left-aligned and clamp width. */
  .scrollable-table-toolbar .workspace-create-dropdown .dropdown-menu,
  .scrollable-table-toolbar .request-dropdown .dropdown-menu,
  .scrollable-table-toolbar .dropdown.pull-right .dropdown-menu,
  .workspace-form-panel__header .workspace-create-dropdown .dropdown-menu,
  .workspace-form-panel__header .request-dropdown .dropdown-menu,
  .workspace-form-panel__header .dropdown.pull-right .dropdown-menu,
  .workspace-context-panel .workspace-create-dropdown .dropdown-menu {
    left: 0 !important;
    right: auto !important;
    max-width: calc(100vw - 24px) !important;
  }

  /* Pagination footer: keep pagination + per-page on ONE line. The desktop
     mobile rule forces .toolbar-pagination to 100% width (which pushed the
     per-page selector onto a second row) and reserves ~168px on the right
     for the floating widget. Reset both: auto widths, space-between, small
     gutter; wrap only when genuinely out of room. */
  .scrollable-table-footer .toolbar-row-paging {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px 16px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .scrollable-table-footer .toolbar-pagination,
  .scrollable-table-footer .toolbar-per-page {
    width: auto !important;
    flex: 0 1 auto !important;
    overflow-x: visible !important;
  }

  .modal-dialog {
    margin: 8px !important;
    max-width: calc(100vw - 16px) !important;
    width: auto !important;
  }

  .modal-content {
    display: flex !important;
    flex-direction: column !important;
    max-height: calc(100dvh - 16px) !important;
    overflow: hidden !important;
  }

  .modal-body {
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .modal-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .modal-footer::before,
  .modal-footer::after {
    display: none !important;
  }

  .modal-footer .btn {
    flex: 1 1 auto !important;
    margin: 0 !important;
  }

  body > .b_footer,
  body > footer,
  body > .footer,
  body > .l-wrapper > .b_footer,
  body > .l-wrapper > footer {
    margin-left: 0;
    max-width: 100%;
    overflow-x: clip;
  }

  .b_footer .b_container {
    box-sizing: border-box;
    max-width: 100% !important;
    padding-left: 12px;
    padding-right: 12px;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) > .b_footer > .b_container,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) > .l-wrapper > .b_footer > .b_container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .b_footer .footer__floor,
  .b_footer .editorum-footer {
    align-items: center;
    box-sizing: border-box;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px 12px;
    height: auto !important;
    justify-content: center;
    min-height: 0;
    overflow-x: clip;
    padding-bottom: 12px;
    padding-top: 12px;
  }

  .b_footer .footer__link,
  .b_footer a.footer__link,
  .b_footer span.footer__link {
    flex: 0 1 auto;
    margin: 0 !important;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-align: center;
    white-space: normal;
  }
}

@media (min-width: 769px) and (max-width: 1180px) {
  /* Header hamburger swaps out at 1024px; this band keeps a drawer trigger alive through 1180px. */
  body.ws-drawer-open #leftPanel {
    transform: translateX(0) !important;
  }

  body.ws-drawer-open .ws-drawer-toggle {
    display: none !important;
  }

  body.ws-drawer-open .ws-drawer-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel {
    background: var(--ed-white, #fff) !important;
    border-right: 1px solid var(--ed-border, #e5e7eb) !important;
    bottom: 0 !important;
    box-shadow: 2px 0 16px rgba(17, 24, 39, 0.14);
    display: flex !important;
    flex-basis: auto !important;
    flex-direction: column;
    height: 100dvh !important;
    left: 0 !important;
    max-height: 100dvh !important;
    max-width: min(82vw, 300px) !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    position: fixed !important;
    top: 0 !important;
    transform: translateX(-100%);
    transition: transform 0.22s ease;
    width: min(82vw, 300px) !important;
    -webkit-overflow-scrolling: touch;
    z-index: 1015 !important;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel {
    transform: translateX(0) !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .ws-drawer-close {
    align-items: center;
    background: var(--ed-white, #fff);
    border: 0;
    border-radius: 8px;
    color: var(--ed-body, #111827);
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 56px;
    height: 56px;
    justify-content: center;
    margin: 0;
    padding: 0;
    position: sticky;
    top: 0;
    width: 56px;
    z-index: 2;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .ws-drawer-close__line {
    background: currentColor;
    border-radius: 1px;
    height: 2px;
    position: absolute;
    width: 24px;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .ws-drawer-close__line--first {
    transform: rotate(45deg);
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .ws-drawer-close__line--second {
    transform: rotate(-45deg);
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .parentMenu {
    flex: 0 0 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding-top: 0 !important;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .parentMenu > li > a,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .parentMenu > li > .dropdown-toggle {
    font-size: 14px !important;
    gap: 12px !important;
    justify-content: flex-start !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    white-space: nowrap;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .dropdown-menu,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .childMenu,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .parentMenu > li.mobile-open > .dropdown-menu,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .parentMenu > li.mobile-open > .childMenu {
    border-radius: 6px !important;
    box-shadow: none !important;
    left: auto !important;
    margin: 4px 0 0 !important;
    max-height: none !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    right: auto !important;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .childMenu > li > a,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) #leftPanel .dropdown-menu > li > a {
    white-space: normal !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .ws-drawer-backdrop {
    background: rgba(17, 24, 39, 0.45);
    display: block;
    inset: 0;
    opacity: 0;
    position: fixed;
    transition: opacity 0.22s ease, visibility 0.22s ease;
    visibility: hidden;
    z-index: 1010;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="cabinet"]) .ws-drawer-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar {
    border-bottom: 1px solid var(--ed-border, #e5e7eb) !important;
    border-right: 0 !important;
    height: auto !important;
    left: auto !important;
    margin-left: 0 !important;
    max-height: none !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-top: 0 !important;
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    z-index: 6 !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar.workspace-secondary-sidebar--has-dropdown {
    overflow: visible !important;
    z-index: 1000 !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) {
    height: auto !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 8px 12px !important;
    width: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked {
    display: flex !important;
    flex-wrap: nowrap !important;
    min-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    width: max-content !important;
    -webkit-overflow-scrolling: touch;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix > li,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix > li,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills > li,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked > li {
    flex: 0 0 auto !important;
    margin: 0 6px 0 0 !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix > li > a,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix > li > a,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills > li > a,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked > li > a {
    min-height: 36px !important;
    white-space: nowrap !important;
    width: auto !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-context-panel {
    position: relative !important;
    top: auto !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-context-panel::before {
    display: none !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-content,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .wrapAdminContent {
    display: block !important;
    height: auto !important;
    margin-left: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    min-height: auto !important;
    padding-top: 0 !important;
    position: static !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper:has(.shell--list) > .workspace-content,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel > .workspace-form-panel__body,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-content > .list-page.shell--list,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-form-panel__body > .list-page.shell--list,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .list-page.shell--list,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .scrollable-table-container,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .shell--list .scrollable-table-container,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .scrollable-table-container--page-primary {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .scrollable-table-container:not(.scrollable-table-container--inline) > .scrollable-table-toolbar,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-content .workspace-form-panel__header,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .wrapAdminContent .workspace-form-panel__header,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) .workspace-form-panel__header {
    position: static !important;
    top: auto !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .scrollable-table-thead {
    position: static !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .scrollable-table-body {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
  }

  body:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper[data-shell-variant="cabinet"] .ws-drawer-toggle {
    align-items: center;
    background: var(--ed-white, #fff);
    border: 0;
    border-right: 1px solid var(--ed-border, #e5e7eb);
    box-shadow: none;
    cursor: pointer;
    display: inline-flex;
    height: 50px;
    justify-content: center;
    left: 0;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    width: 50px;
    z-index: 1020;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="cabinet"]) .main-wrapper[data-shell-variant="cabinet"] .ws-drawer-toggle {
    display: none !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel {
    background: var(--ed-white, #fff) !important;
    border-right: 1px solid var(--ed-border, #e5e7eb) !important;
    bottom: 0 !important;
    box-shadow: 2px 0 16px rgba(17, 24, 39, 0.14);
    display: flex !important;
    flex-direction: column;
    flex-basis: auto !important;
    height: 100dvh !important;
    left: 0 !important;
    max-height: 100dvh !important;
    max-width: min(82vw, 300px) !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    position: fixed !important;
    top: 0 !important;
    transform: translateX(-100%);
    transition: transform 0.22s ease;
    width: min(82vw, 300px) !important;
    -webkit-overflow-scrolling: touch;
    z-index: 1015 !important;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel {
    transform: translateX(0) !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .ws-drawer-close {
    align-items: center;
    background: var(--ed-white, #fff);
    border: 0;
    border-radius: 8px;
    color: var(--ed-body, #111827);
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 56px;
    height: 56px;
    justify-content: center;
    margin: 0;
    padding: 0;
    position: sticky;
    top: 0;
    width: 56px;
    z-index: 2;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .ws-drawer-close__line {
    background: currentColor;
    border-radius: 1px;
    height: 2px;
    position: absolute;
    width: 24px;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .ws-drawer-close__line--first {
    transform: rotate(45deg);
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .ws-drawer-close__line--second {
    transform: rotate(-45deg);
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .parentMenu {
    flex: 0 0 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding-top: 0 !important;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .parentMenu > li > a,
  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .parentMenu > li > .dropdown-toggle {
    font-size: 14px !important;
    gap: 12px !important;
    justify-content: flex-start !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    white-space: nowrap;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .dropdown-menu,
  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .childMenu,
  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .parentMenu > li.mobile-open > .dropdown-menu,
  body:has(.main-wrapper[data-shell-variant="admin"]) #leftPanel .parentMenu > li.mobile-open > .childMenu {
    border-radius: 6px !important;
    box-shadow: none !important;
    left: auto !important;
    margin: 4px 0 0 !important;
    max-height: none !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    right: auto !important;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle {
    align-items: center;
    background: #1a56db;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.24);
    box-shadow: none;
    cursor: pointer;
    display: inline-flex;
    height: 56px;
    justify-content: center;
    left: 0;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    width: 56px;
    z-index: 1020;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle {
    display: none !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::before,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::after {
    background: #fff;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-backdrop {
    background: rgba(17, 24, 39, 0.45);
    display: block;
    inset: 0;
    opacity: 0;
    position: fixed;
    transition: opacity 0.22s ease, visibility 0.22s ease;
    visibility: hidden;
    z-index: 1010;
  }

  body.ws-drawer-open:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) header:not(.b_header) {
    padding-left: 64px !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .workspace-content,
  body:has(.main-wrapper[data-shell-variant="admin"]) .wrapAdminContent {
    margin-left: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .request-list-toolbar .list-primary-action,
  .request-list-toolbar .admin-list-primary-action,
  .request-list-toolbar .btn-filter-apply,
  .request-list-toolbar .btn-filter-reset {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-height: 40px !important;
    padding: 0 16px !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .main-wrapper[data-shell-variant="cabinet"] .ws-drawer-toggle {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  html:has(.main-wrapper[data-shell-variant="admin"]),
  html:has(.main-wrapper[data-shell-variant="cabinet"]),
  body:has(.main-wrapper[data-shell-variant="admin"]),
  body:has(.main-wrapper[data-shell-variant="cabinet"]) {
    max-width: 100%;
    overflow-x: clip;
  }

  .ws-drawer-toggle__bars,
  .ws-drawer-toggle__bars::before,
  .ws-drawer-toggle__bars::after {
    background: var(--ed-body, #111827);
    border-radius: 1px;
    height: 2px;
    transition: transform 0.2s ease, top 0.2s ease, background 0.2s ease;
    width: 22px;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::before,
  body:has(.main-wrapper[data-shell-variant="admin"]) .ws-drawer-toggle__bars::after {
    background: #fff;
  }

  .ws-drawer-toggle__bars {
    display: block;
    position: relative;
  }

  .ws-drawer-toggle__bars::before,
  .ws-drawer-toggle__bars::after {
    content: "";
    left: 0;
    position: absolute;
  }

  .ws-drawer-toggle__bars::before { top: -7px; }
  .ws-drawer-toggle__bars::after { top: 7px; }

  body.ws-drawer-open .ws-drawer-toggle__bars {
    background: transparent;
  }

  body.ws-drawer-open .ws-drawer-toggle__bars::before {
    top: 0;
    transform: rotate(45deg);
  }

  body.ws-drawer-open .ws-drawer-toggle__bars::after {
    top: 0;
    transform: rotate(-45deg);
  }

  body > .main-wrapper:has(.shell--detail),
  body > .main-wrapper:has(.shell--edit),
  body > .main-wrapper:has(.shell--list),
  body > .main-wrapper:has(.show-detail-panel),
  body > .main-wrapper:has(.workspace-form-panel--viewport-fill),
  body > .main-wrapper:has(.scrollable-table-container--page-primary),
  .l-wrapper .main-wrapper:has(.shell--detail),
  .l-wrapper .main-wrapper:has(.shell--edit),
  .l-wrapper .main-wrapper:has(.shell--list),
  .l-wrapper .main-wrapper:has(.show-detail-panel),
  .l-wrapper .main-wrapper:has(.workspace-form-panel--viewport-fill),
  .l-wrapper .main-wrapper:has(.scrollable-table-container--page-primary) {
    display: block !important;
    flex-direction: initial !important;
    height: auto !important;
    max-height: none !important;
    min-height: auto !important;
    padding-top: 0 !important;
    position: static !important;
    top: auto !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) > .main-wrapper[data-shell-variant="admin"],
  body:has(.main-wrapper[data-shell-variant="admin"]) .main-wrapper[data-shell-variant="admin"] {
    padding-top: var(--shell-top-h, 56px) !important;
  }

  .workspace-secondary-sidebar {
    border-bottom: 1px solid var(--ed-border, #e5e7eb) !important;
    border-right: 0 !important;
    height: auto !important;
    left: auto !important;
    margin-left: 0 !important;
    max-height: none !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-top: 0 !important;
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    z-index: 6 !important;
  }

  .workspace-secondary-sidebar.workspace-secondary-sidebar--has-dropdown {
    overflow: visible !important;
    z-index: 1000 !important;
  }

  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) {
    height: auto !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 8px 12px !important;
    width: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked {
    display: flex !important;
    flex-wrap: nowrap !important;
    min-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    width: max-content !important;
    -webkit-overflow-scrolling: touch;
  }

  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix > li,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix > li,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills > li,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked > li {
    flex: 0 0 auto !important;
    margin: 0 6px 0 0 !important;
  }

  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav.affix > li > a,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked.affix > li > a,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-pills > li > a,
  .workspace-secondary-sidebar__nav:not(.workspace-secondary-sidebar__nav--dropdown) .nav-stacked > li > a {
    min-height: 36px !important;
    white-space: nowrap !important;
    width: auto !important;
  }

  .workspace-context-panel {
    position: relative !important;
    top: auto !important;
  }

  .workspace-context-panel::before {
    display: none !important;
  }

  .main-wrapper > .workspace-content,
  .main-wrapper > .wrapAdminContent {
    margin-left: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
    width: 100% !important;
  }

  .workspace-content:has(.show-detail-panel),
  .workspace-content-area:has(.show-detail-panel),
  .wrapAdminContent:has(.show-detail-panel),
  .main-wrapper[data-shell-variant] > .workspace-content:has(.show-detail-panel),
  .main-wrapper[data-shell-variant] > .wrapAdminContent:has(.show-detail-panel),
  .workspace-content:has(.workspace-form-panel--viewport-fill),
  .workspace-content-area:has(.workspace-form-panel--viewport-fill),
  .wrapAdminContent:has(.workspace-form-panel--viewport-fill),
  .main-wrapper[data-shell-variant] > .workspace-content:has(.workspace-form-panel--viewport-fill),
  .main-wrapper[data-shell-variant] > .wrapAdminContent:has(.workspace-form-panel--viewport-fill),
  .workspace-content:has(.shell--edit),
  .workspace-content-area:has(.shell--edit),
  .wrapAdminContent:has(.shell--edit),
  .main-wrapper[data-shell-variant] > .workspace-content:has(.shell--edit),
  .main-wrapper[data-shell-variant] > .wrapAdminContent:has(.shell--edit),
  .main-wrapper:has(.shell--list) > .workspace-content,
  .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel,
  .main-wrapper:has(.shell--list) > .workspace-content > .workspace-form-panel > .workspace-form-panel__body,
  .workspace-content > .list-page.shell--list,
  .workspace-form-panel__body > .list-page.shell--list,
  .workspace-content-page:has(.list-page.shell--list),
  .workspace-content-page__body > .list-page.shell--list,
  .list-page.shell--list,
  .shell--list.scrollable-table-container,
  .shell--list .scrollable-table-container,
  .list-page.shell--list > .scrollable-table-container,
  .list-page > .scrollable-table-container,
  .workspace-form-panel__body > .list-page > .scrollable-table-container,
  .workspace-content-page__body > .list-page > .scrollable-table-container,
  .scrollable-table-container--page-primary {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .main-wrapper[data-shell-variant] .workspace-content:has(.show-detail-panel) > .row,
  .main-wrapper[data-shell-variant] .workspace-content:has(.show-detail-panel) > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content:has(.show-detail-panel) > .row > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content-area:has(.show-detail-panel) > .row,
  .main-wrapper[data-shell-variant] .workspace-content-area:has(.show-detail-panel) > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content-area:has(.show-detail-panel) > .row > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content:has(.workspace-form-panel--viewport-fill) > .row,
  .main-wrapper[data-shell-variant] .workspace-content:has(.workspace-form-panel--viewport-fill) > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content:has(.workspace-form-panel--viewport-fill) > .row > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content:has(.shell--edit) > .row,
  .main-wrapper[data-shell-variant] .workspace-content:has(.shell--edit) > [class*="col-"],
  .main-wrapper[data-shell-variant] .workspace-content:has(.shell--edit) > .row > [class*="col-"] {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .workspace-form-panel--viewport-fill,
  .workspace-form-panel--viewport-fill > .workspace-form-panel__body,
  .workspace-form-panel__body--fill,
  .show-detail-panel,
  .show-detail-panel__body,
  .workspace-content-page,
  .workspace-content-page__body {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .scrollable-table-container:not(.scrollable-table-container--inline) > .scrollable-table-toolbar,
  .show-detail-panel > .view-header,
  .show-detail-panel__header,
  .main-wrapper[data-shell-variant] .shell--detail .show-detail-panel > .view-header,
  .main-wrapper[data-shell-variant] .shell--detail .show-detail-panel__header,
  .main-wrapper[data-shell-variant] .show-detail-panel > .view-header,
  .main-wrapper[data-shell-variant] .show-detail-panel__header,
  .shell--edit .workspace-form-panel__header,
  .workspace-content .workspace-form-panel__header,
  .wrapAdminContent .workspace-form-panel__header,
  .workspace-form-panel__header {
    position: static !important;
    top: auto !important;
  }

  .scrollable-table-thead,
  .scrollable-table-body .scrollable-table-thead,
  .scrollable-table-body .scrollable-table-thead th,
  .scrollable-table-body .table.no-sticky-cols > thead.scrollable-table-thead > tr > th,
  .scrollable-table-body .table.no-sticky-cols > thead.scrollable-table-thead > tr > th:first-child,
  .scrollable-table-body .table.no-sticky-cols > thead.scrollable-table-thead > tr > th:last-child,
  .table-scroll-wrapper .table > tbody > tr:not(.collapse) > th:first-child,
  .table-scroll-wrapper .table > tbody > tr:not(.collapse) > td:first-child,
  .table-scroll-wrapper .table > thead > tr > th:first-child,
  .table-scroll-wrapper .table > tbody > tr:not(.collapse) > th:last-child,
  .table-scroll-wrapper .table > tbody > tr:not(.collapse) > td:last-child,
  .table-scroll-wrapper .table > thead > tr > th:last-child,
  .scrollable-table-body .list-action-cell,
  .scrollable-table-body .request-list-actions-cell,
  .scrollable-table-body .discussion-panel,
  .scrollable-table-body .history-content-cell {
    bottom: auto !important;
    left: auto !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    z-index: auto !important;
  }

  .scrollable-table-body,
  .shell--list.scrollable-table-container > .scrollable-table-body,
  .shell--list .scrollable-table-container > .scrollable-table-body,
  .scrollable-table-container--page-primary > .scrollable-table-body,
  .list-page.shell--list > .scrollable-table-container > .scrollable-table-body,
  .list-page > .scrollable-table-container > .scrollable-table-body,
  .workspace-form-panel__body > .list-page > .scrollable-table-container > .scrollable-table-body,
  .workspace-content-page__body > .list-page > .scrollable-table-container > .scrollable-table-body {
    display: block !important;
    flex: none !important;
    height: auto !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
  }

  body > .b_footer,
  body > footer,
  body > .footer,
  body > .l-wrapper > .b_footer,
  body > .l-wrapper > footer {
    margin-left: 0;
    max-width: 100%;
    overflow-x: clip;
  }

  .b_footer .b_container {
    box-sizing: border-box;
    max-width: 100% !important;
    padding-left: 12px;
    padding-right: 12px;
    width: 100% !important;
  }

  body:has(.main-wrapper[data-shell-variant="admin"]) > .b_footer > .b_container,
  body:has(.main-wrapper[data-shell-variant="cabinet"]) > .l-wrapper > .b_footer > .b_container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .b_footer .footer__floor,
  .b_footer .editorum-footer {
    align-items: center;
    box-sizing: border-box;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px 12px;
    height: auto !important;
    justify-content: center;
    min-height: 0;
    overflow-x: clip;
    padding-bottom: 12px;
    padding-top: 12px;
  }

  .b_footer .footer__link,
  .b_footer a.footer__link,
  .b_footer span.footer__link {
    flex: 0 1 auto;
    margin: 0 !important;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-align: center;
    white-space: normal;
  }
}
