
.agent-note{margin:0 0 28px;padding:16px 20px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-left:4px solid var(--amber);border-radius:10px;background:color-mix(in srgb,var(--amber) 7%,transparent)}.agent-note p{margin:0;color:var(--ink-2)}.agent-note strong{color:var(--ink)}.agent-note a{color:var(--amber)}
.article-video.wide-video video{width:100%;max-width:100%;aspect-ratio:16/9}
.film-gallery{display:grid;gap:28px;margin:24px 0 36px}.film-row{display:grid;gap:20px;align-items:start}
.film-row.film-portrait{grid-template-columns:repeat(3,minmax(0,1fr))}.film-row.film-landscape{grid-template-columns:repeat(2,minmax(0,1fr))}.film-row.film-feature{grid-template-columns:1fr}.film-card.film-feature video{aspect-ratio:16/9}
.film-card{margin:0;min-width:0}.film-card video{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px;background:#0b1020}
.film-card.film-portrait video{aspect-ratio:4/5}.film-card.film-landscape video{aspect-ratio:16/9}
.film-card figcaption{margin:10px 2px 0;text-align:left;font-size:13px;line-height:1.5;color:var(--ink-3)}
.film-card figcaption strong{display:block;font-size:15px;color:var(--ink)}.film-card figcaption a{color:inherit;text-decoration-color:var(--amber)}
@media(max-width:700px){.film-row.film-portrait{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:72%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;overscroll-behavior-x:contain}.film-row.film-portrait .film-card{scroll-snap-align:start}.film-row.film-landscape{grid-template-columns:1fr}}
.code-block{margin:20px 0 28px;padding:16px 18px;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg-2);color:var(--ink);font-size:13.5px;line-height:1.55;tab-size:2}
.code-block code,.article-body p code,.article-body li code,.article-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}
.article-body p code,.article-body li code{padding:1px 5px;border:1px solid var(--line);border-radius:5px;background:var(--bg-2);overflow-wrap:anywhere}
.article-table{margin:24px 0 32px;overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.article-table table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.55}
.article-table th,.article-table td{padding:12px 16px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}
.article-table thead th{border-top:0;background:var(--bg-2);color:var(--ink-3);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding-top:10px;padding-bottom:10px}
.article-table tbody th{color:var(--ink);font-weight:600;width:1%;white-space:nowrap;padding-right:24px}
.article-table td{color:var(--ink-2)}
.article-table code{padding:1px 6px;border:1px solid var(--line);border-radius:5px;background:var(--bg-2);white-space:nowrap;font-size:.86em}
.article-table tbody th code{color:var(--ink);border-color:color-mix(in srgb,var(--amber) 35%,var(--line))}
@media(max-width:700px){.article-table{border-radius:10px}.article-table table{font-size:14px}.article-table th,.article-table td{padding:10px 12px}.article-table tbody th{white-space:normal;width:auto;min-width:7.5em;padding-right:12px}}
.article-body h3{margin:28px 0 8px;font-size:18px;line-height:1.4;color:var(--ink)}
/* House style for section titles (matches the AI workspace essay): numbered, Rozha One. Numbers come from CSS so the narrated text is unchanged. */
.article-body{counter-reset:section}.article-body h2{counter-increment:section;font-family:"Rozha One",Georgia,serif;font-weight:400;font-size:clamp(1.55rem,4vw,2rem);line-height:1.2;letter-spacing:0}.article-body h2::before{content:counter(section) ". "}
.pipeline-figure svg{display:block;width:100%;height:auto;margin:8px 0 0;font-size:13px}
.pipe-box rect{fill:none;stroke:var(--line);stroke-width:1.25}.pipe-main rect{fill:color-mix(in srgb,var(--amber) 14%,transparent);stroke:var(--amber);stroke-width:2}
.pipe-name{fill:var(--ink);font-weight:600;text-anchor:middle}.pipe-line{fill:var(--ink-3);font-size:11.5px;text-anchor:middle}
.pipe-links path{fill:none;stroke:var(--ink-3);stroke-width:1.25}.pipe-arrowhead{fill:var(--ink-3)}
.pipeline-figure figcaption{text-align:center}
.article-footer a{color:var(--amber)}
@media print{.article-topbar,.article-tools,.reading-progress{display:none}.code-block{white-space:pre-wrap}}
