@use 'sass:color';
@use 'sass:string';
@forward 'variables' show $scheme-name, $base-color, $body-background, $button-color, $custom-welcome-panel, $dashboard-accent-1, $dashboard-accent-2, $dashboard-icon-background, $form-checked, $highlight-color, $icon-color, $link, $link-focus, $low-contrast-theme, $menu-bubble-text, $menu-collapse-focus-icon, $menu-collapse-text, $menu-highlight-background, $menu-highlight-icon, $menu-highlight-text, $menu-submenu-text, $menu-submenu-focus-text, $menu-submenu-background, $notification-color, $text-color;
@use 'variables';
@use 'mixins';
@use 'tokens';

/**
 * This function name uses British English to maintain backward compatibility, as developers
 * may use the function in their own admin CSS files. See #56811.
 */
@function url-friendly-colour( $color ) {
	@return '%23' + string.slice( '#{ $color }', 2, -1 );
}

body {
	background: variables.$body-background;
}


/* Links */

a {
	color: variables.$link;

	&:hover,
	&:active,
	&:focus {
		color: variables.$link-focus;
	}
}

#post-body .misc-pub-post-status:before,
#post-body #visibility:before,
.curtime #timestamp:before,
#post-body .misc-pub-revisions:before,
span.wp-media-buttons-icon:before {
	color: currentColor;
}

/* Link button - appears as text link, no border or background */
/* Matches Gutenberg's .is-link button variant */
.wp-core-ui .button-link,
.wp-core-ui .button.button-link {
	color: var(--wp-admin-theme-color);

	&:hover,
	&:active {
		color: var(--wp-admin-theme-color-darker-20);
	}

	&:focus {
		color: var(--wp-admin-theme-color);
		border-radius: tokens.$radius-s;
		box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
		outline: 1px solid transparent;
	}

	&:disabled,
	&[aria-disabled="true"] {
		color: tokens.$gray-600;
	}
}

.media-modal .delete-attachment,
.media-modal .trash-attachment,
.media-modal .untrash-attachment,
/* Needs higher specificity to override the default button-link. */
.wp-core-ui .button-link.button-link-delete {
	color: tokens.$alert-red;
}

.media-modal .delete-attachment:hover,
.media-modal .trash-attachment:hover,
.media-modal .untrash-attachment:hover,
.media-modal .delete-attachment:focus,
.media-modal .trash-attachment:focus,
.media-modal .untrash-attachment:focus,
/* Needs higher specificity to override the default button-link. */
.wp-core-ui .button-link.button-link-delete:hover,
.wp-core-ui .button-link.button-link-delete:focus {
	color: color.adjust(tokens.$alert-red, $lightness: -10%);
}

/* Forms */

// Checkbox checked state - uses theme color
input[type="checkbox"]:checked {
	background: var(--wp-admin-theme-color);
	border-color: var(--wp-admin-theme-color);
}

// Radio checked state - uses theme color
input[type="radio"]:checked {
	background: var(--wp-admin-theme-color);
	border-color: var(--wp-admin-theme-color);
}

.wp-core-ui input[type="reset"]:hover,
.wp-core-ui input[type="reset"]:active {
	color: variables.$link-focus;
}

// Text input focus - outset focus ring matching button focus style
input[type="text"]:focus,
input[type="password"]:focus,
input[type="color"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="email"]:focus,
input[type="month"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
input[type="week"]:focus,
select:focus,
textarea:focus {
	border-color: var(--wp-admin-theme-color);
	box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
}

// Checkbox/Radio focus - Gutenberg-style outset focus ring
input[type="checkbox"]:focus,
input[type="radio"]:focus {
	border-color: tokens.$gray-900;
	box-shadow: 0 0 0 2px tokens.$white, 0 0 0 4px var(--wp-admin-theme-color);
	outline: 2px solid transparent;
}

// Select focus (wp-core-ui styled selects)
.wp-core-ui select:focus {
	border-color: var(--wp-admin-theme-color);
	box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
}

// Autocomplete focus state
.wp-tags-autocomplete .ui-state-focus,
.wp-tags-autocomplete [aria-selected="true"] {
	background-color: var(--wp-admin-theme-color);
}

// Password field focus
#pass1:focus,
#pass1-text:focus {
	box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
}

