/*
 * Neubit UMS — /products/neubit-ums/ (inc/pages/product-neubit-ums.php).
 * Shared dark pieces are in product-neubit-dark.css.
 */

/* ======================================================== hero panel == */

.gvd-ums-panel {
	margin: 0;
	padding: 1rem;
	overflow: hidden;
	border: 1px solid var(--nbx-line);
	border-radius: 1.125rem;
	background: rgba(var(--nbx-navy-rgb), 0.8);
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

@media (min-width: 640px) {
	.gvd-ums-panel { padding: 1.5rem; }
}

.gvd-ums-panel__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0.75rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--nbx-line);
	color: var(--nbx-muted);
	font-family: var(--gvd-font-mono);
	font-size: 0.75rem;
	line-height: 1.3333;
	text-transform: uppercase;
}

.gvd-ums-panel__name { display: inline-flex; align-items: center; gap: 0.5rem; }

.gvd-ums-panel__name i {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 999px;
	background: var(--nbx-emerald);
}

.gvd-ums-panel__tag { color: var(--gvd-accent); font-size: 0.625rem; }

.gvd-ums-panel__screen {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 10;
	padding: 0.5rem;
	overflow: hidden;
	border-radius: 0.875rem;
	background: var(--gvd-abyss);
}

.gvd-nbx .gvd-ums-panel__screen img,
.elementor .gvd-nbx .gvd-ums-panel__screen img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: contain;
}

/* ============================================================== steps == */

.gvd-ums-steps {
	display: grid;
	gap: 2rem;
	max-width: 64rem;
	margin: 3rem auto 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.gvd-ums-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.gvd-ums-step {
	padding: 1.5rem;
	border: 1px solid var(--nbx-line);
	border-radius: 0.875rem;
	background: rgba(255, 255, 255, 0.03);
	text-align: center;
}

.gvd-ums-step > * + * { margin-top: 0.75rem !important; }

.gvd-ums-step__num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin-inline: auto;
	border-radius: 999px;
	background: rgba(var(--gvd-accent-rgb), 0.2);
	color: var(--gvd-accent);
	font-family: var(--gvd-font-mono);
	font-weight: 700;
}

.gvd-ums-step__title { font-size: 1.125rem; font-weight: 700; line-height: 1.75rem; }
.gvd-ums-step__desc { color: var(--nbx-muted); font-size: 0.875rem; line-height: 1.625; }

/* ============================================================ modules == */

.gvd-ums-module__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}

.gvd-ums-chip {
	padding: 0.125rem 0.5rem;
	border: 1px solid var(--nbx-line-soft);
	border-radius: 0.25rem;
	background: rgba(255, 255, 255, 0.05);
	color: var(--nbx-faint);
	font-family: var(--gvd-font-mono);
	font-size: 0.625rem;
	line-height: 1.5;
}

.gvd-ums-module__title { font-size: 1rem; line-height: 1.5rem; }

.gvd-ums-module__points { padding-top: 0.75rem; }
.gvd-ums-module__points li { gap: 0.5rem; color: var(--nbx-muted); font-size: 0.75rem; line-height: 1.375; }
.gvd-ums-module__points li + li { margin-top: 0.5rem; }
.gvd-ums-module__points .gvd-nbx-ticks__icon { width: 14px; height: 14px; }

/* ========================================================= operator == */

.gvd-ums-ops {
	display: grid;
	gap: 2rem;
	margin-top: 3.5rem;
}

