/**
 * Veyra Custom Content Manager Landing 0.30.0
 *
 * Product landing layered on top of plugins.css.
 * Vertical rhythm is intentionally tighter than earlier Veyra page families.
 */

body.veyra-ccm-context {
	--veyra-ccm-shell: min(
		calc(100% - (2 * var(--veyra-gutter))),
		var(--veyra-container-wide)
	);
	--veyra-ccm-reading: 45rem;
}

.veyra-ccm-page {
	position: relative;
	isolation: isolate;
	overflow: clip;
}

.veyra-ccm-page::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	background:
		radial-gradient(circle at 8% 5%, rgba(0, 229, 255, .085), transparent 27rem),
		radial-gradient(circle at 91% 12%, rgba(138, 92, 255, .105), transparent 33rem),
		radial-gradient(circle at 48% 56%, rgba(59, 140, 255, .045), transparent 43rem);
	content: "";
	pointer-events: none;
}

.veyra-ccm-container {
	width: var(--veyra-ccm-shell);
	margin-inline: auto;
}

.veyra-ccm-section {
	padding-block: clamp(3.2rem, 6vw, 5.4rem);
}

.veyra-ccm-section--compact {
	padding-block: clamp(2.35rem, 4.5vw, 3.9rem);
}

.veyra-ccm-section + .veyra-ccm-section {
	border-top: 1px solid rgba(141, 164, 205, .105);
}

.veyra-ccm-heading {
	display: grid;
	gap: .7rem;
	max-width: 65rem;
	margin-bottom: clamp(1.6rem, 3vw, 2.45rem);
}

.veyra-ccm-heading h2,
.veyra-ccm-heading p {
	margin: 0;
}

.veyra-ccm-heading h2 {
	max-width: 16ch;
}

/* ==========================================================================
   Hero
   ========================================================================== */

.veyra-ccm-hero {
	padding-top: clamp(4rem, 7vw, 6.3rem);
	padding-bottom: clamp(3.3rem, 6vw, 5.2rem);
}

.veyra-ccm-hero__layout {
	display: grid;
	grid-template-columns: minmax(0, 1.04fr) minmax(22rem, .96fr);
	gap: clamp(2.3rem, 6vw, 6rem);
	align-items: center;
}

.veyra-ccm-hero__copy {
	display: grid;
	gap: 1.1rem;
}

.veyra-ccm-hero__copy h1,
.veyra-ccm-hero__copy p {
	margin: 0;
}

.veyra-ccm-hero__copy h1 {
	max-width: 12ch;
	font-size: clamp(3.35rem, 7.3vw, 7rem);
	line-height: .94;
	letter-spacing: -.06em;
	text-wrap: balance;
}

.veyra-ccm-hero__copy h1 em {
	color: var(--veyra-violet);
	font-style: normal;
}

.veyra-ccm-status-line {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	align-items: center;
}

.veyra-ccm-badge {
	display: inline-flex;
	align-items: center;
	min-height: 1.9rem;
	padding: .34rem .65rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: 999px;
	background: rgba(255, 255, 255, .025);
	color: var(--veyra-text-soft);
	font-size: .76rem;
	font-weight: 700;
}

.veyra-ccm-badge--accent {
	border-color: rgba(0, 229, 255, .20);
	background: rgba(0, 229, 255, .07);
	color: #baf7ff;
}

.veyra-ccm-badge--status {
	border-color: rgba(255, 194, 115, .22);
	background: rgba(255, 168, 79, .075);
	color: #ffd7aa;
}

.veyra-ccm-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: .3rem;
}

.veyra-ccm-hero__meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1rem;
	border-block: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-hero__meta-item {
	display: grid;
	gap: .28rem;
	padding: .9rem .8rem;
}

