.gallery-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));display:grid}.gallery-tile__button{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);text-align:left;width:100%;transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);padding:0;display:grid;overflow:hidden}.gallery-tile__button:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.gallery-tile__media{aspect-ratio:4/3;background:var(--surface-2);display:block;position:relative}.gallery-tile__media img{object-fit:contain;padding:var(--space-4)}.gallery-tile__caption{gap:var(--space-1);padding:var(--space-4) var(--space-5) var(--space-5);border-top:1px solid var(--border);display:grid}.gallery-tile__category{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600}.gallery-tile__title{font-family:var(--font-display);color:var(--text);font-size:1.25rem;line-height:1.25}.gallery-tile__text{font-size:var(--text-sm);color:var(--muted)}.screenshot-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));display:grid}.screenshot{gap:var(--space-2);text-align:left;background:0 0;border:0;width:100%;padding:0;display:grid}.screenshot__media{aspect-ratio:16/10;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);display:block;position:relative;overflow:hidden}.screenshot__media img{object-fit:cover;object-position:top center}.lightbox{--surface:#fff;--text:#fff;--muted:#b4b6ba;--border:#ffffff29;--border-strong:#ffffff52;--accent-strong:#c9a045;width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--surface);background:#0b0e12f5;border:0;margin:0;padding:0}.lightbox::backdrop{background:#0b0e12f5}.lightbox__frame{height:100%;padding:var(--space-4) var(--gutter) var(--space-5);gap:var(--space-4);grid-template-rows:auto minmax(0,1fr) auto;display:grid}.lightbox__toolbar{justify-content:space-between;align-items:center;display:flex}.lightbox__count{font-size:var(--text-sm);color:var(--muted);font-variant-numeric:tabular-nums}.lightbox__button{border:1px solid var(--border);border-radius:var(--radius);width:2.75rem;height:2.75rem;color:var(--surface);transition:border-color var(--duration) var(--ease), color var(--duration) var(--ease);background:0 0;flex:none;place-items:center;display:grid}.lightbox__button:hover{border-color:var(--accent-strong);color:var(--accent-strong)}.lightbox__button svg{width:1.25rem;height:1.25rem}.lightbox__stage{align-items:center;gap:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;min-height:0;display:grid}.lightbox__image{object-fit:contain;border-radius:var(--radius-sm);grid-column:2;justify-self:center;max-width:100%;min-height:0;max-height:100%}.lightbox__button--prev{grid-column:1}.lightbox__button--next{grid-column:3}.lightbox__caption{justify-content:space-between;align-items:end;gap:var(--space-4);width:100%;max-width:60rem;font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap;margin-inline:auto;display:flex}.lightbox__meta{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-strong);font-weight:600}.lightbox__title{font-family:var(--font-display);color:var(--surface);font-size:1.35rem;font-weight:500}.lightbox__description{margin-top:var(--space-2);max-width:60ch}@media (max-width:640px){.lightbox__stage{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lightbox__image{grid-area:1/1/auto/-1}.lightbox__button--prev{grid-area:2/1;justify-self:start}.lightbox__button--next{grid-area:2/2;justify-self:end}}
