.project-story{padding-top:25px;scroll-margin-top:110px}.story-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:end;margin-bottom:40px}.story-heading h2,.story-related>h2{font-size:clamp(32px,3.5vw,48px);font-weight:500;letter-spacing:-1.6px;line-height:1.12;margin:20px 0 0}.story-heading h2 em,.story-related h2 em{font-family:Georgia,serif;font-weight:400}.story-heading-note{max-width:360px;justify-self:end}.story-heading-note p{font-size:13px;line-height:1.85;color:var(--muted);margin-bottom:17px}.story-view-toggle{font:inherit;font-size:12px;min-height:44px;padding:0;border:0;background:none;color:var(--brand);cursor:pointer}.story-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:var(--surface);scroll-margin-top:110px}.story-chapters a{display:flex;align-items:center;gap:15px;padding:22px;min-width:0;border-right:1px solid var(--line);color:var(--text);transition:background .15s,color .15s}.story-chapters a:last-child{border:0}.story-chapters a>span{font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted)}.story-chapters strong{font-size:12px;font-weight:500;line-height:1.5}.story-chapters [aria-current=step]{background:var(--action-bg);color:var(--action-text)}.story-chapters [aria-current=step]>span{color:inherit;opacity:.85}.story-reading-position{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;margin:20px 0 25px}.story-reading-position progress{grid-column:1/-1;width:100%;height:3px;appearance:none;border:0;background:var(--line);color:var(--brand)}.story-reading-position progress::-webkit-progress-bar{background:var(--line)}.story-reading-position progress::-webkit-progress-value{background:var(--brand)}.story-reading-position progress::-moz-progress-bar{background:var(--brand)}.story-reading-position>p{margin:0;font-size:10px;letter-spacing:.3px;color:var(--muted)}.story-reading-position>button{background:none;border:0;font:inherit;font-size:11px;color:var(--brand);display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.story-reading-position .icon{width:13px;height:13px}.story-panel{padding:42px;background:var(--surface);border:1px solid var(--line);margin-bottom:20px;scroll-margin-top:110px;min-width:0}.story-panel[hidden],[data-story-file][hidden],[hidden].story-paging,[hidden].story-reading-position,.story-view-toggle[hidden],.story-files-empty[hidden]{display:none!important}.story-panel-kicker{font-size:10px;letter-spacing:1px;color:var(--brand);margin-bottom:25px}.story-panel>h3{font-size:clamp(27px,2.8vw,37px);line-height:1.2;font-weight:500;letter-spacing:-.8px;margin:0 0 25px;color:var(--ink)}.story-panel>p{font-size:15px;line-height:1.95;max-width:820px;color:var(--text)}.story-facts{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding-top:30px;margin-top:32px;border-top:1px solid var(--line)}.story-facts>div{min-width:0}.story-facts span{display:block;font-size:10px;color:var(--muted);margin-bottom:12px}.story-facts strong{font-weight:500;font-size:13px;line-height:1.7}.story-current-work{display:flex;align-items:center;gap:20px;background:var(--soft);padding:20px;margin-top:25px}.story-current-work p{font-size:12px;line-height:1.8;margin:0}.story-methods{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.story-methods li{display:flex;gap:20px;align-items:flex-start;border-top:1px solid var(--line);padding:25px 0}.story-methods li>span{font-size:11px;color:var(--brand);padding-top:4px}.story-methods p{font-size:14px;line-height:1.9;margin:0}.story-flow{padding:25px;background:var(--soft);margin:0 0 30px}.story-flow ol{display:flex;flex-wrap:wrap;gap:14px;padding:0;margin:22px 0 0;list-style:none}.story-flow li{flex:1 1 140px;border:1px solid var(--line);padding:15px;background:var(--surface);min-width:0}.story-flow li>span{display:block;font-size:10px;color:var(--muted);margin-bottom:12px}.story-flow strong{font-size:12px;font-weight:500;line-height:1.7}.story-toolkit{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:25px}.story-toolkit>a{padding:9px 12px;border:1px solid var(--line);font-size:10px;color:var(--brand);min-height:36px}.story-preview{margin:28px 0}.story-preview>a{position:relative;display:block;border:1px solid var(--line);background:var(--soft);overflow:hidden}.story-preview img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:var(--soft)}.story-preview>a>span{display:flex;align-items:center;gap:12px;position:absolute;bottom:15px;right:15px;padding:10px 15px;background:var(--surface);border:1px solid var(--line);font-size:11px;color:var(--brand)}.story-preview figcaption{font-size:11px;color:var(--muted);line-height:1.8;margin-top:14px}.story-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 30px;margin-top:30px}.story-result-actions>.text-link{font-size:12px}.story-panel>.story-access-note{font-size:12px;color:var(--muted)}.story-file-controls{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.story-file-controls label{display:block;font-size:11px;font-weight:500}.story-file-controls input{display:block;width:100%;font:inherit;font-size:14px;line-height:1.5;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:3px;margin:12px 0 20px;min-width:0}.story-file-filters{display:flex;gap:8px;flex-wrap:wrap}.story-file-filters>button{background:var(--surface);border:1px solid var(--line);padding:9px 13px;min-height:42px;font:inherit;font-size:11px;color:var(--text);cursor:pointer}.story-file-filters>[aria-pressed=true]{background:var(--action-bg);color:var(--action-text);border-color:var(--action-bg)}.story-file-status{font-size:11px;line-height:1.8;color:var(--muted);margin:20px 0}.story-files>a{display:grid;grid-template-columns:50px 1fr 16px;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);min-width:0;font-size:12px}.story-files>a>span:nth-child(2){overflow-wrap:anywhere;line-height:1.8}.story-files .icon{width:14px;height:14px}.story-file-kind{font-size:9px;padding:7px;background:var(--soft);color:var(--brand);text-align:center}.story-files-empty{padding:25px;background:var(--soft);font-size:13px}.story-files-empty button{font:inherit;font-size:12px;color:var(--brand);border:0;background:none;min-height:44px;cursor:pointer}.story-paging{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:5px 0 28px}.story-paging button{min-height:44px;padding:10px 17px;border:1px solid var(--line);background:var(--surface);color:var(--brand);font:inherit;font-size:12px;cursor:pointer}.story-paging button:disabled{opacity:.4;cursor:default}.story-paging>span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.story-context{display:grid;grid-template-columns:150px 1fr;gap:30px;padding:26px 0;align-items:start}.story-context .eyebrow{font-size:9px;line-height:1.9}.story-context>p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;max-width:900px}.story-source-details{border-top:1px solid var(--line)}.story-source-details .github-source-update{padding:40px 0;border-top:0}.story-related>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:35px}.story-related>div:last-child>a{padding:27px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-width:0}.story-related h3{font-size:23px;line-height:1.3;letter-spacing:-.5px;font-weight:500;margin:20px 0}.story-related .mono{font-size:10px;line-height:1.9}.story-related p{font-size:12px;line-height:1.85;color:var(--muted);margin-bottom:25px}.story-related .text-link{margin-top:auto;font-size:12px}.story-page-head h1{max-width:1000px;overflow-wrap:anywhere}.story-anchor{scroll-margin-top:110px}
@media(max-width:1000px){.story-chapters a{padding:18px;gap:10px}.story-panel{padding:30px}.story-heading{gap:35px}.story-related h3{font-size:20px}.story-related>div:last-child{gap:15px}.story-related>div:last-child>a{padding:22px}}
@media(max-width:720px){.project-story{padding-top:15px}.story-heading{grid-template-columns:1fr;gap:20px;margin-bottom:26px}.story-heading h2{font-size:35px}.story-heading-note{justify-self:start;max-width:none}.story-heading-note p{font-size:13px;margin-bottom:8px}.story-chapters{grid-template-columns:1fr 1fr}.story-chapters a{padding:15px;min-height:66px;gap:12px;border-bottom:1px solid var(--line)}.story-chapters a:nth-child(2){border-right:0}.story-chapters a:nth-child(3){border-bottom:0}.story-chapters strong{font-size:11px}.story-reading-position{gap:8px}.story-reading-position>p{font-size:10px;max-width:160px;line-height:1.8}.story-reading-position>button{font-size:10px;gap:8px}.story-panel{padding:25px}.story-panel>h3{font-size:28px}.story-panel>p{font-size:14px;line-height:1.9}.story-facts{grid-template-columns:1fr;gap:22px;margin-top:25px;padding-top:25px}.story-facts span{margin-bottom:7px}.story-current-work{align-items:flex-start;flex-direction:column;gap:12px}.story-methods{grid-template-columns:1fr}.story-methods li{gap:15px;padding:22px 0}.story-methods p{font-size:13px}.story-flow{padding:20px}.story-flow ol{gap:10px}.story-flow li{flex-basis:100%;display:flex;align-items:center;gap:15px}.story-flow li>span{margin:0}.story-preview>a>span{bottom:10px;right:10px;padding:7px 10px;font-size:10px}.story-result-actions{align-items:flex-start;flex-direction:column;gap:20px}.story-result-actions .button{width:100%;font-size:12px}.story-file-controls input{font-size:16px}.story-file-filters{gap:7px}.story-file-filters>button{font-size:10px;padding:9px 11px}.story-files>a{grid-template-columns:40px 1fr 12px;gap:10px;font-size:11px}.story-paging{gap:8px;flex-wrap:wrap}.story-paging button{padding:10px 12px;font-size:11px}.story-paging>span{font-size:10px}.story-context{grid-template-columns:1fr;gap:12px}.story-related>div:last-child{grid-template-columns:1fr}.story-related h3{font-size:25px}.story-page-head h1{font-size:clamp(35px,9vw,54px)}}
@media(prefers-reduced-motion:reduce){.story-chapters a{transition:none}}
@media print{.story-panel[hidden]{display:block!important}.story-chapters,.story-paging,.story-reading-position,.story-view-toggle,.story-file-controls{display:none!important}.story-panel{break-inside:avoid;padding:20px;margin-top:20px}.story-context{display:block}.story-heading h2,.story-related>h2{font-size:28px}.story-preview img{max-height:300px}.story-related>div:last-child{grid-template-columns:repeat(3,1fr)}[data-story-file][hidden]{display:grid!important}}