.veyra-ccm-hero__meta-item + .veyra-ccm-hero__meta-item {
	border-left: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-hero__meta-item strong {
	color: var(--veyra-text);
	font-size: .88rem;
}

.veyra-ccm-hero__meta-item span {
	color: var(--veyra-text-muted);
	font-size: .76rem;
	line-height: 1.45;
}

/* ==========================================================================
   Product UI illustration
   ========================================================================== */

.veyra-ccm-ui {
	position: relative;
	width: 100%;
	max-width: 42rem;
	margin-inline: auto;
	padding: .8rem;
	border: 1px solid rgba(141, 164, 205, .20);
	border-radius: clamp(1.4rem, 3vw, 2rem);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .045), transparent 58%),
		rgba(3, 7, 18, .50);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .07),
		0 2rem 6rem rgba(0, 0, 0, .34),
		0 1.5rem 5rem rgba(59, 140, 255, .10);
	transform: rotate(.8deg);
}

.veyra-ccm-ui::before {
	position: absolute;
	z-index: -1;
	inset: 10% -8% -10% 12%;
	border-radius: 50%;
	background: rgba(138, 92, 255, .17);
	filter: blur(4.7rem);
	content: "";
}

.veyra-ccm-ui__window {
	overflow: hidden;
	border: 1px solid rgba(141, 164, 205, .20);
	border-radius: calc(clamp(1.4rem, 3vw, 2rem) - .45rem);
	background: #07101f;
	transform: rotate(-.8deg);
}

.veyra-ccm-ui__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 3rem;
	padding: .7rem .9rem;
	border-bottom: 1px solid var(--veyra-border-subtle);
	background: rgba(255, 255, 255, .025);
}

.veyra-ccm-ui__brand {
	display: flex;
	align-items: center;
	gap: .55rem;
	color: var(--veyra-text-soft);
	font-size: .74rem;
	font-weight: 700;
}

.veyra-ccm-ui__brand svg {
	color: var(--veyra-violet);
}

.veyra-ccm-ui__state {
	padding: .28rem .55rem;
	border: 1px solid rgba(0, 229, 255, .18);
	border-radius: 999px;
	background: rgba(0, 229, 255, .06);
	color: #baf7ff;
	font-size: .67rem;
	font-weight: 700;
}

.veyra-ccm-ui__body {
	display: grid;
	grid-template-columns: 5rem minmax(0, 1fr);
	min-height: 27rem;
}

.veyra-ccm-ui__rail {
	display: grid;
	align-content: start;
	gap: .55rem;
	padding: .9rem .55rem;
	border-right: 1px solid var(--veyra-border-subtle);
	background: rgba(0, 0, 0, .17);
}

.veyra-ccm-ui__rail span {
	display: grid;
	width: 2.3rem;
	height: 2.3rem;
	margin-inline: auto;
	place-items: center;
	border: 1px solid transparent;
	border-radius: .65rem;
	color: var(--veyra-text-muted);
}

.veyra-ccm-ui__rail span:first-child {
	border-color: rgba(0, 229, 255, .18);
	background: rgba(0, 229, 255, .07);
	color: var(--veyra-cyan);
}

.veyra-ccm-ui__content {
	display: grid;
	align-content: start;
	gap: .9rem;
	padding: clamp(1rem, 3vw, 1.35rem);
}

.veyra-ccm-ui__title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.veyra-ccm-ui__title strong {
	color: var(--veyra-text);
}

.veyra-ccm-ui__button {
	padding: .36rem .62rem;
	border: 1px solid rgba(95, 132, 255, .28);
	border-radius: .55rem;
	background: linear-gradient(135deg, rgba(59, 140, 255, .22), rgba(138, 92, 255, .22));
	color: var(--veyra-text);
	font-size: .7rem;
	font-weight: 700;
}

.veyra-ccm-ui__tabs {
	display: flex;
	gap: .35rem;
	padding-bottom: .7rem;
	border-bottom: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-ui__tabs span {
	padding: .34rem .5rem;
	border-radius: .45rem;
	color: var(--veyra-text-muted);
	font-size: .68rem;
}

.veyra-ccm-ui__tabs span:first-child {
	background: rgba(255, 255, 255, .045);
	color: var(--veyra-text);
}

.veyra-ccm-ui__list {
	display: grid;
	gap: .62rem;
}

.veyra-ccm-ui__row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: .72rem;
	align-items: center;
	padding: .72rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: .78rem;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .025), transparent 62%),
		rgba(255, 255, 255, .012);
}

