.expectations-viz{--ev-ink:#2f3034;--ev-muted:#56585c;--ev-line:#cbd6e0;--ev-wash:#e7f3fe;color:var(--ev-ink);margin-block:30px;font-family:var(--sans,Arial,sans-serif)}
.expectations-viz *{box-sizing:border-box}
.expectations-viz h3{font:400 clamp(24px,2.4vw,30px)/1.25 var(--serif,Georgia,serif);margin:0 0 12px}
.expectations-viz p{font:400 14px/1.65 var(--sans,Arial,sans-serif);margin:10px 0}
.expectations-viz .ev-intro{font-size:16px}
.expectations-viz .ev-controls{display:flex;flex-wrap:wrap;gap:15px;align-items:center;padding:14px 16px;background:var(--ev-wash);border-block:1px solid var(--ev-line);font-size:14px}
.expectations-viz [hidden]{display:none!important}
.expectations-viz label{display:inline-flex;gap:10px;align-items:center;min-height:28px;cursor:pointer}
.expectations-viz input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--ev-ink)}
.expectations-viz figure{margin:0;padding:0;border-bottom:1px solid var(--ev-line)}
.expectations-viz .ev-figure{width:100%;min-width:0;background:white}
.expectations-viz .ev-figure svg,.expectations-viz .ev-figure img{display:block;width:100%;height:auto;max-width:100%}
.expectations-viz figcaption{font-size:13px;line-height:1.6;color:var(--ev-muted);padding:12px 0}
.expectations-viz .ev-downloads{display:flex;flex-wrap:wrap;gap:13px 20px;margin-block:16px;font-size:14px;align-items:center}
.expectations-viz .ev-downloads a,.expectations-viz .ev-downloads button{color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px}
.expectations-viz .ev-downloads button{border:0;background:none;padding:6px 0;cursor:pointer}
.expectations-viz button:disabled{cursor:wait;opacity:.65}
.expectations-viz :is(a,button,input,summary):focus-visible{outline:2px solid #1d5fb0;outline-offset:4px}
.expectations-viz details{margin-top:18px;border-block:1px solid var(--ev-line);padding:14px 0;font-size:14px}
.expectations-viz summary{cursor:pointer;font-weight:500;line-height:1.5}
.expectations-viz .ev-table-wrap{max-width:100%;overflow-x:auto;margin-top:15px;overscroll-behavior-x:contain}
.expectations-viz table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.5;text-align:left}
.expectations-viz caption{text-align:left;padding:0 0 10px;color:var(--ev-muted)}
.expectations-viz th,.expectations-viz td{padding:12px 9px;border-bottom:1px solid var(--ev-line);vertical-align:top}
.expectations-viz thead th{background:var(--ev-wash);font-weight:500;white-space:nowrap}
.expectations-viz tbody th{font-weight:500;min-width:145px}
.expectations-viz td{font-variant-numeric:tabular-nums}
.expectations-viz code{font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
.expectations-viz .ev-source{color:var(--ev-muted)}
.expectations-viz .ev-status{min-height:1.7em;color:var(--ev-muted);font-size:13px}
@media(max-width:600px){.expectations-viz{margin-block:24px}.expectations-viz .ev-controls{padding:12px;font-size:14px}.expectations-viz h3{font-size:25px}.expectations-viz .ev-intro{font-size:15px}.expectations-viz table{font-size:12px}.expectations-viz th,.expectations-viz td{padding:10px 7px}.expectations-viz .ev-downloads{gap:8px 17px}}
@media(prefers-reduced-motion:reduce){.expectations-viz *{scroll-behavior:auto}}
