/* Load AFTER style.css. No global palette changes; site shell stays intact. */
.byte-page{--byte-blue:#0061FF;--byte-cyan:#00D1FF;--byte-navy:#0B1B3B;--byte-light:#E8F4FF;--byte-yellow:#FFC107;--byte-text:#0F172A}
.byte-page .article-hero,.byte-page main{background:#fff;color:var(--byte-text)}
.byte-page .article-hero{padding:54px 0 36px;border-bottom:1px solid var(--byte-light)}
.byte-page .article-hero h1{font-size:clamp(34px,5vw,58px);max-width:900px;color:var(--byte-navy)}
.byte-page .subtitle{max-width:760px;font-size:clamp(19px,2.5vw,24px);color:var(--byte-navy);line-height:1.5}
.byte-series{display:flex;align-items:center;gap:12px;color:var(--byte-navy);font-size:14px;font-weight:700;margin-bottom:20px}
.byte-series .byte-avatar-slot{width:32px;height:32px;flex:0 0 32px}
.byte-avatar-slot{display:block;width:88px;height:88px;flex:0 0 88px}
.byte-avatar{width:100%;height:100%;object-fit:contain}
.byte-page .article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(160px,220px);gap:56px;padding:44px 24px 64px}
.byte-page main>.wrap{max-width:1180px}
.byte-page .article-content{min-width:0;font-size:17px;line-height:1.75}
.byte-page .article-content p,.byte-page .article-content li{color:var(--byte-text)}
.byte-page .article-content h2{font-size:clamp(25px,3.5vw,34px);color:var(--byte-navy);margin:0 0 20px;line-height:1.2}
.byte-page .article-content section{padding:0;margin:0 0 48px}
.byte-page .article-content a{color:var(--byte-blue);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.byte-page .article-content a[aria-label^="Source"]{white-space:nowrap;padding:2px}
.byte-page .article-content ul,.byte-page .article-content ol{padding-left:1.5em}
.byte-page .article-content li{margin-bottom:.5em}
.byte-page .article-sidebar{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;border-left:2px solid var(--byte-light);padding-left:20px;font-size:14px}
.byte-page .article-sidebar a{display:block;color:var(--byte-navy);margin-bottom:14px;text-decoration:underline;text-underline-offset:3px}
.byte-page .article-sidebar .spec{color:var(--byte-navy);margin-bottom:18px}
.byte-page [id]{scroll-margin-top:100px}
.byte-page #brief,.byte-page #takeaways{background:var(--byte-light);padding:24px;border-radius:12px}
.byte-callout{margin:28px 0;padding:24px;border:1px solid var(--byte-blue);border-left:4px solid var(--byte-blue);border-radius:12px;background:var(--byte-light)}
.byte-callout .byte-label{font-size:15px;font-weight:700;color:var(--byte-navy);margin:0 0 18px}
.byte-reality-check .byte-label::after{content:"";display:inline-block;background:var(--byte-yellow);width:18px;height:3px;margin-left:10px;vertical-align:middle}
.byte-question{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.byte-speech{position:relative;flex:1;margin:0;padding:16px 18px;border:2px solid var(--byte-blue);border-radius:14px;background:white;color:var(--byte-navy);font-weight:600;line-height:1.5}
.byte-speech::before{content:"";position:absolute;left:-8px;top:26px;width:12px;height:12px;background:inherit;border-left:2px solid var(--byte-blue);border-bottom:2px solid var(--byte-blue);transform:rotate(45deg)}
.byte-analogy{background:#fff}.byte-analogy .byte-speech{background:var(--byte-light);border-color:var(--byte-cyan)}
.byte-analogy .byte-speech::before{border-color:var(--byte-cyan)}
.byte-try-it .byte-label{color:var(--byte-blue)}
.byte-callout>p:last-child{margin-bottom:0}
.article-table-scroll{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid var(--byte-blue);border-radius:8px;overscroll-behavior-x:contain}
.article-table{width:100%;border-collapse:collapse;background:#fff;font-size:15px;line-height:1.5;min-width:430px}
.article-table th,.article-table td{padding:14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--byte-light);overflow-wrap:anywhere}
.article-table th{color:var(--byte-navy);font-weight:700;background:var(--byte-light)}
.article-table tbody th{background:#fff;font-weight:600}
.article-table tr:last-child td,.article-table tr:last-child th{border-bottom:0}
.instructional-figure{margin:28px 0;padding:18px;border:1px solid var(--byte-blue);border-radius:10px;background:#fff;color:var(--byte-navy)}
.instructional-figure figcaption{font-size:14px;line-height:1.5;margin-top:14px;color:var(--byte-navy)}
.diagram-lane{background:var(--byte-light);padding:16px;border-radius:8px;margin-bottom:16px}
.diagram-lane.inference{background:white;border:1px solid var(--byte-blue)}
.diagram-title{font-size:15px;font-weight:700;margin-bottom:12px;display:block}
.diagram-flow{display:grid;grid-template-columns:1fr 24px 1fr 24px 1fr;gap:6px;align-items:center}
.diagram-node{padding:12px;border:1px solid var(--byte-blue);border-radius:8px;background:white;font-size:13px;line-height:1.45;min-width:0}
.diagram-node strong{display:block}.diagram-node small{display:block;margin-top:6px;font-size:12px}
.diagram-arrow{color:var(--byte-navy);text-align:center;font-size:22px;background:var(--byte-cyan);line-height:1;border-radius:8px}
.diagram-check{margin-top:12px;padding:12px;border:2px dashed var(--byte-blue);font-size:13px;background:white}
.scene-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.scene-card{border:1px solid var(--byte-blue);border-radius:8px;padding:10px;background:#fff;font-size:13px;text-align:center}
.scene-card svg{display:block;width:100%;max-height:120px;margin:6px auto}
.scene-card strong{display:block}.scene-card.changed{border-top:5px solid var(--byte-yellow)}
.byte-page :focus-visible{outline:3px solid var(--byte-blue);outline-offset:4px}
.byte-page .site-header :focus-visible,.byte-page .site-footer :focus-visible{outline-color:var(--byte-cyan)}
.skip-link{position:absolute;left:16px;top:-100px;background:white;color:#0B1B3B;padding:12px;z-index:100}.skip-link:focus{top:12px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* Local fixes for inherited shell geometry; no edits to shared style.css. */
.byte-page .nav-inner{padding:16px 24px;gap:20px}
.byte-page .nav-links{gap:20px}.byte-page .nav-toggle{min-width:44px;min-height:44px}
@media(max-width:980px){.byte-page .article-layout{grid-template-columns:minmax(0,1fr);gap:24px;max-width:800px}.byte-page .article-sidebar{position:static;max-height:none;order:-1;border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}.byte-page .article-sidebar a{margin:0;font-size:13px}.byte-page .article-sidebar .spec{width:100%;margin:0}.byte-page .nav-links{gap:12px;font-size:13px}}
@media(max-width:600px){.byte-page .article-hero{padding:32px 0 24px}.byte-page .article-layout{padding:28px 16px 40px}.byte-page .article-content{font-size:16px}.byte-page .article-content section{margin-bottom:36px}.byte-callout{padding:16px}.byte-question{gap:12px;align-items:flex-start}.byte-avatar-slot{width:64px;height:72px;flex-basis:64px}.byte-speech{padding:12px;font-size:15px}.diagram-flow{grid-template-columns:1fr}.diagram-arrow{justify-self:center;transform:rotate(90deg);margin:5px}.scene-grid{grid-template-columns:1fr}.instructional-figure{padding:12px}.byte-page .brand{font-size:16px}.byte-page .nav-inner{padding:12px 16px}.byte-page .footer-grid{gap:24px}.article-table{font-size:14px}.article-table th,.article-table td{padding:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.site-footer,.article-sidebar,.skip-link{display:none!important}.byte-page .article-layout{display:block;padding:0}.byte-page .article-hero{padding:0}.byte-callout,.instructional-figure{break-inside:avoid}.article-table-scroll{overflow:visible}.article-table{min-width:0}.byte-page main{color:#000}}
.training-samples{display:grid;grid-template-columns:1fr 1fr;gap:4px}.training-samples svg{width:100%}.training-samples span{font-size:11px;display:block;text-align:center}.diagram-note{font-size:13px;margin:12px 0}.diagram-title:not(:first-child){margin-top:18px}
.diagram-node svg{width:100%;height:auto;display:block}

/* Fit simple mapping tables without horizontal scrolling on narrow screens. */
@media(max-width:600px){.article-table--two-column{min-width:0;table-layout:fixed}.article-table--two-column th:first-child{width:44%}}

.byte-page .article-publication{color:var(--byte-navy);font-size:14px;margin:18px 0 0}
