/* Newsburst: stories from Supabase */
.nb-pills { display: flex; flex-wrap: wrap; gap: .375rem; }
.nb-pills .chip { text-decoration: none; }
.nb-media { position: relative; display: block; overflow: hidden; background: #000; aspect-ratio: 16 / 9; }
.nb-media .nb-thumb { width: 100%; height: 100%; object-fit: cover; display: block; }
.nb-media .video-play { position: absolute; inset-inline-start: .75rem; inset-block-end: .75rem; }
.story-row-thumb { object-fit: cover; background: #000; }
.nb-clamp { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.nb-status { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding: 1rem 1.125rem; margin-block: 1rem; border: 1px solid #E3D5A8; border-radius: .75rem; background: #FBF7EC; color: #3D3420; font-size: .95rem; }
.nb-status-loading span::before { content: ""; display: inline-block; width: .9em; height: .9em; margin-inline-end: .5rem; vertical-align: -.1em; border: 2px solid #C9B067; border-top-color: transparent; border-radius: 50%; animation: nb-spin .8s linear infinite; }
.nb-status-error { border-color: #E5B4AA; background: #FDF1EE; color: #6B1F12; }
@keyframes nb-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .nb-status-loading span::before { animation: none; } }
:root[data-theme="dark"] .nb-status { background: #1C1912; border-color: #4A3F22; color: #E9E3D2; }
:root[data-theme="dark"] .nb-status-error { background: #2A1612; border-color: #6B2E22; color: #F6D5CE; }
.nb-latest-body { display: grid; gap: 1rem; }
/* story page */
.nb-story-page { max-width: 46rem; margin-inline: auto; padding-block: 1.25rem 2.5rem; }
.nb-story-page .article-head { padding-block-end: 1rem; }
.nb-story-page .article-title { margin-block: .75rem .5rem; }
.nb-player { width: min(100%, 22.5rem); aspect-ratio: 9 / 16; margin: 1rem auto 1.25rem; border-radius: 1rem; overflow: hidden; background: #000; box-shadow: 0 0 0 1px rgba(201,176,103,.45); }
.nb-player iframe { width: 100%; height: 100%; border: 0; display: block; }
.nb-story-body p { white-space: pre-line; margin-block: 0 1rem; }
.nb-yt { display: flex; justify-content: center; margin-block: .5rem 1.75rem; }
.nb-refs { margin-block-start: 1.5rem; padding-block-start: 1rem; border-top: 1px solid rgba(127,127,127,.25); }
.nb-refs h2 { font-size: 1.05rem; font-weight: 600; margin-block-end: .5rem; }
.nb-refs ul { list-style: disc; padding-inline-start: 1.25rem; display: grid; gap: .4rem; font-size: .9rem; overflow-wrap: anywhere; }
.nb-refs a { color: #7D682C; text-decoration: underline; text-underline-offset: 2px; }
:root[data-theme="dark"] .nb-refs a { color: #D4C085; }
.nb-credits { font-size: .82rem; opacity: .9; }
/* Headline sizes (Joseph, Nov 7, v2): lead ~22px phone / ~30px desktop, still largest */
.nb-story .lead-title { font-size: clamp(1.375rem, 1.1rem + 1.2vw, 1.85rem); line-height: 1.15; }
.nb-story.story-card .story-title { font-size: clamp(.9375rem, .9rem + .15vw, 1.0625rem); }
.nb-story.story-row .story-title,
.most-read[data-nb-aside-latest] .story-title { font-size: calc(var(--text-lg) * .85); }
.nb-story-page .article-title { font-size: clamp(1.3125rem, 1.2rem + .5vw, 1.75rem); line-height: 1.2; }
/* Sections page + Video grid */
.nb-sections-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-block-start: 1.25rem; }
@media (width >= 768px) { .nb-sections-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.nb-section-card { display: flex; align-items: center; gap: .6rem; min-height: 3.5rem; padding: .85rem 1rem; border: 1px solid #E3D5A8; border-radius: .875rem; background: #F5EEDC; color: #3D3420; font-weight: 600; text-decoration: none; }
.nb-section-card .icon { color: #7D682C; flex: none; }
.nb-section-card:hover, .nb-section-card:focus-visible { background: #C9B067; border-color: #C9B067; color: #141414; }
.nb-section-card:hover .icon, .nb-section-card:focus-visible .icon { color: #141414; }
:root[data-theme="dark"] .nb-section-card { background: #2A2416; border-color: #4A3F22; color: #E9E3D2; }
:root[data-theme="dark"] .nb-section-card .icon { color: #D4C085; }
.nb-video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem .875rem; margin-block-start: 1.25rem; }
@media (width >= 768px) { .nb-video-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (width >= 1200px) { .nb-video-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.nb-video-grid .nb-media { aspect-ratio: 9 / 16; border-radius: .875rem; }
.nb-video-grid .story-card { min-width: 0; }
.masthead-edition[hidden] { display: none !important; }

/* Cookie consent banner */
.nb-consent{position:fixed;z-index:60;inset-inline:.75rem;bottom:calc(4.75rem + env(safe-area-inset-bottom,0px));max-width:30rem;margin-inline:auto;background:#000;color:#f5f5f5;border:1px solid #C9B067;border-radius:.75rem;padding:1rem;box-shadow:0 10px 30px rgb(0 0 0/.35);font-size:.875rem;line-height:1.45}
.nb-consent[hidden]{display:none}
.nb-consent h2{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:#C9B067}
.nb-consent p{margin:0}
.nb-consent a{color:#C9B067;text-decoration:underline}
.nb-consent-actions{display:flex;gap:.5rem;margin-top:.75rem}
.nb-consent-btn{flex:1;min-height:2.75rem;border-radius:.5rem;border:1px solid #C9B067;background:#C9B067;color:#111;font-weight:600;font-size:.9375rem;cursor:pointer}
.nb-consent-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.nb-cookie-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
.nb-cookie-link:hover{text-decoration:underline}
@media (min-width:1024px){.nb-consent{bottom:1.25rem;inset-inline:auto 1.25rem}}
