.project-card[data-v-d8687ac2]{display:block;margin-bottom:2rem;position:relative;-moz-column-break-inside:avoid;background:var(--bg-color);border:1px solid var(--border-color);border-radius:0;break-inside:avoid;overflow:hidden;text-decoration:none;transition:all .3s var(--ease-tech)}.project-card[data-v-d8687ac2]:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.2);outline:none}@media(hover:hover)and (pointer:fine){.project-card[data-v-d8687ac2]:hover{border-color:var(--accent);box-shadow:0 0 20px rgba(var(--accent-rgb),.15);transform:translateY(-2px)}.project-card:hover .image-container[data-v-d8687ac2]{filter:grayscale(0)}.project-card[data-v-d8687ac2]:hover .image-element{transform:scale(1.05)}.project-card:hover .overlay[data-v-d8687ac2]{opacity:1}.project-card:hover .overlay-content[data-v-d8687ac2]{transform:translateY(0)}.project-card:hover .top-left[data-v-d8687ac2]{border-left-color:var(--accent);border-top-color:var(--accent)}.project-card:hover .bottom-right[data-v-d8687ac2]{border-bottom-color:var(--accent);border-right-color:var(--accent)}.project-card:hover .icon-box[data-v-d8687ac2]{background:var(--accent);border-color:var(--accent);color:#fff}}.image-container[data-v-d8687ac2]{aspect-ratio:16/9;background:var(--bg-panel);filter:grayscale(100%);overflow:hidden;position:relative;transition:filter .3s ease;width:100%}[data-v-d8687ac2] .image-element{transition:transform .6s var(--ease-tech)}.placeholder-fallback[data-v-d8687ac2]{align-items:center;color:var(--text-muted);display:flex;height:100%;inset:0;justify-content:center;position:absolute;width:100%}.placeholder-fallback .mono[data-v-d8687ac2]{font-family:var(--font-mono),monospace;font-feature-settings:"ss01","ss02";font-size:.8rem}.overlay[data-v-d8687ac2]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(var(--bg-color-rgb,9,9,11),.9);box-shadow:inset 0 0 0 1px #ffffff0d;display:flex;flex-direction:column;height:100%;inset:0;justify-content:flex-end;opacity:0;padding:1.5rem;position:absolute;transition:opacity .3s ease;width:100%;z-index:10}.overlay-content[data-v-d8687ac2]{display:grid;gap:.5rem;grid-template-columns:1fr auto;grid-template-rows:auto auto;transform:translateY(10px);transition:transform .3s var(--ease-tech);width:100%}.project-id[data-v-d8687ac2]{color:var(--accent);font-family:var(--font-mono),monospace;font-feature-settings:"ss01","ss02";font-size:.65rem;grid-column:1/-1;letter-spacing:.1em;margin-bottom:.5rem;opacity:.8}.meta-main[data-v-d8687ac2]{display:flex;flex-direction:column}.category[data-v-d8687ac2]{color:var(--text-muted);font-family:var(--font-mono),monospace;font-feature-settings:"ss01","ss02";font-size:.75rem;margin-bottom:.25rem;text-transform:uppercase}.title[data-v-d8687ac2]{color:var(--text-main);font-family:var(--font-body);font-size:1.25rem;font-weight:700;line-height:1.1;margin:0}.icon-box[data-v-d8687ac2]{align-items:center;background:rgba(var(--accent-rgb),.1);border:1px solid var(--border-color);color:var(--accent);display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.bracket[data-v-d8687ac2]{border:2px solid transparent;height:10px;pointer-events:none;position:absolute;transition:all .3s ease;width:10px;z-index:20}.top-left[data-v-d8687ac2]{border-left:0;border-top:0;left:0;top:0}.bottom-right[data-v-d8687ac2]{border-bottom:0;border-right:0;bottom:0;right:0}
