:root{--bg:#f5f6f4;--panel:#fff;--line:#d5d9d3;--ink:#202421;--muted:#626a64;--accent:#2f6f9f;--soft:#eef4f8;--attack:#f28e2b;--mono:"Cascadia Mono",Consolas,monospace;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;scroll-behavior:smooth}
body{margin:0;min-width:0;background:var(--bg);line-height:1.5}
.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--accent);color:#fff;padding:.7rem 1rem;z-index:100;border-radius:4px}.skip-link:focus{top:1rem}
.report-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(250px,360px) minmax(0,1fr);gap:1.25rem;align-items:center;padding:.8rem clamp(1rem,3vw,2.5rem);border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);box-shadow:0 2px 8px rgba(32,36,33,.08)}
.nav-block,.title-block{min-width:0}.nav-block label,.eyebrow{display:block;margin:0 0 .25rem;color:var(--muted);font:600 .78rem var(--sans)}
select{width:100%;max-width:100%;min-height:42px;border:1px solid #aeb5ae;border-radius:5px;background:#fff;color:var(--ink);padding:.5rem .6rem;font:600 .9rem var(--sans)}
select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.title-block h1{margin:0;max-width:40ch;font-size:clamp(1.3rem,2.2vw,2rem);line-height:1.15;letter-spacing:-.015em;overflow-wrap:anywhere}
main{width:min(100%,1540px);margin:auto;padding:clamp(1rem,3vw,2.5rem)}section{margin-bottom:clamp(2rem,4vw,4rem)}
h2{font-size:clamp(1.3rem,2.1vw,1.8rem);line-height:1.25;margin:0 0 .8rem;padding-bottom:.45rem;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
h3{font-size:1.05rem;line-height:1.3;margin:1.6rem 0 .7rem;color:#304039}
.report-intro{padding:clamp(1.1rem,3vw,2rem);background:#fff;border:1px solid var(--line);border-radius:7px}.report-intro p:last-child{margin-bottom:0}
.lede{max-width:62ch;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.35;margin:0 0 .65rem;color:#26372f}.section-lead{max-width:82ch;color:var(--muted);margin:.2rem 0 1rem}
.space-note{border-left:4px solid var(--accent);padding:.8rem 1rem;background:var(--soft);color:#334b5b;line-height:1.55;margin:1rem 0;overflow-wrap:anywhere}
.encoder-section{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:clamp(1rem,2.5vw,2rem);min-width:0}
.table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
table{width:100%;border-collapse:collapse;background:#fff;font-size:.84rem}caption{text-align:left;padding:.7rem .75rem;color:#305f7e;font-weight:700;background:#f8fafb}
th,td{padding:.62rem .7rem;border-bottom:1px solid #e0e3df;text-align:left;vertical-align:top}thead th{position:sticky;top:0;background:#e9ece8;color:var(--ink);font-size:.76rem;font-weight:700}tbody tr:nth-child(even){background:#fafbfa}
.plot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.plot-grid figure{margin:0;border:1px solid var(--line);border-radius:7px;background:#fff;min-width:0;overflow:hidden}.plot-grid img{display:block;width:100%;height:auto;background:#fff}.plot-grid figcaption{padding:.75rem .85rem;border-top:1px solid var(--line);font-size:.84rem;font-weight:700;color:#4e5851}
.cohort{scroll-margin-top:7rem}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:1rem}.cohort-baseline .image-grid{grid-template-columns:minmax(280px,520px)}
.image-card{min-width:0;border:1px solid var(--line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 1px 3px rgba(32,36,33,.07)}.image-link img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#eef0ed}
.card-copy{padding:1rem;min-width:0}.card-head{display:flex;justify-content:space-between;gap:.7rem;align-items:start}.card-head h3{margin:0;color:var(--ink);font-size:.9rem;overflow-wrap:anywhere;text-align:right}
.group-label{display:inline-block;border:1px solid #cfd5cf;border-radius:999px;background:#f0f2ef;padding:.25rem .5rem;font-size:.72rem;font-weight:700;color:#48514b}
.provenance{display:flex;flex-wrap:wrap;gap:.35rem;margin:.75rem 0}.provenance span{border:1px solid var(--line);border-radius:4px;background:#f8f9f7;padding:.3rem .4rem;font:600 .7rem var(--mono)}
.attack-strip{padding:.7rem;border-left:4px solid var(--attack);background:#fff4e8;color:#5f3b14;overflow-wrap:anywhere}
.caption-block,.diff-block,details{margin-top:.8rem;border-top:1px solid var(--line);padding-top:.75rem;min-width:0}.caption-block{padding:.75rem;background:var(--soft);border:1px solid #d9e6ee;border-radius:5px}
.caption-block p,dd{line-height:1.55;overflow-wrap:anywhere}.caption-block p{margin:.35rem 0 0}.diff-block div{margin:.35rem 0;color:var(--muted);overflow-wrap:anywhere}
.caption-role{display:block;margin-top:.25rem;color:#365d77;font-size:.74rem;font-weight:700}.warning{border-left:4px solid #b46713;padding:.8rem 1rem;background:#fff4e8;color:#5f3b14}.warning-row{background:#fff0e5!important;color:#6a3510;font-weight:600}
.caption-metric{margin-top:.5rem;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.inline-diff{margin-top:.55rem;padding:.6rem;border:1px solid #e1e4df;border-radius:4px;background:#fafaf8;line-height:1.65;overflow-wrap:anywhere}.inline-diff span{padding:.08rem .14rem;border-radius:2px}.added{background:#ccebd2;color:#214e2a}.removed{background:#f6caca;color:#6f2424;text-decoration:line-through}.same{color:#666}
summary{cursor:pointer;color:#2b648a;min-height:44px;padding:.6rem 0;font-weight:700}dl{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:.45rem}dt{font:700 .7rem var(--mono);color:var(--muted)}dd{margin:0}.compact{margin-top:.8rem}
.distance-panel{background:var(--soft);border-color:#cbdde8}.distance-panel table,.distance-panel caption{background:var(--soft)}
.attack-summary{margin:1rem 0 0;padding:1rem 1rem 1rem 2rem;border:1px solid #eed5ba;border-radius:6px;background:#fff8f0;columns:2}
code{font-family:var(--mono);color:#245f85;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:1.25rem clamp(1rem,3vw,2.5rem);color:var(--muted);font-size:.78rem;background:#fff;overflow-wrap:anywhere}
@media(max-width:850px){.report-header{position:static;grid-template-columns:minmax(0,1fr)}.plot-grid,.image-grid,.cohort-baseline .image-grid{grid-template-columns:minmax(0,1fr)}main{padding:1rem}.encoder-section{padding:1rem}.attack-summary{columns:1}dl{grid-template-columns:minmax(0,1fr)}.table-wrap{width:100%}}
@media(max-width:760px){table.caption-comparison thead{display:none}table.caption-comparison,table.caption-comparison tbody,table.caption-comparison tr,table.caption-comparison td{display:block;width:100%}table.caption-comparison tr{margin:.8rem 0;border:1px solid var(--line);border-radius:6px}table.caption-comparison td::before{content:attr(data-label);display:block;font-weight:700;color:var(--muted)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
