/* theme-switcher */
.topbar {
	position: fixed;
	top: 15px;
	right: 15px;
	z-index: 10;
}

/* wysepka */
.topbar-island {
	display: flex;
	align-items: center;
	gap: 10px;

	padding: 8px;
	border-radius: 999px;

	background: rgba(0, 0, 0, 0.25); /* albo var(--surface) z alpha */
	backdrop-filter: blur(10px);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}

/* akcje po lewej */
.page-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.page-actions:empty {
	display: none;
}

.theme-toggle {
	width: 45px;
	height: 45px;
	border-radius: 999px;

	display: grid;
	place-items: center;

	background: var(--accent);
	color: var(--bg);

	border: 0;
	cursor: pointer;

	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
	transition: transform 120ms ease, filter 120ms ease;
}

.theme-toggle:hover {
	transform: translateY(-1px);
	filter: brightness(1.05);
}
.theme-toggle:active {
	transform: translateY(0px);
}

.theme-toggle .icon {
	display: block;
	font-size: 1.5rem;
	line-height: 1;
}

.action-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;

	padding: 8px 12px;
	border-radius: 999px;

	font-family: var(--font-accent);
	font-size: 0.95rem;
	font-weight: 600;

	text-decoration: none;
	color: var(--accent);

	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(6px);

	transition: background-color 120ms ease, transform 120ms ease,
		filter 120ms ease;
}

.action-btn .icon {
	font-family: var(--font-icons);
	font-size: 1.1em;
	line-height: 1;
}

.action-btn:hover {
	background: rgba(255, 255, 255, 0.14);
	transform: translateX(-2px); /* kierunek = back */
}

.action-btn:active {
	transform: translateX(0);
}

.action-btn:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}
