/**
 * Editorial Calendar Page Styles
 *
 * @package Wisewand
 * @since 1.0.0
 */

		.editorial-calendar-page {
			max-width: 1600px;
			margin: 20px auto;
		}

		.calendar-page-header {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 24px;
			padding: 24px;
			background: white;
			border-radius: 12px;
			box-shadow: 0 2px 8px rgba(0,0,0,0.1);
		}

		.calendar-page-header h1 {
			font-size: 28px;
			margin: 0 0 8px 0;
		}

		.calendar-page-header p {
			margin: 0;
			color: #64748b;
		}

		.header-stats {
			display: flex;
			gap: 24px;
		}

		.stat-item {
			text-align: center;
		}

		.stat-value {
			font-size: 32px;
			font-weight: 700;
			color: #4338ca;
		}

		.stat-label {
			font-size: 12px;
			color: #64748b;
			margin-top: 4px;
		}

		.calendar-main {
			background: white;
			padding: 24px;
			border-radius: 12px;
			box-shadow: 0 2px 8px rgba(0,0,0,0.1);
		}

		.calendar-toolbar {
			display: flex;
			justify-content: space-between;
			margin-bottom: 20px;
		}

		.toolbar-left {
			display: flex;
			gap: 12px;
		}

		.calendar-views {
			display: flex;
			gap: 8px;
		}

		.view-btn {
			padding: 8px 16px;
			border: 1px solid #e5e7eb;
			background: white;
			border-radius: 6px;
			cursor: pointer;
			font-weight: 500;
		}

		.view-btn.active {
			background: #4338ca;
			color: white;
			border-color: #4338ca;
		}

		#editorial-calendar {
			margin: 20px 0;
		}

		.calendar-legend {
			display: flex;
			gap: 16px;
			justify-content: center;
			margin-top: 20px;
			padding-top: 20px;
			border-top: 1px solid #e5e7eb;
		}

		.legend-item {
			display: flex;
			align-items: center;
			gap: 8px;
			font-size: 13px;
		}

		.legend-color {
			width: 16px;
			height: 16px;
			border-radius: 4px;
		}

		/* Side Panel */
		.side-panel {
			position: fixed;
			top: 0;
			right: 0;
			bottom: 0;
			width: 600px;
			z-index: 100000;
		}

		.panel-overlay {
			position: fixed;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			background: rgba(0,0,0,0.5);
			z-index: 1;
		}

		.panel-content {
			position: relative;
			background: white;
			height: 100%;
			overflow-y: auto;
			box-shadow: -4px 0 16px rgba(0,0,0,0.1);
			z-index: 2;
		}

		.panel-header {
			position: sticky;
			top: 0;
			background: white;
			padding: 20px 24px;
			border-bottom: 1px solid #e5e7eb;
			display: flex;
			justify-content: space-between;
			align-items: center;
			z-index: 10;
		}

		.panel-header h2 {
			margin: 0;
			font-size: 20px;
		}

		.close-panel {
			background: none;
			border: none;
			font-size: 32px;
			color: #6b7280;
			cursor: pointer;
			line-height: 1;
			padding: 0;
		}

		.close-panel:hover {
			color: #1f2937;
		}

		.panel-body {
			padding: 24px;
		}

		.loading-spinner {
			text-align: center;
			padding: 40px;
			color: #6b7280;
		}

		.panel-section {
			background: #f8fafc;
			border-radius: 12px;
			padding: 20px;
			margin-bottom: 20px;
		}

		.panel-section h3 {
			font-size: 16px;
			font-weight: 700;
			margin: 0 0 16px 0;
			color: #1e293b;
		}

		.section-description {
			font-size: 13px;
			color: #64748b;
			margin: -8px 0 16px 0;
		}

		.optional {
			font-size: 12px;
			color: #94a3b8;
			font-weight: 400;
		}

		.panel-input {
			width: 100%;
			padding: 10px 12px;
			border: 1px solid #d1d5db;
			border-radius: 8px;
			margin-bottom: 16px;
			font-size: 14px;
			transition: border-color 0.2s;
		}

		.panel-input:focus {
			outline: none;
			border-color: #4338ca;
			box-shadow: 0 0 0 3px rgba(67, 56, 202, 0.1);
		}

		label {
			display: block;
			font-size: 13px;
			font-weight: 600;
			color: #374151;
			margin-bottom: 6px;
		}

		.form-row-two {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 16px;
		}

		.form-checkbox {
			margin: 12px 0;
		}

		.form-checkbox label {
			display: flex;
			align-items: center;
			gap: 8px;
			cursor: pointer;
			font-weight: 500;
		}

		.insights-grid {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 12px;
		}

		.metric-card-small {
			background: white;
			border: 1px solid #e5e7eb;
			border-radius: 8px;
			padding: 14px;
			text-align: center;
		}

		.metric-label {
			font-size: 11px;
			color: #64748b;
			font-weight: 500;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			margin-bottom: 6px;
		}

		.metric-value {
			font-size: 22px;
			font-weight: 700;
			color: #4338ca;
		}

		.metric-value-text {
			font-size: 14px;
			font-weight: 600;
			color: #1e293b;
		}

		.metric-sublabel {
			font-size: 11px;
			color: #94a3b8;
			margin-top: 2px;
		}

		.intent-badge-small {
			display: inline-block;
			padding: 4px 12px;
			background: #dbeafe;
			color: #1e40af;
			border-radius: 12px;
			font-size: 12px;
			font-weight: 600;
		}

		.related-pages {
			display: flex;
			flex-direction: column;
			gap: 8px;
		}

		.related-page-option {
			display: flex;
			align-items: center;
			gap: 12px;
			padding: 12px;
			background: white;
			border: 2px solid #e5e7eb;
			border-radius: 8px;
			cursor: pointer;
			transition: all 0.2s;
		}

		.related-page-option:has(input:checked) {
			border-color: #4338ca;
			background: #f0f9ff;
		}

		.related-page-option:hover {
			border-color: #4338ca;
		}

		.page-info {
			flex: 1;
		}

		.page-title {
			font-weight: 600;
			color: #1e293b;
			margin-bottom: 4px;
		}

		.page-meta {
			font-size: 12px;
			color: #64748b;
		}

		.features-grid {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 12px;
		}

		.feature-toggle {
			display: flex;
			align-items: center;
			gap: 8px;
			padding: 10px;
			background: white;
			border: 1px solid #e5e7eb;
			border-radius: 6px;
			cursor: pointer;
			transition: all 0.2s;
		}

		.feature-toggle:hover {
			background: #f9fafb;
			border-color: #4338ca;
		}

		.feature-toggle input[type="checkbox"] {
			width: 18px;
			height: 18px;
			cursor: pointer;
		}

		.feature-toggle span {
			font-size: 13px;
			font-weight: 500;
		}

		.status-timeline {
			display: flex;
			justify-content: space-between;
			align-items: center;
			position: relative;
			padding: 20px 0;
		}

		.status-timeline::before {
			content: '';
			position: absolute;
			top: 50%;
			left: 10%;
			right: 10%;
			height: 2px;
			background: #e5e7eb;
			z-index: 0;
		}

		.status-step {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 8px;
			position: relative;
			z-index: 1;
		}

		.step-icon {
			width: 48px;
			height: 48px;
			background: #e5e7eb;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 20px;
			transition: all 0.3s;
		}

		.status-step.active .step-icon {
			background: #4338ca;
			box-shadow: 0 4px 12px rgba(67, 56, 202, 0.3);
		}

		.status-step.completed .step-icon {
			background: #10b981;
		}

		.step-label {
			font-size: 12px;
			font-weight: 600;
			color: #64748b;
		}

		.status-step.active .step-label {
			color: #4338ca;
		}

		.error-box {
			background: #fef2f2;
			border: 1px solid #fecaca;
			border-radius: 8px;
			padding: 12px;
			margin-top: 16px;
		}

		.error-box strong {
			color: #991b1b;
		}

		.error-box p {
			color: #dc2626;
			margin: 8px 0 0 0;
			font-size: 13px;
		}

		.error-box small {
			color: #ef4444;
			font-size: 11px;
		}

		.panel-actions {
			display: flex;
			gap: 12px;
			margin-top: 24px;
		}

		.panel-actions button {
			flex: 1;
			padding: 14px;
			border-radius: 8px;
			font-weight: 700;
			font-size: 14px;
			border: none;
			cursor: pointer;
			transition: all 0.2s;
		}

		.btn-primary {
			background: #4338ca;
			color: white;
		}

		.btn-primary:hover {
			background: #3730a3;
			transform: translateY(-2px);
			box-shadow: 0 4px 12px rgba(67, 56, 202, 0.3);
		}

		.btn-secondary {
			background: #f59e0b;
			color: white;
		}

		.btn-secondary:hover {
			background: #d97706;
			transform: translateY(-2px);
			box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
		}

		.btn-danger {
			background: #ef4444;
			color: white;
		}

		.btn-danger:hover {
			background: #dc2626;
			transform: translateY(-2px);
			box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
		}

		/* Field Help Text */
		.field-help {
			font-size: 11px;
			color: #94a3b8;
			margin: 6px 0 0 0;
			font-style: italic;
		}

		/* Subsection Title */
		.subsection-title {
			font-size: 14px;
			font-weight: 600;
			margin: 0 0 12px 0;
			color: #334155;
		}

		/* Media Subsections */
		.media-subsection {
			padding: 16px;
			background: white;
			border-radius: 8px;
			margin-bottom: 16px;
			border: 1px solid #e2e8f0;
		}

		/* Color Input Enhancement */
		.color-input {
			height: 44px;
			cursor: pointer;
		}

		/* CTA Repeater */
		.ctas-container {
			margin-top: 16px;
		}

		.cta-row {
			background: white;
			border: 1px solid #e2e8f0;
			border-radius: 8px;
			padding: 16px;
			margin-bottom: 12px;
		}

		.cta-row-header {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 12px;
			padding-bottom: 8px;
			border-bottom: 1px solid #e2e8f0;
		}

		.cta-number {
			font-weight: 600;
			color: #475569;
			font-size: 13px;
		}

		.btn-remove-cta {
			background: none;
			border: none;
			cursor: pointer;
			font-size: 16px;
			padding: 4px 8px;
			border-radius: 4px;
			transition: background 0.2s;
		}

		.btn-remove-cta:hover {
			background: #fee2e2;
		}

		.cta-row-fields {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 12px;
		}

		.btn-add-field {
			width: 100%;
			padding: 12px;
			border: 2px dashed #cbd5e1;
			background: white;
			border-radius: 8px;
			cursor: pointer;
			font-weight: 500;
			color: #3b82f6;
			transition: all 0.2s;
			margin-top: 8px;
		}

		.btn-add-field:hover {
			border-color: #3b82f6;
			background: #eff6ff;
		}

		/* Social Networks Grid */
		.social-networks-grid {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 12px;
			margin-top: 12px;
		}

		.network-option {
			display: flex;
			align-items: center;
			gap: 8px;
			padding: 12px;
			background: white;
			border: 1px solid #e2e8f0;
			border-radius: 8px;
			cursor: pointer;
			transition: all 0.2s;
		}

		.network-option:hover {
			border-color: #3b82f6;
			background: #eff6ff;
		}

		.network-option input[type="checkbox"] {
			margin: 0;
			cursor: pointer;
		}

		.network-option span {
			font-size: 13px;
			font-weight: 500;
		}

		/* Advanced Settings Disclosure */
		.advanced-settings {
			margin-top: 16px;
			border: 1px solid #e2e8f0;
			border-radius: 8px;
			padding: 12px;
			background: white;
		}

		.advanced-settings summary {
			cursor: pointer;
			font-weight: 600;
			color: #3b82f6;
			font-size: 13px;
			user-select: none;
			list-style: none;
		}

		.advanced-settings summary::-webkit-details-marker {
			display: none;
		}

		.advanced-settings summary:hover {
			color: #2563eb;
		}

		.advanced-settings summary::before {
			content: '▶ ';
			display: inline-block;
			transition: transform 0.2s;
		}

		.advanced-settings[open] summary::before {
			transform: rotate(90deg);
		}

		.advanced-content {
			margin-top: 16px;
			padding-top: 16px;
			border-top: 1px solid #e2e8f0;
		}

		/* Status Filter Grid */
		.status-filter-grid {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 8px;
			margin-top: 8px;
		}

		.status-option {
			display: flex;
			align-items: center;
			gap: 6px;
			padding: 8px 12px;
			background: white;
			border: 1px solid #e2e8f0;
			border-radius: 6px;
			cursor: pointer;
			font-size: 13px;
			transition: all 0.2s;
		}

		.status-option:hover {
			border-color: #3b82f6;
			background: #eff6ff;
		}

		.status-option input[type="checkbox"] {
			margin: 0;
			cursor: pointer;
		}

		/* Credit Cost Indicators */
		.section-header-with-cost {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 8px;
		}

		.section-header-with-cost h3 {
			margin: 0;
		}

		.credit-calculator {
			background: linear-gradient(135deg, #4338ca 0%, #6366f1 100%);
			color: white;
			padding: 8px 16px;
			border-radius: 20px;
			font-size: 13px;
			font-weight: 600;
			box-shadow: 0 2px 8px rgba(67, 56, 202, 0.3);
		}

		.credit-calculator strong {
			font-size: 16px;
			color: #fef08a;
		}

		.cost-item {
			display: inline-block;
			background: rgba(67, 56, 202, 0.1);
			padding: 4px 10px;
			border-radius: 12px;
			margin-right: 8px;
			font-size: 11px;
			font-weight: 600;
			color: #4338ca;
		}

		.feature-cost {
			display: inline-block;
			background: #fef3c7;
			color: #92400e;
			padding: 2px 8px;
			border-radius: 10px;
			font-size: 10px;
			font-weight: 700;
			margin-left: 6px;
		}

		.feature-cost[style*="color: #f59e0b"] {
			background: #fed7aa;
			color: #92400e;
		}

		/* Affiliation Sections */
		.product-comparison-card {
			background: white;
			border: 2px solid #e2e8f0;
			border-radius: 12px;
			padding: 20px;
			margin-bottom: 20px;
		}

		.product-card-title {
			font-size: 15px;
			font-weight: 700;
			margin: 0 0 16px 0;
			color: #1e293b;
			padding-bottom: 12px;
			border-bottom: 2px solid #e2e8f0;
		}

		.top-product-card {
			background: white;
			border: 2px solid #e2e8f0;
			border-radius: 12px;
			padding: 16px;
			margin-bottom: 16px;
		}

		.top-product-header {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 12px;
			padding-bottom: 8px;
			border-bottom: 1px solid #e2e8f0;
		}

		.top-product-number {
			font-weight: 600;
			color: #475569;
			font-size: 14px;
		}

		.btn-remove-top-product {
			background: none;
			border: none;
			cursor: pointer;
			font-size: 16px;
			padding: 4px 8px;
			border-radius: 4px;
			transition: background 0.2s;
		}

		.btn-remove-top-product:hover {
			background: #fee2e2;
		}

		.repeater-container {
			display: flex;
			flex-direction: column;
			gap: 8px;
			margin-bottom: 8px;
		}

		.repeater-row {
			display: flex;
			gap: 8px;
			align-items: center;
		}

		.repeater-row input {
			flex: 1;
		}

		.btn-remove-repeater {
			background: none;
			border: none;
			cursor: pointer;
			font-size: 14px;
			padding: 6px 10px;
			border-radius: 4px;
			transition: background 0.2s;
			flex-shrink: 0;
		}

		.btn-remove-repeater:hover {
			background: #fee2e2;
		}

		.affiliation-links-container {
			display: flex;
			flex-direction: column;
			gap: 12px;
			margin-bottom: 8px;
		}

		.affiliation-link-row {
			background: #f8fafc;
			border: 1px solid #e2e8f0;
			border-radius: 8px;
			padding: 12px;
		}

		.affiliation-link-header {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 8px;
		}

		.link-number {
			font-weight: 600;
			color: #475569;
			font-size: 12px;
		}

		.affiliation-link-row-small {
			display: flex;
			gap: 8px;
			align-items: flex-start;
			margin-bottom: 8px;
			background: #f8fafc;
			padding: 8px;
			border-radius: 6px;
		}

		.affiliation-link-row-small .form-row-two {
			flex: 1;
			margin: 0;
		}

		.affiliation-links-container-small {
			display: flex;
			flex-direction: column;
			gap: 8px;
			margin-bottom: 8px;
		}

		.btn-add-field-small {
			padding: 8px 12px;
			font-size: 12px;
			margin-top: 4px;
		}

/* ========================================
	RSS Calendar Entry Styling
	======================================== */

/* RSS entries - Green theme with satellite icon */
.fc-event.event-rss {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
	border-color: #059669 !important;
	box-shadow: 0 2px 4px rgba(16, 185, 129, 0.3);
}

.fc-event.event-rss:hover {
	background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
	box-shadow: 0 4px 8px rgba(16, 185, 129, 0.4);
	transform: translateY(-1px);
	transition: all 0.2s ease;
}

/* RSS entry title styling */
.fc-event.event-rss .fc-event-title {
	font-weight: 600;
}

/* Discovery entries - Blue theme (default) */
.fc-event.event-discovery {
	background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
	border-color: #2563eb !important;
}

/* Manual entries - Default styling (no special class needed) */
.fc-event.event-manual {
	/* Uses default event styling */
}
