.projects-page{--cell-height: 96px;--panel-height: 96px;--project-muted: #999;--project-rule: #666;--directory-gap: 16px;display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;padding:var(--page-padding);overflow:hidden;font-size:clamp(16px,1.6vw,24px);line-height:1.25;font-variant-ligatures:none}.projects-page [hidden]{display:none!important}.projects-page[data-enter-state=waiting]>:not(.projects-header),.projects-page[data-enter-state=waiting] .projects-header>:not(.home-link){opacity:0}.projects-page a{color:inherit;text-decoration:none}.projects-page :is(a,button,[tabindex]):focus-visible{outline:1px solid var(--foreground);outline-offset:-3px}.projects-page :is(.home-link,.project-view):hover{text-decoration:underline;text-underline-offset:.2em}.projects-header{position:relative;flex-shrink:0;padding-bottom:.8em}.projects-header h1{margin:0 5ch .4em 0;font-size:clamp(32px,4.2vw,64px);line-height:1.1;font-weight:400;white-space:normal}.projects-header .home-link{position:absolute;right:0;top:.2em;white-space:nowrap}.projects-subtitle{margin:0;padding-left:4ch;color:var(--project-muted);line-height:1.4}.projects-filters{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;gap:.25em 1.2ch;padding-bottom:.8em;border-bottom:1px solid var(--project-rule)}.projects-filters button{position:relative;isolation:isolate;min-height:36px;padding:.1em .4em;border:0;color:var(--project-muted);background:none;font:inherit;white-space:pre;cursor:pointer}.projects-page .projects-filters button:is(:focus,:focus-visible){outline:none;box-shadow:none}.projects-filters button:disabled{cursor:default}.projects-filters button:hover{color:var(--foreground)}.projects-filters button[aria-pressed=true]{color:var(--background);background:var(--foreground)}.projects-filters [aria-pressed=false] .filter-bracket{visibility:hidden}.directory-space{flex:1;min-width:0;min-height:0;overflow:hidden}.project-directory{position:relative;isolation:isolate;display:grid;grid-template-columns:41% minmax(0,1fr);height:var(--panel-height);min-height:0}.directory-index{position:relative;height:var(--panel-height);min-width:0;min-height:0;border-right:1px solid var(--project-rule)}.directory-index:after,.directory-details:after{position:absolute;z-index:5;right:0;bottom:0;left:0;height:1px;background:var(--project-rule);content:"";pointer-events:none}.directory-viewport{height:var(--panel-height);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-color:var(--frame-color) var(--background)}[data-enhanced] .directory-viewport{overflow:clip;touch-action:none}.directory-rows{display:flex;flex-direction:column;min-width:0}.directory-row{position:relative;isolation:isolate;display:grid;grid-template-columns:1ch minmax(0,1fr) 2ch;flex:0 0 var(--cell-height);align-items:center;gap:1ch;width:100%;height:var(--cell-height);min-height:var(--cell-height);padding:0 1ch;border-bottom:1px solid var(--project-rule);scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden}.directory-marker{visibility:hidden;align-self:start;margin-top:calc((var(--cell-height) - 2.85em) / 2)}.directory-label{display:grid;grid-template-rows:minmax(0,1fr) 1.25em;gap:.35em;min-width:0}.directory-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-caption{min-width:0;min-height:1.25em;padding-left:2ch;color:var(--project-muted);font-size:.8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-pin{align-self:start;margin-top:calc((var(--cell-height) - 2.85em) / 2);color:var(--project-muted)}.directory-row:is([aria-current=true],.snapshot-selected){color:var(--background);background:var(--foreground)}.directory-row:is([aria-current=true],.snapshot-selected) .directory-marker{visibility:visible}.directory-row:is([aria-current=true],.snapshot-selected) :is(.directory-caption,.directory-pin){color:#444}.directory-index[data-scrollable] .directory-row{padding-right:calc(1ch + 14px)}.directory-scrollbar{position:absolute;top:0;right:0;bottom:0;width:12px;background:#222;touch-action:none;cursor:pointer}.directory-thumb{position:absolute;top:0;right:2px;left:2px;min-height:20px;background:var(--frame-color);pointer-events:none}.directory-details{position:relative;height:var(--panel-height);min-height:0;min-width:0;padding:0 0 0 1.8em;overflow:hidden}.project-detail{display:none;flex-direction:column;gap:min(1em,calc(var(--panel-height) / 16));width:100%;height:100%;min-height:0;padding:min(1em,calc(var(--panel-height) / 16)) 0;contain:paint}.project-detail:first-child{display:flex}.projects-page:has(.project-detail:target) .project-detail{display:none}.projects-page:has(.project-detail:target) .project-detail:target{display:flex}.projects-page[data-enhanced] .project-detail{display:none}.projects-page[data-enhanced] .project-detail:not([hidden]){display:flex}.project-detail-body{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:var(--frame-color) var(--background);overflow-wrap:anywhere;line-height:1.4}.project-detail-body:empty{pointer-events:none}.project-detail-copy{flex-shrink:0}.project-detail-copy p{margin:0;white-space:pre-wrap}.project-starfield{container-type:inline-size;flex-shrink:0;width:var(--starfield-width, 100%);height:clamp(210px,calc(var(--panel-height) * .4),280px);margin:auto 0 0;padding-top:.75em;color:var(--foreground);user-select:none}.project-starfield-sky{position:relative;width:100%;height:100%;overflow:hidden}.project-sky-mark,.project-star{position:absolute;margin:0;transform:translate(-50%,-50%);font-family:inherit;line-height:1.05;white-space:pre;overflow-wrap:normal}.project-sky-mark{color:#b0b0b0;font-size:clamp(6px,1.8cqw,16px)}.project-galaxy-mark{color:#999}.project-star{z-index:1;text-shadow:0 0 5px var(--star-glow)}.project-star-primary{font-size:clamp(14px,2cqw,20px)}.project-star-secondary{--star-glow: rgb(242 242 242 / .25);color:#ddd;font-size:clamp(10px,1.5cqw,16px)}.project-star-silvy{--star-glow: rgb(255 187 68 / .45);color:#fb4}.project-star-rucia{--star-glow: rgb(85 238 255 / .45);color:#5ef}.project-landscape{flex-shrink:0;isolation:isolate;width:100%;height:clamp(210px,calc(var(--panel-height) * .4),280px);margin:auto 0 0;padding-top:.75em;user-select:none}.project-landscape-image{display:block;width:100%;height:100%;object-fit:fill}.project-credits-frame{box-sizing:content-box;flex-shrink:0;width:100%;max-width:720px;margin:1em 0 0;border-block:1px solid var(--frame-color)}.project-credits-image{display:block;width:100%;height:auto;user-select:none}.project-view{display:flex;flex-shrink:0;align-items:center;width:fit-content;min-height:32px}.projects-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.directory-row:is([data-project-wiping],.snapshot-wiping){color:var(--foreground);background:var(--background)}.projects-filters button[data-project-wiping]{color:var(--project-muted);background:var(--background)}.projects-filters button[data-project-wiping]:hover{color:var(--foreground)}.directory-row:is([data-project-wiping],.snapshot-wiping) :is(.directory-caption,.directory-pin){color:var(--project-muted)}.project-highlight{position:absolute;z-index:1;inset:0;display:grid;grid-template-columns:inherit;align-items:center;gap:inherit;padding:inherit;overflow:hidden;color:var(--background);background:var(--foreground);font:inherit;pointer-events:none}.project-highlight[data-highlight-kind=category]{display:block;align-content:center;text-align:center;white-space:pre}.project-highlight .directory-marker{visibility:visible}.directory-row .project-highlight :is(.directory-caption,.directory-pin){color:#444}.projects-filters .project-highlight .filter-bracket{visibility:visible}.project-highlight[data-highlight-role=leave]{color:var(--foreground);background:var(--background)}.projects-filters .project-highlight[data-highlight-role=leave]{color:var(--project-muted)}.projects-filters button:hover .project-highlight[data-highlight-role=leave]{color:var(--foreground)}.project-highlight[data-highlight-role=leave] .directory-marker{visibility:hidden}.directory-row .project-highlight[data-highlight-role=leave] :is(.directory-caption,.directory-pin){color:var(--project-muted)}.projects-filters .project-highlight[data-highlight-role=leave] .filter-bracket{visibility:hidden}.project-scan-frame{position:absolute;z-index:3;overflow:hidden;pointer-events:none;contain:paint}.project-scan-content,.project-scan-lines{position:absolute;inset:0;pointer-events:none}.project-scan-lines{z-index:1}.project-scan-layer{position:absolute!important;isolation:isolate;inset:0!important;width:100%!important;height:100%!important;margin:0!important;background:var(--background);pointer-events:none;will-change:clip-path}.project-scan-layer:after{content:none!important}.project-scan-layer.snapshot-scrollable .directory-row{padding-right:calc(1ch + 14px)}.project-scan-line{position:absolute;z-index:1;top:0;left:0;background:var(--foreground);pointer-events:none;will-change:transform}.project-scan-line[data-scan-axis=vertical]{width:100%;height:2px}.project-scan-line[data-scan-axis=horizontal]{width:2px;height:100%}.project-exit-fragments{position:fixed;z-index:10;inset:0;pointer-events:none}.project-exit-decoration{position:absolute;background:var(--background);visibility:hidden!important}.project-exit-decoration[data-exit-hidden]{visibility:visible!important}.project-enter-paint-layer{position:fixed;z-index:10;inset:0;pointer-events:none}.project-enter-eraser,.project-enter-fill-cell{position:absolute;pointer-events:none}.project-enter-eraser{background:var(--background)}.project-enter-fill-cell{z-index:-1;visibility:hidden}.projects-page [data-project-enter-fill]{background-color:var(--background)!important}@media(max-width:700px){.projects-page{--page-padding: 20px;font-size:18px}.projects-header h1{margin-right:4.5ch;font-size:32px}.projects-header .home-link{top:.3em;font-size:16px}.projects-filters{gap:.25em .7ch;font-size:16px}.projects-filters button{min-height:44px;padding:.1em .15em}.directory-details{padding-left:1em}}@media(max-width:700px)and (min-height:520px){.project-directory{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,var(--panel-height));gap:var(--directory-gap);height:calc(2 * var(--panel-height) + var(--directory-gap))}.directory-index{border-right:0}.directory-details{padding-left:0;border-top:1px solid var(--project-rule)}}@media(max-height:520px){.projects-page{--page-padding: 12px;font-size:16px}.projects-header{padding-bottom:8px}.projects-header h1{margin-bottom:8px;font-size:32px}.projects-subtitle{font-size:14px}.projects-filters{padding-bottom:8px}.projects-filters button{min-height:28px}}
