gin-regions.pcss.css

Same filename and directory in other branches
  1. main core/themes/default_admin/migration/css/base/gin-regions.pcss.css
@import "media-queries.pcss.css";

.region-sticky {
  position: sticky;
  z-index: 101;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-height: var(--gin-height-sticky);
  padding: 0;
  background: var(--gin-bg-app);
  inset-block-start: var(--gin-toolbar-y-offset);

  .gin--edit-form & {
    inset-block-start: calc(var(--gin-toolbar-y-offset) - var(--gin-spacing-xxl) - var(--gin-spacing-xxs));
    padding-block-start: var(--gin-spacing-m);

    @media (--admin-large) {
      inset-block-start: var(--gin-toolbar-y-offset);
      padding-block-start: var(--gin-spacing-s);
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    transition: var(--gin-transition);
  }

  @media (--admin-large) {
    height: var(--gin-height-sticky);
    margin-block-end: 0;
    padding: var(--gin-spacing-s) 0;
    inset-block-start: -1px;

    .gin--navigation &,
    .gin--vertical-toolbar &,
    .gin--horizontal-toolbar &,
    .gin--classic-toolbar & {
      inset-block-start: var(--gin-toolbar-y-offset);
    }
  }
}

.region-sticky-watcher {
  position: sticky;
  inset-block-start: -1px;
  height: 0;
}

.region-sticky--is-sticky {
  opacity: 0.95;
  background: var(--gin-bg-app);

  .gin--high-contrast-mode & {
    background: var(--gin-bg-app);
    backdrop-filter: none;
  }

  @supports (backdrop-filter: blur()) {
    opacity: 0.999;
    /* stylelint-disable-next-line color-function-notation */
    background: rgb(from var(--app-bg-color) r g b/ 0.8);
    backdrop-filter: blur(12px);
  }
}

.region-sticky__items {
  display: flex;
  flex-grow: 1;
  align-items: center;
  width: auto;
  min-width: 0;
  height: 100%;

  .block-page-title-block {
    /* @todo add this back after visual regression against Gin 5.x */
    /* display: flex; */
    flex-grow: 1;
    align-self: center;
    min-width: 0;
    margin: 0;

    .page-title {
      align-self: center;
      margin: 0;
    }
  }

  .gin-sticky-form-actions {
    display: flex;
    width: auto;
    margin-block-start: 0;

    @media (--admin-large) {
      padding-inline-start: var(--gin-spacing-l);
    }
  }

  [id*="block-gin-local-actions"] + .gin-sticky-form-actions {
    padding-inline-start: var(--gin-spacing-xs);
  }

  @media (--admin-small) {
    .settings-tray-editable {
      flex-shrink: 0;
    }
  }
}

.region-sticky__items__inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;

  @media (--admin-large) {
    flex-wrap: nowrap;
    align-items: center;
    margin-block-end: 0;

    .block-page-title-block {
      margin: 0;
    }
  }
}

.content-header {
  overflow: initial;
  background-color: transparent;
  padding-block: 0;

  /* Normalize whitespace if empty. */
  @media (--admin-small) {
    &:not(:has(.layout-container *)) {
      margin-block-start: calc(var(--gin-spacing-m) * -1);
    }
  }
}

.sticky-shadow {
  @media (--admin-large) {
    position: relative;
    z-index: 98;
    height: 40px;
    pointer-events: none;
    box-shadow: 0 10px 20px -16px rgb(0, 0, 0, 0.4);
    margin-block: calc(var(--gin-spacing-xxxl) * -1) var(--gin-spacing-l);
    margin-inline: auto;

    .gin--dark-mode & {
      box-shadow: none;
    }
  }

  @media (--admin-large) {
    position: sticky;
    inset-block-start: calc(var(--gin-toolbar-y-offset) + (var(--gin-height-sticky) - 40px));
    width: calc(100% - min(10vw, 96px) + var(--gin-spacing-l));

    .gin--edit-form & {
      max-width: 1300px;
    }
  }
}

.page-wrapper {
  @media (--admin-large) {
    margin-block-start: 1px; /* fix for inset-block-start: auto; */
  }
}

.toolbar-tray-open:not(.toolbar-vertical) .layout-container,
body:not(.toolbar-tray-open) .layout-container {
  margin-inline: var(--gin-spacing-m);

  @media (--admin-small) {
    margin-inline: var(--gin-spacing-xl);
  }

  @media (--admin-medium) {
    margin-inline: min(5vw, var(--gin-spacing-xxl));

    .layout-container {
      margin-inline: 0;
    }
  }
}

.gin-sticky-form-actions {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  width: 100%;

  .form-actions {
    flex-grow: 1;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
  }

  .field--name-status {
    display: flex;
    align-items: center;
    margin-inline-end: var(--gin-spacing-xs);

    .form-item__label {
      font-size: 0.8125rem;

      @media (--admin-to-tiny) {
        display: none;
      }
    }

    .form-type--checkbox {
      margin-block: var(--gin-spacing-xs);
    }
  }

  @media (--admin-large) {
    flex-wrap: nowrap;
    width: max-content;
  }
}

File

core/themes/default_admin/migration/css/base/gin-regions.pcss.css