// Password toggle button focus
.mailserver-pass-wrap .button.wp-hide-pw:focus {
	border-color: var(--wp-admin-theme-color);
	box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
}


/* Core UI */

.wp-core-ui {
	/* Default button - theme color border and text (matches secondary) */
	/* Exclude .button-link without increasing specificity. */
	.button:where(:not(.button-link)) {
		@include mixins.button-secondary();
	}

	/* Secondary button - same as default */
	.button-secondary {
		@include mixins.button-secondary();
	}

	/* Primary button - theme color background */
	.button-primary {
		@include mixins.button();
	}

	.button-group > .button.active {
		border-color: var(--wp-admin-theme-color);
		background: rgba(var(--wp-admin-theme-color--rgb), 0.08);
	}

	.wp-ui-primary {
		color: variables.$text-color;
		background-color: variables.$base-color;
	}
	.wp-ui-text-primary {
		color: variables.$base-color;
	}

	.wp-ui-highlight {
		color: variables.$menu-highlight-text;
		background-color: variables.$menu-highlight-background;
	}
	.wp-ui-text-highlight {
		color: variables.$menu-highlight-background;
	}

	.wp-ui-notification {
		color: variables.$menu-bubble-text;
		background-color: variables.$menu-bubble-background;
	}
	.wp-ui-text-notification {
		color: variables.$menu-bubble-background;
	}

	.wp-ui-text-icon {
		color: variables.$menu-icon;
	}
}


/* List tables */

// .page-title-action uses secondary button styling
.wrap .page-title-action {
	background: transparent;
	border: 1px solid var(--wp-admin-theme-color);
	border-radius: tokens.$radius-s;
	color: var(--wp-admin-theme-color);
}

.wrap .page-title-action:hover {
	background: rgba(var(--wp-admin-theme-color--rgb), 0.04);
	border-color: var(--wp-admin-theme-color-darker-20);
	color: var(--wp-admin-theme-color-darker-20);
}

.wrap .page-title-action:focus {
	background: transparent;
	border-color: var(--wp-admin-theme-color);
	color: var(--wp-admin-theme-color);
	box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 1.5px) var(--wp-admin-theme-color);
	outline: 1px solid transparent;
}

.wrap .page-title-action:active {
	background: rgba(var(--wp-admin-theme-color--rgb), 0.08);
	border-color: var(--wp-admin-theme-color-darker-20);
	color: var(--wp-admin-theme-color-darker-20);
	box-shadow: none;
}

.view-switch a.current:before {
	color: variables.$menu-background;
}

.view-switch a:hover:before {
	color: variables.$menu-bubble-background;
}


/* Admin Menu */

#adminmenuback,
#adminmenuwrap,
#adminmenu {
	background: variables.$menu-background;
}

#adminmenu a {
	color: variables.$menu-text;
}

#adminmenu div.wp-menu-image:before {
	color: variables.$menu-icon;
}

#adminmenu a:hover,
#adminmenu li.menu-top:hover,
#adminmenu li.opensub > a.menu-top,
#adminmenu li > a.menu-top:focus {
	color: variables.$menu-highlight-text;
	background-color: variables.$menu-highlight-background;
}

#adminmenu li.menu-top:hover div.wp-menu-image:before,
#adminmenu li.opensub > a.menu-top div.wp-menu-image:before {
	color: variables.$menu-highlight-icon;
}


/* Active tabs use a bottom border color that matches the page background color. */

.about-wrap .nav-tab-active,
.nav-tab-active,
.nav-tab-active:hover {
	background-color: variables.$body-background;
	border-bottom-color: variables.$body-background;
}


/* Admin Menu: submenu */

#adminmenu .wp-submenu,
#adminmenu .wp-has-current-submenu .wp-submenu,
#adminmenu .wp-has-current-submenu.opensub .wp-submenu,
#adminmenu a.wp-has-current-submenu:focus + .wp-submenu {
	background: variables.$menu-submenu-background;
}

