/**
 * The following styles get applied inside the editor only.
 *
 * Replace them with your own styles or remove the file completely.
 */

.wp-block-pablo-moratinos-speaking-events-editor {
	.speaking-events-empty-state {
		text-align: center;
		padding: 3rem 2rem;
		color: #64748b;

		svg {
			margin-bottom: 1rem;
			opacity: 0.5;
		}

		p {
			font-size: 1rem;
			margin-bottom: 1.5rem;
		}
	}

	.speaking-events-list {
		.year-header {
			font-size: 1.25rem;
			font-weight: 600;
			color: #1e293b;
			margin: 2rem 0 1rem 0;
			padding-bottom: 0.5rem;
			border-bottom: 2px solid #e2e8f0;

			&:first-child {
				margin-top: 0;
			}
		}

		.event-card {
			margin-bottom: 1rem;
			border: 1px solid #e2e8f0;

			&:hover {
				border-color: #cbd5e1;
			}
		}

		.event-date {
			color: #3b82f6;
			font-weight: 600;
			font-size: 0.875rem;
			margin-bottom: 0.25rem;
		}

		.event-title {
			margin-bottom: 0.5rem;

			strong {
				color: #1e293b;
				font-size: 1rem;
			}
		}

		.event-presentation {
			color: #374151;
			font-size: 0.875rem;
			margin-bottom: 0.25rem;
		}

		.event-venue {
			color: #64748b;
			font-size: 0.875rem;
			margin-bottom: 0.5rem;
		}

		.event-description {
			color: #64748b;
			font-size: 0.875rem;
			margin-bottom: 0.5rem;
			padding: 0.5rem;
			background-color: #f8fafc;
			border-radius: 4px;
			border-left: 3px solid #e2e8f0;
			font-style: italic;
			line-height: 1.4;
		}

		.event-url {
			font-size: 0.875rem;

			a {
				color: #3b82f6;
				text-decoration: none;

				&:hover {
					text-decoration: underline;
				}
			}
		}
	}

	.event-form {
		.components-base-control {
			margin-bottom: 1.5rem;

			&:last-of-type {
				margin-bottom: 2rem;
			}
		}

		.components-text-control__input[type="date"] {
			max-width: 200px;
		}

		.components-text-control__input[type="url"] {
			font-family: monospace;
			font-size: 0.875rem;
		}

		.components-textarea-control__input {
			resize: vertical;
			min-height: 80px;
			line-height: 1.5;
		}
	}

	// Card header styling
	.components-card-header {
		h3 {
			display: flex;
			align-items: center;
			gap: 0.5rem;
			margin: 0;
			font-size: 1.125rem;
			font-weight: 600;
		}
	}

	// Button spacing in form
	.components-flex {
		gap: 0.75rem;
	}

	// Responsive adjustments for editor
	@media (max-width: 782px) {
		.speaking-events-list .event-card .components-flex {
			flex-direction: column;
			align-items: stretch;

			.components-flex-item:last-child .components-flex {
				flex-direction: row;
				justify-content: flex-start;
			}
		}
	}
}

// Focus states for better accessibility in editor
.wp-block-pablo-moratinos-speaking-events-editor {
	.components-button:focus {
		box-shadow: 0 0 0 2px #007cba;
		outline: 2px solid transparent;
		outline-offset: -2px;
	}

	.components-text-control__input:focus,
	.components-textarea-control__input:focus {
		border-color: #007cba;
		box-shadow: 0 0 0 2px rgba(0, 124, 186, 0.2);
	}
}