/**
 * New Bloggers Theme — Crypto news UI (dark-first, Web3 aesthetic).
 *
 * @package New_Bloggers_Theme
 */

/* Crypto design tokens */
:root,
.nbt-crypto-theme {
	--nbt-crypto-bg: #070b14;
	--nbt-crypto-surface: #0f1624;
	--nbt-crypto-surface-2: #151f32;
	--nbt-crypto-text: #e8edf7;
	--nbt-crypto-muted: #8b9cb8;
	--nbt-crypto-border: rgba(255, 255, 255, 0.08);
	--nbt-crypto-neon: var(--cst-color-accent, #00e5ff);
	--nbt-crypto-glow: 0 0 24px color-mix(in srgb, var(--nbt-crypto-neon) 35%, transparent);
	--nbt-crypto-up: #00e676;
	--nbt-crypto-down: #ff5252;
	--nbt-crypto-gradient: linear-gradient(135deg, var(--cst-color-accent) 0%, #7c4dff 100%);
}

.nbt-crypto-dark,
html.nbt-dark .nbt-crypto-theme {
	--cst-color-bg: var(--nbt-crypto-bg);
	--cst-color-surface: var(--nbt-crypto-surface);
	--cst-color-text: var(--nbt-crypto-text);
	--cst-color-muted: var(--nbt-crypto-muted);
	--cst-color-header: #05080f;
	--cst-color-header-text: #f5f8ff;
	--cst-color-border: var(--nbt-crypto-border);
	--cst-font-body: "Segoe UI", system-ui, sans-serif;
	--cst-font-heading: "Segoe UI", system-ui, sans-serif;
}

.nbt-crypto-dark body,
html.nbt-dark body {
	background: var(--nbt-crypto-bg);
	color: var(--nbt-crypto-text);
}

.nbt-crypto-dark .cst-header,
html.nbt-dark .cst-header {
	background: rgba(5, 8, 15, 0.92);
	border-bottom: 1px solid var(--nbt-crypto-border);
	backdrop-filter: blur(12px);
}

.nbt-crypto-dark .cst-card,
.nbt-crypto-dark .cst-sidebar,
html.nbt-dark .cst-card,
html.nbt-dark .cst-sidebar .widget {
	background: var(--nbt-crypto-surface);
	border: 1px solid var(--nbt-crypto-border);
	box-shadow: var(--nbt-crypto-glow);
}

/* Ticker */
.nbt-crypto-ticker {
	display: flex;
	align-items: stretch;
	background: var(--nbt-crypto-surface-2);
	border-block: 1px solid var(--nbt-crypto-border);
	overflow: hidden;
}

.nbt-crypto-ticker__label {
	flex: 0 0 auto;
	padding: 0.65rem 1rem;
	background: var(--nbt-crypto-gradient);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	display: flex;
	align-items: center;
}

.nbt-crypto-ticker__track {
	flex: 1;
	overflow: hidden;
}

.nbt-crypto-ticker__inner {
	display: flex;
	gap: 2rem;
	padding: 0.65rem 1rem;
	animation: nbt-ticker-scroll 40s linear infinite;
	white-space: nowrap;
}

@keyframes nbt-ticker-scroll {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.nbt-crypto-ticker__item {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.85rem;
}

.nbt-crypto-ticker__symbol {
	font-weight: 700;
	color: var(--nbt-crypto-neon);
}

.nbt-crypto-ticker__change--up { color: var(--nbt-crypto-up); }
.nbt-crypto-ticker__change--down { color: var(--nbt-crypto-down); }

/* Sections */
.nbt-crypto-section {
	margin-block: 2rem;
	padding: 1.25rem;
	border: 1px solid var(--nbt-crypto-border);
	border-radius: 12px;
	background: color-mix(in srgb, var(--nbt-crypto-surface) 90%, transparent);
}

.nbt-crypto-section__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.nbt-crypto-section__eyebrow {
	display: block;
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--nbt-crypto-neon);
	margin-bottom: 0.25rem;
}

.nbt-crypto-section__title {
	margin: 0;
	font-size: 1.35rem;
	background: var(--nbt-crypto-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.nbt-crypto-section__more {
	font-size: 0.85rem;
	color: var(--nbt-crypto-neon);
	text-decoration: none;
}

/* Market cards */
.nbt-market-movers__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.nbt-market-card {
	padding: 1rem;
	border-radius: 10px;
	background: var(--nbt-crypto-surface-2);
	border: 1px solid var(--nbt-crypto-border);
	transition: transform 0.2s, box-shadow 0.2s;
}

.nbt-market-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--nbt-crypto-glow);
}

.nbt-market-card__top {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0.35rem;
}

.nbt-market-card__symbol {
	font-weight: 800;
	color: var(--nbt-crypto-neon);
}

.nbt-market-card__change--up { color: var(--nbt-crypto-up); }
.nbt-market-card__change--down { color: var(--nbt-crypto-down); }

.nbt-market-card__name {
	margin: 0 0 0.25rem;
	font-size: 1rem;
}

.nbt-market-card__price {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 700;
}

.nbt-market-card__cap {
	margin: 0.35rem 0 0;
	font-size: 0.75rem;
	color: var(--nbt-crypto-muted);
}

/* Crypto post cards */
.nbt-crypto-posts--grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.nbt-crypto-posts--featured,
.nbt-crypto-posts--split {
	display: grid;
	grid-template-columns: 1.25fr repeat(2, minmax(0, 0.85fr));
	gap: 1rem;
	align-items: stretch;
}

.nbt-crypto-posts--featured .nbt-crypto-card:first-child {
	grid-row: span 2;
}

.nbt-crypto-posts--featured .nbt-crypto-card:first-child .nbt-crypto-card__image,
.nbt-crypto-posts--featured .nbt-crypto-card:first-child .nbt-crypto-card__image--placeholder {
	aspect-ratio: 16 / 13;
}

.nbt-crypto-posts--featured .nbt-crypto-card:first-child .nbt-crypto-card__title {
	font-size: 1.35rem;
}

.nbt-crypto-posts--compact {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.nbt-crypto-posts--compact .nbt-crypto-card__link {
	display: grid;
	grid-template-columns: 104px 1fr;
	align-items: stretch;
}

.nbt-crypto-posts--compact .nbt-crypto-card__image,
.nbt-crypto-posts--compact .nbt-crypto-card__image--placeholder {
	height: 100%;
	min-height: 112px;
	aspect-ratio: auto;
}

.nbt-crypto-card {
	border-radius: 10px;
	overflow: hidden;
	background: var(--nbt-crypto-surface-2);
	border: 1px solid var(--nbt-crypto-border);
	height: 100%;
}

.nbt-crypto-card__link {
	display: grid;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

.nbt-crypto-card__image {
	display: block;
	width: 100%;
	aspect-ratio: 16/10;
	object-fit: cover;
}

.nbt-crypto-card__image--placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 16/10;
	background: var(--nbt-crypto-gradient);
	opacity: 0.35;
}

.nbt-crypto-card__body {
	padding: 0.85rem;
	min-width: 0;
}

.nbt-crypto-card__title {
	margin: 0.35rem 0 0;
	font-size: 0.95rem;
	line-height: 1.35;
}

/* Featured analysis */
.nbt-analysis-feature {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 1.5rem;
	align-items: center;
}

.nbt-analysis-feature__title {
	font-size: 1.5rem;
	margin: 0.5rem 0;
}

.nbt-analysis-feature__title a {
	color: inherit;
	text-decoration: none;
}

.nbt-analysis-feature__excerpt {
	color: var(--nbt-crypto-muted);
}

.nbt-analysis-feature__media img {
	width: 100%;
	border-radius: 10px;
	border: 1px solid var(--nbt-crypto-border);
}

/* Newsletter */
.nbt-crypto-newsletter__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.5rem;
	border-radius: 12px;
	background: var(--nbt-crypto-gradient);
	color: #fff;
}

.nbt-crypto-newsletter__title {
	margin: 0 0 0.35rem;
	color: #fff;
}

.nbt-crypto-newsletter__form {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.nbt-crypto-newsletter__form input {
	padding: 0.65rem 1rem;
	border: none;
	border-radius: 8px;
	min-width: 220px;
}

/* Exchange table */
.nbt-exchange-compare__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.nbt-exchange-compare__table th,
.nbt-exchange-compare__table td {
	padding: 0.75rem;
	border-bottom: 1px solid var(--nbt-crypto-border);
	text-align: left;
}

.nbt-exchange-rating {
	color: var(--nbt-crypto-neon);
	font-weight: 700;
}

/* Buttons */
.nbt-button--neon {
	display: inline-block;
	padding: 0.6rem 1.2rem;
	border-radius: 8px;
	background: var(--nbt-crypto-gradient);
	color: #fff !important;
	text-decoration: none;
	font-weight: 600;
	border: none;
	cursor: pointer;
}

/* Coin widget */
.nbt-coin-widget__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.nbt-coin-widget__item {
	display: grid;
	grid-template-columns: 3rem 1fr auto;
	gap: 0.5rem;
	padding: 0.5rem 0;
	border-bottom: 1px solid var(--nbt-crypto-border);
}

.nbt-coin-widget__symbol { font-weight: 700; color: var(--nbt-crypto-neon); }
.nbt-coin-widget__change--up { color: var(--nbt-crypto-up); }
.nbt-coin-widget__change--down { color: var(--nbt-crypto-down); }
.nbt-coin-widget__note { font-size: 0.7rem; color: var(--nbt-crypto-muted); }

/* Risk disclaimer */
.nbt-risk-disclaimer {
	padding: 1rem 0;
	background: #1a0f0f;
	border-top: 1px solid rgba(255, 82, 82, 0.25);
}

.nbt-risk-disclaimer__label {
	display: block;
	color: #ff8a80;
	margin-bottom: 0.35rem;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.nbt-risk-disclaimer p {
	margin: 0;
	font-size: 0.78rem;
	color: #c9b8b8;
	line-height: 1.5;
}

/* Analyst author box */
.nbt-crypto-theme .cst-author-box {
	border: 1px solid var(--nbt-crypto-border);
	background: var(--nbt-crypto-surface-2);
	border-radius: 12px;
	padding: 1.25rem;
}

.nbt-crypto-theme .cst-author-box__role {
	margin: 0 0 0.25rem;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--nbt-crypto-neon);
}

.nbt-crypto-theme .cst-author-box__name::before {
	content: none;
}

/* Breaking bar crypto */
.nbt-crypto-theme .cst-breaking-bar {
	background: var(--nbt-crypto-gradient);
}

.nbt-crypto-theme .cst-breaking-bar__label {
	background: rgba(0, 0, 0, 0.35);
}

/* Hero crypto overlay */
.nbt-crypto-theme .cst-featured-hero__main {
	border: 1px solid var(--nbt-crypto-border);
	box-shadow: var(--nbt-crypto-glow);
}

@media (max-width: 960px) {
	.nbt-market-movers__grid,
	.nbt-crypto-posts--grid,
	.nbt-crypto-posts--featured,
	.nbt-crypto-posts--split,
	.nbt-crypto-posts--compact {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.nbt-crypto-posts--featured .nbt-crypto-card:first-child {
		grid-row: auto;
	}
	.nbt-analysis-feature {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.nbt-market-movers__grid,
	.nbt-crypto-posts--grid,
	.nbt-crypto-posts--featured,
	.nbt-crypto-posts--split,
	.nbt-crypto-posts--compact {
		grid-template-columns: 1fr;
	}
	.nbt-crypto-posts--compact .nbt-crypto-card__link {
		grid-template-columns: 1fr;
	}
	.nbt-crypto-ticker__label { display: none; }
}