#adminmenu li.wp-has-submenu.wp-not-current-submenu.opensub:hover:after,
#adminmenu li.wp-has-submenu.wp-not-current-submenu:focus-within:after {
	border-right-color: variables.$menu-submenu-background;
}

#adminmenu .wp-submenu .wp-submenu-head {
	color: variables.$menu-submenu-text;
}

#adminmenu .wp-submenu a,
#adminmenu .wp-has-current-submenu .wp-submenu a,
#adminmenu a.wp-has-current-submenu:focus + .wp-submenu a,
#adminmenu .wp-has-current-submenu.opensub .wp-submenu a {
	color: variables.$menu-submenu-text;

	&:focus, &:hover {
		color: variables.$menu-submenu-focus-text;
	}
}


/* Admin Menu: current */

#adminmenu .wp-submenu li.current a,
#adminmenu a.wp-has-current-submenu:focus + .wp-submenu li.current a,
#adminmenu .wp-has-current-submenu.opensub .wp-submenu li.current a {
	color: variables.$menu-submenu-current-text;

	&:hover, &:focus {
		color: variables.$menu-submenu-focus-text;
	}
}

ul#adminmenu a.wp-has-current-submenu:after,
ul#adminmenu > li.current > a.current:after {
    border-right-color: variables.$body-background;
}

#adminmenu li.current a.menu-top,
#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
#adminmenu li.wp-has-current-submenu .wp-submenu .wp-submenu-head,
.folded #adminmenu li.current.menu-top {
	color: variables.$menu-current-text;
	background: variables.$menu-current-background;
}

#adminmenu li.wp-has-current-submenu div.wp-menu-image:before,
#adminmenu a.current:hover div.wp-menu-image:before,
#adminmenu li.current div.wp-menu-image:before,
#adminmenu li.wp-has-current-submenu a:focus div.wp-menu-image:before,
#adminmenu li.wp-has-current-submenu.opensub div.wp-menu-image:before,
#adminmenu li:hover div.wp-menu-image:before,
#adminmenu li a:focus div.wp-menu-image:before,
#adminmenu li.opensub div.wp-menu-image:before {
	color: variables.$menu-current-icon;
}


/* Admin Menu: bubble */

#adminmenu .menu-counter,
#adminmenu .awaiting-mod,
#adminmenu .update-plugins {
	color: variables.$menu-bubble-text;
	background: variables.$menu-bubble-background;
}

#adminmenu li.current a .awaiting-mod,
#adminmenu li a.wp-has-current-submenu .update-plugins,
#adminmenu li:hover a .awaiting-mod,
#adminmenu li.menu-top:hover > a .update-plugins {
	color: variables.$menu-bubble-current-text;
	background: variables.$menu-bubble-current-background;
}


/* Admin Menu: collapse button */

#collapse-button {
	color: variables.$menu-collapse-text;
}

#collapse-button:hover,
#collapse-button:focus {
	color: variables.$menu-highlight-text;
	background: variables.$menu-highlight-background;
}

/* Admin Bar */

#wpadminbar {
	color: variables.$menu-text;
	background: variables.$menu-background;
}

#wpadminbar .ab-item,
#wpadminbar a.ab-item,
#wpadminbar > #wp-toolbar span.ab-label,
#wpadminbar > #wp-toolbar span.noticon {
	color: variables.$menu-text;
}

#wpadminbar .ab-icon,
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before,
#wpadminbar .ab-item:after {
	color: variables.$menu-icon;
}

#wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus,
#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus,
#wpadminbar.nojs .ab-top-menu > li.menupop:hover > .ab-item,
#wpadminbar .ab-top-menu > li.menupop.hover > .ab-item {
	color: variables.$menu-submenu-focus-text;
	background: variables.$menu-submenu-background;
}

#wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar li.hover span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label {
	color: variables.$menu-submenu-focus-text;
}

#wpadminbar:not(.mobile) li:hover .ab-icon:before,
#wpadminbar:not(.mobile) li:hover .ab-item:before,
#wpadminbar:not(.mobile) li:hover .ab-item:after,
#wpadminbar:not(.mobile) li:hover #adminbarsearch:before {
	color: variables.$menu-submenu-focus-text;
}


