
	.menu-context__item.svelte-1tsx0kc:disabled {
		opacity: 0.4;
		cursor: not-allowed;
	}

	.waypoint-panel-action.svelte-itwxca {
		display: flex;
		align-items: center;
		margin-left: auto; /* Push it to the right if there's extra space before the arrow */
	}

	/* Ensure the arrow stays on the right even with an action button */
	.waypoint-panel-header.svelte-itwxca {
		gap: 8px; /* Override the default gap if needed to keep them tight */
	}

	.waypoint-panel-title.svelte-itwxca {
		flex: 1; /* Allow title to take available space */
		text-align: left;
	}

	.menu-context__item--disabled.svelte-ybvc53 {
		opacity: 0.5;
		cursor: not-allowed;
	}

	.waypoint-editor-empty-state.svelte-sloqjh {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		height: 100%;
		gap: 1rem;
	}
	.btn-empty-state-add.svelte-sloqjh {
		background: none;
		border: none;
		padding: 0;
		cursor: pointer;
	}

	/* Rely on viewer.css and info_panels.css */

	/*
Since this is a throwaway widget I just asked the LLM to make, I just put the CSS here.
*/
	.map-settings-wrapper.svelte-bri8xp {
		position: absolute;
		top: 60px;
		left: 14px;
		z-index: 10;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: var(--spacing-sm);
	}

	.map-settings-button.svelte-bri8xp {
		width: 32px;
		height: 32px;
		background: rgba(0, 0, 0, 0.7);
		border: 1px solid var(--base-700);
		border-radius: var(--radius-sm);
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		transition: all 0.2s ease;
		padding: 0;
	}

	.map-settings-button.svelte-bri8xp:hover {
		background: rgba(0, 0, 0, 0.9);
		border-color: var(--base-500);
	}

	.map-settings-button.is-active.svelte-bri8xp {
		background: var(--base-800);
		border-color: var(--base-300);
	}

	.map-settings-button.svelte-bri8xp img:where(.svelte-bri8xp) {
		width: 18px;
		height: 18px;
		opacity: 0.8;
	}

	.map-settings-popover.svelte-bri8xp {
		background: var(--base-900);
		border: 1px solid var(--base-700);
		border-radius: var(--radius-sm);
		padding: var(--spacing-xs) 0;
		min-width: 200px;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
		display: flex;
		flex-direction: column;
	}

	.popover-category.svelte-bri8xp {
		padding: var(--spacing-sm) var(--spacing-md);
		font-size: var(--font-size-xs);
		font-weight: var(--font-weight-bold);
		text-transform: uppercase;
		color: var(--base-500);
		border-bottom: 1px solid var(--base-800);
		margin-bottom: var(--spacing-xs);
	}

	.popover-item.svelte-bri8xp {
		padding: var(--spacing-sm) var(--spacing-md);
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: var(--spacing-md);
	}

	.popover-column.svelte-bri8xp {
		flex-direction: column;
		align-items: stretch;
		gap: var(--spacing-xs);
	}

	.popover-row.svelte-bri8xp {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.popover-text.svelte-bri8xp {
		font-size: var(--font-size-sm);
		color: var(--base-100);
	}

	.resolution-value.svelte-bri8xp {
		font-family: var(--font-family-mono);
		font-size: var(--font-size-sm);
		color: var(--base-0);
	}

	.resolution-slider.svelte-bri8xp {
		width: 100%;
		height: 4px;
		background: var(--base-700);
		border-radius: 2px;
		outline: none;
		margin: var(--spacing-xs) 0;
		cursor: pointer;
	}

	.group-selection-box.svelte-1nbe4zv {
		position: absolute;
		border: 1px solid rgba(255, 255, 255, 0.8);
		background-color: rgba(255, 255, 255, 0.15);
		pointer-events: none;
		z-index: 1000;
	}

	.cesium-wrapper.svelte-gsae2n {
		position: relative;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.cesium-container.svelte-gsae2n {
		width: 100%;
		height: 100%;
	}

	/* Rely on viewer.css and layout.css */
	#main-video-container.svelte-1s5dfof {
		flex: 1;
		background: #000;
		position: relative;
		min-height: 0;
		display: flex;
	}

	.view-wrapper.svelte-1s5dfof {
		width: 100%;
		height: 100%;
		position: relative;
	}

	#video-drone-label.svelte-1s5dfof {
		display: flex !important;
	}

	.wp-card.active.svelte-8fvrks {
		border: 2px solid var(--color-blue-light);
	}
	.wp-card.svelte-8fvrks {
		cursor: pointer;
	}
	.wp-card.svelte-8fvrks:disabled {
		cursor: not-allowed;
		opacity: 0.5;
	}

	.waypoint-vertical-profile.svelte-kslsfd {
		position: absolute;
		transform: translate(-50%, -50%);
		pointer-events: auto;
		cursor: pointer;
		outline: none;
	}

	.loading.svelte-kslsfd {
		opacity: 0.5;
	}

	.settings-menu.svelte-plzemh {
		padding: 8px;
		display: flex;
		flex-direction: column;
		gap: 8px;
		min-width: 200px;
	}

	.settings-menu-title.svelte-plzemh {
		padding: 4px 8px;
		font-weight: 600;
		font-size: 14px;
		border-bottom: 1px solid var(--color-border);
		margin-bottom: 4px;
	}

	.settings-item.svelte-plzemh {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 8px;
		border-radius: 4px;
		border: none;
		background: transparent;
		cursor: pointer;
		width: 100%;
		text-align: left;
		color: inherit;
		font-family: inherit;
		font-size: inherit;
	}

	.settings-item.svelte-plzemh:hover {
		background: var(--color-surface-hover);
	}

	.settings-label.svelte-plzemh {
		font-size: 14px;
	}

	#playback-speed-menu {
		min-width: 60px;
	}

	#playback-speed-menu .menu-context__item {
		text-align: center;
	}

	#replay-menu {
		width: 360px;
		height: 400px;
		overflow: hidden;
	}

	#replay-menu .menu-context__content {
		height: 100%;
		padding: 0;
	}

	.replay-menu__body.svelte-16fcj4h {
		height: 100%;
		display: flex;
		flex-direction: column;
	}

	.replay-menu__empty.svelte-16fcj4h {
		padding: 12px;
		color: var(--text-muted, #aaa);
		font-size: 0.85rem;
	}

	.replay-menu__empty--error.svelte-16fcj4h {
		color: var(--color-danger, #ff6b6b);
	}

	.player-controls.svelte-10x5jsr {
		display: flex;
		align-items: center;
		gap: 2px;
		background-color: var(--base-800);
		border-radius: var(--radius-sm);
	}

	.player-btn {
		border: none !important;
	}

	.live-btn {
		width: 42px !important;
	}

	.live-btn--active {
		pointer-events: none;
	}

	.live-btn .btn-icon {
		width: 26px !important;
		height: 12px !important;
	}

	.controlbar-container.svelte-k7dy2u {
		width: 100%;
		flex-shrink: 0;
	}
