.projects-page.svelte-rqn88j{max-width:1000px;margin:2rem auto;padding:0 1rem}header.svelte-rqn88j{font-size:var(--header-p-size);text-align:center;margin-bottom:4rem}h1.svelte-rqn88j{color:var(--text-primary);margin-bottom:1rem;font-family:Source Code Pro,monospace;font-size:2.5rem}header.svelte-rqn88j p:where(.svelte-rqn88j){color:var(--text-secondary);font-size:1.1rem}.projects-grid.svelte-rqn88j{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.project-card.svelte-rqn88j{border:1px solid var(--nav-border);padding:var(--card-padding);transition:var(--card-transition);background:#fff;flex-direction:column;display:flex}.project-card.svelte-rqn88j:hover{border-color:var(--green-primary);transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.card-header.svelte-rqn88j{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.lang-tag.svelte-rqn88j{background:var(--green-tertiary);color:var(--green-primary);padding:4px 10px;font-family:Source Code Pro,monospace;font-size:.75rem;font-weight:700}.card-header.svelte-rqn88j a:where(.svelte-rqn88j),.icon-placeholder.svelte-rqn88j{color:var(--text-secondary);transition:color .2s}.card-header.svelte-rqn88j a:where(.svelte-rqn88j):hover{color:var(--green-primary)}h3.svelte-rqn88j{color:var(--text-primary);margin:0 0 .75rem;font-family:Source Code Pro,monospace;font-size:1.4rem}.project-card.svelte-rqn88j p:where(.svelte-rqn88j){color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.header-left.svelte-rqn88j{align-items:center;gap:.75rem;display:flex}.app-logo.svelte-rqn88j{object-fit:contain;background:#f0f0f0;border-radius:4px;width:24px;height:24px}.download-link.svelte-rqn88j{color:var(--text-secondary);align-items:center;transition:all .2s;display:flex}.download-link.svelte-rqn88j:hover{color:var(--green-primary);transform:translateY(1px)}.card-footer.svelte-rqn88j{border-top:1px solid var(--nav-border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;display:flex}.status.svelte-rqn88j{color:var(--text-secondary);opacity:.7;font-family:Source Code Pro,monospace;font-size:.75rem}@media (width<=768px){h1.svelte-rqn88j{font-size:2rem}}@media (width<=450px){.projects-grid.svelte-rqn88j{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}