View source
  1. @import "media-queries.pcss.css";
  2. .region-sticky {
  3. position: sticky;
  4. z-index: 101;
  5. display: flex;
  6. align-items: center;
  7. box-sizing: border-box;
  8. width: 100%;
  9. min-height: var(--gin-height-sticky);
  10. padding: 0;
  11. background: var(--gin-bg-app);
  12. inset-block-start: var(--gin-toolbar-y-offset);
  13. .gin--edit-form
  14. }
  15. @media (prefers-reduced-motion: no-preference) {
  16. transition: var(--gin-transition);
  17. }
  18. @media (--admin-large) {
  19. height: var(--gin-height-sticky);
  20. margin-block-end: 0;
  21. padding: var(--gin-spacing-s) 0;
  22. inset-block-start: -1px;
  23. .gin--navigation &,
  24. .gin--vertical-toolbar &,
  25. .gin--horizontal-toolbar &,
  26. .gin--classic-toolbar
  27. }
  28. }
  29. .region-sticky-watcher {
  30. position: sticky;
  31. inset-block-start: -1px;
  32. height: 0;
  33. }
  34. .region-sticky--is-sticky {
  35. opacity: 0.95;
  36. background: var(--gin-bg-app);
  37. .gin--high-contrast-mode
  38. @supports (backdrop-filter: blur()) {
  39. opacity: 0.999;
  40. /* stylelint-disable-next-line color-function-notation */
  41. background: rgb(from var(--app-bg-color) r g b/ 0.8);
  42. backdrop-filter: blur(12px);
  43. }
  44. }
  45. .region-sticky__items {
  46. display: flex;
  47. flex-grow: 1;
  48. align-items: center;
  49. width: auto;
  50. min-width: 0;
  51. height: 100%;
  52. .block-page-title-block {
  53. /* @todo add this back after visual regression against Gin 5.x */
  54. /* display: flex; */
  55. flex-grow: 1;
  56. align-self: center;
  57. min-width: 0;
  58. margin: 0;
  59. .page-title {
  60. align-self: center;
  61. margin: 0;
  62. }
  63. }
  64. .gin-sticky-form-actions {
  65. display: flex;
  66. width: auto;
  67. margin-block-start: 0;
  68. @media (--admin-large) {
  69. padding-inline-start: var(--gin-spacing-l);
  70. }
  71. }
  72. [id*="block-gin-local-actions"] + .gin-sticky-form-actions {
  73. padding-inline-start: var(--gin-spacing-xs);
  74. }
  75. @media (--admin-small) {
  76. .settings-tray-editable {
  77. flex-shrink: 0;
  78. }
  79. }
  80. }
  81. .region-sticky__items__inner {
  82. display: flex;
  83. flex-wrap: wrap;
  84. width: 100%;
  85. @media (--admin-large) {
  86. flex-wrap: nowrap;
  87. align-items: center;
  88. margin-block-end: 0;
  89. .block-page-title-block {
  90. margin: 0;
  91. }
  92. }
  93. }
  94. .content-header {
  95. overflow: initial;
  96. background-color: transparent;
  97. padding-block: 0;
  98. /* Normalize whitespace if empty. */
  99. @media (--admin-small) {
  100. &:not(:has(.layout-container *)) {
  101. margin-block-start: calc(var(--gin-spacing-m) * -1);
  102. }
  103. }
  104. }
  105. .sticky-shadow {
  106. @media (--admin-large) {
  107. position: relative;
  108. z-index: 98;
  109. height: 40px;
  110. pointer-events: none;
  111. box-shadow: 0 10px 20px -16px rgb(0, 0, 0, 0.4);
  112. margin-block: calc(var(--gin-spacing-xxxl) * -1) var(--gin-spacing-l);
  113. margin-inline: auto;
  114. .gin--dark-mode
  115. }
  116. @media (--admin-large) {
  117. position: sticky;
  118. inset-block-start: calc(var(--gin-toolbar-y-offset) + (var(--gin-height-sticky) - 40px));
  119. width: calc(100% - min(10vw, 96px) + var(--gin-spacing-l));
  120. .gin--edit-form
  121. }
  122. }
  123. .page-wrapper {
  124. @media (--admin-large) {
  125. margin-block-start: 1px; /* fix for inset-block-start: auto; */
  126. }
  127. }
  128. .toolbar-tray-open:not(.toolbar-vertical) .layout-container,
  129. body:not(.toolbar-tray-open) .layout-container {
  130. margin-inline: var(--gin-spacing-m);
  131. @media (--admin-small) {
  132. margin-inline: var(--gin-spacing-xl);
  133. }
  134. @media (--admin-medium) {
  135. margin-inline: min(5vw, var(--gin-spacing-xxl));
  136. .layout-container {
  137. margin-inline: 0;
  138. }
  139. }
  140. }
  141. .gin-sticky-form-actions {
  142. display: flex;
  143. flex-wrap: wrap;
  144. flex-shrink: 0;
  145. align-items: center;
  146. justify-content: space-between;
  147. width: 100%;
  148. .form-actions {
  149. flex-grow: 1;
  150. align-items: center;
  151. justify-content: flex-end;
  152. margin: 0;
  153. }
  154. .field--name-status {
  155. display: flex;
  156. align-items: center;
  157. margin-inline-end: var(--gin-spacing-xs);
  158. .form-item__label {
  159. font-size: 0.8125rem;
  160. @media (--admin-to-tiny) {
  161. display: none;
  162. }
  163. }
  164. .form-type--checkbox {
  165. margin-block: var(--gin-spacing-xs);
  166. }
  167. }
  168. @media (--admin-large) {
  169. flex-wrap: nowrap;
  170. width: max-content;
  171. }
  172. }

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.