/* Admin Bar: submenu */

#wpadminbar .menupop .ab-sub-wrapper {
	background: variables.$menu-submenu-background;
}

#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,
#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu {
	background: variables.$menu-submenu-background-alt;
}

#wpadminbar .ab-submenu .ab-item,
#wpadminbar .quicklinks .menupop ul li a,
#wpadminbar .quicklinks .menupop.hover ul li a,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a {
	color: variables.$menu-submenu-text;
}

#wpadminbar .quicklinks li .blavatar,
#wpadminbar .menupop .menupop > .ab-item:before {
	color: variables.$menu-icon;
}

#wpadminbar .quicklinks .menupop ul li a:hover,
#wpadminbar .quicklinks .menupop ul li a:focus,
#wpadminbar .quicklinks .menupop ul li a:hover strong,
#wpadminbar .quicklinks .menupop ul li a:focus strong,
#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a,
#wpadminbar .quicklinks .menupop.hover ul li a:hover,
#wpadminbar .quicklinks .menupop.hover ul li a:focus,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,
#wpadminbar li:hover .ab-icon:before,
#wpadminbar li:hover .ab-item:before,
#wpadminbar li a:focus .ab-icon:before,
#wpadminbar li .ab-item:focus:before,
#wpadminbar li .ab-item:focus .ab-icon:before,
#wpadminbar li.hover .ab-icon:before,
#wpadminbar li.hover .ab-item:before,
#wpadminbar li:hover #adminbarsearch:before,
#wpadminbar li #adminbarsearch.adminbar-focused:before {
	color: variables.$menu-submenu-focus-text;
}

#wpadminbar .quicklinks li a:hover .blavatar,
#wpadminbar .quicklinks li a:focus .blavatar,
#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a .blavatar,
#wpadminbar .menupop .menupop > .ab-item:hover:before,
#wpadminbar.mobile .quicklinks .hover .ab-icon:before,
#wpadminbar.mobile .quicklinks .hover .ab-item:before {
	color: variables.$menu-submenu-focus-text;
}

#wpadminbar.mobile .quicklinks .ab-icon:before,
#wpadminbar.mobile .quicklinks .ab-item:before {
	color: variables.$menu-icon;
}


/* Admin Bar: search */

#wpadminbar #adminbarsearch:before {
	color: variables.$menu-icon;
}

#wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input:focus {
	color: variables.$menu-text;
	background: variables.$adminbar-input-background;
}

/* Admin Bar: recovery mode */

#wpadminbar #wp-admin-bar-recovery-mode {
	color: variables.$adminbar-recovery-exit-text;
	background-color: variables.$adminbar-recovery-exit-background;
}

#wpadminbar #wp-admin-bar-recovery-mode .ab-item,
#wpadminbar #wp-admin-bar-recovery-mode a.ab-item {
	color: variables.$adminbar-recovery-exit-text;
}

#wpadminbar .ab-top-menu > #wp-admin-bar-recovery-mode.hover >.ab-item,
#wpadminbar.nojq .quicklinks .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus,
#wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus {
	color: variables.$adminbar-recovery-exit-text;
	background-color: variables.$adminbar-recovery-exit-background-alt;
}

/* Admin Bar: my account */

#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img {
	border-color: variables.$adminbar-avatar-frame;
	background-color: variables.$adminbar-avatar-frame;
}

#wpadminbar #wp-admin-bar-user-info .display-name {
	color: variables.$menu-text;
}

#wpadminbar #wp-admin-bar-user-info a:hover .display-name {
	color: variables.$menu-submenu-focus-text;
}

#wpadminbar #wp-admin-bar-user-info .username {
	color: variables.$menu-submenu-text;
}


/* Pointers */

.wp-pointer .wp-pointer-content h3 {
	background-color: variables.$highlight-color;
	border-color: color.adjust(variables.$highlight-color, $lightness: -5%);
}

.wp-pointer .wp-pointer-content h3:before {
	color: variables.$highlight-color;
}

