/* Cicloturisme Shortcodes - estils mínims.
   Colors i tipografia es deixen a Elementor / tema. */

.ciclo-sc { width: 100%; }

.ciclo-sc-mapa-cont {
	width: 100%;
	min-height: 200px;
	border-radius: 4px;
	overflow: hidden;
}

.ciclo-sc-perfil-cont {
	width: 100%;
	min-height: 120px;
	position: relative;
}

.ciclo-sc-perfil-cont canvas {
	width: 100% !important;
	height: 100% !important;
}

/* Botó fullscreen */
.ciclo-sc-fs-btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	color: #333;
	background: #fff;
	text-decoration: none !important;
}
.ciclo-sc-fs-btn a:hover { background: #f4f4f4; color: #000; }

/* Quan el mapa està a pantalla completa, omplir tota la finestra */
.ciclo-sc-mapa-cont:fullscreen,
.ciclo-sc-mapa-cont:-webkit-full-screen {
	width: 100vw !important;
	height: 100vh !important;
	border-radius: 0;
}

/* Pins inici/final */
.ciclo-sc-pin {
	border-radius: 50%;
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px rgba(0,0,0,0.4);
}
.ciclo-sc-pin-start { background: #2ecc71; }
.ciclo-sc-pin-end   { background: #e74c3c; }

/* Botó descàrrega: estil molt neutre; el client el redefineix amb Elementor */
.ciclo-sc-btn-gpx {
	display: inline-block;
	padding: 12px 22px;
	background: #ff8a1f;
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 6px;
	font-weight: 600;
	line-height: 1;
	transition: background .15s ease;
}
.ciclo-sc-btn-gpx:hover { background: #e67712; }

/* Layout per al shortcode sincronitzat */
.ciclo-sc-sync { display: block; }
.ciclo-sc-sync-v .ciclo-sc-sync-map { margin-bottom: 12px; }

.ciclo-sc-sync-h {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
	gap: 16px;
	align-items: stretch;
}
.ciclo-sc-sync-h .ciclo-sc-sync-map,
.ciclo-sc-sync-h .ciclo-sc-sync-profile { min-width: 0; }
@media ( max-width: 768px ) {
	.ciclo-sc-sync-h {
		grid-template-columns: 1fr;
	}
}

/* Notice només visible a admins logats */
.ciclo-sc-admin-notice {
	padding: 8px 12px;
	background: #fff3cd;
	border-left: 4px solid #d4a017;
	color: #5a4500;
	font-family: monospace;
	font-size: 13px;
	margin: 8px 0;
}
