gin-table.pcss.css

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

.gin-table-scroll-wrapper {
  clear: both;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  margin-block-start: calc(var(--gin-spacing-xs) * -1);
}

table.gin--sticky-table-header {
  position: sticky;
  z-index: 97;
  visibility: hidden;
  overflow: hidden;
  width: auto !important;
  margin-block-start: calc(var(--gin-spacing-xs) * -1);
  inset-block-start: calc(var(--gin-toolbar-y-offset) + var(--gin-height-sticky) - 1px);

  tr {
    display: block;
    width: max-content;
  }
}

.gin-horizontal-scroll-shadow {
  background-color: var(--gin-bg-layer);
  background-image: linear-gradient(to right, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to right, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to right, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0)), linear-gradient(to left, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0));
  background-repeat: no-repeat;
  background-attachment: local, local, scroll, scroll;
  background-position:
    left center,
    right center,
    left center,
    right center;
  background-size:
    24px 100%,
    24px 100%,
    12px 100%,
    12px 100%;

  &:dir(rtl) {
    background-image: linear-gradient(to left, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to left, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to left, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0)), linear-gradient(to right, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0));
    background-position:
      right center,
      left center,
      right center,
      left center;
  }
}

table.sticky-header {
  inset-inline-start: auto !important;
  min-width: 100%;
  max-width: fit-content;
  background: transparent;
}

table.position-sticky,
table.sticky-header {
  thead {
    position: static;
  }

  &.--is-processed thead {
    pointer-events: none;

    tr {
      border-color: transparent;

      .sortable-heading.is-active > a::before {
        display: none;
      }
    }
  }
}

table {
  thead {
    border-radius: var(--gin-border-m);
    background: transparent;

    tr {
      border-block-end: 2px solid var(--gin-border-color-table-header);

      &:hover {
        background: transparent;
      }
    }
  }

  th {
    background: var(--gin-bg-layer);
    font-size: var(--gin-font-size-s);
    font-weight: var(--gin-font-weight-bold);

    &,
    .form-item__label {
      color: var(--gin-color-title);
    }

    @media (--admin-medium) {
      height: auto;
      padding: var(--gin-spacing-m);
    }
  }

  tbody {
    tr {
      border-block-end: 1px solid var(--gin-border-color-table);
    }

    td {
      height: auto;
      padding: var(--gin-spacing-density-m) var(--gin-spacing-m);
    }
  }

  tr,
  tr:focus-within,
  .draggable-table.tabledrag-disabled tr {
    color: var(--gin-color-text);
    background-color: transparent;

    &:hover {
      color: var(--gin-color-text);
      background: var(--gin-bg-item);
    }

    &.selected:hover {
      background: transparent;
    }
  }

  tr.selected {
    .gin--dark-mode & {
      border-color: rgb(255, 255, 255, 0.2);
    }

    td {
      background-color: var(--gin-bg-item-hover);
    }
  }

  td {
    a {
      text-decoration: none;

      &:hover {
        text-decoration: underline;
        text-decoration-style: var(--gin-link-decoration-style);
      }
    }

    .group-label {
      color: var(--gin-color-title);
    }
  }
}

.sortable-heading {
  padding: var(--gin-spacing-xs) var(--gin-spacing-m);

  > a::before {
    inset-block-end: -2px;
  }

  > a::after {
    background: var(--gin-color-text-light);
    mask-image: var(--admin-icon-sort);
    mask-repeat: no-repeat;
    mask-position: center center;

    @media (forced-colors: active) {
      background: linktext;
    }
  }

  &.is-active > a::before,
  > a:hover::before {
    width: 100%;
    inset-inline-start: 0;
  }

  > a:hover::before {
    border-block-end-width: 3px;
  }

  &.is-active > a {
    &,
    &:hover,
    &:active {
      color: var(--gin-color-primary-active);
    }

    &::before {
      border-block-end: 0.1875rem solid var(--gin-color-primary-active);
      background-color: var(--gin-bg-item);
      border-start-start-radius: var(--gin-border-s);
      border-start-end-radius: var(--gin-border-s);
    }
  }
}

.tablesort {
  background-color: var(--gin-color-primary-active);
  background-image: none;
  mask-image: var(--admin-icon-sort);
  mask-repeat: no-repeat;
  mask-position: 0 50%;
}

.tablesort--asc {
  mask-image: var(--admin-icon-sort-asc);

  @media (forced-colors: active) {
    background: linktext;
  }
}

.tablesort--desc {
  mask-image: var(--admin-icon-sort-desc);

  @media (forced-colors: active) {
    background: linktext;
  }
}

.field-plugin-settings-edit-wrapper {
  float: inline-end;

  + a {
    float: inline-start;
  }
}

.region-title {
  border-block-end: 2px solid var(--gin-color-text);
}