.wp-pointer.wp-pointer-top .wp-pointer-arrow,
.wp-pointer.wp-pointer-top .wp-pointer-arrow-inner,
.wp-pointer.wp-pointer-undefined .wp-pointer-arrow,
.wp-pointer.wp-pointer-undefined .wp-pointer-arrow-inner {
	border-bottom-color: variables.$highlight-color;
}


/* Media */

.media-item .bar,
.media-progress-bar div {
	background-color: variables.$highlight-color;
}

.details.attachment {
	box-shadow:
		inset 0 0 0 3px #fff,
		inset 0 0 0 7px variables.$highlight-color;
}

.attachment.details .check {
	background-color: variables.$highlight-color;
	box-shadow: 0 0 0 1px #fff, 0 0 0 2px variables.$highlight-color;
}

.media-selection .attachment.selection.details .thumbnail {
	box-shadow: 0 0 0 1px #fff, 0 0 0 3px variables.$highlight-color;
}


/* Themes */

.theme-browser .theme.active .theme-name,
.theme-browser .theme.add-new-theme a:hover:after,
.theme-browser .theme.add-new-theme a:focus:after {
	background: variables.$highlight-color;
}

.theme-browser .theme.add-new-theme a:hover span:after,
.theme-browser .theme.add-new-theme a:focus span:after {
	color: variables.$highlight-color;
}

.theme-section.current,
.theme-filter.current {
	border-bottom-color: variables.$menu-background;
}

body.more-filters-opened .more-filters {
	color: variables.$menu-text;
	background-color: variables.$menu-background;
}

body.more-filters-opened .more-filters:before {
	color: variables.$menu-text;
}

body.more-filters-opened .more-filters:hover,
body.more-filters-opened .more-filters:focus {
	background-color: variables.$menu-highlight-background;
	color: variables.$menu-highlight-text;
}

body.more-filters-opened .more-filters:hover:before,
body.more-filters-opened .more-filters:focus:before {
	color: variables.$menu-highlight-text;
}

/* Widgets */

.widgets-chooser li.widgets-chooser-selected {
	background-color: variables.$menu-highlight-background;
	color: variables.$menu-highlight-text;
}

.widgets-chooser li.widgets-chooser-selected:before,
.widgets-chooser li.widgets-chooser-selected:focus:before {
	color: variables.$menu-highlight-text;
}


/* Nav Menus */

.nav-menus-php .item-edit:focus:before {
	box-shadow:
		0 0 0 1px color.adjust(variables.$button-color, $lightness: 10%),
		0 0 2px 1px variables.$button-color;
}


/* Responsive Component */

div#wp-responsive-toggle a:before {
	color: variables.$menu-icon;
}

.wp-responsive-open div#wp-responsive-toggle a {
	// ToDo: make inset border
	border-color: transparent;
	background: variables.$menu-highlight-background;
}

.wp-responsive-open #wpadminbar #wp-admin-bar-menu-toggle a {
	background: variables.$menu-submenu-background;
}

.wp-responsive-open #wpadminbar #wp-admin-bar-menu-toggle .ab-icon:before {
	color: variables.$menu-icon;
}

/* TinyMCE */

.mce-container.mce-menu .mce-menu-item:hover,
.mce-container.mce-menu .mce-menu-item.mce-selected,
.mce-container.mce-menu .mce-menu-item:focus,
.mce-container.mce-menu .mce-menu-item-normal.mce-active,
.mce-container.mce-menu .mce-menu-item-preview.mce-active {
	background: variables.$highlight-color;
}

