*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #0a0a0a;--color-surface: #141414;--color-surface-hover: #1a1a1a;--color-border: #2a2a2a;--color-text: #e0e0e0;--color-text-muted: #888;--color-accent: #e6c84d;--color-accent-dim: rgba(230, 200, 77, .15);--color-tech: #4da6e6;--color-tech-dim: rgba(77, 166, 230, .15);--font-display: "Space Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius: 6px;--max-width: 1200px}html{color-scheme:dark}body{font-family:var(--font-mono);font-size:.875rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:block;max-width:100%;height:auto}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}.gallery-grid{display:flex;gap:var(--space-xl);align-items:flex-start}.gallery-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-xl)}.card-link{text-decoration:none;color:inherit;display:block}.card-link:hover{text-decoration:none}@keyframes skeleton-pulse{0%,to{background-color:var(--color-bg)}50%{background-color:var(--color-surface)}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.card-media{background:var(--color-bg);overflow:hidden;animation:skeleton-pulse 1.8s ease-in-out infinite}.card-media img{width:100%;height:auto;opacity:0;transition:opacity .4s ease}.card-media img.loaded{opacity:1}.card-body{padding:var(--space-lg)}.card-title{font-family:var(--font-display);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm);color:var(--color-text)}.card-description{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:var(--space-md);line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tag{font-family:var(--font-mono);font-size:.6875rem;padding:.15em .5em;background:var(--color-accent-dim);color:var(--color-accent);border-radius:3px;letter-spacing:.02em}.tag--tech{background:var(--color-tech-dim);color:var(--color-tech)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-lg);align-items:flex-start;margin-bottom:var(--space-xl)}.filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.filter-label{font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.filter-chip{font-family:var(--font-mono);font-size:.6875rem;padding:.3em .7em;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:3px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}@media(hover:hover){.filter-chip:hover{border-color:var(--color-accent);color:var(--color-accent)}}.filter-chip[aria-pressed=true]{background:var(--color-accent-dim);color:var(--color-accent);border-color:var(--color-accent)}@media(hover:hover){.filter-chip--tech:hover{border-color:var(--color-tech);color:var(--color-tech)}}.filter-chip--tech[aria-pressed=true]{background:var(--color-tech-dim);color:var(--color-tech);border-color:var(--color-tech)}.filter-actions{align-items:center;gap:var(--space-md);width:100%;padding-top:var(--space-sm);border-top:1px solid var(--color-border);display:none}.filter-actions.active{display:flex}.filter-clear{font-family:var(--font-mono);font-size:.6875rem;padding:.3em .7em;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:3px;cursor:pointer;transition:color .15s ease,border-color .15s ease}.filter-clear:hover{color:var(--color-text);border-color:var(--color-text-muted)}.filter-status{font-family:var(--font-mono);font-size:.6875rem;color:var(--color-text-muted)}.no-results{text-align:center;padding:var(--space-3xl) 0;color:var(--color-text-muted);font-size:.875rem;display:none}.gallery-grid--filtered .gallery-col:last-child:not(:only-child){display:none}@media(max-width:640px){.filter-bar{gap:var(--space-md)}.filter-group{gap:var(--space-xs)}.filter-chip{font-size:.625rem;padding:.25em .5em}}.detail{max-width:600px;margin:0 auto}.detail-media{border-radius:var(--radius);overflow:hidden;background:var(--color-bg);border:1px solid var(--color-border);margin-bottom:var(--space-xl);animation:skeleton-pulse 1.8s ease-in-out infinite}.detail-media img{width:100%;height:auto;opacity:0;transition:opacity .4s ease}.detail-media img.loaded{opacity:1}.detail-title{font-size:1.25rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.detail-description{font-size:1rem;color:var(--color-text-muted);line-height:1.7;margin-bottom:var(--space-xl)}.detail-meta{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--space-xl)}.detail-meta dt{font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-xs)}.detail-meta dd{font-size:.875rem}.back-link{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.8125rem;color:var(--color-text-muted);margin-bottom:var(--space-xl)}.back-link:hover{color:var(--color-accent);text-decoration:none}.header[data-astro-cid-3ef6ksr2]{border-bottom:1px solid var(--color-border);padding:var(--space-lg) 0}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}.header-title[data-astro-cid-3ef6ksr2]{font-family:var(--font-display);font-size:1.125rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.header-title[data-astro-cid-3ef6ksr2]:hover{text-decoration:none;color:var(--color-accent)}.header-author[data-astro-cid-3ef6ksr2]{font-size:.8125rem;color:var(--color-text-muted)}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);padding:var(--space-xl) 0;margin-top:var(--space-3xl)}.footer-inner[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--color-text-muted)}