.field-multiple-table {
  th {
    padding-block: var(--gin-spacing-xs);
    padding-inline: var(--gin-spacing-l) var(--gin-spacing-m);
    border-block-end: 0;
    background: transparent;

    &.th__order {
      padding: 0;
      font-size: 0;
    }
  }

  thead {
    th {
      background: var(--gin-bg-header);

      &:first-of-type {
        border-start-start-radius: var(--gin-border-m);
        border-end-start-radius: var(--gin-border-m);
      }
    }

    &:not(:has(th:last-of-type:not([style*="display: none"]))) th:nth-last-of-type(2),
    th:last-of-type:not([style*="display: none"]) {
      border-start-end-radius: var(--gin-border-m);
      border-end-end-radius: var(--gin-border-m);
    }

    tr {
      border-block-end: 0;
    }

    .field-label .label,
    .form-item__label--multiple-value-form {
      display: inline-block;
      margin: 0;
      padding: var(--gin-spacing-xs) 0;
      letter-spacing: -0.025em;
      color: var(--gin-color-primary-active);
      font-size: var(--gin-font-size-l);
      font-weight: var(--gin-font-weight-bold);
      line-height: 1.33333em;
    }
  }

  tr .form-item:not(:last-of-type) {
    margin-block-end: var(--gin-spacing-m);
  }

  /* Fixes paragraphs extending beyond layout */
  .ck.ck-toolbar.ck-toolbar_grouping > .ck-toolbar__items {
    flex-wrap: wrap;
  }
}

.gin-layer-wrapper .views-table {
  margin-block-start: 0;
}

table td.field-plugin-summary-cell {
  vertical-align: middle;
}

table .views-field.views-field-operations {
  text-align: end;
}

File

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

