.app-tab-nav__tabs {
	display: flex;
	align-items: stretch;
	box-shadow: inset 0 -1px 0 #ccc;
	margin-bottom: var(--main-gap);

	&-item {
		background: transparent;
		border: none;
		box-shadow: none;
		border-radius: 0;
		cursor: pointer;
		height: 48px;
		padding: 3px 16px; // Use padding to offset the is-active border, this benefits Windows High Contrast mode
		margin-left: 0;
		font-weight: 500;
		//transition: box-shadow 0.1s linear;
		box-sizing: border-box;

		// This pseudo-element "duplicates" the tab label and sets the text to bold.
		// This ensures that the tab doesn't change width when selected.
		// See: https://github.com/WordPress/gutenberg/pull/9793
		&::after {
			content: attr(data-label);
			display: block;
			height: 0;
			overflow: hidden;
			speak: none;
			visibility: hidden;
		}

		&:focus:not(:disabled) {
			box-shadow: inset 0 2px var(--wp-admin-theme-color);
		}

		&.is-active {
			// The transparent shadow ensures no jumpiness
			// when focus animates on an active tab.
			box-shadow: inset 0 0 0 2px transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color);
			position: relative;

			// This border appears in Windows High Contrast mode
			// instead of the box-shadow.
			&::before {
				content: "";
				position: absolute;
				top: 0;
				bottom: 1px;
				right: 0;
				left: 0;
				border-bottom: 4px solid transparent;
			}
		}

		&:focus {
			box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color);
		}

		&.is-active:focus {
			box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color), inset 0 0 -4px 0 0 var(--wp-admin-theme-color);
		}
	}
}
