:root {
	--cmc-blue: #3861fb;
	--twitter-blue: #1d9bf0;
	--text-dark: #0f1419;
	--text-muted: #536471;
	--bg-light: #f8fafc;
	--coral-red: #ff6f61;
	--border-color: #eff3f4;
}

body {
	background-color: var(--bg-light);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--text-dark);
	margin: 0;
	padding: 0;
}

.cmc-global-nav {
	background-color: #ffffff;
	border-bottom: 1px solid var(--border-color);
	padding: 10px 24px;
	height: 56px;
}

.nav-icon-btn {
	background: none;
	border: none;
	color: #536471;
	font-size: 18px;
	padding: 6px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.local-diamond-img {
	height: 25px;
	width: auto;
	object-fit: contain;
	transition: transform 0.2s ease;
}

.audio-cover-img {
	width: 72px;
	height: 72px;
	border-radius: 8px;        
	object-fit: cover;         
	border: 1px solid #e3e6ea;   
	flex-shrink: 0;            
}

.custom-card {
	background-color: #ffffff;
	border: 1px solid #efefef;
	border-radius: 16px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.01), 0 4px 12px rgba(0,0,0,0.015);
	margin-bottom: 16px;
}

.page-header-card {
	border-top: none;
	border-left: none;
	border-right: none;
	border-radius: 0;
	box-shadow: none;
	padding: 24px;
	border-bottom: 1px solid var(--border-color);
	background: #ffffff;
}

.header-headline {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0;
	color: #000000;
}

.header-headline .highlight-orange {
	color: var(--coral-red);
}

.btn-answer-outline {
	border: 1px solid var(--cmc-blue);
	background-color: #ffffff;
	color: var(--cmc-blue);
	font-weight: 600;
	font-size: 14px;
	padding: 8px 18px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

.btn-share-gray {
	background-color: #f0f2f5;
	border: none;
	color: #000000;
	font-weight: 600;
	font-size: 14px;
	padding: 8px 20px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

.crypto-ticker-badge {
	background-color: #f0f2f5;
	border-radius: 20px;
	padding: 4px 12px;
	display: inline-flex;
	align-items: center;
	font-size: 12px;
}

.audio-summary-wrapper {
	max-width: 750px; 
	width: 100%;
}

.audio-slider {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 4px;
	background: #e1e8ed;
	border-radius: 2px;
	outline: none;
}

.audio-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--cmc-blue);
	cursor: pointer;
	border: none;
}

.btn-follow-action {
	background-color: var(--cmc-blue);
	color: #ffffff;
	font-weight: 600;
	font-size: 13px;
	padding: 5px 16px;
	border-radius: 8px;
	border: none;
}

.post-text {
	font-size: 15px;
	line-height: 1.6;
	color: #0f1419;
	word-wrap: break-word;
}

.post-tag {
	color: #3861FB;
	text-decoration: none;
	margin-right: 4px;
}

.post-tag:hover {
	text-decoration: underline;
}

.interaction-pill-btn {
	background: #ffffff;
	border: 1px solid #e3e6ea;
	font-size: 13px;
	font-weight: 600;
	padding: 5px 12px;
	border-radius: 8px;
	color: var(--text-muted);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.interaction-pill-btn.upvoted {
	color: var(--cmc-blue);
	border-color: #c9e1f5;
	background-color: #f4f7ff;
}

.interaction-square-icon-btn {
	background: #ffffff;
	border: 1px solid #e3e6ea;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	color: var(--text-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.leaderboard-item {
	display: flex;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px solid #f8fafc;
}

.leaderboard-item:last-child {
	border-bottom: none;
}

.btn-rank-follow {
	background-color: var(--cmc-blue);
	color: #ffffff;
	font-weight: 600;
	font-size: 12px;
	padding: 4px 14px;
	border-radius: 6px;
	border: none;
}

.cursor-pointer {
	cursor: pointer;
}

.post-avatar-img {
	width: 60px;
	height: 60px;
	border-radius: 50%;         
	object-fit: cover;          
	border: 1px solid #efefef;    
	flex-shrink: 0;             
}

.post-media-box {
	border: 1px solid #e3e6ea;   
	border-radius: 12px;         
	overflow: hidden;           
	display: inline-block;       
	max-width: 100%;             
}

.post-media-box img {
	display: block;
	width: 550px;                
	max-width: 100%;             
	height: auto;                
	object-fit: contain;         
}

.post-avatar-sm-img {
	width: 36px;
	height: 36px;
	border-radius: 50%;         
	object-fit: cover;          
	border: 1px solid #efefef;   
	flex-shrink: 0;           
}