/*
Theme Name: Newsroom
Theme URI: https://example.com/newsroom
Author: Your Name
Author URI: https://example.com
Description: A standalone WordPress block theme for news and magazine sites. Clean black/white layout with a bold red accent, magazine-style category grids, and full Site Editor support. Built for sites organized around Breaking, US, World, Business, Technology, Health, Sports, Science, Crime and Entertainment coverage.
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: newsroom
Tags: news, magazine, blog, one-column, two-columns, grid-layout, full-site-editing, block-patterns, custom-colors, custom-menu, featured-images, rtl-language-support, theme-options, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* -------------------------------------------------------------------------
   This stylesheet only carries the small amount of styling that theme.json
   cannot express (hover states, the ticker, card layout helpers, etc).
   Colors, type and spacing are all controlled from theme.json so the Site
   Editor stays the single source of truth.
   ---------------------------------------------------------------------- */

/* Top utility bar */
.newsroom-topbar {
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	font-size: 0.8125rem;
}
.newsroom-topbar a {
	color: var(--wp--preset--color--base);
	text-decoration: none;
}
.newsroom-topbar .wp-block-social-links a:hover {
	opacity: 0.75;
}

/* Ticker */
.newsroom-ticker-label {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
	font-weight: 600;
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 6px 14px;
	white-space: nowrap;
}
.newsroom-ticker .wp-block-latest-posts {
	display: flex;
	gap: 2rem;
	overflow-x: auto;
	scrollbar-width: none;
	margin: 0;
	padding: 8px 4px;
	list-style: none;
}
.newsroom-ticker .wp-block-latest-posts::-webkit-scrollbar {
	display: none;
}
.newsroom-ticker .wp-block-latest-posts li {
	white-space: nowrap;
	margin: 0;
}
.newsroom-ticker .wp-block-latest-posts a {
	color: var(--wp--preset--color--contrast);
	text-decoration: none;
	font-size: 0.875rem;
}
.newsroom-ticker .wp-block-latest-posts a:hover {
	color: var(--wp--preset--color--accent);
}

/* Site branding */
.newsroom-logo .wp-block-site-title a {
	text-decoration: none;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	letter-spacing: -0.01em;
}
.newsroom-logo .wp-block-site-title a:hover {
	color: var(--wp--preset--color--accent);
}
.newsroom-logo .wp-block-site-tagline {
	color: var(--wp--preset--color--muted);
	font-size: 0.875rem;
}

/* Primary navigation */
.newsroom-nav-wrapper {
	border-top: 1px solid var(--wp--preset--color--border);
	border-bottom: 3px solid var(--wp--preset--color--contrast);
}
.newsroom-nav-wrapper .wp-block-navigation {
	font-weight: 500;
}
.newsroom-nav-wrapper .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding: 18px 14px;
	text-transform: uppercase;
	font-size: 0.875rem;
	letter-spacing: 0.03em;
}
.newsroom-nav-wrapper .wp-block-navigation-item > .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--accent);
}
.newsroom-nav-wrapper .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent);
}

/* Section title bars used throughout homepage / archive grids */
.newsroom-section-title {
	background: var(--wp--preset--color--surface);
	padding: 10px 18px;
	border-left: 4px solid var(--wp--preset--color--accent);
	margin-bottom: 1.5rem !important;
}
.newsroom-section-title h2,
.newsroom-section-title h3 {
	color: var(--wp--preset--color--accent);
	text-transform: uppercase;
	letter-spacing: 0.03em;
	margin: 0;
}
.newsroom-section-title .newsroom-viewall a {
	font-size: 0.8125rem;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast);
	text-decoration: none;
	border-bottom: 2px solid var(--wp--preset--color--accent);
	padding-bottom: 2px;
}
.newsroom-section-title .newsroom-viewall a:hover {
	color: var(--wp--preset--color--accent);
}

/* Post cards inside Query Loop grids */
.newsroom-grid .wp-block-post {
	background: var(--wp--preset--color--base);
	transition: transform 0.15s ease;
}
.newsroom-grid .wp-block-post-featured-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
}
.newsroom-grid .wp-block-post-title a {
	text-decoration: none;
	color: var(--wp--preset--color--contrast);
	line-height: 1.3;
}
.newsroom-grid .wp-block-post-title a:hover {
	color: var(--wp--preset--color--accent);
}
.newsroom-grid .wp-block-post-terms {
	text-transform: uppercase;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
}
.newsroom-grid .wp-block-post-terms a {
	color: var(--wp--preset--color--accent);
	text-decoration: none;
}
.newsroom-grid .wp-block-post-date {
	color: var(--wp--preset--color--muted);
	font-size: 0.8125rem;
}
.newsroom-grid .wp-block-post-author {
	color: var(--wp--preset--color--muted);
	font-size: 0.8125rem;
}

/* Hero */
.newsroom-hero-main .wp-block-post-title {
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	line-height: 1.15;
}
.newsroom-hero-main .wp-block-post-featured-image img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
}
.newsroom-hero-side .wp-block-post {
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-bottom: 0.75rem;
	margin-bottom: 0.75rem !important;
}
.newsroom-hero-side .wp-block-post:last-child {
	border-bottom: none;
}
.newsroom-hero-side .wp-block-post-featured-image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}
.newsroom-hero-side .wp-block-post-title {
	font-size: 1rem;
	line-height: 1.35;
}

/* Category badge on single/archive headers */
.newsroom-cat-pill {
	display: inline-block;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
	text-transform: uppercase;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 4px 12px;
}

/* Footer */
.newsroom-footer {
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
}
.newsroom-footer a {
	color: var(--wp--preset--color--base);
	text-decoration: none;
}
.newsroom-footer a:hover {
	color: var(--wp--preset--color--accent);
}
.newsroom-footer h2,
.newsroom-footer h3 {
	color: var(--wp--preset--color--base);
	text-transform: uppercase;
	font-size: 0.9375rem;
	letter-spacing: 0.04em;
}
.newsroom-footer-bottom {
	border-top: 1px solid rgba(255,255,255,0.15);
	font-size: 0.8125rem;
	color: rgba(255,255,255,0.6);
}
.newsroom-footer .wp-block-latest-posts a {
	font-size: 0.875rem;
}

/* Pagination */
.wp-block-query-pagination-numbers a,
.wp-block-query-pagination-numbers span {
	padding: 4px 10px;
	border: 1px solid var(--wp--preset--color--border);
	text-decoration: none;
}
.wp-block-query-pagination-numbers .current {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--accent);
}

/* Sticky-friendly responsive tweak for the grid title bars */
@media (max-width: 600px) {
	.newsroom-section-title {
		flex-direction: column;
		align-items: flex-start !important;
		gap: 0.5rem;
	}
}