/* Customizer */
.wp-core-ui {
	#customize-controls .control-section:hover > .accordion-section-title,
	#customize-controls .control-section .accordion-section-title:hover,
	#customize-controls .control-section.open .accordion-section-title,
	#customize-controls .control-section .accordion-section-title:focus {
		color: variables.$link;
		border-left-color: variables.$button-color;
	}

	.customize-controls-close:focus,
	.customize-controls-close:hover,
	.customize-controls-preview-toggle:focus,
	.customize-controls-preview-toggle:hover {
		color: variables.$link;
		border-top-color: variables.$button-color;
	}

	.customize-panel-back:hover,
	.customize-panel-back:focus,
	.customize-section-back:hover,
	.customize-section-back:focus {
		color: variables.$link;
		border-left-color: variables.$button-color;
	}

	.customize-screen-options-toggle:hover,
	.customize-screen-options-toggle:active,
	.customize-screen-options-toggle:focus,
	.active-menu-screen-options .customize-screen-options-toggle,
	#customize-controls .customize-info.open.active-menu-screen-options .customize-help-toggle:hover,
	#customize-controls .customize-info.open.active-menu-screen-options .customize-help-toggle:active,
	#customize-controls .customize-info.open.active-menu-screen-options .customize-help-toggle:focus {
		color: variables.$link;
	}

	.customize-screen-options-toggle:focus:before,
	#customize-controls .customize-info .customize-help-toggle:focus:before,
	&.wp-customizer button:focus .toggle-indicator:before,
	.menu-item-bar .item-delete:focus:before,
	#available-menu-items .item-add:focus:before,
	#customize-save-button-wrapper .save:focus,
	#publish-settings:focus {
		box-shadow:
			0 0 0 1px color.adjust(variables.$button-color, $lightness: 10%),
			0 0 2px 1px variables.$button-color;
	}

	#customize-controls .customize-info.open .customize-help-toggle,
	#customize-controls .customize-info .customize-help-toggle:focus,
	#customize-controls .customize-info .customize-help-toggle:hover {
		color: variables.$link;
	}

	.control-panel-themes .customize-themes-section-title:focus,
	.control-panel-themes .customize-themes-section-title:hover {
		border-left-color: variables.$button-color;
		color: variables.$link;
	}

	.control-panel-themes .theme-section .customize-themes-section-title.selected:after {
		background: variables.$button-color;
	}

	.control-panel-themes .customize-themes-section-title.selected {
		color: variables.$link;
	}

	#customize-theme-controls .control-section:hover > .accordion-section-title:after,
	#customize-theme-controls .control-section .accordion-section-title:hover:after,
	#customize-theme-controls .control-section.open .accordion-section-title:after,
	#customize-theme-controls .control-section .accordion-section-title:focus:after,
	#customize-outer-theme-controls .control-section:hover > .accordion-section-title:after,
	#customize-outer-theme-controls .control-section .accordion-section-title:hover:after,
	#customize-outer-theme-controls .control-section.open .accordion-section-title:after,
	#customize-outer-theme-controls .control-section .accordion-section-title:focus:after {
		color: variables.$link;
	}

	.customize-control .attachment-media-view .button-add-media:focus {
		background-color: #fbfbfc;
		border-color: variables.$button-color;
		border-style: solid;
		box-shadow: 0 0 0 1px variables.$button-color;
		outline: 2px solid transparent;
	}

	.wp-full-overlay-footer .devices button:focus,
	.wp-full-overlay-footer .devices button.active:hover {
		border-bottom-color: variables.$button-color;
	}

	.wp-full-overlay-footer .devices button:hover:before,
	.wp-full-overlay-footer .devices button:focus:before {
		color: variables.$button-color;
	}

	.wp-full-overlay .collapse-sidebar:hover,
	.wp-full-overlay .collapse-sidebar:focus {
		color: variables.$button-color;
	}

	.wp-full-overlay .collapse-sidebar:hover .collapse-sidebar-arrow,
	.wp-full-overlay .collapse-sidebar:focus .collapse-sidebar-arrow {
		box-shadow:
			0 0 0 1px color.adjust(variables.$button-color, $lightness: 10%),
			0 0 2px 1px variables.$button-color;
	}

	&.wp-customizer .theme-overlay .theme-header .close:focus,
	&.wp-customizer .theme-overlay .theme-header .close:hover,
	&.wp-customizer .theme-overlay .theme-header .right:focus,
	&.wp-customizer .theme-overlay .theme-header .right:hover,
	&.wp-customizer .theme-overlay .theme-header .left:focus,
	&.wp-customizer .theme-overlay .theme-header .left:hover {
		border-bottom-color: variables.$button-color;
		color: variables.$link;
	}
}
