@charset "UTF-8";

* {
	box-sizing: border-box;
}

html,
body {
	height: 100%;
	margin: 0;
	font-family: "Canva Sans Variable";
	box-sizing: border-box;
}

html {
	overflow: hidden;
}

#graphic {
	width: 100%;
	display: block;
}

.nodes circle {
	cursor: pointer;
}

.nodes text {
	cursor: pointer;
}

.node-container:focus {
	outline: none;
}

#graphic.chart-type-radial
	.node-container:focus-visible
	.node-label[visibility="visible"] {
	outline: #4d90fe auto 0.8rem;
	outline-offset: 0.6rem;
}

#graphic.chart-type-regular
	.node-container:focus-visible
	.node-label-container {
	outline: #4d90fe auto 0.8rem;
	outline-offset: 0.3rem;
}

.flourish-popup {
	pointer-events: none;
}

.flourish-popup .flourish-popup-content {
	max-width: 400px;
}

.flourish-popup .flourish-popup-content img {
	max-width: 100%;
}

.flourish-popup .flourish-popup-content img[src=""] {
	display: none;
}

/* Game notification styles */
.game-notification {
	pointer-events: none;
	user-select: none;
}

.game-notification text {
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.game-notification rect {
	filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3));
}

/* Completion notification specific styles */
.completion-notification rect {
	filter: drop-shadow(0 6px 20px rgba(0, 0, 0, 0.4));
}

/* Restart button styles (in completion notification) */
.restart-button {
	transition: transform 0.2s ease;
}

.restart-button rect {
	transition: opacity 0.2s ease;
	filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}

.restart-button:hover rect {
	filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.3));
}

.restart-button:active {
	transform: scale(0.98) !important;
}

/* Persistent restart button styles */
.persistent-restart-button {
	transition: all 0.2s ease;
}

.persistent-restart-button rect {
	transition: all 0.2s ease;
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.15));
}

.persistent-restart-button:hover rect {
	filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.25));
}

.persistent-restart-button:active {
	transform: scale(0.95) !important;
}