.veyra-ccm-ui__row-icon {
	display: grid;
	width: 2.1rem;
	height: 2.1rem;
	place-items: center;
	border: 1px solid rgba(95, 132, 255, .22);
	border-radius: .58rem;
	background: rgba(59, 140, 255, .07);
	color: var(--veyra-cyan);
}

.veyra-ccm-ui__row-copy {
	display: grid;
	gap: .15rem;
}

.veyra-ccm-ui__row-copy strong {
	color: var(--veyra-text);
	font-size: .78rem;
}

.veyra-ccm-ui__row-copy span {
	color: var(--veyra-text-muted);
	font-size: .64rem;
}

.veyra-ccm-ui__row-status {
	color: var(--veyra-text-muted);
	font-size: .65rem;
}

/* ==========================================================================
   Problem / solution
   ========================================================================== */

.veyra-ccm-problem {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
	gap: clamp(1.8rem, 5vw, 4.8rem);
	align-items: start;
}

.veyra-ccm-problem__copy {
	display: grid;
	gap: .85rem;
}

.veyra-ccm-problem__copy h2,
.veyra-ccm-problem__copy p {
	margin: 0;
}

.veyra-ccm-problem__copy h2 {
	max-width: 14ch;
}

.veyra-ccm-problem__stack {
	display: grid;
	gap: .75rem;
}

.veyra-ccm-problem__item {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: .8rem;
	align-items: start;
	padding: .9rem 1rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-lg);
	background: rgba(3, 7, 18, .23);
}

.veyra-ccm-problem__item svg {
	margin-top: .18rem;
	color: var(--veyra-cyan);
}

.veyra-ccm-problem__item strong {
	display: block;
	margin-bottom: .22rem;
	color: var(--veyra-text);
}

.veyra-ccm-problem__item span {
	color: var(--veyra-text-soft);
	font-size: .92rem;
	line-height: 1.62;
}

/* ==========================================================================
   Core capabilities
   ========================================================================== */

.veyra-ccm-capabilities {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.veyra-ccm-capability {
	display: grid;
	gap: .75rem;
	min-height: 100%;
	padding: 1.1rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-xl);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .03), transparent 60%),
		rgba(3, 7, 18, .23);
}

.veyra-ccm-capability__icon {
	display: grid;
	width: 2.75rem;
	height: 2.75rem;
	place-items: center;
	border: 1px solid rgba(95, 132, 255, .24);
	border-radius: .8rem;
	background: rgba(59, 140, 255, .075);
	color: var(--veyra-cyan);
}

.veyra-ccm-capability h3,
.veyra-ccm-capability p {
	margin: 0;
}

.veyra-ccm-capability h3 {
	font-size: 1.04rem;
}

.veyra-ccm-capability p {
	color: var(--veyra-text-soft);
	font-size: .91rem;
	line-height: 1.62;
}

.veyra-ccm-capability__note {
	margin-top: auto;
	padding-top: .7rem;
	border-top: 1px solid var(--veyra-border-subtle);
	color: var(--veyra-text-muted);
	font-size: .74rem;
}

/* ==========================================================================
   Workflow
   ========================================================================== */

