/**
 * TechWorld accessibility and motion-safety layer.
 */
.skip-link {
	position: fixed;
	top: 0.75rem;
	left: 0.75rem;
	z-index: 100000;
	padding: 0.75rem 1rem;
	border-radius: 0.5rem;
	background: #ffffff;
	color: #0f172a;
	box-shadow: 0 10px 35px rgba(15, 23, 42, 0.25);
	font-weight: 800;
	text-decoration: none;
	transform: translateY(-180%);
	transition: transform 140ms ease;
}

.skip-link:focus {
	clip: auto;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	transform: translateY(0);
}

#primary:focus {
	outline: none;
}

.is-keyboard-navigation :focus-visible {
	outline: 3px solid var(--techworld-color-focus, #2563eb);
	outline-offset: 3px;
}

[aria-disabled="true"],
:disabled {
	cursor: not-allowed;
	opacity: 0.65;
}

[hidden] {
	display: none !important;
}

@media (forced-colors: active) {
	.techworld-button,
	.header-icon-button,
	.menu-toggle,
	.mobile-navigation__close,
	.header-search__close {
		border: 1px solid ButtonText;
	}

	:focus-visible {
		outline: 3px solid Highlight !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html:focus-within {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
