/**
 * NWUI Icons & round controls — prevents theme/browser style bleed.
 */

/* SVG baseline */
.nwui-icon-svg,
[class*="nwui-"] svg.nwui-icon-svg {
	display: block;
	flex-shrink: 0;
	pointer-events: none;
	vertical-align: middle;
}

.nwui-icon-fill .nwui-icon-svg {
	fill: currentColor;
	stroke: none;
}

/* Kill theme blue boxes on links/buttons inside plugin UI */
.nwui-header a,
.nwui-header button,
.nwui-mobile-nav a,
.nwui-mobile-nav button,
.nwui-mini-cart a,
.nwui-mini-cart button,
.nwui-search-overlay a,
.nwui-search-overlay button,
.nwui-header-drawer a,
.nwui-header-drawer button,
.nwui-modal a,
.nwui-modal button {
	-webkit-tap-highlight-color: transparent;
	text-decoration: none;
}

.nwui-header a:hover,
.nwui-header a:focus,
.nwui-header a:active,
.nwui-header button:hover,
.nwui-header button:focus,
.nwui-header button:active,
.nwui-mobile-nav a:hover,
.nwui-mobile-nav a:focus,
.nwui-mobile-nav a:active,
.nwui-mini-cart button:hover,
.nwui-mini-cart button:focus,
.nwui-mini-cart button:active,
.nwui-search-overlay button:hover,
.nwui-search-overlay button:focus,
.nwui-search-overlay button:active,
.nwui-header-drawer button:hover,
.nwui-header-drawer button:focus,
.nwui-header-drawer button:active {
	outline: none !important;
	box-shadow: none;
}

/* Perfect round icon buttons */
.nwui-round-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	padding: 0;
	border: none;
	border-radius: 50% !important;
	background: var(--nwui-h-mobile-bg, var(--nwui-card));
	box-shadow: var(--nwui-shadow-raised);
	color: var(--nwui-h-icon, var(--nwui-icon));
	cursor: pointer;
	text-decoration: none;
	transition: transform var(--nwui-speed) ease, box-shadow var(--nwui-speed) ease, color var(--nwui-speed) ease;
	-webkit-appearance: none;
	appearance: none;
}

.nwui-round-btn:hover,
.nwui-round-btn:focus {
	color: var(--nwui-h-active, var(--nwui-primary));
	outline: none !important;
	background: var(--nwui-h-mobile-bg, var(--nwui-card)) !important;
}

.nwui-round-btn:active {
	box-shadow: var(--nwui-shadow-pressed);
	transform: scale(0.94);
}

.nwui-round-btn.nwui-round-btn-sm {
	width: 38px;
	height: 38px;
	min-width: 38px;
	min-height: 38px;
}

.nwui-round-btn.nwui-round-btn-xs {
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
}

.nwui-close-btn,
button.nwui-close-btn,
.nwui-search-close,
.nwui-drawer-close-btn,
.nwui-mini-cart-close,
.nwui-modal-close {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 42px !important;
	height: 42px !important;
	min-width: 42px !important;
	min-height: 42px !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 50% !important;
	background: var(--nwui-bg) !important;
	box-shadow: var(--nwui-shadow-raised) !important;
	color: var(--nwui-icon) !important;
	cursor: pointer;
	line-height: 1 !important;
	transition: transform var(--nwui-speed) ease, box-shadow var(--nwui-speed) ease, color var(--nwui-speed) ease;
	-webkit-appearance: none;
	appearance: none;
}

.nwui-close-btn:hover,
.nwui-close-btn:focus,
.nwui-search-close:hover,
.nwui-search-close:focus,
.nwui-drawer-close-btn:hover,
.nwui-drawer-close-btn:focus,
.nwui-mini-cart-close:hover,
.nwui-mini-cart-close:focus,
.nwui-modal-close:hover,
.nwui-modal-close:focus {
	color: #D63031 !important;
	background: var(--nwui-bg) !important;
	outline: none !important;
	box-shadow: var(--nwui-shadow-raised) !important;
	transform: rotate(90deg);
}

/* Neumorphic search inputs — no browser box */
.nwui-neu-search-input,
.nwui-mobile-search-input,
.nwui-search-input,
.nwui-header input[type="search"] {
	-webkit-appearance: none !important;
	appearance: none !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	border-radius: 0 !important;
}

.nwui-neu-search-input:focus,
.nwui-mobile-search-input:focus,
.nwui-search-input:focus {
	outline: none !important;
	box-shadow: none !important;
	border: none !important;
	background: transparent !important;
}

.nwui-mobile-search-input::-webkit-search-decoration,
.nwui-mobile-search-input::-webkit-search-cancel-button,
.nwui-mobile-search-input::-webkit-search-results-button,
.nwui-mobile-search-input::-webkit-search-results-decoration,
.nwui-search-input::-webkit-search-decoration,
.nwui-search-input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	display: none;
}