.veyra-ccm-workflow {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-block: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-workflow__step {
	display: grid;
	gap: .62rem;
	padding: clamp(1rem, 2.5vw, 1.45rem);
}

.veyra-ccm-workflow__step + .veyra-ccm-workflow__step {
	border-left: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-workflow__index {
	color: var(--veyra-cyan);
	font-family: var(--wp--preset--font-family--mono, ui-monospace, monospace);
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.veyra-ccm-workflow__step h3,
.veyra-ccm-workflow__step p {
	margin: 0;
}

.veyra-ccm-workflow__step h3 {
	font-size: 1rem;
}

.veyra-ccm-workflow__step p {
	color: var(--veyra-text-soft);
	font-size: .86rem;
	line-height: 1.58;
}

/* ==========================================================================
   Use cases
   ========================================================================== */

.veyra-ccm-use-cases {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.veyra-ccm-use-case {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: .9rem;
	align-items: start;
	padding: 1rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-xl);
	background:
		radial-gradient(circle at 100% 0, rgba(138, 92, 255, .06), transparent 15rem),
		rgba(3, 7, 18, .23);
}

.veyra-ccm-use-case__icon {
	display: grid;
	width: 2.65rem;
	height: 2.65rem;
	place-items: center;
	border: 1px solid rgba(138, 92, 255, .23);
	border-radius: .78rem;
	background: rgba(138, 92, 255, .075);
	color: var(--veyra-violet);
}

.veyra-ccm-use-case h3,
.veyra-ccm-use-case p {
	margin: 0;
}

.veyra-ccm-use-case h3 {
	margin-bottom: .35rem;
	font-size: 1rem;
}

.veyra-ccm-use-case p {
	color: var(--veyra-text-soft);
	font-size: .9rem;
	line-height: 1.62;
}

/* ==========================================================================
   Architecture and transparency
   ========================================================================== */

.veyra-ccm-architecture {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: clamp(1.7rem, 5vw, 4.5rem);
	align-items: center;
}

.veyra-ccm-architecture__copy {
	display: grid;
	gap: .8rem;
}

.veyra-ccm-architecture__copy h2,
.veyra-ccm-architecture__copy p {
	margin: 0;
}

.veyra-ccm-architecture__copy h2 {
	max-width: 13ch;
}

.veyra-ccm-architecture__diagram {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .65rem;
	align-items: center;
}

.veyra-ccm-architecture__node {
	display: grid;
	gap: .45rem;
	min-height: 8.2rem;
	align-content: center;
	padding: .9rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-lg);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .03), transparent 60%),
		rgba(3, 7, 18, .26);
	text-align: center;
}

.veyra-ccm-architecture__node--accent {
	border-color: rgba(0, 229, 255, .22);
	background:
		radial-gradient(circle at 50% 0, rgba(0, 229, 255, .09), transparent 10rem),
		rgba(3, 7, 18, .3);
}

.veyra-ccm-architecture__node svg {
	margin-inline: auto;
	color: var(--veyra-cyan);
}

.veyra-ccm-architecture__node strong {
	color: var(--veyra-text);
}

.veyra-ccm-architecture__node span {
	color: var(--veyra-text-muted);
	font-size: .76rem;
	line-height: 1.45;
}

.veyra-ccm-transparency {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .75rem;
	margin-top: 1rem;
}

.veyra-ccm-transparency__item {
	display: grid;
	gap: .32rem;
	padding: .85rem .95rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-lg);
	background: rgba(3, 7, 18, .22);
}

.veyra-ccm-transparency__item strong {
	color: var(--veyra-text);
	font-size: .86rem;
}

.veyra-ccm-transparency__item span {
	color: var(--veyra-text-muted);
	font-size: .77rem;
	line-height: 1.5;
}

/* ==========================================================================
   Requirements / installation
   ========================================================================== */

.veyra-ccm-technical {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 1rem;
}

.veyra-ccm-technical__panel {
	display: grid;
	gap: .85rem;
	padding: clamp(1.1rem, 3vw, 1.6rem);
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-xl);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .03), transparent 62%),
		rgba(3, 7, 18, .24);
}

.veyra-ccm-technical__panel h3,
.veyra-ccm-technical__panel p {
	margin: 0;
}

.veyra-ccm-technical__panel h3 {
	font-size: 1.18rem;
}

.veyra-ccm-facts {
	display: grid;
	gap: .55rem;
}

.veyra-ccm-fact {
	display: grid;
	grid-template-columns: minmax(8rem, .38fr) minmax(0, .62fr);
	gap: .75rem;
	padding: .7rem 0;
	border-bottom: 1px solid var(--veyra-border-subtle);
}

.veyra-ccm-fact:last-child {
	border-bottom: 0;
}

.veyra-ccm-fact strong {
	color: var(--veyra-text);
	font-size: .82rem;
}

.veyra-ccm-fact span {
	color: var(--veyra-text-soft);
	font-size: .82rem;
	overflow-wrap: anywhere;
}

.veyra-ccm-installation {
	display: grid;
	gap: .65rem;
	counter-reset: ccm-install;
}

.veyra-ccm-installation__step {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: .75rem;
	align-items: start;
	padding: .78rem .85rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-lg);
	background: rgba(3, 7, 18, .21);
	counter-increment: ccm-install;
}

