/*
Theme Name: Midtown BigNews V2
Theme URI: https://example.com/midtown-bignews-v2
Author: OpenAI
Description: Recovery-safe news theme for WordPress 6.9.4+ with BigNY-style homepage, breaking bar, ticker, video block, and SEO/AI content panels.
Requires at least: 6.9
Tested up to: 6.9.4
Requires PHP: 7.4
Version: 1.0.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: midtown-bignews-v2
Tags: news, blog, full-site-editing, editor-style, custom-logo, featured-images, block-patterns, translation-ready
*/

:root {
  --mbn-radius-sm: 10px;
  --mbn-radius-md: 16px;
  --mbn-radius-lg: 22px;
  --mbn-shadow-sm: 0 6px 18px rgba(16,24,40,.06);
  --mbn-shadow-md: 0 18px 46px rgba(16,24,40,.10);
  --mbn-border: 1px solid rgba(16,24,40,.10);
}

body { text-wrap: pretty; }
.wp-site-blocks { min-height: 100vh; }

.mbn-breaking-bar {
  background: #b42318;
  color: #fff;
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .03em;
}
.mbn-breaking-label {
  display: inline-block;
  background: #7a271a;
  color: #fff;
  border-radius: 999px;
  padding: .35rem .7rem;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.mbn-topbar {
  border-bottom: 1px solid rgba(16,24,40,.08);
  font-size: .84rem;
  background: #fff;
}

.mbn-site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(255,255,255,.96);
  backdrop-filter: saturate(160%) blur(12px);
  border-bottom: 1px solid rgba(16,24,40,.08);
}

.mbn-card,
.is-style-mbn-card,
.wp-block-group.is-style-mbn-card,
.wp-block-post.is-style-mbn-card {
  border: var(--mbn-border);
  border-radius: var(--mbn-radius-md);
  box-shadow: var(--mbn-shadow-sm);
  overflow: hidden;
  background: #fff;
}

.mbn-soft,
.is-style-mbn-soft {
  border: var(--mbn-border);
  border-radius: var(--mbn-radius-md);
  background: linear-gradient(180deg, rgba(248,250,252,.96), rgba(255,255,255,1));
}

.mbn-hero-post .wp-block-post,
.mbn-grid .wp-block-post,
.mbn-video-grid .wp-block-post,
.mbn-stream .wp-block-post {
  border: var(--mbn-border);
  border-radius: var(--mbn-radius-md);
  box-shadow: var(--mbn-shadow-sm);
  overflow: hidden;
  background: #fff;
  height: 100%;
}

.mbn-hero-post img,
.mbn-grid img,
.mbn-video-grid img,
.mbn-stream img,
.single .wp-block-post-featured-image img {
  display: block;
  width: 100%;
  height: auto;
}

.single .wp-block-post-featured-image img {
  border-radius: var(--mbn-radius-lg);
}

.mbn-kicker,
.is-style-mbn-kicker {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  font-size: .74rem;
}
.mbn-kicker::before,
.is-style-mbn-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--wp--preset--color--accent, #c1121f);
}

.mbn-headlines-list ul,
.mbn-headlines-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.mbn-headlines-list li {
  padding: .82rem 0;
  border-top: 1px solid rgba(16,24,40,.08);
}
.mbn-headlines-list li:first-child { border-top: 0; }
.mbn-headlines-list a { text-decoration: none; font-weight: 700; }

.mbn-meta,
.wp-block-post-date,
.wp-block-post-author-name,
.wp-block-post-terms {
  font-size: .88rem;
}

.mbn-news-ticker {
  border: var(--mbn-border);
  border-radius: 999px;
  background: #f8fafc;
  padding: .75rem 1rem;
}

.mbn-single-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,340px);
  gap: clamp(20px, 3vw, 40px);
}
.mbn-single-sidebar { position: sticky; top: 110px; align-self: start; }

.mbn-panel,
.mbn-direct-answer,
.mbn-key-facts,
.mbn-qa-block,
.mbn-video-box {
  border: var(--mbn-border);
  border-radius: var(--mbn-radius-md);
  background: #f8fafc;
  padding: 1rem 1.1rem;
}

.mbn-direct-answer p:last-child,
.mbn-key-facts ul,
.mbn-qa-block dl { margin-bottom: 0; }
.mbn-key-facts ul { padding-left: 1.2rem; }
.mbn-key-facts li + li,
.mbn-qa-block div + div { margin-top: .7rem; }

.wp-block-navigation .wp-block-navigation-item__content { font-weight: 700; }
.wp-block-search__button,
.wp-block-button__link,
button,
input[type="submit"] { border-radius: 999px; }

.wp-block-post-template.is-layout-grid { gap: 1.35rem; }
.wp-block-query-pagination { margin-top: 2rem; }

@media (max-width: 980px) {
  .mbn-single-grid { grid-template-columns: 1fr; }
  .mbn-single-sidebar { position: static; }
}

@media (max-width: 781px) {
  .mbn-hide-mobile { display: none !important; }
  .mbn-site-header { position: static; }
}
