.projects-header.svelte-rqn88j{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-lg)}.kicker.svelte-rqn88j{margin-bottom:var(--spacing-xs)}.projects-header.svelte-rqn88j h2:where(.svelte-rqn88j){font-size:var(--step-4);margin-bottom:var(--spacing-sm);text-wrap:balance}.project-list.svelte-rqn88j{list-style:none;padding:0;margin:0;display:grid;max-width:980px}.projects-layout.svelte-rqn88j{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(270px,1fr);gap:var(--spacing-lg);align-items:start}.projects-rail.svelte-rqn88j{min-width:0}.data-desk.svelte-rqn88j{position:sticky;top:var(--spacing-md);display:grid;gap:var(--spacing-sm)}.data-card.svelte-rqn88j{border:var(--hairline);padding:var(--spacing-sm);background:linear-gradient(160deg,color-mix(in srgb,var(--surface-elevated) 90%,var(--accent) 10%),var(--surface-1));box-shadow:var(--shadow-sm)}.metric-grid.svelte-rqn88j{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-top:var(--spacing-xs)}.metric.svelte-rqn88j{display:grid;gap:.1rem;padding:.3rem .35rem;border:var(--hairline);background:color-mix(in srgb,var(--surface-1) 90%,var(--accent) 10%)}.metric-label.svelte-rqn88j{letter-spacing:.04em;text-transform:uppercase}.metric.svelte-rqn88j strong:where(.svelte-rqn88j){font-size:1.25rem;line-height:1.05}.metric-footnote.svelte-rqn88j{margin:var(--spacing-xs) 0 0}.commit-chart.svelte-rqn88j{display:block;width:100%;height:auto;margin-top:var(--spacing-xs);border:var(--hairline);background:var(--bg-color)}.commit-line.svelte-rqn88j{fill:none;stroke:var(--text-color);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.commit-area.svelte-rqn88j{fill:color-mix(in srgb,var(--text-color) 10%,transparent)}.featured-project.svelte-rqn88j h3:where(.svelte-rqn88j){margin:var(--spacing-xs) 0;font-size:1.4rem}.featured-project.svelte-rqn88j p:where(.svelte-rqn88j){margin-bottom:var(--spacing-sm)}.featured-meta.svelte-rqn88j{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.project-item.svelte-rqn88j{border-top:var(--hairline);border-bottom:var(--hairline);margin-top:-1px;background:linear-gradient(to right,color-mix(in srgb,var(--text-color) 5%,transparent) 0,color-mix(in srgb,var(--text-color) 5%,transparent) 84px,transparent 84px),var(--surface-1)}.project-index.svelte-rqn88j{display:inline-flex;align-items:center;justify-content:center;min-height:100%;padding:var(--spacing-sm) var(--spacing-xs);font-weight:600;letter-spacing:.12em;opacity:.85;border-right:var(--hairline)}.project-summary.svelte-rqn88j{display:grid;grid-template-columns:1fr;gap:var(--spacing-xs);align-items:start}.project-summary.svelte-rqn88j h3:where(.svelte-rqn88j){margin:0;font-size:var(--step-2);line-height:1.05}.project-summary.svelte-rqn88j p:where(.svelte-rqn88j){margin:0;max-width:64ch}.project-links.svelte-rqn88j{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.repo-link.svelte-rqn88j{display:inline-flex;align-items:center;gap:.35rem}.repo-icon.svelte-rqn88j{width:1rem;height:1rem}.preview-panel.svelte-rqn88j{position:fixed;top:50%;right:var(--spacing-md);height:min(50vh,460px);width:min(460px,34vw);background:var(--surface-elevated);border:var(--hairline);border-right:0;display:grid;grid-template-rows:auto 1fr;z-index:900;animation:svelte-rqn88j-slide-in-preview .45s ease;pointer-events:auto;cursor:pointer;transform:translateY(-50%)}.preview-content.svelte-rqn88j{position:relative}.readme-preview.svelte-rqn88j{column-count:1;max-height:100%;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,black 52%,transparent 100%);mask-image:linear-gradient(to bottom,black 52%,transparent 100%)}.preview-hint.svelte-rqn88j{position:sticky;bottom:0;margin:0;padding:var(--spacing-sm) 0 0;background:linear-gradient(to bottom,color-mix(in srgb,var(--bg-color) 0%,transparent),var(--bg-color) 35%)}.readme-modal.svelte-rqn88j{position:fixed;inset:0;z-index:1000;padding:var(--spacing-md)}.modal-backdrop.svelte-rqn88j{position:absolute;inset:0;border:0;background:color-mix(in srgb,var(--text-color) 14%,transparent);-webkit-backdrop-filter:saturate(.9);backdrop-filter:saturate(.9);cursor:pointer}.readme-panel.svelte-rqn88j{position:relative;width:min(900px,100%);height:100%;margin-left:auto;background:var(--surface-elevated);color:var(--text-color);border:var(--hairline);box-shadow:var(--shadow-md);display:grid;grid-template-rows:auto 1fr;animation:svelte-rqn88j-slide-in-panel .45s ease}.readme-toolbar.svelte-rqn88j{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.readme-toolbar.svelte-rqn88j h3:where(.svelte-rqn88j){margin:0;font-size:1.2rem}.close-btn.svelte-rqn88j{background:var(--surface-1);color:var(--text-color);border:var(--hairline);border-radius:99px;padding:.2rem .6rem;cursor:pointer}.close-btn.svelte-rqn88j:hover{background:var(--surface-elevated);color:var(--accent)}.readme-content.svelte-rqn88j{padding:var(--spacing-md);overflow:auto}.readme.svelte-rqn88j{column-count:1;column-gap:var(--spacing-lg);text-align:justify;-webkit-hyphens:auto;hyphens:auto}@keyframes svelte-rqn88j-slide-in-preview{0%{transform:translateY(-50%) translate(2rem);opacity:0}to{transform:translateY(-50%) translate(0);opacity:1}}@keyframes svelte-rqn88j-slide-in-panel{0%{transform:translate(2rem);opacity:0}to{transform:translate(0);opacity:1}}.readme h1,.readme h2,.readme h3,.readme h4,.readme h5,.readme h6{break-after:avoid-column}.readme a.anchor,.readme .markdown-heading>a:first-child{display:none!important}.readme img{max-width:100%;height:auto}.readme pre,.readme code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.readme pre{overflow-x:auto;padding:var(--spacing-sm);border:var(--hairline);background:color-mix(in srgb,var(--bg-color) 92%,var(--text-color))}.project-card.svelte-rqn88j:hover{background:color-mix(in srgb,var(--surface-1) 82%,var(--accent) 18%)}.project-card.svelte-rqn88j{width:100%;text-align:left;background:transparent;border:0;color:inherit;padding:0;cursor:pointer;display:grid;grid-template-columns:84px 1fr;align-items:stretch;gap:0}.project-card.svelte-rqn88j:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}.project-card.svelte-rqn88j:hover .project-summary:where(.svelte-rqn88j) h3:where(.svelte-rqn88j){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.project-card.svelte-rqn88j:hover .project-summary:where(.svelte-rqn88j){background:color-mix(in srgb,var(--surface-1) 82%,var(--accent) 18%)}.project-summary.svelte-rqn88j{padding:.9rem 1.1rem}@media(max-width:900px){.projects-layout.svelte-rqn88j{grid-template-columns:1fr}.data-desk.svelte-rqn88j{position:static}.project-list.svelte-rqn88j{max-width:100%}.project-card.svelte-rqn88j{grid-template-columns:68px 1fr}.preview-panel.svelte-rqn88j{height:min(50vh,420px);width:min(100% - 2rem,560px)}.readme-toolbar.svelte-rqn88j{flex-direction:column;align-items:flex-start}}
