.filters.svelte-gab7i6{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;padding:0 0 1.5rem}button.svelte-gab7i6{display:flex;align-items:center;gap:.4rem;padding:.42rem .72rem;border:1px solid var(--line);border-radius:999px;font-size:.75rem;font-weight:560;color:var(--ink-soft);background:var(--surface);transition:color .15s ease,border-color .15s ease,background .15s ease}button.svelte-gab7i6:hover{color:var(--accent-text);border-color:var(--accent)}button.active.svelte-gab7i6{border-color:var(--accent);color:var(--accent-contrast);background:var(--accent)}button.svelte-gab7i6:focus-visible{outline:3px solid var(--accent-text);outline-offset:4px}button.svelte-gab7i6 span:where(.svelte-gab7i6){font-family:var(--font-mono);font-size:.58rem;color:currentColor;opacity:.7}@container page (max-width: 40rem){.filters.svelte-gab7i6{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}button.svelte-gab7i6{flex:0 0 auto}}@media(prefers-reduced-motion:reduce){button.svelte-gab7i6{transition:none}}.portfolio-grid.svelte-6qij2x{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:clamp(1.25rem,2.5vw,2rem) clamp(.85rem,2vw,1.35rem)}.portfolio-card.svelte-6qij2x{display:block;color:inherit;text-decoration:none}.card-image.svelte-6qij2x{aspect-ratio:1;overflow:hidden;border:1px solid var(--line);border-radius:.75rem;background:var(--surface-soft)}.card-image.svelte-6qij2x img:where(.svelte-6qij2x){width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.02);transition:transform .22s ease,filter .22s ease}.portfolio-card.svelte-6qij2x:hover .card-image:where(.svelte-6qij2x) img:where(.svelte-6qij2x){transform:scale(1.025);filter:saturate(1) contrast(1.04)}.portfolio-card.svelte-6qij2x:focus-visible{outline:3px solid var(--accent-text);outline-offset:5px}.card-label.svelte-6qij2x{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-top:.7rem}.card-title.svelte-6qij2x{font-family:var(--font-display);font-size:1.05rem;font-weight:580;line-height:1.2;color:var(--ink)}.card-count.svelte-6qij2x{flex-shrink:0;font-family:var(--font-mono);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}@container page (max-width: 40rem){.portfolio-grid.svelte-6qij2x{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem .75rem}.card-title.svelte-6qij2x{font-size:1rem}.card-count.svelte-6qij2x{display:none}}@media(prefers-reduced-motion:reduce){.card-image.svelte-6qij2x img:where(.svelte-6qij2x){transition:none}}
