/* layer2.report */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #ffffff; color: #111111; font-family: 'Inter', sans-serif; line-height: 1.7; }
.masthead { max-width: 700px; margin: 0 auto; padding: 3rem 1.5rem 2rem; text-align: center; }
.rule { width: 100%; }
.rule.thick { height: 3px; background: #1a1a1a; margin-bottom: 1rem; }
.rule.thin { height: 1px; background: #1a1a1a; margin-top: 0.5rem; }
.masthead-brand { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: clamp(2.5rem, 7vw, 3.5rem); letter-spacing: 0.05em; color: #0a0a0a; }
.masthead-sub { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 1rem; letter-spacing: 0.2em; color: #6b7280; }
.headline { font-family: 'Playfair Display', serif; font-weight: 700; font-size: clamp(1.3rem, 3vw, 1.8rem); color: #0a0a0a; margin-top: 1.5rem; line-height: 1.3; }
.coverage { max-width: 700px; margin: 0 auto; padding: 2rem 1.5rem; display: flex; flex-direction: column; gap: 2rem; }
.story { border-top: 1px solid #d4d4d4; padding-top: 1.5rem; }
.story.featured { border-top: 2px solid #1a1a1a; }
.breaking { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 0.65rem; color: #dc2626; text-transform: uppercase; letter-spacing: 0.1em; display: inline-block; margin-bottom: 0.5rem; }
.story-headline { font-family: 'Playfair Display', serif; font-weight: 700; font-size: 1.2rem; color: #0a0a0a; margin-bottom: 0.3rem; line-height: 1.3; }
.byline { font-size: 0.7rem; color: #6b7280; margin-bottom: 0.75rem; }
.story-body { font-size: 0.85rem; color: #374151; }
.ticker-strip { background: #111111; overflow: hidden; padding: 0.6rem 0; }
.ticker-track { display: flex; gap: 3rem; animation: scroll 30s linear infinite; white-space: nowrap; }
@keyframes scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.ticker-item { font-family: 'Fira Code', monospace; font-size: 0.7rem; color: #22d3ee; }
.masthead-close { max-width: 700px; margin: 0 auto; padding: 2rem 1.5rem 3rem; text-align: center; }
.edition { font-size: 0.7rem; color: #6b7280; margin-top: 1rem; }
.end-mark { font-size: 0.65rem; color: #a3a3a3; margin-top: 0.5rem; }
.fade-in { opacity: 0; transform: translateY(12px); transition: opacity 0.5s ease, transform 0.5s ease; }
.fade-in.visible { opacity: 1; transform: translateY(0); }
