.release-center {
	--rc-bg: #F8F9FB;
	--rc-white: #FFFFFF;
	--rc-border: #E8ECF0;
	--rc-border-strong: #D0D5DD;
	--rc-text: #231F20;
	--rc-text-muted: #6F747D;
	--rc-accent: #0057D6;
	--rc-tag-bg: #F0F4F8;
	--rc-radius: 12px;
	--rc-radius-pill: 999px;

	font-family: 'Poppins', sans-serif;
	background: var(--rc-bg);
	color: var(--rc-text);
	margin-block: 0;

	* {
		box-sizing: border-box;
	}

	.rc-section-label {
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: var(--rc-text-muted);
		margin-bottom: 16px;
	}

	.rc-tag {
		display: inline-block;
		padding: 5px 10px;
		border-radius: var(--rc-radius-pill);
		background: var(--rc-tag-bg);
		color: var(--rc-accent);
		font-size: 12px;
		font-weight: 600;
		line-height: 1;
	}

	.rc-badge {
		display: inline-block;
		padding: 3px 9px;
		border-radius: var(--rc-radius-pill);
		background: var(--rc-badge-bg, var(--rc-tag-bg));
		color: var(--rc-badge-color, var(--rc-accent));
		font-size: 11px;
		font-weight: 500;
		font-family: 'Poppins', sans-serif;
		letter-spacing: 0.04em;
		line-height: 1.25;
		text-transform: uppercase;
	}

	.rc-card__date {
		font-size: 12px;
		font-weight: 600;
		color: var(--rc-text-muted);
	}

	.rc-card__product {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-top: 18px;
	}

	.rc-card__product-logo {
		height: 18px;
		width: auto;
		display: block;
	}

	.rc-card__product-name {
		font-size: 12px;
		font-weight: 600;
		color: var(--rc-text-muted);
	}

	/* Hero */
	.rc-hero {
		background: var(--rc-white);
		border-bottom: 1px solid var(--rc-border);

		.rc-hero__inner {
			max-width: 1200px;
			margin: 0 auto;
			padding: 64px 24px;
			text-align: center;
		}

		.rc-hero__title {
			margin: 0;
			font-size: 40px;
			font-weight: 600;
			font-family: 'Poppins', sans-serif;
			letter-spacing: -0.02em;
		}

		.rc-hero__desc {
			margin: 16px auto 0;
			max-width: 640px;
			font-size: 17px;
			color: var(--rc-text-muted);
			line-height: 1.55;
		}
	}

	/* Featured */
	.rc-featured {
		.rc-featured__inner {
			max-width: 1200px;
			margin: 0 auto;
			padding: 36px 24px 8px;
		}

		.rc-featured__grid {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 24px;

			@media (max-width: 900px) {
				grid-template-columns: 1fr;
			}
		}
	}

	/* Cards (shared by featured + grid) */
	.rc-card-wrapper {
		display: contents;
	}

	.rc-card {
		position: relative;
		display: flex;
		flex-direction: column;
		width: 100%;
		min-width: 0;
		background: var(--rc-white);
		border: 1px solid var(--rc-border);
		border-radius: var(--rc-radius);
		padding: 24px;
		box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
		font-family: 'Poppins', sans-serif;
		transition: border-color .15s, box-shadow .15s;

		&:hover {
			border-color: var(--rc-accent);
			box-shadow: 0 6px 20px rgba(0, 87, 214, 0.14);
		}

		&.rc-card--upcoming {
			background: var(--rc-bg);
			border: 1.5px dashed var(--rc-border-strong);
			cursor: default;

			&:hover {
				border-color: var(--rc-border-strong);
				box-shadow: none;
			}

			> .rc-badge {
				align-self: flex-start;
			}
		}

		.rc-card__top {
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

		.rc-card__title {
			margin: 10px 0 0;
			font-size: 18px;
			font-weight: 600;
			font-family: 'Poppins', sans-serif;
			line-height: 1.3;
		}

		.rc-card__desc {
			margin: 8px 0 0;
			font-size: 14px;
			color: var(--rc-text-muted);
			line-height: 1.5;
			display: -webkit-box;
			-webkit-line-clamp: 2;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}

		.rc-card__bottom {
			margin-top: auto;
			padding-top: 16px;
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
		}

		.rc-card__tags {
			display: flex;
			flex-wrap: wrap;
			gap: 6px;
			overflow: hidden;
			max-height: 22px;
			flex: 1;
			min-width: 0;

			.rc-tag {
				flex-shrink: 0;
				white-space: nowrap;
			}
		}

		.rc-card__view {
			display: inline-flex;
			align-items: center;
			gap: 4px;
			flex-shrink: 0;
			font-size: 12px;
			font-weight: 500;
			color: var(--rc-accent);

			svg {
				transition: transform .2s cubic-bezier(0.2, 0.8, 0.2, 1);
			}
		}

		&:hover .rc-card__view svg {
			transform: rotate(45deg);
		}

		.rc-card__trigger {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			padding: 0;
			border: none;
			background: transparent;
			cursor: pointer;
		}
	}

	.rc-product-initial {
		width: 20px;
		height: 20px;
		border-radius: 6px;
		background: var(--rc-product-color, var(--rc-text-muted));
		color: var(--rc-white);
		font-size: 11px;
		font-weight: 600;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.rc-upcoming-list {
		list-style: none;
		margin: 16px 0 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 10px;

		li {
			display: flex;
			gap: 10px;
			align-items: flex-start;
			font-size: 14px;
		}

		.rc-upcoming-list__dot {
			width: 6px;
			height: 6px;
			border-radius: var(--rc-radius-pill);
			background: var(--rc-accent);
			margin-top: 7px;
			flex: none;
		}
	}

	/* Filter bar */
	.rc-filter-bar {
		position: sticky;
		top: 120px;
		z-index: 20;
		background: var(--rc-white);
		border-top: 1px solid var(--rc-border);
		border-bottom: 1px solid var(--rc-border);
		box-shadow: 0 4px 12px rgba(16, 24, 40, 0.06);
		margin-top: 32px;

		.rc-filter-bar__inner {
			max-width: 1200px;
			margin: 0 auto;
			padding: 14px 24px;
		}
	}

	.rc-filter-form {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 12px;

		@media (max-width: 900px) {
			flex-wrap: nowrap;
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;

			> * {
				flex-shrink: 0;
			}
		}
	}

	.rc-select {
		height: 36px;
		padding: 0 32px 0 12px;
		border: 1px solid var(--rc-border-strong);
		border-radius: 8px;
		background-color: var(--rc-white);
		font-family: inherit;
		font-size: 13px;
		font-weight: 600;
		color: var(--rc-text);
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236F747D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: right 12px center;
	}

	.rc-search {
		position: relative;
		flex: none;
		width: 240px;
		margin-left: auto;

		.rc-search__input {
			width: 100%;
			height: 36px;
			border: 1px solid var(--rc-border-strong);
			border-radius: 8px;
			padding: 0 12px 0 34px;
			font-family: inherit;
			font-size: 13px;
			color: var(--rc-text);
		}

		.rc-search__submit {
			position: absolute;
			left: 10px;
			top: 50%;
			transform: translateY(-50%);
			display: inline-flex;
			border: none;
			background: transparent;
			padding: 0;
			color: var(--rc-text-muted);
			cursor: pointer;
			transition: color .15s;

			&.is-active {
				color: var(--rc-accent);
			}
		}
	}

	.rc-chips {
		display: flex;
		gap: 8px;
		align-items: center;
		flex-wrap: wrap;
		padding-top: 14px;

		.rc-chips__label {
			font-size: 12px;
			font-weight: 600;
			color: var(--rc-text-muted);
		}

		.rc-chips__clear {
			font-size: 12px;
			font-weight: 600;
			color: var(--rc-text-muted);
			text-decoration: underline;
		}
	}

	.rc-chip {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 5px 8px 5px 12px;
		border-radius: var(--rc-radius-pill);
		background: rgba(0, 87, 214, 0.1);
		color: var(--rc-accent);
		font-size: 12px;
		font-weight: 600;
		text-decoration: none;
	}

	/* Content: timeline + grid */
	.rc-content {
		.rc-content__inner {
			max-width: 1180px;
			margin: 0 auto;
			padding: 16px 24px 64px;
			display: flex;
			gap: 40px;
			align-items: flex-start;

			@media (max-width: 900px) {
				flex-direction: column;
			}
		}
	}

	.rc-timeline {
		width: 180px;
		flex: none;
		position: sticky;
		top: 140px;

		@media (max-width: 900px) {
			width: 100%;
			position: static;
		}

		.rc-timeline__list {
			display: flex;
			flex-direction: column;
			max-height: calc(100vh - 220px);
			overflow-y: auto;
		}

		.rc-timeline__rail {
			position: relative;
			z-index: 0;

			&::before {
				content: '';
				position: absolute;
				left: 5px;
				top: 12px;
				bottom: 12px;
				width: 2px;
				background: var(--rc-border);
				z-index: -1;
			}
		}

		.rc-timeline__item {
			display: flex;
			align-items: center;
			gap: 14px;
			width: 100%;
			padding: 7px 0;
			text-decoration: none;
			color: var(--rc-text-muted);
			font-size: 13px;
			font-weight: 600;

			&.is-active {
				color: var(--rc-accent);
				font-weight: 600;

				.rc-timeline__dot {
					background: var(--rc-accent);
					border-color: var(--rc-accent);
				}
			}
		}

		.rc-timeline__dot {
			width: 12px;
			height: 12px;
			border-radius: var(--rc-radius-pill);
			background: var(--rc-white);
			border: 2px solid var(--rc-border-strong);
			flex: none;
		}

		.rc-timeline__label {
			flex: 1;
		}

		.rc-timeline__count {
			font-size: 12px;
			font-weight: 600;
			color: #9AA6B5;
		}

		.rc-timeline__empty {
			font-size: 13px;
			color: var(--rc-text-muted);
		}
	}

	.rc-grid-column {
		flex: 1;
		min-width: 0;

		@media (max-width: 900px) {
			width: 100%;
		}
	}

	.rc-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;

		@media (max-width: 900px) {
			grid-template-columns: 1fr;
		}
	}

	.rc-pagination {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 16px;
		margin-top: 32px;
		font-size: 13px;

		.rc-pagination__link {
			color: var(--rc-accent);
			font-weight: 600;
			text-decoration: none;
		}

		.rc-pagination__status {
			color: var(--rc-text-muted);
		}
	}

	.rc-empty {
		text-align: center;
		padding: 56px 16px;

		.rc-empty__title {
			font-size: 17px;
			font-weight: 600;
		}

		.rc-empty__desc {
			margin: 6px 0 16px;
			font-size: 14px;
			color: var(--rc-text-muted);
		}

		.rc-empty__clear {
			display: inline-block;
			height: 36px;
			line-height: 36px;
			padding: 0 16px;
			border: 1px solid var(--rc-accent);
			border-radius: 8px;
			color: var(--rc-accent);
			font-size: 13px;
			font-weight: 600;
			text-decoration: none;
		}
	}

	.rc-modal {
		position: fixed;
		inset: 0;
		margin: auto;
		width: 600px;
		max-width: calc(100% - 40px);
		max-height: calc(100% - 80px);
		border: none;
		border-radius: 16px;
		padding: 0;
		background: var(--rc-white);
		color: var(--rc-text);
		font-family: 'Poppins', sans-serif;
		box-shadow: 0 24px 60px rgba(16, 24, 40, 0.28);
		overflow: hidden;

		&[open] {
			display: flex;
			flex-direction: column;
		}

		&::backdrop {
			background: rgba(20, 15, 16, 0.48);
		}

		.rc-modal__close {
			position: absolute;
			top: 14px;
			right: 14px;
			z-index: 1;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 32px;
			height: 32px;
			padding: 0;
			border-radius: 999px;
			border: none;
			background: var(--rc-tag-bg);
			color: var(--rc-text-muted);
			font-size: 18px;
			line-height: 1;
			cursor: pointer;
		}

		.rc-modal__content {
			flex: 1 1 auto;
			min-height: 0;
			overflow-y: auto;
		}

		.rc-modal__image {
			width: 100%;
			aspect-ratio: 2.6 / 1;
			display: flex;
			align-items: center;
			justify-content: center;
			background: color-mix(in srgb, var(--rc-modal-tint, #9AA6B5) 14%, white);

			img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				display: block;
			}
		}

		.rc-modal__body-wrap {
			padding: 28px;
		}

		.rc-modal__header {
			display: flex;
			align-items: center;
			gap: 10px;
		}

		.rc-modal__title {
			margin: 12px 0 0;
			font-size: 24px;
			font-weight: 700;
			letter-spacing: -0.01em;
		}

		.rc-modal__body {
			margin-top: 12px;
			font-size: 15px;
			line-height: 1.6;
		}

		.rc-modal__resources {
			margin-top: 10px;
			display: flex;
			flex-direction: column;
			gap: 8px;
			align-items: flex-start;
		}

		.rc-modal__footer {
			margin-top: 22px;
			display: flex;
			flex-wrap: wrap;
			gap: 8px;
		}
	}

	.rc-resource-link {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-size: 14px;
		color: var(--rc-accent);
		font-weight: 600;
		text-decoration: none;

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