/* Static article first; controls and media are optional enhancements. */
.incident-report { max-width:1200px; margin:0 auto; padding:0 28px 72px; color:var(--text-primary); font:20px/1.6 'Crimson Pro',Georgia,serif; }
.incident-report [hidden] { display:none !important; }
.incident-report a { color:#ff828b; text-underline-offset:4px; }
.incident-report a:hover { color:#ffb1b6; }
.incident-report :is(a,button,input):focus-visible { outline:3px solid #ffbd69; outline-offset:4px; }
.incident-report :is(section,li,h1) { scroll-margin-top:130px; }
.ir-hero { max-width:850px; padding:56px 0 30px; }
.ir-back,.ir-kicker,.ir-meta,.ir-nav,.ir-phase-nav,.ir-event-meta,.ir-permalink,.ir-tools,.ir-end,.ir-load-media { font-family:'JetBrains Mono',monospace; }
.ir-back { display:inline-flex; align-items:center; min-height:44px; font-size:12px; }
.ir-kicker { margin:20px 0 10px; text-transform:uppercase; letter-spacing:1.7px; font-size:11px; color:#d3979c; }
.ir-hero h1 { font-family:'Space Grotesk',sans-serif; font-size:clamp(35px,5.4vw,64px); line-height:1.08; letter-spacing:-1.5px; margin:12px 0 24px; }
.ir-deck { font-size:25px; line-height:1.4; color:#d0cbd4; max-width:750px; }
.ir-meta { color:#aaa5b2; font-size:11px; line-height:1.9; margin-top:24px; }
.ir-nav { display:flex; flex-wrap:wrap; gap:8px 25px; padding:13px 0; border-block:1px solid var(--border); font-size:12px; }
.ir-nav a,.ir-end a { display:inline-flex; align-items:center; min-height:44px; }
.ir-section { padding:48px 0 8px; }
.incident-report h2 { font:600 clamp(25px,3vw,35px)/1.2 'Space Grotesk',sans-serif; margin:0 0 24px; }
.incident-report h3 { font:600 23px/1.3 'Space Grotesk',sans-serif; margin:0 0 14px; }
.incident-report p { margin:0 0 16px; }
.ir-overview { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ir-summary-card { border:1px solid var(--border); background:var(--bg-card); padding:24px; border-radius:7px; }
.ir-citations { display:block; font:11px/1.8 'JetBrains Mono',monospace; margin-top:12px; }
.ir-reading-note { max-width:900px; color:#b9b3c1; font-size:18px; }
.ir-phase-nav { display:flex; gap:10px; flex-wrap:wrap; margin:25px 0; }
.ir-phase-nav a { flex:1 1 170px; padding:12px; border:1px solid var(--border); text-decoration:none; font-size:11px; border-radius:5px; }
.ir-phase-nav small { display:block; color:#aaa5b2; font-size:10px; margin-top:7px; }
.ir-tools { display:flex; flex-wrap:wrap; align-items:center; gap:10px; font-size:11px; padding:16px 0; }
.ir-tools input { flex:1 1 250px; border:1px solid var(--border-light); border-radius:5px; background:var(--bg-card); color:var(--text-primary); min-height:44px; padding:8px 12px; font:inherit; }
.ir-tools button,.ir-load-media { border:1px solid #db6671; border-radius:5px; padding:10px 16px; min-height:44px; background:#321820; color:#ffe9ec; cursor:pointer; font-size:11px; }
.ir-tools p { width:100%; margin:0; color:#b9b3c1; }
.ir-phase { padding-top:40px; }
.ir-phase>header { position:relative; z-index:1; max-width:760px; margin:0 auto 30px; padding:24px; background:var(--bg-primary,#0a0a0f); border-block:1px solid var(--border); text-align:center; }
.ir-phase>header p:last-child { color:#b9b3c1; font-size:18px; margin:0; }
.ir-track { position:relative; padding:0; margin:0; list-style:none; }
.ir-track::before { content:''; position:absolute; top:0; bottom:0; left:50%; width:2px; background:linear-gradient(transparent,#63404c 30px,#63404c calc(100% - 30px),transparent); }
.ir-event { position:relative; width:50%; padding:0 32px 22px 0; }
.ir-event--right { margin-left:50%; padding:0 0 22px 32px; }
.ir-event::after { content:''; position:absolute; right:-6px; top:25px; width:12px; height:12px; border-radius:50%; background:#ee7180; border:3px solid #21151d; box-shadow:0 0 0 4px var(--bg-primary,#0a0a0f); }
.ir-event--right::after { left:-6px; right:auto; }
.ir-card { background:var(--bg-card); border:1px solid var(--border); border-radius:7px; padding:22px; }
.ir-event:target .ir-card { border-color:#ffbd69; }
.ir-event h4 { font:600 21px/1.3 'Space Grotesk',sans-serif; margin:14px 0; }
.ir-event p { font-size:19px; margin:0; }
.ir-event-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:10px; color:#d3c7d0; }
.ir-kind { padding:3px 7px; border-radius:4px; background:#272431; color:#cac1de; }
.ir-kind--warning { color:#ffd397; background:#3c2a19; }
.ir-kind--response { color:#a9dacb; background:#172e29; }
.ir-kind--disclosure { color:#aecdff; background:#1c293f; }
.ir-permalink { display:inline-block; font-size:10px; padding:14px 0 4px; min-height:44px; }
.ir-boundaries { display:grid; grid-template-columns:repeat(5,1fr); padding:0; margin:25px 0; gap:14px; list-style:none; counter-reset:boundary; }
.ir-boundaries li { position:relative; counter-increment:boundary; padding:18px; border:1px solid #63404c; background:var(--bg-card); border-radius:5px; font:13px/1.5 'Space Grotesk',sans-serif; }
.ir-boundaries li::before { content:counter(boundary,decimal-leading-zero); display:block; color:#ed8591; font:11px 'JetBrains Mono',monospace; margin-bottom:12px; }
.ir-boundaries li:not(:last-child)::after { content:'→'; position:absolute; right:-14px; top:45%; color:#ed8591; }
.ir-boundaries span { display:block; margin-top:10px; color:#bab2c3; font-size:12px; }
.ir-interpretation { border-left:3px solid #b89064; background:#b890640b; padding:18px 22px; margin:22px 0; color:#c7c0cc; font-size:18px; }
.ir-interpretation p:last-child { margin:0; }
.ir-activity { margin:24px 0; max-width:800px; }
.ir-activity figcaption { font-size:17px; color:#b9b3c1; }
.ir-activity table { width:100%; border-collapse:collapse; margin-top:12px; font:12px/1.5 'JetBrains Mono',monospace; }
.ir-activity th { text-align:left; font-weight:500; padding:12px; }
.ir-activity td { position:relative; padding:12px; width:75%; border-bottom:1px solid var(--border); }
.ir-activity td>span:last-child { position:relative; z-index:1; color:#fff; text-shadow:0 1px 3px #000; }
.ir-bar { position:absolute; top:4px; bottom:4px; left:0; width:var(--bar-width); background:#813c4c; border-radius:2px; }
.ir-analysis { max-width:860px; margin:35px 0; }
.ir-questions { padding-left:24px; max-width:850px; }
.ir-questions li { margin-bottom:12px; }
.ir-media-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px; }
.ir-media-card { min-width:0; background:var(--bg-card); border:1px solid var(--border); border-radius:7px; padding:24px; }
.ir-media-card p { font-size:18px; }
.ir-media-card .ir-kicker { font-size:11px; }
.ir-media-links { display:flex; flex-wrap:wrap; gap:8px 18px; font-size:17px; }
.ir-media-links a { display:inline-flex; min-height:44px; align-items:center; }
.ir-load-media { display:block; margin:16px 0 0; }
.ir-media-slot iframe { display:block; border:1px solid var(--border); width:100%; aspect-ratio:16/9; margin-top:20px; background:#111; }
.ir-media-slot iframe[data-media-type="replay"] { min-height:520px; aspect-ratio:auto; }
.ir-media-card .ir-media-status { font-size:15px; color:#bab2c3; margin:12px 0 0; }
.ir-sources { padding-left:25px; max-width:960px; }
.ir-sources li { padding:15px 0; border-bottom:1px solid var(--border); }
.ir-sources p { font-size:17px; color:#b9b3c1; margin:5px 0 0; }
.ir-end { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; margin-top:40px; font-size:11px; }
@media(max-width:760px) { .incident-report { padding-inline:18px; } .ir-overview,.ir-media-grid { grid-template-columns:1fr; } .ir-track::before { left:7px; } .ir-event,.ir-event--right { width:100%; margin:0; padding:0 0 22px 30px; } .ir-event::after,.ir-event--right::after { left:2px; right:auto; } .ir-card { padding:19px; } .ir-boundaries { grid-template-columns:1fr; gap:10px; } .ir-boundaries li:not(:last-child)::after { content:'↓'; right:20px; top:auto; bottom:-14px; } .ir-hero { padding-top:30px; } .ir-deck { font-size:22px; } }
@media print { .ir-tools,.ir-load-media,.ir-nav,.ir-phase-nav,.ir-media-slot,.ir-permalink { display:none !important; } .incident-report { color:#111; font-size:12pt; max-width:none; } .incident-report a { color:#333; } .ir-event,.ir-event--right { width:100%; margin:0; padding:0 0 12px; break-inside:avoid; } .ir-track::before,.ir-event::after { display:none; } .ir-card,.ir-summary-card,.ir-phase>header,.ir-media-card { background:#fff; color:#111; } }