@media (min-width: 1024px) {
	.gvd-ums-ops { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.gvd-ums-op {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 1.25rem;
	padding: 2rem;
	border: 1px solid var(--nbx-line);
	border-radius: 1.125rem;
	background: var(--gvd-abyss);
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.gvd-ums-op--accent {
	border-color: rgba(var(--gvd-accent-rgb), 0.4);
	/* bg-accent/[0.02] wins over the abyss in the reference: the band shows through. */
	background: rgba(var(--gvd-accent-rgb), 0.02);
}

.gvd-ums-op__top { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; }

.gvd-ums-op__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border: 1px solid;
	border-radius: 0.875rem;
}

.gvd-ums-op--rose .gvd-ums-op__icon { border-color: rgba(255, 32, 86, 0.2); background: rgba(255, 32, 86, 0.1); color: var(--nbx-rose); }
.gvd-ums-op--emerald .gvd-ums-op__icon { border-color: rgba(0, 188, 125, 0.2); background: rgba(0, 188, 125, 0.1); color: var(--nbx-emerald); }
.gvd-ums-op--accent .gvd-ums-op__icon { border-color: var(--gvd-accent); background: var(--gvd-accent); color: #fff; }

.gvd-ums-op__tag {
	padding: 0.25rem 0.625rem;
	border-radius: 0.25rem;
	background: rgba(255, 255, 255, 0.05);
	color: var(--nbx-faint);
	font-family: var(--gvd-font-mono);
	font-size: 0.625rem;
	line-height: 1.5;
}

.gvd-ums-op--accent .gvd-ums-op__tag { background: rgba(var(--gvd-accent-rgb), 0.1); color: var(--gvd-accent); }

.gvd-ums-op__title { margin-top: 1.25rem !important; font-size: 1.5rem; font-weight: 700; line-height: 2rem; }
.gvd-ums-op__text { margin-top: 0.5rem !important; color: var(--nbx-text); font-size: 0.875rem; line-height: 1.625; }

.gvd-ums-op__panel {
	display: grid;
	gap: 0.5rem;
	padding: 1rem;
	border: 1px solid var(--nbx-line-soft);
	border-radius: 0.875rem;
	background: rgba(255, 255, 255, 0.05);
	color: var(--nbx-text);
	font-family: var(--gvd-font-mono);
	font-size: 0.75rem;
	line-height: 1.3333;
}

.gvd-ums-op__panelhead { display: flex; flex-wrap: nowrap; justify-content: space-between; font-weight: 700; }
.gvd-ums-op--rose .gvd-ums-op__panelhead { color: var(--nbx-rose); }
.gvd-ums-op--accent .gvd-ums-op__panelhead { color: var(--gvd-accent); }
.gvd-ums-op--emerald .gvd-ums-op__panelhead { color: var(--nbx-emerald); }

.gvd-ums-op__body {
	padding: 0.5rem;
	border-radius: 0.25rem;
	background: rgba(0, 0, 0, 0.4);
	color: var(--nbx-muted);
	font-size: 0.6875rem;
}

/* ========================================================= governance == */

.gvd-ums-gov {
	display: grid;
	gap: 1.5rem;
	max-width: 56rem;
	margin: 3.5rem auto 0;
}

@media (min-width: 768px) {
	.gvd-ums-gov { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.gvd-ums-gov__item {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.5rem;
	border: 1px solid var(--nbx-line);
	border-radius: 0.875rem;
	background: rgba(255, 255, 255, 0.03);
}

.gvd-ums-gov__item .gvd-nbx-tile { margin-top: 0.25rem; }
.gvd-ums-gov__title { font-size: 1rem; font-weight: 700; line-height: 1.5rem; }
.gvd-ums-gov__desc { margin-top: 0.25rem !important; color: var(--nbx-muted); font-size: 0.75rem; line-height: 1.625; }

/* =========================================================== partners == */

.gvd-ums-partners__grid {
	display: grid;
	gap: 3rem;
	align-items: center;
}

@media (min-width: 1024px) {
	.gvd-ums-partners__grid { grid-template-columns: 5fr 7fr; }
}

.gvd-ums-partners__copy > * + * { margin-top: 1.25rem !important; }

.gvd-ums-partners__title {
	font-size: 1.875rem;
	font-weight: 700;
	line-height: 2.25rem;
	letter-spacing: -0.025em;
}

@media (min-width: 640px) {
	.gvd-ums-partners__title { font-size: 2.25rem; line-height: 2.5rem; }
}

.gvd-ums-partners__text { color: var(--nbx-text); line-height: 1.625; }
.gvd-ums-partners__copy .gvd-nbx-actions { padding-top: 0.5rem; }
.gvd-ums-partners__copy .gvd-nbx-btn { box-shadow: none; }

.gvd-ums-partners__list {
	display: grid;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 640px) {
	.gvd-ums-partners__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.gvd-ums-partners__item {
	padding: 1.5rem;
	border: 1px solid var(--nbx-line);
	border-radius: 0.875rem;
	background: var(--gvd-abyss);
}

.gvd-ums-partners__num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border: 1px solid rgba(var(--gvd-accent-rgb), 0.2);
	border-radius: 0.625rem;
	background: rgba(var(--gvd-accent-rgb), 0.1);
	color: var(--gvd-accent);
	font-family: var(--gvd-font-mono);
	font-size: 0.75rem;
	font-weight: 700;
}

.gvd-ums-partners__item h3 { margin-top: 0.75rem !important; font-size: 1rem; font-weight: 700; line-height: 1.5rem; }
.gvd-ums-partners__item p { margin-top: 0.5rem !important; color: var(--nbx-muted); font-size: 0.75rem; line-height: 1.625; }

/* ============================================================ roadmap == */

.gvd-ums-soon { padding: 1.25rem; }
.gvd-nbx-roadmap .gvd-nbx-cards--5 { gap: 1rem; }

.gvd-ums-soon__tag {
	padding: 0.125rem 0.5rem;
	border: 1px solid rgba(var(--gvd-accent-rgb), 0.3);
	border-radius: 0.25rem;
	background: rgba(var(--gvd-accent-rgb), 0.2);
	color: var(--gvd-accent);
	font-family: var(--gvd-font-mono);
	font-size: 0.5625rem;
	font-weight: 700;
	line-height: 1.5;
	text-transform: uppercase;
	white-space: nowrap;
}

.gvd-ums-soon__title { margin-top: 1rem !important; font-size: 0.875rem; font-weight: 700; line-height: 1.25rem; }
.gvd-ums-soon__desc { margin-top: 0.5rem !important; color: var(--nbx-muted); font-size: 0.75rem; line-height: 1.625; }
.gvd-ums-soon:hover .gvd-nbx-tile { background: rgba(var(--gvd-accent-rgb), 0.1) !important; color: var(--gvd-accent) !important; }

/* ============================================================ synergy == */

.gvd-ums-synergy__wrap { max-width: 64rem; }

.gvd-ums-synergy {
	display: grid;
	margin-top: 3.5rem;
	overflow: hidden;
	border: 1px solid var(--nbx-line);
	border-radius: 1.125rem;
	background: var(--gvd-abyss);
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

@media (min-width: 768px) {
	.gvd-ums-synergy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gvd-ums-synergy__col + .gvd-ums-synergy__col { border-left: 1px solid var(--nbx-line); }
}

@media (max-width: 767px) {
	.gvd-ums-synergy__col + .gvd-ums-synergy__col { border-top: 1px solid var(--nbx-line); }
}

.gvd-ums-synergy__col { padding: 2rem; }
.gvd-ums-synergy__col > * + * { margin-top: 1.5rem !important; }
.gvd-ums-synergy__col--featured { background: rgba(var(--gvd-accent-rgb), 0.02); }

.gvd-ums-synergy__head { display: flex; align-items: center; gap: 0.75rem; }
.gvd-ums-synergy__title { font-size: 1.25rem; font-weight: 700; line-height: 1.75rem; }
.gvd-ums-synergy__sub { color: var(--nbx-muted); font-size: 0.75rem; line-height: 1rem; }

.gvd-ums-synergy__points li { gap: 0.75rem; }
.gvd-ums-synergy__points li + li { margin-top: 1rem; }

.gvd-ums-synergy__col > .gvd-ums-synergy__link { margin-top: 2.5rem !important; }

.gvd-ums-synergy__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--gvd-accent);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.25rem;
	text-decoration: none;
	transition: color 0.2s;
}

.gvd-ums-synergy__link:hover { color: #fff; }

/* ========================================================== audience == */

/* The reference spaces tile, title and text evenly (space-y-4). */
.gvd-nbx-audience .gvd-nbx-card__desc { margin-top: 1rem !important; }