.story-report-experience>.wrap{width:100%;margin-left:0;margin-right:0}.story-report-experience .page-section{padding-top:25px;padding-bottom:25px}.story-report-experience .report-preview-section{padding-top:15px}.story-report-experience .report-thumbnails{margin-top:18px}.story-report-experience .report-load-prompt{padding:35px}.story-report-experience .report-embed-shell{margin-top:15px}.story-report-experience .preview-caption{font-size:11px}

/* Preserve the complete source diagrams and their original colors. */
.diagram-preview>img,.report-diagram-image,.report-diagram-thumbnails img{object-fit:contain!important;background:#050811!important}.story-diagram-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:25px}.story-diagram-gallery figure{margin:0;min-width:0}.story-diagram-gallery figure>a{display:block;border:1px solid var(--line);background:var(--surface)}.story-diagram-gallery img{display:block;width:100%;height:auto;object-fit:contain;background:#050811}.story-diagram-gallery figure>a>span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px;font-size:12px;line-height:1.6}.story-diagram-gallery figcaption{font-size:11px;line-height:1.8;margin-top:12px;color:var(--muted)}.story-diagram-gallery figcaption .text-link,.story-preview figcaption .text-link{font-size:11px}.story-diagram-gallery figcaption .icon{width:12px;height:12px}.report-diagram-thumbnails>a{min-width:0}.report-diagram-thumbnails img{height:auto;aspect-ratio:1.6}.preview-caption>.text-link{font-size:11px;margin-top:8px;margin-right:12px}@media(max-width:720px){.story-diagram-gallery{grid-template-columns:1fr;gap:25px}}