.veyra-ccm-installation__step::before {
	display: grid;
	width: 1.8rem;
	height: 1.8rem;
	place-items: center;
	border: 1px solid rgba(0, 229, 255, .20);
	border-radius: 50%;
	background: rgba(0, 229, 255, .06);
	color: var(--veyra-cyan);
	content: counter(ccm-install);
	font-family: var(--wp--preset--font-family--mono, ui-monospace, monospace);
	font-size: .72rem;
	font-weight: 700;
}

.veyra-ccm-installation__step strong {
	display: block;
	margin-bottom: .18rem;
	color: var(--veyra-text);
	font-size: .86rem;
}

.veyra-ccm-installation__step span {
	color: var(--veyra-text-muted);
	font-size: .78rem;
	line-height: 1.48;
}

/* ==========================================================================
   FAQ
   ========================================================================== */

.veyra-ccm-faq {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .75rem;
}

.veyra-ccm-faq details {
	padding: .9rem 1rem;
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-lg);
	background: rgba(3, 7, 18, .23);
}

.veyra-ccm-faq summary {
	cursor: pointer;
	color: var(--veyra-text);
	font-weight: 700;
	line-height: 1.45;
}

.veyra-ccm-faq details p {
	margin: .75rem 0 0;
	color: var(--veyra-text-soft);
	font-size: .88rem;
	line-height: 1.62;
}

/* ==========================================================================
   Release CTA
   ========================================================================== */

.veyra-ccm-release {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) auto;
	gap: 1.4rem;
	align-items: center;
	padding: clamp(1.4rem, 4vw, 2.4rem);
	border: 1px solid var(--veyra-border-subtle);
	border-radius: var(--veyra-radius-2xl);
	background:
		radial-gradient(circle at 100% 0, rgba(138, 92, 255, .12), transparent 24rem),
		linear-gradient(145deg, rgba(255, 255, 255, .04), transparent 60%),
		rgba(3, 7, 18, .29);
}

.veyra-ccm-release__copy {
	display: grid;
	gap: .62rem;
}

.veyra-ccm-release__copy h2,
.veyra-ccm-release__copy p {
	margin: 0;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 72rem) {
	.veyra-ccm-hero__layout,
	.veyra-ccm-problem,
	.veyra-ccm-architecture,
	.veyra-ccm-technical {
		grid-template-columns: 1fr;
	}

	.veyra-ccm-ui {
		max-width: 43rem;
	}

	.veyra-ccm-capabilities {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.veyra-ccm-workflow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.veyra-ccm-workflow__step:nth-child(3) {
		border-top: 1px solid var(--veyra-border-subtle);
		border-left: 0;
	}

	.veyra-ccm-workflow__step:nth-child(4) {
		border-top: 1px solid var(--veyra-border-subtle);
	}
}

@media (max-width: 48rem) {
	.veyra-ccm-hero__copy h1 {
		font-size: clamp(3rem, 14vw, 5rem);
	}

	.veyra-ccm-hero__meta,
	.veyra-ccm-capabilities,
	.veyra-ccm-workflow,
	.veyra-ccm-use-cases,
	.veyra-ccm-architecture__diagram,
	.veyra-ccm-transparency,
	.veyra-ccm-faq {
		grid-template-columns: 1fr;
	}

	.veyra-ccm-hero__meta-item + .veyra-ccm-hero__meta-item,
	.veyra-ccm-workflow__step + .veyra-ccm-workflow__step {
		border-top: 1px solid var(--veyra-border-subtle);
		border-left: 0;
	}

	.veyra-ccm-ui__body {
		grid-template-columns: 3.8rem minmax(0, 1fr);
		min-height: 23rem;
	}

	.veyra-ccm-ui__rail {
		padding-inline: .35rem;
	}

	.veyra-ccm-ui__row {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.veyra-ccm-ui__row-status {
		display: none;
	}

	.veyra-ccm-fact {
		grid-template-columns: 1fr;
		gap: .3rem;
	}

	.veyra-ccm-release {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.veyra-ccm-ui,
	.veyra-ccm-ui__window {
		transform: none;
	}
}
