// Offset body.gin--vertical-toolbar, body.gin--horizontal-toolbar, body.gin--classic-toolbar { padding-top: var(--gin-toolbar-y-offset) !important; padding-left: var(--gin-toolbar-x-offset, 256px); margin-left: 0; // Fix for Drupal 9.3+ } .toolbar { font-family: var(--gin-font); .toolbar-bar { box-shadow: none; @include mq(xsmall) { .user-menu { flex-grow: 1; flex-shrink: 0; text-align: right; .toolbar-menu { text-align: left; } } } .toolbar-tab > .toolbar-item { white-space: nowrap; } .contextual-toolbar-tab.toolbar-tab { float: right; // Set contextual to right } .toolbar-tab > .toolbar-item { font-weight: var(--gin-font-weight-normal);; } .toolbar-tab > .toolbar-icon { &:hover { background: rgba(255, 255, 255, .1); &::before { background-color: #fff; } } &.is-active { color: var(--gin-color-button-text); background-image: none; background-color: var(--gin-color-primary); .gin--dark-mode & { color: var(--gin-color-primary-active); background-color: var(--gin-color-primary-light-active); } &::before { background-color: var(--gin-color-button-text); .gin--dark-mode & { background-color: var(--gin-color-primary-active); } } } } .toolbar-tab > .toolbar-icon:before { @media only screen and (min-width: 36em) { background-size: 90% auto; } } .toolbar-icon.toolbar-handle, .toolbar-menu .toolbar-menu .toolbar-icon.toolbar-handle { &::before { transform: rotate(90deg); background-position: center center; background-size: 14px 14px; } &.open::before { transform: rotate(-90deg); } } // Inline Edit toggle .toolbar-tab > .toolbar-icon.toolbar-icon-edit.toolbar-item, .toolbar-tab > .toolbar-icon.toolbar-icon-edit.toolbar-item.is-active, .toolbar-tab > .toolbar-icon.toolbar-icon-edit.toolbar-item:focus { color: var(--gin-bg-app); background: var(--gin-color-primary); &::before { background: var(--gin-bg-app); } } // Overrides for default toolbar items #toolbar-item-administration-search, .toolbar-menu-administration .toolbar-icon, .toolbar-tab > .toolbar-icon-edit.toolbar-item, .toolbar-icon-toggle-vertical, .toolbar-icon-toggle-horizontal { &::before { background: var(--gin-icon-color); mask-repeat: no-repeat; mask-position: center center; mask-size: var(--gin-icon-size-toolbar) var(--gin-icon-size-toolbar); } &.toolbar-icon-default::before { mask-size: 26px 26px; } &:hover::before { @include mq(medium) { background: var(--gin-color-primary); } } &.is-active:hover::before { @include mq(medium) { background: var(--gin-color-primary); } } } #toolbar-item-administration-tray .toolbar-icon-admin-toolbar-tools-help.toolbar-icon-default { &:before { $logoSize: 28px; $iconFill: 333333; padding-left: 0; padding-right: 0; margin-left: 0; background-color: var(--gin-color-text); mask-image: icon('gin'); mask-position: center center; } &.is-active { background-color: transparent; &::after { display: none; } } } .toolbar-icon-default { &::before { padding-top: 0; } } // Fallback icon if none is set .toolbar-icon { &:before { mask-image: icon('fallback'); } } // Hamburger .toolbar-icon-menu { &:before { mask-image: icon('hamburger'); } } // Admin tray: Add content .toolbar-icon-system-admin-content { &:before { mask-image: icon('content'); } } // Admin tray: Structure .toolbar-icon-system-admin-structure { &:before { mask-image: icon('structure'); } } // Admin tray: Appearance .toolbar-icon-system-themes-page { &:before { mask-image: icon('appearance'); } } // Admin tray: Extend .toolbar-icon-system-modules-list { &:before { mask-image: icon('extend'); } } // Admin tray: Configuration .toolbar-icon-system-admin-config { &:before { mask-image: icon('config'); } } // Admin tray: People .toolbar-icon-entity-user-collection { &:before { mask-image: icon('people'); } } // Groups .toolbar-icon-system-admin-group { &:before { mask-image: icon('group'); } } // Admin tray: Statistics .toolbar-icon-system-admin-reports { &:before { mask-image: icon('reports'); } } // Admin tray: Help .toolbar-icon-help-main, .toolbar-icon-help { &:before { mask-image: icon('help'); } } // Commerce .toolbar-icon-commerce-admin-commerce { &:before { mask-image: icon('commerce'); } } // Webform .toolbar-icon-entity-webform-collection { &:before { mask-image: icon('webform'); } } // Admin tray: TMGMT Translation. .toolbar-icon-tmgmt-admin-tmgmt { &:before { mask-image: icon('tmgmt'); } } // BAT .toolbar-icon-bat-admin { &:before { mask-image: icon('bat'); } } // Back to site .toolbar-icon-escape-admin { display: none; } // Edit .toolbar-icon-edit, .toolbar-tab > .toolbar-icon-edit.toolbar-item { &:before { mask-image: icon('edit'); mask-size: var(--gin-icon-size-toolbar-secondary) var(--gin-icon-size-toolbar-secondary); } } // Local tasks .toolbar-icon-local-tasks { &:before { mask-image: icon('local-tasks'); mask-size: var(--gin-icon-size-toolbar-secondary) var(--gin-icon-size-toolbar-secondary); } } // Shortcuts .toolbar-icon-shortcut { &:before { mask-image: icon('shortcut'); } } // Coffee & Search .toolbar-icon-coffee, #toolbar-item-administration-search { &:before { mask-image: icon('search'); } } // Devel .toolbar-icon-devel { &:before { mask-image: icon('devel'); } } // Rebuild Cache Access .toolbar-icon-rebuild-cache-access { &:before { mask-image: icon('rebuild-cache'); } } // Responsive Preview .responsive-preview-icon { &:before { mask-image: icon('responsive-preview'); } } // User .toolbar-icon-user { &:before { mask-image: icon('user'); } } // Environment .toolbar-icon-environment { &:before { mask-image: icon('server'); } } // Toggle vertical .toolbar-icon-toggle-vertical { &:before { mask-image: icon('nav-toggle-toleft'); } } // Toogle horizontal .toolbar-icon-toggle-horizontal { &:before { mask-image: icon('nav-toggle-totop'); } } // Workbench .toolbar-icon-workbench-content-tab { &:before { mask-image: icon('tool'); } } } } .toolbar-horizontal .toolbar-tray { border-bottom: 1px solid var(--gin-border-color); &, [dir=rtl] & { box-shadow: none; } a, span { color: var(--gin-color-text); font-weight: var(--gin-font-weight-normal);; &:hover, &:active, &:focus, &.is-active { text-decoration: none; } } .menu-item { a:hover, a:focus { color: var(--gin-color-primary-hover); background-color: var(--gin-bg-item-hover); .toolbar-icon::before { background-color: var(--gin-color-title); } .toolbar-icon.is-active::before { background-color: var(--gin-color-primary); } } &--no-link { &:hover, a:focus { background-color: transparent; } } // Hide icons for sub-items. .menu-item .toolbar-icon::before { display: none; } a:focus { box-shadow: inset 0 0 0 1px var(--gin-color-focus-border), inset 0 0 0 4px var(--gin-color-focus); } } .menu-item + .menu-item { border-left: 0 none; &:last-child { border-right: 0 none; } } } .gin--dark-mode.toolbar-horizontal .toolbar-tray { border-bottom: 1px solid var(--gin-border-color-layer); } // Fix for Admin_toolbar 2.4+: Remove white borders added by the admin_toolbar module .toolbar .toolbar-tray-horizontal { ul ul li.menu-item:first-child { border-top: 0; } .menu-item:last-child { border-left: 0; border-right: 0; } } .toolbar .toolbar-tray-vertical { box-shadow: none; border-right: 1px solid var(--gin-border-color); background: var(--gin-bg-layer); .menu-item + .menu-item { border-top: 1px solid var(--gin-border-color-layer); } .menu-item + .menu-item__spacer { border-top: 0 none; } .menu-item .toolbar-menu, .menu-item:last-child { border-bottom: 0 none; } // Custom logo .menu-item .toolbar-logo { padding-left: var(--gin-spacing-m); } .level-1.menu-item:last-child { border-bottom: 1px solid var(--gin-border-color-layer); } .level-2 .toolbar-menu { background-color: var(--gin-toolbar-bg-level2); } .level-3 .toolbar-menu { background-color: var(--gin-toolbar-bg-level3); } .gin--dark-mode & { .toolbar-menu ul ul { border-color: transparent; } .level-1 .toolbar-menu { background: var(--gin-bg-layer2); } .level-2 .toolbar-menu { background: var(--gin-bg-layer3); } .level-3 .toolbar-menu { background: #5a5a61; } } } .toolbar-tray-horizontal { // admin_toolbar 3.3.1 fix .menu-item.hover-intent, .menu-item--expanded { background-color: transparent; } ul { li { &.menu-item { .menu-item { background: transparent; border-left: none; border-right: none; border-bottom: 0 none; } &--expanded { &.hover-intent ul, &:focus-within ul { box-shadow: 0 8px 14px rgba(0, 0, 0, .15); } } } } } } #toolbar-administration .toolbar-bar .toolbar-tab > .toolbar-icon-edit.toolbar-item { font-weight: var(--gin-font-weight-bold); &:hover::before { background: #fff; } } .toolbar .toolbar-icon.toolbar-handle::before, .toolbar .toolbar-icon.toolbar-handle.open::before, .toolbar .toolbar-menu .toolbar-menu .toolbar-icon.toolbar-handle::before, .toolbar .toolbar-menu .toolbar-menu .toolbar-icon.toolbar-handle.open::before, .toolbar-tray-horizontal ul li.menu-item--expanded ul li.menu-item--expanded, .toolbar-tray-horizontal .toolbar-menu:not(:first-child) li.menu-item--expanded > a:focus { background-image: none; [dir="rtl"] & { background-image: none; } } .toolbar .toolbar-icon.toolbar-handle, .toolbar .toolbar-icon.toolbar-handle.open, .toolbar .toolbar-menu .toolbar-menu .toolbar-icon.toolbar-handle, .toolbar .toolbar-menu .toolbar-menu .toolbar-icon.toolbar-handle.open, .toolbar-tray-horizontal ul li.menu-item--expanded ul li.menu-item--expanded { &::before { content: ""; display: block; position: absolute; right: 0; top: 18px; width: 16px; height: 16px; background-color: var(--gin-color-disabled); mask-image: icon('handle'); mask-repeat: no-repeat; mask-position: center center; mask-size: 14px 14px; /*! rtl:raw:transform: scaleX(-1); */ } &.menu-item--active-trail, &:hover, &:focus { &::before { background-color: var(--gin-color-primary); } } } // Mobile. .toolbar .toolbar-tray-vertical .toolbar-menu a, .toolbar .toolbar-tray-vertical .toolbar-menu span { display: block; padding-left: 3.25em; padding-top: 1.5em; padding-bottom: 1.5em; &:visited, &:hover, &:focus { color: var(--gin-color-text); } &:focus { background: var(--gin-color-primary-light); } &.is-active { &::before { background-color: var(--gin-color-primary); } } } .toolbar .toolbar-bar .toolbar-tab > .toolbar-icon { &::before { background: none; background-color: rgba(255, 255, 255, .75); mask-repeat: no-repeat; mask-position: center center; mask-size: var(--gin-icon-size-toolbar-secondary) var(--gin-icon-size-toolbar-secondary); } &.is-active:before, &.is-active:hover:before { @include mq(medium) { background-color: var(--gin-color-button-text); } } } .toolbar-secondary .toolbar-bar .toolbar-icon, .toolbar-icon-edit, .toolbar-icon-menu, .toolbar-icon-local-tasks, #toolbar-item-administration-search, .toolbar-tab > .toolbar-icon-edit.toolbar-item { &:hover:before, &.is-active:before { @include mq($to: medium) { background: #fff; } } } .toolbar.toolbar-secondary .toolbar-bar .toolbar-tab > .toolbar-icon::before { background-color: var(--gin-icon-color); } .toolbar.toolbar-secondary .toolbar-bar .toolbar-tab > .toolbar-icon.toolbar-icon-edit.toolbar-item::before { left: .55rem; } // Custom logo #toolbar-item-administration-tray .toolbar-logo { padding-top: var(--gin-spacing-xs); padding-bottom: var(--gin-spacing-xs); img { max-width: 100px; max-height: 35px; object-fit: contain; object-position: center; } } #toolbar-item-user { display: inline-block; vertical-align: top; &.icon-user { padding-left: 0; margin-left: var(--gin-spacing-xs); margin-top: 2px; } } // Hide logo if accidentally shown in Devel. [data-toolbar-tray=toolbar-item-devel-tray] { .toolbar-icon-admin-toolbar-tools-help, .menu-item__tools, .toolbar-logo { display: none; } } .responsive-preview-icon { @extend .toolbar-icon; &::before { mask-size: var(--gin-icon-size-toolbar-secondary) var(--gin-icon-size-toolbar-secondary); } } // Admin Toolbar QuickSearch #admin-toolbar-search-input { color: var(--gin-color-text); width: 245px; padding-left: calc(var(--gin-spacing-xl) + var(--gin-spacing-xs)); background-color: #fff; border: 1px solid var(--gin-border-color); border-radius: 25px; box-sizing: border-box; &:not(:hover):not(:focus) { box-shadow: none; } .gin--dark-mode & { background-color: rgba(255, 255, 255, .075); border: 1px solid transparent; &:hover { border-color: var(--gin-border-color-form-element); } } } #admin-toolbar-search-tab .js-form-type-search { position: relative; margin: 0; &::before { content: ""; opacity: .75; display: block; width: var(--gin-icon-size-toolbar-secondary); height: var(--gin-icon-size-toolbar-secondary); position: absolute; top: 11px; left: var(--gin-spacing-m); background-color: var(--gin-icon-color); mask-image: icon('search'); mask-size: 100% 100%; mask-position: center center; } } // Admin Toolbar QuickSearch Results .ui-autocomplete.admin-toolbar-search-autocomplete-list { color: var(--gin-color-text); background-color: var(--gin-bg-layer3); border-radius: var(--gin-border-l); box-shadow: var(--gin-shadow-l2); &.ui-widget-content { padding-top: var(--gin-spacing-xs); padding-bottom: var(--gin-spacing-xs); border: 0 none; overflow-y: auto; } .ui-menu-item { padding: 0 var(--gin-spacing-xs); // Hide url span.admin-toolbar-search-url { display: none; } } .ui-menu-item-wrapper { font-size: var(--gin-font-size-s); line-height: 1.3; padding: var(--gin-spacing-xs) var(--gin-spacing-m); border-radius: var(--gin-border-s); &.ui-state-active { background-color: var(--gin-color-primary); border: 0 none; &, a { color: var(--gin-color-button-text); } } } } // admin_toolbar 3.3.1 fix .toolbar-tray-horizontal .toolbar-menu .level-1 > .toolbar-box .toolbar-icon.toolbar-handle { position: absolute; right: .5rem; top: 1.1875rem; width: 1rem; height: 1rem; padding: 0; &::before { top: 0; left: 0; mask-size: 12px 12px; } } .toolbar-tray-horizontal .level-1 .menu-item--expanded > .toolbar-box .toolbar-handle { position: absolute; top: 0; right: 0; width: 39px; height: 100%; padding: 0; background: none; &:focus { box-shadow: inset 0 0 0 1px var(--gin-color-focus-border), inset 0 0 0 4px var(--gin-color-focus); } &::before { display: none !important; } } .toolbar-tray-horizontal .toolbar-icon:not(.toolbar-handle) { width: 100%; }