View source
  1. @import "media-queries.pcss.css";
  2. .gin-table-scroll-wrapper {
  3. clear: both;
  4. overflow-x: auto;
  5. overflow-y: hidden;
  6. overscroll-behavior-x: contain;
  7. margin-block-start: calc(var(--gin-spacing-xs) * -1);
  8. }
  9. table.gin--sticky-table-header {
  10. position: sticky;
  11. z-index: 97;
  12. visibility: hidden;
  13. overflow: hidden;
  14. width: auto !important;
  15. margin-block-start: calc(var(--gin-spacing-xs) * -1);
  16. inset-block-start: calc(var(--gin-toolbar-y-offset) + var(--gin-height-sticky) - 1px);
  17. tr {
  18. display: block;
  19. width: max-content;
  20. }
  21. }
  22. .gin-horizontal-scroll-shadow {
  23. background-color: var(--gin-bg-layer);
  24. background-image: linear-gradient(to right, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to right, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to right, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0)), linear-gradient(to left, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0));
  25. background-repeat: no-repeat;
  26. background-attachment: local, local, scroll, scroll;
  27. background-position:
  28. left center,
  29. right center,
  30. left center,
  31. right center;
  32. background-size:
  33. 24px 100%,
  34. 24px 100%,
  35. 12px 100%,
  36. 12px 100%;
  37. &:dir(rtl) {
  38. background-image: linear-gradient(to left, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to left, var(--gin-bg-layer), var(--gin-bg-layer)), linear-gradient(to left, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0)), linear-gradient(to right, rgb(0, 0, 0, 0.125), rgb(255, 255, 255, 0));
  39. background-position:
  40. right center,
  41. left center,
  42. right center,
  43. left center;
  44. }
  45. }
  46. table.sticky-header {
  47. inset-inline-start: auto !important;
  48. min-width: 100%;
  49. max-width: fit-content;
  50. background: transparent;
  51. }
  52. table.position-sticky,
  53. table.sticky-header {
  54. thead {
  55. position: static;
  56. }
  57. &.--is-processed thead {
  58. pointer-events: none;
  59. tr {
  60. border-color: transparent;
  61. .sortable-heading.is-active > a::before {
  62. display: none;
  63. }
  64. }
  65. }
  66. }
  67. table {
  68. thead {
  69. border-radius: var(--gin-border-m);
  70. background: transparent;
  71. tr {
  72. border-block-end: 2px solid var(--gin-border-color-table-header);
  73. &:hover {
  74. background: transparent;
  75. }
  76. }
  77. }
  78. th {
  79. background: var(--gin-bg-layer);
  80. font-size: var(--gin-font-size-s);
  81. font-weight: var(--gin-font-weight-bold);
  82. &,
  83. .form-item__label {
  84. color: var(--gin-color-title);
  85. }
  86. @media (--admin-medium) {
  87. height: auto;
  88. padding: var(--gin-spacing-m);
  89. }
  90. }
  91. tbody {
  92. tr {
  93. border-block-end: 1px solid var(--gin-border-color-table);
  94. }
  95. td {
  96. height: auto;
  97. padding: var(--gin-spacing-density-m) var(--gin-spacing-m);
  98. }
  99. }
  100. tr,
  101. tr:focus-within,
  102. .draggable-table.tabledrag-disabled tr {
  103. color: var(--gin-color-text);
  104. background-color: transparent;
  105. &:hover {
  106. color: var(--gin-color-text);
  107. background: var(--gin-bg-item);
  108. }
  109. &.selected:hover {
  110. background: transparent;
  111. }
  112. }
  113. tr.selected {
  114. .gin--dark-mode
  115. td {
  116. background-color: var(--gin-bg-item-hover);
  117. }
  118. }
  119. td {
  120. a {
  121. text-decoration: none;
  122. &:hover {
  123. text-decoration: underline;
  124. text-decoration-style: var(--gin-link-decoration-style);
  125. }
  126. }
  127. .group-label {
  128. color: var(--gin-color-title);
  129. }
  130. }
  131. }
  132. .sortable-heading {
  133. padding: var(--gin-spacing-xs) var(--gin-spacing-m);
  134. > a::before {
  135. inset-block-end: -2px;
  136. }
  137. > a::after {
  138. background: var(--gin-color-text-light);
  139. mask-image: var(--admin-icon-sort);
  140. mask-repeat: no-repeat;
  141. mask-position: center center;
  142. @media (forced-colors: active) {
  143. background: linktext;
  144. }
  145. }
  146. &.is-active > a::before,
  147. > a:hover::before {
  148. width: 100%;
  149. inset-inline-start: 0;
  150. }
  151. > a:hover::before {
  152. border-block-end-width: 3px;
  153. }
  154. &.is-active > a {
  155. &,
  156. &:hover,
  157. &:active {
  158. color: var(--gin-color-primary-active);
  159. }
  160. &::before {
  161. border-block-end: 0.1875rem solid var(--gin-color-primary-active);
  162. background-color: var(--gin-bg-item);
  163. border-start-start-radius: var(--gin-border-s);
  164. border-start-end-radius: var(--gin-border-s);
  165. }
  166. }
  167. }
  168. .tablesort {
  169. background-color: var(--gin-color-primary-active);
  170. background-image: none;
  171. mask-image: var(--admin-icon-sort);
  172. mask-repeat: no-repeat;
  173. mask-position: 0 50%;
  174. }
  175. .tablesort--asc {
  176. mask-image: var(--admin-icon-sort-asc);
  177. @media (forced-colors: active) {
  178. background: linktext;
  179. }
  180. }
  181. .tablesort--desc {
  182. mask-image: var(--admin-icon-sort-desc);
  183. @media (forced-colors: active) {
  184. background: linktext;
  185. }
  186. }
  187. .field-plugin-settings-edit-wrapper {
  188. float: inline-end;
  189. + a {
  190. float: inline-start;
  191. }
  192. }
  193. .region-title {
  194. border-block-end: 2px solid var(--gin-color-text);
  195. }
  196. .field-multiple-table {
  197. th {
  198. padding-block: var(--gin-spacing-xs);
  199. padding-inline: var(--gin-spacing-l) var(--gin-spacing-m);
  200. border-block-end: 0;
  201. background: transparent;
  202. &.th__order {
  203. padding: 0;
  204. font-size: 0;
  205. }
  206. }
  207. thead {
  208. th {
  209. background: var(--gin-bg-header);
  210. &:first-of-type {
  211. border-start-start-radius: var(--gin-border-m);
  212. border-end-start-radius: var(--gin-border-m);
  213. }
  214. }
  215. &:not(:has(th:last-of-type:not([style*="display: none"]))) th:nth-last-of-type(2),
  216. th:last-of-type:not([style*="display: none"]) {
  217. border-start-end-radius: var(--gin-border-m);
  218. border-end-end-radius: var(--gin-border-m);
  219. }
  220. tr {
  221. border-block-end: 0;
  222. }
  223. .field-label .label,
  224. .form-item__label--multiple-value-form {
  225. display: inline-block;
  226. margin: 0;
  227. padding: var(--gin-spacing-xs) 0;
  228. letter-spacing: -0.025em;
  229. color: var(--gin-color-primary-active);
  230. font-size: var(--gin-font-size-l);
  231. font-weight: var(--gin-font-weight-bold);
  232. line-height: 1.33333em;
  233. }
  234. }
  235. tr .form-item:not(:last-of-type) {
  236. margin-block-end: var(--gin-spacing-m);
  237. }
  238. /* Fixes paragraphs extending beyond layout */
  239. .ck.ck-toolbar.ck-toolbar_grouping > .ck-toolbar__items {
  240. flex-wrap: wrap;
  241. }
  242. }
  243. .gin-layer-wrapper .views-table {
  244. margin-block-start: 0;
  245. }
  246. table td.field-plugin-summary-cell {
  247. vertical-align: middle;
  248. }
  249. table .views-field.views-field-operations {
  250. text-align: end;
  251. }

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