:root{color-scheme:light;--ink:#29343e;--paper:#fcfbf8;--accent:#355f7a;--muted:#596872;--line:#d7dde1;--soft:#eef1f3;--surface:#ffffff;--accent-soft:#e3ecf2;--feature:#e9eff3;--sans:"Segoe UI","Microsoft YaHei",Arial,sans-serif;--mono:"Cascadia Code",Consolas,monospace;--ease:cubic-bezier(.22,.75,.25,1)}
.prompt-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:2rem;margin:2rem 0 0;border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface);border-radius:.35rem}.prompt-entry h3{font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:500;line-height:1.4;margin:.7rem 0}.prompt-entry p{color:var(--muted);line-height:1.85;margin:.6rem 0 0;max-width:47rem}.prompt-entry-actions{display:flex;align-items:flex-start;flex-direction:column;gap:1rem}.prompt-entry-actions>div{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:var(--accent)}.prompt-entry-actions>span{font-size:.8125rem;color:var(--muted)}.prompt-entry .button{text-decoration:none;white-space:normal}.prompt-entry-actions{min-width:0}@media(max-width:820px){.prompt-entry{grid-template-columns:1fr;padding:1.3rem;gap:1.3rem}.prompt-entry p{font-size:1rem}.prompt-entry-actions{gap:.85rem}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.65}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer}a{color:inherit;text-underline-offset:.3em;text-decoration-thickness:1px}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button:active,.button:active{transform:translateY(2px)}::selection{background:var(--accent-soft);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:1rem;left:1rem;z-index:100;background:var(--accent);color:#fff;padding:.75rem 1.2rem;transform:translateY(-180%)}.skip:focus{transform:none}
.site-header,main,footer{max-width:100rem;margin:auto}.site-header{min-height:5.5rem;padding:1.4rem 3.75rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:.6rem;font-family:var(--mono);font-size:.875rem;font-weight:600;text-decoration:none;letter-spacing:.03em}.logo-dot{height:.5rem;width:.5rem;background:var(--accent);display:inline-block;border-radius:50%}.site-header nav{display:flex;gap:2.2rem}.site-header nav a{font-size:.875rem;text-decoration:none;position:relative}.site-header nav span{color:var(--muted);margin-left:.4rem}.site-header nav a:after,.text-link:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-.2rem;background:var(--accent);transition:right .25s var(--ease)}.site-header nav a:hover:after,.text-link:hover:after{right:0}.github-nav{font-family:var(--mono);font-size:.875rem;text-decoration:none;border:1px solid #b2bec7;padding:.4rem 1rem;border-radius:2rem;transition:background .2s,color .2s}.github-nav:hover{background:var(--accent-soft);color:var(--accent)}
.intro{padding:2.2rem 3.75rem 2rem}.edition{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.8125rem;letter-spacing:.1em;color:var(--muted)}h1{font-size:clamp(3rem,7vw,6.75rem);font-weight:750;line-height:1.12;letter-spacing:-.07em;margin:.8rem 0 .65rem;white-space:normal;text-wrap:balance}.identity-period{color:var(--accent);padding-left:.04em}.intro-bottom{display:flex;justify-content:space-between;align-items:center;gap:2rem}.intro-bottom p{margin:0;font-size:1.0625rem}.index-label{font-family:var(--mono);font-size:.8125rem;letter-spacing:.05em;color:var(--muted)}
.work-section{padding:0 3.75rem 5rem}.feature{background:var(--feature);color:var(--ink);border:1px solid #d6e0e7;display:grid;grid-template-columns:minmax(17rem,.8fr) minmax(0,1.65fr);padding:2.3rem;gap:2.5rem;position:relative;overflow:hidden}.feature-copy{display:flex;flex-direction:column;align-items:flex-start}.eyebrow{display:flex;gap:1rem;flex-wrap:wrap;font-size:.75rem;line-height:1.5;letter-spacing:.06em;font-family:var(--mono)}.feature-copy .eyebrow{justify-content:space-between;width:100%}.feature-copy h3{font-size:clamp(3.5rem,5vw,5.3rem);letter-spacing:-.05em;line-height:1;margin:1.5rem 0 1.2rem}.feature-title{font-size:1.5rem;line-height:1.45;letter-spacing:-.02em;font-weight:650;margin:0 0 1rem}.feature-desc{font-size:1rem;line-height:1.75;max-width:27rem;margin:0 0 1.5rem}.feature-actions{display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:3rem;padding:.65rem 1.1rem;text-decoration:none;border:0;border-radius:.1rem;font-size:.9375rem;font-weight:600;transition:transform .18s var(--ease),background .2s}.primary{background:var(--accent);color:#fff}.primary:hover{background:#284c64}.feature button:focus-visible,.feature a:focus-visible{outline-color:var(--ink)}.text-link{font-size:.9375rem;position:relative;text-decoration:none}.project-footnote{display:flex;flex-direction:column;gap:.25rem;font-family:var(--mono);font-size:.75rem;line-height:1.5;opacity:1;margin-top:auto;padding-top:2rem}.artifact-stage{display:flex;flex-direction:column;justify-content:center;min-width:0;align-self:center}.artifact-top,.artifact-bottom{display:flex;justify-content:space-between;align-items:center;gap:.7rem;font-family:var(--mono);font-size:.75rem;line-height:1.5}.artifact-top{margin-bottom:.9rem}.artifact-tabs{display:flex;border:1px solid #b2c2ce;padding:.2rem;gap:.25rem;flex-shrink:0}.artifact-tabs button{padding:.25rem .65rem;border:0;background:transparent;font-size:.875rem;transition:background .2s,color .2s}.artifact-tabs button[aria-pressed="true"]{background:var(--accent);color:#fff}.artifact-open{border:1px solid #d2dce3;padding:0;background:#ffffff;position:relative;overflow:hidden;box-shadow:0 16px 30px -16px #20384a26;text-align:left;display:block;width:100%;transition:transform .3s var(--ease)}.artifact-open:hover{transform:translateY(-3px)}.artifact-open img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:top;transition:opacity .2s,transform .4s var(--ease)}.artifact-open img.changing{opacity:.25;transform:translateY(.5rem)}.artifact-caption{display:flex;justify-content:space-between;gap:1rem;background:var(--surface);color:var(--ink);border-top:1px solid var(--line);padding:.7rem 1rem;font-size:.875rem;line-height:1.5}.artifact-caption span:last-child{color:var(--muted);font-size:.75rem}.artifact-bottom{margin-top:1rem}.artifact-open.image-error:before{content:"LEVI · 公开仓库界面";display:block;padding:5rem 2rem;font-size:1.5rem}.artifact-open.image-error img{display:none}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin:4.5rem 0 1.6rem}.section-heading h2{font-size:1.5rem;font-weight:500;line-height:1.5;margin:0}.section-heading h2 span{display:block;font-family:var(--mono);font-size:.8125rem;color:var(--muted);font-weight:400;margin-top:.35rem;letter-spacing:.02em}.filters{display:flex;position:relative;padding:.25rem;background:var(--soft);gap:.2rem}.filters button{border:0;background:none;padding:.5rem .9rem;font-size:.875rem;z-index:1;transition:color .2s;min-height:2.5rem}.filters button[aria-pressed="true"]{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.25em}.filter-indicator{position:absolute;background:#d5e3ed;top:.25rem;bottom:.25rem;left:0;transition:transform .28s var(--ease),width .28s var(--ease)}.project-row{display:grid;grid-template-columns:2.5rem minmax(0,1.2fr) minmax(0,1.65fr) auto;align-items:center;gap:1.5rem;padding:2rem 0;border-top:1px solid var(--line);transition:opacity .24s,transform .24s var(--ease)}.project-row[hidden]{display:none}.project-number{font-family:var(--mono);font-size:.875rem;color:var(--muted)}.project-name{font-size:clamp(1.6rem,2.2vw,2.5rem);font-weight:550;line-height:1.2;letter-spacing:-.03em;margin:0}.project-category{font-family:var(--mono);font-size:.75rem;margin-top:.6rem;color:var(--muted)}.project-summary{margin:0;font-size:1rem;color:#4b5963;max-width:35rem}.row-button{font-size:.875rem;min-height:2.75rem;padding:.5rem .85rem;border:1px solid #aab7c1;background:none;white-space:nowrap;transition:background .2s,color .2s}.row-button:hover{color:var(--accent);background:var(--accent-soft)}.project-row:nth-child(2n){--row-accent:#355f7a}.project-row:hover .project-name{color:var(--accent)}
.process-section{padding:3.4rem 3.75rem 4.2rem;background:var(--soft);color:var(--ink)}.process-section .section-heading{margin:0 0 2.8rem}.process-section .section-heading h2{font-size:clamp(1.8rem,3.4vw,3.1rem);letter-spacing:-.04em}.process-section .section-heading h2 span{color:#606c75}.process-section .text-link{flex-shrink:0}.process-section a:focus-visible{outline-color:var(--ink)}.flow-diagram{position:relative}.flow-track{position:absolute;left:0;right:0;top:1.1rem;height:3px;background:#d4dfe6}.flow-track i{display:block;height:100%;width:100%;background:#6e91a8;transform:scaleX(var(--flow-progress,0));transform-origin:left;transition:transform .15s linear}.flow-diagram ol{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;position:relative}.flow-diagram li{display:flex;flex-direction:column;align-items:flex-start}.flow-number{height:2.2rem;min-width:2.2rem;display:grid;place-items:center;background:var(--paper);border:1px solid #b1c0cb;border-radius:50%;font-family:var(--mono);font-size:.8125rem;color:#355f7a}.flow-diagram strong{font-size:1.0625rem;margin-top:1.3rem;line-height:1.5}.flow-diagram li>span:last-child{font-size:.875rem;color:#606c75;margin-top:.45rem}.process-note{font-size:1rem;line-height:1.7;max-width:50rem;margin:2.8rem 0 0;color:#4b5963}
.research-section{padding:0 3.75rem 5rem}.research-section .section-heading{padding-top:1rem}.research-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:4rem}.research-item{padding-top:1.5rem;border-top:1px solid var(--line)}.research-item h3{font-size:clamp(2.1rem,4vw,4rem);line-height:1.1;letter-spacing:-.04em;font-weight:550;margin:.7rem 0 1.1rem}.research-item .research-desc{font-size:1.125rem;line-height:1.7;max-width:38rem;margin:0 0 1.4rem;color:#4b5963}.research-item ul{padding:0;list-style:none;margin:0 0 1.6rem;display:flex;gap:.5rem;flex-wrap:wrap}.research-item li{font-size:.8125rem;padding:.3rem .65rem;background:var(--soft);color:#4b5963}.research-links{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}.research-item .research-limit{font-size:.875rem;color:var(--muted);margin:1.6rem 0 0;line-height:1.65}.research-index{font-family:var(--mono);font-size:.75rem;color:var(--accent)}.research-item:first-child{position:relative}.research-item:first-child:before{content:none;font-size:16rem;position:absolute;right:.4rem;top:.5rem;line-height:1;opacity:.055;pointer-events:none;font-family:Georgia,serif}
.about-section{margin:0 3.75rem;padding:3.5rem 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:4rem}.about-identity{display:flex;align-items:flex-start;gap:1.5rem}.about-identity img{width:6.5rem;height:6.5rem;object-fit:cover;border-radius:.6rem;filter:none}.about-identity h2{font-size:1.5rem;letter-spacing:-.03em;margin:.5rem 0 .3rem}.about-identity a{font-family:var(--mono);font-size:.875rem;color:var(--muted)}.about-copy p{margin:0 0 1rem;color:#4b5963}.about-copy .button{background:var(--accent);color:#fff;margin-top:.7rem}.about-copy .button:hover{background:#284c64}footer{padding:3rem 3.75rem 2rem}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.4rem 0;border-top:1px solid var(--line)}.footer-brand{font-family:var(--mono);font-size:.875rem;letter-spacing:.05em}.footer-top a{font-size:.875rem;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:1.5rem;font-size:.75rem;color:var(--muted);line-height:1.8}.footer-bottom p{margin:.5rem 0}.source-button{border:0;background:none;padding:0;color:var(--ink);font-size:inherit;text-decoration:underline;text-underline-offset:.3em}.noscript{padding:2rem;background:var(--accent-soft);color:var(--ink)}
.project-dialog{color:var(--ink);background:var(--paper);border:1px solid #c9d4dd;margin:auto;width:min(70rem,calc(100% - 3rem));max-height:calc(100dvh - 3rem);padding:0;box-shadow:0 3rem 7rem #20304033}.project-dialog::backdrop{background:#263c4d73;backdrop-filter:blur(8px)}.project-dialog[open]{animation:dialog-in .32s var(--ease)}.dialog-toolbar{position:sticky;top:0;background:var(--paper);padding:1rem 2.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line);z-index:2}.dialog-toolbar>span{font-family:var(--mono);font-size:.75rem;color:var(--accent)}.close-button{background:none;border:1px solid #aab7c1;font-size:.875rem;padding:.4rem .8rem;display:flex;gap:1rem;align-items:center;min-height:2.5rem}.close-button span{font-size:1.4rem;line-height:1}.dialog-story{padding:2.8rem 2.5rem 3rem}.dialog-story h2{font-size:clamp(2.5rem,6vw,5rem);line-height:1.1;letter-spacing:-.045em;margin:.5rem 0 1rem}.dialog-intro{font-size:1.2rem;color:#4b5963;line-height:1.7;max-width:47rem;margin:0 0 1.8rem}.dialog-stack{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 2rem}.dialog-stack span{padding:.3rem .7rem;font-family:var(--mono);font-size:.75rem;background:var(--soft);color:#4b5963}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.3rem 3rem;margin:2.5rem 0}.story-grid section h3{font-size:.875rem;font-family:var(--mono);color:var(--accent);font-weight:500;margin:0 0 .8rem}.story-grid section p{margin:0;line-height:1.8;color:#4b5963}.story-evidence{border-top:1px solid var(--line);padding-top:1.8rem}.story-evidence h3{font-size:1.1rem;font-weight:500}.story-evidence a{color:var(--accent)}.story-evidence ul{padding-left:1.2rem;line-height:1.8}.story-evidence li+li{margin-top:.65rem}.story-boundary{background:var(--soft);padding:1.3rem 1.5rem;margin-top:2rem}.story-boundary h3{margin:0 0 .5rem;font-size:.9375rem;font-weight:550}.story-boundary p{margin:0;color:#4b5963;font-size:.9375rem;line-height:1.8}.story-source{font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-top:2rem;overflow-wrap:anywhere}.source-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.875rem}.source-table th,.source-table td{padding:.9rem .7rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.source-table th{color:var(--muted);font-weight:400}.source-table td code{font-size:.75rem;color:#355f7a}.source-links{font-size:1rem;line-height:1.85}.source-links li{margin-bottom:.7rem}.source-links a{color:var(--accent)}.refresh-controls{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin:2rem 0}.refresh-controls .button{background:var(--accent);color:#fff}.refresh-status{font-size:.875rem;color:var(--muted);flex:1;min-width:15rem}.asset-notice{font-size:.875rem;color:var(--muted);line-height:1.8;margin-top:2rem}
.intro h1{animation:identity-in .5s var(--ease) both}.intro-bottom{animation:identity-in .5s .06s var(--ease) both}.feature{animation:identity-in .5s .1s var(--ease) both}@keyframes identity-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.feature{gap:3rem}.feature-copy h3{margin-top:2rem}.feature-title{font-size:1.8rem}}
@media(max-width:1100px){.site-header,.intro,footer{padding-left:2rem;padding-right:2rem}.work-section,.process-section,.research-section{padding-left:2rem;padding-right:2rem}.about-section{margin-left:2rem;margin-right:2rem}.feature{padding:1.8rem;gap:1.8rem;grid-template-columns:minmax(15rem,.9fr) minmax(0,1.25fr)}.feature-copy .eyebrow span:last-child{display:none}.artifact-top>span{max-width:14rem}.feature-title{font-size:1.25rem}.feature-desc{font-size:.9375rem}.artifact-caption span:last-child{display:none}.project-row{grid-template-columns:2.5rem 1.2fr 1.5fr auto;gap:1rem}.research-grid{gap:2.5rem}.about-section{gap:2rem}.about-identity{gap:1rem}.about-identity img{width:5rem;height:5rem}.flow-diagram strong{font-size:1rem}.flow-diagram li>span:last-child{font-size:.8125rem}}
@media(max-width:820px){html{scroll-padding-top:1rem}.site-header{padding:1.1rem 1.3rem;gap:1rem;flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:.75rem}.site-header nav span{margin-left:.3rem}.github-nav{padding:.25rem .7rem}.intro{padding:1.8rem 1.3rem}.edition{font-size:.75rem;letter-spacing:.035em}h1{font-size:clamp(2.2rem,9vw,4.7rem);letter-spacing:-.065em;line-height:1.18;margin:1rem 0}.intro-bottom{display:block}.intro-bottom p{font-size:1rem}.intro-bottom .index-label{display:block;margin-top:.7rem;font-size:.75rem}.work-section{padding:0 1.3rem 3.2rem}.feature{display:flex;flex-direction:column;padding:1.5rem;gap:1.8rem}.feature-copy .eyebrow span:last-child{display:block}.feature-copy h3{font-size:3.8rem;margin:1.2rem 0 .7rem}.feature-title{font-size:1.5rem}.feature-title br{display:none}.feature-desc{font-size:1rem;max-width:100%}.project-footnote{padding-top:1rem;flex-direction:row;flex-wrap:wrap;gap:.35rem 1rem}.artifact-stage{width:100%}.artifact-top>span{max-width:none}.artifact-top{align-items:flex-start}.artifact-caption{font-size:.8125rem}.artifact-bottom{font-size:.6875rem}.section-heading{margin-top:3rem;gap:1rem;align-items:flex-start;flex-direction:column}.section-heading h2{font-size:1.35rem}.filters{align-self:flex-start}.project-row{grid-template-columns:1.8rem 1fr auto;padding:1.6rem 0;gap:.7rem 1rem}.project-row .project-description{grid-column:2/4;grid-row:2;font-size:.9375rem}.project-name{font-size:1.65rem}.project-category{font-size:.75rem;margin-top:.45rem}.row-button{padding:.5rem .7rem;font-size:.8125rem}.project-number{align-self:start;margin-top:.25rem}.process-section{padding:2.8rem 1.3rem}.process-section .section-heading h2{font-size:1.8rem;line-height:1.4}.process-section .section-heading{margin-bottom:2rem}.flow-diagram ol{display:flex;flex-direction:column;gap:1.7rem}.flow-diagram li{display:grid;grid-template-columns:2.3rem 1fr;gap:0 1rem;align-items:center}.flow-number{grid-row:1/3}.flow-diagram strong{margin-top:0;font-size:1.0625rem}.flow-diagram li>span:last-child{font-size:.875rem}.flow-track{left:1.1rem;top:0;bottom:0;width:2px;height:auto;right:auto}.flow-track i{transform:scaleY(var(--flow-progress,0));transform-origin:top}.process-note{margin-top:2rem}.research-section{padding:0 1.3rem 3rem}.research-grid{grid-template-columns:1fr;gap:2.5rem}.research-item h3{font-size:2.7rem}.research-item .research-desc{font-size:1.0625rem}.research-item .research-limit{font-size:.8755rem}.about-section{margin:0 1.3rem;padding:2.8rem 0;grid-template-columns:1fr;gap:1.5rem}.about-identity img{width:5.5rem;height:5.5rem}.about-identity h2{font-size:1.5rem}footer{padding:1rem 1.3rem 1.5rem}.footer-bottom{flex-direction:column;gap:0}.project-dialog{width:calc(100% - 1.25rem);max-height:calc(100dvh - 1.25rem)}.dialog-toolbar{padding:.9rem 1.3rem}.dialog-story{padding:1.8rem 1.3rem 2rem}.dialog-intro{font-size:1.0625rem}.story-grid{grid-template-columns:1fr;gap:1.8rem;margin:2rem 0}.story-grid section p{font-size:1rem}.source-table thead{display:none}.source-table tbody,.source-table tr,.source-table td{display:block}.source-table tr{padding:.8rem 0;border-bottom:1px solid var(--line)}.source-table td{padding:.25rem 0;border:0}.source-table td:first-child{font-size:1.05rem}.source-table td code{font-size:.8125rem}.story-boundary{padding:1.2rem}.footer-top{gap:1rem}.footer-brand{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.flow-track i{transform:scale(1)!important}.artifact-open:hover{transform:none}}
@media print{body{background:white;color:black}.site-header,.filters,.artifact-tabs,footer,.project-dialog{display:none}.feature{background:#eef3f6}.work-section,.research-section,.process-section,.about-section{break-inside:avoid}.project-summary,.research-desc,.about-copy p{color:#222!important}}

.header-actions{display:flex;align-items:center;gap:1.2rem}.language-toggle{display:flex;gap:.2rem}.language-toggle button{background:transparent;border:0;padding:.35rem .4rem;color:var(--muted);font-size:.875rem;min-height:2.5rem}.language-toggle button[aria-pressed="true"]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.35em}.artifact-meter{height:3px;background:#ccdbe5;overflow:hidden;margin-top:.7rem}.artifact-meter i{display:block;height:100%;width:50%;background:var(--accent);transition:transform .25s var(--ease)}.public-sites-section,.updates-section{padding:0 3.75rem 2rem}.public-sites-section .section-heading{margin-top:0}.site-row{display:grid;grid-template-columns:3rem 1.3fr 1.5fr auto;gap:1.5rem;align-items:center;padding:1.8rem 0;border-top:1px solid var(--line);text-decoration:none;transition:color .2s}.site-row:hover{color:var(--accent)}.site-number{font-family:var(--mono);font-size:.875rem;color:var(--muted)}.site-row strong{font-size:1.5rem;line-height:1.3;font-weight:500}.site-row small{display:block;font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-top:.4rem}.site-action{font-size:.875rem;text-decoration:underline;text-underline-offset:.35em}.updates-section{padding-bottom:3.5rem}.updates-section .section-heading{margin-top:1.7rem}.record-row{display:grid;grid-template-columns:8rem 1fr auto;gap:2rem;padding:1.2rem 0;border-top:1px solid var(--line);text-decoration:none}.record-row time,.record-row code{font-family:var(--mono);font-size:.8125rem;color:var(--muted)}.record-row strong{display:block;font-size:1rem;font-weight:500}.record-row>span>span{font-size:.9375rem;color:var(--muted);display:block;margin-top:.3rem}.record-row:hover strong{color:var(--accent)}.copy-status{font-size:.8125rem;color:var(--accent)}
@media(max-width:1100px){.public-sites-section,.updates-section{padding-left:2rem;padding-right:2rem}.site-row{gap:1rem;grid-template-columns:2rem 1.1fr 1.3fr auto}.site-header nav{gap:1.2rem}.site-header nav span{display:none}}
@media(max-width:820px){.public-sites-section,.updates-section{padding-left:1.3rem;padding-right:1.3rem}.header-actions{gap:.6rem}.site-header nav{flex-wrap:wrap}.site-header nav a{font-size:.875rem}.site-row{grid-template-columns:1.5rem 1fr auto;gap:.5rem .7rem}.site-row strong{font-size:1.4rem}.site-action{font-size:.8125rem}.record-row{grid-template-columns:1fr auto;gap:.7rem}.record-row>span{grid-column:1/3;grid-row:2}.record-row time{grid-column:1}.record-row code{grid-column:2}.public-sites-section .section-heading{margin-top:.5rem}.updates-section{padding-bottom:2.5rem}}

.project-row>* ,.site-row>* ,.about-section>* ,.about-identity>* ,.artifact-stage{min-width:0}.project-category,.site-row small,.index-label,.project-footnote,.edition{overflow-wrap:anywhere}.edition,.footer-top{flex-wrap:wrap}.dialog-story h2{overflow-wrap:anywhere}.site-header nav a{white-space:normal}
@media(max-width:820px){.feature{gap:1rem}.feature-copy{display:contents}.feature-copy>.eyebrow{order:0}.feature-copy>h3{order:1;margin:0}.feature-title{order:2;margin:0}.feature-actions{order:3}.artifact-stage{order:4}.feature-desc{order:5;margin:0}.project-footnote{order:6;padding-top:.3rem}.artifact-top{flex-wrap:wrap}.artifact-top>span{overflow-wrap:anywhere}.about-identity{flex-wrap:wrap}.research-item h3{font-size:clamp(2rem,9vw,2.7rem)}}
@media(max-width:500px){.project-row{grid-template-columns:1.8rem minmax(0,1fr);gap:.6rem 1rem}.project-row .project-description{grid-column:2;grid-row:2}.project-row .project-actions{grid-column:2;grid-row:3;justify-self:start;white-space:normal}.site-row{grid-template-columns:1.5rem minmax(0,1fr);gap:.5rem .7rem}.site-action{grid-column:2}.site-row strong{overflow-wrap:anywhere}.research-section .index-label,.public-sites-section .index-label{font-size:.75rem}.record-row{grid-template-columns:minmax(0,1fr);gap:.7rem}.record-row time,.record-row>span,.record-row code{grid-column:1;grid-row:auto}.record-row code{overflow-wrap:anywhere}.footer-top a{max-width:100%}}

.skip{clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden;transform:none}.skip:focus-visible{clip-path:none;width:auto;height:auto;padding:.75rem 1.2rem;overflow:visible}.artifact-caption{flex-wrap:wrap}.artifact-caption span:last-child{display:inline;font-size:.875rem;color:var(--accent)}.site-row{grid-template-columns:3rem minmax(0,1fr) auto;padding:1.25rem 0}.site-row strong{font-size:1.3rem}.artifact-bottom{flex-wrap:wrap}
@media(max-width:820px){.site-row{grid-template-columns:1.5rem minmax(0,1fr) auto}.site-action{grid-column:3;grid-row:1}.site-row strong{font-size:1.25rem}.site-row small{font-size:.75rem}.artifact-caption span:last-child{font-size:.875rem}.public-sites-section{padding-bottom:1rem}}
@media(max-width:500px){.filters button{padding:.5rem .4rem}.site-row{gap:.5rem}.site-action{max-width:5rem}}

.project-name{overflow-wrap:anywhere}

.showcase-media{margin:2rem 0;padding:1.6rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.media-heading{margin:0;font-size:1.15rem;font-weight:500}.media-state{font-size:.8125rem;color:var(--accent);margin:.5rem 0 1rem}.media-summary{color:#4b5963;max-width:48rem}.media-poster{display:block;max-width:100%;height:auto}.media-poster img{display:block;width:100%;height:auto}.showcase-media>a{display:block}.media-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0;font-size:.875rem}.media-links a{color:var(--accent)}.media-transcript{padding:1rem 1.2rem;background:var(--soft);color:#4b5963}.media-transcript summary{cursor:pointer;color:var(--ink);font-size:.9375rem}.media-transcript p{white-space:pre-line;line-height:1.8;margin-bottom:0}.media-player{display:block;max-width:100%;width:100%;background:#171c22}.media-play{margin:1rem 0;background:var(--accent);color:#fff}.media-status{color:var(--muted);font-size:.875rem}.site-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.site-links .row-button{font-size:.8125rem}.site-links .site-action{max-width:none}.showcase-media details:focus-visible,.showcase-media summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
@media(max-width:820px){.site-row{grid-template-columns:1.5rem minmax(0,1fr)}.site-links{grid-column:2;gap:.75rem}.site-links .site-action{grid-column:auto;grid-row:auto}.showcase-media{padding:1.2rem 0}.media-transcript{padding:.9rem 1rem}}

.dialog-toolbar{flex-wrap:wrap}.dialog-toolbar>span{overflow-wrap:anywhere;min-width:0}.showcase-media{min-width:0}.media-heading h3,.media-links a,.media-transcript summary{overflow-wrap:anywhere}.media-links a{max-width:100%}

@media(max-width:500px){.dialog-story h2{font-size:clamp(1.8rem,8vw,2.5rem)}}

.dialog-story p{overflow-wrap:anywhere}

.media-player{height:auto}.media-play{padding:.65rem 1rem;border:1px solid var(--accent);min-height:2.75rem}.media-play:disabled{opacity:.65;cursor:progress}

/* Portfolio refresh: reading hierarchy and explicit, accessible video activation. */
[hidden]{display:none!important}
.intro-index{color:var(--accent);font-size:.9375rem;white-space:nowrap}
.story-link{background:none;border:0;padding:.55rem 0;min-height:2.75rem;color:var(--accent)}
.filter-status{font-size:.875rem;color:var(--muted);margin:-.5rem 0 1.4rem}
.project-actions{display:flex;flex-direction:column;gap:.65rem;align-items:flex-start}
.project-repo{font-size:.875rem;color:var(--muted)}
.project-tech{font-family:var(--mono);font-size:.75rem;color:var(--muted);margin:.6rem 0 0;overflow-wrap:anywhere}
.project-badge{display:inline-block;color:var(--accent);font-size:.75rem;margin-top:.5rem}
.project-category{font-size:.8125rem}
.project-dialog{scrollbar-gutter:stable;overscroll-behavior:contain}
.media-heading{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
.media-heading h3{margin:0}.media-state{margin:0;font-family:var(--mono)}
.media-frame{position:relative;background:var(--soft);aspect-ratio:16/9;overflow:hidden}
.media-frame video{width:100%;height:100%;object-fit:contain}
.media-cover{position:relative;display:block;border:0;padding:0;width:100%;height:100%;background:var(--ink);color:white;text-align:left}
.media-cover img{width:100%;height:100%;object-fit:cover;display:block}
.media-cover-label{position:absolute;inset:auto 1.2rem 1.2rem;display:flex;gap:1rem;align-items:center;width:max-content;max-width:calc(100% - 2.4rem);padding:.9rem 1.25rem;background:var(--paper);color:var(--ink);box-shadow:0 .3rem 1.2rem #1113;transition:transform .2s var(--ease)}
.media-cover:hover .media-cover-label{transform:translateY(-3px)}
.media-cover-label>span:last-child{font-weight:600;line-height:1.4}.media-cover-label small{display:block;font-size:.8125rem;font-weight:400;color:var(--muted);margin-top:.3rem}
.play-symbol{font-size:1.4rem;color:var(--accent)}
.media-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin:1rem 0}
.media-actions a{color:var(--accent);font-size:.875rem}.media-actions .media-play{margin:0;background:transparent;color:var(--accent);font-size:.875rem}
.media-chapters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.1rem 0}
.media-chapters button{background:var(--soft);border:1px solid var(--line);padding:.55rem .7rem;font-size:.875rem;min-height:2.75rem}
.media-chapters time{font-family:var(--mono);font-size:.75rem;color:var(--accent);margin-right:.5rem}
.media-status:empty{display:none}.media-status{font-size:.875rem;min-height:1.65em}
.media-transcript p{font-size:1rem}
.dialog-story .story-grid{gap:2rem}.dialog-story .story-grid section h3{font-size:.9375rem}
.site-header nav a[aria-current]{font-weight:600;color:var(--accent)}
@media(min-width:821px){.site-header{position:sticky;top:0;z-index:5;background:var(--paper);min-height:4.5rem;padding-top:1rem;padding-bottom:1rem}.project-row{padding:1.8rem 0}.project-name{font-size:clamp(1.5rem,2vw,2rem)}}
@media(max-width:820px){.intro-index{display:inline-block;margin-top:.8rem}.project-actions{grid-column:3;grid-row:1}.project-description{min-width:0}.project-tech{line-height:1.6}.media-heading{align-items:flex-start}.media-cover-label{inset:auto .75rem .75rem;padding:.65rem .9rem}.dialog-story{padding-top:1.3rem}}
@media(max-width:500px){.project-row .project-actions{flex-direction:row;gap:1.2rem;align-items:center;flex-wrap:wrap}.project-summary{font-size:1rem}.media-frame{aspect-ratio:16/10}.media-cover-label{font-size:.9375rem}.intro-bottom p{max-width:24rem}.media-chapters{gap:.4rem}.media-chapters button{font-size:.875rem}.filter-status{margin-top:0}.site-header nav a{min-height:2rem;display:flex;align-items:center}.project-footnote{font-size:.8125rem}}

.earlier-work{margin-top:1.6rem;border-top:1px solid var(--line);padding-top:1.2rem}.earlier-work summary{font-size:1rem;color:var(--muted);cursor:pointer}.earlier-work div{display:flex;flex-wrap:wrap;gap:.8rem 1.4rem;margin-top:1rem}.earlier-work a{font-size:.875rem;color:var(--accent);overflow-wrap:anywhere}.earlier-work summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}

.project-film-link{border:0;padding:.35rem 0;background:none;color:var(--accent);font-size:.875rem;text-decoration:underline;text-underline-offset:.3em;min-height:2rem}

/* Owner-provided avatar and a focused Work / Updates / About introduction. */
.intro-main{display:flex;align-items:center;gap:2rem;margin-top:1.25rem}
.identity-avatar{width:10.5rem;flex:0 0 10.5rem;margin:0;line-height:0}
.identity-avatar img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:.65rem;object-fit:contain}
.intro-main .intro-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}
.intro-main .intro-index{margin:0}
.about-identity img{object-fit:contain}
.updates-section .section-heading{margin-top:0}
@media(max-width:820px){.intro-main{gap:1.25rem}.identity-avatar{width:7rem;flex-basis:7rem}.intro-main .intro-bottom{gap:.65rem;min-width:0}.intro-main .intro-bottom p{line-height:1.7}.intro-main .intro-index{white-space:normal;font-size:.875rem}}
